diff --git a/src/contents/Contribution/BFH/bfh.tsx b/src/contents/Contribution/BFH/bfh.tsx index a64606bbd313b5e6d4565c372a3b0f1aabf995ef..39d9f9ac52f861470bfa2a6e6360c4593942cf1d 100644 --- a/src/contents/Contribution/BFH/bfh.tsx +++ b/src/contents/Contribution/BFH/bfh.tsx @@ -1,5 +1,5 @@ import { BFHTimeline } from "../../../components/BFH-Timeline"; -import BFHpdf, { GuidePDF } from "../../../components/Pdfs"; +import BFHpdf from "../../../components/Pdfs"; import BFHGallery from "../../../components/Photo-grid"; import { Section, Subesction } from "../../../components/sections"; import { About } from "./bfh-about"; @@ -24,9 +24,6 @@ export function MeetUP(){ <Subesction title="Virtual Poster Exhibition" id="BFH European MeetUp4"> <PosterGallery/> </Subesction> - <Subesction title="Guideline" id="BFH European MeetUp5"> - <GuidePDF/> - </Subesction> <Subesction title="Gallery" id="BFH European MeetUp6"> <BFHGallery/> </Subesction> diff --git a/src/contents/Contribution/Wiki/wiki.tsx b/src/contents/Contribution/Wiki/wiki.tsx index f7c5c89dcc897da2ee365583332e386f15ce53e7..b0e3682a30b15486da4ae0dd07c65e272395a3a5 100644 --- a/src/contents/Contribution/Wiki/wiki.tsx +++ b/src/contents/Contribution/Wiki/wiki.tsx @@ -3,7 +3,7 @@ import { WikiTabs } from "./wiki-tabs"; export function Wiki () { return ( - <Section title="Wiki" id="Wiki"> + <Section title="Wiki Developement" id="Our Contributions3"> <WikiTabs></WikiTabs> </Section> ); diff --git a/src/contents/Contribution/collabs.tsx b/src/contents/Contribution/collabs.tsx index 9181df6c0ba814c3685d52323587a8b401782d8e..f8fa232d54159d8851fb5831ab7402853bdf05eb 100644 --- a/src/contents/Contribution/collabs.tsx +++ b/src/contents/Contribution/collabs.tsx @@ -1,6 +1,6 @@ import { H4 } from "../../components/Headings"; import { PDF } from "../../components/Pdfs"; -import { Section } from "../../components/sections"; +import { Subesction } from "../../components/sections"; import { useNavigation } from "../../utils"; @@ -8,12 +8,11 @@ export function CollabContribution(){ const {goToPagesAndOpenTab} = useNavigation(); return( - <Section title="Collaborations" id="Collaborations"> + <Subesction title="Collaborations" id="Our Collaborations2"> <H4 id="Handbook-heading" text="Hanbook for download"/> <p>Download our LNP Hanbook that was created in <a onClick={() => goToPagesAndOpenTab('colls2024', '/human-practices')}>cooperation</a> with the team <a href="https://2024.igem.wiki/linkoping/">Linköping</a>.</p> <PDF link="https://static.igem.wiki/teams/5247/pdfs/liposomes-handbook.pdf" name="liposomes-handbook.pdf"/> - - </Section> + </Subesction> ) } \ No newline at end of file diff --git a/src/contents/Contribution/contribution.tsx b/src/contents/Contribution/contribution.tsx index 21f1a0d3bae3be27933195ba5ef1b23260115df9..53871f9b9f5f3e354c7e921e93838f81b8986867 100644 --- a/src/contents/Contribution/contribution.tsx +++ b/src/contents/Contribution/contribution.tsx @@ -1,7 +1,8 @@ +import { GuidePDF } from "../../components/Pdfs"; +import { Section, Subesction } from "../../components/sections"; import { useTabNavigation } from "../../utils/TabNavigation"; import { MeetUP } from "./BFH/bfh"; import { CollabContribution } from "./collabs"; -import { PatientContribution } from "./patient-contribution"; import { SafetyContribution } from "./safety-contribution"; import { Wiki } from "./Wiki/wiki"; @@ -9,11 +10,37 @@ export function Contribution() { useTabNavigation(); return ( <> + <Section title="Abstract" id="Abstract"> + <p>The BFH European Meet-Up showcased significant contributions to the iGEM community through extensive collaborations and innovative advancements. Our key contributions include the development of the BFH Guideline in partnership with iGEM teams Hamburg and Frankfurt, providing a blueprint for future Meet Ups, and a collaborative video podcast with iGEM Münster, offering insights into team growth. </p> + <p>Additionally, we contributed to the LNP Handbook with teams from Linkoping, Patras, Radboud University, and TERMOSZ-Selye-HUN, advancing lipid-based delivery systems for therapeutic use. </p> + <p>On the scientific front, we developed practical tools like a collection of optimized protocols, the PreCL reporter system for Prime Editing, and the innovative PrimeGuide Prime Editing technology, enhancing research efficiency and precision. Our AirBuddy lipid nanoparticle system represents a breakthrough in gene therapy, offering a safer and more effective method for lung-specific RNA and DNA delivery. These collaborations and innovations will have a lasting impact, supporting future iGEM teams and driving forward synthetic biology research. </p> + </Section> <MeetUP/> - <SafetyContribution/> - <CollabContribution/> - <PatientContribution/> - <Wiki/> + + <Section title="Our Collaborations" id="Our Collaborations"> + <Subesction title="Guideline" id="Our Collaborations1"> + <GuidePDF/> + </Subesction> + <CollabContribution/> + </Section> + + <Section title="Our Contributions" id="Our Contributions"> + <SafetyContribution/> + <Subesction title="Parts" id="Our Contributions2"> + ... + </Subesction> + <Wiki/> + </Section> + <Section title="Conclusion" id="Conclusion"> + <p>Throughout the BFH European Meet-Up, we actively engaged in meaningful collaborations and made significant contributions to the iGEM community. In partnership with iGEM teams Hamburg and Frankfurt, we developed the BFH Guideline, a comprehensive resource designed to help future teams successfully organize Meet Ups. Our collaboration with iGEM Münster resulted in a video podcast that reflects on the growth and progress of participating teams, providing valuable insights for future competitions. </p> + <p>Additionally, we worked alongside teams from Linkoping, Patras, Radboud University, and TERMOSZ-Selye-HUN to contribute to the LNP Handbook, advancing knowledge in lipid-based delivery systems for therapeutic applications. </p> + <p>On the scientific front, we created a collection of protocols, the PreCL reporter system, and the innovative PrimeGuide Prime Editing technology, all of which aim to enhance research efficiency and precision. Our AirBuddy nanoparticle system for lung-specific delivery further exemplifies our commitment to advancing gene therapy solutions. These collaborations and contributions not only enriched the event but will continue to have a lasting impact on future iGEM teams and synthetic biology research. </p> + </Section> + + + + + </> ); } diff --git a/src/contents/Contribution/safety-contribution.tsx b/src/contents/Contribution/safety-contribution.tsx index cb5a85c1066bdbc278a33a1e77d0e4f75d71634c..6de0a7da37901288e30232d98f19bd52c4661dcd 100644 --- a/src/contents/Contribution/safety-contribution.tsx +++ b/src/contents/Contribution/safety-contribution.tsx @@ -1,14 +1,16 @@ import { PDF } from "../../components/Pdfs"; -import { Section } from "../../components/sections"; +import { Subesction } from "../../components/sections"; +import { PatientContribution } from "./patient-contribution"; export function SafetyContribution(){ return( <> - <Section title="Primary Culture Safety Guideline" id="Safety Guideline" > + <Subesction title="Biosafety & Security " id="Our Contributions1" > <PDF link="https://static.igem.wiki/teams/5247/pdfs/primary-culture-guideline.pdf" name="primary-culture-guideline.pdf"/> - </Section> + <PatientContribution/> + </Subesction> </> ) diff --git a/vite.config.js.timestamp-1727865681723-b4ff400bf9b0b.mjs b/vite.config.js.timestamp-1727865681723-b4ff400bf9b0b.mjs new file mode 100644 index 0000000000000000000000000000000000000000..fb3605f58b7b76ab96d2a060d92df7023a70d719 --- /dev/null +++ b/vite.config.js.timestamp-1727865681723-b4ff400bf9b0b.mjs @@ -0,0 +1,4002 @@ +// vite.config.js +import { defineConfig, loadEnv } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/vite/dist/node/index.js"; +import react from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/@vitejs/plugin-react/dist/index.mjs"; + +// src/components/FadeIn.tsx +import { useEffect, useRef, useState } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { Fragment, jsx, jsxs } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Breathe.tsx +import { useEffect as useEffect2, useRef as useRef2, useState as useState2 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Problems.tsx +import { useEffect as useEffect3, useRef as useRef3, useState as useState3 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { Fragment as Fragment3, jsx as jsx3, jsxs as jsxs3 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/utils/TabNavigation.tsx +import { useEffect as useEffect4, useState as useState5 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { useNavigate, useLocation } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js"; + +// src/utils/LoadingContext.tsx +import { createContext, useContext, useState as useState4 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { jsx as jsx4 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +var LoadingContext = createContext(null); +var useLoading = () => useContext(LoadingContext); + +// src/components/Headings.tsx +import { jsx as jsx5, jsxs as jsxs4 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function H4({ text, id }) { + var idtext; + if (id) { + idtext = id; + } else { + idtext = stringToSlug(text); + } + return /* @__PURE__ */ jsx5("div", { children: /* @__PURE__ */ jsxs4("h4", { className: "h4", id: idtext, children: [ + " ", + text, + " " + ] }) }); +} + +// src/components/precyse.tsx +import { jsx as jsx6 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Home.tsx +import { Fragment as Fragment4, jsx as jsx7, jsxs as jsxs5 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Buttons.tsx +import { Link } from "file:///home/lili/Documents/iGem/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:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js"; +var useNavigation = () => { + const navigate = useNavigate2(); + const { setIsLoading, isLoading } = useLoading(); + 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 changePageWithLoadingScreen = () => ({ path, scrollToId }) => { + setIsLoading(true); + let url = `${path}?changeTo=${scrollToId}`; + navigate(url); + setTimeout(() => { + const element = document.getElementById(scrollToId); + if (element) { + const viewportHeight = window.innerHeight; + const targetPosition = element.getBoundingClientRect().top + window.pageYOffset; + const scrollToPosition = targetPosition - viewportHeight / 2 + element.clientHeight / 2; + window.scrollTo({ top: scrollToPosition, behavior: "smooth" }); + setTimeout(() => { + setIsLoading(false); + }, 1e3); + } else { + setIsLoading(false); + } + }, 500); + }; + return { isLoading, changePageWithLoadingScreen, goToPageAndScroll, setIsLoading, goToPagesAndOpenTab, goToPageWithTabAndScroll, goToPageWithNestedTabs, goToPageWithTabAndCollapsible, goToTextsAndOpenCollapsible }; +}; + +// src/components/Buttons.tsx +import { Fragment as Fragment5, jsx as jsx8, jsxs as jsxs6 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/sections.tsx +import { jsx as jsx9, jsxs as jsxs7 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/team.tsx +import { Fragment as Fragment6, jsx as jsx10, jsxs as jsxs8 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/attributions.tsx +import { useEffect as useEffect5 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; + +// src/components/Quotes.tsx +import { jsx as jsx11, jsxs as jsxs9 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/attributions.tsx +import { Fragment as Fragment7, jsx as jsx12, jsxs as jsxs10 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Pdfs.tsx +import { Fragment as Fragment8, jsx as jsx13, jsxs as jsxs11 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/VerticalTimeline.tsx +import { jsx as jsx14, jsxs as jsxs12 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Slider.tsx +import Slider from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-slick/lib/index.js"; +import { Fragment as Fragment9, jsx as jsx15 } from "file:///home/lili/Documents/iGem/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 jsx16 } from "file:///home/lili/Documents/iGem/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__ */ jsx16("sup", { children: /* @__PURE__ */ jsx16("a", { onClick: handleClick, children: label }) }); +}; +var ScrollLinkWithChild = ({ targetId, children }) => { + const handleClick = () => { + const targetElement = document.getElementById(targetId); + if (targetElement) { + goTo(targetElement); + } + }; + return /* @__PURE__ */ jsx16("a", { onClick: handleClick, children }); +}; + +// src/components/BFH-Timeline.tsx +import { Fragment as Fragment10, jsx as jsx17, jsxs as jsxs13 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Photo-grid.tsx +import { jsx as jsx18 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/poster.tsx +import { Fragment as Fragment11, jsx as jsx19, jsxs as jsxs14 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/BFH/bfh-about.tsx +import { jsx as jsx20, jsxs as jsxs15 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/BFH/postergallery.tsx +import { Fragment as Fragment12, jsx as jsx21, jsxs as jsxs16 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/BFH/bfh.tsx +import { jsx as jsx22, jsxs as jsxs17 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/collabs.tsx +import { jsx as jsx23, jsxs as jsxs18 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/patient-contribution.tsx +import { Fragment as Fragment13, jsx as jsx24, jsxs as jsxs19 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/safety-contribution.tsx +import { Fragment as Fragment14, jsx as jsx25, jsxs as jsxs20 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/wiki-tabs.tsx +import { TabContext, TabList, TabPanel } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/@mui/lab/node/index.js"; +import { Box, Tab } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/@mui/material/node/index.js"; +import React3 from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; + +// src/contents/Contribution/Wiki/wiki-start.tsx +import { Fragment as Fragment15, jsx as jsx26, jsxs as jsxs21 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Collapsible.tsx +import { useEffect as useEffect6, useState as useState6 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { useLocation as useLocation2 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js"; +import { Fragment as Fragment16, jsx as jsx27, jsxs as jsxs22 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/wiki-sources.tsx +import { jsx as jsx28, jsxs as jsxs23 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Filter.tsx +import Select from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-select/dist/react-select.cjs.mjs"; +import React2 from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { jsx as jsx29 } from "file:///home/lili/Documents/iGem/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 React2.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__ */ jsx29( + 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 jsx30, jsxs as jsxs24 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Code.tsx +import { jsx as jsx31 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/trouble-data.tsx +import { Fragment as Fragment17, jsx as jsx32, jsxs as jsxs25 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/troubleshooting.tsx +import { jsx as jsx33, jsxs as jsxs26 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/wiki-overview.tsx +import { jsx as jsx34, jsxs as jsxs27 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/wiki-tabs.tsx +import { jsx as jsx35, jsxs as jsxs28 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/Wiki/wiki.tsx +import { jsx as jsx36 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Contribution/contribution.tsx +import { Fragment as Fragment18, jsx as jsx37, jsxs as jsxs29 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Boxes.tsx +import { jsx as jsx38, jsxs as jsxs30 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function QaBox({ q, a }) { + return /* @__PURE__ */ jsxs30("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 Fragment19, jsx as jsx39, jsxs as jsxs31 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Graph.tsx +import { Pie } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-chartjs-2/dist/index.js"; +import { Bar } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-chartjs-2/dist/index.js"; +import { Chart as ChartJS, Tooltip, Legend, ArcElement, BarElement, CategoryScale, LinearScale, Title, RadialLinearScale } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/chart.js/dist/chart.js"; +import { jsx as jsx40 } from "file:///home/lili/Documents/iGem/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 Fragment20, jsx as jsx41, jsxs as jsxs32 } from "file:///home/lili/Documents/iGem/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__ */ jsxs32(Fragment20, { children: [ + "Located behind the stomach in the back abdominal cavity ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "74" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "Responsible for neutralizing stomach acid, production of hormones (like Insulin) and digestion enzymes ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "74" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "Clogging caused by CF, so that products of the pancreatic gland can not be distributed ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "75" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { 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(Fragment20, { children: "Located in the abdominal cavity and extends from the stomach to the anus" }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "Responsible for nutrient absorption, water reabsorption, and waste elimination ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "80" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "CF can cause blocking of the intestines, preventing the normal movement of food and absorption of nutrients ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "81" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { children: [ + "Located directly below the diaphragm near the pancreatic gland and stomach ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "82" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { children: [ + "CF affects the normal secretion and function of bile- it becomes stickier ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "83" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { children: [ + "Located in pelvic area ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "85" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "Responsible for production of sperm (male)/ production of oocytes and as site for embryo development (female) ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "86" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { 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__ */ jsxs32(Fragment20, { children: [ + "Located in the ribcage ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "90" }) + ] }), /* @__PURE__ */ jsxs32(Fragment20, { children: [ + "Responsible for breathing \u2013 aspiration of life-giving oxygen and deposition of carbondioxide ", + /* @__PURE__ */ jsx41(SupScrollLink, { label: "90" }) + ] }), /* @__PURE__ */ jsx41(Fragment20, { 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__ */ jsxs32(Fragment20, { 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(Fragment20, { 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(Fragment20, { children: "Located throughout the entire body" }), /* @__PURE__ */ jsx41(Fragment20, { children: "Responsible for structuration of the body, protection of organs, mineral storage, blood cell production [23]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "CF affects the skeletal system by reducing bone mineral density [24]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "This can lead in context of CF to osteoporosis, spinal fractures, kyphosis, scoliosis [24]" }), /* @__PURE__ */ jsx41(Fragment20, { 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(Fragment20, { children: "Located on the surface of the entire body" }), /* @__PURE__ */ jsx41(Fragment20, { children: "Responsible for barrier function, immunological defense, regulation of homeostasis, sensory functions [25]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "CF affects CFTR channels of sweat glands, which leads to salt deposits on the skin [26]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "This can lead in context of CF to skin irritation (rash or dermatitis) [26]" }), /* @__PURE__ */ jsx41(Fragment20, { 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(Fragment20, {}), /* @__PURE__ */ jsx41(Fragment20, { children: "Responsible for smell perception, breathing, filtration and cleaning, and serving as a resonance chamber for the voice [28]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "CF affects thickness of nasal secretions, which cannot drain well [26]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "This can lead in context of CF to nasal congestion, pressure headaches, sinusitis, inflammation of nasal polyps [26]" }), /* @__PURE__ */ jsx41(Fragment20, { 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(Fragment20, { children: "Located inside the skull" }), /* @__PURE__ */ jsx41(Fragment20, { children: "Responsible for cognitive functions, movement coordination, and control of vital functions [29]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "CF affects mental health due to psychological stress and social isolation [30]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "This can lead in context of CF to physical illnesses like depression and anxiety disorders [30]" }), /* @__PURE__ */ jsx41(Fragment20, { children: "Treatment options include psychotherapy, antidepressants, support groups and sports [31]" })] + } +]; + +// src/data/drug-data.tsx +import { Fragment as Fragment21, jsx as jsx42, jsxs as jsxs33 } from "file:///home/lili/Documents/iGem/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__ */ jsxs33("a", { 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__ */ jsxs33("a", { 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__ */ jsxs33("a", { 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__ */ jsxs33("a", { 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__ */ jsxs33("a", { 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__ */ jsxs33("a", { 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__ */ jsxs33(Fragment21, { 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__ */ jsxs33(Fragment21, { 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__ */ jsxs33("a", { 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 jsxs34 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/makeSources.tsx +import { useState as useState7, useEffect as useEffect7 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import bibtexParse from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/bibtex-parser-js/bibtexParse.js"; +import { Fragment as Fragment22, jsx as jsx44, jsxs as jsxs35 } from "file:///home/lili/Documents/iGem/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__ */ jsxs35(Fragment22, { 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__ */ jsxs35(Fragment22, { 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 }) => { + const [parsedEntries, setParsedEntries] = useState7([]); + useEffect7(() => { + console.log("Parsing BibTeX sources: ", bibtexSources6); + 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) => { + console.log("Original input:", authors); + const cleanedAuthors = authors.replace(/\s*and\s*/g, "|").replace(/\{|\}/g, "").trim(); + console.log("Cleaned authors string:", cleanedAuthors); + const authorList = cleanedAuthors.split("|").map((author) => author.trim()); + console.log("Split author list:", authorList); + const maxAuthors = 7; + const formattedAuthors = authorList.map((author, index) => { + console.log(`Processing author #${index + 1}:`, author); + const [last, firstNames] = author.includes(",") ? author.split(",").map((part) => part.trim()) : ["", author]; + console.log(`Last name: "${last}", First names: "${firstNames}"`); + const initials = firstNames.split(" ").map((n) => n[0] + ".").join(" "); + console.log(`Initials for "${firstNames}": "${initials}"`); + const formattedName = `${last}, ${initials}`.trim(); + console.log(`Formatted name: "${formattedName}"`); + return formattedName; + }); + console.log("Formatted authors before adding et al.:", formattedAuthors); + const output = formattedAuthors.slice(0, maxAuthors).join("; ") + (formattedAuthors.length > maxAuthors ? " et al." : ""); + console.log("Final output:", output); + return output; + }; + let specialthing = ""; + if (special) { + specialthing = `#${special}`; + } + const renderCitation = (entry, index) => { + const citationNumber = index + 1; + const entryType = entry.entryType.toLowerCase(); + const entryTags = entry.entryTags; + switch (entryType) { + case "article": + return /* @__PURE__ */ jsxs35("li", { typeof: "schema:ScholarlyArticle", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}${specialthing}`, children: [ + formatAuthors(entryTags.AUTHOR || entryTags.EDITOR || ""), + "\xA0", + /* @__PURE__ */ jsxs35("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__ */ jsxs35("span", { children: [ + "\xA0(", + /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }), + ")." + ] }), + entryTags.DOI && /* @__PURE__ */ jsxs35("span", { children: [ + "\xA0", + /* @__PURE__ */ jsxs35("a", { className: "doi", href: `https://doi.org/${entryTags.DOI}`, children: [ + "doi: ", + entryTags.DOI + ] }) + ] }) + ] }, index); + case "book": + return /* @__PURE__ */ jsxs35("li", { typeof: "schema:Book", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}`, children: [ + formatAuthors(entryTags.AUTHOR || entryTags.EDITOR || ""), + entryTags.TITLE ? /* @__PURE__ */ jsxs35("span", { property: "schema:name", children: [ + "\xA0", + entryTags.TITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(), + "." + ] }) : entryTags.BOOKTITLE ? /* @__PURE__ */ jsxs35("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__ */ jsxs35("i", { property: "schema:publisher", typeof: "schema:Organization", children: [ + "\xA0", + entryTags.PUBLISHER + ] }), + entryTags.YEAR && /* @__PURE__ */ jsxs35("span", { children: [ + "\xA0(", + /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }), + ")." + ] }), + entryTags.ISBN && /* @__PURE__ */ jsxs35("span", { property: "isbn", children: [ + "\xA0", + entryTags.ISBN + ] }) + ] }, index); + case "misc": + return /* @__PURE__ */ jsxs35("li", { typeof: "schema:WebPage", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}`, children: [ + entryTags.AUTHOR || entryTags.EDITOR || "", + entryTags.TITLE && /* @__PURE__ */ jsxs35("span", { property: "schema:name", children: [ + ".\xA0", + entryTags.TITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(), + "." + ] }), + entryTags.HOWPUBLISHED && /* @__PURE__ */ jsxs35("i", { property: "schema:publisher", typeof: "schema:Organization", children: [ + "\xA0", + entryTags.HOWPUBLISHED + ] }), + entryTags.YEAR && /* @__PURE__ */ jsxs35("span", { children: [ + "\xA0(", + /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }), + ")." + ] }) + ] }, index); + case "inproceedings": + return /* @__PURE__ */ jsxs35("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__ */ jsxs35("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__ */ jsxs35("li", { children: [ + "Unknown entry type: ", + entryType + ] }, index); + } + }; + return /* @__PURE__ */ jsx44("div", { children: parsedEntries.length === 0 ? /* @__PURE__ */ jsx44("p", { children: "No citations available." }) : /* @__PURE__ */ jsx44("ol", { children: parsedEntries.map((entry, index) => renderCitation(entry, index)) }) }); +}; +var makeSources_default = BibtexParser; + +// src/sources/description-sources.tsx +import { jsx as jsx45 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/description.tsx +import { jsx as jsx46, jsxs as jsxs36 } from "file:///home/lili/Documents/iGem/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__ */ jsx46("li", { children: data.introduction[index] }, index) + ); + } + return /* @__PURE__ */ jsxs36("div", { children: [ + /* @__PURE__ */ jsx46(H4, { id: `${data.name}-btn`, text: data.name }), + /* @__PURE__ */ jsxs36("div", { className: "row", children: [ + /* @__PURE__ */ jsx46("div", { className: "col-2", children: /* @__PURE__ */ jsx46("div", { className: "symptom-img-wrapper", children: /* @__PURE__ */ jsx46("img", { src: data.picture, className: "symptom-img" }) }) }), + /* @__PURE__ */ jsx46("div", { className: "col", children: /* @__PURE__ */ jsx46("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__ */ jsx46("li", { children: data.examples[index].text[i] }, i) + ); + } + examplelist.push( + /* @__PURE__ */ jsxs36("div", { className: "drug", children: [ + /* @__PURE__ */ jsx46(H4, { text: data.examples[index].title }), + /* @__PURE__ */ jsx46("ul", { children: absaetze }, index) + ] }, index + 500) + ); + } + return /* @__PURE__ */ jsxs36("div", { children: [ + /* @__PURE__ */ jsx46(H4, { id: `${data.name}-btn`, text: data.name }), + /* @__PURE__ */ jsxs36("div", { className: "row", children: [ + /* @__PURE__ */ jsx46("div", { className: "col-2", children: /* @__PURE__ */ jsx46("div", { className: "symptom-img-wrapper", children: /* @__PURE__ */ jsx46("img", { src: data.picture, className: "symptom-img" }) }) }), + /* @__PURE__ */ jsx46("div", { className: "col", children: data.introduction }) + ] }), + /* @__PURE__ */ jsx46("div", { className: "col", children: examplelist }) + ] }); +} + +// src/utils/createSidebar.tsx +import { useEffect as useEffect8, useState as useState8 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { Fragment as Fragment23, jsx as jsx47, jsxs as jsxs37 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/descS.tsx +import { jsx as jsx48 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Link.tsx +import { jsx as jsx49 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function TabScrollLink({ tab, scrollId, num }) { + const { goToPageWithTabAndScroll } = useNavigation(); + return /* @__PURE__ */ jsx49("sup", { children: /* @__PURE__ */ jsx49("a", { onClick: () => goToPageWithTabAndScroll({ path: "", tabId: tab, scrollToId: scrollId }), children: num }) }); +} + +// src/sources/eng-trf-sources.tsx +import { jsx as jsx50 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/eng-reporter-sources.tsx +import { jsx as jsx51 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/eng-pe-sources.tsx +import { jsx as jsx52 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/eng-peg-sources.tsx +import { jsx as jsx53 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/eng-nickases-sources.tsx +import { jsx as jsx54 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/eng-delivery-sources.tsx +import { jsx as jsx55 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/engineering.tsx +import { Fragment as Fragment24, jsx as jsx56, jsxs as jsxs38 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/experiments.tsx +import { Fragment as Fragment25, jsx as jsx57, jsxs as jsxs39 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/notebook.tsx +import { jsx as jsx58, jsxs as jsxs40 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Loremipsum.tsx +import { jsx as jsx59 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Figures.tsx +import { jsx as jsx60, jsxs as jsxs41 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/results.tsx +import { Fragment as Fragment26, jsx as jsx61, jsxs as jsxs42 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/safety.tsx +import { Fragment as Fragment27, jsx as jsx62, jsxs as jsxs43 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Overwiev.tsx +import { jsx as jsx63, jsxs as jsxs44 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Introduction.tsx +import { jsx as jsx64, jsxs as jsxs45 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/joshua-inv-sources.tsx +import { jsx as jsx65 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function JoshuaInterviewSources() { + return /* @__PURE__ */ jsx65("div", { children: /* @__PURE__ */ jsx65(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 jsx66 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function MattijsInterviewSources() { + return /* @__PURE__ */ jsx66("div", { children: /* @__PURE__ */ jsx66(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 jsx67 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function LiuInterviewSources() { + return /* @__PURE__ */ jsx67("div", { children: /* @__PURE__ */ jsx67(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 jsx68 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function RnhaleSources() { + return /* @__PURE__ */ jsx68("div", { children: /* @__PURE__ */ jsx68(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 jsx69 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function WischmeyerSources() { + return /* @__PURE__ */ jsx69("div", { children: /* @__PURE__ */ jsx69(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 jsx70, jsxs as jsxs46 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; +function HPLinktoOtherHPTab({ tab, text }) { + const { goToPagesAndOpenTab } = useNavigation(); + return /* @__PURE__ */ jsxs46("a", { onClick: () => goToPagesAndOpenTab(tab, ""), children: [ + " ", + text, + " " + ] }); +} +function HPgoToPageAndScroll({ id, text, path }) { + const { goToPageAndScroll } = useNavigation(); + return /* @__PURE__ */ jsxs46("a", { onClick: () => goToPageAndScroll(id, path), 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" +}; +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", + cardtext: "", + quoteNachname: "Zimmermann, Intructor", + quoteVorname: "Sinan", + quote: "My first challenge was selecting the iGEM team. 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__ */ jsx70("p", { children: "Building a successful 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__ */ jsx70("p", { children: /* @__PURE__ */ jsx70("strong", { children: "The team members come from diverse fields of study, including Molecular Biotechnology, Bioinformatics, Molecular Cell Biology, Genome-Based System Biology, Interdisciplinary Biomedicine, and even Media Production." }) }), + /* @__PURE__ */ jsx70("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 Vincent Carl St\xF6ckl in the early stages of their academic careers to more advanced students in later semesters, 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 in molecular biology, bioinformatics, cell biology, and media production, 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", + cardtext: "", + 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__ */ jsxs46("p", { children: [ + "During our initial discussions about project ideas, the team explored several innovative concepts before honing in on ", + /* @__PURE__ */ jsx70("strong", { children: "cystic fibrosis" }), + ". Each project presented unique scientific challenges and potential impacts." + ] }), + /* @__PURE__ */ jsxs46("p", { children: [ + "One idea involved the development of ", + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("p", { children: [ + "Another compelling project was focused on ", + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("p", { children: [ + "We also considered a project aimed at preventing ", + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("p", { children: [ + "Throughout our discussions, we recognized that while each project had merit, the ", + /* @__PURE__ */ jsx70("strong", { 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", + cardtext: "", + 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: [/* @__PURE__ */ jsx70("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. 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." })], + 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", + cardtext: "", + 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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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 1, 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__ */ jsxs46(Fragment28, { children: [ + " ", + /* @__PURE__ */ jsx70("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__ */ jsx70("p", { children: "Max played a significant role in shaping our project from the outset, particularly in guiding our focus on Integrated Human Practices [Link Best HP] and Safety & Security [Link Best Biosafety] 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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Do you know other patients that would want to use gene therapy?", a: "Yes, most definitely." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Do you think there has to be more effort concerning diagnostics?", a: "Early diagnosis is covered by the screenings." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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: "St\xF6ckl, Teammember", + quoteVorname: "Vincent", + summary: "Our team members Liliana Sanfilippo and Vincent St\xF6ckl 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.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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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[LINK Cycle Delivery] 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: "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 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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70("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__ */ jsx70("p", { children: "This interview was recorded on video at a later date." }) + ] }) + }, + { + vorname: "Looking for expertise", + nachnname: "", + pictureurl: pics["placeholder"], + tag: "Milestone", + heading: "Identifying key experts in cystic fibrosis and prime editing", + interviewtabid: "experts", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + 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", + cardtext: "", + 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", + cardtext: "", + language: "en", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46("p", { children: [ + "These insights helped refine our iGEM project in several key ways:", + /* @__PURE__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70("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__ */ jsx70("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. " }), + /* @__PURE__ */ jsx70("p", { children: "Pros of Early Diagnosis and Treatment" }), + /* @__PURE__ */ jsxs46("ol", { children: [ + /* @__PURE__ */ jsx70("li", { children: "Timely Intervention: Prevents severe organ damage and improves long-term outcomes." }), + /* @__PURE__ */ jsx70("li", { children: "Holistic Care: Involves a multidisciplinary team for comprehensive patient support." }), + /* @__PURE__ */ jsx70("li", { children: "Access to Innovations: Allows patients to benefit from advancements like nanoparticle drug delivery." }), + /* @__PURE__ */ jsx70("li", { children: "Family Support: Provides education and resources for effective management from the start." }) + ] }), + /* @__PURE__ */ jsx70("p", { children: "Cons of Early Diagnosis and Treatment" }), + /* @__PURE__ */ jsxs46("ol", { children: [ + /* @__PURE__ */ jsx70("li", { children: "Psychological Burden: May cause stress for parents and children due to constant medical interventions." }), + /* @__PURE__ */ jsx70("li", { children: "Cost Implications: Treatments can be expensive, with varying insurance coverage, leaving many families unable to afford care." }), + /* @__PURE__ */ jsx70("li", { children: "Infection Risks: Patients still face risks from infections like Pseudomonas spp., leading to potential hospitalizations." }), + /* @__PURE__ */ jsx70("li", { children: "Over-medicalization: Continuous focus on treatment can overwhelm families, affecting the quality of early childhood experiences." }) + ] }) + ], + implementation: [/* @__PURE__ */ jsxs46("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/olario-abbildung1.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: "x", + pictureurl: pics["placeholder"], + tag: "Milestone", + affiliation: "", + heading: "Further brainstorming on approaches", + interviewtabid: "brainstorming", + cardtext: "", + quote: "x", + quoteNachname: "x", + quoteVorname: "d", + aimofcontact: "d", + insights: "d", + implementation: "d", + type: "meta", + summary: "d", + 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", + cardtext: "", + 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__ */ jsx70("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 [Link mukomove]" })], + months: "May", + interview: /* @__PURE__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "When does drainage start?", a: "We start drainage in newborns to prevent mucus from settling." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + language: "de", + quote: "x", + 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["placeholder"], + tag: "Milestone", + heading: "Tracking progress in expert search and idea development", + interviewtabid: "progress", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + months: "may" + }, + { + vorname: "MukoMove", + nachnname: "", + pictureurl: pics["mukomove"], + tag: "Outreach", + heading: "Moving together for health and hope, our participation in CF awarness month", + interviewtabid: "mukomovehp", + type: "meta", + cardtext: "", + quoteNachname: "Susat, Teammember", + quoteVorname: "Kathleen", + quote: "It was amazing to see how movement can bring people together. I had a great time.", + summary: [/* @__PURE__ */ jsx70("p", { children: "MUKOmove[LINK unten 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", + cardtext: "", + 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 optimisation, 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[Link Biosafety], 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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70(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__ */ jsxs46("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__ */ jsx70(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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70( + 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. \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. \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. \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. \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. \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. \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. \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__ */ jsx70( + QaBox, + { + q: "That has already been very helpful, thank you for that. We'll consider this and might look into it a bit more. \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. \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. \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. \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. \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. \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__ */ jsx70( + 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. \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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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. \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. \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__ */ jsx70( + 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.' \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. \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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Yes, okay, thank you. Do you have time left, or are we out of time?", a: " It's fine." }), + /* @__PURE__ */ jsx70(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. \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. \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. \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__ */ jsx70(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. \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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Yes, that sounds quite good. I think we\u2019ll definitely consider that as a method. \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. \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. \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. \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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Getting Acquainted with Cystic Fibrosis", + interviewtabid: "inisghts", + cardtext: "", + 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: "", + months: "june" + }, + { + vorname: "'Der Teuto ruft'", + nachnname: "", + pictureurl: pics["teuto"], + tag: "Education", + heading: "Educational city tour for young and old", + interviewtabid: "teuto", + type: "meta", + cardtext: "", + 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__ */ jsx70("p", { children: '"Der Teuto ruft!"[LInk zu Teuto unten] 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", + cardtext: "", + 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__ */ jsxs46("p", { children: [ + "We learned from our discussion with ", + /* @__PURE__ */ jsx70(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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46("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__ */ jsx70(HPLinktoOtherHPTab, { tab: "joshua", text: "interviews" }), + ". " + ] })], + interview: /* @__PURE__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(QaBox, { q: "Does your son also have cystic fibrosis?", a: "No, he doesn\u2019t." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + quote: "X", + aimofcontact: [/* @__PURE__ */ jsx70("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__ */ jsx70("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__ */ jsxs46("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__ */ jsx70(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__ */ jsx70(HPLinktoOtherHPTab, { tab: "mattijsinv\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__ */ jsx70("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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70(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__ */ jsx70(HPgoToPageAndScroll, { id: "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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("p", { children: "Discussions with industry experts have provided invaluable insights into the production of LNPs[LINK LNPcycle], 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__ */ jsx70("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", + cardtext: "", + language: "de", + quote: "Children are the world's best \u201Cmucus hiders\u201D.", + aimofcontact: [/* @__PURE__ */ jsxs46("a", { children: [ + "During the last interview with ", + /* @__PURE__ */ jsx70(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__ */ jsxs46("ol", { children: [ + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Robin (>10)" }), + /* @__PURE__ */ jsx70("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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Sam (<10) & Alex (<10)" }), + /* @__PURE__ */ jsx70("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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Toni (<5)" }), + /* @__PURE__ */ jsx70("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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Chrissi (>10)" }), + /* @__PURE__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70(ScrollLinkWithChild, { targetId: "desc-1", children: /* @__PURE__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsxs46("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__ */ jsx70(ScrollLinkWithChild, { targetId: "desc-2", children: /* @__PURE__ */ jsx70("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__ */ jsxs46("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__ */ jsx70(ScrollLinkWithChild, { targetId: "desc-3", children: /* @__PURE__ */ jsx70("sup", { children: "3" }) }), + ". Consequently, it enables precise measurement of conductivity dependent on CFTR expression. " + ] }) + ] })], + implementation: [/* @__PURE__ */ jsx70("p", { children: "We decided to use HEK293T[Link] cells lines which do overexpress the correct CFTR and those which express CFTR with F508del mutation for the Patch-Clamp measurements[LINK Methodspatchclamp]. 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__ */ jsx70(WischmeyerSources, {}), + interview: /* @__PURE__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + language: "en", + quote: "We\u2019ve had to sit by and watch people die, knowing that better treatment exists but is inaccessible. ", + aimofcontact: [ + /* @__PURE__ */ jsxs46("p", { children: [ + "We contacted the organization ", + /* @__PURE__ */ jsx70("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__ */ jsxs46("p", { children: [ + "It is possible to learn more about Joshua and his family though the ", + /* @__PURE__ */ jsx70("a", { href: "https://thebonnellfoundation.org/cf-vests-worldwide/", children: "podcast of the Bonnel foundation" }), + "." + ] }) + ], + insights: [/* @__PURE__ */ jsxs46("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__ */ jsx70(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__ */ jsx70(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__ */ jsxs46("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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Getting Acquainted with Cystic Fibrosis", + interviewtabid: "loop", + cardtext: "", + 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: "", + 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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("p", { children: "In our discussion with Prof. Dr. Hammer discussion with Prof. Dr. Hammer about different theoretical approaches we had developed:" }), + /* @__PURE__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("li", { children: "PAM engineering" }), + /* @__PURE__ */ jsx70("li", { children: "Chimeric protein" }), + /* @__PURE__ */ jsx70("li", { children: "Phage-Assisted Continuous Evolution (PACE)" }), + /* @__PURE__ */ jsx70("li", { children: "Rational Design: Mutation of zinc-finger" }) + ] }), + /* @__PURE__ */ jsx70("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__ */ jsx70("p", { children: "We learned from the discussion that we need to take a rational approach and consider the following conclusions:" }), + /* @__PURE__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("li", { children: "A rational approach could be the transfer of mutations to homologous proteins" }), + /* @__PURE__ */ jsx70("li", { children: "For rational design, structural simulation using AlphaFold 3 could be used to model and understand specific protein structures" }), + /* @__PURE__ */ jsx70("li", { children: "Homologous mechanisms & sequence alignments" }), + /* @__PURE__ */ jsx70("li", { children: "Analysis of structural similarities in catalytic centers by sequence comparisons" }), + /* @__PURE__ */ jsx70("li", { children: "Using Ala or Gly for substitution" }), + /* @__PURE__ */ jsx70("li", { children: "Development of a nickase assay" }) + ] }), + /* @__PURE__ */ jsx70("p", { children: "We developed our mutation candidates on this basis [link zum Cycle oder New Part ?]" }) + ], + 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", + cardtext: "", + 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__ */ jsx70("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__ */ jsxs46("p", { children: [ + "The discussion with ", + /* @__PURE__ */ jsx70("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__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Spray Drying Feasibility:" }), + " Corden Pharma hasn\u2019t explored spray drying extensively; consultation with specialists is recommended for assessing feasibility and lipid stability." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Lipid Modifications:" }), + " Exploring alternative lipids (e.g., cholesterol derivatives) could enhance stability and cellular uptake, tailored to project needs." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Antibody Incorporation:" }), + " Antibodies can be incorporated into LNPs during preparation or afterward, depending on targeting requirements." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Intellectual Property:" }), + " IP considerations are crucial when selecting lipids for LNP formulations, as many lipids are patented." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Collaboration Opportunities:" }), + " Corden Pharma is open to offering discounts or forming partnerships, with recognition in publications or acknowledgments." + ] }) + ] }) + ], + implementation: [/* @__PURE__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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." }), + /* @__PURE__ */ jsx70(QaBox, { q: "Is it possible to obtain a discount on LNP starter kits or establish a collaborative relationship with Corden Pharma?", a: "We would need to discuss this internally but generally we would be open to potential collaborations that could involve recognition in publications or other forms of acknowledgment, pending approval from relevant management." }) + ] }), + 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", + cardtext: "", + 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__ */ jsx70("p", { children: "MINT Sommer 2024 [Link Mint Sommer unten] 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", + cardtext: "", + 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__ */ jsx70("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[Link]) 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__ */ jsx70("p", { children: "Svenja explained, that a PACE approach is not feasible to use for optimization of our nickase candidates because of several reasons:" }), + /* @__PURE__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("li", { children: "Implementing a PACE system takes way too much time to use for our project." }), + /* @__PURE__ */ jsx70("li", { children: "Endonucleases might be too big to optimize using PACE." }), + /* @__PURE__ */ jsx70("li", { children: "Unspecific cutting or nicking in the bacterial genome kills the cells, which makes optimization of endonucleases very challenging." }), + /* @__PURE__ */ jsx70("li", { children: "Prime editing in E. coli cells is less effective compared to human cells, which might impair the evolution process." }) + ] }) + ], + implementation: [/* @__PURE__ */ jsx70("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", + cardtext: "", + 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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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[Link] 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__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("li", { children: "Learned different approaches to using LNPs and liposomes in iGEM projects." }), + /* @__PURE__ */ jsx70("li", { children: "Discovered new methods for optimizing LNPs." }), + /* @__PURE__ */ jsx70("li", { children: "Recognized challenges in particle stability and targeted delivery." }), + /* @__PURE__ */ jsx70("li", { children: "Gained appreciation for the interdisciplinary complexity of these systems." }), + /* @__PURE__ */ jsx70("li", { children: "Focused on documenting work to benefit future iGEM teams." }) + ] }) + ], + implementation: [/* @__PURE__ */ jsx70("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[link Handbook] 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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70(HPLinktoOtherHPTab, { tab: "hammer", text: "Prof. Dr. Hammer" }), + ", who is the leader of the working group organic chemistry and bioanalytics at Bielefeld University." + ] })], + insights: [/* @__PURE__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsxs46("p", { children: [ + "During our interview with ", + /* @__PURE__ */ jsx70(HPLinktoOtherHPTab, { tab: "saito", text: "Makoto Saito" }), + " about fanzor[link 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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-fancy-roboter.jpeg" }), + ",", + /* @__PURE__ */ jsx70("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__ */ jsx70("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-christian-kathleen.jpeg" }), + ",", + /* @__PURE__ */ jsx70("p", { children: " During their tour of the biobank, Kathleen and Christian were given an insight into the advanced sample storage systems. " }), + ",", + /* @__PURE__ */ jsx70("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-fl-ssig-stickstoff.jpeg" }), + ",", + /* @__PURE__ */ jsx70("p", { children: " Liquid nitrogen in action - extremely cold and indispensable for the deep-freeze storage of sensitive samples. " }), + ",", + /* @__PURE__ */ jsx70("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-tank.jpeg" }), + ",", + /* @__PURE__ */ jsx70("p", { children: " Large liquid nitrogen tank for the safe storage of samples in the biobank. " }) + ] }), + language: "de", + interview: /* @__PURE__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70(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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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", + cardtext: "", + 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__ */ jsx70("p", { children: "The CeBiTec Student Academy[Link unten Sch\xFCler akademie] 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["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Brainstorming and selection of ideas and concepts", + interviewtabid: "evidence", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + 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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70("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, since his doctoral thesis in her working group. 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 technology and how it could enhance our delivery systems. " + ] })], + insights: [ + /* @__PURE__ */ jsxs46("p", { children: [ + "RNhale's technology leverages advanced spray drying techniques to stabilize and deliver RNA therapeutics. 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 spray drying process itself involves mixing an ethanol phase containing lipids with an aqueous phase containing RNA. This mixture is then spray-dried, forming LNPs as tiny spherical particles. Key parameters for this process include maintaining an internal drying temperature of around 100 \xB0C and using excipients like lactose to preserve the nanoparticles' structure and function\u200B ", + /* @__PURE__ */ jsx70(TabScrollLink, { tab: "rnhale", scrollId: "desc-1", num: "1" }), + ". " + ] }), + /* @__PURE__ */ jsxs46("p", { children: [ + 'Ensuring the integrity and efficiency of the LNPs involves various methods, including gel electrophoresis, blotting, and functional readouts through transfection assays. After drying, the nanoparticles retain their spherical structure, which resembles that of "golf balls" under scanning electron microscopy (SEM)', + /* @__PURE__ */ jsx70(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. This AI-driven approach enhances efficiency and reliability in developing therapeutic nanoparticles. " + ] }) + ], + implementation: [ + /* @__PURE__ */ jsx70("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__ */ jsx70(RnhaleSources, {}), + interview: /* @__PURE__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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 can guarantee a shelf life 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 LNPs in a cool, dry place, away from direct sunlight." }), + /* @__PURE__ */ jsx70(QaBox, { q: "What technical requirements and equipment are necessary to successfully spray-dry LNPs using your nano-embedded-microparticle (NEM) technology?", 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 a spray-drying process where droplets are sprayed into a drying tower. The liquid evaporates, leaving behind LNPs as small spherical particles." }), + /* @__PURE__ */ jsx70(QaBox, { q: "How complicated is the protocol for producing spray-dried LNPs? Can you describe the protocol?", a: "The protocol, while detailed, is straightforward. It involves preparing the lipid and RNA mixture, followed by the spray-drying process where droplets are sprayed into a drying tower. As the liquid evaporates, the LNPs remain as small beads. This process is critical for ensuring the correct size and composition of the LNPs." }), + /* @__PURE__ */ jsx70(QaBox, { q: "How do LNPs appear after the drying process?", a: "After drying, LNPs resemble golf balls on a micron scale when observed under a scanning electron microscope (SEM). Their size distribution is analyzed through light scattering measurements, among other techniques." }), + /* @__PURE__ */ jsx70(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. Chitosan and PEG can also influence stability. Without PEG, LNPs may agglomerate and become non-functional, but too much PEG can render them inert. Therefore, a balanced approach is necessary, though PEG has no significant impact on the drying process itself." }), + /* @__PURE__ */ jsx70(QaBox, { q: "At what temperature is the LNP dried?", a: "The internal temperature during the drying process is approximately 100 degrees Celsius, as noted in our publications." }), + /* @__PURE__ */ jsx70(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." }), + /* @__PURE__ */ jsx70(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." }), + /* @__PURE__ */ jsx70(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." }), + /* @__PURE__ */ jsx70(QaBox, { q: "What properties of LNPs could hinder the drying process?", a: "Theoretically, nothing should hinder the drying process if it is optimized for the specific cargo and target. Adjustments can always be made to accommodate different formulations." }), + /* @__PURE__ */ jsx70(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." }), + /* @__PURE__ */ jsx70(QaBox, { q: "What are the estimated costs for the entire drying process?", a: "The primary expenses are in raw materials and formulations, which are relatively expensive. The process itself can cost in the four-digit range." }), + /* @__PURE__ */ jsx70(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% lipid solids and 0.02% RNA. We\u2019ve 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", + cardtext: "", + 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__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Nano-Capsules Focus:" }), + " Based on Katharina\u2019s advice, we prioritized nano-capsules for their enhanced stability over nano-complexes." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "OptiMEM for Transfection:" }), + " OptiMEM is now our chosen transfection medium, with the suggestion to remove antibiotics 24 hours prior." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "MTT Test for Cytotoxicity:" }), + " We adopted the MTT test for cytotoxicity due to its simplicity and reliability." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { children: "Nasal Spray and Dry Powder Testing:" }), + " We are considering testing nanoparticle stability using nasal spray solutions and exploring dry powder formulations." + ] }), + /* @__PURE__ */ jsxs46("li", { children: [ + /* @__PURE__ */ jsx70("strong", { 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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Was determining the optimal amount of nanoparticles trial and error?", a: "Yes, definitely. It involved a lot of optimization." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + language: "de", + quote: "", + aimofcontact: [/* @__PURE__ */ jsx70("p", {})], + insights: [/* @__PURE__ */ jsx70("p", {})], + implementation: [/* @__PURE__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsxs46("ul", { children: [ + /* @__PURE__ */ jsx70("li", { children: "Good Laboratory Practice (GLP)" }), + /* @__PURE__ */ jsx70("li", { children: "Good Clinical Practice (GCP)" }), + /* @__PURE__ */ jsx70("li", { children: "Good Manufacturing Practice (GMP)" }) + ] }), + /* @__PURE__ */ jsxs46("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__ */ jsx70(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["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Brainstorming and selection of ideas and concepts", + interviewtabid: "connect", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + months: "august" + }, + { + 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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }), + ", our CF friend. " + ] })], + insights: [/* @__PURE__ */ jsx70("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(QaBox, { q: "Should we explain our project a little bit in the beginning?", a: "That would be great." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(QaBox, { q: "Yes, we are aware of it.", a: "Great! How can I help you further?" }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsxs46("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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsxs46("p", { children: [ + "In previous interviews, ", + /* @__PURE__ */ jsx70(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }), + " and ", + /* @__PURE__ */ jsx70(HPLinktoOtherHPTab, { tab: "dino", text: "Thomas" }), + " shared how the psychological burden of living with cystic fibrosis weighs heavily on patients. Parents ", + /* @__PURE__ */ jsx70(HPLinktoOtherHPTab, { tab: "joshua", text: "Joshua" }), + " and ", + /* @__PURE__ */ jsx70(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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(QaBox, { q: "Are you familiar with iGEM, by the way?", a: "Of course, I know it." }), + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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__ */ jsx70( + 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", + cardtext: "", + 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__ */ jsxs46("p", { children: [ + "The aim of our contact with GxP expert ", + /* @__PURE__ */ jsx70("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__ */ jsxs46("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__ */ jsx70("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__ */ jsx70("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__ */ jsxs46(Fragment28, { children: [ + /* @__PURE__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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__ */ jsx70(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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + quote: "Just hand me over the strain and the vector, I will try to take care of the rest.", + aimofcontact: [/* @__PURE__ */ jsxs46("p", { children: [ + "After our interview with ", + /* @__PURE__ */ jsx70(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__ */ jsx70("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__ */ jsx70("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", + cardtext: "", + 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__ */ jsx70("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__ */ jsx70("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__ */ jsx70("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" + }, + { + vorname: "Grand Jambooree in Paris", + nachnname: "", + pictureurl: pics["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Brainstorming and selection of ideas and concepts", + interviewtabid: "jamboree", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + months: "october" + }, + { + vorname: "Carry It Forward", + nachnname: "", + pictureurl: pics["placeholder"], + job: "Team iGEM", + affiliation: "Bielfeld CeBiTec 2024", + tag: "Milestone", + heading: "Brainstorming and selection of ideas and concepts", + interviewtabid: "forward", + cardtext: "", + quote: "", + aimofcontact: "", + insights: "", + implementation: "", + type: "meta", + summary: "", + months: "october" + } +]; + +// src/components/HorizontalTimeline.tsx +import { jsx as jsx71, jsxs as jsxs47 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/HP-timeline.tsx +import { jsx as jsx72, jsxs as jsxs48 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Conclisuin.tsx +import { Fragment as Fragment29, jsx as jsx73, jsxs as jsxs49 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Feedback.tsx +import { Fragment as Fragment30, jsx as jsx74, jsxs as jsxs50 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP svgs/hp3.tsx +import { jsx as jsx75, jsxs as jsxs51 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP svgs/mendelows.tsx +import { jsx as jsx76, jsxs as jsxs52 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP svgs/stakeholder-management.tsx +import { jsx as jsx77, jsxs as jsxs53 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP svgs/swots.tsx +import { jsx as jsx78, jsxs as jsxs54 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP svgs/understanding.tsx +import { jsx as jsx79, jsxs as jsxs55 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/IHP.tsx +import { jsx as jsx80, jsxs as jsxs56 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/Collaborations.tsx +import { jsx as jsx81, jsxs as jsxs57 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/education-souces.tsx +import { jsx as jsx82 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/Education.tsx +import { jsx as jsx83, jsxs as jsxs58 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/Entrepreneurship.tsx +import { jsx as jsx84, jsxs as jsxs59 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/Outreach.tsx +import { jsx as jsx85, jsxs as jsxs60 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/Partnerships.tsx +import { jsx as jsx86, jsxs as jsxs61 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/FurtherEngagement.tsx +import { jsx as jsx87, jsxs as jsxs62 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/Further Engagement/SupMaterial.tsx +import { jsx as jsx88, jsxs as jsxs63 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/HP-abstract.tsx +import { jsx as jsx89, jsxs as jsxs64 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/Human Practices/human-practices.tsx +import { jsx as jsx90, jsxs as jsxs65 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/hpS.tsx +import { jsx as jsx91 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/impressum.tsx +import { Fragment as Fragment31, jsx as jsx92, jsxs as jsxs66 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/partners.tsx +import { Fragment as Fragment32, jsx as jsx93, jsxs as jsxs67 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/supplementary-material.tsx +import { Fragment as Fragment33, jsx as jsx94, jsxs as jsxs68 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/interviews.tsx +import { useEffect as useEffect9 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { useLocation as useLocation3 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js"; +import { Fragment as Fragment34, jsx as jsx95, jsxs as jsxs69 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/HeaderBox.tsx +import { Fragment as Fragment35, jsx as jsx96, jsxs as jsxs70 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/attribution-h.tsx +import { jsx as jsx97 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/cont-h.tsx +import { jsx as jsx98 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/desc-h.tsx +import { jsx as jsx99 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/home-h.tsx +import { Fragment as Fragment36, jsx as jsx100 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/exp-h.tsx +import { jsx as jsx101 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/hp-h.tsx +import { jsx as jsx102 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/imp-h.tsx +import { jsx as jsx103 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/note-h.tsx +import { jsx as jsx104 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/res-h.tsx +import { jsx as jsx105 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/safe-h.tsx +import { jsx as jsx106 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/team-h.tsx +import { jsx as jsx107 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/spons-h.tsx +import { jsx as jsx108 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/eng-h.tsx +import { jsx as jsx109 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/sup-h.tsx +import { jsx as jsx110 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Table.tsx +import { jsx as jsx111, jsxs as jsxs71 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/parts.tsx +import { jsx as jsx112, jsxs as jsxs72 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/part-h.tsx +import { jsx as jsx113 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Calendar/cal-content.tsx +import { Fragment as Fragment37, jsx as jsx114, jsxs as jsxs73 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/components/Calendar/Calendar.tsx +import { jsx as jsx115, jsxs as jsxs74 } from "file:///home/lili/Documents/iGem/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__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", { children: "1" }), + /* @__PURE__ */ jsx115("li", { children: "2" }), + /* @__PURE__ */ jsx115("li", { children: "3" }), + /* @__PURE__ */ jsx115("li", { children: "4" }), + /* @__PURE__ */ jsx115("li", { children: "5" }), + /* @__PURE__ */ jsx115("li", { children: "6" }), + /* @__PURE__ */ jsx115("li", { children: "7" }), + /* @__PURE__ */ jsx115("li", { children: "8" }), + /* @__PURE__ */ jsx115("li", { children: "9" }), + /* @__PURE__ */ jsx115("li", { children: "10" }), + /* @__PURE__ */ jsx115("li", { children: "11" }), + /* @__PURE__ */ jsx115("li", { children: "12" }), + /* @__PURE__ */ jsx115("li", { children: "13" }), + /* @__PURE__ */ jsx115("li", { children: "14" }), + /* @__PURE__ */ jsx115("li", { children: "15" }), + /* @__PURE__ */ jsx115("li", { children: "16" }), + /* @__PURE__ */ jsx115("li", { children: "17" }), + /* @__PURE__ */ jsx115("li", { children: "18" }), + /* @__PURE__ */ jsx115("li", { children: "19" }), + /* @__PURE__ */ jsx115("li", { children: "20" }), + /* @__PURE__ */ jsx115("li", { children: "21" }), + /* @__PURE__ */ jsx115("li", { children: "22" }), + /* @__PURE__ */ jsx115("li", { children: "23" }), + /* @__PURE__ */ jsx115("li", { children: "24" }), + /* @__PURE__ */ jsx115("li", { children: "25" }), + /* @__PURE__ */ jsx115("li", { children: "26" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("february27"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "27" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "28" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("february29"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "29" }) }) }) +] }); +var March = /* @__PURE__ */ jsxs74("ul", { id: "March-dates", className: "days hideable", style: { display: "none" }, children: [ + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", { children: "1" }), + /* @__PURE__ */ jsx115("li", { children: "2" }), + /* @__PURE__ */ jsx115("li", { children: "3" }), + /* @__PURE__ */ jsx115("li", { children: "4" }), + /* @__PURE__ */ jsx115("li", { children: "5" }), + /* @__PURE__ */ jsx115("li", { children: "6" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march7"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "7" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "8" }), + /* @__PURE__ */ jsx115("li", { children: "9" }), + /* @__PURE__ */ jsx115("li", { children: "10" }), + /* @__PURE__ */ jsx115("li", { children: "11" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march12"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "12" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "13" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march14"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "14" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "15" }), + /* @__PURE__ */ jsx115("li", { children: "16" }), + /* @__PURE__ */ jsx115("li", { children: "17" }), + /* @__PURE__ */ jsx115("li", { children: "18" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march19"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "19" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "20" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march21"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "21" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "22" }), + /* @__PURE__ */ jsx115("li", { children: "23" }), + /* @__PURE__ */ jsx115("li", { children: "24" }), + /* @__PURE__ */ jsx115("li", { children: "25" }), + /* @__PURE__ */ jsx115("li", { children: "26" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march27"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "27" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "28" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("march29"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "29" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "30" }), + /* @__PURE__ */ jsx115("li", { children: "31" }) +] }); +var April = /* @__PURE__ */ jsxs74("ul", { id: "April-dates", className: "days hideable", style: { display: "none" }, children: [ + /* @__PURE__ */ jsx115("li", { children: "1" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april2"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "2" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "3" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april4"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "4" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "5" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april6"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "6" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "7" }), + /* @__PURE__ */ jsx115("li", { children: "8" }), + /* @__PURE__ */ jsx115("li", { children: "9" }), + /* @__PURE__ */ jsx115("li", { children: "10" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april11"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "11" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "12" }), + /* @__PURE__ */ jsx115("li", { children: "13" }), + /* @__PURE__ */ jsx115("li", { children: "14" }), + /* @__PURE__ */ jsx115("li", { children: "15" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april16"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "16" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "17" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april18"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "18" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "19" }), + /* @__PURE__ */ jsx115("li", { children: "20" }), + /* @__PURE__ */ jsx115("li", { children: "21" }), + /* @__PURE__ */ jsx115("li", { children: "22" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april23"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "23" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "24" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april25"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "25" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "26" }), + /* @__PURE__ */ jsx115("li", { children: "27" }), + /* @__PURE__ */ jsx115("li", { children: "28" }), + /* @__PURE__ */ jsx115("li", { children: "29" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("april30"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "30" }) }) }) +] }); +var May = /* @__PURE__ */ jsxs74("ul", { id: "May-dates", className: "days hideable", style: { display: "none" }, children: [ + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", {}), + /* @__PURE__ */ jsx115("li", { children: "1" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("may2"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "2" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "3" }), + /* @__PURE__ */ jsx115("li", { children: "4" }), + /* @__PURE__ */ jsx115("li", { children: "5" }), + /* @__PURE__ */ jsx115("li", { children: "6" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("may7"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "7" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "8" }), + /* @__PURE__ */ jsx115("li", { children: "9" }), + /* @__PURE__ */ jsx115("li", { children: "10" }), + /* @__PURE__ */ jsx115("li", { children: "11" }), + /* @__PURE__ */ jsx115("li", { children: "12" }), + /* @__PURE__ */ jsx115("li", { children: "13" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("may14"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "14" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "15" }), + /* @__PURE__ */ jsx115("li", { children: "16" }), + /* @__PURE__ */ jsx115("li", { children: "17" }), + /* @__PURE__ */ jsx115("li", { children: "18" }), + /* @__PURE__ */ jsx115("li", { children: "19" }), + /* @__PURE__ */ jsx115("li", { children: "20" }), + /* @__PURE__ */ jsx115("li", { children: "21" }), + /* @__PURE__ */ jsx115("li", { children: /* @__PURE__ */ jsx115("a", { onClick: showEntry("may22"), children: /* @__PURE__ */ jsx115("span", { className: "active", children: "22" }) }) }), + /* @__PURE__ */ jsx115("li", { children: "23" }), + /* @__PURE__ */ jsx115("li", { children: "24" }), + /* @__PURE__ */ jsx115("li", { children: "25" }), + /* @__PURE__ */ jsx115("li", { children: "26" }), + /* @__PURE__ */ jsx115("li", { children: "27" }), + /* @__PURE__ */ jsx115("li", { children: "28" }), + /* @__PURE__ */ jsx115("li", { children: "29" }), + /* @__PURE__ */ jsx115("li", { children: "30" }), + /* @__PURE__ */ jsx115("li", { children: "31" }) +] }); + +// src/contents/project-documentation.tsx +import { jsx as jsx116 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/prodesc-h.tsx +import { jsx as jsx117 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/judging.tsx +import { Fragment as Fragment38, jsx as jsx118, jsxs as jsxs75 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/judge-h.tsx +import { jsx as jsx119 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/example.tsx +import { Bar as Bar2, Doughnut, PolarArea } from "file:///home/lili/Documents/iGem/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:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/chart.js/dist/chart.js"; +import { Fragment as Fragment39, jsx as jsx120, jsxs as jsxs76 } from "file:///home/lili/Documents/iGem/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:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { jsx as jsx121, jsxs as jsxs77 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/intS.tsx +import { useEffect as useEffect11 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/index.js"; +import { jsx as jsx122, jsxs as jsxs78 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/safeS.tsx +import { jsx as jsx123 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/none.tsx +import { jsx as jsx124 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/igem-bielefeld.tsx +import { Fragment as Fragment40, jsx as jsx125, jsxs as jsxs79 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/ibie-h.tsx +import { jsx as jsx126 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sources/methods-sources.tsx +import { jsx as jsx127 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/contents/methods.tsx +import { Fragment as Fragment41, jsx as jsx128, jsxs as jsxs80 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/headers/meth-h.tsx +import { jsx as jsx129 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/conS.tsx +import { jsx as jsx130 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/igbS.tsx +import { jsx as jsx131 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/jugS.tsx +import { jsx as jsx132 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/methS.tsx +import { jsx as jsx133 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/prtS.tsx +import { jsx as jsx134 } from "file:///home/lili/Documents/iGem/bielefeld-cebitec/node_modules/react/jsx-runtime.js"; + +// src/sidebars/resS.tsx +import { jsx as jsx135 } from "file:///home/lili/Documents/iGem/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:///home/lili/Documents/iGem/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,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiLCAic3JjL2NvbXBvbmVudHMvRmFkZUluLnRzeCIsICJzcmMvY29tcG9uZW50cy9CcmVhdGhlLnRzeCIsICJzcmMvY29tcG9uZW50cy9Qcm9ibGVtcy50c3giLCAic3JjL3V0aWxzL1RhYk5hdmlnYXRpb24udHN4IiwgInNyYy91dGlscy9Mb2FkaW5nQ29udGV4dC50c3giLCAic3JjL2NvbXBvbmVudHMvSGVhZGluZ3MudHN4IiwgInNyYy9jb21wb25lbnRzL3ByZWN5c2UudHN4IiwgInNyYy9jb250ZW50cy9Ib21lLnRzeCIsICJzcmMvY29tcG9uZW50cy9CdXR0b25zLnRzeCIsICJzcmMvdXRpbHMvb3BlblRoZW0udHMiLCAic3JjL3V0aWxzL3VzZU5hdmlnYXRpb24udHMiLCAic3JjL2NvbXBvbmVudHMvc2VjdGlvbnMudHN4IiwgInNyYy9jb250ZW50cy90ZWFtLnRzeCIsICJzcmMvY29udGVudHMvYXR0cmlidXRpb25zLnRzeCIsICJzcmMvY29tcG9uZW50cy9RdW90ZXMudHN4IiwgInNyYy9jb21wb25lbnRzL1BkZnMudHN4IiwgInNyYy9jb21wb25lbnRzL1ZlcnRpY2FsVGltZWxpbmUudHN4IiwgInNyYy9jb21wb25lbnRzL1NsaWRlci50c3giLCAic3JjL3V0aWxzL2dvdG8udHMiLCAic3JjL2NvbXBvbmVudHMvU2Nyb2xsTGluay50c3giLCAic3JjL2NvbXBvbmVudHMvQkZILVRpbWVsaW5lLnRzeCIsICJzcmMvY29tcG9uZW50cy9QaG90by1ncmlkLnRzeCIsICJzcmMvY29tcG9uZW50cy9wb3N0ZXIudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vQkZIL2JmaC1hYm91dC50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9CRkgvcG9zdGVyZ2FsbGVyeS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9CRkgvYmZoLnRzeCIsICJzcmMvY29udGVudHMvQ29udHJpYnV0aW9uL2NvbGxhYnMudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vcGF0aWVudC1jb250cmlidXRpb24udHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vc2FmZXR5LWNvbnRyaWJ1dGlvbi50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktdGFicy50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktc3RhcnQudHN4IiwgInNyYy9jb21wb25lbnRzL0NvbGxhcHNpYmxlLnRzeCIsICJzcmMvY29udGVudHMvQ29udHJpYnV0aW9uL1dpa2kvd2lraS1zb3VyY2VzLnRzeCIsICJzcmMvY29tcG9uZW50cy9GaWx0ZXIudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vV2lraS9GaWx0ZXJhYmxlcy50c3giLCAic3JjL2NvbXBvbmVudHMvQ29kZS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3Ryb3VibGUtZGF0YS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3Ryb3VibGVzaG9vdGluZy50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktb3ZlcnZpZXcudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vV2lraS93aWtpLnRzeCIsICJzcmMvY29udGVudHMvQ29udHJpYnV0aW9uL2NvbnRyaWJ1dGlvbi50c3giLCAic3JjL2NvbXBvbmVudHMvQm94ZXMudHN4IiwgInNyYy9jb21wb25lbnRzL1RhYnMudHN4IiwgInNyYy9jb21wb25lbnRzL0dyYXBoLnRzeCIsICJzcmMvZGF0YS9zeW1wdG9tLWRhdGEudHN4IiwgInNyYy9kYXRhL2RydWctZGF0YS50c3giLCAic3JjL2NvbXBvbmVudHMvQ29tcGxleC1zdmcudHN4IiwgInNyYy9jb21wb25lbnRzL21ha2VTb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9kZXNjcmlwdGlvbi1zb3VyY2VzLnRzeCIsICJzcmMvY29udGVudHMvZGVzY3JpcHRpb24udHN4IiwgInNyYy91dGlscy9jcmVhdGVTaWRlYmFyLnRzeCIsICJzcmMvc2lkZWJhcnMvZGVzY1MudHN4IiwgInNyYy9jb21wb25lbnRzL0xpbmsudHN4IiwgInNyYy9zb3VyY2VzL2VuZy10cmYtc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvZW5nLXJlcG9ydGVyLXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2VuZy1wZS1zb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9lbmctcGVnLXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2VuZy1uaWNrYXNlcy1zb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9lbmctZGVsaXZlcnktc291cmNlcy50c3giLCAic3JjL2NvbnRlbnRzL2VuZ2luZWVyaW5nLnRzeCIsICJzcmMvY29udGVudHMvZXhwZXJpbWVudHMudHN4IiwgInNyYy9jb250ZW50cy9ub3RlYm9vay50c3giLCAic3JjL2NvbXBvbmVudHMvTG9yZW1pcHN1bS50c3giLCAic3JjL2NvbXBvbmVudHMvRmlndXJlcy50c3giLCAic3JjL2NvbnRlbnRzL3Jlc3VsdHMudHN4IiwgInNyYy9jb250ZW50cy9zYWZldHkudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvT3ZlcndpZXYudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvSW50cm9kdWN0aW9uLnRzeCIsICJzcmMvc291cmNlcy9qb3NodWEtaW52LXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL21hdHRpai1pbnYtc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvbGl1LWludi1zb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9ybmhhbGUtc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvd2ltc2NoZXllci1zb3VyY2VzLnRzeCIsICJzcmMvZGF0YS9ocHRpbWVsaW5lZGF0YS50c3giLCAic3JjL2NvbXBvbmVudHMvSG9yaXpvbnRhbFRpbWVsaW5lLnRzeCIsICJzcmMvY29tcG9uZW50cy9IUC10aW1lbGluZS50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9Db25jbGlzdWluLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0ZlZWRiYWNrLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0hQIHN2Z3MvaHAzLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0hQIHN2Z3MvbWVuZGVsb3dzLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0hQIHN2Z3Mvc3Rha2Vob2xkZXItbWFuYWdlbWVudC50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUCBzdmdzL3N3b3RzLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0hQIHN2Z3MvdW5kZXJzdGFuZGluZy50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9JSFAudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvRnVydGhlciBFbmdhZ2VtZW50L0NvbGxhYm9yYXRpb25zLnRzeCIsICJzcmMvc291cmNlcy9lZHVjYXRpb24tc291Y2VzLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9FZHVjYXRpb24udHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvRnVydGhlciBFbmdhZ2VtZW50L0VudHJlcHJlbmV1cnNoaXAudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvRnVydGhlciBFbmdhZ2VtZW50L091dHJlYWNoLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9QYXJ0bmVyc2hpcHMudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvRnVydGhlciBFbmdhZ2VtZW50L0Z1cnRoZXJFbmdhZ2VtZW50LnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9TdXBNYXRlcmlhbC50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUC1hYnN0cmFjdC50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9odW1hbi1wcmFjdGljZXMudHN4IiwgInNyYy9zaWRlYmFycy9ocFMudHN4IiwgInNyYy9jb250ZW50cy9pbXByZXNzdW0udHN4IiwgInNyYy9jb250ZW50cy9wYXJ0bmVycy50c3giLCAic3JjL2NvbnRlbnRzL3N1cHBsZW1lbnRhcnktbWF0ZXJpYWwudHN4IiwgInNyYy9jb250ZW50cy9pbnRlcnZpZXdzLnRzeCIsICJzcmMvY29tcG9uZW50cy9IZWFkZXJCb3gudHN4IiwgInNyYy9oZWFkZXJzL2F0dHJpYnV0aW9uLWgudHN4IiwgInNyYy9oZWFkZXJzL2NvbnQtaC50c3giLCAic3JjL2hlYWRlcnMvZGVzYy1oLnRzeCIsICJzcmMvaGVhZGVycy9ob21lLWgudHN4IiwgInNyYy9oZWFkZXJzL2V4cC1oLnRzeCIsICJzcmMvaGVhZGVycy9ocC1oLnRzeCIsICJzcmMvaGVhZGVycy9pbXAtaC50c3giLCAic3JjL2hlYWRlcnMvbm90ZS1oLnRzeCIsICJzcmMvaGVhZGVycy9yZXMtaC50c3giLCAic3JjL2hlYWRlcnMvc2FmZS1oLnRzeCIsICJzcmMvaGVhZGVycy90ZWFtLWgudHN4IiwgInNyYy9oZWFkZXJzL3Nwb25zLWgudHN4IiwgInNyYy9oZWFkZXJzL2VuZy1oLnRzeCIsICJzcmMvaGVhZGVycy9zdXAtaC50c3giLCAic3JjL2NvbXBvbmVudHMvVGFibGUudHN4IiwgInNyYy9jb250ZW50cy9wYXJ0cy50c3giLCAic3JjL2hlYWRlcnMvcGFydC1oLnRzeCIsICJzcmMvY29tcG9uZW50cy9DYWxlbmRhci9jYWwtY29udGVudC50c3giLCAic3JjL2NvbXBvbmVudHMvQ2FsZW5kYXIvQ2FsZW5kYXIudHN4IiwgInNyYy9jb250ZW50cy9wcm9qZWN0LWRvY3VtZW50YXRpb24udHN4IiwgInNyYy9oZWFkZXJzL3Byb2Rlc2MtaC50c3giLCAic3JjL2NvbnRlbnRzL2p1ZGdpbmcudHN4IiwgInNyYy9oZWFkZXJzL2p1ZGdlLWgudHN4IiwgInNyYy9jb250ZW50cy9leGFtcGxlLnRzeCIsICJzcmMvc2lkZWJhcnMvZW5nUy50c3giLCAic3JjL3NpZGViYXJzL2ludFMudHN4IiwgInNyYy9zaWRlYmFycy9zYWZlUy50c3giLCAic3JjL3NpZGViYXJzL25vbmUudHN4IiwgInNyYy9jb250ZW50cy9pZ2VtLWJpZWxlZmVsZC50c3giLCAic3JjL2hlYWRlcnMvaWJpZS1oLnRzeCIsICJzcmMvc291cmNlcy9tZXRob2RzLXNvdXJjZXMudHN4IiwgInNyYy9jb250ZW50cy9tZXRob2RzLnRzeCIsICJzcmMvaGVhZGVycy9tZXRoLWgudHN4IiwgInNyYy9zaWRlYmFycy9jb25TLnRzeCIsICJzcmMvc2lkZWJhcnMvaWdiUy50c3giLCAic3JjL3NpZGViYXJzL2p1Z1MudHN4IiwgInNyYy9zaWRlYmFycy9tZXRoUy50c3giLCAic3JjL3NpZGViYXJzL3BydFMudHN4IiwgInNyYy9zaWRlYmFycy9yZXNTLnRzeCIsICJzcmMvdXRpbHMvc3RyaW5nVG9TbHVnLnRzIiwgInNyYy91dGlscy91c2VTY3JpcHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3ZpdGUuY29uZmlnLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9ob21lL2xpbGkvRG9jdW1lbnRzL2lHZW0vYmllbGVmZWxkLWNlYml0ZWMvdml0ZS5jb25maWcuanNcIjtpbXBvcnQgeyBkZWZpbmVDb25maWcsIGxvYWRFbnYgfSBmcm9tIFwidml0ZVwiO1xuaW1wb3J0IHJlYWN0IGZyb20gXCJAdml0ZWpzL3BsdWdpbi1yZWFjdFwiO1xuaW1wb3J0IHsgc3RyaW5nVG9TbHVnIH0gZnJvbSBcIi4vc3JjL3V0aWxzXCI7XG5cbi8vIGh0dHBzOi8vdml0ZWpzLmRldi9jb25maWcvXG5leHBvcnQgZGVmYXVsdCAoKSA9PiB7XG4gIGNvbnN0IGVudiA9IGxvYWRFbnYoXCJkZXZcIiwgcHJvY2Vzcy5jd2QoKSk7XG4gICAgLy8gU2ljaGVyc3RlbGxlbiwgZGFzcyBkaWUgVW1nZWJ1bmdzdmFyaWFibGUgdm9yaGFuZGVuIGlzdFxuICBpZiAoIWVudi5WSVRFX1RFQU1fTkFNRSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIlZJVEVfVEVBTV9OQU1FIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkXCIpO1xuICB9XG4gIC8vIERlYnVnZ2luZy1Mb2csIHVtIGRlbiBXZXJ0IGRlciBVbWdlYnVuZ3N2YXJpYWJsZSB6dSBcdTAwRkNiZXJwclx1MDBGQ2ZlblxuICBjb25zb2xlLmxvZyhgVklURV9URUFNX05BTUU6ICR7ZW52LlZJVEVfVEVBTV9OQU1FfWApO1xuXG5cbiAgY29uc3QgYmFzZVNsdWcgPSBzdHJpbmdUb1NsdWcoZW52LlZJVEVfVEVBTV9OQU1FKTtcblxuICBjb25zb2xlLmxvZyhcIlZJVEVfVEVBTV9OQU1FOlwiLCBlbnYuVklURV9URUFNX05BTUUpOyAvLyBEZWJ1Z2dpbmctQXVzZ2FiZVxuICBjb25zb2xlLmxvZyhcIkJhc2UgU2x1ZzpcIiwgYmFzZVNsdWcpOyAvLyBEZWJ1Z2dpbmctQXVzZ2FiZVxuICBcbiAgcmV0dXJuIGRlZmluZUNvbmZpZyh7XG4gICAgYmFzZTogYC8ke3N0cmluZ1RvU2x1ZyhlbnYuVklURV9URUFNX05BTUUpfS9gLFxuICAgIHBsdWdpbnM6IFtyZWFjdCgpXSxcbiAgICBidWlsZDoge1xuICAgICAgb3V0RGlyOiBcImRpc3RcIixcbiAgICB9LFxuICAgIHB1YmxpY0RpcjogJ3B1YnB1YicsXG4gIH0pO1xuICBcbn07XG4iLCAiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gRmFkZUluKHtmaWxlcGF0aCwgYmd9OntmaWxlcGF0aDogc3RyaW5nLCBiZzogc3RyaW5nfSl7XHJcbiAgICBjb25zdCBbaXNWaXNpYmxlLCBzZXRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZiA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWYuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPD5cclxuICAgICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0nY29sJ1xyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCd9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWZ9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzIwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZSA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz17Ymd9PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzIwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZSA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz17ZmlsZXBhdGh9PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgey8qIFNwYWNpbmcgQmxvY2sgKi99XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnOTV2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgPC8+XHJcbiAgICApO1xyXG59XHJcblxyXG4iLCAiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQnJlYXRoZSgpe1xyXG4gICAgY29uc3QgW2lzVmlzaWJsZSwgc2V0VmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWYgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZShlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmLmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlMiwgc2V0VmlzaWJsZTJdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmMiA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlMihlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmMi5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTMsIHNldFZpc2libGUzXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjMgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTMoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjMuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG4gICAgXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlNCwgc2V0VmlzaWJsZTRdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmNCA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlNChlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmNC5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlNSwgc2V0VmlzaWJsZTVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmNSA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlNShlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmNS5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlNiwgc2V0VmlzaWJsZTZdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmNiA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlNihlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmNi5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTcsIHNldFZpc2libGU3XSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjcgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTcoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjcuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG4gICAgXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlOCwgc2V0VmlzaWJsZThdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmOCA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlOChlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmOC5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAgICB7LyogcHVycGxlICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyAnaGVpZ2h0JzogJzcwMHZoJ319XHJcbiAgICAgICAgICAgICAgICByZWY9e2RvbVJlZn0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd6SW5kZXgnOiAnMScsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGUgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2JyZWF0aC90ZXh0bGVzcy9icmVhdGgtb25seS0xLndlYnBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJyBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJyB9fT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnfX0gcmVmPXtkb21SZWYyfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PlRha2UgYSBtb21lbnQgdG88L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5kZWVwbHkgYnJlYXRoZSBpbi4uLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdzY2FsZSAyLjBzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzY2FsZSc6IGAke2lzVmlzaWJsZTIgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlMiA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvY2lyY2xlcy9wdXJwbGVjaXJjbGUud2VicFwiPjwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnOTV2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJ319IHJlZj17ZG9tUmVmM30+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5hbmQgZGVlcGx5LjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmJyZWF0aGUgb3V0Li4uPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ3NjYWxlIDIuMHMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjYWxlJzogYCR7aXNWaXNpYmxlMyA/ICcwJyA6ICcxJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUzID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2JyZWF0aC9jaXJjbGVzL3B1cnBsZWNpcmNsZS53ZWJwXCI+PC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgey8qIFNwYWNpbmcgQmxvY2sgKi99XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PllvdSBmZWVsIDxzdHJvbmc+cmV2aXRhbGl6ZWQ8L3N0cm9uZz48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PllvdXIgYm9keSBhbmQgbWluZDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+YmVjb21lIDxzdHJvbmc+Z3JvdW5kZWQ8L3N0cm9uZz4uPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnIH19PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5Ob3cgZGVlcGx5IGJyZWF0aGUgaW48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmFuZCBob2xkIHlvdXIgYnJlYXRoLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnfX0gcmVmPXtkb21SZWY0fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdzY2FsZSAyLjBzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzY2FsZSc6IGAke2lzVmlzaWJsZTQgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNCA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvY2lyY2xlcy9wdXJwbGVjaXJjbGUud2VicFwiPjwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgey8qIGJsYWNrICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgJ2hlaWdodCc6ICczMDB2aCd9fSAgcmVmPXtkb21SZWY1fT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3pJbmRleCc6ICcxJywgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZTUgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvdGV4dGxlc3MvYnJlYXRoLW9ubHktMi53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJ319ICByZWY9e2RvbVJlZjZ9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNiA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvY2lyY2xlcy9kYXJrZXJwdXJwbGVjaXJjbGUud2VicFwiPjwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5CcmVhdGhpbmcgaXMgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+ZXNzZW50aWFsLjwvcD5cclxuICAgICAgICAgICAgICAgICAgey8qICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PkJyZWF0aGluZyBpcyBlc3NlbnRpYWwsIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+YnV0IG1hbnkgcGVvcGxlIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+c3RydWdnbGUgd2l0aCBpdC48L3A+ICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCd9fSAgcmVmPXtkb21SZWY3fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NhbGUnOiBgJHtpc1Zpc2libGU3ID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTcgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYnJlYXRoL2NpcmNsZXMvZnVsbGJsYWNrY2lyY2xlLndlYnBcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJyBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJyB9fT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+VGhhdCBpcyB3aHkgd2UgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5wZXJzdWUgZ2VuZSB0aGVyYXB5IGZvciA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PjxiPmN5c3RpYyBmaWJyb3Npcy48L2I+PC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgey8qIGdyZXkgKi99XHJcbiAgICAgICAgICAgIDxkaXYgXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyAnaGVpZ2h0JzogJzIwMHZoJ319ICByZWY9e2RvbVJlZjh9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnekluZGV4JzogJzEnLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMzB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnb3BhY2l0eSAwLjZzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlOCA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGU4ID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2JyZWF0aC90ZXh0bGVzcy9icmVhdGgtb25seS0zLndlYnBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ltZz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PlRvIGhlbHAgcmVzdG9yZSB0aGUgYWJpbGl0eSA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+dG8gYnJlYXRoZSBmcmVlbHksIG9mZmVyaW5nPC9wPlxyXG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PjxiPmhvcGU8L2I+IHRvIHRob3NlIHdob3NlIGx1bmdzPC9wPlxyXG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmNhbiBub3QgcHJvcGVybHkgZnVuY3Rpb248L3A+IHsvKiAgb24gdGhlaXIgb3duLiAqL31cclxuICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5vbiB0aGVpciBvd24uPC9wPiAgICAgICBcclxuICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvPlxyXG4gICAgKTtcclxufVxyXG4iLCAiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUHJvYmxlbXMoKXtcclxuICAgIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZi5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTIsIHNldFZpc2libGUyXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjIgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTIoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjIuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIGNvbnN0IFtpc1Zpc2libGUzLCBzZXRWaXNpYmxlM10gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWYzID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUzKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWYzLmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuICAgIFxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTQsIHNldFZpc2libGU0XSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjQgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTQoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjQuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIFxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTUsIHNldFZpc2libGU1XSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjUgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTUoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjUuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIGNvbnN0IFRpdGxlMSA9IFwiQ3lzdGljIEZpYnJvc2lzXCI7XHJcbiAgICBjb25zdCBUaXRsZTIgPSBcIm1ha2VzIGxpZmUgYnJlYXRodGFraW5nXCI7XHJcbiAgICBjb25zdCBQcm9iMTEgPSBcIlRoaWNrIG11Y3VzIGJsb2NraW5nIGFpcndheSBhbmQgcHJldmVudHNcIlxyXG4gICAgY29uc3QgUHJvYjEyID0gXCJveHlnZW4gYWJzb3JwdGlvbiwgbGVhZGluZyB0byBicm9uY2hpYWxcIlxyXG4gICAgY29uc3QgUHJvYjEzID0gXCJvYnN0cnVjdGlvbnMsIG9yZ2FuIGZhaWx1ZSBhbiBkZWF0aFwiO1xyXG4gICAgY29uc3QgUHJvYjIxID0gXCJDaHJvbmljIGluZmxhbW1hdGlvbiBvY2N1cnMgcGVyaW9kaWNhbGx5XCI7XHJcbiAgICBjb25zdCBQcm9iMjIgPSBcImR1ZSB0byBhIGhpZ2ggdnVsbmVyYWJpbGl0eSBcIjtcclxuICAgIGNvbnN0IFByb2IyMyA9IFwidG8gYmFjdGVyaWFsIGFuZCB2aXJhbCBpbmZlY3Rpb25zXCI7XHJcbiAgICBjb25zdCBQcm9iMzEgPSBcIkhlaWdodGVuZWQgc2FmZXR5IGNvbnNpZGVyYXRpb25zIGFuZFwiO1xyXG4gICAgY29uc3QgUHJvYjMyID0gXCJlbW90aW9uYWwgc3RyZXNzIHByb21vdGUgZGVwcmVzc2lvblwiO1xyXG4gICAgY29uc3QgUHJvYjMzID0gXCJhbmQgcHN5Y2hvbG9naWNhbCBpc3N1ZXNcIjtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICAgIHsvKiBPbmUgKi99XHJcbiAgICAgICAgICAgIDxkaXYgXHJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J2NvbCdcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IFxyXG4gICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnMTAwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGUgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWB9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWZ9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzIwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9wcm9ibGVtcy9jeWZpYi0xLndlYnBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ltZz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIHsvKiBUd28gKi99XHJcbiAgICAgICAgICAgIDxkaXYgXHJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J2NvbCdcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IFxyXG4gICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnMTAwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGUyID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUyID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YH19XHJcbiAgICAgICAgICAgICAgICByZWY9e2RvbVJlZjJ9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzIwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9wcm9ibGVtcy9jeWZpYi0yLndlYnBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICcxN3ZoJywgJ3dpZHRoJzogJzgydncnLCAnekluZGV4JzogJzEnLCdsZWZ0JzogJzEwdncnLCdmb250U2l6ZSc6ICczdncnLCAnZm9udFdlaWdodCc6ICdib2xkJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1RpdGxlMX08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMjN2aCcsICd3aWR0aCc6ICc4MnZ3JywgJ3pJbmRleCc6ICcxJywnbGVmdCc6ICcxMHZ3JywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTJ9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICcyMHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjExICsgXCIgXCIgKyBQcm9iMTIgKyBcIiBcIiArIFByb2IxM308L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogVGhyZWUgKi99XHJcbiAgICAgICAgICAgIDxkaXYgXHJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J2NvbCdcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IFxyXG4gICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnMTAwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGUzID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUzID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YH19XHJcbiAgICAgICAgICAgICAgICByZWY9e2RvbVJlZjN9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzIwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9wcm9ibGVtcy9jeWZpYi0zLndlYnBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICcxN3ZoJywgJ3dpZHRoJzogJzgydncnLCAnekluZGV4JzogJzEnLCdsZWZ0JzogJzEwdncnLCdmb250U2l6ZSc6ICczdncnLCAnZm9udFdlaWdodCc6ICdib2xkJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1RpdGxlMX08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMjN2aCcsICd3aWR0aCc6ICc4MnZ3JywgJ3pJbmRleCc6ICcxJywnbGVmdCc6ICcxMHZ3JywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTJ9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICcyMHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjExICsgXCIgXCIgKyBQcm9iMTIgKyBcIiBcIiArIFByb2IxM308L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnNjV2aCcsICdsZWZ0JzogJzQwdncnLCAnekluZGV4JzogJzEnLCAnd2lkdGgnOiAnMzB2aCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntQcm9iMjEgKyBcIiBcIiArIFByb2IyMiArIFwiIFwiICsgUHJvYjIzfTwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIHsvKiBGb3VyICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBcclxuICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzEwMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlNCA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNCA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWB9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWY0fT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcyMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJvYmxlbXMvY3lmaWItNC53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMTd2aCcsICd3aWR0aCc6ICc4MnZ3JywnbGVmdCc6ICcxMHZ3JywgJ3pJbmRleCc6ICcxJywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTF9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzIzdmgnLCAnd2lkdGgnOiAnODJ2dycsJ2xlZnQnOiAnMTB2dycsICd6SW5kZXgnOiAnMScsJ2ZvbnRTaXplJzogJzN2dycsICdmb250V2VpZ2h0JzogJ2JvbGQnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57VGl0bGUyfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICc2NXZoJywgJ2xlZnQnOiAnMjB2dycsICd6SW5kZXgnOiAnMScsICd3aWR0aCc6ICczMHZoJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1Byb2IxMSArIFwiIFwiICsgUHJvYjEyICsgXCIgXCIgKyBQcm9iMTN9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICc0MHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjIxICsgXCIgXCIgKyBQcm9iMjIgKyBcIiBcIiArIFByb2IyM308L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnNjV2aCcsICdsZWZ0JzogJzYwdncnLCAnekluZGV4JzogJzEnLCAnd2lkdGgnOiAnMzB2aCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntQcm9iMzEgKyBcIiBcIiArIFByb2IzMiArIFwiIFwiICsgUHJvYjMzfTwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIHsvKiBGaXZlICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBcclxuICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzEwMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlNSA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWB9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWY1fT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcyMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJvYmxlbXMvY3lmaWItNS53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMTd2aCcsICd3aWR0aCc6ICc4MnZ3JywnbGVmdCc6ICcxMHZ3JywgJ3pJbmRleCc6ICcxJywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTF9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzIzdmgnLCAnd2lkdGgnOiAnODJ2dycsICdsZWZ0JzogJzEwdncnLCAnekluZGV4JzogJzEnLCdmb250U2l6ZSc6ICczdncnLCAnZm9udFdlaWdodCc6ICdib2xkJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1RpdGxlMn08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnNjV2aCcsICdsZWZ0JzogJzIwdncnLCAnekluZGV4JzogJzEnLCAnd2lkdGgnOiAnMzB2aCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntQcm9iMTEgKyBcIiBcIiArIFByb2IxMiArIFwiIFwiICsgUHJvYjEzfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICc2NXZoJywgJ2xlZnQnOiAnNDB2dycsICd6SW5kZXgnOiAnMScsICd3aWR0aCc6ICczMHZoJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1Byb2IyMSArIFwiIFwiICsgUHJvYjIyICsgXCIgXCIgKyBQcm9iMjN9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICc2MHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjMxICsgXCIgXCIgKyBQcm9iMzIgKyBcIiBcIiArIFByb2IzM308L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnODV2aCcsICdsZWZ0JzogJzM1dncnLCAnekluZGV4JzogJzEnfX0+PC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBpZD1cInNjaWVuY3lcIj48L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvPlxyXG4gICAgKTtcclxufSIsICJpbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlTmF2aWdhdGUsIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBvcGVuRnJvbU90aGVyUGFnZSB9IGZyb20gJy4vb3BlbkZyb21PdGhlcnBBZ2UnO1xuaW1wb3J0IHsgdXNlTG9hZGluZyB9IGZyb20gJy4vTG9hZGluZ0NvbnRleHQnO1xuXG4vLyBGdW5rdGlvbiwgdW0gZGVuIEhhdXB0dGFiIHp1IFx1MDBGNmZmbmVuXG5leHBvcnQgY29uc3Qgb3BlblRhYiA9ICh0YWJJZDogc3RyaW5nLCB0YWJDbGFzczogc3RyaW5nKSA9PiB7XG4gIGNvbnNvbGUubG9nKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWJJZCkgYXMgSFRNTEVsZW1lbnQpLmNsYXNzTGlzdFsxXSlcbiAgY29uc29sZS5sb2coYHRhYmNsYXNzIGlzICR7dGFiQ2xhc3N9YClcbiAgY29uc3QgdGFicyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUodGFiQ2xhc3MpO1xuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdGFicy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAodGFic1tpbmRleF0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgXG4gIH1cblxuICBjb25zdCBzZWxlY3RlZFRhYiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYklkKTtcbiAgaWYgKHNlbGVjdGVkVGFiKSB7XG4gICAgc2VsZWN0ZWRUYWIuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gIH1cbn07XG5cbi8vIEZ1bmt0aW9uLCB1bSB2ZXJzY2hhY2h0ZWx0ZSBUYWJzIHp1IFx1MDBGNmZmbmVuXG5leHBvcnQgY29uc3Qgb3Blbk5lc3RlZFRhYiA9IChwYXJlbnRUYWJJZDogc3RyaW5nLCBjaGlsZFRhYklkOiBzdHJpbmcsIHBhcmVudENsYXNzOiBzdHJpbmcsIGNoaWxkQ2xhc3M6IHN0cmluZykgPT4ge1xuICBvcGVuVGFiKHBhcmVudFRhYklkLCBwYXJlbnRDbGFzcyk7XG5cbiAgY29uc3QgbmVzdGVkVGFicyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYCMke3BhcmVudFRhYklkfSAke2NoaWxkQ2xhc3N9YCk7XG4gIG5lc3RlZFRhYnMuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgKHRhYiBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgfSk7XG5cbiAgY29uc3Qgc2VsZWN0ZWROZXN0ZWRUYWIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjaGlsZFRhYklkKTtcbiAgaWYgKHNlbGVjdGVkTmVzdGVkVGFiKSB7XG4gICAgc2VsZWN0ZWROZXN0ZWRUYWIuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gIH1cbn07XG5cbi8vIEZ1bmt0aW9uLCB1bSB6dSBlaW5lbSBiZXN0aW1tdGVuIEJlcmVpY2ggKHouQi4gQ29sbGFwc2UpIHp1IHNjcm9sbGVuXG5leHBvcnQgY29uc3QgaGFuZGxlU2Nyb2xsVG9Db2xsYXBzZSA9IChjb2xsYXBzZUlkOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgY29sbGFwc2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY29sbGFwc2VJZCk7XG4gIGlmIChjb2xsYXBzZUVsZW1lbnQpIHtcbiAgICBjb25zdCBlbGVtZW50VG9wID0gY29sbGFwc2VFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldDtcbiAgICBjb25zdCBvZmZzZXQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLyAyIC0gY29sbGFwc2VFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XG4gICAgY29uc3Qgc2Nyb2xsUG9zaXRpb24gPSBlbGVtZW50VG9wIC0gb2Zmc2V0O1xuXG4gICAgd2luZG93LnNjcm9sbFRvKHtcbiAgICAgIHRvcDogc2Nyb2xsUG9zaXRpb24sXG4gICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgfSk7XG4gIH1cbn07XG5cbi8vIEN1c3RvbSBIb29rIHp1ciB6ZW50cmFsZW4gVGFiLU5hdmlnYXRpb25cbmV4cG9ydCBjb25zdCB1c2VUYWJOYXZpZ2F0aW9uID0gKCkgPT4ge1xuICBjb25zdCB7IHNldElzTG9hZGluZyB9ID0gdXNlTG9hZGluZygpOyAvLyAyLiBMYWRlenVzdGFuZCBoaWVyIHZlcndlbmRlbiBcbiAgY29uc3QgbmF2aWdhdGUgPSB1c2VOYXZpZ2F0ZSgpO1xuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG4gIGNvbnN0IFthY3RpdmVUYWIsIHNldEFjdGl2ZVRhYl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2FjdGl2ZVN1YlRhYiwgc2V0QWN0aXZlU3ViVGFiXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICBcblxuICAvLyBUYWItV2VjaHNlbCB1bmQgVVJMLVVwZGF0ZVxuICBjb25zdCBoYW5kbGVUYWJDaGFuZ2UgPSAodGFiSWQ6IHN0cmluZywgc3ViVGFiSWQ/OiBzdHJpbmcpID0+IHtcbiAgICBzZXRBY3RpdmVUYWIodGFiSWQpO1xuICAgIHNldEFjdGl2ZVN1YlRhYihzdWJUYWJJZCB8fCBudWxsKTtcblxuICAgIC8vIFVSTCBlbnRzcHJlY2hlbmQgYWt0dWFsaXNpZXJlblxuICAgIGxldCBuZXdVcmwgPSBgJHtsb2NhdGlvbi5wYXRobmFtZX0/dGFiPSR7dGFiSWR9YDtcbiAgICBpZiAoc3ViVGFiSWQpIHtcbiAgICAgIG5ld1VybCArPSBgJnN1YlRhYj0ke3N1YlRhYklkfWA7XG4gICAgfVxuICAgIG5hdmlnYXRlKG5ld1VybCwgeyByZXBsYWNlOiB0cnVlIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc29sZS5sb2coXCJVc2UgRWZmZWN0XCIpXG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpO1xuICAgIGNvbnN0IHRhYklkID0gcGFyYW1zLmdldCgndGFiJyk7XG4gICAgY29uc3Qgc3ViVGFiSWQgPSBwYXJhbXMuZ2V0KCdzdWJUYWInKTtcbiAgICBjb25zdCBjb2xsYXBzZUlkID0gcGFyYW1zLmdldCgnY29sbGFwc2VJZCcpO1xuICAgIGNvbnN0IHNjcm9sbFRvSWQgPSBwYXJhbXMuZ2V0KCdzY3JvbGxUbycpOyBcbiAgICBjb25zdCBjaGFuZ2VUbyA9IHBhcmFtcy5nZXQoJ2NoYW5nZVRvJyk7XG4gICAgXG4gICAgLy8gXHUwMEQ2ZmZuZSBIYXVwdC0gdW5kIGdnZi4gdmVyc2NoYWNodGVsdGVuIFRhYlxuICAgIGlmICh0YWJJZCkge1xuICAgICAgbGV0IHRhYiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYklkKTtcbiAgICAgIGxldCB0YWJDbGFzcyA9IHRhYiEuY2xhc3NOYW1lOyBcbiAgICAgIGlmIChzdWJUYWJJZCkge1xuICAgICAgICBsZXQgc3ViVGFiID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc3ViVGFiSWQpO1xuICAgICAgICBsZXQgcGFyZW50Q2xhc3MgPSAoc3ViVGFiIGFzIEhUTUxFbGVtZW50KS5jbGFzc0xpc3RbMV07IFxuICAgICAgICBvcGVuTmVzdGVkVGFiKHRhYklkLCBzdWJUYWJJZCwgcGFyZW50Q2xhc3MsIHRhYkNsYXNzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9wZW5UYWIodGFiSWQsIHRhYkNsYXNzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTY3JvbGxlbiB6dSBlaW5lbSBiZXN0aW1tdGVuIENvbGxhcHNpYmxlLUVsZW1lbnRcbiAgICBpZiAoY29sbGFwc2VJZCkge1xuICAgICAgaGFuZGxlU2Nyb2xsVG9Db2xsYXBzZShjb2xsYXBzZUlkKTtcbiAgICB9XG5cbiAgICAvLyBUYWIgdm9uIGVpbmVyIGFuZGVyZW4gU2VpdGUgXHUwMEY2ZmZuZW4gKGZhbGxzIGRlZmluaWVydClcbiAgICBpZiAodGFiSWQpIHtcbiAgICAgIG9wZW5Gcm9tT3RoZXJQYWdlKHRhYklkKSh7IGN1cnJlbnRUYXJnZXQ6IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYklkKSEgfSk7XG4gICAgfVxuXG4gICAgaWYgKHNjcm9sbFRvSWQpIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzY3JvbGxUb0lkKTtcbiAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG4gICAgICAgICAgY29uc3QgdGFyZ2V0UG9zaXRpb24gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldDtcbiAgICAgICAgICBjb25zdCBzY3JvbGxUb1Bvc2l0aW9uID0gdGFyZ2V0UG9zaXRpb24gLSB2aWV3cG9ydEhlaWdodCAvIDUgKyBlbGVtZW50LmNsaWVudEhlaWdodCAvIDI7XG4gICAgICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxUb1Bvc2l0aW9uLCBiZWhhdmlvcjogXCJzbW9vdGhcIiB9KTtcbiAgICAgIH1cbiAgfVxuICBpZiAoY2hhbmdlVG8pIHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY2hhbmdlVG8pO1xuICAgIHNldElzTG9hZGluZyh0cnVlKTtcbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgICAgY29uc3QgdGFyZ2V0UG9zaXRpb24gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsVG9Qb3NpdGlvbiA9IHRhcmdldFBvc2l0aW9uIC0gdmlld3BvcnRIZWlnaHQgLyAyICsgZWxlbWVudC5jbGllbnRIZWlnaHQgLyAyO1xuICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHNjcm9sbFRvUG9zaXRpb24sIGJlaGF2aW9yOiBcInNtb290aFwiIH0pO1xuICAgIH1cbn1cblxuICAgIHNldEFjdGl2ZVRhYih0YWJJZCk7XG4gICAgc2V0QWN0aXZlU3ViVGFiKHN1YlRhYklkIHx8IG51bGwpO1xuICB9LCBbbG9jYXRpb24uc2VhcmNoXSk7XG5cbiAgcmV0dXJuIHsgYWN0aXZlVGFiLCBhY3RpdmVTdWJUYWIsIGhhbmRsZVRhYkNoYW5nZSB9O1xufTtcblxuXG4iLCAiaW1wb3J0IFJlYWN0LCB7IGNyZWF0ZUNvbnRleHQsIHVzZUNvbnRleHQsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbmNvbnN0IExvYWRpbmdDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxhbnk+KG51bGwpO1xuXG5leHBvcnQgY29uc3QgTG9hZGluZ1Byb3ZpZGVyID0gKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pID0+IHtcbiAgY29uc3QgW2lzTG9hZGluZywgc2V0SXNMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICByZXR1cm4gKFxuICAgIDxMb2FkaW5nQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17eyBpc0xvYWRpbmcsIHNldElzTG9hZGluZyB9fT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0xvYWRpbmdDb250ZXh0LlByb3ZpZGVyPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUxvYWRpbmcgPSAoKSA9PiB1c2VDb250ZXh0KExvYWRpbmdDb250ZXh0KTtcbiIsICJpbXBvcnQgeyBzdHJpbmdUb1NsdWcgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhob3BwKHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcbiAgICBjb25zdCBhcnI6IEpTWC5FbGVtZW50W10gID0gW107IFxuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXG4gICAgaWYgKGlkKSB7XG4gICAgICAgIGlkdGV4dCA9IGlkOyBcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHggPSB0ZXh0LmNoYXJBdChpKTsgXG4gICAgICAgIGFyci5wdXNoKDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPnt4fTwvc3Bhbj4pXG4gICAgfVxuICAgIHJldHVybihcbiAgICAgICAgPGgxIGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInBsYXlmdWxcIiBhcmlhLWxhYmVsPVwiV2FzaCB5b3VyIGhhbmRzXCI+XG4gICAgICAgICAgICB7YXJyfSAgICAgICAgXG4gICAgICAgIDwvaDE+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSHNtb2tlKHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcbiAgICBjb25zdCBhcnI6IEpTWC5FbGVtZW50W10gID0gW107IFxuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXG4gICAgaWYgKGlkKSB7XG4gICAgICAgIGlkdGV4dCA9IGlkOyBcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHggPSB0ZXh0LmNoYXJBdChpKTsgXG4gICAgICAgIGFyci5wdXNoKDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPnt4fTwvc3Bhbj4pXG4gICAgfVxuICAgIHJldHVybihcbiAgICAgICAgPGgxIGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInNtb2tlXCIgYXJpYS1sYWJlbD1cIldhc2ggeW91ciBoYW5kc1wiPlxuICAgICAgICAgICAge2Fycn0gICAgICAgIFxuICAgICAgICA8L2gxPlxuICAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEgxKHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcbiAgICAvKiB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxuICAgIGlmIChpZCkge1xuICAgICAgICBpZHRleHQgPSBpZDsgXG4gICAgfVxuICAgIGVsc2V7XG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXG4gICAgfVxuICAgIHJldHVybihcbiAgICA8ZGl2IGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInJvdyBob25lXCI+XG4gICAgICAgIDxzdmcgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiPlxuICAgICAgICA8dGV4dCB4PVwiMCVcIiB5PVwiNjAlXCI+XG4gICAgICAgIHt0ZXh0fVxuICAgICAgICA8L3RleHQ+XG4gICAgPC9zdmc+XG4gICAgPC9kaXY+XG4gICAgKSAqL1xuICAgcmV0dXJuKFxuICAgIDxoMSBpZD17aWR9ID57dGV4dH08L2gxPlxuICAgKVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBIMih7dGV4dCwgaWR9Ont0ZXh0OiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XG4gICAgdmFyIGlkdGV4dDogc3RyaW5nOyBcbiAgICBpZiAoaWQpIHtcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxuICAgIH1cbiAgICBlbHNle1xuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxuICAgIH1cbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaDItYm94XCI+XG4gICAgICAgICAgICA8aDIgY2xhc3NOYW1lPVwiaDJcIiBpZD17aWR0ZXh0fT57dGV4dH08L2gyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSDMoe3RleHQsIGlkfTp7dGV4dDogc3RyaW5nLCBpZD86IHN0cmluZ30pe1xuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXG4gICAgaWYgKGlkKSB7XG4gICAgICAgIGlkdGV4dCA9IGlkOyBcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcbiAgICB9XG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGgzICBjbGFzc05hbWU9XCJoM1wiIGlkPXtpZHRleHR9PiB7dGV4dH0gPC9oMz4gIFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIFBoaWxpcEgzKHtjaGlsZHJlbiwgaWR9OntjaGlsZHJlbjogSlNYLkVsZW1lbnQgLCBpZDogc3RyaW5nfSl7XG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGgzICBjbGFzc05hbWU9XCJoM1wiIGlkPXtpZH0+IHtjaGlsZHJlbn0gPC9oMz4gIFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIEg0KHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcbiAgICB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxuICAgIGlmIChpZCkge1xuICAgICAgICBpZHRleHQgPSBpZDsgXG4gICAgfVxuICAgIGVsc2V7XG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXG4gICAgfVxuICAgIHJldHVybihcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxoNCBjbGFzc05hbWU9XCJoNFwiIGlkPXtpZHRleHR9PiB7dGV4dH0gPC9oND4gIFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIEg1KHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcbiAgICB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxuICAgIGlmIChpZCkge1xuICAgICAgICBpZHRleHQgPSBpZDsgXG4gICAgfVxuICAgIGVsc2V7XG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXG4gICAgfVxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJoNS1ib3hcIj5cbiAgICAgICAgICAgIDxoNSBjbGFzc05hbWU9XCJoNVwiIGlkPXtpZHRleHR9PiB7dGV4dH0gPC9oNT4gIFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBIaGlnaGxpZ2h0KHtjaGlsZHJlbn06e2NoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcbiAgICByZXR1cm4oXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb250ZW50IHYyXCI+XG4gICAgICAgIDxwPntjaGlsZHJlbn08L3A+XG4gICAgPC9kaXY+XG4gICAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIEhzcG9pbGVyKHtjaGlsZHJlbn06e2NoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcbiAgICByZXR1cm4oXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb250ZW50IHYzXCI+XG4gICAgICAgIDxwPntjaGlsZHJlbn08L3A+XG4gICAgPC9kaXY+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSHdhdmUoe3RleHQsIGlkfTp7dGV4dDogc3RyaW5nLCBpZD86IHN0cmluZ30pe1xuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXG4gICAgaWYgKGlkKSB7XG4gICAgICAgIGlkdGV4dCA9IGlkOyBcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcbiAgICB9XG4gICAgcmV0dXJuKFxuICAgICAgIC8qICA8c3ZnIGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cImJpZ3RpdGxlXCIgdmlld0JveD1cIjAgMCAxMDAgMjBcIj5cbiAgICAgICAgPGRlZnM+XG4gICAgICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9XCJncmFkaWVudFwiIHgxPVwiMFwiIHgyPVwiMFwiIHkxPVwiMFwiIHkyPVwiMVwiPlxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiNSVcIiBzdG9wQ29sb3I9XCIjODUwRjc4XCIvPlxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiOTUlXCIgc3RvcENvbG9yPVwiI0EwQTdGM1wiLz5cbiAgICAgICAgICAgIDwvbGluZWFyR3JhZGllbnQ+XG4gICAgICAgICAgICA8cGF0dGVybiBpZD1cIndhdmVcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxMjBcIiBoZWlnaHQ9XCIyMFwiIHBhdHRlcm5Vbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgICAgICA8cGF0aCBpZD1cIndhdmVQYXRoXCIgZD1cIk0tNDAgOSBRLTMwIDcgLTIwIDkgVDAgOSBUMjAgOSBUNDAgOSBUNjAgOSBUODAgOSBUMTAwIDkgVDEyMCA5IFYyMCBILTQwelwiIG1hc2s9XCJ1cmwoI21hc2spXCIgZmlsbD1cInVybCgjZ3JhZGllbnQpXCI+IFxuICAgICAgICAgICAgICAgIDxhbmltYXRlVHJhbnNmb3JtXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxuICAgICAgICAgICAgICAgICAgICBiZWdpbj1cIjBzXCJcbiAgICAgICAgICAgICAgICAgICAgZHVyPVwiM3NcIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgZnJvbT1cIjAsMFwiXG4gICAgICAgICAgICAgICAgICAgIHRvPVwiNDAsMFwiXG4gICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiIC8+XG4gICAgICAgICAgICA8L3BhdGg+XG4gICAgICAgICAgICA8L3BhdHRlcm4+XG4gICAgICAgIDwvZGVmcz5cbiAgICAgICAgPHRleHQgdGV4dEFuY2hvcj1cIm1pZGRsZVwiIHg9XCI1MFwiIHk9XCIxNVwiIGZvbnRTaXplPVwiMTNcIiBmaWxsPVwid2hpdGVcIiAgZmlsbE9wYWNpdHk9XCIxXCI+e3RleHR9PC90ZXh0PlxuICAgICAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiIGZpbGw9XCJ1cmwoI3dhdmUpXCIgIGZpbGxPcGFjaXR5PVwiMC43XCI+e3RleHR9PC90ZXh0PlxuICAgICAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiIGZpbGw9XCJ1cmwoI2dyYWRpZW50KVwiIGZpbGxPcGFjaXR5PVwiMC45XCI+e3RleHR9PC90ZXh0PlxuICAgICAgICA8L3N2Zz4gKi9cbiAgICAgICAgPHN2ZyBpZD17aWR0ZXh0fSBjbGFzc05hbWU9XCJiaWd0aXRsZVwiIHZpZXdCb3g9XCIwIDAgMTAwIDIwXCI+XG4gICAgPGRlZnM+XG4gICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD1cImdyYWRpZW50XCIgeDE9XCIwXCIgeDI9XCIwXCIgeTE9XCIwXCIgeTI9XCIxXCI+XG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCI1JVwiIHN0b3BDb2xvcj1cIiM4NTBGNzhcIiAvPlxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiOTUlXCIgc3RvcENvbG9yPVwiI0EwQTdGM1wiIC8+XG4gICAgICAgIDwvbGluZWFyR3JhZGllbnQ+XG4gICAgICAgIDxwYXR0ZXJuIGlkPVwid2F2ZVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjEyMFwiIGhlaWdodD1cIjIwXCIgcGF0dGVyblVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgICAgIDxwYXRoIGlkPVwid2F2ZVBhdGhcIiBkPVwiTS00MCA5IFEtMzAgNyAtMjAgOSBUMCA5IFQyMCA5IFQ0MCA5IFQ2MCA5IFQ4MCA5IFQxMDAgOSBUMTIwIDkgVjIwIEgtNDB6XCIgZmlsbD1cInVybCgjZ3JhZGllbnQpXCI+XG4gICAgICAgICAgICAgICAgPGFuaW1hdGVUcmFuc2Zvcm1cbiAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiXG4gICAgICAgICAgICAgICAgICAgIGJlZ2luPVwiMHNcIlxuICAgICAgICAgICAgICAgICAgICBkdXI9XCIzc1wiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBmcm9tPVwiMCwwXCJcbiAgICAgICAgICAgICAgICAgICAgdG89XCI0MCwwXCJcbiAgICAgICAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9XCJpbmRlZmluaXRlXCIgLz5cbiAgICAgICAgICAgIDwvcGF0aD5cbiAgICAgICAgPC9wYXR0ZXJuPlxuICAgIDwvZGVmcz5cbiAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiICBzdHJva2U9XCJ2YXIoLS1vdXJiZWlnZSlcIiBzdHJva2VXaWR0aD17XCIwLjJweFwifSAgZmlsbD1cInVybCgjZ3JhZGllbnQpXCI+e3RleHR9PC90ZXh0PlxuICAgIDx0ZXh0IHRleHRBbmNob3I9XCJtaWRkbGVcIiB4PVwiNTBcIiB5PVwiMTVcIiBmb250U2l6ZT1cIjEzXCIgZmlsbD1cInVybCgjd2F2ZSlcInN0cm9rZT1cInZhcigtLW91cmJlaWdlKVwiIHN0cm9rZVdpZHRoPXtcIjAuMnB4XCJ9ICAgZmlsbE9wYWNpdHk9XCIxXCI+e3RleHR9PC90ZXh0PlxuPC9zdmc+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSHBvcGFydCh7dGV4dCwgaWR9Ont0ZXh0OiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XG4gICAgdmFyIGlkdGV4dDogc3RyaW5nOyBcbiAgICBpZiAoaWQpIHtcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxuICAgIH1cbiAgICBlbHNle1xuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxuICAgIH1cbnJldHVybihcbiAgICA8ZGl2IGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgIDxkaXYgY2xhc3NOYW1lPVwicmVsYXRpdmUgcG9wYXJ0LXdyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhYnNvbHV0ZSBwb3BhcnRcIj5cbiAgICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L2Rpdj4gXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSHNoYWRvbmUoe3RleHR9Ont0ZXh0OiBzdHJpbmd9KXtcbiAgICByZXR1cm4oXG4gICAgPGRpdiBjbGFzc05hbWU9XCJoMy1ib3hcIj5cbiAgICAgICAgPHAgY2xhc3NOYW1lPVwic3Ryb2tlIHNoYWRvdy1zdHJva2VcIj57dGV4dH08L3A+XG4gICAgPC9kaXY+XG4gICAgKVxufVxuZXhwb3J0IGRlZmF1bHQgSDE7IiwgImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFByZUN5c2UoKSB7XG4gICAgcmV0dXJuICg8c3BhbiBjbGFzc05hbWU9XCJ1bmRlcmxpbmUtLW1hZ2ljYWwgcHJlY3lzZVwiPiAgUHJlQ3lzZSA8L3NwYW4+XG4gICAgKX0iLCAiaW1wb3J0IHsgRmFkZUluIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvRmFkZUluXCI7XG5pbXBvcnQgeyBCcmVhdGhlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnJlYXRoZVwiO1xuaW1wb3J0IHsgUHJvYmxlbXMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Qcm9ibGVtc1wiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyBINSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgUHJlQ3lzZSBmcm9tIFwiLi4vY29tcG9uZW50cy9wcmVjeXNlXCI7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBIb21lKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxuLyogKi9cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaGVhZGVyLWNvbnRhaW5lciBsYW5kaW5nLXBhZ2UtaGVhZGVyXCIgaWQ9XCJsYW5kaW5nLXBhZ2UtaGVhZGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaGVhZGVyL2JpbGQud2VicFwiIC8+XG4gICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgIDxoMz5BbmQgcHJlc2VudCBvdXIgbVJOQS1iYXNlZCA8Yj5nZW5lIHRoZXJhcHk8L2I+IGZvciA8Yj50YXJnZXRlZCBhbmQgc2FmZTwvYj4gcmVjb25zdGl0dXRpb24gb2YgQ0ZUUiB0byByZXN0b3JlIHRoZSBtdWNvY2lsaWFyeSBjbGVhcmFuY2Ugb2YgcGF0aWVudHMgd2l0aCA8Yj5DeXN0aWMgRmlicm9zaXM8L2I+LjwvaDM+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGhlYWRlci1jb250YWluZXIgbGFuZGluZy1wYWdlLWhlYWRlclwiIGlkPVwibGFuZGluZy1wYWdlLWhlYWRlci0yXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGhlYWRlci1idXR0b24tcm93XCI+XG4gICAgICAgICAgICAgICAgPGRpdj48SDUgdGV4dD1cIlRha2UgYSB0b3VyIHRocm91Z2ggb3VyIGhpZ2hsaWdodHM6XCIvPiAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAmIzg1OTQ7IDxhIGhyZWY9XCJkZXNjcmlwdGlvbj9zY3JvbGxUbz1BYnN0cmFjdFwiPldoYXQgaXMgPFByZUN5c2UvPj8gPC9hPiA8YnIvPiA8YnIvPiBcbiAgICAgICAgICAgICAgICAgICYjODU5NDsgPGEgaHJlZj1cImVuZ2luZWVyaW5nP3RhYj10YWItb3VyLWN5Y2xlJnNjcm9sbFRvPW91cmN5Y2xlXCI+V2hhdCBpcyBvdXIgc3RyYXRlZ3k/PC9hPiA8YnIvPiA8YnIvPlxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwiZXhwZXJpbWVudHM/dGFiPWhlYWRpbmdcIj5Ib3cgZGlkIHdlIGRvIHRoaXM/PC9hPiA8YnIvPiA8YnIvPlxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwicmVzdWx0cz9zY3JvbGxUbz1leHBlcmltZW50YWwtZGVzaWduXCI+V2hhdCBkaWQgd2UgYXJjaGlldmU/PC9hPiA8YnIvPiA8YnIvPlxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwicGFydHM/c2Nyb2xsVG89UGFydHMgQ29sbGVjdGlvbjJcIj5XaGF0IHBhcnRzIGFyZSB3ZSBjb250cmlidXRpbmc/PC9hPiA8YnIvPiA8YnIvPlxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwianVkZ2luZz9zY3JvbGxUbz1PdmVydmlld0hcIj5XaGF0IGFyZSBvdXIgc3BlY2lhbCBhd2FyZHM/PC9hPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBoZWFkZXItYnV0dG9uLXJvd1wiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJzY3JvbGxzdGFydFwiLCBcIlwiKX0+IDxiPlNDUk9MTDwvYj4gdG8gc2VlIGludHJvZHVjdG9yeSBhbmltYXRpb24uPC9idXR0b24+ICBcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPiBcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsKFwiQWJzdHJhY3RcIiwgXCIvZGVzY3JpcHRpb25cIil9ID4gPGI+Q0xJQ0s8L2I+IHRvIGdvIGRpcmVjdGx5IHRvIG91ciBQcm9qZWN0IERlc2NyaXB0aW9uLjwvYnV0dG9uPiBcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJzY2llbmN5XCIsIFwiXCIpfT4gPGI+SlVNUDwvYj4gc3RyYWlnaHQgdG8gdGhlIHNjaWVuY2UgcGFydCBvZiB0aGUgYW5pbWF0aW9uLjwvYnV0dG9uPiAgIFxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTIuc3ZnXCIvPiAgXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24teFwiPlxuICAgICAgICAgICAgICA8YnV0dG9uICBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbChcIkFwcHJvYWNoMkhcIiwgXCIvZGVzY3JpcHRpb25cIil9ID4gTHVuZy1TcGVjaWZpYyBMaXBpZCBOYW5vcGFydGljbGU8L2J1dHRvbj4gXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi14XCI+XG4gICAgICAgICAgICAgIDxidXR0b24gIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsKFwiQXBwcm9hY2gxSFwiLCBcIi9kZXNjcmlwdGlvblwiKX0gPiBOZXh0LUdlbmVyYXRpb24gUHJpbWUgRWRpdGluZyBUZWNobm9sb2d5XG4gICAgICAgICAgICAgIDwvYnV0dG9uPiBcbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuXG5cbiAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBtdC00XCI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiIGlkPVwiZXJzdGVjb2xcIj5cbiAgICAgICAgPGRpdiAgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIFxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sncG9zaXRpb24nOiAncmVsYXRpdmUnLFxuICAgICAgICAgICAgICAgICAgICAgICAnekluZGV4JzogJzEnLCBcbiAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcxMHZoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMHZ3JyxcbiAgICAgICAgICAgICAgICAgICAgICAgJ3NjYWxlJzogJzAuMjUnfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2Nyb2xsc3RhcnRcIj48L2Rpdj5cbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9pbmRpY2F0b3Iud2VicFwiPjwvaW1nPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgIFxuICAgICAgICAgIFxuICAgICAgICAgIDxCcmVhdGhlPjwvQnJlYXRoZT5cbiAgICAgICAgICBcbiAgICAgICAgICA8UHJvYmxlbXM+PC9Qcm9ibGVtcz5cbiAgICAgICAgICBcbiAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJyBzdHlsZT17eyAnaGVpZ2h0JzogJzE1MHZoJyB9fT48L2Rpdj5cbiAgICAgICAgICBcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9naWZzLzIwMGstYW5pbS10cmFuc3BhcmVudC1iZy5naWZcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9iYWNrZ3JvdW5kcy9iYWNrZ3JvdW5kLTEtdGV4dC53ZWJwJz48L0ZhZGVJbj5cbiAgICAgICAgICBcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTUtMi5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTUtMi5zdmcnPjwvRmFkZUluPlxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtNi0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtNi0yLnN2Zyc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC03LTIuc3ZnXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC03LTIuc3ZnJz48L0ZhZGVJbj5cbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTgtMi5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTgtMi5zdmcnPjwvRmFkZUluPlxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtOS0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtOS0yLnN2Zyc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xMC5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTEwLnN2Zyc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xMS0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTEtMi5zdmcnPjwvRmFkZUluPlxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTIud2VicFwiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTIud2VicCc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xMy0yLndlYnBcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTEzLTIud2VicCc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNC53ZWJwXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNC53ZWJwJz48L0ZhZGVJbj5cbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE1LndlYnBcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE1LndlYnAnPjwvRmFkZUluPlxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTYud2VicFwiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTYud2VicCc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNy5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE3LnN2Zyc+PC9GYWRlSW4+XG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xOC0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTgtMi5zdmcnPjwvRmFkZUluPlxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTktMi5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE5LTIuc3ZnJz48L0ZhZGVJbj5cblxuXG5cblxuXG5cbiAgICAgICAgIHsvKiBcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9naWZzLzNrLWFuaW0tdHJhbnNwYXJlbnQtYmcuZ2lmXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYmFja2dyb3VuZHMvYmFja2dyb3VuZC0zLXRleHQud2VicCc+PC9GYWRlSW4+XG4gICAgICAgICAgXG4gICAgICAgICAgXG4gICAgICAgICAgPEZhZGVJbiAgZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2dpZnMvdHJlYXRtZW50LTIuZ2lmXCIgYmc9Jyc+PC9GYWRlSW4+XG4gICAgICAgICAgXG5cbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9haXJidWRkeS5naWZcIiBiZz0nJz48L0ZhZGVJbj5cbiAgICAgICAgICA8QWlyYnVkZHlBbmltPjwvQWlyYnVkZHlBbmltPlxuICAgICAgICAgIFxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL3ByaW1lZ3VpZGUud2VicFwiIGJnPScnPjwvRmFkZUluPlxuICAgICAgICAgIDxQcmltZUd1aWRlQW5pbU9uZT48L1ByaW1lR3VpZGVBbmltT25lPlxuICAgICAgICAgIDxQcmltZUd1aWRlQW5pbVR3bz48L1ByaW1lR3VpZGVBbmltVHdvPlxuXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJlY3lzZS5naWZcIiBiZz0nJz48L0ZhZGVJbj5cbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9naWZzL3Byb29mb2Zjb25jZXB0LmdpZlwiIGJnPScnPjwvRmFkZUluPiAqL31cbiAgICAgICAgICBcbiAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJyBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJyB9fT48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj4gXG4gICAgPC9kaXY+IFxuICAgIDwvPlxuICApO1xufVxuIiwgImltcG9ydCB7IExpbmsgfSBmcm9tIFwicmVhY3Qtcm91dGVyLWRvbVwiO1xuaW1wb3J0IHsgb3BlbkZyb21PdGhlclBhZ2UgfSBmcm9tIFwiLi4vdXRpbHMvb3BlbkZyb21PdGhlcnBBZ2VcIjtcbmltcG9ydCB7IG9wZW5UaGVtIH0gZnJvbSBcIi4uL3V0aWxzL29wZW5UaGVtXCI7XG5pbXBvcnQgeyBvcGVuRWxlbWVudCB9IGZyb20gXCIuLi91dGlscy9vcGVuRWxlbWVudFwiO1xuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy91c2VOYXZpZ2F0aW9uXCI7XG5pbnRlcmZhY2UgVXJsQnV0dG9uUHJvcHN7XG4gICAgaHJlZjogc3RyaW5nLFxuICAgIGNoaWxkcmVuOiBzdHJpbmcsXG4gIH07XG4gIGludGVyZmFjZSBUYWJCdXR0b25Qcm9wc3tcbiAgICBjbGFzc3k/OiBzdHJpbmcsIFxuICAgIGNsb3Npbmc6IHN0cmluZywgXG4gICAgb3BlbnR5cGU6IHN0cmluZ1xuICAgIC8qIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlLCAgKi9cbiAgICAvKiBvbkNsaWNrOiAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB2b2lkLCAgKi9cbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgdHlwZTogc3RyaW5nXG4gIH1cblxuZXhwb3J0IGZ1bmN0aW9uIFZpbGxhZ2VidXR0b24oeyB0aXRsZSwgc291cmNlLCBwYWdlIH06IHsgdGl0bGU6IHN0cmluZzsgc291cmNlOiBzdHJpbmc7IHBhZ2U6c3RyaW5nfSkge1xuICByZXR1cm4gKFxuICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYnRuIHZpbGxhZ2Utc3R5bGUtYnV0dG9uXCIgcm9sZT1cImJ1dHRvblwiIHRvPXtwYWdlfT5cbiAgICAgICAgPGltZyBzcmM9e3NvdXJjZX0gY2xhc3NOYW1lPVwiZC1ibG9jayBteC1hdXRvIG1iLTJcIiBhbHQ9XCJcIj48L2ltZz5cbiAgICAgICAgPGgzPnt0aXRsZX08L2gzPlxuICAgICAgPC9MaW5rPlxuICApXG59XG4gXG5leHBvcnQgZnVuY3Rpb24gVmlsbGJ1dHRvbnJvdygpe1xuICByZXR1cm4oXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgYm90dG9tLWJ1dHRvbnNcIj5cbiAgICAgICAgPFZpbGxhZ2VidXR0b24gcGFnZT1cIi9odW1hbi1wcmFjdGljZXM/dGFiPWhwLXF1b3RlXCIgc291cmNlPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2h1bWFucHJhY3RpY2VzLnBuZ1wiIHRpdGxlPVwiSHVtYW4gUHJhY3RpY2VcIj48L1ZpbGxhZ2VidXR0b24+XG4gICAgICAgIDxWaWxsYWdlYnV0dG9uIHBhZ2U9XCIvdGVhbT90YWI9bWVtYmVyc1wiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy90ZWFtLnBuZ1wiIHRpdGxlPVwiVGVhbVwiPjwvVmlsbGFnZWJ1dHRvbj5cbiAgICAgICAgPFZpbGxhZ2VidXR0b24gcGFnZT1cIi9leHBlcmltZW50cz90YWI9aGVhZGluZ1wiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9sYWIucG5nXCIgdGl0bGU9XCJFeHBlcmltZW50c1wiPjwvVmlsbGFnZWJ1dHRvbj5cbiAgICAgICAgPFZpbGxhZ2VidXR0b24gcGFnZT1cIi9kZXNjcmlwdGlvbj90YWI9b2JlbmluZGVzY3JpcHRpb25cIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvZG5hLnBuZ1wiIHRpdGxlPVwiRGVzY3JpcHRpb25cIj48L1ZpbGxhZ2VidXR0b24+XG4gICAgICAgIDxWaWxsYWdlYnV0dG9uIHBhZ2U9XCIvZW5naW5lZXJpbmc/dGFiPXRhYi1vdXItY3ljbGUmc2Nyb2xsVG89b3VyY3ljbGVcIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvZ2VuZXRpYy1lbmdpbmVlcmluZy5wbmdcIiB0aXRsZT1cIkVuZ2luZWVyaW5nXCI+PC9WaWxsYWdlYnV0dG9uPlxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL3NhZmV0eT90YWI9Um9sZVwiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9zYWZldHkucG5nXCIgdGl0bGU9XCJTYWZldHlcIj48L1ZpbGxhZ2VidXR0b24+XG4gICAgICAgIDxWaWxsYWdlYnV0dG9uIHBhZ2U9XCIvcmVzdWx0cz90YWI9QWJzdHJhY3RcIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvcmVzdWx0cy5wbmdcIiB0aXRsZT1cIlJlc3VsdHNcIj48L1ZpbGxhZ2VidXR0b24+XG4gICAgICA8L2Rpdj4gIFxuICApXG59XG5cblxuZXhwb3J0IGNvbnN0IFVybEJ1dHRvbiA9ICh7IGhyZWYsIGNoaWxkcmVuIH06VXJsQnV0dG9uUHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGEgaHJlZj17aHJlZn0gY2xhc3NOYW1lPVwidXJsLWJ1dHRvblwiPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L2E+XG4gICAgKTtcbiAgfVxuXG5cblxuXG5leHBvcnQgY29uc3QgRG93bmxvYWRMaW5rID0gKHsgdXJsLCBmaWxlTmFtZSB9OiB7dXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmd9KSA9PiB7XG5jb25zdCBoYW5kbGVEb3dubG9hZCA9ICgpID0+IHtcbiAgICBmZXRjaCh1cmwpXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5ibG9iKCkpXG4gICAgLnRoZW4oKGJsb2IpID0+IHtcbiAgICAgICAgY29uc3QgdXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoW2Jsb2JdKSk7XG4gICAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcbiAgICAgICAgbGluay5ocmVmID0gdXJsO1xuICAgICAgICBsaW5rLmRvd25sb2FkID0gZmlsZU5hbWUgfHwgXCJkb3dubG9hZGVkLWZpbGVcIjtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcblxuICAgICAgICBsaW5rLmNsaWNrKCk7XG5cbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgICAgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwodXJsKTtcbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIGZldGNoaW5nIHRoZSBmaWxlOlwiLCBlcnJvcik7XG4gICAgfSk7XG59O1xucmV0dXJuIChcblxuICA8YSB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17aGFuZGxlRG93bmxvYWR9IGNsYXNzTmFtZT1cImRvd25sb2FkLWJ1dHRcIj5cbiAgICAgIDxzcGFuPkRvd25sb2FkPC9zcGFuPlxuICA8L2E+XG5cbik7XG59O1xuXG5leHBvcnQgY29uc3QgRG93bmxvYWRJbWFnZUJ1dHRvbiA9ICh7IHVybCwgZmlsZU5hbWUsIGNoaWxkcmVufToge3VybDogc3RyaW5nLCBmaWxlTmFtZTogc3RyaW5nLCBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfSkgPT4ge1xuICBjb25zdCBoYW5kbGVEb3dubG9hZCA9ICgpID0+IHtcbiAgICAgIGZldGNoKHVybClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYmxvYigpKVxuICAgICAgLnRoZW4oKGJsb2IpID0+IHtcbiAgICAgICAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbYmxvYl0pKTtcbiAgICAgICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XG4gICAgICAgICAgbGluay5ocmVmID0gdXJsO1xuICAgICAgICAgIGxpbmsuZG93bmxvYWQgPSBmaWxlTmFtZSB8fCBcImRvd25sb2FkZWQtZmlsZVwiO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluayk7XG4gIFxuICAgICAgICAgIGxpbmsuY2xpY2soKTtcbiAgXG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgICAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpO1xuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFwiRXJyb3IgZmV0Y2hpbmcgdGhlIGZpbGU6XCIsIGVycm9yKTtcbiAgICAgIH0pO1xuICB9O1xuICBcbnJldHVybiAoXG5cbiAgICA8YSB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17aGFuZGxlRG93bmxvYWR9IGNsYXNzTmFtZT1cImRvd25sb2FkLWJ1dHQtaW1hZ2VcIj5cbiAgICAgICAge2NoaWxkcmVufVxuICAgIDwvYT5cblxuKTtcbn07XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gVGFiQnV0dG9uUm93KHtkYXRhLCBjbGFzc3ksIG9wZW50eXBlLCBjbG9zaW5nfToge2RhdGE6IEFycmF5PFRhYkRhdGVuc2F0ej4sIGNsYXNzeT86IHN0cmluZywgb3BlbnR5cGU6IHN0cmluZywgY2xvc2luZzogc3RyaW5nfSl7XG4gIGxldCByb3dzOiBKU1guRWxlbWVudFtdICA9IFtdXG4gIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XG4gICAgaWYoY2xhc3N5KXtcbiAgICAgIHJvd3MucHVzaCg8VGFiQnV0dG9uIGNsYXNzeT17Y2xhc3N5fSB0eXBlPXtkYXRhW2ldLmNzc25hbWV9IG5hbWU9e2RhdGFbaV0uYnV0dG9ubmFtZX0gb3BlbnR5cGU9e29wZW50eXBlfSBjbG9zaW5nPXtjbG9zaW5nfS8+KVxuICAgIH1cbiAgICBlbHNle1xuICAgICAgcm93cy5wdXNoKDxUYWJCdXR0b24gdHlwZT17ZGF0YVtpXS5jc3NuYW1lfSBuYW1lPXtkYXRhW2ldLmJ1dHRvbm5hbWV9IG9wZW50eXBlPXtvcGVudHlwZX0gY2xvc2luZz17Y2xvc2luZ30vPilcbiAgICB9XG4gIH1cbiAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPVwiYWxpZ24taXRlbXMtY2VudGVyIG5vcm1hbC1idXR0b25zXCI+XG4gICAge3Jvd3N9XG4gIDwvZGl2PjsgXG59XG5cblxuXG5cbi8vIG5ldWVyIFxuZXhwb3J0IGZ1bmN0aW9uIFRhYkJ1dHRvbih7Y2xhc3N5LCBuYW1lLCBjbG9zaW5nLCBvcGVudHlwZSwgdHlwZX06VGFiQnV0dG9uUHJvcHMpe1xuICBpZiAoIWNsYXNzeSl7XG4gICAgY2xhc3N5ID0gXCJcIlxuICB9XG4gIGxldCBjbGFzc25hbWUgPSBcInRhYmJ1dHRvbiBcIiArIHR5cGUgKyBcIiBcIiArIGNsYXNzeTsgXG4gIHJldHVybihcbiAgICA8PlxuICAgIDxidXR0b24gY2xhc3NOYW1lPXtjbGFzc25hbWV9IG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiB0eXBlLCBjbGFzc1RvSGlkZTogb3BlbnR5cGUsIGNsYXNzVG9DbG9zZTogY2xvc2luZywgYnV0dG9uQ2xhc3M6IFwidGFiYnV0dG9uXCIgfSl9PiB7bmFtZX08L2J1dHRvbj5cbiAgICA8Lz5cbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gSFBNb3JlQnV0dG9uKHtuYW1lfToge25hbWU6IHN0cmluZ30pe1xuICBsZXQgYyA9IFwidGltZWxpbmVwZXJzb250YWJzXCJcbiAgcmV0dXJuKFxuICAgIDxidXR0b24gY2xhc3NOYW1lPVwidGFibGlua3MgaHAtbW9yZS1idXR0b25cIiBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogbmFtZSwgY2xhc3NUb0hpZGU6IGMsIGJ1dHRvbkNsYXNzOiBcInRhYmJ1dHRvblwifSl9PiBNb3JlPC9idXR0b24+XG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEJGSE1vcmVCdXR0b24oe2l0fToge2l0OiBzdHJpbmd9KXtcbiAgcmV0dXJuKFxuICAgIDxidXR0b24gY2xhc3NOYW1lPVwidGFibGlua3MgYmZoLW1vcmUtYnV0dG9uXCIgb25DbGljaz17ZXhwYW5kSXQoe2l0fSl9PiBNb3JlPC9idXR0b24+XG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIE5ld0hQTW9yZUJ1dHRvbih7dGFiLCBzY3JvbGx9OiB7dGFiOiBzdHJpbmcsIHNjcm9sbDogc3RyaW5nfSl7XG4gIGNvbnN0IHtnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgcmV0dXJuKFxuICAgIDxidXR0b24gY2xhc3NOYW1lPVwidGFibGlua3MgYmZoLW1vcmUtYnV0dG9uXCIgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogdGFiLCBzY3JvbGxUb0lkOiBzY3JvbGx9KX0+IE1vcmU8L2J1dHRvbj5cbiAgKVxufVxuXG5mdW5jdGlvbiBleHBhbmRJdCh7aXR9OiB7aXQ6IHN0cmluZ30pe1xuICBjb25zdCBvcGVuaXQgPSAgKF9ldmVudCA6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PntcbiAgICBjb25zb2xlLmxvZyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkpXG4gICAgY29uc29sZS5sb2coZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXQpIS5zdHlsZS5kaXNwbGF5KVxuICAgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkhLnN0eWxlLmRpc3BsYXkgPT09IFwiYmxvY2tcIil7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkhLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICB9XG4gICAgZWxzZSBpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkhLnN0eWxlLmRpc3BsYXkgPT09IFwibm9uZVwiKXtcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0KSEuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG9wZW5pdDsgXG59XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uVGhyZWUoKXtcbiAgcmV0dXJuKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94eS0zXCI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJ0bi1uZXcgYnRuLXRocmVlXCI+XG4gICAgICAgIDxzcGFuIHR5cGVvZj1cImJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcImFib3V0XCIsIGNsYXNzVG9IaWRlOiBcInRhYmNvbnRlbnRcIiwgYnV0dG9uQ2xhc3M6IFwidGFibGlua3NcIn0pfT5IT1ZFUiBNRTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25Ud28oKXtcbiAgcmV0dXJuKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94eS0yXCI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJ0bi1uZXcgYnRuLXR3b1wiPlxuICAgICAgICA8c3BhbiB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJhYm91dFwiLCBjbGFzc1RvSGlkZTogXCJ0YWJjb250ZW50XCIsIGJ1dHRvbkNsYXNzOiBcInRhYmxpbmtzXCJ9KX0+SE9WRVIgTUU8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uT25lKHt0ZXh0LCBvcGVuLCBvcGVuY2xhc3N9OiB7dGV4dDpzdHJpbmcsIG9wZW46c3RyaW5nLCBvcGVuY2xhc3M/OiBzdHJpbmd9KXtcbiAgY29uc3QgeyBnb1RvUGFnZXNBbmRPcGVuVGFiIH0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gIGlmIChvcGVuY2xhc3MpIHtcbiAgICByZXR1cm4oXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveHktMVwiPlxuICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKG9wZW4sIFwiXCIpfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJidG4tbmV3IGJ0bi1vbmVcIj5cbiAgICAgICAge3RleHR9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gICAgXG4gIH1cbiAgZWxzZXtcbiAgICByZXR1cm4oXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveHktMVwiPlxuICAgICAgICA8c3BhbiB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtvcGVuRnJvbU90aGVyUGFnZShvcGVuKX0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYnRuLW5ldyBidG4tb25lXCI+XG4gICAgICAgIHt0ZXh0fVxuICAgICAgICA8L2Rpdj48L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbk9uZVdpdGhTY3JvbGwoe3RleHQsIG9wZW4sIG9wZW5jbGFzcywgc2Nyb2xsSWR9OiB7dGV4dDpzdHJpbmcsIHNjcm9sbElkOiBzdHJpbmcsICBvcGVuOnN0cmluZywgb3BlbmNsYXNzPzogc3RyaW5nfSl7XG4gIGNvbnN0IHsgZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsIH0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gIGlmIChvcGVuY2xhc3MpIHtcbiAgICByZXR1cm4oXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveHktMVwiPlxuICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoeyBwYXRoOiBcIlwiLCB0YWJJZDogb3Blbiwgc2Nyb2xsVG9JZDogc2Nyb2xsSWQgfSl9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJ0bi1uZXcgYnRuLW9uZVwiPlxuICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuICBlbHNle1xuICAgIHJldHVybihcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94eS0xXCI+XG4gICAgICAgIDxzcGFuIHR5cGVvZj1cImJ1dHRvblwiIG9uQ2xpY2s9e29wZW5Gcm9tT3RoZXJQYWdlKG9wZW4pfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJidG4tbmV3IGJ0bi1vbmVcIj5cbiAgICAgICAge3RleHR9XG4gICAgICAgIDwvZGl2Pjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25PbmVFbmdpbmVlcmluZyh7bGFiZWwsIG9wZW4sIHNjcm9sbFRvSWR9OiB7bGFiZWw6c3RyaW5nLCBvcGVuOnN0cmluZywgc2Nyb2xsVG9JZDogc3RyaW5nfSl7XG4gIHJldHVybihcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJveHktMVwiPlxuICAgICAgPHNwYW4gdHlwZW9mPVwiYnV0dG9uXCIgb25DbGljaz17b3BlblRoZW0oe2l0OiBvcGVuLCBzY3JvbGxUb0lkfSl9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJidG4tbmV3IGJ0bi1vbmVcIj5cbiAgICAgIHtsYWJlbH1cbiAgICAgIDwvZGl2Pjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25Gb3VyRmlsbCgpe1xuICByZXR1cm4oXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImljb24gaWNvbi1maWxsXCI+PGkgY2xhc3NOYW1lPVwiZmEgZmEtaG9tZVwiPjwvaT48L2E+XG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbkZvdXJFbnRlcigpe1xuICByZXR1cm4oXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImljb24gaWNvbi1lbnRlclwiPjxpIGNsYXNzTmFtZT1cImZhIGZhLWhvbWVcIj48L2k+PC9hPlxuICApXG59XG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uRm91ckV4cGFuZCgpe1xuICByZXR1cm4oXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImljb24gaWNvbi1leHBhbmRcIj48aSBjbGFzc05hbWU9XCJmYSBmYS1ob21lXCI+PC9pPjwvYT5cbiAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbkZvdXJDb2xsYXBzZSgpe1xuICByZXR1cm4oXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiICBjbGFzc05hbWU9XCJpY29uIGljb24tY29sbGFwc2VcIj48aSBjbGFzc05hbWU9XCJmYSBmYS1ob21lXCI+PC9pPjwvYT5cbiAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbkZvdXJSb3RhdGUoKXtcbiAgcmV0dXJuKFxuICAgIDxhIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJpY29uIGljb24tcm90YXRlXCI+PGkgY2xhc3NOYW1lPVwiZmEgZmEtaG9tZVwiPjwvaT48L2E+XG4gIClcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gQmFja1VwKCl7XG4gIHJldHVybihcbiAgICA8PlxuICAgIDxici8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgaWQ9XCJlbmctYmFja3VwXCIgc3R5bGU9e3tkaXNwbGF5OiBcImZsZXhcIiwgYWxpZ25JdGVtczogXCJyaWdodFwifX0+XG4gICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBzY3JvbGxVcFdpdGhPZmZzZXQoKX0gY2xhc3NOYW1lPVwiYmFja3RvdG9wXCI+XG4gICAgICAgICAgICAgICAgQmFjayB0byBUb3AgJiM4NTkzO1xuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj4gIFxuICAgIDwvPlxuICApXG59XG5cbmZ1bmN0aW9uIHNjcm9sbFVwV2l0aE9mZnNldCgpIHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gd2luZG93LmlubmVySGVpZ2h0ICA7IC8vIDUwJSBkZXIgVmlld3BvcnQtSFx1MDBGNmhlXG4gICAgY29uc3QgdGFyZ2V0U2Nyb2xsUG9zaXRpb24gPSBNYXRoLm1heCgwLCAgb2Zmc2V0KTsgLy8gTmV1ZSBTY3JvbGwtUG9zaXRpb24sIGFiZXIgbmljaHQgdW50ZXIgMFxuXG4gICAgY29uc29sZS5sb2coYFNjcm9sbGluZyB1cCB0byBwb3NpdGlvbjogJHt0YXJnZXRTY3JvbGxQb3NpdGlvbn1gKTtcbiAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHRhcmdldFNjcm9sbFBvc2l0aW9uLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gU2hvd1NvbHV0aW9uKHtlbGVtZW50fToge2VsZW1lbnQ6IHN0cmluZ30pe1xuXG4gIHJldHVybihcbiAgICA8YnV0dG9uIG9uQ2xpY2s9e2ZsaXAoZWxlbWVudCl9IGNsYXNzTmFtZT1cInF1aXotYnV0dG9uXCI+U2hvdyBzb2x1dGlvbjwvYnV0dG9uPlxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBIaWRlU29sdXRpb24oe2VsZW1lbnR9OiB7ZWxlbWVudDogc3RyaW5nfSl7XG4gIHJldHVybihcbiAgICA8YnV0dG9uIG9uQ2xpY2s9e2ZsaXBCYWNrKGVsZW1lbnQpfSBjbGFzc05hbWU9XCJxdWl6LWJ1dHRvblwiPlJldHVybiB0byBxdWVzdGlvbjwvYnV0dG9uPlxuICApXG59XG5cbmZ1bmN0aW9uIGZsaXAoZWxlbWVudDogc3RyaW5nKXtcbiAgY29uc3QgZmxpcHAgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xuICAgIGxldCBlbGVtZW50VG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJmcm9udC1cIitlbGVtZW50KTtcbiAgICAgICAgKGVsZW1lbnRUb0hpZGUgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICBsZXQgZWxlbWVudFRvRmluZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYmFjay1cIitlbGVtZW50KTtcbiAgICAgIChlbGVtZW50VG9GaW5kIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xuICB9XG4gIHJldHVybiBmbGlwcDsgXG59XG5cbmZ1bmN0aW9uIGZsaXBCYWNrKGVsZW1lbnQ6IHN0cmluZyl7XG4gIGNvbnN0IGZsaXBwYmFjayA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgbGV0IGVsZW1lbnRUb0hpZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImJhY2stXCIrZWxlbWVudCk7XG4gICAgICAgIChlbGVtZW50VG9IaWRlIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7XG4gICAgbGV0IGVsZW1lbnRUb0ZpbmQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImZyb250LVwiK2VsZW1lbnQpO1xuICAgICAgKGVsZW1lbnRUb0ZpbmQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XG4gIH1cbiAgcmV0dXJuIGZsaXBwYmFjazsgIFxufVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlsc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvb3BlblRoZW0udHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvb3BlblRoZW0udHNcIjtleHBvcnQgZnVuY3Rpb24gb3BlblRoZW0oeyBpdCwgc2Nyb2xsVG9JZCB9OiB7IGl0OiBzdHJpbmc7IHNjcm9sbFRvSWQ/OiBzdHJpbmcgfSkge1xuICBjb25zdCBnb3RvYW5kb3BlbiA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBjb25zb2xlLmxvZyhgT3BlbmluZyB0YWI6ICR7aXR9YCk7XG4gICAgICB1cGRhdGVUYWJzKGl0LCBzY3JvbGxUb0lkKTtcblxuICAgICAgLy8gVXBkYXRlIGRlciBVUkxcbiAgICAgIGNvbnN0IG5ld1VybCA9IGA/dGFiPSR7aXR9YDtcbiAgICAgIGNvbnNvbGUubG9nKGBVcGRhdGluZyBVUkwgdG86ICR7bmV3VXJsfWApO1xuICAgICAgd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKHsgdGFiOiBpdCB9LCAnJywgbmV3VXJsKTtcbiAgLyogICAgIGlmIChzY3JvbGxUb0lkICYmIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpKSB7XG4gICAgICAgIGNvbnN0IHNjRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpO1xuICAgICAgICBpZiAoc2NFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxQb3MgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLyAyIC0gc2NFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XG4gICAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHNjcm9sbFBvcywgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuICAgICAgICB9XG4gICAgICB9ICovXG4gICAgICAvLyBTY3JvbGxlbiBpbiBkaWUgTWl0dGVcbiAgICAgLyogIGNvbnN0IG1pZFNjcm9sbFBvc2l0aW9uID0gd2luZG93LmlubmVySGVpZ2h0IC8gMjsgLy8gQmVyZWNobnVuZyBkZXIgTWl0dGUgZGVzIFZpZXdwb3J0c1xuICAgICAgY29uc29sZS5sb2coYFNjcm9sbGluZyB0byBtaWRkbGUgcG9zaXRpb246ICR7bWlkU2Nyb2xsUG9zaXRpb259YCk7ICovXG4gICAgIC8qICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IG1pZFNjcm9sbFBvc2l0aW9uLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7ICovXG4gICAgfVxuICB9O1xuXG4gIHJldHVybiBnb3RvYW5kb3Blbjtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVGFicyhpdDogc3RyaW5nLCBzY3JvbGxUb0lkPzogc3RyaW5nKSB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuO1xuXG4gIGxldCBjb250ZW50dGFiaWQgPSBcInRhYi1cIiArIGl0O1xuICBsZXQgcGFyZW50ID0gXCJwYXJlbnQtXCIgKyBpdDtcblxuICBjb25zb2xlLmxvZyhgVXBkYXRpbmcgdGFicyBmb3I6ICR7aXR9YCk7XG5cbiAgLy8gVmVyc3RlY2tlIGFsbGUgU3VidGFicyB1bmQgQ29udGVudC1UYWJzXG4gIGNvbnN0IHN1YnRhYnMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwic2lkZXN1YnRhYlwiKTtcbiAgY29uc3QgY29udGVudHRhYnMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiZW5naW5uZWVyaW5ndGFiXCIpO1xuICBjb25zdCBzaWRlaXRlbXMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwic2lkZWl0ZW1cIik7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdWJ0YWJzLmxlbmd0aDsgaSsrKSB7XG4gICAgKHN1YnRhYnNbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICBjb25zb2xlLmxvZyhgSGlkaW5nIHN1YnRhYjogJHtzdWJ0YWJzW2ldLmlkfWApO1xuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY29udGVudHRhYnMubGVuZ3RoOyBpKyspIHtcbiAgICAoY29udGVudHRhYnNbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICBjb25zb2xlLmxvZyhgSGlkaW5nIGNvbnRlbnQgdGFiOiAke2NvbnRlbnR0YWJzW2ldLmlkfWApO1xuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc2lkZWl0ZW1zLmxlbmd0aDsgaSsrKSB7XG4gICAgKHNpZGVpdGVtc1tpXSBhcyBIVE1MRWxlbWVudCkhLmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmUtc2lkZWl0ZW1cIik7XG4gICAgY29uc29sZS5sb2coYFJlbW92aW5nIGFjdGl2ZSBjbGFzcyBmcm9tIHNpZGUgaXRlbTogJHtzaWRlaXRlbXNbaV0uaWR9YCk7XG4gIH1cblxuICAvLyBaZWlnZSBkZW4gYWt0dWVsbGVuIFRhYiB1bmQgbWFya2llcmUgZGFzIGVudHNwcmVjaGVuZGUgU2lkZWJhci1JdGVtXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0KSEuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgY29uc29sZS5sb2coYFNob3dpbmcgdGFiOiAke2l0fWApO1xuICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwYXJlbnQpIS5jbGFzc0xpc3QuYWRkKFwiYWN0aXZlLXNpZGVpdGVtXCIpO1xuICBjb25zb2xlLmxvZyhgQWN0aXZhdGluZyBzaWRlIGl0ZW06ICR7cGFyZW50fWApO1xuICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjb250ZW50dGFiaWQpIS5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xuICBjb25zb2xlLmxvZyhgU2hvd2luZyBjb250ZW50IHRhYjogJHtjb250ZW50dGFiaWR9YCk7XG5cbiAgLy8gU2Nyb2xsZSB6dSBkZXIgYW5nZWdlYmVuZW4gSUQsIGZhbGxzIHZvcmhhbmRlblxuICBpZiAoc2Nyb2xsVG9JZCkge1xuICAgIGNvbnN0IGNvbGxhcHNlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpO1xuICAgIGlmIChjb2xsYXBzZUVsZW1lbnQpIHtcbiAgICAgICAgY29uc3QgZWxlbWVudFRvcCA9IGNvbGxhcHNlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgKyB3aW5kb3cucGFnZVlPZmZzZXQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHdpbmRvdy5pbm5lckhlaWdodCAvIDIgLSBjb2xsYXBzZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IC8gMjtcbiAgICAgICAgY29uc3Qgc2Nyb2xsUG9zaXRpb24gPSBlbGVtZW50VG9wIC0gb2Zmc2V0O1xuXG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XG4gICAgICAgICAgICB0b3A6IHNjcm9sbFBvc2l0aW9uLFxuICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICB9KTtcbiAgICB9XG59XG4vKiAgIGlmIChzY3JvbGxUb0lkICYmIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpKSB7XG4gICAgY29uc3Qgc2NFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2Nyb2xsVG9JZCk7XG4gICAgaWYgKHNjRWxlbWVudCkge1xuICAgICAgICBjb25zdCBzY3JvbGxQb3MgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLyAyIC0gc2NFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogc2Nyb2xsUG9zLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG4gICAgfVxuICB9ICovXG59XG5cbi8vIEZcdTAwRkNnZSBlaW5lbiBFdmVudCBMaXN0ZW5lciBmXHUwMEZDciBgcG9wc3RhdGVgIGhpbnp1XG5pZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgKGV2ZW50KSA9PiB7XG4gICAgY29uc29sZS5sb2coJ1BvcHN0YXRlIGV2ZW50IHRyaWdnZXJlZCcpO1xuICAgIGlmIChldmVudC5zdGF0ZSkge1xuICAgICAgY29uc3QgdGFiID0gZXZlbnQuc3RhdGUudGFiO1xuICAgICAgY29uc29sZS5sb2coYFJlc3RvcmluZyB0YWI6ICR7dGFifWApO1xuICAgICAgdXBkYXRlVGFicyh0YWIpO1xuICAgICAgXG4gICAgICAvLyBTY3JvbGxlbiBpbiBkaWUgTWl0dGUgYmVpbSBadXJcdTAwRkNja25hdmlnaWVyZW5cbiAgICAgIGNvbnNvbGUubG9nKFwiU2Nyb2xsaW5nIHRvIG1pZGRsZSBvbiBwb3BzdGF0ZS4uLlwiKTtcbiAgICAgIGNvbnN0IG1pZFNjcm9sbFBvc2l0aW9uID0gd2luZG93LmlubmVySGVpZ2h0IC8gMjtcbiAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogbWlkU2Nyb2xsUG9zaXRpb24sIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coXCJObyBzdGF0ZSBmb3VuZCBpbiBwb3BzdGF0ZSBldmVudC5cIik7XG4gICAgfVxuICB9KTtcbn1cbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9ob21lL2xpbGkvRG9jdW1lbnRzL2lHZW0vYmllbGVmZWxkLWNlYml0ZWMvc3JjL3V0aWxzL3VzZU5hdmlnYXRpb24udHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvdXNlTmF2aWdhdGlvbi50c1wiO2ltcG9ydCB7IHVzZU5hdmlnYXRlIH0gZnJvbSBcInJlYWN0LXJvdXRlci1kb21cIjtcbmltcG9ydCB7IHVzZUxvYWRpbmcgfSBmcm9tIFwiLi9Mb2FkaW5nQ29udGV4dFwiO1xuXG5leHBvcnQgY29uc3QgdXNlTmF2aWdhdGlvbiA9ICgpID0+IHtcbiAgICBjb25zdCBuYXZpZ2F0ZSA9IHVzZU5hdmlnYXRlKCk7XG5cbiAgICBjb25zdCB7IHNldElzTG9hZGluZywgaXNMb2FkaW5nIH0gPSB1c2VMb2FkaW5nKCk7IC8vIDIuIExhZGV6dXN0YW5kIGhpZXIgdmVyd2VuZGVuXG5cblxuXG4gICAgY29uc3QgZ29Ub1BhZ2VzQW5kT3BlblRhYiA9ICh0YWJJZDogc3RyaW5nLCBwYXRoOiBzdHJpbmcpID0+IHtcbiAgICBcbiAgICAgICAgXG4gICAgICAgIG5hdmlnYXRlKGAke3BhdGh9P3RhYj0ke3RhYklkfWApO1xuICAgICAgICBcbiAgICB9O1xuICAgIGNvbnN0IGdvVG9UZXh0c0FuZE9wZW5Db2xsYXBzaWJsZSA9IChjb2xsYXBzZUlkOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgPT4ge1xuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIG5hdmlnYXRlKGAke3BhdGh9P2NvbGxhcHNlSWQ9JHtjb2xsYXBzZUlkfWApO1xuICAgIH07XG4gICAgY29uc3QgZ29Ub1BhZ2VXaXRoVGFiQW5kQ29sbGFwc2libGUgPSAoeyBwYXRoLCB0YWJJZCwgY29sbGFwc2VJZCB9OiB7IHBhdGg6IHN0cmluZywgdGFiSWQ6IHN0cmluZywgY29sbGFwc2VJZD86IHN0cmluZyB9KSA9PiB7XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgbGV0IHVybCA9IGAke3BhdGh9P3RhYj0ke3RhYklkfWA7XG4gICAgICAgIGlmIChjb2xsYXBzZUlkKSB7XG4gICAgICAgICAgICB1cmwgKz0gYCZjb2xsYXBzZUlkPSR7Y29sbGFwc2VJZH1gO1xuICAgICAgICB9XG4gICAgICAgIG5hdmlnYXRlKHVybCk7XG4gICAgfTtcbiAgICBjb25zdCBnb1RvUGFnZVdpdGhOZXN0ZWRUYWJzID0gKHsgcGF0aCwgdGFiSWQsIHN1YlRhYklkLCBjb2xsYXBzZUlkIH06IHsgcGF0aDogc3RyaW5nLCB0YWJJZDogc3RyaW5nLCBzdWJUYWJJZD86IHN0cmluZywgY29sbGFwc2VJZD86IHN0cmluZyB9KSA9PiB7XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgbGV0IHVybCA9IGAke3BhdGh9P3RhYj0ke3RhYklkfWA7XG4gICAgICAgIGlmIChzdWJUYWJJZCkge1xuICAgICAgICAgICAgdXJsICs9IGAmc3ViVGFiPSR7c3ViVGFiSWR9YDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29sbGFwc2VJZCkge1xuICAgICAgICAgICAgdXJsICs9IGAmY29sbGFwc2VJZD0ke2NvbGxhcHNlSWR9YDtcbiAgICAgICAgfVxuICAgICAgICBuYXZpZ2F0ZSh1cmwpO1xuICAgIH07XG5cblxuXG4gICAgY29uc3QgZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsID0gKHsgcGF0aCwgdGFiSWQsIHNjcm9sbFRvSWQgfTogeyBwYXRoOiBzdHJpbmcsIHRhYklkOiBzdHJpbmcsIHNjcm9sbFRvSWQ6IHN0cmluZyB9KSA9PiB7XG4gICAgICAgIGxldCB1cmwgPSBgJHtwYXRofT90YWI9JHt0YWJJZH1gO1xuICAgICAgICBpZiAoc2Nyb2xsVG9JZCkge1xuICAgICAgICAgICAgdXJsICs9IGAmc2Nyb2xsVG89JHtzY3JvbGxUb0lkfWA7XG4gICAgICAgIH1cbiAgICAgICAgbmF2aWdhdGUodXJsKTtcbiAgICB9O1xuXG4gICAgY29uc3QgZ29Ub1BhZ2VBbmRTY3JvbGwgPSAoc2Nyb2xsVG9JZDogc3RyaW5nLCBwYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgXG4gICAgICAgIG5hdmlnYXRlKGAke3BhdGh9P3Njcm9sbFRvPSR7c2Nyb2xsVG9JZH1gKTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2hhbmdlUGFnZVdpdGhMb2FkaW5nU2NyZWVuID0gKCkgPT4gKHsgcGF0aCwgc2Nyb2xsVG9JZCB9OiB7IHBhdGg6IHN0cmluZywgc2Nyb2xsVG9JZDogc3RyaW5nIH0pID0+IHtcbiAgICAgICAgc2V0SXNMb2FkaW5nKHRydWUpO1xuICAgICAgICBsZXQgdXJsID0gYCR7cGF0aH0/Y2hhbmdlVG89JHtzY3JvbGxUb0lkfWA7XG4gICAgICAgIG5hdmlnYXRlKHVybCk7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2Nyb2xsVG9JZCk7XG4gICAgICAgICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0UG9zaXRpb24gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldDtcbiAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsVG9Qb3NpdGlvbiA9IHRhcmdldFBvc2l0aW9uIC0gdmlld3BvcnRIZWlnaHQgLyAyICsgZWxlbWVudC5jbGllbnRIZWlnaHQgLyAyO1xuICAgICAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHNjcm9sbFRvUG9zaXRpb24sIGJlaGF2aW9yOiBcInNtb290aFwiIH0pO1xuICAgICAgXG4gICAgICAgICAgICAgIC8vIExhZGV6dXN0YW5kIG5hY2ggQWJzY2hsdXNzIGRlcyBTY3JvbGxlbnMgYmVlbmRlblxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICB9LCAxMDAwKTsgLy8gU2Nyb2xsemVpdCBhbHMgQmVpc3BpZWxcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIC8vIEZhbGxzIGRhcyBFbGVtZW50IG5pY2h0IGdlZnVuZGVuIHdpcmQsIExhZGV6dXN0YW5kIGJlZW5kZW5cbiAgICAgICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LCA1MDApOyBcbiAgICB9O1xuXG4gICAgXG4gICAgcmV0dXJuIHsgaXNMb2FkaW5nLCBjaGFuZ2VQYWdlV2l0aExvYWRpbmdTY3JlZW4sICBnb1RvUGFnZUFuZFNjcm9sbCwgc2V0SXNMb2FkaW5nLCBnb1RvUGFnZXNBbmRPcGVuVGFiLCBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwsIGdvVG9QYWdlV2l0aE5lc3RlZFRhYnMsIGdvVG9QYWdlV2l0aFRhYkFuZENvbGxhcHNpYmxlLCBnb1RvVGV4dHNBbmRPcGVuQ29sbGFwc2libGUgfTtcbn07XG4iLCAiaW1wb3J0IHsgSDIsIEgzIH0gZnJvbSBcIi4vSGVhZGluZ3NcIlxuXG5cbmV4cG9ydCBmdW5jdGlvbiBTZWN0aW9uKHtpZCwgdGl0bGUsIGNoaWxkcmVufToge2lkOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcbiAgICBsZXQgc2VjX2lkID0gYCR7aWR9SGBcbiAgICBsZXQgaGVhZGVyX2lkID0gaWRcbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8c2VjdGlvbiBpZD17c2VjX2lkfSBjbGFzc05hbWU9XCJzZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBpZD17aGVhZGVyX2lkfT48SDIgdGV4dD17dGl0bGV9Lz48L2Rpdj5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgIClcblxufVxuXG5leHBvcnQgZnVuY3Rpb24gU3ViZXNjdGlvbih7aWQsIHRpdGxlLCBjaGlsZHJlbn06IHtpZDogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfSl7XG5cbiAgICByZXR1cm4oXG4gICAgICAgIDxzZWN0aW9uIGlkPXtpZH0+XG4gICAgICAgICAgICAgICAgPEgzIHRleHQ9e3RpdGxlfSBpZD17aWQgKyBcIkhcIn0+PC9IMz5cbiAgICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgIClcbn0iLCAiaW1wb3J0IHsgYWR2aXNvcnMsIGluc3RydWN0b3IsIHBpcywgU3RlY2ticmllZkludGVyZmFjZSwgdGVhbW1lbWJlcnMgfSBmcm9tIFwiLi4vZGF0YS9zdGVja2JyaWVmZVwiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyBCYWNrVXAgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gVGVhbSgpIHtcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xuICBsZXQgdGVhbWJyaWVmZSA9IGNyZWF0ZVN0ZWNrYnJpZWZlKHRlYW1tZW1iZXJzKTsgXG4gIGxldCBhZHZpc29yYnJpZWZlID0gY3JlYXRlUGlTdGVja2JyaWVmZShhZHZpc29ycyk7IFxuICBsZXQgc2luYW4gPSBjcmVhdGVQaVN0ZWNrYnJpZWZlKGluc3RydWN0b3IpOyBcbiAgbGV0IHBpYnJpZWZlID0gY3JlYXRlUGlTdGVja2JyaWVmZShwaXMpXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxici8+XG5cbiAgICAgIDxici8+XG4gICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IFNpdGNvbSBUZWFtIFByZXNlbnRhdGlvbiAoMjAyNCkgW0VuZ2xpc2hdXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNjAwcHhcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC9lNDBkODlhMC0yNDYxLTQyMWMtYTc1Yy05MmIzYjIzOGUwZjhcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJNZW1iZXJzXCIgaWQ9XCJtZW1iZXJzXCI+XG4gICAgICB7dGVhbWJyaWVmZX1cbiAgICAgIDwvU2VjdGlvbj5cblxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJJbnN0cnVjdG9yXCIgaWQ9XCJpbnN0cnVjdG9yXCI+XG4gICAgICB7c2luYW59XG4gICAgICA8L1NlY3Rpb24+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkFkdmlzb3JzXCIgaWQ9XCJBZHZpc29yc1wiPlxuICAgICAge2Fkdmlzb3JicmllZmV9XG4gICAgICA8L1NlY3Rpb24+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIlByaW5jaXBhbCBJbnZlc3RpZ2F0b3JzXCIgaWQ9XCJQSVNcIj5cbiAgICAgIHtwaWJyaWVmZX1cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3RlYW0tcGhvdG9zL2dydXBwZS12LndlYnBcIiBhbHQ9XCJUZWFtIEJpZWxlZmVsZCBpbiBsYWIgY29hdHMgYW5kIFYtRm9ybWF0aW9uXCIvPlxuICAgICAgPEJhY2tVcC8+IFxuICAgIDwvPlxuICApO1xufVxuXG5cblxuZnVuY3Rpb24gY3JlYXRlU3RlY2ticmllZmUoZGF0YTogQXJyYXk8U3RlY2ticmllZkludGVyZmFjZT4pe1xuICBsZXQgYnJpZWZlOiBKU1guRWxlbWVudFtdICA9IFtdXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkYXRhLmxlbmd0aDsgaW5kZXgrKykge1xuICAgIGxldCB0aGVuYW1lID0gXCJcIiArIGRhdGFbaW5kZXhdLnZvcm5hbWUgKyBkYXRhW2luZGV4XS5uYWNobmFtZTsgXG4gICAgLy8gQ29uZGl0aW9uYWwgaGVhZCBvZlxuICAgIHZhciBoZWFkb2YgPSA8PjwvPjsgXG4gICAgaWYoZGF0YVtpbmRleF0uaGVhZG9mKXtcbiAgICAgIHZhciBoZWFkb2YgPSA8PjxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPkhlYWQgb2Y6PC9iPiB7ZGF0YVtpbmRleF0uaGVhZG9mfSA8L2Rpdj4gPGJyLz48Lz47IFxuICAgIH1cbiAgICAvLyBKb2JzXG4gICAgdmFyIGpvYnMgPSBcIlwiOyBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoICA9PSAxKSB7XG4gICAgICAgICAgam9icyArPSAgZGF0YVtpbmRleF0uaWdlbWpvYltpXVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGkgKyAxID09IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoICkge1xuICAgICAgICAgIGpvYnMgKz0gXCIgYW5kIFwiICsgZGF0YVtpbmRleF0uaWdlbWpvYltpXTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmKGkgKyAyID09IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoKXtcbiAgICAgICAgICBqb2JzICs9ICBkYXRhW2luZGV4XS5pZ2Vtam9iW2ldXG4gICAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpIGkrMiBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXG4gICAgICAgIH1cbiAgICAgICAgZWxzZXtcbiAgICAgICAgICBqb2JzICs9ICBkYXRhW2luZGV4XS5pZ2Vtam9iW2ldICsgXCIsIFwiO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEZ1bmZhY3RzIFxuICAgIHZhciBmdW5mYWN0czogSlNYLkVsZW1lbnRbXSAgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmZ1bmZhY3RzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBmdW5mYWN0cy5wdXNoKDxsaSBrZXk9e2BmJHtpfWB9PiB7ZGF0YVtpbmRleF0uZnVuZmFjdHNbaV19IDwvbGk+KTsgXG4gICAgfVxuICAgIC8vIEhvYmJpZXNcbiAgICB2YXIgaG9iYnMgPSBcIlwiOyBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmhvYmJpZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChpICsgMSA9PSBkYXRhW2luZGV4XS5ob2JiaWVzLmxlbmd0aCApIHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpIGkrMSBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXG4gICAgICAgIGhvYmJzICs9IFwiIGFuZCBcIiArIGRhdGFbaW5kZXhdLmhvYmJpZXNbaV07XG4gICAgICB9XG4gICAgICBlbHNlIGlmKGkgKyAyID09IGRhdGFbaW5kZXhdLmhvYmJpZXMubGVuZ3RoKXtcbiAgICAgICAgaG9iYnMgKz0gIGRhdGFbaW5kZXhdLmhvYmJpZXNbaV1cbiAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpIGkrMiBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXG4gICAgICB9XG4gICAgICBlbHNle1xuICAgICAgICAvL2NvbnNvbGUubG9nKGBiZWkgJHtpfSBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXG4gICAgICAgIGhvYmJzICs9ICBkYXRhW2luZGV4XS5ob2JiaWVzW2ldICsgXCIsIFwiO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBXaHlpZ2VtXG4gICAgdmFyIHdoeTogSlNYLkVsZW1lbnRbXSAgPSBbXTsgXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS53aHlpZ2VtLmxlbmd0aDsgaSsrKSB7XG4gICAgICB3aHkucHVzaCg8cD57ZGF0YVtpbmRleF0ud2h5aWdlbVtpXX08L3A+KTsgXG4gICAgfVxuICAgIC8vVGl0bGVcbiAgICBsZXQgdGl0bGUgPSBcIlwiOyBcbiAgICBpZiAoZGF0YVtpbmRleF0udGl0bGUpIHtcbiAgICAgIHRpdGxlID0gZGF0YVtpbmRleF0udGl0bGUhOyBcbiAgICB9XG4gICAgLy8gY2hhbGxlbmdlc1xuICAgIGxldCBjaGFsbHM6IEpTWC5FbGVtZW50W10gID0gW107ICBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmJpZ2dlc3RjaGFsbGVuZ2UubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNoYWxscy5wdXNoKDxsaSBrZXk9e2BkJHtpfWB9PntkYXRhW2luZGV4XS5iaWdnZXN0Y2hhbGxlbmdlW2ldfTwvbGk+KTsgXG4gICAgfVxuICAgIC8vIGJlc3RwYXJ0c1xuICAgIGxldCBiZXN0czogSlNYLkVsZW1lbnRbXSAgPSBbXTsgIFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uYmVzdHBhcnQubGVuZ3RoOyBpKyspIHtcbiAgICAgIGJlc3RzLnB1c2goPGxpIGtleT17YGUke2l9YH0+e2RhdGFbaW5kZXhdLmJlc3RwYXJ0W2ldfTwvbGk+KTsgXG4gICAgfVxuICAgIGxldCBmcm9udGJyaWVmY2xhc3MgPSBcImZyb250YnJpZWYgZnJvbnRicmllZlwiK3RoZW5hbWU7IFxuICAgIGxldCBiYWNrYnJpZWZjbGFzcyA9IFwiYmFja2JyaWVmIGJhY2ticmllZlwiK3RoZW5hbWU7XG5cbiAgICBsZXQgcGljdHVyZSA9IDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgbG5wIGNlbnRlclwiPjxpbWcgc3JjPXtkYXRhW2luZGV4XS56d2VpdGZvdG99IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fSBjbGFzc05hbWU9e1wiaW1nIHRlYW0taW1nIFwiK2JhY2ticmllZmNsYXNzfS8+PGltZyBzcmM9e2RhdGFbaW5kZXhdLmhhdXB0Zm90b30gY2xhc3NOYW1lPXtcImltZyB0ZWFtLWltZyBcIitmcm9udGJyaWVmY2xhc3N9PjwvaW1nPjwvZGl2PiBcbiAgICBsZXQgbmFtZXJvdyA9IDxkaXYgY2xhc3NOYW1lPVwicm93XCI+PGRpdiBjbGFzc05hbWU9XCJ0ZWFtLW5hbWVcIj4ge3RpdGxlfSB7ZGF0YVtpbmRleF0udm9ybmFtZX0ge2RhdGFbaW5kZXhdLm5hY2huYW1lfSA8c3BhbiBjbGFzc05hbWU9XCJwcm9ub3Vuc1wiPiAoe2RhdGFbaW5kZXhdLnByb25vdW5zfSkgPC9zcGFuPiA8L2Rpdj4gIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IDxhIGhyZWY9e2RhdGFbaW5kZXhdLmxpbmtlZGludXJsfT4gPGltZyBjbGFzc05hbWU9XCJ0ZWFtLXNvY2lhbHNcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvbGlua2VkaW4ucG5nXCIgLz4gPC9hPjwvZGl2PiA8L2Rpdj47IFxuICAgIGxldCBmcm9udHBhcmFncmFwaCA9IDxkaXYgY2xhc3NOYW1lPXtcInJvdyBcIiArIGZyb250YnJpZWZjbGFzc30+IDxoNj5XaHkgSSB0b29rIHBhcnQgaW4gaUdFTTwvaDY+IHt3aHl9IDwvZGl2PiA7IFxuICAgIGxldCBmYWN0cyA9IDxkaXYgY2xhc3NOYW1lPXtmcm9udGJyaWVmY2xhc3N9PjxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPkFnZTo8L2I+IHtkYXRhW2luZGV4XS5hZ2V9IDwvZGl2PiA8YnIvPiB7aGVhZG9mfSA8ZGl2PiA8Yj5QYXJ0IG9mOjwvYj4ge2pvYnN9PC9kaXY+IDxici8+IDxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPk1ham9yOjwvYj4ge2RhdGFbaW5kZXhdLnN0dWRpZW5nYW5nfSA8L2Rpdj4gPGJyLz4gPGRpdiBjbGFzc05hbWU9XCJcIj4gPGI+U2NpZW50aWZpYyBpbnRlcmVzdHM6PC9iPiB7ZGF0YVtpbmRleF0uc2NpZW50aWZpY2ludGVyZXN0c30gPC9kaXY+IDwvZGl2PjsgXG4gICAgbGV0IGJhY2tidXR0b24gPSAgPGRpdiBjbGFzc05hbWU9e2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICAgPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwQmFjayh0aGVuYW1lKX0gY2xhc3NOYW1lPVwiZnJvbnRidXR0b25cIj5DbGljayBtZTwvYnV0dG9uPjwvZGl2PjwvZGl2PlxuICAgIGxldCBmdW5mYWN0bGlzdCA9IDxkaXYgY2xhc3NOYW1lPXtiYWNrYnJpZWZjbGFzc30gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PjxiPkZ1bmZhY3RzOiA8L2I+PHVsPiB7ZnVuZmFjdHN9PC91bD48L2Rpdj5cbiAgICBsZXQgZmF2bXVzaWMgPSA8PjxoNj5GYXZvdXJpdGUgbGFiIG11c2ljOjwvaDY+PHA+e2RhdGFbaW5kZXhdLmZhdmxhYm11c2ljfTwvcD48Lz5cbiAgICBsZXQgaG9iYmllbGlzdCA9IDw+PGg2PkhvYmJpZXM6PC9oNj4gPHA+IHtob2Jic30gPC9wPjwvPlxuICAgIGxldCBiYWNrcGFyYWdyYXBoID0gPGRpdiBjbGFzc05hbWU9e1wicm93IFwiK2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+e2Zhdm11c2ljfXtob2JiaWVsaXN0fTwvZGl2PiBcbiAgICBsZXQgcGFyYWdyYXBocyA9IDxkaXYgY2xhc3NOYW1lPVwic3RlY2tib2R5XCI+IHtmcm9udHBhcmFncmFwaH0ge2JhY2twYXJhZ3JhcGh9IDwvZGl2PlxuICAgIGxldCBmcm9udGJ1dHRvbiA9ICA8ZGl2IGNsYXNzTmFtZT17ZnJvbnRicmllZmNsYXNzfT4gPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwKHRoZW5hbWUpfSBjbGFzc05hbWU9XCJmcm9udGJ1dHRvblwiPkNsaWNrIG1lPC9idXR0b24+PC9kaXY+PC9kaXY+XG4gICAgbGV0IGNoYWxsZW5nZXMgPSA8ZGl2PiA8aDY+V2hhdCB3ZXJlIHRoZSBiaWdnZXN0IGNoYWxsZW5nZXM/PC9oNj4gPHVsPiB7Y2hhbGxzfSA8L3VsPiA8L2Rpdj5cbiAgICBsZXQgYmVzdHBhcnQgPSA8ZGl2PiA8aDY+V2hhdCB3ZXJlIHRoZSBiZXN0IHBhcnRzPzwvaDY+IDx1bD4ge2Jlc3RzfSA8L3VsPjwvZGl2PiA7IFxuICAgIGxldCBkZXRhaWxzID0gPGRpdj4gPGJyLz4ge2NoYWxsZW5nZXN9IHtiZXN0cGFydH0gPC9kaXY+XG4gICAgbGV0IGhvbGUgPSBcbiAgICAgICAgICAgIDxkaXY+IFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBzdGVja2JyaWVmXCI+IHtwaWN0dXJlfSAgXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNVwiPiBcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+IHtuYW1lcm93fVxuICAgICAgICAgICAgICAgICAgPGhyLz4gIFxuICAgICAgICAgICAgICAgICAgPC9kaXY+ICAgXG4gICAgICAgICAgICAgICAgICB7cGFyYWdyYXBoc30gICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00IGJyaWVmZmFjdHNcIj5cbiAgICAgICAgICAgICAgICAgIDxici8+PGJyLz4gIHtmdW5mYWN0bGlzdH0ge2ZhY3RzfSBcbiAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPC9kaXY+IDxkaXYgY2xhc3NOYW1lPVwicm93IHN0ZWNrYnJpZWZidXR0b25yb3dcIiBzdHlsZT17e21hcmdpblRvcDogXCIxcmVtXCIsIG1hcmdpbkJvdHRvbTogXCIxcmVtXCJ9fT4gPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPiB7ZnJvbnRidXR0b259IHtiYWNrYnV0dG9ufTwvZGl2PiAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48ZGV0YWlscyBjbGFzc05hbWU9e2Zyb250YnJpZWZjbGFzc30gPjxzdW1tYXJ5PiA8Yj5QZXJzb25hbCBtb3RpdmF0aW9uIGFuZCBjaGFsbGVuZ2VzPC9iPiA8L3N1bW1hcnk+PGRpdj4ge2RldGFpbHN9PC9kaXY+PC9kZXRhaWxzPjwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgbGV0IHdob2xlID0gPGRpdiAgY2xhc3NOYW1lPXtcInN0ZWNrYnJpZWYtYm94XCJ9IGlkPXt0aGVuYW1lfT4ge2hvbGV9IDwvZGl2PjsgXG4gICAgYnJpZWZlLnB1c2god2hvbGUpOyBcbiAgfVxuICByZXR1cm4gYnJpZWZlOyBcbn1cblxuZnVuY3Rpb24gY3JlYXRlUGlTdGVja2JyaWVmZShkYXRhOiBBcnJheTxTdGVja2JyaWVmSW50ZXJmYWNlPil7XG4gIGxldCBicmllZmU6IEpTWC5FbGVtZW50W10gID0gW11cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGRhdGEubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgbGV0IHRoZW5hbWUgPSBcIlwiICsgZGF0YVtpbmRleF0udm9ybmFtZSArIGRhdGFbaW5kZXhdLm5hY2huYW1lOyBcbiAgICAvLyBDb25kaXRpb25hbCBoZWFkIG9mXG4gICAgdmFyIGhlYWRvZiA9IDw+PC8+OyBcbiAgICBpZihkYXRhW2luZGV4XS5oZWFkb2Ype1xuICAgICAgdmFyIGhlYWRvZiA9IDw+PGRpdiBjbGFzc05hbWU9XCJcIj4gPGI+aUdFTS1Kb2I6PC9iPiB7ZGF0YVtpbmRleF0uaGVhZG9mfSA8L2Rpdj4gPGJyLz48Lz47IFxuICAgIH1cbiAgICAvLyBKb2JzXG4gICAgdmFyIGpvYnMgPSBcIlwiOyBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGkgKyAxID09IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoICkge1xuICAgICAgICAgIGpvYnMgKz0gXCIgYW5kIFwiICsgZGF0YVtpbmRleF0uaWdlbWpvYltpXTtcbiAgICAgICAgfVxuICAgICAgICBlbHNle1xuICAgICAgICAgIGpvYnMgKz0gIGRhdGFbaW5kZXhdLmlnZW1qb2JbaV0gKyBcIiwgXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gRnVuZmFjdHMgXG4gICAgdmFyIGZ1bmZhY3RzOiBKU1guRWxlbWVudFtdICA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uZnVuZmFjdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGZ1bmZhY3RzLnB1c2goPGxpIGtleT17YGEke2l9YH0+IHtkYXRhW2luZGV4XS5mdW5mYWN0c1tpXX0gPC9saT4pOyBcbiAgICB9XG4gICAgLy8gSG9iYmllc1xuICAgIHZhciBob2JicyA9IFwiXCI7IFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uaG9iYmllcy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKGkgKyAxID09IGRhdGFbaW5kZXhdLmhvYmJpZXMubGVuZ3RoICkge1xuICAgICAgICBob2JicyArPSBcIiBhbmQgXCIgKyBkYXRhW2luZGV4XS5ob2JiaWVzW2ldO1xuICAgICAgfVxuICAgICAgZWxzZSBpZihpICsgMiA9PSBkYXRhW2luZGV4XS5ob2JiaWVzLmxlbmd0aCl7XG4gICAgICAgIGhvYmJzICs9ICBkYXRhW2luZGV4XS5ob2JiaWVzW2ldXG4gICAgICAgIC8vY29uc29sZS5sb2coYGJlaSBpKzIgaXN0IGVzICR7ZGF0YVtpbmRleF0uaG9iYmllc1tpXX1gKVxuICAgICAgfVxuICAgICAgZWxzZXtcbiAgICAgICAgaG9iYnMgKz0gIGRhdGFbaW5kZXhdLmhvYmJpZXNbaV0gKyBcIiwgXCI7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFdoeWlnZW1cbiAgICB2YXIgd2h5OiBKU1guRWxlbWVudFtdICA9IFtdOyBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLndoeWlnZW0ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHdoeS5wdXNoKDxwPntkYXRhW2luZGV4XS53aHlpZ2VtW2ldfTwvcD4pOyBcbiAgICB9XG4gICAgLy9UaXRsZVxuICAgIGxldCB0aXRsZSA9IFwiXCI7IFxuICAgIGlmIChkYXRhW2luZGV4XS50aXRsZSkge1xuICAgICAgdGl0bGUgPSBkYXRhW2luZGV4XS50aXRsZSE7IFxuICAgIH1cbiAgICAvLyBjaGFsbGVuZ2VzXG4gICAgbGV0IGNoYWxsczogSlNYLkVsZW1lbnRbXSAgPSBbXTsgIFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uYmlnZ2VzdGNoYWxsZW5nZS5sZW5ndGg7IGkrKykge1xuICAgICAgY2hhbGxzLnB1c2goPGxpIGtleT17YGIke2l9YH0+e2RhdGFbaW5kZXhdLmJpZ2dlc3RjaGFsbGVuZ2VbaV19PC9saT4pOyBcbiAgICB9XG4gICAgLy8gYmVzdHBhcnRzXG4gICAgbGV0IGJlc3RzOiBKU1guRWxlbWVudFtdICA9IFtdOyAgXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS5iZXN0cGFydC5sZW5ndGg7IGkrKykge1xuICAgICAgYmVzdHMucHVzaCg8bGkga2V5PXtgYyR7aX1gfT57ZGF0YVtpbmRleF0uYmVzdHBhcnRbaV19PC9saT4pOyBcbiAgICB9XG4gICAgbGV0IGZyb250YnJpZWZjbGFzcyA9IFwiZnJvbnRicmllZiBmcm9udGJyaWVmXCIrdGhlbmFtZTsgXG4gICAgbGV0IGJhY2ticmllZmNsYXNzID0gXCJiYWNrYnJpZWYgYmFja2JyaWVmXCIrdGhlbmFtZTtcblxuICAgIGxldCBwaWN0dXJlID0gPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBsbnAgY2VudGVyXCI+PGltZyBzcmM9e2RhdGFbaW5kZXhdLnp3ZWl0Zm90b30gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19IGNsYXNzTmFtZT17XCJpbWcgdGVhbS1pbWcgXCIrYmFja2JyaWVmY2xhc3N9Lz48aW1nIHNyYz17ZGF0YVtpbmRleF0uaGF1cHRmb3RvfSBjbGFzc05hbWU9e1wiaW1nIHRlYW0taW1nIFwiK2Zyb250YnJpZWZjbGFzc30+PC9pbWc+PC9kaXY+IFxuICAgIGxldCBuYW1lcm93ID0gPGRpdiBjbGFzc05hbWU9XCJyb3dcIj48ZGl2IGNsYXNzTmFtZT1cInRlYW0tbmFtZVwiPiB7dGl0bGV9IHtkYXRhW2luZGV4XS52b3JuYW1lfSB7ZGF0YVtpbmRleF0ubmFjaG5hbWV9IDxzcGFuIGNsYXNzTmFtZT1cInByb25vdW5zXCI+ICh7ZGF0YVtpbmRleF0ucHJvbm91bnN9KSA8L3NwYW4+IDwvZGl2PiAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gPGEgaHJlZj17ZGF0YVtpbmRleF0ubGlua2VkaW51cmx9PiA8aW1nIGNsYXNzTmFtZT1cInRlYW0tc29jaWFsc1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9saW5rZWRpbi5wbmdcIiAvPiA8L2E+PC9kaXY+IDwvZGl2PjsgXG4gICAgbGV0IGZyb250cGFyYWdyYXBoID0gPGRpdiBjbGFzc05hbWU9e1wicm93IFwiICsgZnJvbnRicmllZmNsYXNzfT4gPGg2PldoeSBJIHRvb2sgcGFydCBpbiBpR0VNPC9oNj4ge3doeX0gPC9kaXY+IDsgXG4gICAgbGV0IGZhY3RzID0gPGRpdiBjbGFzc05hbWU9e2Zyb250YnJpZWZjbGFzc30+PGRpdiBjbGFzc05hbWU9XCJcIj4gPGI+QWdlOjwvYj4ge2RhdGFbaW5kZXhdLmFnZX0gPC9kaXY+IDxici8+IHtoZWFkb2Z9IDxkaXY+IDxiPkFmZmlsaWF0aW9uOjwvYj4ge2pvYnN9PC9kaXY+IDxici8+IDxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPlJlZ3VsYXIgSm9iOjwvYj4ge2RhdGFbaW5kZXhdLnN0dWRpZW5nYW5nfSA8L2Rpdj4gPGJyLz4gPGRpdiBjbGFzc05hbWU9XCJcIj4gPGI+U2NpZW50aWZpYyBpbnRlcmVzdHM6PC9iPiB7ZGF0YVtpbmRleF0uc2NpZW50aWZpY2ludGVyZXN0c30gPC9kaXY+IDwvZGl2PjsgXG4gICAgbGV0IGJhY2tidXR0b24gPSAgPGRpdiBjbGFzc05hbWU9e2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICAgPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwQmFjayh0aGVuYW1lKX0gY2xhc3NOYW1lPVwiZnJvbnRidXR0b25cIj5DbGljayBtZTwvYnV0dG9uPjwvZGl2PjwvZGl2PlxuICAgIGxldCBmdW5mYWN0bGlzdCA9IDxkaXYgY2xhc3NOYW1lPXtiYWNrYnJpZWZjbGFzc30gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PjxiPkZ1bmZhY3RzOiA8L2I+PHVsPiB7ZnVuZmFjdHN9PC91bD48L2Rpdj5cbiAgICBsZXQgZmF2bXVzaWMgPSA8PjxoNj5GYXZvdXJpdGUgbGFiIG11c2ljOjwvaDY+PHA+e2RhdGFbaW5kZXhdLmZhdmxhYm11c2ljfTwvcD48Lz5cbiAgICBsZXQgaG9iYmllbGlzdCA9IDw+PGg2PkhvYmJpZXM6PC9oNj4gPHA+IHtob2Jic30gPC9wPjwvPlxuICAgIGxldCBiYWNrcGFyYWdyYXBoID0gPGRpdiBjbGFzc05hbWU9e1wicm93IFwiK2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+e2Zhdm11c2ljfXtob2JiaWVsaXN0fTwvZGl2PiBcbiAgICBsZXQgcGFyYWdyYXBocyA9IDxkaXYgY2xhc3NOYW1lPVwic3RlY2tib2R5XCI+IHtmcm9udHBhcmFncmFwaH0ge2JhY2twYXJhZ3JhcGh9IDwvZGl2PlxuICAgIGxldCBmcm9udGJ1dHRvbiA9ICA8ZGl2IGNsYXNzTmFtZT17ZnJvbnRicmllZmNsYXNzfT4gPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwKHRoZW5hbWUpfSBjbGFzc05hbWU9XCJmcm9udGJ1dHRvblwiPkNsaWNrIG1lPC9idXR0b24+PC9kaXY+PC9kaXY+XG4gICAgbGV0IGNoYWxsZW5nZXMgPSA8ZGl2PiA8aDY+V2hhdCB3ZXJlIHRoZSBiaWdnZXN0IGNoYWxsZW5nZXM/PC9oNj4gPHVsPiB7Y2hhbGxzfSA8L3VsPiA8L2Rpdj5cbiAgICBsZXQgYmVzdHBhcnQgPSA8ZGl2PiA8aDY+V2hhdCB3ZXJlIHRoZSBiZXN0IHBhcnRzPzwvaDY+IDx1bD4ge2Jlc3RzfSA8L3VsPjwvZGl2PiA7IFxuICAgIGxldCBkZXRhaWxzID0gPGRpdj4gPGJyLz4ge2NoYWxsZW5nZXN9IHtiZXN0cGFydH0gPC9kaXY+XG4gICAgbGV0IGhvbGUgPSBcbiAgICAgICAgICAgIDxkaXY+IFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBzdGVja2JyaWVmXCI+IHtwaWN0dXJlfSAgXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNVwiPiBcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+IHtuYW1lcm93fVxuICAgICAgICAgICAgICAgICAgPGhyLz4gIFxuICAgICAgICAgICAgICAgICAgPC9kaXY+ICAgXG4gICAgICAgICAgICAgICAgICB7cGFyYWdyYXBoc30gICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00IGJyaWVmZmFjdHNcIj5cbiAgICAgICAgICAgICAgICAgIDxici8+PGJyLz4gIHtmdW5mYWN0bGlzdH0ge2ZhY3RzfSBcbiAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPC9kaXY+IDxkaXYgY2xhc3NOYW1lPVwicm93IHN0ZWNrYnJpZWZidXR0b25yb3dcIiBzdHlsZT17e21hcmdpblRvcDogXCIxcmVtXCIsIG1hcmdpbkJvdHRvbTogXCIxcmVtXCJ9fT4gPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPiB7ZnJvbnRidXR0b259IHtiYWNrYnV0dG9ufTwvZGl2PiAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48ZGV0YWlscyBjbGFzc05hbWU9e2Zyb250YnJpZWZjbGFzc30gPjxzdW1tYXJ5PiA8Yj5QZXJzb25hbCBtb3RpdmF0aW9uIGFuZCBjaGFsbGVuZ2VzPC9iPiA8L3N1bW1hcnk+PGRpdj4ge2RldGFpbHN9PC9kaXY+PC9kZXRhaWxzPjwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgbGV0IHdob2xlID0gPGRpdiAgY2xhc3NOYW1lPXtcInN0ZWNrYnJpZWYtYm94XCJ9IGlkPXt0aGVuYW1lfT4ge2hvbGV9IDwvZGl2PjsgXG4gICAgYnJpZWZlLnB1c2god2hvbGUpOyBcbiAgfVxuICByZXR1cm4gYnJpZWZlOyBcbn1cblxuXG5cbmZ1bmN0aW9uIGZsaXAoZWxlbWVudDogc3RyaW5nKXtcbiAgY29uc3QgZmxpcHAgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xuICAgIGxldCBlbGVtZW50c1RvSGlkZSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJmcm9udGJyaWVmXCIrZWxlbWVudCk7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnRzVG9IaWRlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIChlbGVtZW50c1RvSGlkZVtpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xuICAgICAgfVxuICAgIGxldCBlbGVtZW50c1RvRmluZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJiYWNrYnJpZWZcIitlbGVtZW50KTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnRzVG9GaW5kLmxlbmd0aDsgaSsrKSB7XG4gICAgICAoZWxlbWVudHNUb0ZpbmRbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBmbGlwcDsgXG59XG5cbmZ1bmN0aW9uIGZsaXBCYWNrKGVsZW1lbnQ6IHN0cmluZyl7XG4gIGNvbnN0IGZsaXBwYmFjayA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgbGV0IGVsZW1lbnRzVG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImJhY2ticmllZlwiK2VsZW1lbnQpO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbGVtZW50c1RvSGlkZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAoZWxlbWVudHNUb0hpZGVbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICAgIH1cbiAgICBsZXQgZWxlbWVudHNUb0ZpbmQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiZnJvbnRicmllZlwiK2VsZW1lbnQpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZWxlbWVudHNUb0ZpbmQubGVuZ3RoOyBpKyspIHtcbiAgICAgIChlbGVtZW50c1RvRmluZFtpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZsaXBwYmFjazsgIFxufSIsICJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEJhY2tVcCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IEgyIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IEJsb2NrUXVvdGVCIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvUXVvdGVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBBdHRyaWJ1dGlvbnMoKSB7XG4gIGNvbnN0IHRlYW1JRCA9IGltcG9ydC5tZXRhLmVudi5WSVRFX1RFQU1fSUQ7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmdW5jdGlvbiBsaXN0ZW5Ub0lmcmFtZUhlaWdodChlOiBNZXNzYWdlRXZlbnQpIHtcbiAgICAgIGlmIChlLm9yaWdpbiA9PT0gXCJodHRwczovL3RlYW1zLmlnZW0ub3JnXCIpIHtcbiAgICAgICAgY29uc3QgeyB0eXBlLCBkYXRhIH0gPSBKU09OLnBhcnNlKGUuZGF0YSk7XG4gICAgICAgIGlmICh0eXBlID09PSBcImlnZW0tYXR0cmlidXRpb24tZm9ybVwiKSB7XG4gICAgICAgICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiaWdlbS1hdHRyaWJ1dGlvbi1mb3JtXCIpO1xuICAgICAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLmhlaWdodCA9IGAke2RhdGEgKyAxMDB9cHhgO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgbGlzdGVuVG9JZnJhbWVIZWlnaHQpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgbGlzdGVuVG9JZnJhbWVIZWlnaHQpO1xuICAgIH07XG4gIH0sIFtdKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBtdC00XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICA8SDIgdGV4dD1cIk9uZSBpR0VNIHByb2plY3QgLSBNaWxsaW9uIHBlb3BsZSBiZWhpbmRcIi8+XG4gICAgICAgICA8QmxvY2tRdW90ZUIgdGV4dD1cIldpdGggYSBsb3Qgb2YgcmVzcG9uc2liaWxpdHkgY29tZXMgYSBiaWdnZXIgd29ya2xvYWQgYW5kIGV2ZW4gbW9yZSBwZW9wbGUgd29ya2luZyB0b2dldGhlclwiIGNpdGU9XCJmb3JtZXIgaUdFTWVyXCIvPlxuICAgICAgICA8cD5XZSB3b3VsZCBsaWtlIHRvIHRoYW5rIGV2ZXJ5b25lIHdobyBzdXBwb3J0ZWQgb3VyIHRlYW0gYW5kIHByb3ZpZGVkIGFzc2lzdGFuY2UsIHJlc291cmNlcyBvciB1c2VmdWwgdGlwcyBpbiBvcmRlciB0byBmdWxmaWxsIG91ciBwcm9qZWN0LjwvcD5cbiAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBvdmVydmlldyBsaXN0cyBhbGwgdGVhbSBtZW1iZXJzLCB3aG8gaGF2ZSBiZWVuIGluc3RydW1lbnRhbCBpbiBvdXIgaUdFTSBwcm9qZWN0LiBXZSBhcmUgcHJvdWQgb2Ygb3VyIHdvcmsgYW5kIGxvb2sgZm9yd2FyZCB0byB3aGF0IGF3YWl0cyB1cyBhZnRlciB0aGUgaUdFTSBjb21wZXRpdGlvbi48L3A+XG4gICAgICAgIDxwPldlIHdvdWxkIGxpa2UgdG8gdGhhbmsgb3VyIHByaW5jaXBhbCBpbnZlc3RpZ2F0b3JzLCBpbnN0cnVjdG9yIGFuZCBzdXBlcnZpc29ycyBmb3IgZ3VpZGluZyB1cyBhbG9uZyB0aGUgd2F5IGFuZCBoZWxwaW5nIHRvIHNoYXBlIG91ciBwcm9qZWN0LjwvcD5cbiAgICAgICAgPHA+V2UgY29udHJpYnV0ZWQgYWxsIGV4dGVybmFsIHBhcnRuZXJzIHRoYXQgaGF2ZSBpbmZsdWVuY2VkIHRoZSBwcm9qZWN0IGJlbG93LiBXZSB3b3VsZCBsaWtlIHRvIHRoYW5rIGFsbCBpR0VNIHRlYW1zLCBmb3JtZXIgaUdFTSB0ZWFtIG1lbWJlcnMgb2YgdGhlIHVuaXZlcnNpdHkgb2YgQmllbGVmZWxkIG9yIGV4dGVybmFsIHRlYW0gbWVtYmVycywgY29udHJhY3RvcnMsIHRlY2huaWNpYW5zLCBsYWJvcmF0b3J5IHN0dWRlbnRzLCBwb3N0LWRvY3MgYW5kIGNvbGxhYm9yYXRvcnMgZm9yIHRoZWlyIHN1cHBvcnQgaW4gYW55IGZvcm0uIDwvcD5cbiAgICAgICAgPHA+V2Ugd291bGQgYWxzbyBsaWtlIHRvIHRoYW5rIG91ciBzcG9uc29ycywgd2hvIGhhdmUgc3VwcG9ydGVkIHVzIHdpdGggdGhlaXIgZ2VuZXJvdXMgZG9uYXRpb25zLiBGaXJzdCBhbmQgZm9yZW1vc3QsIEJpZWxlZmVsZCBVbml2ZXJzaXR5LCBhbmQgcGFydGljdWxhcmx5IFByb2YuIERyLiBBbGZyZWQgUFx1MDBGQ2hsZXIsIHdobyByZXZpdmVkIGlHRU0gYW5kIGFsbG93cyB1cyB0byBwYXJ0aWNpcGF0ZSBpbiB0aGlzIHllYXIncyBjb21wZXRpdGlvbi4gQWRkaXRpb25hbGx5LCB3ZSBhcmUgdGhhbmtmdWwgZm9yIHRoZSBzdXBwb3J0IGFuZCBmZWVkYmFjayBvZiB0aGUgc3RlZXJpbmcgY29tbWl0dGVlLjwvcD5cbiAgICAgICAgPHA+SW4gYWRkaXRpb24gdG8gY29vcGVyYXRpb24gYW5kIGNvbGxhYm9yYXRpdmUgd29yaywgdGltZSBtYW5hZ2VtZW50IGZvY3VzZXMgb24gZWZmaWNpZW50IG9wZXJhdGlvbiBvZiBldmVyeSBpR0VNIHByb2plY3QuIFRoZSBmb2xsb3dpbmcgbGlzdCBvZiBvdXIgcHJvamVjdCB0aW1lbGluZSBzZXJ2ZXMgYXMgYW4gb3JpZW50YXRpb24gYW5kIGdpdmVzIGFuIG92ZXJ2aWV3IG9mIHRoZSB0ZW1wb3JhbCBzdGFnZ2VyaW5nIG9mIHRoZSBwcm9qZWN0LiBXZSB3b3VsZCBsaWtlIHRvIHRoYW5rIGFsbCBwYXJ0aWNpcGFudHMgZm9yIHRoZSBjb29yZGluYXRpb24gb2Ygb3VyIGFjdGl2aXRpZXM8L3A+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxici8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxpZnJhbWVcbiAgICAgICAgc3R5bGU9e3sgd2lkdGg6IFwiMTAwJVwiIH19XG4gICAgICAgIGlkPVwiaWdlbS1hdHRyaWJ1dGlvbi1mb3JtXCJcbiAgICAgICAgc3JjPXtgaHR0cHM6Ly90ZWFtcy5pZ2VtLm9yZy93aWtpLyR7dGVhbUlEfS9hdHRyaWJ1dGlvbnNgfVxuICAgICAgLz5cbiAgICAgIDxCYWNrVXAvPiBcbiAgICA8Lz5cbiAgKTtcbn1cbiIsICJcblxuZXhwb3J0IGZ1bmN0aW9uIEJsb2NrUXVvdGUoe3RleHQsIGNpdGV9OiB7dGV4dDogc3RyaW5nOyBjaXRlOiBzdHJpbmd9KXtcbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmxvY2txdW90ZS13cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3NOYW1lPVwiYmxvY2staDJcIj5cbiAgICAgICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgICAgICA8aDQgY2xhc3NOYW1lPVwiYmxvY2staDRcIj48ZW0+e2NpdGV9PC9lbT48L2g0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBCbG9ja1F1b3RlQih7dGV4dCwgY2l0ZSwgaWR9OiB7dGV4dDogc3RyaW5nOyBjaXRlOiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XG4gICAgaWYgKGlkKXtcbiAgICAgICAgbGV0IGggPSBcIiNcIiArIHtpZH1cbiAgICAgICAgcmV0dXJuKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJibG9ja3F1b3RlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJibG9jay1oMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3RleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzc05hbWU9XCJibG9jay1oNFwiPjxlbT57Y2l0ZX08L2VtPiA8YSBocmVmPXtofT48c3VwPntpZH08L3N1cD48L2E+PC9oND5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICApICBcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgICAgcmV0dXJuKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJibG9ja3F1b3RlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgICAgICAgICA8aDQ+PGVtPntjaXRlfTwvZW0+PC9oND5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKVxuICAgIH1cbiAgICBcbn1cblxuXG4vKiA8c3Bhbj5XaW5zdG9uIENodXJjaGlsbDwvc3Bhbj5cbiAgPGJsb2NrcXVvdGU+XG4gICAgPHA+PGk+JmxkcXVvO1N1Y2Nlc3MgY29uc2lzdHMgb2YgZ29pbmcgZnJvbSBmYWlsdXJlIHRvIGZhaWx1cmUgd2l0aG91dCBsb3NzIG9mIGVudGh1c2lhc20uJnJkcXVvOyA8L2k+PC9wPlxuICA8L2Jsb2NrcXVvdGU+ICovIiwgImltcG9ydCB7IEJ1dHRvbk9uZSwgRG93bmxvYWRMaW5rIH0gZnJvbSBcIi4vQnV0dG9uc1wiXG5cblxuZXhwb3J0IGZ1bmN0aW9uIFBERih7bGluaywgbmFtZX06IHtsaW5rOiBzdHJpbmcsIG5hbWU6c3RyaW5nfSl7XG4gICAgcmV0dXJuKFxuICAgICAgICBcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpZnJhbWUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8aWZyYW1lIHNyYz17bGlua30gIHRpdGxlPVwidGl0bGVcIiBjbGFzc05hbWU9J29uZS1wZGYtbGluZSBzbWFsbC1pJz5cbiAgICAgICAgICAgIDwvaWZyYW1lPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgZG93bmxvYWQtY29sJz5cbiAgICAgICAgICAgIDxEb3dubG9hZExpbmsgdXJsPXtsaW5rfSBmaWxlTmFtZT17bmFtZX0gPjwvRG93bmxvYWRMaW5rPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICBcbiAgICApXG59XG5leHBvcnQgZnVuY3Rpb24gVHdvTGluZVBERih7bGluaywgbmFtZX06IHtsaW5rOiBzdHJpbmcsIG5hbWU6c3RyaW5nfSl7XG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgPGlmcmFtZSBzcmM9e2xpbmt9IHdpZHRoPVwiMTAwJVwiIHRpdGxlPVwidGl0bGVcIiBjbGFzc05hbWU9J3R3by1wZGYtbGluZSBzbWFsbC1pJz5cbiAgICAgICAgICAgICAgICA8L2lmcmFtZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGRvd25sb2FkLWNvbCc+XG4gICAgICAgICAgICAgICAgPERvd25sb2FkTGluayB1cmw9e2xpbmt9IGZpbGVOYW1lPXtuYW1lfSA+PC9Eb3dubG9hZExpbms+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBCRkhwZGYoKXtcbiAgICByZXR1cm4oXG4gICAgPD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiNXZoXCIsIG1hcmdpbkJvdHRvbTogXCI1dmhcIn19PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJGbHllcnNcIiBvcGVuPVwiZmx5ZXJzXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIlByZXNlbnRhdGlvbnNcIiBvcGVuPVwicHJlc2lzXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIkp1ZGdpbmcgRm9ybVwiIG9wZW49XCJmb3JtXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PiBcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgY3ljbGV0YWJcIiBpZD1cImZseWVyc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCAgJz5cbiAgICAgICAgICAgICAgICA8VHdvTGluZVBERiBsaW5rPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2JmaC1mbHllci1ldXJvcGVhbi1tZWV0dXAucGRmJyBuYW1lPVwiYmZoLWZseWVyLWV1cm9wZWFuLW1lZXR1cC5wZGZcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3NlcGVyYXRvci0yIGNvbC0yJz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sICAnPlxuICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvcG9zdGJmaC1icm9zY2gtcmUtY29tcHJlc3NlZC5wZGYnIG5hbWU9XCJiZmgtbWVldC11cC1ndWlkZWxpbmUucGRmXCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBjeWNsZXRhYlwiIGlkPVwicHJlc2lzXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICA8VHdvTGluZVBERiBsaW5rPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2JmaC1wcmVzZW50YXRpb24tYmllbGVmZWxkLnBkZicgbmFtZT1cImJmaC1mbHllci1ldXJvcGVhbi1tZWV0dXAucGRmXCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdzZXBlcmF0b3ItMiBjb2wtMic+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvYmZoLXN0dWRpY29tLXByZXNlbnRhdGlvbi5wZGYnIG5hbWU9XCJiZmgtZmx5ZXItZXVyb3BlYW4tbWVldHVwLnBkZlwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbnsvKiAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgIDxQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9iZmgtcG9zdGVyLWJpZWxlZmVsZC5wZGYnIG5hbWU9XCJiZmgtbWVldC11cC1ndWlkZWxpbmUucGRmXCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PiAqL31cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgY3ljbGV0YWJcIiBpZD1cImZvcm1cIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgXG4gICAgICAgIFxuICAgIDwvPlxuICAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEd1aWRlUERGKCl7XG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgIDxQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9iZmgtbWVldC11cC1ndWlkZWxpbmUucGRmJyBuYW1lPVwiYmZoLW1lZXQtdXAtZ3VpZGVsaW5lLnBkZlwiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgIClcbn0iLCAiaW1wb3J0IHsgQkZITW9yZUJ1dHRvbiB9IGZyb20gXCIuL0J1dHRvbnNcIjtcblxuXG4gXG5cbmludGVyZmFjZSBJdGVtUHJvcHMge1xuICAgIHRleHQ/OiBzdHJpbmc7IFxuICAgIGhlYWRpbmc/OiBzdHJpbmc7IFxuICAgIHZvcm5hbWU/OiBzdHJpbmcsIFxuICAgIHZvcm5hbWUyPzogc3RyaW5nLCBcbiAgICBuYWNobmFtZT86IHN0cmluZyxcbiAgICBuYWNobmFtZTI/OiBzdHJpbmcsXG4gICAgZGF0ZTogc3RyaW5nICxcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAgIHRhZzogc3RyaW5nLCBcbiAgICBjb2xvcjogc3RyaW5nLFxuICAgIGNzc3RhZzogc3RyaW5nLFxuICAgIHVybDogc3RyaW5nLFxuICAgIHVybDI/OiBzdHJpbmdcbn1cbmludGVyZmFjZSBOb0J1dHRJdGVtUHJvcHMge1xuICAgIHRleHQ/OiBzdHJpbmc7IFxuICAgIGhlYWRpbmc/OiBzdHJpbmc7IFxuICAgIHZvcm5hbWU/OiBzdHJpbmcsIFxuICAgIHZvcm5hbWUyPzogc3RyaW5nLCBcbiAgICBuYWNobmFtZT86IHN0cmluZyxcbiAgICBuYWNobmFtZTI/OiBzdHJpbmcsXG4gICAgZGF0ZTogc3RyaW5nICxcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAgIHRhZzogc3RyaW5nLCBcbiAgICBjb2xvcjogc3RyaW5nLFxuICAgIHVybDogc3RyaW5nLFxuICAgIHVybDI/OiBzdHJpbmdcbn1cblxuXG5cbmV4cG9ydCBjb25zdCBUaW1lbGluZUl0ZW1QaWMgID0gKHsgaGVhZGluZywgdGV4dCwgdm9ybmFtZSwgbmFjaG5hbWUsIGRhdGUsIHRhZywgY29sb3IsIGNoaWxkcmVuLCBjc3N0YWcsIHVybCB9Okl0ZW1Qcm9wcykgPT4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtaXRlbVwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW0tY29udGVudFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX0+XG4gICAgICAgICAgICAgICAge3RhZ31cbiAgICAgICAgICAgIDwvc3Bhbj4gXG4gICAgICAgICAgICA8dGltZT57ZGF0ZX08L3RpbWU+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmUgY2xhc3NOYW1lPVwic25pcDExMTMgcmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17dXJsfSBhbHQ9e25hY2huYW1lfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzPnt2b3JuYW1lfSA8YnIvPiA8c3Bhbj57bmFjaG5hbWV9PC9zcGFuPjwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHRleHQtMS1iZmhcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1PntoZWFkaW5nfTwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIlwiPnt0ZXh0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPEJGSE1vcmVCdXR0b24gaXQ9e2Nzc3RhZ30+PC9CRkhNb3JlQnV0dG9uPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwiY2lyY2xlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4pO1xuXG5leHBvcnQgY29uc3QgVGltZWxpbmVJdGVtVHdvUGljICA9ICh7IHVybCwgdXJsMiwgaGVhZGluZywgdGV4dCwgdm9ybmFtZSwgbmFjaG5hbWUsIHZvcm5hbWUyLCBuYWNobmFtZTIsIGRhdGUsIHRhZywgY29sb3IsIGNoaWxkcmVuLCBjc3N0YWcgfTpJdGVtUHJvcHMpID0+IChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW1cIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRhZ1wiIHN0eWxlPXt7IGJhY2tncm91bmQ6IGNvbG9yIH19PlxuICAgICAgICAgICAgICAgIHt0YWd9XG4gICAgICAgICAgICA8L3NwYW4+IFxuICAgICAgICAgICAgPHRpbWU+e2RhdGV9PC90aW1lPlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGNsYXNzTmFtZT1cInNuaXAxMTEzIHJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3VybH0gYWx0PXtuYWNobmFtZX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz57dm9ybmFtZX0gPGJyLz4gPHNwYW4+e25hY2huYW1lfTwvc3Bhbj48L2gzPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZSBjbGFzc05hbWU9XCJzbmlwMTExMyByZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXt1cmwyfSBhbHQ9e25hY2huYW1lMn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz57dm9ybmFtZTJ9IDxici8+IDxzcGFuPntuYWNobmFtZTJ9PC9zcGFuPjwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHRleHQtMS1iZmhcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1PntoZWFkaW5nfTwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIlwiPnt0ZXh0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPEJGSE1vcmVCdXR0b24gaXQ9e2Nzc3RhZ30+PC9CRkhNb3JlQnV0dG9uPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwiY2lyY2xlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4pO1xuXG5leHBvcnQgY29uc3QgVGltZWxpbmVJdGVtICA9ICh7IGRhdGUsIHRhZywgY29sb3IsIGNoaWxkcmVuLCBjc3N0YWcgfTpJdGVtUHJvcHMpID0+IChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW1cIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRhZ1wiIHN0eWxlPXt7IGJhY2tncm91bmQ6IGNvbG9yIH19PlxuICAgICAgICAgICAgICAgIHt0YWd9XG4gICAgICAgICAgICA8L3NwYW4+IFxuICAgICAgICAgICAgPHRpbWU+e2RhdGV9PC90aW1lPlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8QkZITW9yZUJ1dHRvbiBpdD17Y3NzdGFnfT48L0JGSE1vcmVCdXR0b24+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJjaXJjbGVcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbik7XG5leHBvcnQgY29uc3QgTm9CdXR0VGltZWxpbmVJdGVtICA9ICh7IGRhdGUsIHRhZywgY29sb3IsIGNoaWxkcmVuIH06Tm9CdXR0SXRlbVByb3BzKSA9PiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtaXRlbS1jb250ZW50XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0YWdcIiBzdHlsZT17eyBiYWNrZ3JvdW5kOiBjb2xvciB9fT5cbiAgICAgICAgICAgICAgICB7dGFnfVxuICAgICAgICAgICAgPC9zcGFuPiBcbiAgICAgICAgICAgIDx0aW1lPntkYXRlfTwvdGltZT5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwiY2lyY2xlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4pO1xuXG5leHBvcnQgY29uc3QgUGFuZWxUaW1lbGluZUl0ZW0gID0gKCkgPT4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtaXRlbVwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW0tY29udGVudFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogXCJ2YXIoLS1saWdodGJsdWUpXCIgfX0+XG4gICAgICAgICAgICAgICAgVGFsa3NcbiAgICAgICAgICAgIDwvc3Bhbj4gXG4gICAgICAgICAgICA8dGltZT5QYW5lbCBEaXNjdXNzaW9uPC90aW1lPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyIHBhbmVsLXRhbGstZ2FsbGVyeVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXJvdW5kLXBhbmVsXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy90cmFjaS5qcGdcIiBhbHQ9XCJwci1zYW1wbGUxXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbCBtaWRkbGVcIj5UYWNpIDxici8+IEhhZGRvY2s8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1yb3VuZC1wYW5lbFwiICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL2FuaXRhLXNpZnVhbnRlcy5wbmdcIiBhbHQ9XCJwci1zYW1wbGUxXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbCBtaWRkbGVcIj5BbmEgPGJyLz4gU2lmdWVudGVzPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctcm91bmQtcGFuZWxcIiAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9vbGl2aWEucG5nXCIgYWx0PVwicHItc2FtcGxlMVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwgbWlkZGxlXCI+T2xpdmlhIDxici8+IE1vem9sZXdza2E8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1yb3VuZC1wYW5lbFwiICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9taWRkZW5kb3JmLmpwZWdcIiBhbHQ9XCJwci1zYW1wbGUxXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbCBtaWRkbGVcIj5MYXNzZSA8YnIvPiBNaWRkZW5kb3JmPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctcm91bmQtcGFuZWxcIiAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9uZW1hbmphLmpwZ1wiIGFsdD1cInByLXNhbXBsZTFcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsIG1pZGRsZVwiPk5lbWFuamEgPGJyLz4gU3RpamVwb3ZpYzwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgPHNwYW4+UGFuZWwgRGlzY3Vzc2lvbjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhbmVsXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICA8cD5EdXJpbmcgdGhlIHBhbmVsIGRpc2N1c3Npb24sIHBhcnRpY2lwYW50cyBzaGFyZWQgdGhlaXIgZXhwZXJpZW5jZXMgd2l0aCBpR0VNIGFuZCBzeW50aGV0aWMgYmlvbG9neS4gTGVzbGllLCBhbiBhZHZpc29yIGZvciB0aGUgVW5pdmVyc2l0eSBvZiBXaW5kc29yJ3MgdGVhbSwgZGV0YWlsZWQgaGVyIHRyYW5zaXRpb24gZnJvbSB0ZWFtIG1lbWJlciB0byBhZHZpc29yIGFuZCBoZXIgcmVjZW50IGludm9sdmVtZW50IGluIHN5bnRoZXRpYyBiaW9sb2d5IG9yZ2FuaXphdGlvbnMuIEFubmEsIGEgZm9ybWVyIGlHRU0gcGFydGljaXBhbnQsIHNwb2tlIGFib3V0IGhlciBiYWNrZ3JvdW5kIGluIGRlc2lnbiBhbmQgaGVyIGN1cnJlbnQgcm9sZSBhcyBhIHNlbmlvciBjb250ZW50IHN0cmF0ZWdpc3QgYXQgRnJlZWxpdGljcywgZW1waGFzaXppbmcgaGVyIHBhc3Npb24gZm9yIHNjaWVuY2UgY29tbXVuaWNhdGlvbi4gVHJhY3kgcmVjb3VudGVkIGhlciBleHRlbnNpdmUgam91cm5leSB3aXRoaW4gaUdFTSwgc3RhcnRpbmcgYXMgYSB0ZWFtIGxlYWRlciBhdCBCb3N0b24gVW5pdmVyc2l0eSBhbmQgZXZlbnR1YWxseSBiZWNvbWluZyB0aGUgZGlyZWN0b3Igb2YgdGhlIGNvbXBldGl0aW9uIGF0IGlHRU0gaGVhZHF1YXJ0ZXJzLiBBZnRlciB0cmFuc2l0aW9uaW5nIHRvIEFzaW1vdiwgc2hlIGhpZ2hsaWdodGVkIGhlciBlZmZvcnRzIHRvIHN0cmVuZ3RoZW4gcGFydG5lcnNoaXBzIGJldHdlZW4gQXNpbW92IGFuZCBpR0VNLCBpbmNsdWRpbmcgbWFudWZhY3R1cmluZyBkaXN0cmlidXRpb24ga2l0cyBmb3IgcGFydGljaXBhdGluZyB0ZWFtcy4gVGhlIGRpc2N1c3Npb24gc2hvd2Nhc2VkIHRoZSBkaXZlcnNlIHBhdGhzIHRha2VuIGJ5IGluZGl2aWR1YWxzIGluIHRoZSBmaWVsZCBhbmQgdGhlaXIgb25nb2luZyBjb21taXRtZW50IHRvIGFkdmFuY2luZyBzeW50aGV0aWMgYmlvbG9neS48L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxCRkhNb3JlQnV0dG9uIGl0PVwicGFuZWxcIj48L0JGSE1vcmVCdXR0b24+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJjaXJjbGVcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbik7XG5cblxuXG5cbiIsICJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgU2xpZGVyIGZyb20gXCJyZWFjdC1zbGlja1wiO1xuXG5pbnRlcmZhY2UgU2xpZGVyUHJvcHMge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlOyBcbn1cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFNpbXBsZVNsaWRlcih7Y2hpbGRyZW59OiBTbGlkZXJQcm9wcykge1xuICB2YXIgc2V0dGluZ3MgPSB7XG4gICAgZG90czogdHJ1ZSxcbiAgICBpbmZpbml0ZTogdHJ1ZSxcbiAgICBzbGlkZXNUb1Nob3c6IDEsXG4gICAgc2xpZGVzVG9TY3JvbGw6IDEsXG4gICAgYXV0b3BsYXk6IHRydWUsXG4gICAgc3BlZWQ6IDIwMDAsXG4gICAgYXV0b3BsYXlTcGVlZDogMjAwMCxcbiAgICBjc3NFYXNlOiBcImxpbmVhclwiLFxuICAgIHBhdXNlT25Ib3ZlcjogdHJ1ZSxcbiAgICBuZXh0QXJyb3c6IDw+PC8+LFxuICAgIHByZXZBcnJvdzogPD48Lz5cbiAgfTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInNsaWRlci1jb250YWluZXJcIj5cbiAgICAgICA8U2xpZGVyIHsuLi5zZXR0aW5nc30+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvU2xpZGVyPlxuICAgIDwvZGl2PlxuICAgXG4gICk7XG59IiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlsc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvZ290by50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlscy9nb3RvLnRzXCI7ZXhwb3J0IGNvbnN0IGdvVG8gPSAoZWw6IEhUTUxFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBlbGVtZW50VG9wID0gZWxlbWVudFJlY3QudG9wICsgd2luZG93LnBhZ2VZT2Zmc2V0OyAvLyBBYnNvbHV0ZSBwb3NpdGlvbiBmcm9tIHRoZSB0b3Agb2YgdGhlIGRvY3VtZW50XG4gICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG5cbiAgICAvLyBDYWxjdWxhdGUgdGhlIHNjcm9sbCBwb3NpdGlvbiBzbyB0aGUgdG9wIG9mIHRoZSBlbGVtZW50IGlzIGNlbnRlcmVkIGluIHRoZSB2aWV3cG9ydFxuICAgIGNvbnN0IG1pZGRsZVBvc2l0aW9uID0gZWxlbWVudFRvcCAtICh2aWV3cG9ydEhlaWdodCAvIDUgLSBlbC5vZmZzZXRIZWlnaHQgLyAyKTtcblxuICAgIHdpbmRvdy5zY3JvbGxUbyh7XG4gICAgICAgIHRvcDogbWlkZGxlUG9zaXRpb24sXG4gICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJ1xuICAgIH0pO1xufTtcblxuXG4vKiBcbmV4cG9ydCBjb25zdCBnb1RvVGV4dHNBbmRPcGVuQ29sbGFwc2libGUgPSAoe2NvbGxhcHNlSWQsIHBhdGh9OiB7Y29sbGFwc2VJZDogc3RyaW5nLCBwYXRoOiBzdHJpbmd9KSA9PiB7XG4gICAgY29uc3QgbmF2aWdhdGUgPSB1c2VOYXZpZ2F0ZSgpO1xuICAgIG5hdmlnYXRlKGAke3BhdGh9JHtjb2xsYXBzZUlkfWApO1xufTtcbmV4cG9ydCBjb25zdCBnb1RvUGFnZXNBbmRPcGVuVGFiID0gKHRhYklkOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IG5hdmlnYXRlID0gdXNlTmF2aWdhdGUoKTtcbiAgICBuYXZpZ2F0ZShgJHtwYXRofSR7dGFiSWR9YCk7XG59OyAqLyIsICIvKiBpbXBvcnQgeyBvcGVuVGhlbSB9IGZyb20gXCIuLi9jb250ZW50c1wiO1xuICovXG5pbXBvcnQgeyBnb1RvIH0gZnJvbSBcIi4uL3V0aWxzL2dvdG9cIjtcbmludGVyZmFjZSBTY3JvbGxMaW5rUHJvcHMge1xuICAgIHRhcmdldElkOiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgY2hpbGRyZW4/OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgb3BlblRoaXM/OiAgc3RyaW5nOyAgIC8qKF9ldmVudDogTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHZvaWQ7ICovXG59XG5pbnRlcmZhY2UgU3VwU2Nyb2xsTGlua1Byb3BzIHtcbiAgICBsYWJlbDogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgU2Nyb2xsTGluazogUmVhY3QuRkM8U2Nyb2xsTGlua1Byb3BzPiA9ICh7IHRhcmdldElkLCBsYWJlbCB9KSA9PiB7XG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBhbmNob3IgYmVoYXZpb3JcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldElkKTtcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRSZWN0ID0gdGFyZ2V0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUb3AgPSBlbGVtZW50UmVjdC50b3AgKyB3aW5kb3cuc2Nyb2xsWTtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xuICAgICAgICAgICAgY29uc3Qgc2Nyb2xsT2Zmc2V0ID0gZWxlbWVudFRvcCAtICh2aWV3cG9ydEhlaWdodCAvIDUgLSB0YXJnZXRFbGVtZW50Lm9mZnNldEhlaWdodCAvIDIpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgRWxlbWVudCBUb3A6ICR7ZWxlbWVudFRvcH1gKTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBWaWV3cG9ydCBIZWlnaHQ6ICR7dmlld3BvcnRIZWlnaHR9YCk7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgU2Nyb2xsIE9mZnNldDogJHtzY3JvbGxPZmZzZXR9YCk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XG4gICAgICAgICAgICAgICAgdG9wOiBzY3JvbGxPZmZzZXQsXG4gICAgICAgICAgICAgICAgYmVoYXZpb3I6IFwic21vb3RoXCJcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc29sZS5sb2coYFNjcm9sbGVkIHRvICR7dGFyZ2V0SWR9YClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVsZW1lbnQgd2l0aCBJRCAke3RhcmdldElkfSBub3QgZm91bmQuYCk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGEgY2xhc3NOYW1lPVwic2Nyb2xsbGlua1wiIGhyZWY9e2AjJHt0YXJnZXRJZH1gfSBvbkNsaWNrPXtoYW5kbGVDbGlja30+XG4gICAgICAgICAgICA8c3Bhbj57bGFiZWx9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgKTtcbn07XG5cblxuZXhwb3J0IGNvbnN0IFN1cFNjcm9sbExpbmsgOiBSZWFjdC5GQzxTdXBTY3JvbGxMaW5rUHJvcHM+ID0gKHtsYWJlbCB9KSA9PiB7XG4gICAgbGV0IHRhcmdldElkID0gXCJkZXNjLVwiICsgbGFiZWxcbiAgICBjb25zdCBoYW5kbGVDbGljayA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldElkKTtcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGdvVG8odGFyZ2V0RWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICA8c3VwPjxhIG9uQ2xpY2s9e2hhbmRsZUNsaWNrfT5cbiAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgPC9hPlxuICAgICAgICA8L3N1cD4gXG4gICAgKTtcbn07XG4vKiBleHBvcnQgY29uc3QgU2Nyb2xsTGluazogUmVhY3QuRkM8U2Nyb2xsTGlua1Byb3BzPiA9ICh7IHRhcmdldElkLCBsYWJlbCB9KSA9PiB7XG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IC8vIFByZXZlbnQgZGVmYXVsdCBhbmNob3IgYmVoYXZpb3JcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldElkKTtcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGdvVG8odGFyZ2V0RWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGEgaHJlZj17YCMke3RhcmdldElkfWB9IG9uQ2xpY2s9e2hhbmRsZUNsaWNrfT5cbiAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgPC9hPlxuICAgICk7XG59OyAqL1xuXG5cbi8qIGV4cG9ydCBjb25zdCBTY3JvbGxMaW5rU2lkZWJhcjogUmVhY3QuRkM8T3BlblNjcm9sbExpbmtXaXRoQ2hpbGRQcm9wcz4gPSAoeyB0YXJnZXRJZCwgY2hpbGRyZW4sIG9wZW5UaGlzfSkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUNsaWNrID0gKCkgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFyZ2V0SWQpO1xuICAgICAgICBpZiAodGFyZ2V0RWxlbWVudCkge1xuICAgICAgICAgICAgZ29Ubyh0YXJnZXRFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgICBvcGVuVGhlbSh7aXQ6IG9wZW5UaGlzfSk7IFxuICAgIH07XG4gICAgXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGEgb25DbGljaz17aGFuZGxlQ2xpY2t9PlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2E+XG4gICAgKTtcbn07ICovXG5cbiBleHBvcnQgY29uc3QgU2Nyb2xsTGlua1dpdGhDaGlsZDogUmVhY3QuRkM8U2Nyb2xsTGlua1Byb3BzPiA9ICh7IHRhcmdldElkLCBjaGlsZHJlbiB9KSA9PiB7XG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YXJnZXRJZCk7XG4gICAgICAgIGlmICh0YXJnZXRFbGVtZW50KSB7XG4gICAgICAgICAgICBnb1RvKHRhcmdldEVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxhIG9uQ2xpY2s9e2hhbmRsZUNsaWNrfT5cbiAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9hPlxuICAgICk7XG59OyAiLCAiaW1wb3J0IHsgTm9CdXR0VGltZWxpbmVJdGVtLCBQYW5lbFRpbWVsaW5lSXRlbSwgVGltZWxpbmVJdGVtUGljLCBUaW1lbGluZUl0ZW1Ud29QaWMgfSBmcm9tIFwiLi9WZXJ0aWNhbFRpbWVsaW5lXCI7XG5pbXBvcnQgU2ltcGxlU2xpZGVyIGZyb20gXCIuL1NsaWRlclwiO1xuaW1wb3J0IHsgU2Nyb2xsTGluaywgU3VwU2Nyb2xsTGluayB9IGZyb20gXCIuL1Njcm9sbExpbmtcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEJGSFRpbWVsaW5lICgpIHtcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxuICAgIHJldHVybihcbiAgICAgICAgPD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3RpbWVsaW5lLWJlZ2luJyBpZD1cInRpbWVsaW5lSFwiPlxuICAgICAgICAgICAgICAgIEJlZ2luICYgT3BlbmluZ1xuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvcmFtLmpwZ1wiXG4gICAgICAgICAgICAgICAgZGF0ZT0nU2NpZW50aWZpYyBUYWxrIEkuJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRhbGtvbmVcIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJSYW1cIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiU2hha2FyXCJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiQUktRHJpdmVuIEJyZWFrdGhyb3VnaHMgaW4gUGxhc21pZCBETkEgUHJvZHVjdGlvblwiXG4gICAgICAgICAgICAgICAgdGV4dD1cIlJhbSBTaGFua2FyIGZyb20gUGxhc21pZCBGYWN0b3J5IGRlbHZlcyBpbnRvIHRoZSBpbnRlZ3JhdGlvbiBvZiBBSSBpbiBhZHZhbmNpbmcgcGxhc21pZCBETkEgdGVjaG5vbG9neSBmb3IgZ2VuZSB0aGVyYXB5LiBIaWdobGlnaHRpbmcgcmVhbC13b3JsZCBhcHBsaWNhdGlvbnMsIGhlIGRlbW9uc3RyYXRlcyBob3cgQUkgb3B0aW1pemVzIHBsYXNtaWQgcHVyaWZpY2F0aW9uLCBlbmhhbmNlcyBnZW5lIHZlY3RvciBzdGFiaWxpdHksIGFuZCBhY2NlbGVyYXRlcyBtUk5BIHByb2R1Y3Rpb24sIG9mZmVyaW5nIGEgZ2xpbXBzZSBpbnRvIHRoZSBmdXR1cmUgb2YgYmlvdGVjaCBpbm5vdmF0aW9ucy5cIlxuICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ0YWxrb25lXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+UmFtIFNoYW5rYXIsIGZyb20gUGxhc21pZCBGYWN0b3J5LCBnYXZlIGFuIGluc2lnaHRmdWwgdGFsayBhYm91dCB0aGUgaW50ZWdyYXRpb24gb2YgQUkgYW5kIGFkdmFuY2VkIGJpb3RlY2hub2xvZ3ksIHdpdGggYSBmb2N1cyBvbiBwbGFzbWlkIEROQSBwcm9kdWN0aW9uLiBIaXMgcHJlc2VudGF0aW9uIGhpZ2hsaWdodGVkIGhvdyBBSS1kcml2ZW4gaW5ub3ZhdGlvbnMgaGF2ZSB0cmFuc2Zvcm1lZCByZXNlYXJjaCBtZXRob2RvbG9naWVzIGluIGdlbmUgdGhlcmFweSwgcGxhc21pZCBtYW51ZmFjdHVyaW5nLCBhbmQgRE5BIHB1cmlmaWNhdGlvbi4gSGlzIHNwZWVjaCBzaG93Y2FzZWQgdGhlIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgQUkgaW4gc3RyZWFtbGluaW5nIHdvcmtmbG93cywgbWFraW5nIGJpb3RlY2ggcHJvY2Vzc2VzIG1vcmUgZWZmaWNpZW50IGFuZCBzY2FsYWJsZS48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5TaGFua2FyIGJlZ2FuIGJ5IGlsbHVzdHJhdGluZyBob3cgc2NpZW50aWZpYyBhZHZhbmNlbWVudHMsIHN1Y2ggYXMgcG93ZXJlZCBmbGlnaHQgYW5kIEROQSByZXNlYXJjaCwgaGF2ZSByYXBpZGx5IHByb2dyZXNzZWQgd2l0aGluIGEgc2luZ2xlIGh1bWFuIGxpZmV0aW1lLiBIZSBjb25uZWN0ZWQgdGhpcyBjb25jZXB0IHRvIGJyZWFrdGhyb3VnaHMgaW4gcGxhc21pZCBETkEgdGVjaG5vbG9neSwgd2hlcmUgUGxhc21pZCBGYWN0b3J5XHUyMDE5cyB3b3JrIGhhcyBiZWVuIHBpdm90YWwgaW4gYWR2YW5jaW5nIGdlbmUgdGhlcmFweSBwcm9kdWN0cy4gQSBrZXkgdGFrZWF3YXkgd2FzIHRoZSBpbnRlZ3JhdGlvbiBvZiBBSSBpbiBvcHRpbWl6aW5nIHBsYXNtaWQgcHVyaWZpY2F0aW9uIHByb2Nlc3NlcywgZW5hYmxpbmcgdGhlIHByb2R1Y3Rpb24gb2YgaGlnaC1xdWFsaXR5IHBsYXNtaWRzIGFuZCBtaW5pIGNpcmNsZXMgZm9yIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hhbmthciBhbHNvIGludHJvZHVjZWQgcmVhbC13b3JsZCBleGFtcGxlcywgc3VjaCBhcyB0aGUgdXNlIG9mIEFJIGluIGVuaGFuY2luZyB0aGUgc3RhYmlsaXR5IGFuZCBxdWFsaXR5IG9mIGdlbmUgdmVjdG9ycyBhbmQgbVJOQSBwcm9kdWN0aW9uLiBIaXMgZGlzY3Vzc2lvbiBvZiBjb2xsYWJvcmF0aW9ucyBiZXR3ZWVuIGFjYWRlbWlhIGFuZCBpbmR1c3RyeSB1bmRlcnNjb3JlZCB0aGUgaW1wb3J0YW5jZSBvZiBuZXR3b3JraW5nIGFuZCBzaGFyZWQgaW5ub3ZhdGlvbiwgY29tcGFyaW5nIGl0IHRvIHRoZSBoaXN0b3JpYyBwYXJ0bmVyc2hpcCBiZXR3ZWVuIFN0YW5sZXkgQ29oZW4gYW5kIEhlcmJlcnQgQm95ZXIgdGhhdCByZXZvbHV0aW9uaXplZCByZWNvbWJpbmFudCBETkEgdGVjaG5vbG9neS4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSB0YWxrIHByb3ZpZGVkIGF0dGVuZGVlcyB3aXRoIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgaG93IEFJIGNhbiByZXZvbHV0aW9uaXplIGxhYiB3b3JrLCBwYXJ0aWN1bGFybHkgaW4gc2NhbGluZyB1cCBETkEgcHJvZHVjdGlvbiBmb3IgZ2VuZSB0aGVyYXBpZXMuIEJ5IGFwcGx5aW5nIHRoZXNlIGluc2lnaHRzLCBwYXJ0aWNpcGFudHMgbGVmdCB3aXRoIGlkZWFzIG9uIGhvdyB0byBsZXZlcmFnZSBBSSB0byBlbmhhbmNlIHRoZWlyIG93biByZXNlYXJjaCBwcm9qZWN0cywgcGFydGljdWxhcmx5IGluIGJpb3RlY2hub2xvZ3kgYW5kIGdlbmUgZWRpdGluZy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cblxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAva3Jpc3RpYW4uanBlZ1wiXG4gICAgICAgICAgICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvcmFtLmpwZ1wiXG4gICAgICAgICAgICAgICAgZGF0ZT0nU2NpZW50aWZpYyBUYWxrIEkuJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRhbGtvbmVrXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiS3Jpc3RpYW5cIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiTVx1MDBGQ2xsZXJcIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJHZW5lIFRoZXJhcHksIEFBVnMgYW5kIElubm92YXRpb25zIGluIFN5bnRoZXRpYyBCaW9sb2d5XCJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiUHJvZi4gRHIuIEtyaXN0aWFuIE1cdTAwRkNsbGVyIGZyb20gQmllbGVmZWxkIFVuaXZlcnNpdHkgcmVmbGVjdHMgb24gaGlzIGxvbmctdGVybSBpbnZvbHZlbWVudCB3aXRoIHRoZSBpR0VNIGNvbXBldGl0aW9uLCBlbXBoYXNpemluZyBhZHZhbmNlbWVudHMgaW4gZ2VuZSB0aGVyYXB5LCBwYXJ0aWN1bGFybHkgdXNpbmcgYWRlbm8tYXNzb2NpYXRlZCB2aXJ1c2VzIChBQVZzKSBhcyB2aXJhbCB2ZWN0b3JzIGZvciBnZW5lIGRlbGl2ZXJ5LiBIZSBkaXNjdXNzZXMgaW5ub3ZhdGlvbnMgaW4gdmlydXMgcHJvZHVjdGlvbiBhbmQgdGFyZ2V0aW5nLCB3aGlsZSBhY2tub3dsZWRnaW5nIG9uZ29pbmcgY2hhbGxlbmdlcyBzdWNoIGFzIHByb2R1Y3QgcHVyaXR5LCBwcm9kdWN0aW9uIGVmZmljaWVuY3ksIGFuZCBzaWRlIGVmZmVjdHMuIEFkZGl0aW9uYWxseSwgaGUgYWRkcmVzc2VzIHJlY2VudCBkZXZlbG9wbWVudHMgaW4gbmFub3BvcmUgc2VxdWVuY2luZyBmb3IgcXVhbGl0eSBjb250cm9sIGFuZCB0aGUgdXNlIG9mIG5vbi1uYXR1cmFsIG51Y2xlb3RpZGVzIGFuZCBtZXRoeWxhdGlvbiB0byBpbXByb3ZlIHRoZXJhcGV1dGljIG91dGNvbWVzLlwiXG4gICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInRhbGtvbmVrXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICA8cD5Qcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIgZnJvbSBSZXNlYXJjaCBHcm91cCBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3kgYXQgdGhlIFRlY2huaWNhbCBGYWN1bHR5IG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5LCBkZWxpdmVyZWQgYW4gaW5zaWdodGZ1bCBwcmVzZW50YXRpb24gb24gdGhlIGludGVncmF0aW9uIG9mIEFJIGFuZCBhZHZhbmNlZCBiaW90ZWNobm9sb2d5LCBmb2N1c2luZyBvbiB0aGUgcHJvZHVjdGlvbiBhbmQgcmVmaW5lbWVudCBvZiBBQVYgdmVjdG9ycy4gVGhlIHByZXNlbnRhdGlvbiBoaWdobGlnaHRlZCBob3cgQUktZHJpdmVuIGlubm92YXRpb25zIGFyZSB0cmFuc2Zvcm1pbmcgcmVzZWFyY2ggbWV0aG9kb2xvZ2llcywgZXNwZWNpYWxseSBpbiBhcmVhcyBzdWNoIGFzIEFBViBwcm9kdWN0aW9uLCBnZW5ldGljIHRhcmdldGluZywgYW5kIHF1YWxpdHkgY29udHJvbC4gUHJvZi4gRHIuIE1cdTAwRkNsbGVyIHNob3djYXNlZCBwcmFjdGljYWwgYXBwbGljYXRpb25zIG9mIEFJIGluIG9wdGltaXppbmcgdGhlc2UgYmlvdGVjaG5vbG9naWNhbCBwcm9jZXNzZXMsIG1ha2luZyB0aGVtIG1vcmUgZWZmaWNpZW50LCBzY2FsYWJsZSwgYW5kIHByZWNpc2UsIHBhcnRpY3VsYXJseSBpbiB0aGVyYXBldXRpYyBhcHBsaWNhdGlvbnMuPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgc3BlYWtlciBiZWdhbiBieSBkcmF3aW5nIHBhcmFsbGVscyBiZXR3ZWVuIHRlY2hub2xvZ2ljYWwgYWR2YW5jZW1lbnRzIGluIGZpZWxkcyBsaWtlIHNwYWNlIGV4cGxvcmF0aW9uIGFuZCBicmVha3Rocm91Z2hzIGluIGdlbmV0aWMgcmVzZWFyY2gsIGVtcGhhc2l6aW5nIHRoZSByYXBpZCBwcm9ncmVzc2lvbiB3aXRoaW4gYSBzaG9ydCBzcGFuIG9mIHRpbWUuIFRoaXMgY29udGV4dCBzZXQgdGhlIHN0YWdlIGZvciBkaXNjdXNzaW5nIHJlY2VudCBkZXZlbG9wbWVudHMgaW4gQUFWIHRlY2hub2xvZ3ksIHdoZXJlIHRoZSBhcHBsaWNhdGlvbiBvZiBBSSBoYXMgYmVlbiBwaXZvdGFsLiBBIGtleSB0YWtlYXdheSB3YXMgaG93IEFJIGlzIGJlaW5nIHVzZWQgdG8gZW5oYW5jZSB0aGUgc3RhYmlsaXR5IG9mIHZpcmFsIHZlY3RvcnMgYW5kIG9wdGltaXplIGdlbmUgZGVsaXZlcnksIGFsbG93aW5nIGZvciB0aGUgcHJvZHVjdGlvbiBvZiBoaWdoLXF1YWxpdHkgQUFWIHZlY3RvcnMgd2l0aCBpbXByb3ZlZCBwcmVjaXNpb24uIFJlYWwtd29ybGQgZXhhbXBsZXMsIHN1Y2ggYXMgdGhlIHVzZSBvZiBBSSB0byBtb25pdG9yIGdlbmV0aWMgcHVyaXR5IGR1cmluZyBuYW5vcG9yZSBzZXF1ZW5jaW5nIGFuZCB0byBzdHJlYW1saW5lIHBsYXNtaWQgZW5naW5lZXJpbmcgcHJvY2Vzc2VzLCBzaG93Y2FzZWQgdGhlIHRhbmdpYmxlIGltcGFjdCBvZiB0aGVzZSB0ZWNobm9sb2dpZXMgb24gdGhlcmFwZXV0aWMgcmVzZWFyY2guIFRoZSBkaXNjdXNzaW9uIGFsc28gaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29sbGFib3JhdGlvbnMgYmV0d2VlbiBhY2FkZW1pYSBhbmQgaW5kdXN0cnksIGRyYXdpbmcgcGFyYWxsZWxzIHRvIHRoZSBoaXN0b3JpYyBwYXJ0bmVyc2hpcCB0aGF0IHNwYXJrZWQgdGhlIHJlY29tYmluYW50IEROQSByZXZvbHV0aW9uLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbiBwcm92aWRlZCBhdHRlbmRlZXMgd2l0aCBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIG9mIGhvdyBBSSBjYW4gc2lnbmlmaWNhbnRseSBlbmhhbmNlIGxhYiB3b3JrLCBwYXJ0aWN1bGFybHkgaW4gc2NhbGluZyB1cCBBQVYgcHJvZHVjdGlvbiBhbmQgZW5zdXJpbmcgdGhlIHF1YWxpdHkgb2YgdGhlcmFwZXV0aWMgdmVjdG9ycy4gUGFydGljaXBhbnRzIGxlZnQgd2l0aCB2YWx1YWJsZSBpbnNpZ2h0cyBvbiBsZXZlcmFnaW5nIEFJIGFuZCBhZHZhbmNlZCB0ZWNobm9sb2dpZXMgdG8gZHJpdmUgdGhlaXIgb3duIHJlc2VhcmNoIHByb2plY3RzIGZvcndhcmQsIGVzcGVjaWFsbHkgaW4gZmllbGRzIGxpa2UgZ2VuZSB0aGVyYXB5LCBwbGFzbWlkIGVuZ2luZWVyaW5nLCBhbmQgc3ludGhldGljIGJpb2xvZ3kuPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cblxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL2NocmlzdGlhbi1rb2xsYW5kLnBuZ1wiXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIFdpa2knXG4gICAgICAgICAgICAgICAgdGFnPSdXb3Jrc2hvcCBTZXNzaW9uIEkuJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS10ZXh0LXByaW1hcnkpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cIndpa2l3b3Jrc2hvcFwiXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIkNocmlzdGlhblwiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJLb2xsYW5kXCJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiQnVpbGRpbmcgUHJvZmVzc2lvbmFsIFdlYnNpdGVzOiBBIFdvcmtzaG9wIG9uIEhUTUwgYW5kIENTUyBFc3NlbnRpYWxzXCJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiTGVhcm5pbmcgdGhlIGJhc2ljcyBvZiBXaWtpIGNvZGluZyBhbmQgZGVzaWduLiBJbiB0aGlzIHdvcmtzaG9wLCB0aGUgcGFydGljaXBhbnRzIGdlaW5lZCBleHBlcnRpc2UgdG8gZWxldmF0ZSB0aGVpciB0ZWFtcyB3aWtpLlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ3aWtpd29ya3Nob3BcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2UgcGFydGljaXBhdGVkIGluIGFuIGludGVuc2l2ZSB3b3Jrc2hvcCBvbiBIVE1MIGFuZCBDU1MgbWFkZSBieSBhIGZvcm1lciBpR0VNIHBhcnRpY2lwYW50IG9mIHRlYW0gR1UtRnJhbmtmdXJ0IDIwMjMgYW5kIGhlYWQgb2Ygd2lraSwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hyaXN0aWFuIEtvbGxhbmQuIEFsbCBwYXJ0aWNpcGFudHMgZ2FpbiBhbiBvdmVydmlldyBvZiB0aGUgZXNzZW50aWFscyBmb3IgYnVpbGRpbmcgd2Vic2l0ZXMuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBzZXNzaW9uIGJlZ2FuIHdpdGggYW4gaW50cm9kdWN0aW9uIHRvIGNvbG9yIHRoZW9yeSB0b29scyBzdWNoIGFzIFJlYWx0aW1lIENvbG9ycyBhbmQgQUkgQ29sb3JzLCBlbXBoYXNpemluZyB0aGVpciByb2xlIGluIGNyZWF0aW5nIHZpc3VhbGx5IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVhbGluZyBkZXNpZ25zLiBUeXBvZ3JhcGh5IHdhcyBhIGtleSBmb2N1cywgY2xhcmlmeWluZyB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHR5cGVmYWNlIChlLmcuLCBGdXR1cmEpIGFuZCBmb250IHZhcmlhdGlvbnMgKGUuZy4sIEZ1dHVyYSBDb25kZW5zZWQpLCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgaG93IGZvbnQgd2VpZ2h0cyBhbmQgc2l6ZXMgaW1wYWN0IHJlYWRhYmlsaXR5IGFuZCBkZXNpZ24gaGllcmFyY2h5LiBQcmFjdGljYWwgZ3VpZGVsaW5lcywgaW5jbHVkaW5nIHRoZSB1c2FnZSBvZiBkaWZmZXJlbnQgdHlwZXMgb2YgdW5pdHMgc3VjaCBhcyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQWCBvciBSRU0gZm9yIGZvbnQgc2l6aW5nIGFuZCB1bmRlcnN0YW5kaW5nIHNwYWNpbmcgZm9yIGFuIGVmZmVjdGl2ZSBsYXlvdXQsIHdlcmUgZ2l2ZW4uIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVsdmVkIGludG8gSFRNTCdzIHN0cnVjdHVyZSBmb3Igd2ViIGNvbnRlbnQsIGxlYXJuaW5nIHNlbWFudGljIHRhZ3MgZm9yIGVmZmVjdGl2ZWx5IG9yZ2FuaXppbmcgaW5mb3JtYXRpb24uIENTUyBwcmluY2lwbGVzIHdlcmUgZXhwbG9yZWQgbmV4dCwgXG4gICAgICAgICAgICAgICAgICAgICAgICBkZW1vbnN0cmF0aW5nIGhvdyBzdHlsZXMgY2FzY2FkZSBmcm9tIHBhcmVudCB0byBjaGlsZCBlbGVtZW50cywgd2hpY2ggYXJlIGNydWNpYWwgZm9yIGNvbnNpc3RlbnQgZGVzaWduIGFjcm9zcyBhIHdlYnBhZ2UuIFxuICAgICAgICAgICAgICAgICAgICAgICAgQSBzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB3b3Jrc2hvcCBpbnZvbHZlZCBoYW5kcy1vbiBjb2RpbmcgaW4gVmlzdWFsIFN0dWRpbyBDb2RlLCB3aGVyZSB3ZSByZXBsaWNhdGVkIGEgcHJlLWRlc2lnbmVkIHdlYnBhZ2UgdXNpbmcgdGhlIEhUTUwgYW5kIENTUyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlY2huaXF1ZXMgbGVhcm5lZC4gVGhpcyBleGVyY2lzZSBlcXVpcHBlZCB0aGUgYXR0ZW5kaW5nIGlHRU0gdGVhbXMgd2l0aCBwcmFjdGljYWwgc2tpbGxzIHRvIGNyZWF0ZSBhbmQgc3R5bGUgdGhlaXIgb3duIHByb2plY3Qgd2Vic2l0ZXMgYW5kIGVtcGhhc2l6ZWQgXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGUgaW1wb3J0YW5jZSBvZiBjb21wb25lbnQtYmFzZWQgZGVzaWduIGFuZCBlZmZlY3RpdmUgY29udGVudCBvcmdhbml6YXRpb24uIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBCeSB0aGUgZW5kIG9mIHRoZSB3b3Jrc2hvcCwgdGhlIGF0dGVuZGVlcyB3ZXJlIGluc3BpcmVkIHRvIHB1cnN1ZSBjcmVhdGluZyB0aGVpciBvd24gd2lraXMsIGxldmVyYWdpbmcgQUktYmFzZWQgdG9vbHMgbGlrZSBmb3IgaW5pdGlhbCBkZXNpZ25zIGFuZCBpbWFnZXJ5LiBcbiAgICAgICAgICAgICAgICAgICAgICAgIE92ZXJhbGwsIHdlIGxlZnQgd2l0aCBhIHNvbGlkIGZvdW5kYXRpb24gaW4gd2ViIGRldmVsb3BtZW50IGFuZCB3ZXJlIHByZXBhcmVkIHRvIGJ1aWxkIHByb2Zlc3Npb25hbCBhbmQgZnVuY3Rpb25hbCB3ZWJzaXRlcyBmb3IgdGhlaXIgaUdFTSBwcm9qZWN0cy4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvdHJhY2kuanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gU3luQmlvJ1xuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJLidcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJzeW53b3Jrc2hvcFwiXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIlRyYWNpXCJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIkhhZGRvY2tcIlxuICAgICAgICAgICAgICAgIHRleHQ9XCJEZXNpZ24gZ2VuZXRpYyBjb25zdHJ1Y3RzIGFuZCByZS13cml0ZSB0aGUgZ2Vub21pYyBjb2RlLCBhbmQgcGxhbiBleHBlcmltZW50cyB1c2luZyBBSS4gTGVhcm4gaG93IHRvIGVmZmVjdGl2ZWx5IGJ1aWxkIGdlbmV0aWMgY2lyY3VpdCBzeXN0ZW1zIGZvciBpbXBsZW1lbnRhdGlvbiBpbiB5b3VyIGlHRU0gcHJvamVjdC5cIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJIb3cgdG8gU3ludGhldGljIEJpb2xvZ3k/IC0gSW50cm9kdWNpbmcgS2VybmVsIFNvZnR3YXJlLiBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3lud29ya3Nob3BcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDY+U2V0dGluZzwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBrZXJuZWwgd29ya3Nob3Agd2FzIGdpdmVuIGJ5IFRyYWNpIEhhZGRvY2ssIERpcmVjdG9yIG9mIENvbW11bml0eSBhdCA8YSBocmVmPVwiaHR0cHM6Ly93d3cuYXNpbW92LmNvbS9cIj5BU0lNT1YgQm9zdG9uPC9hPi4gU2hlIGludHJvZHVjZWQgdGhlIEtlcm5lbCBzb2Z0d2FyZSBhbmQgc2hvd2VkIHVzIGhvdyB0byBcbiAgICAgICAgICAgICAgICAgICAgICAgIGltcGxlbWVudCBBSS1iYXNlZCB0b29scyBpbiBvdXIgc3ludGhldGljIGJpb2xvZ3kgcHJvamVjdC4gVGhlIHByb2dyYW0gY2FuIGJlIHVzZWQgdG8gZ3JhcGhpY2FsbHkgZGlzcGxheSBwbGFzbWlkcy4gQnkgdXBsb2FkaW5nIHBhcnRzIGluIGFuIFxuICAgICAgICAgICAgICAgICAgICAgICAgaUdFTS1yZWxhdGVkIGRhdGFiYXNlLCBzYWZldHkgY29uc2lkZXJhdGlvbnMgYW5kIHJlZ2lzdHJ5IGVudHJpZXMgY2FuIGJlIGNoZWNrZWQgYXV0b21hdGljYWxseS4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90cmFjeS1hdC1rZXJuZWwtc2VtaW5hci9rZXJuZWwtMS53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90cmFjeS1hdC1rZXJuZWwtc2VtaW5hci9rZXJuZWwtMi53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPlRyYWN5IGV4cGxhaW5zIHRoZSBcdTIwMUNtYXJzaG1hbGxvdyBtYWRuZXNzXHUyMDFEIHRvIHVzLiA8L2I+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDY+V2hhdCBkaWQgd2UgbGVhcm4/PC9oNj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGxlYXJuZWQgdGhlIGJhc2ljcyBvZiBrZXJuZWxzIGluIG9yZGVyIHRvIGRlc2lnbiBwbGFzbWlkcyBieSB1bmRlcnN0YW5kaW5nIGdlbmVyYWwgcGxhc21pZCBjb25zdHJ1Y3Rpb24gYW5kIHByb2JsZW0gc29sdmluZyB0aHJvdWdoIGRpZmZlcmVudCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9uaW5nIHN0cmF0ZWdpZXMuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1cnRoZXJtb3JlLCBLZXJuZWwgaGFzIGFuIEFJLWFzc2lzdGVkIHNlYXJjaCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIGZvciBwbGFzbWlkIHJlcHJlc2VudGF0aW9uLCBlLmcuIHRvIGZpbmQgYSBzcGVjaWZpYyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9tb3RlciBiYXNlZCBvbiBjZXJ0YWluIHJlcXVpcmVtZW50cy4gVHJhY2kgc2hvd2VkIHVzIHByYWN0aWNhbCBleGVyY2lzZXMgZm9yIGZpcnN0aGFuZCBhcHBsaWNhdGlvbi4gRmlyc3QsIHdlIHdlcmUgYXNrZWQgdG8gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjcmVhdGUgYSBwbGFzbWlkIGZvbGxvd2VkIGJ5IGEgc2xpZ2h0bHkgdHJpY2tpZXIgdGFzazogV2Ugc2hvdWxkIGNsZWFuIHRoZSB3b3JsZCBvZiBtYWpvciBtYXJzaG1hbGxvdyBjb250YW1pbmF0aW9uIGJ5IGRldmVsb3BpbmcgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSBwbGFzbWlkLiAgSW4gc21hbGwgZ3JvdXBzIHdlIGRpc2N1c3NlZCB3aGljaCBjb21wb25lbnRzIHRoZSBwbGFzbWlkIG5lZWRlZC4gVHJhY3kgZ2F2ZSB1cyBzb21lIGluZm9ybWF0aW9uIHdpdGggd2hpY2ggd2UgcXVpY2tseSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudGlmaWVkIGNydWNpYWwgY29tcG9uZW50cyBvZiB0aGUgcGxhc21pZCBhbmQgdGhlbiBkZXNpZ25lZCBpdC4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5JbiB0aGUgZW5kLCBlYWNoIGdyb3VwIHByZXNlbnRlZCB0aGVpciBzb2x1dGlvbi4gVGhlIGZ1bm5pZXN0IGFuZCBtb3N0IGNyZWF0aXZlIGFwcHJvYWNoZXMgd2VyZSBjZWxlYnJhdGVkLiA8L3A+XG5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtVHdvUGljXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9qdWxpYW4tZ2lwLmpwZ1wiXG4gICAgICAgICAgICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvdmlrdG9yaWEuanBnXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lMj1cIldpa3RvcmlhXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiSnVsaWFuXCJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIkJvcmJlY2tcIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lMj1cIlBhbGthXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gdXNlIEFJIGFzIGEgc2NpZW50aXN0J1xuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJLidcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJhaXdvcmtzaG9wXCJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiTW9kZXJuIHByb2JsZW1zIHJlcXVpcmUgbW9kZXJuIHNvbHV0aW9uc1wiXG4gICAgICAgICAgICAgICAgdGV4dD1cIkNvbXB1dGF0aW9uYWwgdGVjaG5vbG9naWVzIGFyZSBnZXR0aW5nIG1vcmUgaW4gdGhlIGZvY3VzIG9mIHNjaWVudGlmaWMgcmVzZWFyY2guIEludGVncmF0aW9uIG9mIGdlbmVyYXRpdmUgS0kgbGlrZSBHZW5BSSBieXBhc3MgbGltaXRhdGlvbnMgYW5kIG9mZmVycyBwb3RlbnRpYWwgcmlza3MgLSBsZWFybiBob3cgdG8gaW1wbGVtZW50IEFydGlmaWNpYWwgSW50ZWxsaWdlbmNlLlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiYWl3b3Jrc2hvcFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyB3b3Jrc2hvcCBob3N0ZWQgYnkgeHluYS5iaW8gd2FzIGRlc2lnbmVkIHRvIGludHJvZHVjZSByZXNlYXJjaGVycyB0byB0aGUgaW50ZWdyYXRpb24gb2YgQUkgaW50byBzY2llbnRpZmljIHdvcmtmbG93cy4gV2lrdG9yaWEgUGFsYWsgYW5kIFxuICAgICAgICAgICAgICAgICAgICAgICAgSnVsaWFuIEJvcmJlY2ssIGJvdGggZXhwZXJ0cyBpbiBNb2xlY3VsYXIgQmlvbG9neSwgQmlvY2hlbWlzdHJ5LCBhbmQgQmlvaW5mb3JtYXRpY3MsIGxlZCB0aGUgd29ya3Nob3AsIGZvY3VzaW5nIG9uIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgQUkgXG4gICAgICAgICAgICAgICAgICAgICAgICBpbiBiaW9zY2llbmNlcy4gVGhlIHNlc3Npb24gcHJvdmlkZWQgYXR0ZW5kZWVzIHdpdGggaGFuZHMtb24gZXhwZXJpZW5jZSBhbmQgYSBwbGF0Zm9ybSBmb3IgZXhwbG9yaW5nIGhvdyBBSSBjYW4gYWRkcmVzcyByZXNlYXJjaCBpbmVmZmljaWVuY2llcyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBvcGVuIG5ldyBvcHBvcnR1bml0aWVzIGZvciBpbm5vdmF0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBUaGUgd29ya3Nob3Agd2FzIHN0cnVjdHVyZWQgYXJvdW5kIHR3byBtYWluIGNvbXBvbmVudHM6IHRoZW9yZXRpY2FsIGluc2lnaHRzIGFuZCBhIHByYWN0aWNhbCBncm91cCBleGVyY2lzZS4gSW4gdGhlIHRoZW9yeSBwb3J0aW9uLCB3ZSBnYWluZWQgYSBkZWVwZXIgXG4gICAgICAgICAgICAgICAgICAgICAgICB1bmRlcnN0YW5kaW5nIG9mIEFJIGFwcGxpY2F0aW9ucywgaW5jbHVkaW5nIG5ldXJvLXN5bWJvbGljIEFJIGFuZCBpdHMgcm9sZSBpbiBlbmhhbmNpbmcgcmVzZWFyY2ggbWV0aG9kb2xvZ2llcy4gVGhlIGluc3RydWN0b3JzIHNoYXJlZCB0aGVpciBleHBlcmllbmNlcyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGRldmVsb3BpbmcgQUkgdG9vbHMgbGlrZSB0aG9zZSBhdCB4eW5hLmJpbywgb2ZmZXJpbmcgcGFydGljaXBhbnRzIHZhbHVhYmxlIGtub3dsZWRnZSBvbiB0aGUgQUkgZGV2ZWxvcG1lbnQgcHJvY2Vzcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkR1cmluZyB0aGUgZ3JvdXAgd29yaywgd2UgYnJhaW5zdG9ybWVkIGlkZWFzIGZvciBBSSB0b29scyB0aGF0IGNvdWxkIHNpbXBsaWZ5IGxhYiB3b3JrIGZvciBzY2llbnRpc3RzLiBUaGlzIGFjdGl2aXR5IG5vdCBvbmx5IGZvc3RlcmVkIGNyZWF0aXZlIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaW5raW5nIGJ1dCBhbHNvIGVuY291cmFnZWQgY29sbGFib3JhdGlvbiwgYXMgd2UgZGlzY3Vzc2VkIHBvdGVudGlhbCBBSSBzb2x1dGlvbnMgdGhhdCBjb3VsZCBzdHJlYW1saW5lIHRhc2tzIGxpa2UgZGF0YSBhbmFseXNpcyBhbmQgZXhwZXJpbWVudGFsIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2lnbi4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCeSB0aGUgZW5kIG9mIHRoZSB3b3Jrc2hvcCwgcGFydGljaXBhbnRzIHdhbGtlZCBhd2F5IHdpdGggcHJhY3RpY2FsIGluc2lnaHRzIGFuZCBhY3Rpb25hYmxlIHNraWxscy4gV2UgZmVsdCBlcXVpcHBlZCB0byBzdGFydCBpbXBsZW1lbnRpbmcgQUkgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc29sdXRpb25zIGluIG91ciBvd24gcmVzZWFyY2ggcHJvamVjdHMsIGlkZW50aWZ5aW5nIHNwZWNpZmljIGFyZWFzIHdoZXJlIEFJIGNvdWxkIGltcHJvdmUgZWZmaWNpZW5jeSBhbmQgcHJvZHVjdGl2aXR5IGluIHRoZSBsYWIuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVR3b1BpYz5cbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9rYXJsYS13YWduZXIuanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdTY2llbnRpZmljIFRhbGsgSUkuJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRhbGt0d29cIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJLYXJsYVwiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJXYWduZXJcIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJPcHRpbWl6YXRpb24gb2YgYSBES1Igb2YgYSBUZXJ0aWFyeSBBbGNvaG9sIHRocm91Z2ggUHJvdGVpbiBFbmdpbmVlcmluZ1wiXG4gICAgICAgICAgICAgICAgdGV4dD1cIkthcmxhIFdhZ25lciBzaGFyZXMgZ3JvdW5kYnJlYWtpbmcgc3RyYXRlZ2llcyBpbiBvcHRpbWl6aW5nIGR5bmFtaWMga2luZXRpYyByZXNvbHV0aW9uIChES1IpIG9mIHRlcnRpYXJ5IGFsY29ob2xzIHVzaW5nIHByb3RlaW4gZW5naW5lZXJpbmcuIERpc2NvdmVyIGhvdyBlbnp5bWUgY2F0YWx5c2lzIGRyaXZlcyBzdXN0YWluYWJsZSBhZHZhbmNlbWVudHMgaW4gdGhlIHN5bnRoZXNpcyBvZiBjaGlyYWwgY29tcG91bmRzIGZvciBwaGFybWFjZXV0aWNhbHMgYW5kIG90aGVyIGluZHVzdHJpZXMuXCJcbiAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwidGFsa3R3b1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEthcmxhIFdhZ25lciwgYSBQaEQgcmVzZWFyY2hlciBhdCB0aGUgPGI+SU9DQiBvZiB0aGUgVW5pdmVyc2l0eSBvZiBCaWVsZWZlbGQ8L2I+IHdpdGggYSBiYWNrZ3JvdW5kIGluIG9yZ2FuaWMgY2hlbWlzdHJ5IGFuZCBiaW90ZWNobm9sb2d5LiBEdXJpbmcgdGhlIHdvcmtzaG9wLCBLYXJsYSBkaXNjdXNzZWQgaGVyIHJlc2VhcmNoIG9uIG9wdGltaXppbmcgdGhlIGR5bmFtaWMga2luZXRpYyByZXNvbHV0aW9uIChES1IpIG9mIHRlcnRpYXJ5IGFsY29ob2xzIHVzaW5nIHByb3RlaW4gZW5naW5lZXJpbmcuIEhlciB3b3JrIGZvY3VzZXMgb24gc3VzdGFpbmFibGUgY2hlbWlzdHJ5IHByYWN0aWNlcywgcGFydGljdWxhcmx5IGJ5IHVzaW5nIGVuenltZXMgaW4gYmlvY2F0YWx5c2lzLCBhbGlnbmluZyB3aXRoIHRoZSBwcmluY2lwbGVzIG9mIHN1c3RhaW5hYmxlIGNoZW1pc3RyeS4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBIZXIgcHJlc2VudGF0aW9uIGNlbnRlcmVkIGFyb3VuZCBoZXIgcmVzZWFyY2ggb24gdGhlIHN5bnRoZXNpcyBvZiBjaGlyYWwgdGVydGlhcnkgYWxjb2hvbHMsIHdoaWNoIGFyZSB2YWx1YWJsZSBpbiB0aGUgcHJvZHVjdGlvbiBvZiBwaGFybWFjZXV0aWNhbHMsIGZyYWdyYW5jZXMsIGFuZCBmbGF2b3VyaW5nIGFnZW50cy4gU2hlIGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY2hpcmFsaXR5IGluIHBoYXJtYWNldXRpY2Fscywgbm90aW5nIGhvdyBkaWZmZXJlbnQgZW5hbnRpb21lcnMgb2YgYSBtb2xlY3VsZSBjYW4gaGF2ZSBkcmFzdGljYWxseSBkaWZmZXJlbnQgZWZmZWN0cywgc3VjaCBhcyB0aGUgY2FzZSBvZiBUaGFsaWRvbWlkZS4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cbiAgICAgICAgICAgICAgICA8Tm9CdXR0VGltZWxpbmVJdGVtXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGxhY2Vob2xkZXJzL3BsYWNlaGlsZGVycGVyc29uLmpwZWdcIlxuICAgICAgICAgICAgICAgIGRhdGU9J1RlYW0gcHJvamVjdCBwcmVzZW50YXRpb25zJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RlYW0gcHJlc2VudGF0aW9ucydcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tYWNjZW50LXByaW1hcnknXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aDU+VGVhbSBwcm9qZWN0IHByZXNlbnRhdGlvbnM8L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBiZmgtc2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxTaW1wbGVTbGlkZXI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc0MjgtZW5oYW5jZWQtbnIud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW0tcHJlc2VudGF0aW9ucy9hbnljb252LWNvbS1kc2NmNzQzMC1lbmhhbmNlZC1uci53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbS1wcmVzZW50YXRpb25zL2FueWNvbnYtY29tLWRzY2Y3NDg1LWVuaGFuY2VkLW5yLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc0OTgtZW5oYW5jZWQtbnIud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW0tcHJlc2VudGF0aW9ucy9hbnljb252LWNvbS1kc2NmNzUwNi1lbmhhbmNlZC1uci53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbS1wcmVzZW50YXRpb25zL2FueWNvbnYtY29tLWRzY2Y3NTI0LWVuaGFuY2VkLW5yLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc1MzItZW5oYW5jZWQtbnIud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW0tcHJlc2VudGF0aW9ucy9hbnljb252LWNvbS1kc2NmNzU0OC1lbmhhbmNlZC1uci53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8L1NpbXBsZVNsaWRlcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPlxuXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4gXG4gICAgICAgICAgICAgICAgPC9Ob0J1dHRUaW1lbGluZUl0ZW0+XG4gICAgICAgICAgICAgICAgPE5vQnV0dFRpbWVsaW5lSXRlbVxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BsYWNlaG9sZGVycy9wbGFjZWhpbGRlcnBlcnNvbi5qcGVnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdQb3N0ZXIgRXhoaWJpdGlvbiBCb290aCdcbiAgICAgICAgICAgICAgICB0YWc9ICdUZWFtIHByZXNlbnRhdGlvbnMnXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWFjY2VudC1wcmltYXJ5KSdcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxoNT5Qb3N0ZXIgRXhoaWJpdGlvbiBCb290aDwvaDU+XG4gICAgICAgICAgICAgICAgICAgPHA+IFZpc2l0IHRoZSA8U2Nyb2xsTGluayBsYWJlbD1cIlZpcnR1YWwgUG9zdGVyIEV4aGliaXRpb25cIiB0YXJnZXRJZD1cIkJGSCBFdXJvcGVhbiBNZWV0VXA0SFwiIC8+ITwvcD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgYmZoLXNsaWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8U2ltcGxlU2xpZGVyPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLXBsYXNtaWQtZmFjdG9yeS53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLWZyYW5rZnVydC53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLXp5bW8ud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1haXItdmlldy53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLWJpb2dsaW1tZXIud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1laW5kaG92ZW4ud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1lbmRvc2Vuc2UtanVkZ2Uud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1pc2FiZWxsLWVya2wtcnQud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1qb2Vybi53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLW1hcmJpcmcud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1vbmNvLWJpb3RpY2Eud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1yZWZpYmEud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi10ZWRkeS53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLXp5bW8tZ3J1cHBlLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgIDwvU2ltcGxlU2xpZGVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPiBcbiAgICAgICAgICAgICAgICA8L05vQnV0dFRpbWVsaW5lSXRlbT5cbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9zdmFuamEtdmlua2UuanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gd29yayBzYWZlJ1xuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJSS4nXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLXRleHQtcHJpbWFyeSknXG4gICAgICAgICAgICAgICAgY3NzdGFnPVwic2FmZXdvcmtzaG9wXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiU3ZlbmphXCJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIlZpbmtlXCJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiQWJvdXQgRHVhbC11c2UgYW5kIEJpb3NhZmV0eVwiXG4gICAgICAgICAgICAgICAgdGV4dD1cIk5vdmVsIHRlY2hub2xvZ2llcyBvcGVuZWQgcG9zc2liaWxpdGllcyBhbmQgcmlza3MuIExlYXJuIGhvdyB5b3UgaW1wbGVtZW50IFNhZmV0eSBhbmQgU2VjdXJpdHkgU3RyYXRlZ2llcyB3aXRoaW4geW91ciBwcm9qZWN0IGFuZCB0aGluayBtb3JlIHJlc3BvbnNpYmxlIGluIHRlcm1zIG9mIER1YWwgVXNlLlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2FmZXdvcmtzaG9wXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIGJpb3NhZmV0eSB3b3Jrc2hvcCB3YXMgaGVsZCBieSBTdmVuamEgVmlua2UuIEFzIGEgcG9zdGRvY3RvcmFsIHJlc2VhcmNoZXIgc3BlY2lhbGl6aW5nIGluIHN5bnRoZXRpYyBiaW9sb2d5IGF0IHRoZSBDaHVyY2ggTGFiLCBIYXJ2YXJkIE1lZGljYWwgU2Nob29sLiBTdmVuamEgd29ya3Mgb24gdGhlIGlHRU0gU2FmZXR5IGFuZCBTZWN1cml0eSBDb21taXR0ZWUuIEFkZGl0aW9uYWxseSwgc2hlIHdhcyBwYXJ0IG9mIHRoZSBCaW9zYWZldHkgYW5kIFNlY3VyaXR5IEF3YXJkIFRlYW0gb2YgQmllbGVmZWxkIFVuaXZlcnNpdHkgaW4gMjAxNi4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIEZpcnN0IGFuZCBmb3JlbW9zdCwgc2hlIHN0YXJ0ZWQgdGhlIHdvcmtzaG9wIGJ5IG91dGxpbmluZyB0aGUga2V5IGNvbmNlcHRzIG9mIGJpb3NhZmV0eSBhbmQgYmlvc2VjdXJpdHksIGVtcGhhc2l6aW5nIGhvdyBpbXBvcnRhbnQgbGFib3JhdG9yeSBzYWZldHkgaXMuICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Mtcy13b3Jrc2hvcC9iaW9zYWZldHktc2VtaW5hci1iZmgud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcy1zLXdvcmtzaG9wL3RlaWwtMi1iZmgtYmlvc2FmZXR5LndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5TaGUgYWxzbyBleHBsYWluZWQgd2hpY2ggc2FmZXR5IGFzcGVjdHMgd2Ugc2hvdWxkIGNvbnNpZGVyIGZvciBvdXIgcHJvamVjdDogIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+IDxiPkR1YWwgdXNlOjwvYj4gUmVmZXJzIHRvIHRlY2hub2xvZ3kgb3IgcmVzZWFyY2ggdGhhdCBjYW4gYmUgdXNlZCBmb3IgYm90aCBiZW5lZmljaWFsIGFuZCBoYXJtZnVsIHB1cnBvc2VzLiBGb3IgZXhhbXBsZSwgQUkgZGVzaWduZWQgZm9yIG1lZGljYWwgZGlhZ25vc2lzIGNvdWxkIGFsc28gYmUgbWlzdXNlZCBmb3IgaGFybWZ1bCBzdXJ2ZWlsbGFuY2UuIE1hbmFnaW5nIGR1YWwtdXNlIHJpc2tzIGludm9sdmVzIGNhcmVmdWwgY29uc2lkZXJhdGlvbiBvZiBib3RoIHRoZSBwb3NpdGl2ZSBhcHBsaWNhdGlvbnMgYW5kIHRoZSBwb3RlbnRpYWwgZm9yIG1pc3VzZS4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+IDxiPkJ1aWx0LUluIFNhZmV0eSBMZXZlbHM6PC9iPiAgICAgIFRoaXMgY29uY2VwdCBpbnZvbHZlcyBkZXNpZ25pbmcgc3lzdGVtcyB3aXRoIG11bHRpcGxlIGxheWVycyBvZiBzYWZldHkgdG8gcHJldmVudCBmYWlsdXJlIG9yIG1pbmltaXplIGhhcm0uIEluIHRlY2hub2xvZ3kgYW5kIGVuZ2luZWVyaW5nLCBidWlsdC1pbiBzYWZldHkgbGV2ZWxzIGVuc3VyZSB0aGF0IGV2ZW4gaWYgb25lIGxheWVyIGZhaWxzLCBvdGhlcnMgcmVtYWluIGludGFjdCB0byBtYWludGFpbiBzYWZlIG9wZXJhdGlvbi4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+ICA8Yj5TYWZlLWJ5LURlc2lnbjogPC9iPiAgU2FmZS1ieS1EZXNpZ24gZW1waGFzaXplcyBpbnRlZ3JhdGluZyBzYWZldHkgY29uc2lkZXJhdGlvbnMgaW50byB0aGUgZWFybGllc3Qgc3RhZ2VzIG9mIHByb2R1Y3Qgb3Igc3lzdGVtIGRldmVsb3BtZW50LiBCeSBhbnRpY2lwYXRpbmcgcmlza3MgYW5kIGhhemFyZHMgZnJvbSB0aGUgc3RhcnQsIHRoaXMgYXBwcm9hY2ggcHJvYWN0aXZlbHkgbWluaW1pemVzIGRhbmdlcnMgYmVmb3JlIHRoZXkgYmVjb21lIGlzc3VlcywgbGVhZGluZyB0byBzYWZlciBvdXRjb21lcy4gIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgRmluYWxseSwgZWFjaCB0ZWFtIGdhdmUgYnJpZWYgcHJlc2VudGF0aW9ucyBvZiB0aGVpciBwcm9qZWN0cyBhbmQgZW5nYWdlZCBpbiBhIGdyb3VwIGRpc2N1c3Npb24gb24gcG90ZW50aWFsIHNlY3VyaXR5IHJpc2tzIGFuZCBnZW5lcmFsIHNlY3VyaXR5IGNvbnNpZGVyYXRpb25zLiBUb2dldGhlciwgd2UgYnJhaW5zdG9ybWVkIGFuZCBpZGVudGlmaWVkIHNwZWNpZmljIGFzcGVjdHMgb2YgZWFjaCBwcm9qZWN0IHRoYXQgY291bGQgcHJlc2VudCBwb3RlbnRpYWwgcmlza3MuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSBTdmVuamFcdTIwMTlzIHNlbWluYXIsIHdlIGxlYXJuZWQgd2hpY2ggc2FmZXR5LXJlbGV2YW50IGFzcGVjdHMgYXJlIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQsIGFzIHdlbGwgYXMgdGhlIGltcG9ydGFuY2Ugb2YgZXhhbWluaW5nIGEgcHJvamVjdCBmcm9tIGRpZmZlcmVudCBwZXJzcGVjdGl2ZXMgdG8gaWRlbnRpZnkgYW5kIG1pbmltaXplIHBvdGVudGlhbCByaXNrcyByZWxhdGVkIHRvIGxhYiB3b3JrIGFuZCB0aGUgZW52aXJvbm1lbnQuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVR3b1BpY1xuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvanVsaWEtai1sYWlub3dza2kuanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gQ29tbXVuaWNhdGUgU2NpZW5jZSdcbiAgICAgICAgICAgICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9tYWxtZW5kaWVyLnBuZ1wiXG4gICAgICAgICAgICAgICAgdGFnPSdXb3Jrc2hvcCBTZXNzaW9uIElJLidcbiAgICAgICAgICAgICAgICB2b3JuYW1lMj1cIkNhcm9saW5cIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJKdWxpYVwiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJLYWxpbm93c2tpXCJcbiAgICAgICAgICAgICAgICBuYWNobmFtZTI9XCJNYWxtZW5kaWVyXCJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJjb21td29ya3Nob3BcIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJFZmZlY3RpdmUgU2NpZW5jZSBDb21tdW5pY2F0aW9uOiBTdHJhdGVnaWVzIGZvciBTdWNjZXNzXCJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiRXhwZXJpZW5jZSBob3cgc2NpZW5jZSBjb21tdW5pY2F0aW9uIGNvdWxkIGJlLiBMZWFybiBjcmVhdGl2ZSBhbmQgZnVubnkgd2F5cyB0byBjb21tdW5pY2F0ZSBkaWZmaWN1bHQgdG9waWNzLiBUaGluayBvdXRzaWRlIHRoZSBib3ggYW5kIHRyYWluIHlvdXIgc2tpbGxzLiBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGJyPjwvYnI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJjb21td29ya3Nob3BcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnI+PC9icj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5TZXR0aW5nPC9oNj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyB3b3Jrc2hvcCB3YXMgb2ZmZXJlZCB0byB1cyBieSBTdHVkU2NpQ29tIGFzIHBhcnQgb2YgdGhlIEJGSCBNZWV0LXVwIHByb2dyYW0gYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LnN0dWQtc2NpY29tLmRlL1wiPiBTdHVkU2NpQ29tPC9hPiBpcyBhbiBpbml0aWF0aXZlIGZvciBzY2llbmNlIGNvbW11bmljYXRpb24gYnkgc3R1ZGVudHMgZm9yIHN0dWRlbnRzIGluIEdlcm1hbnkuIFxuICAgICAgICAgICAgICAgICAgICAgICAgVGhleSBoZWxkIHRoaXMgd29ya3Nob3AgZm9yIHVzIGZvciB0aGUgdmVyeSBcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0IHRpbWUgYW5kIHdlIGFyZSBnbGFkIHRoYXQgd2Ugd2VyZSBhYmxlIHRvIG9mZmVyIHRoZSB1cHJpc2luZyBTdHVkU2NpQ29tIHRlYW0gYSBwbGF0Zm9ybSB0byB0cnkgb3V0IHRoaXMga2luZCBvZiBvdXRyZWFjaC4gSW4gYWRkaXRpb24sIFxuICAgICAgICAgICAgICAgICAgICAgICAgd2Ugd2VyZSBhYmxlIHRvIGdhaW4ga25vd2xlZGdlIGFib3V0IHByb3BlciBzY2llbmNlIGNvbW11bmljYXRpb24gXHUyMDEzIGEgY2xlYXIgd2luLXdpbiBzaXR1YXRpb24gZm9yIGFsbCBvZiB1cyFcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgU2NpZW5jZSBjb21tdW5pY2F0aW9uIGlzIGRlZmluZWQgYXMgdGhlIHByYWN0aWNlIG9mIGluZm9ybWluZywgZWR1Y2F0aW5nLCBhbmQgcmFpc2luZyBhd2FyZW5lc3MgYWJvdXQgc2NpZW5jZS1yZWxhdGVkIHRvcGljcyBhbW9uZyB0aGUgZ2VuZXJhbCBwdWJsaWMgXG4gICAgICAgICAgICAgICAgICAgICAgICBvciBzcGVjaWZpYyBhdWRpZW5jZXMuIEl0IGludm9sdmVzIHZhcmlvdXMgbWV0aG9kcyBzdWNoIGFzIHdyaXRpbmcgYXJ0aWNsZXMsIGdpdmluZyBwcmVzZW50YXRpb25zLCB1c2luZyBzb2NpYWwgbWVkaWEsIGFuZCBlbmdhZ2luZyBpbiBwdWJsaWMgZGlzY3Vzc2lvbnMgXG4gICAgICAgICAgICAgICAgICAgICAgICB0byBtYWtlIHNjaWVudGlmaWMga25vd2xlZGdlIGFjY2Vzc2libGUgYW5kIHVuZGVyc3RhbmRhYmxlPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPi4gXG4gICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5XaGF0IGRpZCB3ZSBsZWFybj88L2g2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBKdWxpYSBLYWxpbm93c2tpLCBQaEQgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIEZvcmVpZ24gTWluaXN0ZXIgb2YgU3R1ZFNjaUNvbSwgdG9nZXRoZXIgd2l0aCBDYXJvbGluIE1hbG1lbmRpZXIsIFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWVyIHBoeXNpY3Mgc3R1ZGVudCBhbmQgbm93IG9yZ2FuaXplciBpbiB0aGUgU3R1ZFNjaUNvbSB0ZWFtLCBpbnRyb2R1Y2VkIHVzIHRvIHRoZSB0aGVvcmllcyBhbmQgIHByYWN0aWNlIFxuICAgICAgICAgICAgICAgICAgICAgICAgb2YgZGlmZmVyZW50IHR5cGVzIG9mIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBhbmQgaG93IHRvIGRldmVsb3AgYSBjb21tdW5pY2F0aW9uIHN0cmF0ZWd5LiBcbiAgICAgICAgICAgICAgICAgICAgICAgIEluIGRldGFpbCwgd2Ugd2VyZSB0YXVnaHQgdG8gYXNrIG91cnNlbHZlcyBzZXZlcmFsIHF1ZXN0aW9ucyB0byBkZWZpbmUgb3VyIHRvcGljLCB0aGUgbWVkaXVtIG9mIFxuICAgICAgICAgICAgICAgICAgICAgICAgY29tbXVuaWNhdGlvbiwgYXMgd2VsbCBhcyB0aGUgY2hhcmFjdGVyaXphdGlvbiBvZiBvdXIgdGFyZ2V0IGdyb3VwIGFuZCB0aGUgcGxhbm5lZCBhY2hpZXZlbWVudCB3aXRoIG91ciBcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjaWVuY2UgY29tbXVuaWNhdGlvbi4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci92b3J0cmFnLXNjaWNvbS1iZmgtc2NyZWVuc2hvdC5qcGdcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBrZXkgbWVzc2FnZSBmb3IgdXMgd2FzIHRvIHBsYW4gdGhlIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBiZWZvcmUgd2UgZGl2ZSBpbiBhbmQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldCBhdWRpZW5jZSBnZXRzIHRoZSBtZXNzYWdlIHdlIHdhbnQgdG8gc2VuZC4gIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5JbXBsZW1lbnRhdGlvbjwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIEFmdGVyd2FyZHMsIHRoZSBhdHRlbmRpbmcgaUdFTSB0ZWFtcyB0YWxrZWQgYWJvdXQgdGhlaXIgc2NpZW5jZSBjb21tdW5pY2F0aW9uIHBsYW5zIGFuZCBob3cgdGhleSBjb3VsZCBpbXByb3ZlIHRoZW0gXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2luZyB0aGUgc2tpbGxzIGxlYXJuZWQgaW4gdGhpcyB3b3Jrc2hvcC4gT3VyIHRlYW0gcmV2aXNlZCB0aGVpciBwbGFucyBmb3IgZXhwbGFpbmluZyBnZW5lIGVkaXRpbmcgdG8gXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbiBhbmQgc3RhcnRlZCBkZXZlbG9waW5nIGV4cGVyaW1lbnRzIHRvIGhlbHAgdGhlbSBiZXR0ZXIgdW5kZXJzdGFuZCBjeXN0aWMgZmlicm9zaXMsIHdoaWNoIHdlIFxuICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VudGVkIGxhdGVyIG9udG8gdGhlIHB1YmxpYyBhdCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKFwidGV1dG9ydWZ0XCIsIFwiaHVtYW4tcHJhY3RpY2VzXCIpfT5cdTIwMUNEZXIgVGV1dG8gcnVmdCFcdTIwMUQ8L2E+LCBhbiBldmVudCBpbiBCaWVsZWZlbGQgdG8gY29ubmVjdCB0aGUgbG9jYWwgXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3B1bGF0aW9uIHdpdGggcmVnaW9uYWwgY29tcGFuaWVzIGFuZCBpbnN0aXR1dGVzIHRvIGluZm9ybSB0aGVtIGFib3V0IHRoZWlyIHdvcmsgLSBpbmNsdWRpbmcgb3VyIGlHRU0gdGVhbSEgXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDY+UmVmZXJlbmNlczwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8b2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgey8qPCEtLSBDaXRhdGlvbiBudW0gMS0tPiAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRmlzY2hob2ZmLCBCLjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7VGhlIHNjaWVuY2VzIG9mIHNjaWVuY2UgY29tbXVuaWNhdGlvbi4gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IFByb2NlZWRpbmdzIG9mIHRoZSBOYXRpb25hbCBBY2FkZW15IG9mIFNjaWVuY2VzPC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxMTA8L2I+LCZuYnNwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gMTQwMzM8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4xNDAzOTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMTNcIj4yMDEzPC90aW1lPikuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTA3My9wbmFzLjEyMTMyNzMxMTBcIj4gZG9pOiAxMC4xMDczL3BuYXMuMTIxMzI3MzExMDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICBcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVR3b1BpYz5cbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIFBpdGNoIFlvdXIgUHJvamVjdCdcbiAgICAgICAgICAgICAgICB0YWc9J1dvcmtzaG9wIFNlc3Npb24gSUkuJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS10ZXh0LXByaW1hcnkpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInBpdGNoXCJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21hZGVsZWluZS1tdXNzZ251Zy5qcGdcIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJNYWRlbGVpbmVcIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiTXVzc2dudWdcIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgdGV4dD1cIkltYWdlIHlvdSBoYXZlIG9ubHkgdGhyZWUgbWludXRlcyB3aXRoIHlvdXIgYm9zcyB0byBzZWxsIHlvdXIgaWRlYS4uLiBcbiAgICAgICAgICAgICAgICBBZnRlciBvdXIgd29ya3Nob3AgeW91IGxlYXJuZWQgdGVjaG5pcXVlcyB0byBzZWxsIGV2ZXJ5IHBlbiBhbmQgZXZlbiBtb3JlIHRvIGV2ZXJ5IGJvc3Mgb24gdGhlIHBsYW5ldC4gICAgICAgXG4gICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID4gXG4gICAgICAgICAgICAgICAgPGRpdiBpZD1cInBpdGNoXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgXCJQZXJmZWN0IFByb2plY3QgUGl0Y2hcIiB3b3Jrc2hvcCB3YXMgcGFydCBvZiB0aGUgc2Vjb25kIHBoYXNlIG9mIHdvcmtzaG9wcyBkdXJpbmcgdGhlIGluYXVndXJhbCBCRkggbWVldC11cCwgaG9zdGVkIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LiBJdCB3YXMgbGVkIGJ5IE1hZGVsZWluZSBNdXNzZ251ZywgYSBzdGFydHVwIGNvbnN1bHRhbnQgYXQgdGhlIEdvZXRoZSBVbml2ZXJzaXR5J3MgZW50cmVwcmVuZXVyc2hpcCBjZW50ZXIgaW4gRnJhbmtmdXJ0LCBHZXJtYW55LiBNYWRlbGVpbmUgc3R1ZGllZCBJbnRlcm5hdGlvbmFsIE1hbmFnZW1lbnQgYW5kIFRvdXJpc20gYW5kIGhhcyBleHRlbnNpdmUgZXhwZXJpZW5jZSwgaW5jbHVkaW5nIHNldmVyYWwgeWVhcnMgYXQgdGhlIHNjYWxlLXVwIGNvbXBhbnkgTGltZWhvbWUuIEN1cnJlbnRseSwgc2hlIGFsc28gd29ya3MgYXMgYSBmcmVlbGFuY2UgY29uc3VsdGFudCBzcGVjaWFsaXppbmcgaW4gb25saW5lIG1hcmtldGluZywgc29jaWFsIG1lZGlhLCBhbmQgc3VwcG9ydGluZyBpbmRpdmlkdWFscyBpbiBiZWNvbWluZyBzZWxmLWVtcGxveWVkLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSB3b3Jrc2hvcCBmb2N1c2VkIG9uIHRoZSBlc3NlbnRpYWwgc2tpbGxzIGFuZCBzdHJhdGVnaWVzIGZvciBkZWxpdmVyaW5nIGFuIGVmZmVjdGl2ZSBwcm9qZWN0IHBpdGNoLCBjb3ZlcmluZyB0aGUgZm9sbG93aW5nIGtleSBhcmVhczogPC9wPlxuICAgICAgICAgICAgICAgICAgICA8b2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+ICAgIENyYWZ0aW5nIGNvbXBlbGxpbmcgbmFycmF0aXZlcyB0byBwcmVzZW50IGNvbXBsZXggaWRlYXMgY2xlYXJseSBhbmQgZW5nYWdpbmdseSwgZW5zdXJpbmcgdGhleSByZW1haW4gbWVtb3JhYmxlIGZvciB0aGUgYXVkaWVuY2UuIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+ICAgIFN0cnVjdHVyaW5nIGFuZCBvcmdhbml6aW5nIHBpdGNoZXMgdG8gaGlnaGxpZ2h0IGNyaXRpY2FsIGVsZW1lbnRzIHN1Y2ggYXMgaW5ub3ZhdGlvbiwgbWFya2V0IHBvdGVudGlhbCwgYW5kIHRlYW0gc3RyZW5ndGhzLCB0aHVzIGNvbW11bmljYXRpbmcgeW91ciBtZXNzYWdlIGVmZmVjdGl2ZWx5LiA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPiAgICBUYWlsb3JpbmcgcGl0Y2hlcyB0byByZXNvbmF0ZSB3aXRoIGRpZmZlcmVudCB0YXJnZXQgYXVkaWVuY2VzLCBpbmNsdWRpbmcgaW52ZXN0b3JzIGFuZCBjb2xsYWJvcmF0b3JzLCBtYWtpbmcgdGhlbSBhZGFwdGFibGUgYW5kIGltcGFjdGZ1bC4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gICAgQnVpbGRpbmcgY29uZmlkZW5jZSBhbmQgbWFzdGVyaW5nIHBlcnN1YXNpdmUgdGVjaG5pcXVlcyB0byBjb252aW5jaW5nbHkgY29tbXVuaWNhdGUgdGhlIHZhbHVlIG9mIHlvdXIgcHJvamVjdC4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gICAgVXRpbGl6aW5nIGNyZWF0aXZlIGFuZCB2aXN1YWxseSBhcHBlYWxpbmcgcGl0Y2ggbWF0ZXJpYWxzLCB3aXRoIGEgZm9jdXMgb24gaW50ZWdyYXRpbmcgdmlzdWFscyBhbmQgZGF0YSBlZmZlY3RpdmVseSB0byBlbmhhbmNlIHRoZSBwcmVzZW50YXRpb24uIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDwvb2w+XG4gICAgICAgICAgICAgICAgICAgIDxwPk1hZGVsZWluZSBNdXNzZ251ZyBkZWxpdmVyZWQgdGhlc2UgaW5zaWdodHMgdGhyb3VnaCBhIGJhbGFuY2VkIG1peCBvZiBwcmVzZW50YXRpb24gYW5kIGludGVyYWN0aXZlIGRpc2N1c3Npb25zLiBTaGUgcHJvdmlkZWQgcmVhbC13b3JsZCBleGFtcGxlcyBhbmQgZW5nYWdlZCB0aGUgYXVkaWVuY2UgYnkgcHJvbXB0aW5nIHRoZW0gdG8gcmVmbGVjdCBvbiBzcGVjaWZpYyB0ZWNobmlxdWVzLCBpbWFnZXMsIGFuZCBzdHlsaXN0aWMgY2hvaWNlcy4gRm9yIGluc3RhbmNlLCBzaGUgZGVtb25zdHJhdGVkIHRoZSBzdHJhdGVnaWMgdXNlIG9mIG51bWJlcnMgYW5kIGljb25zIG9uIHNsaWRlcywgZGlzY3Vzc2luZyBob3cgdGhlaXIgc2l6ZSBhbmQgcGxhY2VtZW50IGNhbiBpbmZsdWVuY2UgdGhlIHZpZXdlclx1MjAxOXMgcGVyY2VwdGlvbi4gQnkgc2hvd2luZyBkaWZmZXJlbnQgc2xpZGUgY29uc3RlbGxhdGlvbnMsIHNoZSBlbmNvdXJhZ2VkIHRoZSBhdWRpZW5jZSB0byBkaXNjdXNzIHRoZWlyIHZpc3VhbCBpbXBhY3QuIFRoZSB3b3Jrc2hvcCBjb25jbHVkZWQgd2l0aCBhIGZvY3VzIG9uIHRoZSBpbXBvcnRhbmNlIG9mIG5ldHdvcmtpbmcuIEFjY29yZGluZyB0byBNdXNzZ251Zywga25vd2luZyB3aG9tIHRvIGFwcHJvYWNoIGFuZCBob3cgdG8gZW5nYWdlIHdpdGggdGhlbSBpcyBrZXlcdTIwMTR0aGlzLCBzaGUgZW1waGFzaXplZCwgaXMgdGhlIGVzc2VuY2Ugb2Ygc3VjY2Vzc2Z1bCBwaXRjaGluZy4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5XZSBpbW1lZGlhdGVseSBwdXQgd2hhdCB3ZSBsZWFybmVkIGludG8gcHJhY3RpY2UgaW4gdmFyaW91cyBhcmVhcywgc3VjaCBhczogPC9wPlxuICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+TWVldC11cCBNXHUwMEZDbnN0ZXIgUHJlc2VudGF0aW9uOjwvYj4gICAgV2UgYWRvcHRlZCBhIGZyZXNoLCBpbm5vdmF0aXZlIGFwcHJvYWNoIHdoZW4gcHJlcGFyaW5nIGZvciB0aGUgTVx1MDBGQ25zdGVyIG1lZXQtdXAsIGludGVncmF0aW5nIG1hbnkgb2YgdGhlIHRlY2huaXF1ZXMgZnJvbSB0aGUgd29ya3Nob3AuIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+Q29ycmVzcG9uZGVuY2Ugd2l0aCBQb3RlbnRpYWwgUGFydG5lcnMgYW5kIFNwb25zb3JzOiA8L2I+ICAgIE91ciBjb21tdW5pY2F0aW9uIGJlY2FtZSBtb3JlIHRhcmdldGVkIGFuZCBlZmZlY3RpdmUsIGFsbG93aW5nIHVzIHRvIGJ1aWxkIHN0cm9uZ2VyIGNvbm5lY3Rpb25zIHdpdGggcG90ZW50aWFsIHBhcnRuZXJzIGFuZCBzcG9uc29ycy4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5JbXByb3ZlZCBTdGVlcmluZyBDb21taXR0ZWUgQ29tbXVuaWNhdGlvbjo8L2I+ICAgIFdlIGFsc28gc2F3IGEgbm90aWNlYWJsZSBpbXByb3ZlbWVudCBpbiBvdXIgaW50ZXJhY3Rpb25zIHdpdGggdGhlIHN0ZWVyaW5nIGNvbW1pdHRlZSwgdXNpbmcgY2xlYXJlciBhbmQgbW9yZSBwZXJzdWFzaXZlIG1lc3NhZ2luZy4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgPHA+SW4gZXNzZW5jZSwgdGhlIHdvcmtzaG9wIG5vdCBvbmx5IGVuaGFuY2VkIG91ciBwaXRjaGluZyBza2lsbHMgYnV0IGFsc28gc2lnbmlmaWNhbnRseSBpbXByb3ZlZCBvdXIgb3ZlcmFsbCBjb21tdW5pY2F0aW9uIHN0cmF0ZWdpZXMsIGVuYWJsaW5nIHVzIHRvIHByZXNlbnQgb3VyIGlkZWFzIHdpdGggZ3JlYXRlciBjb25maWRlbmNlIGFuZCBpbXBhY3QuIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21pY2hhZWwuanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gTXVsdGkgTWVkaWEnXG4gICAgICAgICAgICAgICAgdGFnPSdXb3Jrc2hvcCBTZXNzaW9uIElJLidcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJtdWx0aW1lZGlhXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiTWljaGFlbFwiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJHclx1MDBGNm5pbmdcIlxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJNYXN0ZXJpbmcgRmlsbW1ha2luZzogRnJvbSBCYXNpY3MgdG8gaUdFTSBWaWRlbyBQcm9kdWN0aW9uXCJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiTGVhcm4gdGhlIGJhc2ljcyBvZiBmaWxtbWFraW5nIGFuZCB2aWRlbyBwcm9kdWN0aW9uLiBcbiAgICAgICAgICAgICAgICBMb29rIGJlaGluZCB0aGUgc2NlbmVzIGFuZCBnZXQgaW4gdG91Y2ggd2l0aCBwcm9mZXNzaW9uYWxzLiBcbiAgICAgICAgICAgICAgICBUcmFpbiB5b3VyIHNraWxscyB0byBkaXJlY3QgaUdFTS1yZWxhdGVkIHZpZGVvcyBhbmQgbW92aWVzLlwiXG4gICAgICAgICAgICAgICAgPiBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwibXVsdGltZWRpYVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk1pY2hhZWwgR3JcdTAwRjZuaW5nLCB3aG8gaGFzIG1hbnkgeWVhcnMgb2YgZXhwZXJpZW5jZSBpbiBhIHJhbmdlIG9mIG11bHRpbWVkaWEgZGlzY2lwbGluZXMsIGluY2x1ZGluZyAzRCBhbmltYXRpb24sIHZpZGVvIGFuZCBjaW5lbWF0b2dyYXBoeSwgZmlsbSBhbmQgYXVkaW8gcHJvZHVjdGlvbiwgcG9zdC1wcm9kdWN0aW9uLCB2b2ljZW92ZXIgYW5kIG1lZGlhIGRlc2lnbiwgaGVsZCB0aGUgcHJhY3RpY2FsIHdvcmtzaG9wIG9uIG11bHRpbWVkaWEuIEZpcnN0bHksIHRoZSBzaWduaWZpY2FuY2Ugb2YgdGhlIFByb21vdGlvbiBWaWRlbyB3YXMgZWx1Y2lkYXRlZCwgYW5kIHRoZSBwYXJhbW91bnQgaW1wb3J0YW5jZSBvZiB0aGUgZ2VuZXJhbCBleHRlcm5hbCByZXByZXNlbnRhdGlvbiB3YXMgY2xhcmlmaWVkLiBRdWVzdGlvbnMgYW5kIHRyaWNrcyBwcm92aWRlZCB0aGUgcGFydGljaXBhbnRzIGEgYmFzaXMgZm9yIGZpbmRpbmcgaWRlYXMgZm9yIHRoZWlyIHZpZGVvcywgd2hpY2ggd2VyZSBjb21iaW5lZCB3aXRoIHN0b3J5IGFuZCBtb29kIGJvYXJkcyBhbmQgdGhlIHJlYXNvbmFibGUgdXNlIG9mIEFJLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3dvcmtzaG9wLW11bHRpbWVkaWEtZXhwb3N1cmUtdHJpYW5nbGUud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QSB3aWRlLXJhbmdpbmcgb3ZlcnZpZXcgb2YgdmFyaW91cyBjYW1lcmEgc2hvdHMsIGxpZ2h0aW5nIHRlY2huaXF1ZXMgYW5kIHRyYW5zaXRpb25zIHdhcyBwcmVzZW50ZWQgdG8gdGhlIHBhcnRpY2lwYW50cywgZXF1aXBwaW5nIHRoZW0gd2l0aCBhIHVzZWZ1bCB0b29sa2l0IGZvciB0aGUgcHJvZHVjdGlvbiBvZiBjaW5lbWF0b2dyYXBoaWMgdmlkZW9zLiBJbGx1c3RyYXRpdmUgZ3JhcGhpY3MsIHN1Y2ggYXMgdGhlIEV4cG9zdXJlIFRyaWFuZ2xlLCBoZWxwZWQgdGhlbSB0byBleHBlcmltZW50IHdpdGggcHJvZmVzc2lvbmFsIGNhbWVyYSBzZXR0aW5ncyBvbiB0aGVpciBtb2JpbGUgcGhvbmVzLiBUaHJvdWdoIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB2b2ljZSB3YXJtLXVwIGV4ZXJjaXNlcywgdGhlIHdvcmtzaG9wIHBhcnRpY2lwYW50cyB3ZXJlIGFibGUgdG8gZ2FpbiBpbnNpZ2h0cyBpbnRvIHRoZSBwcmVwYXJhdGlvbiBvZiB2b2ljZS1vdmVycy4gQW4gaW50cm9kdWN0aW9uIHRvIHZhcmlvdXMgbWljcm9waG9uZXMgYW5kIGF1ZGlvIGVkaXRpbmcgc29mdHdhcmUgZW5hYmxlZCB0aGVtIHRvIGxlYXJuIGhvdyB2b2ljZSByZWNvcmRpbmcgaXMgY29udmVydGVkIHRvIHN0dWRpbyBxdWFsaXR5LjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBwYXJ0aWNpcGFudHMgd2VyZSBhYmxlIHRvIGdhaW4gdmFsdWFibGUgcHJhY3RpY2FsIGluc2lnaHRzIGludG8gdGhlIHdvcmxkIG9mIG11bHRpbWVkaWEgYW5kIHRodXMgcHJlcGFyZSB0aGVtc2VsdmVzIHRvIHByb2R1Y2UgYnJlYXRodGFraW5nIHZpZGVvcy4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvd29ya3Nob3AtbXVsdGltZWRpYTIud2VicFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxuICAgICAgICAgICAgICAgIDxQYW5lbFRpbWVsaW5lSXRlbT48L1BhbmVsVGltZWxpbmVJdGVtPlxuIFxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21pZGRlbmRvcmYuanBlZ1wiXG4gICAgICAgICAgICAgICAgZGF0ZT0naUdFTWVyIFRlZCBUYWxrcydcbiAgICAgICAgICAgICAgICB0YWc9ICdUYWxrcycgXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWxpZ2h0Ymx1ZSknXG4gICAgICAgICAgICAgICAgaGVhZGluZz1cIlNlY3JldHMgdG8gYXdhcmQtd2lubmluZyBiaW9pbmZvcm1hdGljcyB0b29sc1wiXG4gICAgICAgICAgICAgICAgdGV4dD1cIkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZXRldHVyIHNhZGlwc2NpbmcgZWxpdHIsIHNlZCBkaWFtIG5vbnVteSBlaXJtb2QgdGVtcG9yIGludmlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXV5YW0gZXJhdCwgc2VkIGRpYW0gdm9sdXB0dWEuIEF0IHZlcm8gZW9zIGV0IGFjY3VzYW0gZXRcIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJMYXNzZVwiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJNaWRkZW5kb3JmXCJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJ0ZWR0YWxrMVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwidGVkdGFsazFcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5MYXNzZVx1MjAxOXMgVGVkIHRhbGsgd2FzIGFsbCBhYm91dCBob3cgdG8gY3JlYXRlIGdvb2QgYmlvaW5mb3JtYXRpY3Mgc29mdHdhcmUuIEhlIGhpbXNlbGYgd2FzIHBhcnQgb2YgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGRyeSBsYWIgaW4gaUdFTSBNXHUwMEZDbnN0ZXJcdTIwMTlzIFRlYW0gdGhhdCB3b24gdGhlIGJlc3Qgc29mdHdhcmUgc3BlY2lhbCBwcml6ZSBpbiAyMDIyLiBUaGUgdG9vbCB0aGV5IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZWQgYWxsb3dlZCB1c2VycyB0byBnZW5lcmF0ZSBrbm9ja291dCBjYW5kaWRhdGVzIGZvciBhbiBvcmdhbmlzbSBvZiB0aGVpciBjaG9pY2UgdGhhdCB3b3VsZCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWFkIHRvIHJlZGlyZWN0aW9uIG9mIG1ldGFib2xpYyBmbHV4IHRvIGEgcmVhY3Rpb24gY2hvc2VuIGJ5IHRoZSB1c2VyLiBXZSBsZWFybmVkIHRoYXQgdGhlIG1vc3QgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wb3J0YW50IGF0dHJpYnV0ZXMgZm9yIGEgc3VjY2Vzc2Z1bCBiaW9pbmZvcm1hdGljcyBzb2Z0d2FyZSBhcmU6IDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+VXNlZnVsbmVzcyA8L2I+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+QWNjZXNzaWJpbGl0eTwvYj48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5CdWlsZCB1cG9uIGV4aXN0aW5nIHN0YW5kYXJkcyAgPC9iPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VG8gZW5zdXJlIHVzZWZ1bG5lc3MsIHRoZSBzb2Z0d2FyZSBzaG91bGQgYmUgZ2VuZXJhbGl6ZWQgYW5kIG5vdCBvbmx5IHVzYWJsZSBpbiB0aGUgY29udGV4dCBvZiBvbmVcdTIwMTlzIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG93biBwcm9qZWN0LiBBbHNvLCBhbGwgc3RlcHMgdGhhdCBjYW4gYmUgYXV0b21hdGVkIHNob3VsZCBiZSBhdXRvbWF0ZWQuIEFjY2Vzc2liaWxpdHksIExhc3NlIHNhaWQsIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzIGZvciB0aGUgc29mdHdhcmUgdG8gYmUgZWFzeSB0byBpbnN0YWxsLCBlYXN5IHRvIHVzZSBhbmQgd2VsbCBkb2N1bWVudGVkLiAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QXMgYSBmdW5ueSwgYnV0IGFsc28gdmVyeSBmaXR0aW5nIGFuZWNkb3RlLCBMYXNzZSB0b2xkIHVzIGFib3V0IHRoZSBIVSB0ZXN0LiBGb3IgdGVzdGluZyB0aGVpciBvd24gdG9vbCBmb3IgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjZXNzaWJpbGl0eSwgaGUgZ2F2ZSBhIGJpb2luZm9ybWF0aWNhbGx5IHVuZXhwZXJpZW5jZWQsIDxiPmg8L2I+dW5nb3ZlciA8Yj51PC9iPm5kZXJncmFkdWF0ZSBzdHVkZW50IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdGhpbmcgYnV0IHRoZSBzb2Z0d2FyZSB3aXRoIHRoZSBwcm92aWRlZCBkb2N1bWVudGF0aW9uLiBJZiB0aGUgc3R1ZGVudCBjYW4gdXNlIHRoZSB0b29sIGluIGEgcmVhc29uYWJsZSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQgdGltZSwgdGhhdCB3b3VsZCBtYWtlIGl0IGFjY2Vzc2libGUgZW5vdWdoIGZvciBldmVyeW9uZS4gRnVydGhlcm1vcmUsIExhc3NlIGFsc28gcmVjb21tZW5kZWQgbWFraW5nIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgY29tbWFuZCBsaW5lIHRvb2wgZm9yIGJldHRlciBhdmFpbGFiaWxpdHkgb3ZlciB0aW1lIGFuZCBpbnRlZ3JhdGlvbiBpbnRvIG90aGVyIHdvcmtmbG93cy4gTGFzdGx5LCB0aGUgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc29mdHdhcmUgc2hvdWxkIHVzZSBzdGFuZGFyZCBkYXRhIGZpbGVzIGxpa2UgQ1NWLCBGYXN0YSBldGMuIGFuZCBiZSB3cml0dGVuIGluIGNvbW1vbmx5IHVzZWQgcHJvZ3JhbW1pbmcgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFuZ3VhZ2VzIGxpa2UgUHl0aG9uLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5PdmVyYWxsLCBMYXNzZSBnYXZlIGEgZ3JlYXQgaW5zaWdodCBpbnRvIHRoZSBwcm9wZXJ0aWVzIG9mIGEgc3BlY2lhbCBwcmljZSB3aW5uaW5nIHNvZnR3YXJlIHRvb2wgYW5kIHZlcnkgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJhY3RpY2FsbHkgZXhwbGFpbmVkIGhvdyB0aGVzZSBjYW4gYmUgdGVzdGVkIGFuZCBhY2hpZXZlZCwgaW5mb3JtYXRpb24gdGhhdCBpcyBpbnZhbHVhYmxlIGZvciB1cyB3aGVuIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0aW5nIG91ciBvd24gYmlvaW5mb3JtYXRpY3MgdG9vbC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21lcmVsdmFuZGVuYm9zY2guanBnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdpR0VNZXIgVGVkIFRhbGtzJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRlZHRhbGsyXCJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiTWVyZWxcIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwidmFuIGRlciBCb3NjaFwiXG4gICAgICAgICAgICAgICAgaGVhZGluZz1cIkhvdyB0byBDcmVhdGUgdGhlIFBlcmZlY3QgUGFydCBDaGFyYWN0ZXJpemF0aW9uXCJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiRGlzY292ZXIgdGhlIHNlY3JldHMgdG8gd2lubmluZyBpR0VNJ3MgQ29tcG9zaXRlIGFuZCBOZXcgQmFzaWMgUGFydCBhd2FyZHMgd2l0aCBpbnNpZ2h0cyBmcm9tIE1lcmVsIHZhbiBkZW4gQm9zY2guIExlYXJuIGhvdyB0byBkZXNpZ24gc2ltcGxlIHlldCBpbXBhY3RmdWwgZXhwZXJpbWVudHMsIGVtcGhhc2l6ZSBpbm5vdmF0aW9uLCBhbmQgZWZmZWN0aXZlbHkgc2hvd2Nhc2UgeW91ciBwYXJ0J3MgcG90ZW50aWFsLlwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInRlZHRhbGsyXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWVyZWwgcHJvdmlkZWQgdXMgd2l0aCBzdHJhdGVnaWVzIGJhc2VkIG9uIGhlciBjRUxQcm8gcHJvamVjdCBhdCBUVSBFaW5kaG92ZW4gb24gaG93IHRvIGFwcHJvYWNoIHdpbm5pbmcgdGhlIHNwZWNpYWwgYXdhcmRzIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBDb21wb3NpdGUgUGFydCBhbmQgTmV3IEJhc2ljIFBhcnQuIEhlciB0ZWFtIHdvbiB0aGUgPGEgaHJlZj1cImh0dHBzOi8vMjAyMy5pZ2VtLndpa2kvdHUtZWluZGhvdmVuL2F3YXJkc1wiPkNvbXBvc2l0ZSBQYXJ0IFByaXplIGFuZCB0aGUgVGhlcmFwZXV0aWMgUHJpemU8L2E+IGF0IHRoZSAyMDIzIGlHRU0gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGV0aXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIEFmdGVyIHByZXNlbnRpbmcgaGVyIHRlYW0ncyBwcm9qZWN0LCBNZXJlbCBpbnNwaXJlZCB1cyB3aXRoIHdheXMgd2UgY291bGQgYWxzbyBhY2hpZXZlIHRoaXMgYXdhcmQuIFdlIGxlYXJuZWQgZGlmZmVyZW50IGNvbnNpZGVyYXRpb25zIHRvIG1ha2UsIHdoZW4gaXQgY29tZXMgdG8gcGFydCBjaGFyYWN0ZXJpemF0aW9uOiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+SG93IHRvIGVtcGhhc2l6ZSB0aGUgaW5ub3ZhdGl2ZW5lc3Mgb2YgdGhlIHByb2plY3Q8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5Ib3cgdG8gaGlnaGxpZ2h0IHRoZSBwYXJ0cyBwb3RlbnRpYWwgYmVuZWZpdHMgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+SG93IHRvIGRpc2N1c3Mgd2hldGhlciB0aGVzZSBwYXJ0cyBjb3VsZCBiZSBhcHBsaWVkIHRvIG90aGVyIHByb2plY3RzPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hbnkgcHJvamVjdHMgZmFpbCBiZWNhdXNlIHRoZSBleHBlcmltZW50cyBjb25kdWN0ZWQgYXJlIHRvbyBjb21wbGV4LiBUaGVyZWZvcmUsIE1lcmVsIGVuY291cmFnZWQgdXMgdG8gaW5pdGlhbGx5IGNhcnJ5IG91dCBzaW1wbGVyIGV4cGVyaW1lbnRzIGZvciBvdXIgcHJvamVjdHMsIGxpa2UgcEggc2Vuc2l0aXZpdHkgYW5kIHRlbXBlcmF0dXJlIHJlc3BvbnNlLiBPcGVuaW5nIHRoZSBtaW5kc2V0IGZvciBvdGhlciBtYXliZSBtb3JlIHByYWdtYXRpYyBleHBlcmltZW50cyBjb3VsZCBjaGFuZ2UgdGhlIGZvY3VzIG9mIHRoZSBwcm9qZWN0IGFuZCBkcml2ZSB0aGUgZW5naW5lZXJpbmcgY3ljbGUuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlZC10YWxrLWNwL3RlZC10YWxrLWNwLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIHNoZSBzaG93ZWQgdXMgd2hhdCBhIHBlcmZlY3Qgc3VibWlzc2lvbiBmb3IgTmV3IEJhc2ljIFBhcnQgb3IgQ29tcG9zaXRlIFBhcnQgbG9va3MgbGlrZS4gVGhlIEJlc3QgUGFydCBSZWdpc3RyeSBkZW1vbnN0cmF0ZXMgZ3JlYXQgc2lnbmlmaWNhbmNlIGFuZCBzaG91bGQgYmUgZmlsbGVkIHdpdGggZGlmZmVyZW50IHJlc3VsdHMgYW5kIHJlcHJlc2VudGF0aXZlIGFuYWx5c2VzIHRvIGNoYXJhY3Rlcml6ZSB0aGUgcGFydHMuIENvbmR1Y3RpbmcgZXhwZXJpbWVudHMgZm9yIGNoYXJhY3Rlcml6YXRpb24gYW5kIGdvb2QgZG9jdW1lbnRhdGlvbiBhcmUganVzdCB0d28gYXNwZWN0cy4gVGhlIG1vc3QgY3J1Y2lhbCBwYXJ0IGlzIHRoZSBkZW1vbnN0cmF0aW9uIG9mIHRoZSBwYXJ0XHUyMDE5cyBmdW5jdGlvbnMgYXMgaW50ZW5kZWQuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBXZSBsZWFybmVkIHdoYXQgZWZmZWN0aXZlIHN0cmF0ZWdpZXMgZm9yIHRoZSBzcGVjaWFsIGF3YXJkcyBDb21wb3NpdGUgUGFydCBhbmQgTmV3IEJhc2ljIFBhcnQgbWlnaHQgbG9vayBsaWtlLCBhbmQgd2VyZSBwcm92aWRlZCB3aXRoIG1hbnkgaGVscGZ1bCB0aXBzIGFuZCB0cmlja3Mgb24gaG93IHNpbXBsZSBleHBlcmltZW50cyBmb3IgY2hhcmFjdGVyaXphdGlvbiBjb3VsZCBiZSBkZXNpZ25lZC4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvdmFzcXVldC5qcGdcIlxuICAgICAgICAgICAgICAgIGRhdGU9J0ZpcnN0IFNjaWVuY2UgU2xhbSdcbiAgICAgICAgICAgICAgICB0YWc9ICdUYWxrcydcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tbGlnaHRibHVlKSdcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJzbGFtMVwiXG4gICAgICAgICAgICAgICAgaGVhZGluZz1cIkNoYXRHUFQgYW5kIExhcmdlIExhbmd1YWdlIE1vZGVsc1wiXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJWYXF1ZXRcIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJKb25hc1wiXG4gICAgICAgICAgICAgICAgdGV4dD1cIkF0IHRoaXMgeWVhcidzIEJGSCBNZWV0dXAsIGV4cGVyaWVuY2VkIHNsYW1tZXJzIGFuZCBGYW1lTGFiIHBhcnRpY2lwYW50cyB3ZXJlIG9uY2UgYWdhaW4gYWJsZSB0byB0YWtlIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIHRoZSBzdGFnZSBhbmQgcHJlc2VudCB0aGVpciBzY2llbnRpZmljIHRvcGljIGFzIHNpbXBseSBhcyBwb3NzaWJsZSBpbiA1IG1pbnV0ZXMuIFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2xhbTFcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgIDxwPldpdGggSm9uYXMgVmFxdWV0LCBhIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VhcmNoIGFzc29jaWF0ZSBvZiB0aGUgRVUgcHJvamVjdCA8YSBocmVmPVwiaHR0cHM6Ly93YXRlcmZ1dHVyZXMuZXUvcHJvamVjdC9cIj5FUkMgV2F0ZXJmdXR1cmVzPC9hPiwgdGhlIGF1ZGllbmNlIGV4cGxvcmVkIExhcmdlIExhbmd1YWdlIE1vZGVscyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoTExNcykgc3VjaCBhcyBDaGF0R1BULiBUaGUgc3BlYWtlciBodW1vcm91c2x5IGVuZ2FnZWQgdGhlIGNyb3dkLCBhc2tpbmcgd2hvIGhhZCB1c2VkIHN1Y2ggbW9kZWxzLCBhbmQgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmVhcmx5IGFsbCBoYW5kcyB3ZXJlIHJhaXNlZCBpbiByZXNwb25zZS4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNwZWFrZXIgaW50cm9kdWNlZCBDaGF0R1BULCBhIFwiR2VuZXJhdGl2ZSBQcmUtdHJhaW5lZCBUcmFuc2Zvcm1lcixcIiB1c2luZyBhbiBpbnRlcmFjdGl2ZSBleHBlcmltZW50IHdoZXJlIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBhdWRpZW5jZSBwcmVkaWN0ZWQgdGhlIG5leHQgd29yZHMgaW4gc2VudGVuY2VzLCBzaG93aW5nIGhvdyB0aGUgbW9kZWwgd29ya3Mgd2l0aCBwcmUtdHJhaW5lZCBkYXRhIGFuZCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjdWxhdGVzIHRleHQgY29udGludWF0aW9ucy4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2hpbGUgaXQgaXMgZmFpciB0byBzYXkgdGhhdCBDaGF0R1BUIGlzIGEgcG93ZXJmdWwgYW5kIGhlbHBmdWwgdG9vbCwgaXQgaXMgaW1wb3J0YW50IHRvIGZvY3VzIG9uIHRoZSBwb3RlbnRpYWwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFuZ2VycyBhbmQgY2hhbGxlbmdlcyBpdCBicmluZ3MsIHdoaWNoIEpvbmFzIHN1bW1hcml6ZXMgaW4gdGhyZWUga2V5IGZhY3RvcnMgaW4gaGlzIHRhbGs6IDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+UGxhZ2lhcmlzbSBSaXNrczo8L2I+IFRoZSBzcGVha2VyIGRlbW9uc3RyYXRlZCBob3cgZWFzeSBpdCBpcyB0byB1bmludGVudGlvbmFsbHkgcmVwbGljYXRlIGV4aXN0aW5nIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzLCB1c2luZyBhIEhhcnJ5IFBvdHRlciBleGFtcGxlIHRvIGlsbHVzdHJhdGUgcGxhZ2lhcmlzbSByaXNrcyBpbiBjcmVhdGl2ZSB3cml0aW5nLjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkhhbGx1Y2luYXRpb25zOjwvYj4gTGFuZ3VhZ2UgbW9kZWxzIGNhbiBnZW5lcmF0ZSBwbGF1c2libGUgYnV0IGluY29ycmVjdCBpbmZvcm1hdGlvbiwgZXhlbXBsaWZpZWQgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgYSBmaWN0aXRpb3VzIENWIHdpdGggaW52ZW50ZWQgZ3JhZGVzLCBoaWdobGlnaHRpbmcgcmlza3MgaW4gYWNhZGVtaWMgYW5kIHByb2Zlc3Npb25hbCB1c2UuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+TGFjayBvZiBPcGluaW9uIEZvcm1hdGlvbjo8L2I+IENoYXRHUFQgZG9lcyBub3QgZm9ybSByZWFsIG9waW5pb25zLCBsZWFkaW5nIHRvIGluY29uc2lzdGVudCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbnN3ZXJzIHdoZW4gYXNrZWQgZm9yIHByZWZlcmVuY2VzLjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QWx0aG91Z2ggbGFyZ2UgbGFuZ3VhZ2UgbW9kZWxzIChMTE1zKSBhcmUgdHJhaW5lZCB3aXRoIGV4dGVuc2l2ZSBjb2xsZWN0aW9uIG9mIHRleHRzIG9yIHNwb2tlbiBsYW5ndWFnZSwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhleSBvZnRlbiBmYWlsIGluIHRoZSBhY2N1cmFjeSByZXF1aXJlZCBmb3Igc2NpZW50aWZpYyB0b3BpY3MuIFNvdXJjZXMgYXJlIHNlZW1pbmdseSBjb25qdXJlZCBvdXQgb2YgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpbiBhaXIgYW5kIGNsYWltcyB2YW5pc2ggaW50byB0aGluIGFpciBiZWNhdXNlIHRoZWlyIGFuc3dlcnMgYXJlIGJhc2VkIG9uIHN0YXRpc3RpY2FsIHByb2JhYmlsaXRpZXMsIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlYWRpbmcgdG8gY29uZnVzaW9uLCBlc3BlY2lhbGx5IGZvciBuaWNoZSBxdWVzdGlvbnMuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkpvbmFzIGVuZGVkIGhpcyB0YWxrIGJ5IGdpdmluZyB0aGUgYXVkaWVuY2UgZm9vZCBmb3IgdGhvdWdodC4gSGUgcmVtaW5kZWQgZXZlcnlvbmUgd2hvIGhhZCBlYWdlcmx5IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlZCB0aGVpciBoYW5kcyBhdCB0aGUgYmVnaW5uaW5nIHRvIGFsd2F5cyBkb3VibGUtY2hlY2sgQ2hhdEdQVCdzIGluZm9ybWF0aW9uLCBlc3BlY2lhbGx5IGluIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjYWRlbWljIGFuZCBwcm9mZXNzaW9uYWwgc2V0dGluZ3MuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldpdGggaGlzIGludGVyYWN0aXZlIGFuZCBodW1vcm91cyBhcHByb2FjaCwgSm9uYXMgdHVybmVkIHRoZSBjb21wbGV4IHdvcmxkIG9mIExMTXMgaW50byBhbiBlbmdhZ2luZyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgYWNjZXNzaWJsZSBhZHZlbnR1cmUsIG9mZmVyaW5nIGRlZXAgaW5zaWdodHMgaW50byB0aGUgd29ya2luZ3MgYW5kIGlkaW9zeW5jcmFzaWVzIG9mIHRoaXMgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFzY2luYXRpbmcgdGVjaG5vbG9neS4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL25pa2xhcy1ibG9lYmF1bS5qcGVnXCJcbiAgICAgICAgICAgICAgICBkYXRlPSdTZWNvbmQgU2NpZW5jZSBTbGFtJ1xuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xuICAgICAgICAgICAgICAgIGNzc3RhZz1cInNsYW0yXCJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiTWljcm9hbGdhZSBmb3IgU3VzdGFpbmFibGUgRm9vZCBQcm9kdWN0aW9uIFwiXG4gICAgICAgICAgICAgICAgdGV4dD1cIk5pa2xhcywgYSBiaW90ZWNobm9sb2dpc3QgYW5kIFBoRCBzdHVkZW50IGF0IHRoZSBGYWN1bHR5IG9mIEVuZ2luZWVyaW5nIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB1c2VkIGhpcyBleHBlcmllbmNlIGZyb20gcHJldmlvdXMgc2NpZW5jZSBzbGFtcyBhbmQgaGlzIHBhcnRpY2lwYXRpb24gaW4gYSBwcmV2aW91cyBpR0VNIGNvbXBldGl0aW9uIHRvIHByZXNlbnQgbWljcm9hbGdhZSBpbiBhIG5ldyBsaWdodC5cIlxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJOaWtsYXNcIlxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiQmxvZWJhdW1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInNsYW0yXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2l0aCBpbnNpZ2h0cyBpbnRvIGhpcyBjdXJyZW50IHJlc2VhcmNoLCBOaWtsYXMgaW50cm9kdWNlZCB0aGUgYXVkaWVuY2UgdG8gdGhlIGlubm92YXRpdmUgdXNlcyBvZiBjaGxvcmVsbGEgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHN1c3RhaW5hYmxlIGZvb2QgcHJvZHVjdGlvbi4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHN0YXIgb2YgdGhlIHNob3cgd2FzIHRoZSBzbWFsbGVzdCB2ZWdldGFibGUgaW4gdGhlIHdvcmxkIENobG9yZWxsYSBpcyB0aW55ICg0IHRvIDEyIG1pY3JvbnMpIGJ1dCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ5IHJpY2ggaW4gbnV0cmllbnRzOiA0NS02NSUgcHJvdGVpbiwgMTAtMjAlIGZhdCwgMTAtMjAlIGNhcmJvaHlkcmF0ZXMsIDUlIGZpYmVyIGFuZCB2YXJpb3VzIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpdGFtaW5zIGFuZCBtaW5lcmFscywgaW5jbHVkaW5nIHZpdGFtaW4gQjEyLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5OaWNob2xhcyBwcmVzZW50ZWQgdHdvIHByb2R1Y3Rpb24gbWV0aG9kczogPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5vcGVuIHBvbmQgc3lzdGVtczo8L2I+dGhlc2UgdXRpbGl6ZSBsaWdodCwgQ09cdTIwODIgYW5kIHdhdGVyIGZvciBwaG90b3N5bnRoZXNpcywgYnV0IGhhdmUgdGhlIHByb2JsZW0gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YgdGhlIGF2YWlsYWJpbGl0eSBvZiBsaWdodCBhbmQgd2F0ZXIuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+YmlvcmVhY3RvcnM6PC9iPm1vZGVybiwgY29udHJvbGxlZCwgc3RlcmlsZSBlbnZpcm9ubWVudHMgdGhhdCB1dGlsaXplIHN1Z2FyIGFzIGFuIGVuZXJneSBzb3VyY2UsIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25pZmljYW50bHkgaW5jcmVhc2UgcHJvZHVjdGl2aXR5IGFuZCByZWR1Y2Ugd2F0ZXIgY29uc3VtcHRpb24uPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5CaW9yZWFjdG9ycyBhcmUgdXAgdG8gMTAwIHRpbWVzIG1vcmUgcHJvZHVjdGl2ZSBhbmQgdXNlIDEwMCB0aW1lcyBsZXNzIHdhdGVyIHRoYW4gY29udmVudGlvbmFsIG1ldGhvZHMuIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNvdW5kcyBwZXJmZWN0LCByaWdodD8gQnV0IE5pY2hvbGFzIGhhZCB0byBidXJzdCB0aGUgYnViYmxlIGFuZCBtYWtlIGl0IGNsZWFyIHRoYXQgdGhlIHRlY2hub2xvZ3kgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RpbGwgbmVlZHMgdG8gYmUgZGV2ZWxvcGVkIGZ1cnRoZXIuICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5JbiB0ZXJtcyBvZiBzdXN0YWluYWJpbGl0eSwgTmljaG9sYXMgaGFkIHRvIGVtcGhhc2l6ZSB0aGF0IHRoZSB3aG9sZSBwcm9jZXNzIG9mIG1pY3JvYWxnYWUgcHJvZHVjdGlvbiBuZWVkcyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byBiZSBxdWVzdGlvbmVkLiBIZSBub3RlZCB0aGF0IHRoZSBjdXJyZW50IGNhcmJvbiBmb290cHJpbnQgY2FsY3VsYXRpb25zIGZvciBiaW9yZWFjdG9ycyBhcmUgb3V0ZGF0ZWQuIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1dCBmZWFyIG5vdCwgb3VyIGJyYXZlIGJpb3RlY2hub2xvZ2lzdCBpcyBvbiBhIG1pc3Npb24gdG8gYnJpbmcgdGhlc2UgZmlndXJlcyB1cCB0byBkYXRlIHdpdGggaGlzIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VuZGJyZWFraW5nIHJlc2VhcmNoISA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgY3VyaW91cyBhdWRpZW5jZSBhc2tlZCBxdWVzdGlvbnMgYWJvdXQgc2NhbGFiaWxpdHksIGNvc3RzIGFuZCBzdXN0YWluYWJsZSBzdWdhciBzb3VyY2VzLiBBbHdheXMgdXAgZm9yIGEgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbGxlbmdlLCBOaWNob2xhcyBleHBsYWluZWQgdGhhdCB0aGUgY3VycmVudCBoaWdoIGNvc3RzIGNvdWxkIGJlIGFkZHJlc3NlZCBieSBpbXByb3ZpbmcgdGhlIHByb2R1Y3Rpdml0eSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZiB0aGUgYmlvcmVhY3RvcnMhIEhvd2V2ZXIsIGhlIGFsc28gZW1waGFzaXplZCB0aGF0IGZ1cnRoZXIgcmVzZWFyY2ggaXMgbmVlZGVkIHRvIGZpbmQgYSBzdXN0YWluYWJsZSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2Ugb2Ygc3VnYXIuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluIGhpcyBncmFuZCBmaW5hbGUsIE5pY2hvbGFzIHByZXNlbnRlZCB0aHJlZSB3aXNlIGluc2lnaHRzOiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPmJpb3RlY2hub2xvZ3k8L2I+IGdvZXMgZmFyIGJleW9uZCBtZWRpY2luZSBhbmQgb3BlbnMgdGhlIGRvb3JzIGZvciBzdXN0YWluYWJsZSBmb29kIHByb2R1Y3Rpb24uPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+c3VzdGFpbmFiaWxpdHkgPC9iPiBhc3Nlc3NtZW50cyBtdXN0IGNvbnNpZGVyIHRoZSBlbnRpcmUgcHJvZHVjdGlvbiBwcm9jZXNzIC0gbm8gZGV0YWlsIHNob3VsZCBiZSBvdmVybG9va2VkITwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPmNobG9yZWxsYTwvYj4sIHRoZSB0aW55LCBudXRyaWVudC1yaWNoIG1pY3JvYWxnYWUsIGhhcyB0aGUgcG90ZW50aWFsIHRvIGJlIGEgaGVybyBpbiBvdXIgZnV0dXJlIGRpZXQuIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TmljaG9sYXMgY2FwdGl2YXRlZCB0aGUgYXVkaWVuY2Ugd2l0aCBoaXMgdml2aWQgYW5kIGV5ZS1vcGVuaW5nIHByZXNlbnRhdGlvbi4gSGUgZ3VpZGVkIHRoZW0gdGhyb3VnaCB0aGUgZmFzY2luYXRpbmcgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIHNvbWV0aW1lcyB0dXJidWxlbnQgd29ybGQgb2YgbWljcm9hbGdhZSBwcm9kdWN0aW9uLCBoaWdobGlnaHRpbmcgdGhlIGNoYWxsZW5nZXMgYW5kIG9wcG9ydHVuaXRpZXMgb2YgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcyB0ZWNobm9sb2d5LiBUaGUgYXVkaWVuY2Ugd2FzIG5vdCBvbmx5IGluZm9ybWVkIGJ1dCBhbHNvIGVudGVydGFpbmVkIGFuZCByZWFkeSB0byBlbWJyYWNlIHRoZSBmdXR1cmUgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Ygc3VzdGFpbmFibGUgbnV0cml0aW9uIHdpdGggY2hsb3JlbGxhIGFzIHRoZWlyIGxpdHRsZSBncmVlbiBoZXJvLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3RpbWVsaW5lLWVuZCc+XG4gICAgICAgICAgICAgICAgICAgIEF3YXJkIENlcmVtb255XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPC8+XG4gICAgICAgIClcbiAgICBcbn0iLCAiLyogICovXG5cbmNvbnN0IGltYWdlcyA9IFtcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvYmFkZ2VzLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9qb2Vybi5qcGVnXCIsICB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2NoZWtpbi5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc2luYW4uanBlZ1wiLCAgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wYXJ0eS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvb3JnYXRlYW0uanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2hhbGwuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2J5ZTEuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3VuaS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGFsa2luZy5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAva3Jpc3RpYW4uanBlZ1wiLCAgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9hZmZlLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9tYXJnYnVyZy5qcGVnXCIsICB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2RpZXR6LmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC93YWdlbmluZ2VuLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9hYWNoZW4uanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcmV4aGliaXRpb24tcmVmaWJhLmpwZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NvY2lhbGl6aW5nMTcuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2JhZGdlcy5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVyZXhoaWJpdGlvbi10ZWRkeS5qcGdcIiwgIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2hla2luLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zaW5hbi5qcGVnXCIsICB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NvY2lhbGl6aW5nMTEuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW1waG90b3M2LmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtcGhvdG9zLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTJ9LFxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtcGhvdG9zNS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc29jaWFsaXppbmcxOS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVyZXhoaWJpdGlvbi1pc2FiZWxsLWVya2wtcnQuanBnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvai1ybjMuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2hhbGwuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2FiZW5kLXNwaWtlYmFsbDUuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2FiZW5kLWludGVyc3NpZXJ0ZS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvb3JnYXRlYW0uanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXG5dXG5cblxuXG5cblxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBCRkhHYWxsZXJ5KCl7XG4gIGxldCByb3dzOiBKU1guRWxlbWVudFtdICA9IFtdXG4gIGZvciAoIGxldCBpID0gMDsgIGkgPCBpbWFnZXMubGVuZ3RoOyBpKysgKXtcbiAgICByb3dzLnB1c2goPGRpdj48aW1nIHNyYz17aW1hZ2VzW2ldLnNyY30vPjwvZGl2PikgXG4gIH1cbiAgICByZXR1cm4oIFxuICAgICAgICA8ZGl2IGlkPVwiZ2FsbGVyeVwiPlxuICAgICAgICAgIHtyb3dzfVxuICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cbiIsICJleHBvcnQgZnVuY3Rpb24gUG9zdGVyKHtwb3N0ZXJuYW1lLCB1cmx9Ontwb3N0ZXJuYW1lOiBzdHJpbmcsIHVybDogc3RyaW5nfSl7XG4gICAgcmV0dXJuKFxuICAgICAgICA8YSB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtyZVNpemUoe25hbWU6IHBvc3Rlcm5hbWV9KX0+XG4gICAgICAgICAgPGltZyBpZD17cG9zdGVybmFtZX0gY2xhc3NOYW1lPVwicGljdHVyZS1mcmFtZSBub3JtXCIgc3JjPXt1cmx9IGFsdD17cG9zdGVybmFtZX0gLz5cbiAgICAgICAgPC9hPlxuICAgIClcbn1cbmV4cG9ydCBmdW5jdGlvbiBDZXJ0aWZpY2F0ZSh7cG9zdGVybmFtZSwgdXJsfTp7cG9zdGVybmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZ30pe1xuICByZXR1cm4oXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8YSB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtyZVNpemUyKHtuYW1lOiBwb3N0ZXJuYW1lfSl9PlxuICAgICAgICAgIDxpbWcgaWQ9e3Bvc3Rlcm5hbWV9IGNsYXNzTmFtZT1cImNlcnQtZnJhbWUgbm9ybVwiIHNyYz17dXJsfSBhbHQ9e3Bvc3Rlcm5hbWV9IC8+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICApXG59XG5cbmZ1bmN0aW9uIHJlU2l6ZSh7bmFtZX06e25hbWU6IHN0cmluZ30pe1xuICAgIGNvbnN0IHJlc2l6ZSA9ICAoX2V2ZW50IDogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+e1xuICAgICAgdmFyIGltZzsgXG4gICAgICBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChuYW1lKTtcbiAgICAgIGlmIChpbWchLmNsYXNzTmFtZSA9PT0gXCJwaWN0dXJlLWZyYW1lIG5vcm1cIil7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiPT09IHBpY3R1cmUtZnJhbWUgbm9ybVwiKVxuICAgICAgICBpbWchLmNsYXNzTmFtZSA9IGltZyEuY2xhc3NOYW1lLnJlcGxhY2UoXCJwaWN0dXJlLWZyYW1lIG5vcm1cIiwgXCJmdWxsLXNjcmVlbi13aWR0aFwiKTtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKGltZyEuY2xhc3NOYW1lID09PSBcImZ1bGwtc2NyZWVuLXdpZHRoXCIpe1xuICAgICAgICBjb25zb2xlLmxvZyhcIj09PSBmdWxsLXNjcmVlbi13aWR0aFwiKVxuICAgICAgICBpbWchLmNsYXNzTmFtZSA9IGltZyEuY2xhc3NOYW1lLnJlcGxhY2UoXCJmdWxsLXNjcmVlbi13aWR0aFwiLCBcInBpY3R1cmUtZnJhbWUgbm9ybVwiKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc2l6ZTsgXG59XG5mdW5jdGlvbiByZVNpemUyKHtuYW1lfTp7bmFtZTogc3RyaW5nfSl7XG4gIGNvbnN0IHJlc2l6ZSA9ICAoX2V2ZW50IDogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+e1xuICAgIHZhciBpbWc7IFxuICAgIGltZyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG5hbWUpO1xuICAgIGlmIChpbWchLmNsYXNzTmFtZSA9PT0gXCJjZXJ0LWZyYW1lIG5vcm1cIil7XG4gICAgICBjb25zb2xlLmxvZyhcIj09PSBjZXJ0LWZyYW1lIG5vcm1cIilcbiAgICAgIGltZyEuY2xhc3NOYW1lID0gaW1nIS5jbGFzc05hbWUucmVwbGFjZShcImNlcnQtZnJhbWUgbm9ybVwiLCBcImZ1bGwtc2NyZWVuLXdpZHRoXCIpO1xuICAgIH1cbiAgICBlbHNlIGlmIChpbWchLmNsYXNzTmFtZSA9PT0gXCJmdWxsLXNjcmVlbi13aWR0aFwiKXtcbiAgICAgIGNvbnNvbGUubG9nKFwiPT09IGZ1bGwtc2NyZWVuLXdpZHRoXCIpXG4gICAgICBpbWchLmNsYXNzTmFtZSA9IGltZyEuY2xhc3NOYW1lLnJlcGxhY2UoXCJmdWxsLXNjcmVlbi13aWR0aFwiLCBcImNlcnQtZnJhbWUgbm9ybVwiKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc2l6ZTsgXG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFBvc3RlclJvdyh7cG9zdGVybmFtZTEsIHBvc3Rlcm5hbWUyLCB1cmwxLCB1cmwyfTp7cG9zdGVybmFtZTE6IHN0cmluZywgdXJsMTogc3RyaW5nLCBwb3N0ZXJuYW1lMjogc3RyaW5nLCB1cmwyOiBzdHJpbmd9KXtcbiAgICByZXR1cm4oXG4gICAgICAgIDw+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxQb3N0ZXIgdXJsPXt1cmwxfSBwb3N0ZXJuYW1lPXtwb3N0ZXJuYW1lMX0gLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8UG9zdGVyIHVybD17dXJsMn0gcG9zdGVybmFtZT17cG9zdGVybmFtZTJ9IC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxici8+XG4gICAgICAgIDwvPlxuICAgIClcbn0iLCAiaW1wb3J0IHsgQ2VydGlmaWNhdGUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9wb3N0ZXJcIjtcbmltcG9ydCB7ICBINCwgSDUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9RdW90ZXNcIjtcblxuY29uc3QgaGFrZW4gPSA8c3BhbiBjbGFzc05hbWU9XCJiZmgtaGFrZW5cIj4gPGJpZz4mI3gyNzEzOzwvYmlnPiA8L3NwYW4+OyBcbiAgXG5cbmV4cG9ydCBmdW5jdGlvbiBBYm91dCgpe1xuICByZXR1cm4oXG4gICAgPGRpdj5cblxuICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJUaGlzIHdhcyB0aGUgYmVzdCBtZWV0IHVwIGV2ZXIgaW4gdGhlIGhpc3Rvcnkgb2YgaUdFTS4gVGhhbmsgeW91IHNvIG11Y2ghXCIgY2l0ZT1cIk5lbWFuamEgU3RpamVwb3ZpY1wiPjwvQmxvY2tRdW90ZUI+XG4gICAgICA8SDQgaWQ9XCJcIiB0ZXh0PVwiSW50cm9kdWN0aW9uXCIvPlxuICAgICAgPHA+VGhpcyB5ZWFyLCB3ZSBob3N0ZWQgdGhlIGZpcnN0IEJGSCBFdXJvcGVhbiBNZWV0LVVwIGV2ZXIuIE92ZXIgdGhlIGNvdXJzZSBvZiB0aHJlZSBmdWxsIGRheXMsIHdlIGVtYmFya2VkIG9uIGEgam91cm5leSB3aGVyZSBtaW5kcyBtZXQgYW5kIGlkZWFzIGlnbml0ZWQuIE91ciBtaXNzaW9uOiA8L3A+XG4gICAgICA8cCBjbGFzc05hbWU9XCJiZmgtbW90dG9cIj48Yj5JZ25pdGUuIElubm92YXRlLiBJbnNwaXJlLjwvYj48L3A+XG4gICAgICA8cD5UaGlzIGV2ZW50IHdhcyBkZXNpZ25lZCB0byB1bml0ZSB0aGUgYnJpZ2h0ZXN0IG1pbmRzIGZyb20gYWNyb3NzIEV1cm9wZSBhbmQgYmV5b25kLCBwcm92aWRpbmcgYSBwbGF0Zm9ybSBmb3Igc2hhcmluZyBncm91bmRicmVha2luZyBpZGVhcyBhbmQgZm9zdGVyaW5nIGludGVybmF0aW9uYWwgY29ubmVjdGlvbnMgZHVyaW5nIHRoZSBlYXJseSBzdGFnZXMgb2YgdGhlIGlHRU0gY29tcGV0aXRpb24uIDwvcD5cbiAgICAgIDxINCB0ZXh0PVwiQWJvdXQgT3VyIENvb3BlcmF0aW9uXCIvPlxuICAgICAgPHA+IFRoZSBjb29wZXJhdGlvbiBiZXR3ZWVuIEJpZWxlZmVsZCwgRnJhbmtmdXJ0LCBhbmQgSGFtYnVyZyBpcyByb290ZWQgaW4gdGhlIGZyaWVuZHNoaXBzIGFuZCBuZXR3b3JrcyBmb3JtZWQgZHVyaW5nIHRoZSBpR0VNIGNvbXBldGl0aW9uIDIwMjMuIE91ciBtaXNzaW9uIGlzIHRvIHByb21vdGUgZnV0dXJlIHByb2plY3RzIGFuZCBicmluZyB0ZWFtcyB0b2dldGhlci4gQnkgYWx0ZXJuYXRpbmcgdGhlIGxvY2F0aW9uIG9mIHRoZSBCRkggRXVyb3BlYW4gTWVldC1VcCBlYWNoIHllYXIsIHdlIGFpbSB0byBwcm92aWRlIGRpdmVyc2UgbmV0d29ya2luZyBvcHBvcnR1bml0aWVzIGFuZCBmb3N0ZXIgYSBzdHJvbmcgc2Vuc2Ugb2YgY29tbXVuaXR5IGFtb25nIGlHRU0gcGFydGljaXBhbnRzLiA8L3A+XG4gICAgICA8SDQgdGV4dD1cIkhlYWQgb2YgQkZIIENvbW1pdHRlZVwiLz5cbiAgICAgIDxINCB0ZXh0PVwiV2hhdCBXZXJlIE91ciBHb2Fscz9cIi8+IFxuICAgICAgPHVsIGNsYXNzTmFtZT1cImhha2VuLWxpc3RlXCI+XG4gICAgICAgIDxsaT4ge2hha2VufSBVbml0ZSBpR0VNIHRlYW1zIGZyb20gYWNyb3NzIEV1cm9wZSBhbmQgZm9zdGVyIGEgc2Vuc2Ugb2YgY29tbXVuaXR5IGFuZCBjb2xsYWJvcmF0aW9uLiA8L2xpPlxuICAgICAgICA8bGk+IHtoYWtlbn0gUHJvdmlkZSBhIHBsYXRmb3JtIGZvciB0ZWFtcyB0byBwcmVzZW50IHRoZWlyIHByb2plY3RzIGFuZCByZWNlaXZlIHZhbHVhYmxlIGZlZWRiYWNrLiA8L2xpPlxuICAgICAgICA8bGk+IHtoYWtlbn0gT2ZmZXIgb3Bwb3J0dW5pdGllcyBmb3IgcGFydGljaXBhbnRzIHRvIGJ1aWxkIHRoZWlyIHNjaWVudGlmaWMgYW5kIHNvZnQgc2tpbGxzIHRocm91Z2ggd29ya3Nob3BzIGFuZCBwcmVzZW50YXRpb25zLiA8L2xpPlxuICAgICAgICA8bGk+IHtoYWtlbn0gRW5jb3VyYWdlIG5ldHdvcmtpbmcgYW5kIHNvY2lhbGl6aW5nIGFtb25nIGlHRU0gdGVhbXMgdG8gYnVpbGQgbGFzdGluZyByZWxhdGlvbnNoaXBzIGFuZCBleHBhbmQgc2NpZW50aWZpYyBuZXR3b3Jrcy4gPC9saT5cbiAgICAgICAgPGxpPiB7aGFrZW59IEVsYWJvcmF0ZSB0aGVpciB0ZWFtIHByb2plY3RzIGFuZCByZWZsZWN0IHRoZWlyIGRlY2lzaW9ucyBpbiBlYXJseSBzdGFnZSBvZiB0aW1lIGluIGNvb3BlcmF0aW9uIHdpdGggaUdFTSBhbHVtbmkgYW5kIHNjaWVudGlzdCBmcm9tIGFsbCBhcm91bmQgdGhlIGdsb2JlIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPEg0IHRleHQ9XCJXaGF0IERpZCB0aGUgUGFydGljaXBhbnRzIExlYXJuP1wiLz5cbiAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxuICAgICAgICA8bGk+IHtoYWtlbn0gR2FpbmVkIGluc2lnaHRzIGludG8gY3VycmVudCByZXNlYXJjaCBmcm9tIEJpZWxlZmVsZCBVbml2ZXJzaXR5IGFuZCBuZWFyYnkgaW5zdGl0dXRpb25zIHRocm91Z2ggU2NpZW50aWZpYyBUYWxrcy4gPC9saT5cbiAgICAgICAgPGxpPiB7aGFrZW59IExlYXJuZWQgZnJvbSBvdmVyIDEwIG5hdGlvbmFsIGFuZCBpbnRlcm5hdGlvbmFsIHNwZWFrZXJzIGFuZCBleHBlcnRzIGZyb20gaW5kdXN0cnksIGFjYWRlbWlhLCBhbmQgdGhlIGlHRU0gY29tbXVuaXR5PC9saT5cbiAgICAgICAgPGxpPiB7aGFrZW59IFBhcnRpY2lwYXRlZCBpbiBoYW5kcy1vbiBXb3Jrc2hvcCBTZXNzaW9ucyBsZWQgYnkgbGVhZGluZyBleHBlcnRzLCB3aGljaCBjb250cmlidXRlZCB0byB0aGUgZGV2ZWxvcG1lbnQgb2YgdGhlIG5leHQgZ2VuZXJhdGlvbiBvZiBhbWJpdGlvdXMgcmVzZWFyY2hlcnM8L2xpPlxuICAgICAgICA8bGk+IHtoYWtlbn0gRW5nYWdlZCBpbiBQYW5lbCBEaXNjdXNzaW9ucyB0byBwdXp6bGUgb3ZlciBpZGVhcywgaW1wcmVzc2lvbnMsIGFuZCB0aGUgcG90ZW50aWFsIG9mIG11bHRpcGxlIHByb2plY3RzLCBmb3N0ZXJpbmcgY29sbGFib3JhdGlvbiBhbmQgbmV0d29ya2luZzwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPEg0IHRleHQ9XCJTdGlja2VyIENvbGxlY3Rpb24gQWxidW06IENvbm5lY3QgYW5kIENvbGxlY3QhXCIvPlxuICAgICAgPHA+V2UgYXJlIGV4Y2l0ZWQgdG8gaW50cm9kdWNlIHRoZSBmaXJzdCBvZmZpY2lhbCBCRkggaUdFTSBTdGlja2VyIENvbGxlY3Rpb24gQWxidW0gb2YgMjAyNCEgT3ZlciB0aGUgcGFzdCBmZXcgeWVhcnMsIGlHRU0gdGVhbXMgZnJvbSBhcm91bmQgdGhlIHdvcmxkIGhhdmUgc3RhcnRlZCBleGNoYW5naW5nIGZ1bm55IG1lbWVzLCBsb2dvcywgbWFzY290cywgYW5kIGNvbnRhY3QgaW5mb3JtYXRpb24gdmlhIHN0aWNrZXJzLiBSZWNvZ25pemluZyB0aGlzIGNyZWF0aXZlIHRyZW5kLCB3ZSd2ZSBlc3RhYmxpc2hlZCB0aGUgZmlyc3QtZXZlciBpR0VNIFRlYW1zIFN0aWNrZXIgQWxidW0gdG8gZW5oYW5jZSBzb2NpYWwgbmV0d29ya2luZyBhbW9uZyBwYXJ0aWNpcGFudHMgZHVyaW5nIHRoZSBHcmFuZCBKYW1ib3JlZSBhbmQgYmV5b25kLiA8L3A+XG4gICAgICA8cD5EbyB5b3Ugd2FudCB0byBqb2luIHRoZSBiaWdnZXN0IHNvY2lhbCBuZXR3b3JraW5nIGV2ZW50LCBjb2xsZWN0IGFsbCBzdGlja2VycywgYW5kIHdpbiBzcGVjaWFsIHByaXplcz8gU2lnbiB1cCBhbmQgZ2V0IHJlYWR5IHRvIGNhdGNoICdlbSBhbGwhIFRvIHBhcnRpY2lwYXRlLCBzdWJtaXQgeW91ciBwcm9qZWN0IHRpdGxlIGFuZCBhYnN0cmFjdCwgYW5kIGRlc2lnbiBhIHVuaXF1ZSBzdGlja2VyIHRoYXQgcmVwcmVzZW50cyB5b3VyIHRlYW0uIFRoZXNlIHN0aWNrZXJzIHdpbGwgYmUgZXhjaGFuZ2VkIGF0IHRoZSBHcmFuZCBKYW1ib3JlZSBpbiBQYXJpcy4gT25jZSB5b3UndmUgY29sbGVjdGVkIGFsbCB0aGUgc3RpY2tlcnMgZnJvbSBwYXJ0aWNpcGF0aW5nIHRlYW1zLCBzZW5kIGEgcGljdHVyZSBvZiB5b3VyIGNvbXBsZXRlZCBhbGJ1bSB0byB0aGUgaUdFTSBCaWVsZWZlbGQgaGVhZHF1YXJ0ZXJzIGZvciBhIGNoYW5jZSB0byB3aW4gc3BlY2lhbCBwcml6ZXMuIDwvcD5cbiAgICAgIDxwPiBUaGlzIGFsYnVtIGlzbid0IGp1c3QgZm9yIHRoZSBHcmFuZCBKYW1ib3JlZSBcdTIwMTMgeW91IGNhbiBhbHNvIGNvbGxlY3Qgc3RpY2tlcnMgZnJvbSBub24tcGFydGljaXBhdGluZyB0ZWFtcyBvbiB0aGUgYmFja3NpZGUgb2YgdGhlIGFsYnVtLiBMZXQncyBjb25uZWN0LCBzaGFyZSwgYW5kIG1ha2UgbWVtb3JpZXMgdG9nZXRoZXIhIDwvcD5cbiAgICAgIDxINCB0ZXh0PVwiQXdhcmRzIGFuZCBXaW5uZXJzIG9mIHRoZSBCRkggQ29tcGV0aXRpb24gXCIvPlxuICAgICAgPHA+VGhlIGV2ZW50IGN1bG1pbmF0ZWQgaW4gYW4gQXdhcmRzIENlcmVtb255IGNlbGVicmF0aW5nIGV4Y2VsbGVuY2UgaW4gY3JlYXRpdml0eSwgdGVhbXdvcmssIGFuZCBpbm5vdmF0aW9uLiBPdXIganVkZ2VzLCB1c2luZyB0aGVpciBleHBlcmllbmNlIGZyb20gcGFzdCBpR0VNIHllYXJzLCBldmFsdWF0ZWQgdGhlIHRlYW1zJyBwZXJmb3JtYW5jZXMuIFRoZSBoZWFydGZlbHQgd2lubmVyLCByZWNvZ25pemVkIGZvciB0aGVpciBvdXRzdGFuZGluZyBjb250cmlidXRpb24gYW5kIHNwaXJpdCwgd2FzIHRoZSB0ZWFtIHRoYXQgdHJ1bHkgZW1ib2RpZWQgdGhlIHZhbHVlcyBvZiB0aGUgaUdFTSBjb21tdW5pdHkuIDwvcD5cbiAgICAgIDxINSB0ZXh0PVwiQmVzdCBQcmVzZW50YXRpb25cIi8+XG4gICAgICB7LyogaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2ZpcnN0LXBsYWNlLnN2ZyAqL31cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwtcm93IHdpbm5lcnNcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPlxuICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwid2lubmVyLWltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9maXJzdC1wbGFjZS5zdmcgXCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIndpbm5lclwiPmlHRU0gQWFjaGVuPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwiaGFrZW4tbGlzdGVcIj5cbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJ0cm9waHlcIj48c3Bhbj5Ucm9waHk8L3NwYW4+PC9saT5cbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJjZXJ0aWZpY2F0ZVwiPjxzcGFuPiBDZXJ0aWZpY2F0ZTwvc3Bhbj48L2xpPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInRpY2tldHNcIj4gPHNwYW4+MiBUaWNrZXRzIGZvciBTeW5CaW8gUmVhY3RvciBDb25mZXJlbmNlIHByb3ZpZGVkIGJ5IEdBU0I8L3NwYW4+PC9saT5cbiAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbC1yb3cgd2lubmVyc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+XG4gICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ3aW5uZXItaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL3NlY29uZC1wbGFjZS5zdmcgXCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIndpbm5lclwiPmlHRU0gTWFyYnVyZzwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImhha2VuLWxpc3RlXCI+XG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwiY2VydGlmaWNhdGVcIj48c3Bhbj4gQ2VydGlmaWNhdGU8L3NwYW4+PC9saT5cbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJtb25leVwiPiA8c3Bhbj4kNTAwIFVTRCBwcm92aWRlZCBieSBaeW1vIFJlc2VhcmNoPC9zcGFuPjwvbGk+XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwtcm93IHdpbm5lcnNcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPlxuICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwid2lubmVyLWltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy90aGlyZC1wbGFjZS5zdmcgXCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIndpbm5lclwiPmlHRU0gR1UtRnJhbmtmdXJ0PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwiaGFrZW4tbGlzdGVcIj5cbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJjZXJ0aWZpY2F0ZVwiPjxzcGFuPiBDZXJ0aWZpY2F0ZTwvc3Bhbj48L2xpPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cIm1vbmV5XCI+IDxzcGFuPiQyNTAgVVNEIHByb3ZpZGVkIGJ5IEplbmEgQmlvc2NpZW5jZTwvc3Bhbj48L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8YnIvPlxuICAgICAgPEg1IHRleHQ9XCJCZXN0IFBvc3RlciBFeGhpYml0aW9uIEJvb3RoXCIvPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbC1yb3cgd2lubmVyc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+XG4gICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ3aW5uZXItaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2ZpcnN0LXBsYWNlLnN2ZyBcIi8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwid2lubmVyXCI+aUdFTSBGcmVpYnVyZyA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInRyb3BoeVwiPjxzcGFuPlRyb3BoeTwvc3Bhbj48L2xpPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cImNlcnRpZmljYXRlXCI+PHNwYW4+IENlcnRpZmljYXRlPC9zcGFuPjwvbGk+XG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwidGlja2V0c1wiPiA8c3Bhbj4yIFRpY2tldHMgZm9yIFN5bkJpbyBSZWFjdG9yIENvbmZlcmVuY2UgcHJvdmlkZWQgYnkgR0FTQjwvc3Bhbj48L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyB3aW5uZXJzXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj5cbiAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIndpbm5lci1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvc2Vjb25kLXBsYWNlLnN2ZyBcIi8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwid2lubmVyXCI+aUdFTSBHVS1GcmFua2Z1cnQ8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cImNlcnRpZmljYXRlXCI+PHNwYW4+IENlcnRpZmljYXRlPC9zcGFuPjwvbGk+XG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwia2l0XCI+IDxzcGFuPlBsYXNtaWQgSXNvbGF0aW9uIEtpdHMgcHJvdmlkZWQgYnkgTWFjaGVyeSBOYWdlbDwvc3Bhbj48L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyB3aW5uZXJzXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj5cbiAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIndpbm5lci1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvdGhpcmQtcGxhY2Uuc3ZnIFwiLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTRcIj5cbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ3aW5uZXJcIj5pR0VNIFdhZ2VuaW5nZW5VUiA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cImNlcnRpZmljYXRlXCI+PHNwYW4+IENlcnRpZmljYXRlPC9zcGFuPjwvbGk+XG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwia2l0XCI+PHNwYW4+TWluaS1DaXJjbGUgcHJvdmlkZWQgYnkgUGxhc21pZEZhY3Rvcnk8L3NwYW4+PC9saT5cbiAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1ib290aC1icm9uemUtd2FnZW5pbmdlbi5wbmdcIiBwb3N0ZXJuYW1lPVwiYm9vdGhicm9uemVcIiAvPlxuICAgICAgICAgIDxDZXJ0aWZpY2F0ZSB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2NlcnRzL2JmaC1iZXN0LWJvb3RoLXNpbHZlci1mcmFua2Z1cnQucG5nXCIgcG9zdGVybmFtZT1cImJvb3Roc2lsdmVyXCIgLz5cbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1ib290aC1nb2xkLWZyZWlidXJnLnBuZ1wiIHBvc3Rlcm5hbWU9XCJib290aGdvbGRcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8YnIvPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1wcmVzaS1icm9uemUtZnJhbmtmdXJ0LnBuZ1wiIHBvc3Rlcm5hbWU9XCJwcmVzaWJyb256ZVwiIC8+XG4gICAgICAgICAgPENlcnRpZmljYXRlIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2VydHMvYmZoLWJlc3QtcHJlc2ktc2lsdmVyLW1hcmdidXJnLnBuZ1wiIHBvc3Rlcm5hbWU9XCJwcmVzaXNpbHZlclwiIC8+XG4gICAgICAgICAgPENlcnRpZmljYXRlIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2VydHMvYmZoLWJlc3QtcHJlc2ktZ29sZC1hYWNoZW4ucG5nXCIgcG9zdGVybmFtZT1cInByZXNpZ29sZFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxINCB0ZXh0PVwiV2hhdCBkaWQgd2UgbGVhcm4gYXMgb3JnYW5pemVycyBmb3IgdGhlIG5leHQgZmV3IHllYXJzP1wiLz5cbiAgICAgIDxoMz5Hb29kIHBsYW5uaW5nIGlzIGtleTwvaDM+XG4gICAgICA8cD5TdGFydGluZyBlYXJseSwgY2xlYXJseSBkaXN0cmlidXRpbmcgdGFza3MsIGFuZCBzdGF5aW5nIG9yZ2FuaXplZCBcdTIwMTMgdGhhdCBhdm9pZHMgY2hhb3MuIFdlIGNhbiBub3cgc3RydWN0dXJlLCBjb29yZGluYXRlLCBhbmQgbWFuYWdlIHRoZSBuZXh0IG1lZXQtdXAgaW4gRnJhbmtmdXJ0IG1vcmUgZWZmaWNpZW50bHkgYW5kIGFoZWFkIG9mIHRpbWUuIDwvcD5cbiAgICAgIDxoMz5Db21tdW5pY2F0aW9uIGlzIGV2ZXJ5dGhpbmc8L2gzPlxuICAgICAgPHA+UmVndWxhciB0ZWFtIGNvbW11bmljYXRpb24gYW5kIGNsZWFyIGFncmVlbWVudHMgYXJlIGVzc2VudGlhbCB0byBrZWVwIGV2ZXJ5b25lIG9uIHRoZSBzYW1lIHBhZ2UuIFdlXHUyMDE5dmUgcmVhbGl6ZWQganVzdCBob3cgaW1wb3J0YW50IHNvY2lhbGl6aW5nIGFuZCBuZXR3b3JraW5nIHJlYWxseSBhcmUgd2l0aGluIHRoZSBpR0VNIGNvbW11bml0eS4gPC9wPlxuICAgICAgPGgzPlN0YXkgZmxleGlibGUgPC9oMz5cbiAgICAgIDxwPlNwb250YW5lb3VzIGNoYW5nZXMgaGFwcGVuIFx1MjAxMyBiYWNrdXAgcGxhbnMgYW5kIHF1aWNrIGRlY2lzaW9ucyBhcmUgYSBtdXN0LiBXaXRoIG91ciBwbGF0Zm9ybSwgd2Ugd2VyZSBhYmxlIHRvIGJldHRlciBjb25uZWN0IHRoZSB0ZWFtcy4gPC9wPlxuICAgICAgPGgzPkZvY3VzIG9uIHRoZSBwYXJ0aWNpcGFudHMgPC9oMz5cbiAgICAgIDxwPlVuZGVyc3RhbmRpbmcgcGFydGljaXBhbnRzJyBuZWVkcyBhbmQgb2ZmZXJpbmcgYSBkaXZlcnNlIHByb2dyYW0gdGhhdCByZXNvbmF0ZXMuIFdlIG5vdyBrbm93IGhvdyBtdWNoIGZ1biB0aGUgZXhjaGFuZ2Ugb24gYm90aCBzY2llbnRpZmljIGFuZCBwZXJzb25hbCBsZXZlbHMgY2FuIGJlLiA8L3A+XG4gICAgICA8aDM+RmVlZGJhY2sgbWFrZXMgaXQgYmV0dGVyIDwvaDM+XG4gICAgICA8cD5HYXRoZXJpbmcgZmVlZGJhY2sgYWZ0ZXIgdGhlIGV2ZW50IGFuZCBsZWFybmluZyBmcm9tIGl0IHRvIG1ha2UgdGhlIG5leHQgb25lIGV2ZW4gYmV0dGVyLiBUaGlzIHdpbGwgbWFrZSB0aGUgMjAyNSBtZWV0LXVwIGluIEZyYW5rZnVydCBldmVuIGJpZ2dlciBhbmQgYmV0dGVyISBUaGFuayB5b3UhIDwvcD5cblxuICAgICAgPEg0IHRleHQ9XCJGZWVkYmFjayBmb3Igb3VyIEV2ZW50XCIvPlxuXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBmZWVkYmFja2JmaFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBiLWxnXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxoNT5TdHJlbmd0aHM8L2g1PlxuICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICA8bGk+V2VsbCBvcmdhbmlzZWQgPC9saT5cbiAgICAgICAgICAgICAgPGxpPkhlbHBmdWwgZmVlZGJhY2sgZnJvbSBqdWRnZXM8L2xpPlxuICAgICAgICAgICAgICA8bGk+VGhlIGRpdmVyc2l0eSBvZiB0aGUgcHJvZ3JhbSBwb2ludHM8L2xpPlxuICAgICAgICAgICAgICA8bGk+VGhlIHZpYmUgYW5kIHRoZSBhdG1vc3BoZXJlPC9saT5cbiAgICAgICAgICAgICAgPGxpPkluZHVzdHJ5IHdhcyBwcmVzZW50PC9saT5cbiAgICAgICAgICAgICAgPGxpPkEgZnJpZW5kbHkgYW5kIGhlbHBmdWwgdGVhbTwvbGk+XG4gICAgICAgICAgICAgIDxsaT5WZXJ5IHByb2Zlc3Npb25hbCBtb2RlcmF0aW9uPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBiLWxvXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxoNT5XZWFrbmVzc2VzPC9oNT5cbiAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgPGxpPlRpbWUgbWFuYWdlbWVudDwvbGk+XG4gICAgICAgICAgICAgIDxsaT5BIGxpdHRsZSBsb25nZXIgdGltZSBidWZmZXIgYmV0d2VlbiBkaWZmZXJlbnQgcHJvZ3JhbSBwYXJ0czwvbGk+XG4gICAgICAgICAgICAgIDxsaT5KdWRnaW5nIHNlc3Npb24gYW5kIHdvcmtzaG9wcyB3ZXJlIHRha2luZyB1cCB3YXkgbW9yZSB0aW1lIHRoYW4gZXhwZWN0ZWQgZHVlIHRvIHNwZWFrZXJzIG5vdCBjYXJpbmcgYWJvdXQgdGhlIHRpbWU8L2xpPlxuICAgICAgICAgICAgICA8bGk+T25seSBvbmUgcGFuZWwgZGlzY3Vzc2lvbjwvbGk+XG4gICAgICAgICAgICAgIDxsaT5NYWJleSB0aGluayBhYm91dCBzaG9ydGVuaW5nIHRoZSBwcm9ncmFtIHBlciBkYXkgYSBsaXR0bGU8L2xpPlxuICAgICAgICAgICAgICA8bGk+Tm8gdGltZSBmb3IgdGhlIExhYiBPbHltcGljczwvbGk+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG5cbiAgICAgIDxINCB0ZXh0PVwiQWNrbm93bGVkZ21lbnRzXCIvPlxuICAgICAgPHA+VGhlIEJGSCBDb21taXR0ZWUgZXh0ZW5kcyBoZWFydGZlbHQgdGhhbmtzIHRvOiA8L3A+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaT5UaGUgPGI+aUdFTSBUZWFtIG9mIHRoZSBVbml2ZXJzaXR5IG9mIEJpZWxlZmVsZCA8L2I+Zm9yIHRoZWlyIGludmFsdWFibGUgc3VwcG9ydCBpbiBvcmdhbml6aW5nIGFuZCBleGVjdXRpbmcgdGhpcyBldmVudC4gPC9saT5cbiAgICAgICAgPGxpPkFsbCB0aGUgc3BlYWtlcnMsIHdvcmtzaG9wIGxlYWRlcnMsIGFuZCBwYXJ0aWNpcGFudHMgd2hvIGNvbnRyaWJ1dGVkIHRvIG1ha2luZyB0aGlzIE1lZXQtVXAgYSBzdWNjZXNzLiA8L2xpPlxuICAgICAgICA8bGk+ICAgIFRoZSBpR0VNIHRlYW1zIGZvciB0aGVpciBlbmdhZ2VtZW50LCBzY2llbnRpZmljIGV4Y2VsbGVuY2UsIGFuZCBmb3IgbWFraW5nIHRoZSBldmVudCBhbiB1bmZvcmdldHRhYmxlIGV4cGVyaWVuY2UuIDwvbGk+XG4gICAgICAgIDxsaT5PdXIgU3BvbnNvcnMgYW5kIENvbGxhYm9yYXRvcnM8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxINCB0ZXh0PVwiTG9va2luZyBGb3J3YXJkIHRvIDIwMjUgXCIvPlxuICAgICAgPHA+aW4gMjAyNSwgd2Ugd2lsbCB3ZWxjb21lIGFsbCBFdXJvcGVhbiBpR0VNIHRlYW1zIHRvIG91ciBsb3ZlbHkgdW5pdmVyc2l0eSBpbiBGcmFua2Z1cnQgQ2l0eS4gVGhpcyBNZWV0LVVwIHdpbGwgcHJlcGFyZSB5b3UgZm9yIHRoZSBHcmFuZCBKYW1ib3JlZSBpbiBQYXJpcy4gQWZ0ZXIgZXN0YWJsaXNoZWQgYSBicmFuZCBhbmQgYSBwbGF0Zm9ybSwgd2UgYXJlIGV4Y2l0ZWQgdG8gYW5ub3VuY2Ugb3VyIHBsYW5zIGZvciB0aGUgZnV0dXJlOiA8L3A+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaT4gICAgPGI+RXhwYW5zaW9uPC9iPjogV2UgYXJlIGFscmVhZHkgcGxhbm5pbmcgdGhlIG5leHQsIGV2ZW4gbGFyZ2VyIGV2ZW50IGF0IHRoZSBVbml2ZXJzaXR5IG9mIEZyYW5rZnVydCBpbiAyMDI1LiBUaGlzIE1lZXQtVXAgd2lsbCBiZSBzaWduaWZpY2FudGx5IGJpZ2dlciBhbmQgbW9yZSBpbnRlcm5hdGlvbmFsLiA8L2xpPlxuICAgICAgICA8bGk+ICAgIDxiPlByZXBhcmF0aW9uIGFuZCBFdmFsdWF0aW9uPC9iPjogV2l0aCBtb3JlIHByZXBhcmF0aW9uIHRpbWUgYW5kIGludGVuc2l2ZSBldmFsdWF0aW9uIG9mIG91ciBmaXJzdCBldmVudCdzIHN1Y2Nlc3MsIHdlIGFpbSB0byBicmluZyBCRkggdG8gRnJhbmtmdXJ0LCBtYWtpbmcgaXQgYW4gZXZlbnQgbm90IHRvIGJlIG1pc3NlZC4gPC9saT5cbiAgICAgICAgPGxpPiAgICA8Yj5Db2xsYWJvcmF0aW9uIGJldHdlZW4gb3RoZXIgTWVldC1VcCBvcmdhbml6ZXJzPC9iPjogQnkgc3VwcG9ydGluZyBvdGhlciBpR0VNIHRlYW1zIHBsYW5uaW5nIHRvIG9yZ2FuaXplIG1lZXQgdXAgaW4gZGlmZmVyZW50IGxvY2F0aW9ucyBhcm91bmQgdGhlIGdsb2JlLCB3ZSBmb3N0ZXJpbmcgdG8gZW5oYW5jZSB0aGUgcG90ZW50aWFsIGFuZCBzdXBwb3J0IG9yZ2FuaXphdGlvbiB3aXRoIG91ciBleHBlcmllbmNlcy4gPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8SDQgdGV4dD1cIkNvbmNsdXNpb25cIi8+XG4gICAgICA8cD5UaGUgQkZIIEV1cm9wZWFuIE1lZXQtVXAgMjAyNCB3YXMgYSByZXNvdW5kaW5nIHN1Y2Nlc3MsIHVuaXRpbmcgb3ZlciAyMCB0ZWFtcyBhbmQgMTUwIHBhcnRpY2lwYW50cyBpbiBhIGNlbGVicmF0aW9uIG9mIHNjaWVuY2UsIGlubm92YXRpb24sIGFuZCBjb2xsYWJvcmF0aW9uLiBBcyB3ZSBsb29rIGZvcndhcmQgdG8gZnV0dXJlIGV2ZW50cywgd2UgcmVtYWluIGNvbW1pdHRlZCB0byBvdXIgbWlzc2lvbiBvZiBpZ25pdGluZywgaW5ub3ZhdGluZywgYW5kIGluc3BpcmluZyB0aGUgbmV4dCBnZW5lcmF0aW9uIG9mIHNjaWVudGlzdHMuIEhlcmUncyB0byBtYW55IG1vcmUgZ3JlYXQgbW9tZW50cyBhbmQgYW4gdW5mb3JnZXR0YWJsZSB0aW1lIGZvciBldmVyeSBwYXJ0aWNpcGFudCBcdTIwMTMgY2hlZXJzISA8L3A+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCByaWdodFwiPlxuICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2JmaGV1cm9wZWFubWVldHVwLm1vYmlyaXNlc2l0ZS5jb20vcGFnZTYuaHRtbFwiPjxidXR0b24gY2xhc3NOYW1lPVwidGFibGlua3MgYmZoLW1vcmUtYnV0dG9uIE1lZGljYWxcIj5WaXNpdCB0aGUgV2Vic2l0ZTwvYnV0dG9uPjwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XG4gICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vYmZoX2V1cm9tZWV0L1wiPjxidXR0b24gY2xhc3NOYW1lPVwibGVmdC1idXR0b24gdGFibGlua3MgYmZoLW1vcmUtYnV0dG9uIE1lZGljYWxcIiA+U3RheSBpbiBUb3VjaDwvYnV0dG9uPjwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuXG4iLCAiXG5pbXBvcnQgeyBQb3N0ZXJSb3csIFBvc3RlciB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL3Bvc3RlclwiO1xuXG5leHBvcnQgZnVuY3Rpb24gUG9zdGVyR2FsbGVyeSgpe1xuICAgIHJldHVybihcbiAgICAgIDw+XG4gICAgICA8UG9zdGVyUm93XG4gICAgICBwb3N0ZXJuYW1lMT1cImJpZWxlZmVsZFwiXG4gICAgICBwb3N0ZXJuYW1lMj1cImhlbHNpbmtpXCJcbiAgICAgIHVybDE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItYmllbGVmZWxkLTEucG5nXCJcbiAgICAgIHVybDI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItaGVsc2lua2kucG5nXCJcbiAgICAgIC8+XG4gICAgICA8UG9zdGVyUm93XG4gICAgICBwb3N0ZXJuYW1lMT1cImRyZXNkZW5cIlxuICAgICAgcG9zdGVybmFtZTI9XCJkdHVcIlxuICAgICAgdXJsMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1kcmVzZGVuLnBuZ1wiXG4gICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWR0dS5wbmdcIlxuICAgICAgLz5cbiAgICAgIDxQb3N0ZXJSb3dcbiAgICAgIHBvc3Rlcm5hbWUxPVwiZWluZGhvdmVuXCJcbiAgICAgIHBvc3Rlcm5hbWUyPVwiZnJlaWJ1cmdcIlxuICAgICAgdXJsMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1laW5kaG92ZW4ucG5nXCJcbiAgICAgIHVybDI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItZnJlaWJ1cmcucG5nXCJcbiAgICAgIC8+XG4gICAgICA8UG9zdGVyUm93XG4gICAgICBwb3N0ZXJuYW1lMT1cImxldXZlblwiXG4gICAgICBwb3N0ZXJuYW1lMj1cInN5bmJpb1wiXG4gICAgICB1cmwxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWxldXZlbi5wbmdcIlxuICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1zeW5iaW8tY29tcHJlc3NlZC53ZWJwXCJcbiAgICAgIC8+XG4gICAgICA8UG9zdGVyUm93XG4gICAgICBwb3N0ZXJuYW1lMT1cImhhbWJ1cmdcIlxuICAgICAgcG9zdGVybmFtZTI9XCJhYWNoZW5cIlxuICAgICAgdXJsMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1oYW1idXJnLnBuZ1wiXG4gICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWFhY2hlbi5wbmdcIlxuICAgICAgLz5cbiAgICAgICA8UG9zdGVyUm93XG4gICAgICBwb3N0ZXJuYW1lMT1cIndhZ2VuaW5nZW5cIlxuICAgICAgcG9zdGVybmFtZTI9XCJoYW5ub3ZlclwiXG4gICAgICB1cmwxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLXdhZ2VuaW5nZW4ucG5nXCJcbiAgICAgIHVybDI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItaGFubm92ZXIucG5nXCJcbiAgICAgIC8+XG4gICAgICA8UG9zdGVyIHBvc3Rlcm5hbWU9XCJzdG9ja2hvbG1cIiB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JkaC1wb3N0ZXItc3RvY2tob2xtLnBuZ1wiLz5cbiAgXG4gICAgIFxuICAgICAgPC8+XG4gICAgKVxuICB9IiwgImltcG9ydCB7IEJGSFRpbWVsaW5lIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQkZILVRpbWVsaW5lXCI7XG5pbXBvcnQgQkZIcGRmIGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1BkZnNcIjtcbmltcG9ydCBCRkhHYWxsZXJ5IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1Bob3RvLWdyaWRcIjtcbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgQWJvdXQgfSBmcm9tIFwiLi9iZmgtYWJvdXRcIjtcbmltcG9ydCB7IFBvc3RlckdhbGxlcnkgfSBmcm9tIFwiLi9wb3N0ZXJnYWxsZXJ5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBNZWV0VVAoKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCRkggRXVyb3BlYW4gTWVldFVwXCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwXCI+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBZnRlcnZpZGVvXCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwMVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiZy12aWRlby1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogTWVldFVwICgyMDI0KSBbRW5nbGlzaF1cIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCI3MDBweFwiIHNyYz1cImh0dHBzOi8vdmlkZW8uaWdlbS5vcmcvdmlkZW9zL2VtYmVkLzMwYjhhNmUwLTJiNGEtNDYxOC04ODY3LTRlYjhlNmE1MjkzNlwiIGZyYW1lQm9yZGVyPVwiMFwiIGFsbG93RnVsbFNjcmVlbj17dHJ1ZX0gc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCIgLyogc3R5bGU9e3sgcGFkZGluZ1RvcDogXCI1dndcIn19ICovPlxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlRpbWVsaW5lXCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwMlwiPlxuICAgICAgICAgIDxCRkhUaW1lbGluZS8+XG4gICAgICAgIDwvU3ViZXNjdGlvbj4gXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQWJvdXRcIiBpZD1cIkJGSCBFdXJvcGVhbiBNZWV0VXAzXCI+XG4gICAgICAgICAgPEFib3V0Lz5cbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJWaXJ0dWFsIFBvc3RlciBFeGhpYml0aW9uXCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwNFwiPlxuICAgICAgICAgIDxQb3N0ZXJHYWxsZXJ5Lz5cbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJHYWxsZXJ5XCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwNlwiPlxuICAgICAgICAgIDxCRkhHYWxsZXJ5Lz5cbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJEb3dubG9hZHNcIiBpZD1cIkJGSCBFdXJvcGVhbiBNZWV0VXA3XCI+XG4gICAgICAgICAgPEJGSHBkZi8+XG4gICAgICAgIDwvU3ViZXNjdGlvbj4gXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TZWN0aW9uPlxuICAgIClcbn1cbiIsICJpbXBvcnQgeyBINCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgeyBQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XG5pbXBvcnQgeyBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gQ29sbGFiQ29udHJpYnV0aW9uKCl7XG4gICAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgICBcbiAgICByZXR1cm4oXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29sbGFib3JhdGlvbnNcIiBpZD1cIk91ciBDb2xsYWJvcmF0aW9uczJcIj5cbiAgICAgICAgICAgIDxINCBpZD1cIkhhbmRib29rLWhlYWRpbmdcIiB0ZXh0PVwiSGFuYm9vayBmb3IgZG93bmxvYWRcIi8+XG4gICAgICAgICAgICA8cD5Eb3dubG9hZCBvdXIgTE5QIEhhbmJvb2sgdGhhdCB3YXMgY3JlYXRlZCBpbiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdjb2xsczIwMjQnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5jb29wZXJhdGlvbjwvYT4gIHdpdGggdGhlIHRlYW0gPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvbGlua29waW5nL1wiPkxpbmtcdTAwRjZwaW5nPC9hPi48L3A+XG4gICAgICAgICAgICA8UERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2xpcG9zb21lcy1oYW5kYm9vay5wZGZcIiBuYW1lPVwibGlwb3NvbWVzLWhhbmRib29rLnBkZlwiLz5cbiAgICAgICAgPC9TdWJlc2N0aW9uPlxuXG4gICAgKVxufSIsICJcbmltcG9ydCB7IFR3b0xpbmVQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gUGF0aWVudENvbnRyaWJ1dGlvbigpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgIDw+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUGF0aWVudCBNYXR0ZXJzXCIgaWQ9XCJQYXRpZW50IE1hdHRlcnNcIiA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sICAnPlxuICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3BhdGllbnRlbmVpbndpbGxpZ3VuZy1tdXN0ZXJ2b3JsYWdlLWlnZW0tMi5wZGZcIiBuYW1lPVwicGF0aWVudGVuZWlud2lsbGlndW5nLW11c3RlcnZvcmxhZ2UtaWdlbS0yLnBkZlwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nc2VwZXJhdG9yLTIgY29sLTInPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wgICc+XG4gICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgICBsaW5rPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9maW5hbC1oeWdpZW5lLWNvbmNlcHQucGRmXCIgbmFtZT1cImZpbmFsLWh5Z2llbmUtY29uY2VwdC5wZGZcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9TZWN0aW9uPlxuXG4gICAgPC8+XG5cbiAgICApXG59IiwgImltcG9ydCB7IFBERiB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL1BkZnNcIjtcbmltcG9ydCB7IFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgUGF0aWVudENvbnRyaWJ1dGlvbiB9IGZyb20gXCIuL3BhdGllbnQtY29udHJpYnV0aW9uXCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFNhZmV0eUNvbnRyaWJ1dGlvbigpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgIDw+XG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQmlvc2FmZXR5ICYgU2VjdXJpdHkgXCIgaWQ9XCJPdXIgQ29udHJpYnV0aW9uczFcIiA+XG4gICAgICAgICAgICA8UERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3ByaW1hcnktY3VsdHVyZS1ndWlkZWxpbmUucGRmXCIgbmFtZT1cInByaW1hcnktY3VsdHVyZS1ndWlkZWxpbmUucGRmXCIvPlxuICAgICAgICAgICAgPFBhdGllbnRDb250cmlidXRpb24vPlxuICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgPC8+XG5cbiAgICApXG59IiwgImltcG9ydCB7IFRhYkNvbnRleHQsIFRhYkxpc3QsIFRhYlBhbmVsIH0gZnJvbSBcIkBtdWkvbGFiXCI7XG5pbXBvcnQgeyBCb3gsIFRhYiB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBTdGFydGVkIH0gZnJvbSBcIi4vd2lraS1zdGFydFwiO1xuaW1wb3J0IHsgU291cmNlcyB9IGZyb20gXCIuL3dpa2ktc291cmNlc1wiO1xuaW1wb3J0IHsgVHJvdWJsZXNob290aW5nIH0gZnJvbSBcIi4vdHJvdWJsZXNob290aW5nXCI7XG5pbXBvcnQgeyBXaWtpT3ZlcnZpZXcgfSBmcm9tIFwiLi93aWtpLW92ZXJ2aWV3XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBXaWtpVGFicygpIHtcbiAgICBjb25zdCBbdmFsdWUsIHNldFZhbHVlXSA9IFJlYWN0LnVzZVN0YXRlKCcxJyk7XG4gIFxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChfZXZlbnQ6IFJlYWN0LlN5bnRoZXRpY0V2ZW50LCBuZXdWYWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBzZXRWYWx1ZShuZXdWYWx1ZSk7XG4gICAgfTtcbiAgXG4gICAgcmV0dXJuIChcbiAgICAgIDxCb3ggc3g9e3sgd2lkdGg6ICcxMDAlJywgdHlwb2dyYXBoeTogJ2JvZHkxJyB9fT5cbiAgICAgICAgPFRhYkNvbnRleHQgdmFsdWU9e3ZhbHVlfT5cbiAgICAgICAgICA8Qm94IHN4PXt7IGJvcmRlckJvdHRvbTogMSwgYm9yZGVyQ29sb3I6ICdkaXZpZGVyJyB9fT5cbiAgICAgICAgICAgIDxUYWJMaXN0IG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9IGFyaWEtbGFiZWw9XCJsYWIgQVBJIHRhYnMgZXhhbXBsZVwiPlxuICAgICAgICAgICAgICA8VGFiIGxhYmVsPVwiT3ZlcnZpZXdcIiB2YWx1ZT1cIjFcIiAvPlxuICAgICAgICAgICAgICA8VGFiIGxhYmVsPVwiR2V0dGluZyBzdGFydGVkXCIgdmFsdWU9XCI2XCIgLz5cbiAgICAgICAgICAgICAgPFRhYiBsYWJlbD1cIlRyb3VibGVzaG9vdGluZ1wiIHZhbHVlPVwiMlwiIC8+XG4gICAgICAgICAgICAgIDxUYWIgbGFiZWw9XCJDb21wb25lbnRzXCIgdmFsdWU9XCIzXCIgLz5cbiAgICAgICAgICAgICAgPFRhYiBsYWJlbD1cIkRvd25sb2Fkc1wiIHZhbHVlPVwiNFwiIC8+XG4gICAgICAgICAgICAgIDxUYWIgbGFiZWw9XCJSZXNvdXJjZXNcIiB2YWx1ZT1cIjVcIiAvPlxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgIDwvVGFiTGlzdD5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8VGFiUGFuZWwgdmFsdWU9XCIxXCI+IDxXaWtpT3ZlcnZpZXcvPiAgPC9UYWJQYW5lbD5cbiAgICAgICAgICA8VGFiUGFuZWwgdmFsdWU9XCI2XCI+IDxTdGFydGVkLz4gIDwvVGFiUGFuZWw+XG4gICAgICAgICAgPFRhYlBhbmVsIHZhbHVlPVwiMlwiPiA8VHJvdWJsZXNob290aW5nLz4gPC9UYWJQYW5lbD5cbiAgICAgICAgICA8VGFiUGFuZWwgdmFsdWU9XCIzXCI+ICA8L1RhYlBhbmVsPlxuICAgICAgICAgIDxUYWJQYW5lbCB2YWx1ZT1cIjRcIj4gICA8L1RhYlBhbmVsPlxuICAgICAgICAgIDxUYWJQYW5lbCB2YWx1ZT1cIjVcIj4gIDxTb3VyY2VzLz4gPC9UYWJQYW5lbD5cbiAgICAgICAgPC9UYWJDb250ZXh0PlxuICAgICAgPC9Cb3g+XG4gICAgKTtcbiAgfVxuICAiLCAiZXhwb3J0IGZ1bmN0aW9uIFN0YXJ0ZWQoKXtcblxuICAgIHJldHVybihcbiAgICAgIDw+XG4gICAgICA8aDM+RGlmZmVyZW5jZXMgYmV0d2VlbiBSZWFjdCBhbmQgcGxhaW4gSFRNTDwvaDM+XG4gICAgICA8cD5UaGVzZSBjYW4gbGVhZCB0byBjb25mdXNpbmcgZXJyb3JzIGlmIHlvdSBhcmUgdXNlZCB0byBIVE1MLjwvcD5cbiAgICAgIDx0YWJsZT5cbiAgICAgICAgPHRoZWFkPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aD48L3RoPlxuICAgICAgICAgICAgPHRoPlBsYWluIEhUTUw8L3RoPlxuICAgICAgICAgICAgPHRoPlVzaW5nIFJlYWN0PC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHk+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGg+IDxjb2RlPiZsdDt0YWdzJmd0OyA8L2NvZGU+IDwvdGg+XG4gICAgICAgICAgPHRoPiBcbiAgICAgICAgICAgIDxwPiBNb3N0IHRhZ3MgaGF2ZSB0byBiZSBvcGVuZWQgYW5kIGNsb3NlZCwgYnV0IHNvbWUgY2FuIGJlIG9ubHkgb3BlbmVkLiA8L3A+IFxuICAgICAgICAgICAgPHA+IGUuZy4gaW1nLCBiciwgLi4uIDxjb2RlPiAmbHQ7aW1nIHNyYzpcInNvbWVzb3VyY2VcIiBhbHQ9XCJhbHRcIiZndDsgPC9jb2RlPiA8L3A+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8cD4gRXZlcnkgdGFnIGhhcyB0byBiZSBjbG9zZWQuICA8L3A+XG4gICAgICAgICAgICA8cD4gZS5nLiBpbWcsIGJyLCAuLi4gXG4gICAgICAgICAgICAgIDxjb2RlPiAmbHQ7aW1nIHNyYzpcInNvbWVzb3VyY2VcIiBhbHQ9XCJhbHRcIi8mZ3Q7PC9jb2RlPiBvciBcbiAgICAgICAgICAgICAgPGNvZGU+ICZsdDtpbWcgc3JjOlwic29tZXNvdXJjZVwiIGFsdD1cImFsdFwiJmd0OyAmbHQ7L2ltZyZndDsgPC9jb2RlPiAgPC9wPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGg+QXR0cmlidXRlIE5hbWVzPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8cD4gR2xvYmFsIGF0dHJpYnV0ZSBuYW1lcyBhcmUgYWx3YXlzIHdyaXR0ZW4gaW4gbG93ZXJjYXNlIGFuZCB0d28gd29yZHMgYXJlIGZ1c2VkIGludG8gb25lIGJ5IFwiLVwiLiA8L3A+XG4gICAgICAgICAgICA8cD4gRS5nLiBcImNsYXNzXCIsIFwiY2hhcnNldFwiLCAuLi48L3A+XG4gICAgICAgICAgICA8cD4gVGhpcyBpcyBhbHNvIHRoZSBjYXNlIHdoZW4gdXNpbmcgdGhlIHN5bGUtYXR0cmlidXRlLiA8L3A+XG4gICAgICAgICAgICA8cD4gRS5nLiA8Y29kZT5zdHlsZT1cImNvbG9yOmJsdWU7IHRleHQtYWxpZ246Y2VudGVyXCI8L2NvZGU+PC9wPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPiBcbiAgICAgICAgICAgIDxwPkdsb2JhbCBhdHRyaWJ1dGUgbmFtZXMgYXJlIGdlbmVyYWxseSB3cml0dGVuIGluIGxvd2VyY2FzZSBidXQgdXNlIHRoZSBjYW1lbCBjYXNlIGlmIHR3byB3b3JkcyBoYXZlIHRvIGJlIGZ1c2VkLiBTb21lIGF0dHJ1YnV0ZXMgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQgbmFtZXMuPC9wPlxuICAgICAgICAgICAgPHA+RS5nLiBcImNsYXNzTmFtZVwiLCBcImNoYXJTZXRcIiwgLi4uPC9wPlxuICAgICAgICAgICAgPHA+IFRoaXMgaXMgYWxzbyB0aGUgY2FzZSB3aGVuIHVzaW5nIHRoZSBzdHlsZS1hdHRyaWJ1dGUuPC9wPlxuICAgICAgICAgICAgPHA+IEUuZy4gPGNvZGU+c3R5bGU9JiMxMjM7JiMxMjM7dmVjdG9yRWZmZWN0OiAmcXVvdDtub24tc2NhbGluZy1zdHJva2UmcXVvdDsmIzEyNTsmIzEyNTs8L2NvZGU+PC9wPlxuICAgICAgICAgICAgPHA+VGhpcyBkb2VzIG5vdCBhcHBseSB0byB0aGUgY3NzIGZpbGUhPC9wPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGg+U3R5bGUgYXR0cmlidXRlPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8cD4gc3R5bGU9XCI8dmFyPmF0dHJpYnV0ZTwvdmFyPjogPHZhcj52YWx1ZTwvdmFyPjsgPHZhcj5hdHRyaWJ1dGU8L3Zhcj46IDx2YXI+dmFsdWU8L3Zhcj5cIiA8L3A+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8cD4gc3R5bGU9JiMxMjM7JiMxMjM7PHZhcj5hdHRyaWJ1dGU8L3Zhcj46IFwiPHZhcj52YWx1ZTwvdmFyPlwiLCA8dmFyPmF0dHJpYnV0ZTwvdmFyPjogXCI8dmFyPnZhbHVlPC92YXI+XCIgJiMxMjU7JiMxMjU7PC9wPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgICAgPGgzPkdvb2QgdG8ga25vd3M8L2gzPlxuICAgICAgPC8+XG4gICAgKVxuICB9XG4gICIsICJpbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmludGVyZmFjZSBJUHJvcHMge1xuICBvcGVuPzogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgdGl0bGU6IHN0cmluZztcbiAgaWQ6IHN0cmluZztcbn1cblxuXG4gIFxuICBleHBvcnQgY29uc3QgQ29sbGFwc2libGU6IFJlYWN0LkZDPElQcm9wcz4gPSAoeyBvcGVuID0gZmFsc2UsIGNoaWxkcmVuLCB0aXRsZSwgaWQgfSkgPT4ge1xuICAgIGNvbnN0IFtpc09wZW4sIHNldElzT3Blbl0gPSB1c2VTdGF0ZShvcGVuKTtcbiAgICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAvLyBDaGVjayBpZiB0aGUgY3VycmVudCBVUkwgaGFzIHRoZSBzcGVjaWZpYyBjb2xsYXBzZSBJRFxuICAgICAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGxvY2F0aW9uLnNlYXJjaCk7XG4gICAgICAgIGNvbnN0IGNvbGxhcHNlSWQgPSBwYXJhbXMuZ2V0KCdjb2xsYXBzZUlkJyk7XG5cbiAgICAgICAgaWYgKGNvbGxhcHNlSWQgPT09IGlkKSB7XG4gICAgICAgICAgICBzZXRJc09wZW4odHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9LCBbbG9jYXRpb24uc2VhcmNoLCBpZF0pO1xuXG4gICAgY29uc3QgaGFuZGxlRmlsdGVyT3BlbmluZyA9ICgpID0+IHtcbiAgICAgICAgc2V0SXNPcGVuKChwcmV2KSA9PiAhcHJldik7XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICA8ZGl2IGlkPXtpZH0gY2xhc3NOYW1lPVwiY29sbGFwc2UtY2FyZCBiZy1kYlwiPlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3NOYW1lPVwiZm9udC13ZWlnaHQtYm9sZCBjb2xsYXBzaWJsZS1hXCI+e3RpdGxlfTwvaDY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJidG5cIiBvbkNsaWNrPXtoYW5kbGVGaWx0ZXJPcGVuaW5nfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWlzT3BlbiA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9J3VwZG93bicgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2FuZ2xlLXNtYWxsLWRvd24ucG5nXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT0ndXBkb3duJyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvYW5nbGUtc21hbGwtdXAzMnB4LnBuZ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+e2lzT3BlbiAmJiA8ZGl2IGNsYXNzTmFtZT1cInAtM1wiPjxociBjbGFzc05hbWU9J2NvbGxhcHNpYmxlLWhyJyAvPntjaGlsZHJlbn08L2Rpdj59PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC8+XG4gICAgKTtcbn07XG5cbiAgZXhwb3J0IGNvbnN0IENvbGxhcHNpYmxlVHdvOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHsgb3BlbiwgY2hpbGRyZW4sIHRpdGxlIH0pID0+IHtcbiAgICBjb25zdCBbaXNPcGVuLCBzZXRJc09wZW5dID0gdXNlU3RhdGUob3Blbik7XG4gIFxuICAgIGNvbnN0IGhhbmRsZUZpbHRlck9wZW5pbmcgPSAoKSA9PiB7XG4gICAgICBzZXRJc09wZW4oKHByZXYpID0+ICFwcmV2KTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICA8c2VjdGlvbiBpZD17dGl0bGV9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbGxhcHNlLWNhcmRcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cImZvbnQtd2VpZ2h0LWJvbGQgY29sbGFwc2libGUtYVwiPnt0aXRsZX08L2gzPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJidG5cIiBvbkNsaWNrPXtoYW5kbGVGaWx0ZXJPcGVuaW5nfT5cbiAgICAgICAgICAgICAgICB7IWlzT3BlbiA/IChcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT0ndXBkb3duJyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvYW5nbGUtc21hbGwtZG93bi5wbmdcIiAvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9J3VwZG93bicgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2FuZ2xlLXNtYWxsLXVwMzJweC5wbmdcIiAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XG4gICAgICAgICAgICA8ZGl2Pntpc09wZW4gJiYgPGRpdiBjbGFzc05hbWU9XCJwLTNcIj4gPGhyIGNsYXNzTmFtZT0nY29sbGFwc2libGUtaHInLz4ge2NoaWxkcmVufTwvZGl2Pn08L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG4gIFxuICBcbiAgZXhwb3J0IGRlZmF1bHQgQ29sbGFwc2libGU7XG5cbiAgZXhwb3J0IGNvbnN0IENvbGxhcHNpYmxlSW5mb0JveDogUmVhY3QuRkM8SVByb3BzPiA9ICh7IG9wZW4sIGNoaWxkcmVuLCB0aXRsZSB9KSA9PiB7XG4gICAgY29uc3QgW2lzT3Blbiwgc2V0SXNPcGVuXSA9IHVzZVN0YXRlKG9wZW4pO1xuICBcbiAgICBjb25zdCBoYW5kbGVGaWx0ZXJPcGVuaW5nID0gKCkgPT4ge1xuICAgICAgc2V0SXNPcGVuKChwcmV2KSA9PiAhcHJldik7XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbGxhcHNlLWNhcmQgYmctaW5mb1wiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgICAgICAgICAgICA8aDYgY2xhc3NOYW1lPVwiZm9udC13ZWlnaHQtYm9sZCBjb2xsYXBzaWJsZS1hXCI+e3RpdGxlfTwvaDY+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImJ0blwiIG9uQ2xpY2s9e2hhbmRsZUZpbHRlck9wZW5pbmd9PlxuICAgICAgICAgICAgICAgIHshaXNPcGVuID8gKFxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPSd1cGRvd24nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9hbmdsZS1zbWFsbC1kb3duLnBuZ1wiIC8+XG4gICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT0ndXBkb3duJyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvYW5nbGUtc21hbGwtdXAzMnB4LnBuZ1wiIC8+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJcIj5cbiAgICAgICAgICAgIDxkaXY+e2lzT3BlbiAmJiA8ZGl2IGNsYXNzTmFtZT1cInAtM1wiPiA8aHIgY2xhc3NOYW1lPSdjb2xsYXBzaWJsZS1ocicvPiB7Y2hpbGRyZW59PC9kaXY+fTwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgIiwgImltcG9ydCBDb2xsYXBzaWJsZSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuXG5leHBvcnQgIGZ1bmN0aW9uIFNvdXJjZXMoKXtcbiAgICByZXR1cm4oXG4gICAgICA8ZGl2PlxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLWljb25zXCIgdGl0bGU9XCJJbWFnZXMgYW5kIEljb25zXCIgPlxuICAgICAgICBNb3N0IHRlYW1zIG5lZWQgYSBsb3Qgb2YgcGljdHVyZXMsIGNvbXBvbmVudHMsIGljb25zIGFuZCBhbGlrZS4gVGhleSBjYW4gYmUgZGlmZmljdWx0IHRvIGZpbmQsIGVzcGVjaWFsbHkgZnJlZSBhbmQgb3BlbiBzb3VyY2Ugb25lcy5cbiAgICAgICAgXG4gICAgICAgICAgPHVsPlxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly9iaW9pY29ucy5jb20vXCI+IGh0dHBzOi8vYmlvaWNvbnMuY29tLzwvYT4gPC9saT5cbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vdG9nb3R2LmRiY2xzLmpwL2VuL3BpY3MuaHRtbFwiID4gaHR0cHM6Ly90b2dvdHYuZGJjbHMuanAvZW4vcGljcy5odG1sIDwvYT4gPC9saT5cbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vc21hcnQuc2Vydmllci5jb20vXCIgPmh0dHBzOi8vc21hcnQuc2Vydmllci5jb20vPC9hPiA8L2xpPlxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly9vcGVuY2xpcGFydC5vcmcvXCIgPiBodHRwczovL29wZW5jbGlwYXJ0Lm9yZy88L2E+IDwvbGk+XG4gICAgICAgICAgICA8bGk+IDxhIGhyZWY9XCJodHRwczovL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL0NhdGVnb3J5OlNWR19maWxlc1wiID5odHRwczovL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL0NhdGVnb3J5OlNWR19maWxlczwvYT4gPC9saT5cbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vd3d3LmZsYXRpY29uLmNvbS9cIj5odHRwczovL3d3dy5mbGF0aWNvbi5jb20vPC9hPiA8L2xpPlxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly9iaW9sb2dpY2FsaWNvbnMuY29tL2VuXCI+aHR0cHM6Ly9iaW9sb2dpY2FsaWNvbnMuY29tL2VuPC9hPiA8L2xpPlxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly93d3cuc3ZncmVwby5jb20vXCI+aHR0cHM6Ly93d3cuc3ZncmVwby5jb20vPC9hPiA8L2xpPlxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly93d3cuaHVtYW5iaW9tZWRpYS5vcmcvXCI+aHR0cHM6Ly93d3cuaHVtYW5iaW9tZWRpYS5vcmcvPC9hPiA8L2xpPlxuICAgICAgICAgIDwvdWw+XG4gIFxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLWNvbG9yc1wiIHRpdGxlPVwiQ29sb3Vyc1wiID5cbiAgICAgICAgICBOZWVkIGEgc2xpZ2h0bHkgbGlnaHRlciB2ZXJzaW9uIG9mIG9uZSBvZiB5b3VyIGNvbG9ycyBvciBhIG1peCBvZiB0d28gY29sb3Vycz8gXG4gICAgICAgICAgPHVsPlxuICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCJodHRwczovL3d3dy53M3NjaG9vbHMuY29tL2NvbG9ycy9jb2xvcnNfbWl4ZXIuYXNwXCI+IGh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vY29sb3JzL2NvbG9yc19taXhlci5hc3A8L2E+PC9saT5cbiAgICAgICAgICA8L3VsPlxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLXRvb2xzXCIgdGl0bGU9XCJDb2RpbmcgVG9vbHNcIj5cbiAgICAgICAgICBHZW5lcmF0b3JzXG4gICAgICAgICAgPHVsPlxuICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCJodHRwczovL3d3dy5jc3Nwb3J0YWwuY29tL1wiPmh0dHBzOi8vd3d3LmNzc3BvcnRhbC5jb20vPC9hPjwvbGk+XG4gICAgICAgICAgICA8bGk+PGEgaHJlZj1cImh0dHBzOi8vaHRtbGNzcy50b29scy9cIj5odHRwczovL2h0bWxjc3MudG9vbHMvPC9hPjwvbGk+XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktcGxhY2Vob2xkZXJcIiB0aXRsZT1cIlBsYWNlaG9sZGVyc1wiPlxuICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgIDxsaT48YSBocmVmPVwiaHR0cHM6Ly93d3cubG9yZW1pcHN1bS5kZS9cIj5odHRwczovL3d3dy5sb3JlbWlwc3VtLmRlLzwvYT48L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvQ29sbGFwc2libGU+XG4gIFxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLXN2Z3NcIiB0aXRsZT1cIlNWR3NcIj5cbiAgICAgICAgICA8dWw+XG4gICAgICAgICAgICA8bGk+PGEgaHJlZj1cImh0dHBzOi8vc3VwZXJkZXNpZ25lci5jby90b29scy9zdmctYmFja2dyb3VuZHNcIj5odHRwczovL3N1cGVyZGVzaWduZXIuY28vdG9vbHMvc3ZnLWJhY2tncm91bmRzPC9hPjwvbGk+XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktYWNjZXNzaWJpbGl0eVwiIHRpdGxlPVwiQWNjZXNzaWJpbGl0eVwiPlxuICAgICAgICA8dWw+XG4gICAgICAgICAgPGxpPjxhIGhyZWY9XCJodHRwczovL3NjaGVtYS5vcmdcIj5odHRwczovL3NjaGVtYS5vcmc8L2E+PC9saT5cbiAgICAgICAgPC91bD5cbiAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgIDwvZGl2PlxuICBcbiAgICApXG4gIH0gIiwgIlxuaW1wb3J0IFNlbGVjdCBmcm9tICdyZWFjdC1zZWxlY3QnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuXG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIHZhbHVlOiBzdHJpbmcsXG4gIGxhYmVsOiBzdHJpbmdcbn1cbmNvbnN0IHdpa2lvcHRpb25zID1bXG4gIHt2YWx1ZTogXCJhbGxcIiwgbGFiZWw6IFwiU2hvdyBhbGxcIn0sXG4gIHt2YWx1ZTogXCJyZWFjdFwiLCBsYWJlbDogXCJSZWFjdFwifSxcbiAge3ZhbHVlOiBcInR5cGVcIiwgbGFiZWw6IFwiVHlwZXNcIn0sXG4gIHt2YWx1ZTogXCJwcm9wZXJ0eVwiLCBsYWJlbDogXCJQcm9wZXJ0aWVzXCJ9LFxuICB7dmFsdWU6IFwicGlwZWxpbmVcIiwgbGFiZWw6IFwiR2l0TGFiIFBpcGVsaW5lXCJ9LFxuICB7dmFsdWU6IFwiaHRtbFwiLCBsYWJlbDogXCJIVE1MXCJ9LFxuICB7dmFsdWU6IFwiY3NzXCIsIGxhYmVsOiBcIkNTU1wifSxcbiAgXG5dXG5cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlck11bHRpU2VsZWN0aW9uKGFycjogQXJyYXk8UHJvcHM+KSB7XG4gIGNvbnN0IG5vbm8gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm5vbm9cIik7XG4gIGlmIChub25vKSB7XG4gICAgbm9uby5jbGFzc05hbWUgPSBcIm5vc2hvd1wiO1xuICB9XG5cbiAgY29uc3QgZmlsdGVyYWJsZUVsZW1lbnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImZpbHRlcmFibGVcIik7XG5cbiAgLy8gUmVtb3ZlIFwic2hvd1wiIGNsYXNzIGZyb20gYWxsIGVsZW1lbnRzXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVyYWJsZUVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgZWwgPSBmaWx0ZXJhYmxlRWxlbWVudHNbaV07XG4gICAgdzNSZW1vdmVDbGFzcyhlbCwgXCJzaG93XCIpO1xuICB9XG5cbiAgY29uc29sZS5sb2coXCJCZWdpblwiKTtcblxuICAvLyBBcHBseSBmaWx0ZXIgY3JpdGVyaWFcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWx0ZXJhYmxlRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBlbCA9IGZpbHRlcmFibGVFbGVtZW50c1tpXTtcbiAgICBsZXQgc2hvdWxkU2hvdyA9IHRydWU7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGFycikge1xuICAgICAgY29uc29sZS5sb2coYGVudHJ5OiAke2VudHJ5LnZhbHVlfWApO1xuICAgICAgaWYgKCFlbC5jbGFzc0xpc3QuY29udGFpbnMoZW50cnkudmFsdWUpKSB7XG4gICAgICAgIHNob3VsZFNob3cgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc29sZS5sb2coYHNob3VsZFNob3c6ICR7c2hvdWxkU2hvd31gKTtcbiAgICBpZiAoc2hvdWxkU2hvdykge1xuICAgICAgdzNBZGRDbGFzcyhlbCwgXCJzaG93XCIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENoZWNrIGlmIGFueSBlbGVtZW50IGlzIHNob3duXG4gIGNvbnN0IHNob3duRWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwic2hvd1wiKTtcbiAgaWYgKHNob3duRWxlbWVudHMubGVuZ3RoIDwgMSAmJiBub25vKSB7XG4gICAgY29uc29sZS5sb2coc2hvd25FbGVtZW50cy5sZW5ndGgpO1xuICAgIG5vbm8uY2xhc3NOYW1lID0gXCJzaG93XCI7XG4gIH1cbn1cblxuLyogZnVuY3Rpb24gZmlsdGVyU2VsZWN0aW9uKGxhYmVsOiBzdHJpbmcpIHtcbiAgdmFyIHgsIGk7XG4gIHggPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiZmlsdGVyYWJsZVwiKTtcbiAgaWYgKGxhYmVsID09IFwiYWxsXCIpIGxhYmVsID0gXCJcIjtcbiAgZm9yIChpID0gMDsgaSA8IHgubGVuZ3RoOyBpKyspIHtcbiAgICBsZXQgZWwgPSB4W2ldOyBcbiAgICB3M1JlbW92ZUNsYXNzKGVsLCBcInNob3dcIik7XG4gICAgaWYgKHhbaV0uY2xhc3NOYW1lLmluZGV4T2YobGFiZWwpID4gLTEpIHczQWRkQ2xhc3MoeFtpXSwgXCJzaG93XCIpO1xuICB9XG59ICovXG4gIFxuZnVuY3Rpb24gdzNBZGRDbGFzcyhlbGVtZW50OiBFbGVtZW50LCBuYW1lOiBzdHJpbmcpIHtcbiAgdmFyIGksIGFycjEsIGFycjI7XG4gIGFycjEgPSBlbGVtZW50LmNsYXNzTmFtZS5zcGxpdChcIiBcIik7XG4gIGFycjIgPSBuYW1lLnNwbGl0KFwiIFwiKTtcbiAgZm9yIChpID0gMDsgaSA8IGFycjIubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoYXJyMS5pbmRleE9mKGFycjJbaV0pID09IC0xKSB7ZWxlbWVudC5jbGFzc05hbWUgKz0gXCIgXCIgKyBhcnIyW2ldO31cbiAgfVxufVxuXG5mdW5jdGlvbiB3M1JlbW92ZUNsYXNzKGVsZW1lbnQ6IEVsZW1lbnQsIG5hbWU6IHN0cmluZykge1xuICB2YXIgaSwgYXJyMSwgYXJyMjtcbiAgYXJyMSA9IGVsZW1lbnQuY2xhc3NOYW1lLnNwbGl0KFwiIFwiKTtcbiAgYXJyMiA9IG5hbWUuc3BsaXQoXCIgXCIpO1xuICBmb3IgKGkgPSAwOyBpIDwgYXJyMi5sZW5ndGg7IGkrKykge1xuICAgIHdoaWxlIChhcnIxLmluZGV4T2YoYXJyMltpXSkgPiAtMSkge1xuICAgICAgYXJyMS5zcGxpY2UoYXJyMS5pbmRleE9mKGFycjJbaV0pLCAxKTsgICAgIFxuICAgIH1cbiAgfVxuICBlbGVtZW50LmNsYXNzTmFtZSA9IGFycjEuam9pbihcIiBcIik7XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFdpa2lTZWxlY3Rvcigpe1xuICByZXR1cm4oXG4gICAgPGRpdj5cbiAgICAgIDxXaWtpQWN0aW9uPjwvV2lraUFjdGlvbj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuXG5jbGFzcyBXaWtpQWN0aW9uIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGUgPSB7XG4gICAgc2VsZWN0ZWRPcHRpb246IG51bGwsXG4gIH07XG4gIGhhbmRsZUNoYW5nZSA9IChzZWxlY3RlZE9wdGlvbjogYW55KSA9PiB7XG4gIFx0XG4gIFx0dGhpcy5zZXRTdGF0ZSh7IHNlbGVjdGVkT3B0aW9uIH0sICgpID0+XG4gIFx0Y29uc29sZS5sb2coYE9wdGlvbiBzZWxlY3RlZDpgLCB0aGlzLnN0YXRlLnNlbGVjdGVkT3B0aW9uKVxuICAgXHRcbiAgICApO1xuICAgIFx0ZmlsdGVyTXVsdGlTZWxlY3Rpb24oc2VsZWN0ZWRPcHRpb24pXG4gIH07XG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IHNlbGVjdGVkT3B0aW9uIH0gPSB0aGlzLnN0YXRlO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTZWxlY3RcbiAgICAgICAgdmFsdWU9e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICBvbkNoYW5nZT17dGhpcy5oYW5kbGVDaGFuZ2V9XG4gICAgICAgIGlzTXVsdGlcbiAgICAgICAgb3B0aW9ucz17d2lraW9wdGlvbnN9XG4gICAgICAgIGRlZmF1bHRWYWx1ZT17W3dpa2lvcHRpb25zWzBdXX1cbiAgICAgICAgY2xhc3NOYW1lPVwiYmFzaWMtbXVsdGktc2VsZWN0XCJcbiAgICAgICAgY2xhc3NOYW1lUHJlZml4PVwic2VsZWN0XCJcbiAgICAgIC8+XG4gICAgKTtcbiAgfVxufVxuXG4vKiBUeXBlICcoc2VsZWN0ZWRPcHRpb246IFByb3BzIHwgbnVsbCkgPT4gdm9pZCcgaXMgbm90IGFzc2lnbmFibGUgdG8gdHlwZSAnKG5ld1ZhbHVlOiBNdWx0aVZhbHVlPHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZzsgfSB8IG51bGw+LCBhY3Rpb25NZXRhOiBBY3Rpb25NZXRhPHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZzsgfSB8IG51bGw+KSA9PiB2b2lkJy5cbiAgVHlwZXMgb2YgcGFyYW1ldGVycyAnc2VsZWN0ZWRPcHRpb24nIGFuZCAnbmV3VmFsdWUnIGFyZSBpbmNvbXBhdGlibGUuXG4gICAgVHlwZSAncmVhZG9ubHkgKHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZzsgfSB8IG51bGwpW10nIGlzIG1pc3NpbmcgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzIGZyb20gdHlwZSAnUHJvcHMnOiB2YWx1ZSwgbGFiZWwgKi9cbiAgICAvKiBjb25zdCBocG9wdGlvbnMgPVtcbiAgICAgIHt2YWx1ZTogXCJhbGxcIiwgbGFiZWw6IFwiQWxsXCJ9LFxuICAgICAge3ZhbHVlOiBcIkFjYWRlbWlhXCIsIGxhYmVsOiBcIkFjYWRlbWlhXCJ9LFxuICAgICAge3ZhbHVlOiBcIlBhdGllbnRQYXRpZW50XCIsIGxhYmVsOiBcIlBhdGllbnRcIn0sXG4gICAgICB7dmFsdWU6IFwiTWVkaWNhbFwiLCBsYWJlbDogXCJNZWRpY2FsIFByb2Zlc3Npb25hbFwifSxcbiAgICAgIHt2YWx1ZTogXCJwcm9wZXJ0eVwiLCBsYWJlbDogXCJQcm9wZXJ0aWVzXCJ9LFxuICAgICAge3ZhbHVlOiBcInBpcGVsaW5lXCIsIGxhYmVsOiBcIkdpdExhYiBQaXBlbGluZVwifSxcbiAgICAgIHt2YWx1ZTogXCJodG1sXCIsIGxhYmVsOiBcIkhUTUxcIn0sXG4gICAgICB7dmFsdWU6IFwiY3NzXCIsIGxhYmVsOiBcIkNTU1wifSxcbiAgICAgIFxuICAgIF1cblxuICAgIGV4cG9ydCBmdW5jdGlvbiBIUFNlbGVjdG9yKCl7XG4gICAgICByZXR1cm4oXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEhQQWN0aW9uPjwvSFBBY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKVxuICAgIH1cblxuXG5cbiAgICBjbGFzcyBIUEFjdGlvbiBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgICBzdGF0ZSA9IHtcbiAgICAgICAgc2VsZWN0ZWRPcHRpb246IG51bGwsXG4gICAgICB9O1xuICAgICAgaGFuZGxlQ2hhbmdlID0gKHNlbGVjdGVkT3B0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBzZWxlY3RlZE9wdGlvbiB9LCAoKSA9PlxuICAgICAgICBjb25zb2xlLmxvZyhgT3B0aW9uIHNlbGVjdGVkOmAsIHRoaXMuc3RhdGUuc2VsZWN0ZWRPcHRpb24pXG4gICAgICAgICBcbiAgICAgICAgKTtcbiAgICAgICAgICBmaWx0ZXJNdWx0aVNlbGVjdGlvbihzZWxlY3RlZE9wdGlvbilcbiAgICAgIH07XG4gICAgICByZW5kZXIoKSB7XG4gICAgICAgIGNvbnN0IHsgc2VsZWN0ZWRPcHRpb24gfSA9IHRoaXMuc3RhdGU7XG4gICAgXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgdmFsdWU9e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgaXNNdWx0aVxuICAgICAgICAgICAgb3B0aW9ucz17aHBvcHRpb25zfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtbaHBvcHRpb25zWzBdXX1cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImJhc2ljLW11bHRpLXNlbGVjdFwiXG4gICAgICAgICAgICBjbGFzc05hbWVQcmVmaXg9XCJzZWxlY3RcIlxuICAgICAgICAgIC8+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSAqLyIsICJpbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IEg1IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IFRyb3VibGVzaG9vdCB9IGZyb20gXCIuL3Ryb3VibGUtZGF0YVwiO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBGaWx0ZXJhYmxlcyhkYXRhOiBBcnJheTxUcm91Ymxlc2hvb3Q+KXtcbiAgICBsZXQgY291bnQgPSAyOyBcbiAgICBsZXQgcmVzdWx0czogSlNYLkVsZW1lbnRbXSAgPSBbXTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGF0YS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgbGV0IHRhZ3MgPSBcIlwiXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0udGFncy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdGFncyArPSBkYXRhW2luZGV4XS50YWdzW2ldICsgXCIgXCI7IFxuICAgICAgICB9XG4gICAgICAgIHJlc3VsdHMucHVzaChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgZmlsdGVyYWJsZSBhbGwgJHt0YWdzfWB9IGlkPXtgd2lraS10cm91YmxlLSR7Y291bnR9YH0+XG4gICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIHRpdGxlPXtkYXRhW2luZGV4XS50aXRsZX0gaWQ9e2B3aWtpLXRyb3VibGUtJHtjb3VudH0tY29sbGFwc2libGVgfT5cbiAgICAgICAgICAgICAgICAgICAge2RhdGFbaW5kZXhdLnRleHR9XG4gICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRXhhbXBsZVwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtkYXRhW2luZGV4XS5leGFtcGxlY2hpbGRyZW59XG4gICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiU29sdXRpb25cIi8+XG4gICAgICAgICAgICAgICAgICAgIHtkYXRhW2luZGV4XS5zb2x1dGlvbmNoaWxkcmVufVxuICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKVxuICAgICAgICBjb3VudCArKzsgXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRzOyBcbn1cblxuIiwgImV4cG9ydCBmdW5jdGlvbiBDb2RlKHtjaGlsZHJlbn06e2NoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9ICl7XG5cbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29kZXNuaXBwZXRcIj5cbiAgICAgICAgICAgIDxjb2RlPlxuICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvY29kZT5cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufSIsICJpbXBvcnQgeyBDb2RlIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQ29kZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyb3VibGVzaG9vdHtcbiAgICB0YWdzOiBBcnJheTxTZWFyY2hjcml0ZXJpYT47IFxuICAgIHRpdGxlOiBzdHJpbmc7IFxuICAgIGV4YW1wbGVjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlOyBcbiAgICBzb2x1dGlvbmNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7IFxuICAgIHRleHQ/OiBSZWFjdC5SZWFjdE5vZGU7IFxufVxuXG50eXBlIFNlYXJjaGNyaXRlcmlhID0gXCJodG1sXCIgfCBcInNjcmlwdFwiIHwgXCJjc3NcIiB8IFwicmVhY3RcIiAgfCBcInR5cGVcIiB8IFwicHJvcGVydGllc1wiIHwgXCJwaXBlbGluZVwiIHwgXCJtb2R1bGVcIiB8IFwiYnJvd3NlclwiIHwgXCJjb25zb2xlXCIgfFwib3ZlcmxvYWRcIiA7IFxuXG5leHBvcnQgY29uc3QgdHJvdWJsZWRhdGE6IEFycmF5PFRyb3VibGVzaG9vdD4gPSBbXG4gICAge1xuICAgICAgICB0YWdzOiBbXCJyZWFjdFwiLCBcInR5cGVcIl0sXG4gICAgICAgIHRpdGxlOiBcIlR5cGUgWCBpcyBub3QgYXNzaWduYWJsZSB0byB0eXBlIFkuXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcInBpcGVsaW5lXCJdLFxuICAgICAgICB0aXRsZTogXCJUaGUgcGlwZWxpbmUgcGFzc2VkIGJ1dCB0aGUgV2lraSBpcyBub3QgdmlzaWJsZSB1bmRlciB0aGUgdXJsXCIsXG4gICAgICAgIHRleHQ6IDw+PHA+VGhpcyBlcnJvciBjb3VsZCBiZSBhIHJlc3VsdCBvZiBhIHdyb25nIGJhc2UgdXJsIGluIHRoZSB2aXRlLmNvbmZpZy5qcyBmaWxlLjwvcD5cbiAgICAgICAgPHA+RS5nLiBpZiB5b3Ugc3dpdGNoZWQgZnJvbSBwbGFpbiBIVE1MIHRvIHRoZSByZWFjdCBmcmFtZXdvcmsuIDwvcD48Lz4sXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Q29kZT5cbiAgICAgICAgPHA+cmV0dXJuIGRlZmluZUNvbmZpZygmIzEyMzs8L3A+XG4gICAgICAgIDxwPmJhc2U6IGAvYCw8L3A+XG4gICAgICAgIDxwPi4uLjwvcD5cbiAgICAgIDwvQ29kZT48Lz4sXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PHA+Q2hhbmdlIHRoZSBiYXNlIHVybCB0byByZWZsZWN0IHRoZSBjb3JyZWN0IHRlYW0gdXJsLjwvcD5cbiAgICAgICAgPENvZGU+XG4gICAgICAgICAgPHA+cmV0dXJuIGRlZmluZUNvbmZpZygmIzEyMzs8L3A+XG4gICAgICAgICAgPHA+YmFzZTogYC8kJiMxMjM7c3RyaW5nVG9TbHVnKGVudi5WSVRFX1RFQU1fTkFNRSkmIzEyNTsvYCw8L3A+XG4gICAgICAgICAgPHA+Li4uPC9wPlxuICAgICAgICA8L0NvZGU+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcImNvbnNvbGVcIl0sXG4gICAgICAgIHRpdGxlOiBcIk5TX0VSUk9SX0NPUlJVUFRFRF9DT05URU5UIGVycm9yIGluIGNvbnNvbGVcIixcbiAgICAgICAgdGV4dDogPD48cD4gJnJhcnI7IFNlZSBhbHNvIFwiVGhlIHBpcGVsaW5lIHBhc3NlZCBidXQgdGhlIFdpa2kgaXMgbm90IHZpc2libGUgdW5kZXIgdGhlIHVybFwiIGFzIHRoZXNlIGVycm9ycyBjYW4gYmUgY29ubmVjdGVkLjwvcD5cbiAgICAgICAgPHA+IFRoaXMgZXJyb3IgZm9yIGNzcyBhbmQganMgZmlsZXMgY2FuIGJlIHRoZSByZXN1bHQgb2Ygd3JvbmcgPGI+cm9sbHVwT3B0aW9uczwvYj4gaW4gZm9yIHRoZSBidWlsZCwgdG8gYmUgc3BlY2lmaWMgd3JvbmcgPGI+b3V0cHV0PC9iPiBhbmQgPGI+YXNzZXRGaWxlTmFtZXM8L2I+IG9wdGlvbnMgYW5kIHBvc3NpYmx5IHdyb25nL2VtcHR5IDxiPmNzczwvYj4gb3B0aW9ucyBpbiB5b3VyIHZpdGUuY29uZmlnLmpzLiA8L3A+XG4gICAgICAgIDwvPixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjxwPkluIG91ciBjYXNlLCB3ZSBoYWQgdGhlIGZvbGxvd2luZyBjb2RlIG9uIG91ciB2aXRlLmNvbmZpZy5qczwvcD5cbiAgICAgICAgPENvZGU+XG4gICAgICAgIDxwPmJ1aWxkOiAmIzEyMzsgPC9wPlxuICAgICAgPHA+b3V0RGlyOiBcImRpc3RcIiw8L3A+XG4gICAgICA8cD5yb2xsdXBPcHRpb25zOiAmIzEyMzs8L3A+XG4gICAgICAgIDxwPm91dHB1dDogJiMxMjM7PC9wPlxuICAgICAgICAgIDxwPiBhc3NldEZpbGVOYW1lczogYGFzc2V0cy9bZXh0XS9bbmFtZV0tW2hhc2hdLltleHRdYDwvcD5cbiAgICAgICAgPHA+JiMxMjU7ICYjMTI1OyAmIzEyNTsgLCA8L3A+XG4gICAgICAgIDwvQ29kZT5cbiAgICAgICAgPHA+IE91ciA8Yj5jc3M8L2I+IG9wdGlvbnMgd2VyZSBlbXB0eSwgd2hpY2ggY291bGQgYWxzbyBoYXZlIHBsYXllZCBhIGZhY3RvciBmb3IgdGhlIGNzcyBmaWxlcy48L3A+XG4gICAgICAgIDxDb2RlPlxuICAgICAgICA8cD5jc3M6ICYjMTIzOzwvcD5cbiAgICAgIDxwPnByZXByb2Nlc3Nvck9wdGlvbnM6ICYjMTIzOzwvcD5cbiAgICAgICAgPHA+Y3NzOiAmIzEyMzs8L3A+XG4gICAgICAgICAgPHA+ICAvL2phdmFzY3JpcHRFbmFibGVkOiB0cnVlLCAvLyBFbmFibGUgSmF2YVNjcmlwdCBpbiBDU1MgKHVzZWZ1bCBmb3IgY2VydGFpbiBDU1MgcHJlcHJvY2Vzc29yIHBsdWdpbnMpPC9wPlxuICAgICAgIDxwPiAmIzEyNTsgJiMxMjU7ICYjMTI1Oyw8L3A+ICBcbiAgICAgICAgPC9Db2RlPjwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wiYnJvd3NlclwiLCBcImNvbnNvbGVcIl0sXG4gICAgICAgIHRpdGxlOiBcIkJsb2NrZWQgZHVlIHRvIE1JTUUgdHlwZSAoXHUyMDFDdGV4dC9odG1sXHUyMDFEKSBtaXNtYXRjaCAoWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZikgKEZpcmVmb3gpXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48cD4gJnJhcnI7IFNlZSBhbHNvIFwiUmVmdXNlZCB0byBhcHBseSBzdHlsZSBmcm9tICZsdDsmbHQ7Y3NzIGZpbGUmZ3Q7Jmd0OyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCd0ZXh0L2h0bWwnKSBpcyBub3QgYSBzdXBwb3J0ZWQgc3R5bGVzaGVldCBNSU1FIHR5cGUsIHN0cmljdCBNSU1FIGNoZWNraW5nIGlzIGVuYWJsZWQgKEVkZ2UpXCI8L3A+XG4gICAgICAgIDwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wiY29uc29sZVwiLCBcImJyb3dzZXJcIl0sXG4gICAgICAgIHRpdGxlOiBcIlJlZnVzZWQgdG8gYXBwbHkgc3R5bGUgZnJvbSA8PGNzcyBmaWxlPj4gYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgndGV4dC9odG1sJykgaXMgbm90IGEgc3VwcG9ydGVkIHN0eWxlc2hlZXQgTUlNRSB0eXBlLCBzdHJpY3QgTUlNRSBjaGVja2luZyBpcyBlbmFibGVkIChFZGdlKVwiLFxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PHA+ICZyYXJyOyBTZWUgYWxzbyBcIkJsb2NrZWQgZHVlIHRvIE1JTUUgdHlwZSAoXHUyMDFDdGV4dC9odG1sXHUyMDFEKSBtaXNtYXRjaCAoWC1Db250ZW50LVR5cGUtT3B0aW9uczogbm9zbmlmZikgKEZpcmVmb3gpXCI8L3A+IDwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5UaGlzIGVycm9yIGNvdWxkIDwvcD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJ0eXBlXCJdLFxuICAgICAgICB0aXRsZTogXCJUeXBlICd1bmRlZmluZWQnIGNhbm5vdCBiZSB1c2VkIGFzIGFuIGluZGV4IHR5cGVcIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJvdmVybG9hZFwiXSxcbiAgICAgICAgdGl0bGU6IFwiTm8gb3ZlcmxvYWQgbWF0Y2hlcyB0aGlzIGNhbGwuXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwibW9kdWxlXCJdLFxuICAgICAgICB0aXRsZTogXCJNb2R1bGUgWiBoYXMgYWxyZWFkeSBleHBvcnRlZCBhIG1lbWJlciBuYW1lZCBBLiBDb25zaWRlciBleHBsaWNpdGx5IHJlLWV4cG9ydGluZyB0byByZXNvbHZlIHRoZSBhbWJpZ3VpdHkuXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD5pbmRleC50c3g6IFxuICAgICAgICA8cCBjbGFzc05hbWU9XCJwcm9ibGVtLWVycm9yXCI+IE1vZHVsZSBcIi4vQmZoLnRzeFwiIGhhcyBhbHJlYWR5IGV4cG9ydGVkIGEgbWVtYmVyIG5hbWVkICdMYWJUYWJzJy4gQ29uc2lkZXIgZXhwbGljaXRseSByZS1leHBvcnRpbmcgdG8gcmVzb2x2ZSB0aGUgYW1iaWd1aXR5LjwvcD5cbiAgICAgICAgPC8+LFxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjxwPlNpbXBseSByZW5hbWUgdGhlIGZ1bmN0aW9uIGluIG9uZSBvZiB0aGUgbW9kdWxlcyBvciBjb25zaWRlciBtYWtpbmcgaXQgYSBjb21wb25lbnQgaWYgeW91IHBsYW4gb24gdXNpbmcgaXQgZnJlcXVlbnRseS4gIFxuICAgICAgPC9wPjwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICB0YWdzOiBbXCJwaXBlbGluZVwiXSxcbiAgICAgICAgdGl0bGU6IFwiZXJyb3IgVFM2MTMzOiAnZXZlbnQnIGlzIGRlY2xhcmVkIGJ1dCBpdHMgdmFsdWUgaXMgbmV2ZXIgcmVhZC5cIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8Pkhvcml6b250YWxUaW1lbGluZS50c3g6IFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRlcm1pbmFsLWJveFwiPlxuICAgICAgICAgICQgeWFybiBidWlsZFxuICAgICAgICAgIDxwPnlhcm4gcnVuIHYxLjIyLjE5PC9wPlxuICAgICAgICAgIDxwPiQgdHNjICYmIHZpdGUgYnVpbGQ8L3A+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGVybWluYWwtZXJyb3JcIj5zcmMvY29tcG9uZW50cy9Ib3Jpem9udGFsVGltZWxpbmUudHN4KDY3LDIzKTogZXJyb3IgVFM2MTMzOiAnZXZlbnQnIGlzIGRlY2xhcmVkIGJ1dCBpdHMgdmFsdWUgaXMgbmV2ZXIgcmVhZC5cbiAgICAgICAgICBlcnJvciBDb21tYW5kIGZhaWxlZCB3aXRoIGV4aXQgY29kZSAyLjwvcD5cbiAgICAgICAgICA8cD5pbmZvIFZpc2l0IGh0dHBzOi8veWFybnBrZy5jb20vZW4vZG9jcy9jbGkvcnVuIGZvciBkb2N1bWVudGF0aW9uIGFib3V0IHRoaXMgY29tbWFuZC48L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDxwPmluPC9wPlxuICAgICAgICA8Q29kZT5cbiAgICAgICAgY29uc3Qgb3BlblBvcCA9ICAoZXZlbnQgOiBSZWFjdC5Nb3VzZUV2ZW50Jmx0O0hUTUxCdXR0b25FbGVtZW50LCBNb3VzZUV2ZW50Jmd0OykgPSZndDsge31cbiAgICAgICAgPC9Db2RlPjwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5DaGFuZ2UgdG86IDwvcD5cbiAgICAgICAgPENvZGU+XG4gICAgICAgIGNvbnN0IG9wZW5Qb3AgPSAgKF9ldmVudCA6IFJlYWN0Lk1vdXNlRXZlbnQmbHQ7SFRNTEJ1dHRvbkVsZW1lbnQsIE1vdXNlRXZlbnQmZ3Q7KSA9Jmd0OyB7fVxuICAgICAgICA8L0NvZGU+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcImh0bWxcIl0sXG4gICAgICAgIHRpdGxlOiBcIlVuZXhwZWN0ZWQgdG9rZW4uIERpZCB5b3UgbWVhbiBgeyc+J31gIG9yIGAmZ3Q7YD9cXFwiIGlkPVxcXCJ3aWtpLXRyb3VibGUtMTZcIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJ0eXBlXCJdLFxuICAgICAgICB0aXRsZTogXCJUeXBlICd4IHwgdW5kZWZpbmVkJyBpcyBub3QgYXNzaWduYWJsZSB0byB0eXBlICd4J1wiLFxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PC8+LFxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICB0YWdzOiBbXCJyZWFjdFwiLCBcInR5cGVcIiwgXCJwcm9wZXJ0aWVzXCJdLFxuICAgICAgICB0aXRsZTogXCJUeXBlIFggaXMgbWlzc2luZyB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgZnJvbSB0eXBlIFk6IGEsIGIsIGNcIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjxwIGNsYXNzTmFtZT1cInByb2JsZW0tZXJyb3JcIj5cbiAgICAgICAgVHlwZSAnJiMxMjM7IGRhdGU6IHN0cmluZzsgdGV4dDogc3RyaW5nOyAmIzEyNTsnIGlzIG1pc3NpbmcgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzIGZyb20gdHlwZSAnVGV4dEV2ZW50UHJvcHMnOiBtYXJrZXIsIGNhcmRcbiAgICAgICAgPC9wPlxuICAgICAgICA8cD5JbiByZWZlcmVuY2Ugb2YgdGhlIGludGVyZmFjZSBUZXh0RXZlbnRQcm9wczo8L3A+XG4gICAgICAgIDxDb2RlPlxuICAgICAgICA8cD5pbnRlcmZhY2UgVGV4dEV2ZW50UHJvcHMgJiMxMjM7IDwvcD5cbiAgICAgICAgPHA+ZGF0ZTogc3RyaW5nOyA8L3A+XG4gICAgICAgIDxwPnRleHQ6IHN0cmluZzsgPC9wPlxuICAgICAgICA8cD5tYXJrZXI6IFJlYWN0LlJlYWN0Tm9kZTsgPC9wPlxuICAgICAgICA8cD5pZDogc3RyaW5nOyA8L3A+XG4gICAgICAgIDxwPmNhcmQ6IEZ1bmN0aW9uOyA8L3A+XG4gICAgICAgICYjMTI1O1xuICAgICAgICA8L0NvZGU+XG4gICAgICAgIDxwPkZvciB0aGUgY29kZTo8L3A+XG4gICAgICAgIDxDb2RlPlxuICAgICAgICAgIDxwPiAmbHQ7VGV4dEV2ZW50IDwvcD5cbiAgICAgICAgICA8cD4gaWQ9XCIwNVwiPC9wPlxuICAgICAgICAgIDxwPiBkYXRlPVwiMTQtMDYtMjAyNFwiPC9wPlxuICAgICAgICAgIDxwPiB0ZXh0PVwiVGVzdCB0ZXN0XCI8L3A+XG4gICAgICAgICAgPHA+IC8mZ3Q7PC9wPlxuICAgICAgICA8L0NvZGU+PC8+LFxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PlxuICAgICAgICA8aDY+U29sdXRpb25zPC9oNj5cbiAgICAgICAgPHA+T25lIHNvbHV0aW9uIGNvdWxkIGJlIGdldHRpbmcgcmlkIG9mIHRoZSBwcm9wZXJ0aWVzIHlvdSBkbyBub3QgbmVlZCBldmVyeXdoZXJlIGFuZCBjcmVhdGUgbmV3IHByb3BlcnR5IGludGVyZmFjZXMgZm9yIGFsbCBjYXNlcy48L3A+XG4gICAgICAgIDxwPklmIHlvdSB3YW50IHRvIHN0aWNrIHRvIG1vcmUgZ2VuZXJhbCBJbnRlcmZhY2VzLCB5b3UgY2FuIG1ha2UgcHJvcGVydGllcyBvcHRpb25hbDo8L3A+XG4gICAgICAgIDxDb2RlPlxuICAgICAgICA8cD5pbnRlcmZhY2UgVGV4dEV2ZW50UHJvcHMgJiMxMjM7IDwvcD5cbiAgICAgICAgPHA+ZGF0ZTogc3RyaW5nOyA8L3A+XG4gICAgICAgIDxwPnRleHQ6IHN0cmluZzsgPC9wPlxuICAgICAgICA8cD5tYXJrZXI/OiBSZWFjdC5SZWFjdE5vZGU7IDwvcD5cbiAgICAgICAgPHA+aWQ6IHN0cmluZzsgPC9wPlxuICAgICAgICA8cD5jYXJkPzogRnVuY3Rpb247IDwvcD5cbiAgICAgICAgJiMxMjU7XG4gICAgICAgIDwvQ29kZT5cbiAgICAgICAgPHA+UmVtZW1iZXIgdGhhdCB0aGlzIGNhbiBsZWFkIHRvIGRpZmZlcmVudCByZXR1cm4gY2FzZXMgZm9yIHlvdXIgZnVuY3Rpb25zLjwvcD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJ0eXBlXCIsIFwicHJvcGVydGllc1wiXSxcbiAgICAgICAgdGl0bGU6IFwiUHJvcGVydHkgeCBkb2VzIG5vdCBleGlzdCBvbiB0eXBlIFkuXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwidHlwZVwiLCBcInByb3BlcnRpZXNcIl0sXG4gICAgICAgIHRpdGxlOiBcIlByb3BlcnR5IHggaXMgbWlzc2luZyBpbiB0eXBlIHkgYnV0IHJlcXVpcmVkIGluIHR5cGUgei5cIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjxwIGNsYXNzTmFtZT1cInByb2JsZW0tZXJyb3JcIj4gQXJndW1lbnQgb2YgdHlwZSAnJiMxMjM7IFt4OiBzdHJpbmddOiBhbnk7ICYjMTI1OycgaXMgbm90IGFzc2lnbmFibGUgdG8gcGFyYW1ldGVyIG9mIHR5cGUgJyYjMTIzOyBjbGFzc05hbWVzOiBzdHJpbmdbXTsgJiMxMjU7Jy5cbiAgICAgICAgUHJvcGVydHkgJ2NsYXNzTmFtZXMnIGlzIG1pc3NpbmcgaW4gdHlwZSAnJiMxMjM7IFt4OiBzdHJpbmddOiBhbnk7ICYjMTI1OycgYnV0IHJlcXVpcmVkIGluIHR5cGUgJyYjMTIzOyBjbGFzc05hbWVzOiBzdHJpbmdbXTsgJiMxMjU7Jy48L3A+XG4gICAgICAgIDxwPiBmb3IgPC9wPlxuICAgICAgICA8Q29kZT5jbGFzc05hbWU9JiMxMjM7am9pbkNsYXNzTmFtZXMoJiMxMjM7WyYjMzk7dGV4dC1ldmVudCYjMzk7LCBjbGFzc05hbWVdJiMxMjU7KSYjMTI1OyA8L0NvZGU+XG4gICAgICAgIDwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5JbiB0aGlzIGV4YW1wbGUsIHRoZSBwcm9ibGVtIHdhcyB0aGF0IHRoZSBwcm9wZXJ0eSBcImNsYXNzTmFtZXNcIiB3YXMgbm90IGV4cGxpY2l0bHkgbmFtZWQuPC9wPlxuICAgICAgICA8cD5DaGFuZ2luZyBpdCB0byA8L3A+XG4gICAgICAgICAgPENvZGU+Y2xhc3NOYW1lPSYjMTIzO2pvaW5DbGFzc05hbWVzKCYjMTIzOzxiPmNsYXNzTmFtZXM6PC9iPlsmIzM5O3RleHQtZXZlbnQgJiMzOTssIGNsYXNzTmFtZV0mIzEyNTspJiMxMjU7PC9Db2RlPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wiY3NzXCJdLFxuICAgICAgICB0aXRsZTogXCJJIGFkZGVkIGNzcyBzdHlsZXMgYnV0IHRoZXkgZG8gbm90IHNob3dcIixcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjxwPlRoZSBjb2xvciBpcyBub3Qgc2hvd2luZyBvbiBob3Zlci48L3A+XG4gICAgICAgIDxDb2RlPi5uYXYtbGluazpob3ZlciAmIzEyMztcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZGFya3B1cnBsZSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teWVsbG93KSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAmIzEyNTs8L0NvZGU+PC8+LFxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjxwPlN0eWxlcyBub3Qgc2hvd2luZyBpcyBvZnRlbiBhIGNhc2Ugb2YgYSBkaWZmZXJlbnQgc3R5bGUgb3ZlcnJpZGluZyB5b3VyIHN0eWxlLiBTb21lIHN0eWxlcyBhcmUgcHJlIGRlZmluZWQgYnkgYm9vdHN0cmFwIG9yIG90aGVyIHBhY2thZ2VzIHlvdSBtYXkgdXNlLiA8L3A+XG4gICAgICAgIDxwPiBJZiBhbiBleHRlcm5hbCBwYWNrYWdlIGlzIG92ZXJyaWRpbmcgeW91ciBzdHlsZSwgeW91IG5lZWQgdG8gYWRkIHRoZSA8Yj4haW1wb3J0YW50PC9iPiB0YWcgdG8geW91ciBzdHlsZS4gPC9wPlxuICAgICAgICA8cD4gSWYgb25lIG9mIHlvdXIgb3duIHN0eWxlcyBpcyBvdmVycmlkaW5nIHRoZSBuZXcgc3R5bGUsIHlvdSBjYW4gY2hhbmdlIHlvdXIgb2xkIHN0eWxlIG9yIGRlZmluZSBhIG5ldywgbW9yZSBzcGVjaWZpYyBzdHlsZSBjYXNlLiBFLmcuIGJ5IHVzaW5nIGEgbW9yZSBzcGVjaWZpYyBjc3MgcGF0aC4gQnV0IHlvdSBtYXkgc3RpbGwgbmVlZCB0byBhZGQgdGhlIDxiPiFpbXBvcnRhbnQ8L2I+IHRhZy4gPC9wPlxuICAgICAgICA8Q29kZT4gLm5hdi1saW5rOmhvdmVyICYjMTIzO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrcHVycGxlKSA8Yj4haW1wb3J0YW50PC9iPjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15ZWxsb3cpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICYjMTI1O1xuICAgICAgICAgIDwvQ29kZT48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdGFnczogW1wiY3NzXCIsIFwic2NyaXB0XCJdLFxuICAgICAgICB0aXRsZTogXCIoc3VidGFic1tpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFxcXCJ4XFxcIjsgaXMgbm90IHdvcmtpbmcuXCIsXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwic2NyaXB0XCJdLFxuICAgICAgICB0aXRsZTogXCJQcm9wZXJ0eSAnc3R5bGUnIGRvZXMgbm90IGV4aXN0IG9uIHR5cGUgJ0VsZW1lbnQnLlwiLFxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+XG4gICAgICAgIDxwIGNsYXNzTmFtZT1cInByb2JsZW0tZXJyb3JcIj5cbiAgICAgICAgICAgIFByb3BlcnR5ICdzdHlsZScgZG9lcyBub3QgZXhpc3Qgb24gdHlwZSAnRWxlbWVudCcuXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHA+Zm9yIHRoZSBDb2RlOiA8L3A+XG4gICAgICAgIDxDb2RlPlxuICAgICAgICBjb25zdCBzdWJ0YWJzICYjeDNEOyBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCZxdW90O3NpZGVzdWJ0YWImcXVvdDspO1xuXG4gICAgICAgIGZvciAobGV0IGkgJiN4M0Q7IDA7IGkgJmx0OyBzdWJ0YWJzLmxlbmd0aDsgaSsrKSAmIzEyMztcbiAgICAgICAgICAgIChzdWJ0YWJzW2ldKS5zdHlsZS5kaXNwbGF5ICYjeDNEOyAmcXVvdDtub25lJnF1b3Q7O1xuICAgICAgICAgICAgY29uc29sZS5sb2coXFwmI3g2MDtIaWRpbmcgc3VidGFiOiAkJiMxMjM7c3VidGFic1tpXS5pZCYjMTI1O1xcJiN4NjA7KTtcbiAgICAgICAgICAgICYjMTI1O1xuICAgICAgICA8L0NvZGU+XG4gICAgICAgIDwvPixcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cbiAgICB9LFxuXG5cbiAgICBdIiwgIlxuaW1wb3J0IHsgV2lraVNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvRmlsdGVyXCI7XG5pbXBvcnQgeyBGaWx0ZXJhYmxlcyB9IGZyb20gXCIuL0ZpbHRlcmFibGVzXCI7XG5pbXBvcnQgeyB0cm91YmxlZGF0YSB9IGZyb20gXCIuL3Ryb3VibGUtZGF0YVwiO1xuZXhwb3J0IGZ1bmN0aW9uIFRyb3VibGVzaG9vdGluZygpe1xuICBsZXQgaXRlbXMgPSBGaWx0ZXJhYmxlcyh0cm91YmxlZGF0YSlcbiAgcmV0dXJuKFxuICAgIDxkaXY+XG4gICAgICBQbGVhc2Ugc2VsZWN0IHdoYXQgeW91IHdhbnQgdG8gdHJvdWJsZXNob290IGZvci4gXG4gICAgICA8V2lraVNlbGVjdG9yPjwvV2lraVNlbGVjdG9yPlxuICAgICAgPGRpdiBpZD1cIm5vbm9cIiBjbGFzc05hbWU9XCJub3Nob3dcIj5cbiAgICAgICAgVGhpcyBjb21iaW5hdGlvbiByZXR1cm5zIG5vIGluc3RhbmNlcy4gXG4gICAgICA8L2Rpdj5cbiAgICAgIHtpdGVtc31cblxuXG5cblxuXG5cblxuXG5cbiAgICA8L2Rpdj5cbiAgKVxufSBcbiIsICJcbmV4cG9ydCBmdW5jdGlvbiBXaWtpT3ZlcnZpZXcoKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8cD5UbyBoZWxwIHRlYW1zIGdldCBzdGFydGVkLCB3ZSB3cm90ZSBkb3duIHdoYXQgd2Ugd2lzaGVkIHdlIHdvdWxkIGhhdmUgZWFzaWx5IGZvdW5kIHdoaWxlIGJ1aWxkaW5nIG91ciB3aWtpIHdpdGggUmVhY3QuPC9wPlxuICAgICAgICAgICAgICAgIDxwPjxiPkdldHRpbmcgc3RhcnRldDwvYj4gZXhwbGFpbnMgc29tZSBiYXNpY3MgdGhhdCBhcmUgaW1wb3J0YW50IHRvIGtub3cuIFRoaXMgZXNwZWNpYWxseSBjb25jZXJucyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB1c2luZyBwbGFpbiBIVE1MIGFuZCBSZWFjdCwgYnV0IHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIHdpa2ksIHRvby4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPjxiPlRyb3VibGVzaG9vdGluZzwvYj4gaXMgYW4gaXRlcmFjdGl2ZSBzZWFyY2ggZm9yIHByb2JsZW1zIHRoYXQgbWF5IGFyaXNlIGFuZCBob3cgd2Ugc29sdmVkIHRoZW0uICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+PGI+Q29tcG9uZW50czwvYj4gY29udGFpbnMgc29tZSBjb21wb25lbnRzIHdlIHVzZWQgdGhhdCB3ZSBmb3VuZCB2ZXJ5IGhlbHBmdWwuIE1hbnkgcGFja2FnZXMgdGhhdCBvZmZlciBjb21wb25lbnRzIHN1Y2ggYXMgdGltZWxpbmVzIHdlcmUgbm90IGV4YWN0bHkgd2hhdCB3ZSB3ZXJlIGxvb2tpbmcgZm9yIG9yIGRpZCBub3Qgd29yayB3aXRoIG91ciBwYWNrYWdlcy4gVGhlIHNvbHV0aW9uIHdhcyB0byBjcmVhdGUgb3VyIG93biBjb21wb25lbnRzLiA8L3A+XG4gICAgICAgICAgICAgICAgPHA+PGI+RG93bmxvYWRzPC9iPiBjb250YWlucyBzdmdzIHdlIGNyZWF0ZWQgLSBub3QgYWxsIG9mIHRoZW0gd2Ugd2VyZSBhYmxlIHRvIHVzZS4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPjxiPlJlc291cmNlczwvYj4gY29udGFpbnMgbGlua3MgenUgaGVscGZ1bCBleHRlcm5hbC4gPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICApXG59IiwgImltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgV2lraVRhYnMgfSBmcm9tIFwiLi93aWtpLXRhYnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIFdpa2kgICgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJXaWtpIERldmVsb3BlbWVudFwiIGlkPVwiT3VyIENvbnRyaWJ1dGlvbnMzXCI+XG4gICAgICAgICAgICA8V2lraVRhYnM+PC9XaWtpVGFicz4gXG4gICAgICAgICA8L1NlY3Rpb24+XG4gICAgKTtcbiAgfVxuICAiLCAiaW1wb3J0IHsgR3VpZGVQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XG5pbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xuaW1wb3J0IHsgTWVldFVQIH0gZnJvbSBcIi4vQkZIL2JmaFwiO1xuaW1wb3J0IHsgQ29sbGFiQ29udHJpYnV0aW9uIH0gZnJvbSBcIi4vY29sbGFic1wiO1xuaW1wb3J0IHsgU2FmZXR5Q29udHJpYnV0aW9uIH0gZnJvbSBcIi4vc2FmZXR5LWNvbnRyaWJ1dGlvblwiO1xuaW1wb3J0IHsgV2lraSB9IGZyb20gXCIuL1dpa2kvd2lraVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gQ29udHJpYnV0aW9uKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQWJzdHJhY3RcIiBpZD1cIkFic3RyYWN0XCI+XG4gICAgICAgIDxwPlRoZSBCRkggRXVyb3BlYW4gTWVldC1VcCBzaG93Y2FzZWQgc2lnbmlmaWNhbnQgY29udHJpYnV0aW9ucyB0byB0aGUgaUdFTSBjb21tdW5pdHkgdGhyb3VnaCBleHRlbnNpdmUgY29sbGFib3JhdGlvbnMgYW5kIGlubm92YXRpdmUgYWR2YW5jZW1lbnRzLiBPdXIga2V5IGNvbnRyaWJ1dGlvbnMgaW5jbHVkZSB0aGUgZGV2ZWxvcG1lbnQgb2YgdGhlIEJGSCBHdWlkZWxpbmUgaW4gcGFydG5lcnNoaXAgd2l0aCBpR0VNIHRlYW1zIEhhbWJ1cmcgYW5kIEZyYW5rZnVydCwgcHJvdmlkaW5nIGEgYmx1ZXByaW50IGZvciBmdXR1cmUgTWVldCBVcHMsIGFuZCBhIGNvbGxhYm9yYXRpdmUgdmlkZW8gcG9kY2FzdCB3aXRoIGlHRU0gTVx1MDBGQ25zdGVyLCBvZmZlcmluZyBpbnNpZ2h0cyBpbnRvIHRlYW0gZ3Jvd3RoLiA8L3A+XG4gICAgICAgIDxwPkFkZGl0aW9uYWxseSwgd2UgY29udHJpYnV0ZWQgdG8gdGhlIExOUCBIYW5kYm9vayB3aXRoIHRlYW1zIGZyb20gTGlua29waW5nLCBQYXRyYXMsIFJhZGJvdWQgVW5pdmVyc2l0eSwgYW5kIFRFUk1PU1otU2VseWUtSFVOLCBhZHZhbmNpbmcgbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcyBmb3IgdGhlcmFwZXV0aWMgdXNlLiA8L3A+XG4gICAgICAgIDxwPk9uIHRoZSBzY2llbnRpZmljIGZyb250LCB3ZSBkZXZlbG9wZWQgcHJhY3RpY2FsIHRvb2xzIGxpa2UgYSBjb2xsZWN0aW9uIG9mIG9wdGltaXplZCBwcm90b2NvbHMsIHRoZSBQcmVDTCByZXBvcnRlciBzeXN0ZW0gZm9yIFByaW1lIEVkaXRpbmcsIGFuZCB0aGUgaW5ub3ZhdGl2ZSBQcmltZUd1aWRlIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neSwgZW5oYW5jaW5nIHJlc2VhcmNoIGVmZmljaWVuY3kgYW5kIHByZWNpc2lvbi4gT3VyIEFpckJ1ZGR5IGxpcGlkIG5hbm9wYXJ0aWNsZSBzeXN0ZW0gcmVwcmVzZW50cyBhIGJyZWFrdGhyb3VnaCBpbiBnZW5lIHRoZXJhcHksIG9mZmVyaW5nIGEgc2FmZXIgYW5kIG1vcmUgZWZmZWN0aXZlIG1ldGhvZCBmb3IgbHVuZy1zcGVjaWZpYyBSTkEgYW5kIEROQSBkZWxpdmVyeS4gVGhlc2UgY29sbGFib3JhdGlvbnMgYW5kIGlubm92YXRpb25zIHdpbGwgaGF2ZSBhIGxhc3RpbmcgaW1wYWN0LCBzdXBwb3J0aW5nIGZ1dHVyZSBpR0VNIHRlYW1zIGFuZCBkcml2aW5nIGZvcndhcmQgc3ludGhldGljIGJpb2xvZ3kgcmVzZWFyY2guIDwvcD5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIDxNZWV0VVAvPlxuXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBDb2xsYWJvcmF0aW9uc1wiIGlkPVwiT3VyIENvbGxhYm9yYXRpb25zXCI+XG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiR3VpZGVsaW5lXCIgaWQ9XCJPdXIgQ29sbGFib3JhdGlvbnMxXCI+XG4gICAgICAgICAgICA8R3VpZGVQREYvPlxuICAgICAgICA8L1N1YmVzY3Rpb24+IFxuICAgICAgICA8Q29sbGFiQ29udHJpYnV0aW9uLz5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIFxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJPdXIgQ29udHJpYnV0aW9uc1wiIGlkPVwiT3VyIENvbnRyaWJ1dGlvbnNcIj5cbiAgICAgICAgICA8U2FmZXR5Q29udHJpYnV0aW9uLz5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlBhcnRzXCIgaWQ9XCJPdXIgQ29udHJpYnV0aW9uczJcIj5cbiAgICAgICAgICAgICAgLi4uXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIDxXaWtpLz5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiQ29uY2x1c2lvblwiPlxuICAgICAgICA8cD5UaHJvdWdob3V0IHRoZSBCRkggRXVyb3BlYW4gTWVldC1VcCwgd2UgYWN0aXZlbHkgZW5nYWdlZCBpbiBtZWFuaW5nZnVsIGNvbGxhYm9yYXRpb25zIGFuZCBtYWRlIHNpZ25pZmljYW50IGNvbnRyaWJ1dGlvbnMgdG8gdGhlIGlHRU0gY29tbXVuaXR5LiBJbiBwYXJ0bmVyc2hpcCB3aXRoIGlHRU0gdGVhbXMgSGFtYnVyZyBhbmQgRnJhbmtmdXJ0LCB3ZSBkZXZlbG9wZWQgdGhlIEJGSCBHdWlkZWxpbmUsIGEgY29tcHJlaGVuc2l2ZSByZXNvdXJjZSBkZXNpZ25lZCB0byBoZWxwIGZ1dHVyZSB0ZWFtcyBzdWNjZXNzZnVsbHkgb3JnYW5pemUgTWVldCBVcHMuIE91ciBjb2xsYWJvcmF0aW9uIHdpdGggaUdFTSBNXHUwMEZDbnN0ZXIgcmVzdWx0ZWQgaW4gYSB2aWRlbyBwb2RjYXN0IHRoYXQgcmVmbGVjdHMgb24gdGhlIGdyb3d0aCBhbmQgcHJvZ3Jlc3Mgb2YgcGFydGljaXBhdGluZyB0ZWFtcywgcHJvdmlkaW5nIHZhbHVhYmxlIGluc2lnaHRzIGZvciBmdXR1cmUgY29tcGV0aXRpb25zLiAgPC9wPlxuICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIHdvcmtlZCBhbG9uZ3NpZGUgdGVhbXMgZnJvbSBMaW5rb3BpbmcsIFBhdHJhcywgUmFkYm91ZCBVbml2ZXJzaXR5LCBhbmQgVEVSTU9TWi1TZWx5ZS1IVU4gdG8gY29udHJpYnV0ZSB0byB0aGUgTE5QIEhhbmRib29rLCBhZHZhbmNpbmcga25vd2xlZGdlIGluIGxpcGlkLWJhc2VkIGRlbGl2ZXJ5IHN5c3RlbXMgZm9yIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucy4gIDwvcD5cbiAgICAgICAgPHA+T24gdGhlIHNjaWVudGlmaWMgZnJvbnQsIHdlIGNyZWF0ZWQgYSBjb2xsZWN0aW9uIG9mIHByb3RvY29scywgdGhlIFByZUNMIHJlcG9ydGVyIHN5c3RlbSwgYW5kIHRoZSBpbm5vdmF0aXZlIFByaW1lR3VpZGUgUHJpbWUgRWRpdGluZyB0ZWNobm9sb2d5LCBhbGwgb2Ygd2hpY2ggYWltIHRvIGVuaGFuY2UgcmVzZWFyY2ggZWZmaWNpZW5jeSBhbmQgcHJlY2lzaW9uLiBPdXIgQWlyQnVkZHkgbmFub3BhcnRpY2xlIHN5c3RlbSBmb3IgbHVuZy1zcGVjaWZpYyBkZWxpdmVyeSBmdXJ0aGVyIGV4ZW1wbGlmaWVzIG91ciBjb21taXRtZW50IHRvIGFkdmFuY2luZyBnZW5lIHRoZXJhcHkgc29sdXRpb25zLiBUaGVzZSBjb2xsYWJvcmF0aW9ucyBhbmQgY29udHJpYnV0aW9ucyBub3Qgb25seSBlbnJpY2hlZCB0aGUgZXZlbnQgYnV0IHdpbGwgY29udGludWUgdG8gaGF2ZSBhIGxhc3RpbmcgaW1wYWN0IG9uIGZ1dHVyZSBpR0VNIHRlYW1zIGFuZCBzeW50aGV0aWMgYmlvbG9neSByZXNlYXJjaC4gPC9wPlxuICAgICAgPC9TZWN0aW9uPlxuXG4gICAgICBcblxuICAgIFxuICAgICAgXG4gICAgPC8+XG4gICk7XG59XG5cblxuXG5cblxuXG5cblxuXG5cbiIsICJcblxuZXhwb3J0IGZ1bmN0aW9uIEJ1bGJCb3goe3RpdGxlLCBjaGlsZHJlbn06e3RpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcbiAgICByZXR1cm4oXG4gICAgICAgIDxhc2lkZSBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lciB0aXBcIj5cbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lci10aXRsZVwiPlxuICAgICAgICAgICAge3RpdGxlfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInYtY2FyZC10ZXh0XCI+XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYXNpZGU+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gUWFCb3goe3EsIGF9OntxOiBzdHJpbmcsIGE6IFJlYWN0LlJlYWN0Tm9kZX0pe1xuICByZXR1cm4oXG4gICAgIDxkaXYgY2xhc3NOYW1lPVwicWFib3hcIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicXVlc3Rpb24tYnViYmxlXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIHtxfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJxdWVzdGlvbi1idWJibGVcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAge2F9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgIDwvZGl2PlxuICApXG59XG5leHBvcnQgZnVuY3Rpb24gU3BlY2lhbFFhQm94KHtxLCBjaGlsZHJlbn06e3E6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xuICByZXR1cm4oXG4gICAgIDxkaXYgY2xhc3NOYW1lPVwicWFib3hcIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicXVlc3Rpb24tYnViYmxlXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIHtxfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJxdWVzdGlvbi1idWJibGVcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICA8L2Rpdj5cbiAgKVxufVxuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIEluZm9Cb3goe3RpdGxlLCBjaGlsZHJlbiwgaWR9Ont0aXRsZTogc3RyaW5nLCBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlLCBpZDogc3RyaW5nfSl7XG4gICAgcmV0dXJuKFxuICAgICAgICA8YXNpZGUgY2xhc3NOYW1lPVwiaGludC1jb250YWluZXIgaW5mb1wiIGlkPXtpZH0+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwiaGludC1jb250YWluZXItdGl0bGVcIj5cbiAgICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ2LWNhcmQtdGV4dFwiPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9hc2lkZT5cbiAgICApXG59XG5leHBvcnQgZnVuY3Rpb24gV2FybkJveCh7dGl0bGUsIGNoaWxkcmVufTp7dGl0bGU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xuICAgIHJldHVybihcbiAgICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIHdhcm5pbmdcIj5cbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lci10aXRsZVwiPlxuICAgICAgICAgICAge3RpdGxlfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInYtY2FyZC10ZXh0XCI+XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYXNpZGU+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQmx1ZUluZm9Cb3goe3RpdGxlLCBjaGlsZHJlbn06e3RpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcbiAgcmV0dXJuKFxuICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIGRhbmdlclwiPlxuICAgICAgICA8cCBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lci10aXRsZVwiPlxuICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInYtY2FyZC10ZXh0XCI+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9hc2lkZT5cbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gTm90ZUJveCh7dGl0bGUsIGNoaWxkcmVuLCBpZH06e3RpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUsIGlkOiBzdHJpbmd9KXtcbiAgcmV0dXJuKFxuICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIG5vdGVcIiBpZD17aWR9PlxuICAgICAgICA8cCBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lci10aXRsZVwiPlxuICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInYtY2FyZC10ZXh0XCI+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9hc2lkZT5cbiAgKVxufSIsICIvLyBUaGUgbWFpbiB0YWIgaGFzIHRvIGJlIGdpdmVuIGRpc3BsYXk6IGJsb2NrOyB2aWEgaWQgY3NzIG9yIGJlIGdpdmVuIHRoZSBpZCBcIkZpcnN0XCJcbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25Sb3dUYWJzKHtkYXRhLCBjbGF9OiB7ZGF0YTogQXJyYXk8VGFiRGF0ZW5zYXR6PiwgY2xhOiBzdHJpbmd9KSB7XG4gICAgbGV0IHJvd3M6IEpTWC5FbGVtZW50W10gID0gW11cbiAgICBmb3IgKCBsZXQgaSA9IDA7ICBpIDwgZGF0YS5sZW5ndGg7IGkrKyApe1xuICAgICAgaWYoZGF0YVtpXS5tYWluID09IHRydWUpe1xuICAgICAgICByb3dzLnB1c2goPGRpdiBpZD17ZGF0YVtpXS5jc3NuYW1lfSBjbGFzc05hbWU9e2NsYX0gc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cbiAgICAgICAgICB7ZGF0YVtpXS5ub2RlfVxuICAgICAgICA8L2Rpdj4pXG4gICAgICB9XG4gICAgICBlbHNle1xuICAgICAgICByb3dzLnB1c2goPGRpdiBpZD17ZGF0YVtpXS5jc3NuYW1lfSBjbGFzc05hbWU9e2NsYX0gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgIHtkYXRhW2ldLm5vZGV9XG4gICAgICAgIDwvZGl2PilcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJvd3M7IFxuICB9XG4gIFxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi9RdW90ZXNcIjtcbmltcG9ydCB7IFRpbWVsaW5lRGF0ZW5wdW5rdCB9IGZyb20gXCIuLi9kYXRhL2hwdGltZWxpbmVkYXRhXCI7XG5pbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IHN0cmluZ1RvU2x1ZyB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG4vKiBpbXBvcnQgeyBzdHJpbmdUb1NsdWcgfSBmcm9tIFwiLi4vdXRpbHNcIjsgKi9cbiAgXG4gIGV4cG9ydCBmdW5jdGlvbiBCRkhTdHlsZVRhYnMoe2RhdGEsIGNsYX06IHtkYXRhOiBBcnJheTxUaW1lbGluZURhdGVucHVua3Q+LCBjbGE6IHN0cmluZ30pIHtcbiAgICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxuICAgIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XG4gICAgICB2YXIgcHJvYmxlbTogQm9vbGVhbiA9IGZhbHNlOyBcbiAgICAgIHZhciBwcm9ibGVtX2Rlc2M6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgICAgIC8qIExhbmd1YWdlICovXG4gICAgICB2YXIgbGFuZzsgXG4gICAgICBpZihkYXRhW2ldLmxhbmd1YWdlID09PSBcImVuXCIpe1xuICAgICAgICBsYW5nID0gXCJPcmlnaW5hbCBsYW5ndWFnZTogRW5nbGlzaFwiXG4gICAgICB9XG4gICAgICBlbHNlIGlmKGRhdGFbaV0ubGFuZ3VhZ2UgPT09IFwiZGVcIil7XG4gICAgICAgIGxhbmcgPSBcIk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW5cIlxuICAgICAgfVxuICAgICAgZWxzZXtcbiAgICAgICAgbGFuZyA9IFwiXCJcbiAgICAgIH1cbi8qICAgICAgIGVsc2UgaWYoZGF0YVtpXS50eXBlICE9IFwibWV0YVwiKXtcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XG4gICAgICAgIHByb2JsZW1fZGVzYy5wdXNoKFwiaW50ZXJ2aWV3IGxhbmd1YWdlXCIpOyBcbiAgICAgIH0gKi9cbiAgICAgIFxuICAgICAgLyogRXhwZXJ0IG9uICAqL1xuICAgICAgbGV0IGV4cGVydCA9IFwiXCI7IFxuICAgICAgaWYgKGRhdGFbaV0uZXhwZXJ0b24pIHtcbiAgICAgICAgZXhwZXJ0ID0gYEV4cGVydCBvbiAke2RhdGFbaV0uZXhwZXJ0b259YDsgXG4gICAgICB9XG5cbiAgICAgIC8qIEFpbS9Hb2FsICovXG4gICAgICB2YXIgZ29hbGhlYWRpbmc6IHN0cmluZyA9IFwiXCI7IFxuICAgICAgaWYoZGF0YVtpXS50eXBlID09PSBcIm1ldGFcIil7XG4gICAgICAgIGdvYWxoZWFkaW5nID0gXCJHb2Fsc1wiOyBcbiAgICAgIH1cbiAgICAgIGVsc2V7XG4gICAgICAgIGdvYWxoZWFkaW5nID0gXCJBaW0gb2YgY29udGFjdFwiXG4gICAgICB9XG5cbiAgICAgIC8qIFF1b3RhdGlvbiAqL1xuICAgICAgdmFyIHF1b3RlZDogc3RyaW5nID0gXCJcIjsgXG4gICAgICBpZihkYXRhW2ldLnF1b3RlICE9IFwiXCIpe1xuICAgICAgICBpZihkYXRhW2ldLnF1b3RlTmFjaG5hbWUgJiYgZGF0YVtpXS5xdW90ZVZvcm5hbWUpe1xuICAgICAgICAgIHF1b3RlZCA9IGRhdGFbaV0ucXVvdGVWb3JuYW1lICsgXCIgXCIgKyBkYXRhW2ldLnF1b3RlTmFjaG5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZXtcbiAgICAgICAgICBxdW90ZWQgPSBkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArIGRhdGFbaV0ubmFjaG5uYW1lOyBcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAvKiAgZWxzZXtcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XG4gICAgICAgIHByb2JsZW1fZGVzYy5wdXNoKFwicXVvdGUgbWlzc2luZ1wiKTsgXG4gICAgICB9ICovXG4gICAgICAgIGxldCBpbnZfaW1nOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcbiAgICAgICAgbGV0IGltcF9pbWc6IFJlYWN0LlJlYWN0Tm9kZSA9IDw+PC8+O1xuICAgICAgICBsZXQgYWltX2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XG4gICAgICBcbiAgICAgICAgLy8gUmVzdGxpY2hlIExvZ2lrIGRlciBTY2hsZWlmZS4uLlxuICAgICAgICAvLyBCaWxkenV3ZWlzdW5nZW4gYmFzaWVyZW5kIGF1ZiBkZW4gRGF0ZW5cbiAgICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXcpIHtcbiAgICAgICAgICAgaW52X2ltZyA9IDxkaXYgY2xhc3NOYW1lPVwiaHRpLWJveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17ZGF0YVtpXS5waWN0dXJldXJsX2ludGVydmlld30gY2xhc3NOYW1lPVwiaHAtdGltZWxpbmUtaW1nIGh0aS1yaWdodFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbikge1xuICAgICAgICAgICBpbXBfaW1nID0gPGRpdiBjbGFzc05hbWU9XCJodGktYm94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb259IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktcmlnaHRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+O1xuICAgICAgICB9XG4gICAgICAgIGlmIChkYXRhW2ldLnBpY3R1cmV1cmxfYWltKSB7XG4gICAgICAgICAgIGFpbV9pbWcgPSA8ZGl2IGNsYXNzTmFtZT1cImh0aS1ib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2RhdGFbaV0ucGljdHVyZXVybF9haW19IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktbGVmdFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj47XG4gICAgICAgIH1cbiAgICAgIC8qIHRleHRwYXJ0cyAqL1xuICAgICAgbGV0IGFpTTogSlNYLkVsZW1lbnQgPSA8PjwvPlxuICAgICAgaWYoZGF0YVtpXS5haW1vZmNvbnRhY3Qpe1xuICAgICAgICBhaU0gPSA8PlxuICAgICAgICA8aDQ+e2dvYWxoZWFkaW5nfTwvaDQ+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJocC10aW1lbGluZS1wXCI+e2RhdGFbaV0uYWltb2Zjb250YWN0fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB7YWltX2ltZ31cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8Lz5cbiAgICAgIH1cblxuICAgICAgbGV0IGluc2lnaFQ6IEpTWC5FbGVtZW50ID0gPD48Lz5cbiAgICAgIGlmKGRhdGFbaV0uaW5zaWdodHMpe1xuICAgICAgICBpbnNpZ2hUID0gPD5cbiAgICAgICAgIDxoND5JbnNpZ2h0czwvaDQ+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAge2ludl9pbWd9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLXBcIj57ZGF0YVtpXS5pbnNpZ2h0c308L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC8+XG4gICAgICB9XG4gICAgXG4gICAgICBsZXQgaW1QOiBKU1guRWxlbWVudCA9IDw+PC8+XG4gICAgaWYoZGF0YVtpXS5pbXBsZW1lbnRhdGlvbil7XG4gICAgIGltUCA9IDw+XG4gICAgIDxoND5JbXBsZW1lbnRhdGlvbjwvaDQ+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXhib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJocC10aW1lbGluZS1wXCI+e2RhdGFbaV0uaW1wbGVtZW50YXRpb259PC9wPlxuICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHtpbXBfaW1nfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgPC8+XG4gICAgfVxuXG4gICAgICBcbiAgICAgXG4gICAgIC8qICBpZihkYXRhW2ldLmFpbW9mY29udGFjdCA9PT0gXCJcIil7XG4gICAgICAgIHByb2JsZW0gPSB0cnVlO1xuICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBcIiArIGdvYWxoZWFkaW5nICsgXCIgbWlzc2luZ1wiKTsgXG4gICAgICB9XG4gICAgICBpZihkYXRhW2ldLmluc2lnaHRzID09PSBcIlwiKXtcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XG4gICAgICAgIHByb2JsZW1fZGVzYy5wdXNoKFwiIGluc2lnaHRzIG1pc3NpbmdcIik7IFxuICAgICAgfVxuICAgICAgaWYoZGF0YVtpXS5pbXBsZW1lbnRhdGlvbiA9PT0gXCJcIil7XG4gICAgICAgIHByb2JsZW0gPSB0cnVlO1xuICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBpbXBsZW1lbnRhdGlvbiBtaXNzaW5nXCIpOyBcbiAgICAgIH0gKi9cbiAgICAgIC8qIENsYXJpZmljYXRpb24gKi9cbiAgICAgIHZhciBjbGFyaTogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz5cbiAgICAgIGlmKGRhdGFbaV0uY2xhcmlmaWNhdGlvbil7XG4gICAgICAgIGNsYXJpID0gPD5cbiAgICAgICAgICAgICAgICAgIDxoND5DbGFyaWZpY2F0aW9uPC9oND5cbiAgICAgICAgICAgICAgICAgIDxwPntkYXRhW2ldLmNsYXJpZmljYXRpb259PC9wPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgfVxuICAgICAgLyogT3RoZXIgd2FybmluZ3MgKi9cbiAgICAgIGlmKGRhdGFbaV0uaW50ZXJ2aWV3dGFiaWQgPT09IFwiXCIpe1xuICAgICAgICBwcm9ibGVtID0gdHJ1ZTtcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgaW50ZXJ2aWV3dGFiaWQgbWlzc2luZ1wiKTsgXG4gICAgICB9XG4gICAgIC8qICBpZihkYXRhW2ldLmNhcmR0ZXh0ID09PSBcIlwiKXtcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XG4gICAgICAgIHByb2JsZW1fZGVzYy5wdXNoKFwiIGNhcmR0ZXh0IG1pc3NpbmdcIik7IFxuICAgICAgfSAqL1xuICAgICAgLyogaWYoZGF0YVtpXS50eXBlICE9PSBcIm1ldGFcIil7XG4gICAgICAgIGlmKGRhdGFbaV0uYWZmaWxpYXRpb24gPT09IHVuZGVmaW5lZCB8fCBkYXRhW2ldLmFmZmlsaWF0aW9uID09PSBcIlwiKXtcbiAgICAgICAgICBwcm9ibGVtID0gdHJ1ZTtcbiAgICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBhZmZpbGlhdGlvbiBtaXNzaW5nXCIpOyBcbiAgICAgICAgfVxuICAgICAgICBpZihkYXRhW2ldLmpvYiA9PT0gdW5kZWZpbmVkIHx8IGRhdGFbaV0uam9iID09PSBcIlwiKXtcbiAgICAgICAgICBwcm9ibGVtID0gdHJ1ZTtcbiAgICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBqb2IgbWlzc2luZ1wiICk7IFxuICAgICAgICB9XG4gICAgICB9ICovXG4gICAgIC8qICBpZihkYXRhW2ldLnR5cGUgPT09IFwibWV0YVwiKXtcbiAgICAgICAgaWYoZGF0YVtpXS5xdW90ZVZvcm5hbWUgPT09IHVuZGVmaW5lZCB8fCBkYXRhW2ldLnF1b3RlVm9ybmFtZSA9PT0gXCJcIil7XG4gICAgICAgICAgcHJvYmxlbSA9IHRydWU7XG4gICAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgd2hvIGlzIHRoZSBxdW90ZSBmcm9tP1wiICk7IFxuICAgICAgICB9XG4gICAgICB9ICovXG5cbiAgICAgIC8qIFJlZmVyZW5jZXMgKi9cbiAgICAgIHZhciByZWZzOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcbiAgICAgIGlmIChkYXRhW2ldLnJlZmVyZW5jZXMpIHtcbiAgICAgICAgcmVmcyA9IDw+IDxoND5SZWZlcmVuY2VzIDwvaDQ+IHtkYXRhW2ldLnJlZmVyZW5jZXN9PC8+IFxuICAgICAgfVxuICAgICAgXG4gICAgICAvKiBGdXJ0aGVyIHBpY3R1cmVzICovXG4vKiAgICAgICB2YXIgaW52X2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XG4gICAgICBpZiAoZGF0YVtpXS5waWN0dXJldXJsX2ludGVydmlldykge1xuICAgICAgICBjb25zb2xlLmluZm8oXCJiZWZvcmU6IGludl9pbWcgaXM6IFwiICsgaW52X2ltZylcbiAgICAgICAgY29uc29sZS5pbmZvKGRhdGFbaV0udm9ybmFtZSArIFwiIGhhcyBwaWN0dXJldXJsX2ludGVydmlld1wiKVxuICAgICAgICBpbnZfaW1nID0gIDw+ICA8ZGl2IGNsYXNzTmFtZT1cImh0aS1ib3hcIj4gPGltZyBpZD17YCR7ZGF0YVtpXS52b3JuYW1lfS1pbnYtaW1nYH0gc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmxfaW50ZXJ2aWV3fSBjbGFzc05hbWU9XCJocC10aW1lbGluZS1pbWcgaHRpLXJpZ2h0XCIvPiA8L2Rpdj4gPGRpdiBjbGFzc05hbWU9XCJodGktYWJzdGFuZFwiLz4gPC8+XG4gICAgICAgIGNvbnNvbGUuaW5mbyhcImFmdGVyOiBpbnZfaW1nIGlzOiBcIiArIGludl9pbWcpXG4gICAgICB9XG4gICAgICB2YXIgaW1wX2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XG4gICAgICBpZiAoZGF0YVtpXS5waWN0dXJldXJsX2ltcGxlbWVudGF0aW9uKSB7XG4gICAgICAgIGNvbnNvbGUuaW5mbyhkYXRhW2ldLnZvcm5hbWUgKyBcIiBoYXMgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvblwiKVxuICAgICAgICBjb25zb2xlLmluZm8oXCJiZWZvcmU6IGltcF9pbWcgaXM6IFwiIClcbiAgICAgICAgY29uc29sZS5pbmZvKGltcF9pbWcpXG4gICAgICAgIGltcF9pbWcgPSAgIDw+IDxkaXYgIGNsYXNzTmFtZT1cImh0aS1hYnN0YW5kXCIvPjxkaXYgY2xhc3NOYW1lPVwiaHRpLWJveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAgaWQ9e2Ake2RhdGFbaV0udm9ybmFtZX0taW1wLWltZ2B9IHNyYz17ZGF0YVtpXS5waWN0dXJldXJsX2ltcGxlbWVudGF0aW9ufSBjbGFzc05hbWU9XCJocC10aW1lbGluZS1pbWcgaHRpLXJpZ2h0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgY29uc29sZS5pbmZvKFwiYWZ0ZXI6IGltcF9pbWcgaXM6IFwiIClcbiAgICAgICAgY29uc29sZS5pbmZvKGltcF9pbWcpXG4gICAgICB9XG4gICAgICB2YXIgYWltX2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XG4gICAgICBpZiAoZGF0YVtpXS5waWN0dXJldXJsX2FpbSkge1xuICAgICAgICBjb25zb2xlLmluZm8oZGF0YVtpXS52b3JuYW1lICsgXCIgaGFzIHBpY3R1cmV1cmxfYWltXCIpXG4gICAgICAgIGNvbnNvbGUuaW5mbyhcImJlZm9yZTogYWltX2ltZyBpczogXCIgKVxuICAgICAgICBjb25zb2xlLmluZm8oYWltX2ltZylcbiAgICAgICAgYWltX2ltZyA9ICA8PiA8ZGl2IGNsYXNzTmFtZT1cImh0aS1hYnN0YW5kXCIvPiA8ZGl2IGNsYXNzTmFtZT1cImh0aS1ib3hcIj5cbiAgICAgICAgPGltZyAgaWQ9e2Ake2RhdGFbaV0udm9ybmFtZX0tYWltLWltZ2B9IHNyYz17ZGF0YVtpXS5waWN0dXJldXJsX2FpbX0gY2xhc3NOYW1lPVwiaHAtdGltZWxpbmUtaW1nIGh0aS1sZWZ0XCIvPiBcbiAgICAgICAgPC9kaXY+PC8+XG4gICAgICAgIGNvbnNvbGUuaW5mbyhcImFmdGVyOiBhaW1faW1nIGlzOiBcIiApXG4gICAgICAgIGNvbnNvbGUuaW5mbyhhaW1faW1nKVxuICAgICAgfSAqL1xuICAgICBcbiAgICAgIGxldCBpbnQgPSA8PjwvPjsgXG4gICAgICBsZXQgaW50X2lkID0gc3RyaW5nVG9TbHVnKGAke2RhdGFbaV0udm9ybmFtZX0taW52LWNvbGxhcHNpYmxlYClcbiAgICAgIGlmIChkYXRhW2ldLmludGVydmlldykge1xuICAgICAgICBcbiAgICAgICAgICBpbnQgPSA8ZGl2IGNsYXNzTmFtZT1cImhwLWNvbGxhcHNcIj48Q29sbGFwc2libGUgdGl0bGU9XCJSZWFkIGZ1bGwgSW50ZXJ2aWV3IGhlcmVcIiBpZD17aW50X2lkfT5cbiAgICAgICAgICB7ZGF0YVtpXS5pbnRlcnZpZXd9XG4gICAgICAgIDwvQ29sbGFwc2libGU+PC9kaXY+XG4gICAgICB9XG4gICAgXG4gICAgICBsZXQgbW9yZXBpY3M6IEpTWC5FbGVtZW50W10gPSBbXTtcbiAgICAgIGxldCBvbGRwaWNzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgLyogaWYoZGF0YVtpXS5tb3JlX3BpY3R1cmVzKXsgKi9cbiAgICAgICAgaWYgKCFkYXRhW2ldLmFpbW9mY29udGFjdCAmJiBkYXRhW2ldLnBpY3R1cmV1cmxfYWltKSB7XG4gICAgICAgICAgb2xkcGljcy5wdXNoKGRhdGFbaV0ucGljdHVyZXVybF9haW0hKVxuICAgICAgICB9XG4gICAgICAgIGlmICghZGF0YVtpXS5pbnNpZ2h0cyAmJiBkYXRhW2ldLnBpY3R1cmV1cmxfaW50ZXJ2aWV3KSB7XG4gICAgICAgICAgb2xkcGljcy5wdXNoKGRhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXchKVxuICAgICAgICB9XG4gICAgICAgIGlmICghZGF0YVtpXS5pbXBsZW1lbnRhdGlvbiAmJiBkYXRhW2ldLnBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb24pIHtcbiAgICAgICAgICBvbGRwaWNzLnB1c2goZGF0YVtpXS5waWN0dXJldXJsX2ltcGxlbWVudGF0aW9uISlcbiAgICAgICAgfVxuICAgICAgICBsZXQgbmV3bGlzdCA9IG9sZHBpY3MuY29uY2F0KGRhdGFbaV0ubW9yZV9waWN0dXJlcyEpOyBcbiAgICAgICAgZm9yIChsZXQgaW5kID0gMDsgaW5kIDwgKG5ld2xpc3QubGVuZ3RoIC0gMSk7IGluZCArPSAyKSB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKGRhdGFbaV0udm9ybmFtZSlcbiAgICAgICAgICBjb25zb2xlLmluZm8oaW5kICsgbmV3bGlzdFtpbmRdKVxuICAgICAgICAgIGNvbnNvbGUuaW5mbyhpbmQrMSArIG5ld2xpc3RbaW5kKzFdKVxuICAgICAgICAgIG1vcmVwaWNzLnB1c2goXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e25ld2xpc3RbaW5kXX0vPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e25ld2xpc3RbaW5kKzFdfS8+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICBcbiAgICAgLyogIH0gKi9cblxuICAgICAgbGV0IG5vZGUgPSA8PlxuICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgICA8aDMgaWQ9e2Ake2RhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9LWhlYWRpbmdgfT57ZGF0YVtpXS50aXRsZX0ge2RhdGFbaV0udm9ybmFtZX0ge2RhdGFbaV0ubmFjaG5uYW1lfTwvaDM+XG4gICAgICAgICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNlwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtcInQtdGFnIFwiICsgZGF0YVtpXS50YWd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7ZGF0YVtpXS5qb2J9IC0ge2RhdGFbaV0uYWZmaWxpYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiIHN0eWxlPXt7cGFkZGluZzogXCI1cHhcIn19PntleHBlcnR9PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgc3R5bGU9e3t3aWR0aDogXCIyMCVcIiwgZmxleDogXCIxIDAgMCVcIiwgcGFkZGluZzogXCI1cHhcIn19PntsYW5nfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1zdHJldGNoXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGQtZmxleCBmbGV4LWNvbHVtblwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGZsZXgtZ3Jvdy0xIG1pdHRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGg0IHN0eWxlPXt7cGFkZGluZ1RvcDogXCI1MHB4XCJ9fT5TdW1tYXJ5OjwvaDQ+XG4gICAgICAgICAgICAgICAgICAgICAgPHA+e2RhdGFbaV0uc3VtbWFyeX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgdW50ZW5cIiBzdHlsZT17e2ZvbnRTaXplOiBcImxhcmdlXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgU2VlIGhvdyB0aGlzIGluZmx1ZW5jZWQgb3VyIHByb2plY3QgYXQgXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJtaWRkbGUgc2VjaHBybyBpbWctZmx1aWRcIiBzcmM9e2RhdGFbaV0ucGljdHVyZXVybH0gLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgey8qICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17e3BhZGRpbmdUb3A6IFwiNTBweFwiLCBmb250U2l6ZTogXCJsYXJnZVwifX0+U3VtbWFyeTo8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPntkYXRhW2ldLnN1bW1hcnl9PC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxuICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwibWlkZGxlIHNlY2hwcm9cIiBzcmM9e2RhdGFbaV0ucGljdHVyZXVybH0vPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PiAqL31cbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAge2FpTX1cblxuICAgICAgICAgICAgICAgICAge2luc2lnaFR9XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIHtjbGFyaX1cblxuICAgICAgICAgICAgICAgICAge2ltUH1cbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tRdW90ZUIgdGV4dD17ZGF0YVtpXS5xdW90ZSF9IGNpdGU9e3F1b3RlZH0+PC9CbG9ja1F1b3RlQj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICB7ZGF0YVtpXS50ZXh0fVxuICAgICAgICAgICAgICAgICAge21vcmVwaWNzfVxuICAgICAgICAgICAgICAgICAge2ludH1cbiAgICAgICAgICAgICAgICAgIHtyZWZzfVxuICAgICAgICAgICAgPC8+XG4gICAgICBpZihwcm9ibGVtKXtcbiAgICAgICAgcm93cy5wdXNoKFxuICAgICAgICAgIDxkaXYgaWQ9e2RhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9IGNsYXNzTmFtZT17Y2xhfSBzdHlsZT17eyBiYWNrZ3JvdW5kQ29sb3I6IFwiYmxhY2tcIiwgY29sb3I6IFwid2hpdGVcIn19PlxuICAgICAgICAgICAgICA8aDE+UFJPQkxFTSB3aXRoIHtkYXRhW2ldLnZvcm5hbWV9IHtkYXRhW2ldLm5hY2hubmFtZX08L2gxPlxuICAgICAgICAgICAgICA8cD4gYmVjYXVzZSBvZjogPC9wPlxuICAgICAgICAgICAgIHtwcm9ibGVtX2Rlc2N9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGVsc2V7XG4gICAgICAgIGlmIChkYXRhW2ldLmludGVydmlld3RhYmlkID09PSBcInRpbWVsaW5lXCIpe1xuICAgICAgICAgIHJvd3MucHVzaChcbiAgICAgICAgICAgIDxkaXYgaWQ9e2RhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9IGNsYXNzTmFtZT17YCR7Y2xhfSB0aW1lbGluZXRhYiBiZy1kYmB9IHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICAgICAge25vZGV9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgZWxzZXtcbiAgICAgICAgcm93cy5wdXNoKFxuICAgICAgICAgIDxkaXYgaWQ9e2RhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9IGNsYXNzTmFtZT17YCR7Y2xhfSB0aW1lbGluZXRhYiBiZy1kYmB9PlxuICAgICAgICAgICAgICB7bm9kZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICB9XG4gICAgcmV0dXJuIHJvd3M7IFxuICB9XG4gIFxuICAvKiBJbnRlcnZpZXcgKi9cbiBcbiAgZXhwb3J0IGZ1bmN0aW9uIE9MREJGSFN0eWxlVGFicyh7ZGF0YSwgY2xhfToge2RhdGE6IEFycmF5PE5vZGVEYXRlbnNhdHo+LCBjbGE6IHN0cmluZ30pIHtcbiAgICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxuICAgIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XG4gICAgICBpZiAoZGF0YVtpXS5jc3NuYW1lID09IFwidGltZWxpbmVcIil7XG4gICAgICAgIHJvd3MucHVzaChcbiAgICAgICAgICA8ZGl2IGlkPXtkYXRhW2ldLmNzc25hbWV9IGNsYXNzTmFtZT17Y2xhfSBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxuICAgICAgICAgICAgICB7ZGF0YVtpXS5ub2RlfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApXG4gICAgICB9XG4gICAgICBlbHNle1xuICAgICAgcm93cy5wdXNoKFxuICAgICAgICA8ZGl2IGlkPXtkYXRhW2ldLmNzc25hbWV9IGNsYXNzTmFtZT17Y2xhfT5cbiAgICAgICAgICAgIHtkYXRhW2ldLm5vZGV9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcm93czsgXG4gIH1cbiIsICJpbXBvcnQgeyBQaWUgfSBmcm9tICdyZWFjdC1jaGFydGpzLTInO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJhciB9IGZyb20gJ3JlYWN0LWNoYXJ0anMtMic7XG5pbXBvcnQgeyBDaGFydCBhcyBDaGFydEpTLCBUb29sdGlwLCBMZWdlbmQsQXJjRWxlbWVudCwgQmFyRWxlbWVudCwgQ2F0ZWdvcnlTY2FsZSwgTGluZWFyU2NhbGUsIFRpdGxlLCBSYWRpYWxMaW5lYXJTY2FsZSB9IGZyb20gJ2NoYXJ0LmpzJztcblxuY29uc3QgYmFja2dyb3VuZGNvbG9yc2NhbGUgPSBbXG4gICAgICAgICAgJ3JnYmEoMTMzLCAxNSwgMTIwLCAwLjIpJyxcbiAgICAgICAgICAncmdiYSgxNjAsIDE2NywgMjQzLCAwLjIpJyxcbiAgICAgICAgICAncmdiYSgyNDUsIDEyNSwgMzQsIDAuMiknLFxuICAgICAgICAgICdyZ2JhKDI0NCwgMjA0LCAzMCwgMC4yKScsXG4gICAgICAgICAgJ3JnYmEoMTMwLCAxNDksIDE2NCwgMC4yKScsXG4gICAgICAgICAgJ3JnYmEoMCwgMTAxLCA0OCwgMC4yKScsXG4gICAgICAgICAgJ3JiZ2EoMTg0LCA5MSwgMjA5LCAwLjIpJyxcbiAgICAgICAgICAncmJnYSg1MCwgMzUsIDQ0LCAwLjInXG5dXG5cblxuXG5jb25zdCBib3JkZXJjb2xvcnNjYWxlID0gW1xuICAgICAgICAgICAgJ3JnYmEoMTMzLCAxNSwgMTIwLCAxKScsXG4gICAgICAgICAgICAgICdyZ2JhKDE2MCwgMTY3LCAyNDMsIDEpJyxcbiAgICAgICAgICAgICAgJ3JnYmEoMjQ1LCAxMjUsIDM0LCAxKScsXG4gICAgICAgICAgICAgICdyZ2JhKDI0NCwgMjA0LCAzMCwgMSknLFxuICAgICAgICAgICAgICAncmdiYSgxMzAsIDE0OSwgMTY0LCAxKScsXG4gICAgICAgICAgICAgICdyZ2JhKDAsIDEwMSwgNDgsIDEpJyxcbiAgICAgICAgICAgICAgJ3JiZ2EoMTg0LCA5MSwgMjA5LCAxKScsXG4gICAgICAgICAgICAgICdyYmdhKDUwLCAzNSwgNDQsIDEnXG5dXG4gXG5DaGFydEpTLnJlZ2lzdGVyKEFyY0VsZW1lbnQsIFRvb2x0aXAsIExlZ2VuZCwgQ2F0ZWdvcnlTY2FsZSxcbiAgUmFkaWFsTGluZWFyU2NhbGUsXG4gIExpbmVhclNjYWxlLFxuICBCYXJFbGVtZW50LFxuICBUaXRsZSk7XG5cbmNvbnN0IFBpZUNoYXJ0OiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnaW5kZWwnLCAnaW5zZXJ0aW9uJywgJ2RlbGV0aW9uJywgJ3N1YnN0aXR1dGlvbicsICdvdGhlciddLFxuICAgIGRhdGFzZXRzOiBbXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiAnUGVyY2VudGFnZScsXG4gICAgICAgIGRhdGE6IFtcbiAgICAgICAgICAwLjAwNDg1ODAwMDAwMDAwMDAwMSxcbiAgICAgICAgICAwLjAwMDg4NTk5OTk5OTk5OTk5OTcsXG4gICAgICAgICAgMC43MjY0MTc5OTk5OTk5OTcyLFxuICAgICAgICAgIDAuMjM4NDE1OTk5OTk5OTk5NSxcbiAgICAgICAgICAwLjAwMzcwM1xuICAgICAgICBdLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIGJvcmRlcldpZHRoOiAxLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbzogZmFsc2UsXG4gICAgcGx1Z2luczoge1xuICAgICAgbGVnZW5kOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHBvc2l0aW9uOiAnYm90dG9tJyBhcyBjb25zdCwgLy8gUHV0cyBsYWJlbHMgYmVsb3cgdGhlIGNoYXJ0XG4gICAgICAgIGxhYmVsczoge1xuICAgICAgICAgIGJveFdpZHRoOiAyMCwgLy8gQ29udHJvbHMgdGhlIHNpemUgb2YgdGhlIGNvbG9yIGJveCBuZXh0IHRvIHRoZSBsYWJlbHNcbiAgICAgICAgICBwYWRkaW5nOiAxNSwgICAvLyBBZGRzIHNvbWUgcGFkZGluZyBiZXR3ZWVuIGxhYmVscyBhbmQgdGhlIGNoYXJ0XG4gICAgICAgICAgdXNlUG9pbnRTdHlsZTogdHJ1ZSwgXG4gICAgICB9LFxuICAgIH0sXG4gICB9LFxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cblxuXG5leHBvcnQgY29uc3QgT3BlblRvR2VuZVRoZXJhcHlhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnWWVzJywgJ01heWJlJywgJ05vJ10sXG4gICAgZGF0YXNldHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcbiAgICAgICAgZGF0YTogW1xuICAgICAgICAgIDc4LjcyLCBcbiAgICAgICAgICAxOS44NixcbiAgICAgICAgICAxLjQyXG4gICAgICAgIF0sXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgIHBsdWdpbnM6IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHRleHQ6ICdXb3VsZCB5b3UgYmUgb3BlbiB0byBnZW5lIHRoZXJhcHkgaWYgaXQgY291bGQgc2lnbmlmaWNhbnRseSBpbXByb3ZlIHlvdXIgc3ltcHRvbXM/JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwicGllLWNoYXJ0LWNvbnRhaW5lci1zbWFsbFwiPlxuICAgICAgPFBpZSBkYXRhPXtkYXRhfSBvcHRpb25zPXtvcHRpb25zfSAvPlxuICAgICAgPC9kaXY+XG4gICk7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBNb3N0U3RyZXNzZnVsRm9yUmVsYXRpdmVhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnRW1vdGlvbmFsIFN0cmVzcycsICdQaHlzaWFjYWwgU3ltcHRvbXMnLCAnRmluYW5jaWFsIEJ1cmRlbicsICdTb2NpYWwgUmVzdHJpY3Rpb25zJywgJ090aGVyJ10sXG4gICAgZGF0YXNldHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcbiAgICAgICAgZGF0YTogW1xuICAgICAgICAgIDM2Ljc5LFxuICAgICAgICAgIDMyLjc4LFxuICAgICAgICAgIDExLjM3LFxuICAgICAgICAgIDE3LjczLFxuICAgICAgICAgIDEuMzRcbiAgICAgICAgXSxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgIHBsdWdpbnM6IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHRleHQ6ICdXaGljaCBhc3BlY3RzIG9mIHRoZSBkaXNlYXNlIGFyZSBtb3N0IHN0cmVzc2Z1bCBmb3IgeW91IG9yIHlvdXIgcmVsYXRpdmU/JyxcbiAgICAgIH0sXG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLW90aGVyXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBXaG9BZmZlY3RlZGF0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBkYXRhID0ge1xuICAgIGxhYmVsczogWydJIGFtIGFmZmVjdGVkJywgJ0EgUmVsYXRpdmUgaXMgYWZmZWN0ZWQnXSxcbiAgICBkYXRhc2V0czogW1xuICAgICAge1xuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxuICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgNDMuMjQsXG4gICAgICAgICAgNTYuNzZcbiAgICAgICAgXSxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgIHBsdWdpbnM6IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHRleHQ6IFtcbiAgICAgICAgICAnQXJlIHlvdSBhZmZlY3RlZCBieSBjeXN0aWMgZmlicm9zaXMgeW91cnNlbGYgJywgJ29yIGFyZSB5b3UgcmVsYXRlZCB0byBzb21lb25lIHdpdGggY3lzdGljIGZpYnJvc2lzPydcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBEb1lvdVdhbnRNb3JlSW5mb2F0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBkYXRhID0ge1xuICAgIGxhYmVsczogWydZZXMnLCAnTm8nXSxcbiAgICBkYXRhc2V0czogW1xuICAgICAge1xuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxuICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgOTMuNDgsXG4gICAgICAgICAgNi41MlxuICAgICAgICBdLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcbiAgICB0aXRsZToge1xuICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgIHRleHQ6ICdXb3VsZCB5b3UgbGlrZSB0byBzZWUgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGUgc3ViamVjdCBvZiBnZW5lIHRoZXJhcHk/JyxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBIb3dPZnRlblRyZWF0bWVudGF0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBsYWJlbHMgPSBbJ1JhcmVseScsICdNb250aGx5JywgJ1dlZWtseScsICdTZXZlcmFsIHRpbWVzIHBlciB3ZWVrJywgJ0RhaWx5J107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogXCJcIixcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAgIDYuNDksXG4gICAgICAgICAgICAgIDYuNDksXG4gICAgICAgICAgICAgIDE1LjU5LFxuICAgICAgICAgICAgICA5LjczLFxuICAgICAgICAgICAgICA2Mi43XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgIHRleHQ6ICdIb3cgb2Z0ZW4gZG8geW91IG9yIHlvdXIgcmVsYXRpdmUgbmVlZCBtZWRpY2FsIHRyZWF0bWVudCBvciB0aGVyYXB5PycsXG4gICAgICAgIH0sXG4gICAgICAgIHNjYWxlczoge1xuICAgICAgICAgIHk6IHtcbiAgICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzY2FsZXM6IHtcbiAgICAgICAgeToge1xuICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IFdoYXRDb2Nlcm5zQWJvdXRHZW5lVGhlcmFweWF0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBsYWJlbHMgPSBbJ01vIGNvbmNlcm5zJywgJ0V0aGljYWwgcXVlc3Rpb25zJywgJ0xvbmctdGVybSBlZmZlY3RzJywgJ1NhZmV0eSBhbmQgc2lkZSBlZmZlY3RzJywgJ0Nvc3QgYW5kIGFjY2Vzc2liaWxpdHknXTtcblxuICBjb25zdCBkYXRhID0ge1xuICAgICAgbGFiZWxzLFxuICAgICAgZGF0YXNldHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGRhdGE6IFtcbiAgICAgICAgICAgICAgMC41NCxcbiAgICAgICAgICAgICAgMTAuMTgsXG4gICAgICAgICAgICAgIDU5LjQ2LFxuICAgICAgICAgICAgICA1OS40NixcbiAgICAgICAgICAgICAgMzIuNDNcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcGx1Z2luczoge1xuICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgdGV4dDogJ1doYXQgY29uY2VybnMgZG8geW91IGhhdmUgYWJvdXQgZ2VuZSB0aGVyYXB5PycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBIb3dNdWNoRG9lc0l0QWZmZWN0WW91YXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGxhYmVscyA9IFsnMScsICcyJywgJzMnLCAnNCcsICc1J107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAgIDQuMzIsXG4gICAgICAgICAgICAgIDEyLjQzLFxuICAgICAgICAgICAgICA0Mi4xNixcbiAgICAgICAgICAgICAgMzIuOTcsXG4gICAgICAgICAgICAgIDguMTFcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcGx1Z2luczoge1xuICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgdGV4dDogW1wiSG93IG11Y2ggZG9lcyBjeXN0aWMgZmlicm9zaXMgYWZmZWN0IHlvdXIgb3IgeW91ciByZWxhdGl2ZSdzIFwiLCBcImRhaWx5IGxpZmU/ICgxID0gTm90IGF0IGFsbCwgNSA9IFZlcnkgbXVjaClcIl1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzY2FsZXM6IHtcbiAgICAgICAgeToge1xuICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgV2hpY2hUaGVyYXB5RG9Zb3VVc2VhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWydQc3ljaG9sb2dpY2FsIHRoZXJhcHknLCAnUGh5c2ljYWwgdGhlcmFweScsICdOdXRyaXRpb25hbCB0aGVyYXB5JywgJ01lZGljYXRpb24gdGhlcmFweScsICdJbmhhbGF0aW9uIHRoZXJhcHknLCAnT3RoZXJzJ107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAgIDUuOTQsXG4gICAgICAgICAgICAgIDI2LjMyLFxuICAgICAgICAgICAgICAxMC41MyxcbiAgICAgICAgICAgICAgMjkuMixcbiAgICAgICAgICAgICAgMjYuODMsXG4gICAgICAgICAgICAgIDEuMTlcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcGx1Z2luczoge1xuICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgdGV4dDogJ1doaWNoIGZvcm0ocykgb2YgdGhlcmFweSBkbyB5b3Ugb3IgeW91ciByZWxhdGl2ZSB1c2U/JyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzY2FsZXM6IHtcbiAgICAgICAgeToge1xuICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IFdoaWNoU3ltcHRvbXNhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWydPdGhlcicsICdIZWFkYWNoZScsIFwiRGVsYXllZCBHcm93dGhcIiwgJ1VuZGVyd2VpZ2h0JywgJ0ZyZXF1ZW50IGx1bmcgaW5mZWN0aW9ucycsICdNdXNjbGUgdHJlbW9ycy93ZWFrbmVzcycsICdjb25zdGlwYXRpb24nLCAnQWJkb21pbmFsIHBhaW4nLCAnQ2hyb25pYyBjb3VnaCcgXTtcblxuICBjb25zdCBkYXRhID0ge1xuICAgICAgbGFiZWxzLFxuICAgICAgZGF0YXNldHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGRhdGE6IFtcbiAgICAgICAgICAgICAgNC45OSxcbiAgICAgICAgICAgICAgNi45OCxcbiAgICAgICAgICAgICAgNi4yMyxcbiAgICAgICAgICAgICAgMTMuNDcsIFxuICAgICAgICAgICAgICAxMy43MixcbiAgICAgICAgICAgICAgMi4wLFxuICAgICAgICAgICAgICAxMC40NyxcbiAgICAgICAgICAgICAgMjMuMTksXG4gICAgICAgICAgICAgIDE4Ljk1XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgIHRleHQ6ICdXaGljaCBzeW1wdG9tcyBkbyB5b3Ugb3IgeW91ciByZWxhdGl2ZSBoYXZlIG1vc3QgZnJlcXVlbnRseT8nLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHNjYWxlczoge1xuICAgICAgICB5OiB7XG4gICAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxuICAgICAgPC9kaXY+XG4gICk7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBCYXNpY1Bvc2l0aW9uYXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGxhYmVscyA9IFsnMScsICcyJywgJzMnLCAnNCcsICc1J107XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgICBsYWJlbHMsXG4gICAgICBkYXRhc2V0czogW1xuICAgICAgICB7XG4gICAgICAgICAgZGF0YTogW1xuICAgICAgICAgICAgICAyLjE0LFxuICAgICAgICAgICAgICA1LjE3LFxuICAgICAgICAgICAgICAyNy4xNCxcbiAgICAgICAgICAgICAgMzAuMDAsXG4gICAgICAgICAgICAgIDM1LjAwXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgIHRleHQ6IFsnV2hhdCBpcyB5b3VyIGJhc2ljIHBvc2l0aW9uIG9uIGdlbmUgdGhlcmFweT8nLCcgKDE9VmVyeSBuZWdhdGl2ZSwgNT1WZXJ5IHBvc2l0aXZlKSddXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBBZ2VEaWFnbm9zaXNhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWyc+MjAnLCAnMTAtMjAnLCAnMS0xMCcsICdmaXJzdCBtb250aHMnLCAnZmlyc3Qgd2VlaycsICdOZXdib3JuIFNjcmVlbmluZycsICdCZWZvcmUgYmlydGgnXTtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAzLjgzLFxuICAgICAgICAgICAgMi43MyxcbiAgICAgICAgICAgIDI2LjIzLFxuICAgICAgICAgICAgMjEuODYsXG4gICAgICAgICAgICAxOC4wMyxcbiAgICAgICAgICAgIDI2LjIzLFxuICAgICAgICAgICAgMS4wOVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwbHVnaW5zOiB7XG4gICAgICAgIGxlZ2VuZDoge1xuICAgICAgICAgIGRpc3BsYXk6IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICB0ZXh0OiAnQXQgd2hhdCBhZ2Ugd2VyZSB5b3Ugb3IgeW91ciByZWxhdGl2ZSBkaWFnbm9zZWQgd2l0aCBjeXN0aWMgZmlicm9zaXM/JyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzY2FsZXM6IHtcbiAgICAgICAgeToge1xuICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IEhlYWRyb2ZHZW5lVGhlcmFweVBhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnWWVzJywgJ05vJ10sXG4gICAgZGF0YXNldHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcbiAgICAgICAgZGF0YTogW1xuICAgICAgICAgIDc2Ljc2LFxuICAgICAgICAgIDIzLjI0XG4gICAgICAgIF0sXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgIHBsdWdpbnM6IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHRleHQ6ICdIYXZlIHlvdSBldmVyIGhlYXJkIG9mIGdlbmUgdGhlcmFweT8nLFxuICAgICAgfSxcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IE1vcmVJbmZvT25UaGVyYXB5Qm90aDogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGxhYmVscyA9IFsnWWVzJywgJ05vJ107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0FmZmVjdGVkJyxcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICA5My40OCxcbiAgICAgICAgICAgIDYuNTJcbiAgICAgICAgICAgICBcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDEzMywgMTUsIDEyMCwgMC4yKScsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogJ3JnYmEoMTMzLCAxNSwgMTIwLCAxJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGxhYmVsOiAnVW5hZmZlY3RlZCcsXG4gICAgICAgICAgZGF0YTogW1xuICAgICAgICAgICAgOTIuMDAsXG4gICAgICAgICAgICA4LjAwXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAncmdiYSgxNjAsIDE2NywgMjQzLCAwLjIpJyxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiAncmdiYSgxNjAsIDE2NywgMjQzLCAxKScsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcGx1Z2luczoge1xuICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICBwb3NpdGlvbjogJ3RvcCcgYXMgY29uc3QsXG4gICAgICAgIH0sXG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICB0ZXh0OiAnV291bGQgeW91IGxpa2UgdG8gc2VlIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIHN1YmplY3Qgb2YgZ2VuZSB0aGVyYXB5PycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cblxuZXhwb3J0IGNvbnN0IEhlYXJkT2ZDRlB1YmxpYzogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgbGFiZWxzOiBbJ1llcycsICdObyddLFxuICAgIGRhdGFzZXRzOiBbXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiAnUGVyY2VudGFnZScsXG4gICAgICAgIGRhdGE6IFtcbiAgICAgICAgICA4Mi44OSxcbiAgICAgICAgICAxNy4xMVxuICAgICAgICBdLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIGJvcmRlcldpZHRoOiAxLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbzogZmFsc2UsXG4gICAgcGx1Z2luczoge1xuICAgICAgdGl0bGU6IHtcbiAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgdGV4dDogJ0hhdmUgeW91IGhlYXJkIG9mIGN5c3RpYyBmaWJyb3Npcz8nLFxuICAgICAgfSxcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXItc21hbGxcIj5cbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgSGVhZE9mR2VuZVRoZXJhcHlQdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBkYXRhID0ge1xuICAgIGxhYmVsczogWydZZXMnLCAnTm8nXSxcbiAgICBkYXRhc2V0czogW1xuICAgICAge1xuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxuICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgNjcuNTgsXG4gICAgICAgICAgMzIuNDJcbiAgICAgICAgXSxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgIHBsdWdpbnM6IHtcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgIHRleHQ6ICdIYXZlIHlvdSBldmVyIGhlYXJkIG9mIGdlbmUgdGhlcmFweT8nLFxuICAgICAgfSxcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXJcIj5cbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgSG93RGlkWW91TGVhcm5QdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBsYWJlbHMgPSBbJ0kgYW0gYWZmZWN0ZWQnLCAnRmFtaWx5L0ZyaWVuZHMnLCAnU2Nob29sL1VuaXZlcnNpdHknLCAnTWVkaWEnLCAnSGVhbHRoY2FyZSBwcm92aWRlcicsICdPdGhlciddO1xuXG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgICBsYWJlbHMsXG4gICAgICBkYXRhc2V0czogW1xuICAgICAgICB7XG4gICAgICAgICAgZGF0YTogW1xuICAgICAgICAgICAgMS4yMyxcbiAgICAgICAgICAgIDI1LjE1LFxuICAgICAgICAgICAgMjAuODYsXG4gICAgICAgICAgICA0NC4xNyxcbiAgICAgICAgICAgIDMuNjgsXG4gICAgICAgICAgICA0LjkxXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgIHRleHQ6ICdIb3cgZGlkIHlvdSBtYWlubHkgbGVhcm4gYWJvdXQgY3lzdGljIGZpYnJvc2lzPyAnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHNjYWxlczoge1xuICAgICAgICB4OiB7XG4gICAgICAgICAgYmVnaW5BdFplcm86IHRydWUsXG4gICAgICAgICAgYmFyUGVyY2VudGFnZTogMC41LCAvLyBTY2htYWxlciBtYWNoZW4sIDAuNSA9IDUwJSBkZXIgS2F0ZWdvcmllLUJyZWl0ZVxuICAgICAgICAgIGNhdGVnb3J5UGVyY2VudGFnZTogMC41LCAvLyBQbGF0eiBwcm8gS2F0ZWdvcmllIHNjaG1hbGVyIG1hY2hlblxuICAgICAgICB9LFxuICAgICAgICB5OiB7XG4gICAgICAgICAgYmVnaW5BdFplcm86IHRydWUsXG4gICAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxuICAgICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgSG93V2VsbERvWW91VW5kZXJzdGFuZEdGUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnRXh0cmVtZWx5IHdlbGwnLCAnU29tZXdoYXQgd2VsbCcsICdOb3Qgc28gd2VsbCcsICdOb3QgYXQgYWxsJ10sXG4gICAgZGF0YXNldHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcbiAgICAgICAgZGF0YTogW1xuICAgICAgICAgIDE5LjM4LFxuICAgICAgICAgIDI0LjgxLFxuICAgICAgICAgIDQ0Ljk2LFxuICAgICAgICAgIDEwLjg1XG4gICAgICAgIF0sXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcbiAgICBwbHVnaW5zOiB7XG4gICAgICB0aXRsZToge1xuICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICB0ZXh0OiAnSG93IHdlbGwgZG8geW91IHVuZGVyc3RhbmQgd2hhdCBnZW5lIHRoZXJhcHkgaXM/JyxcbiAgICAgIH0sXG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBIb3dXZWxsSW5mb3JtZWRBYm91dENGUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgZGF0YSA9IHtcbiAgICBsYWJlbHM6IFsnRXh0cmVtZWx5IHdlbGwnLCAnU29tZXdoYXQgd2VsbCcsICdOb3Qgc28gd2VsbCcsICdOb3QgYXQgYWxsJ10sXG4gICAgZGF0YXNldHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcbiAgICAgICAgZGF0YTogW1xuICAgICAgICAgIDYuMzcsXG4gICAgICAgICAgMjEuNjYsXG4gICAgICAgICAgNTguNjAsXG4gICAgICAgICAgMTMuMzhcbiAgICAgICAgXSxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICBib3JkZXJXaWR0aDogMSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxuICAgICAgcGx1Z2luczogeyB0aXRsZToge1xuICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICB0ZXh0OiAnSG93IHdlbGwgaW5mb3JtZWQgYXJlIHlvdSBhYm91dCBjeXN0aWMgZmlicm9zaXM/JyxcbiAgICAgIH0sXG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLW90aGVyXCI+XG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBXaGF0Q291bGRHZW5lVGhlcmFweU1lYW5Gb3JNZWRpY2luZVB1YmxpYzogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgbGFiZWxzOiBbJ01ham9yIGFkdmFuY2VzIGluIHRoZSB0cmVhdG1lbnQgb2YgZGlzZWFzZXMnLCAnU29tZSBwcm9ncmVzcywgYnV0IGFsc28gcmlza3MnLCAnTW9yZSByaXNrcyB0aGFuIGJlbmVmaXRzJywgJ05vIG9waW5pb24nXSxcbiAgICBkYXRhc2V0czogW1xuICAgICAge1xuICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgNDkuNTksXG4gICAgICAgICAgNDcuOTcsXG4gICAgICAgICAgMS42MyxcbiAgICAgICAgICAwLjgxXG4gICAgICAgIF0sXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcbiAgICBwbHVnaW5zOiB7dGl0bGU6IHtcbiAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICB0ZXh0OiAnV2hhdCBkbyB5b3UgdGhpbmsgZ2VuZSB0aGVyYXB5IGNvdWxkIG1lYW4gZm9yIG1lZGljaW5lPycsXG4gICAgfSx9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXItb3RoZXJcIj5cbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgV2hhdE1lYXN1cmVzUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWydNZWRpYScsICdTY2hvb2xzIGFuZCBDb21tdW5pdGllcycsIFwiRG9jdG9yc1wiLCAnQ2hhcml0aWVzIGFuZCBGaW5kcmFpc2VycycsICdPbmxpbmUgUGxhdGZvcm1zIGFuZCBGb3J1bXMnLCAnQ29vcGVyYXRpb25zIHdpdGggQ29tcGFuaWVzJywgJ1NjaG9vbCBMZXNzb25zJywgJ0RvY3VtZW50YXJpZXMgYW5kIFNob3J0IEZpbG1zJ107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0dlbmVyYWwgU3VydmV5JyxcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAyMi44NyxcbiAgICAgICAgICAgIDEzLjIwLFxuICAgICAgICAgICAgMTMuNjksXG4gICAgICAgICAgICA3LjA5LFxuICAgICAgICAgICAgMTIuNzIsXG4gICAgICAgICAgICA2LjYwLFxuICAgICAgICAgICAgOS44MixcbiAgICAgICAgICAgIDE0LjAxXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgIHRleHQ6ICdXaGF0IG1lYXN1cmVzIGRvIHlvdSB0aGluayBjb3VsZCBiZSB0YWtlbiB0byByYWlzZSBhd2FyZW5lc3Mgb2YgY3lzdGljIGZpYnJvc2lzPycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cblxuZXhwb3J0IGNvbnN0IFdvdWxkWW91RG9HZW5lVGhlcmFweVB1YmxpYzogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgbGFiZWxzOiBbJ1llcycsICdObycsICdNYXliZSddLFxuICAgIGRhdGFzZXRzOiBbXG4gICAgICB7XG4gICAgICAgIGxhYmVsOiAnR2VuZXJhbCBTdXJ2ZXknLFxuICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgODUuMjIsXG4gICAgICAgICAgMTMuMDQsXG4gICAgICAgICAgMS43NFxuICAgICAgICBdLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIGJvcmRlcldpZHRoOiAxLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbzogZmFsc2UsXG4gICAgcGx1Z2luczoge1xuICAgICAgdGl0bGU6IHtcbiAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgdGV4dDogJ1dvdWxkIHlvdSBvcHQgZm9yIGdlbmUgdGhlcmFweSB5b3Vyc2VsZj8nLFxuICAgICAgfSxcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXItb3RoZXJcIj5cbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgV2hhdENvY2VybnNBYm91dEdlbmVUaGVyYXB5UHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWydObyBjb25jZXJucycsICdFdGhpY2FsIHF1ZXN0aW9ucycsICdMb25nLXRlcm0gZWZmZWN0cycsICdTYWZldHkgYW5kIHNpZGUgZWZmZWN0cycsICdDb3N0IGFuZCBhY2Nlc3NpYmlsaXR5J107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0dlbmVyYWwgU3VydmV5JyxcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICA0LjU3LFxuICAgICAgICAgICAgMTQuNjEsXG4gICAgICAgICAgICAyNy44NSxcbiAgICAgICAgICAgIDI4Ljc3LFxuICAgICAgICAgICAgMjQuMjBcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcGx1Z2luczoge1xuICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgdGV4dDogJ1doYXQgY29uY2VybnMgZG8geW91IGhhdmUgYWJvdXQgZ2VuZSB0aGVyYXB5PycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBXaGF0Rm9ybU1vcmVJbmZvUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcbiAgY29uc3QgbGFiZWxzID0gWydJbmZvcm1hdGlvbnMgYnJvY2h1cmVzJywgJ1dlYnNpdGVzIGFuZCBvbmxpbmUgcmVzb3VyY2VzJywgJ1RWIGRvY3VtZW50YXJpZXMgYW5kIHByb2dyYW1zJywgJ0xlY3R1cmVzIGFuZCBzZW1pbmFycycsICdTY2hvb2wgYW5kIHVuaXZlcnNpdHkgY291cnNlcyAnLCAnQ29uc3VsdGF0aW9ucyB3aXRoIGRvY3RvcnMgYW5kIHNwZWNpYWxpc3RzJywgJ1NvY2lhbCBtZWRpYSBhbmQgb25saW5lIGNvbW11bml0aWVzJywgJ090aGVyJ107XG5cbiAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhYmVscyxcbiAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogJ0dlbmVyYWwgU3VydmV5JyxcbiAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAxNS43NCxcbiAgICAgICAgICAgIDE2LjYzLFxuICAgICAgICAgICAgMjIuNjIsXG4gICAgICAgICAgICAxLjc3LFxuICAgICAgICAgICAgMTMuMzAsXG4gICAgICAgICAgICAxMy45NyxcbiAgICAgICAgICAgIDE1Ljk2LFxuICAgICAgICAgICAgMFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwbHVnaW5zOiB7XG4gICAgICAgIGxlZ2VuZDoge1xuICAgICAgICAgIGRpc3BsYXk6IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICB0ZXh0OiAnSW4gd2hhdCBmb3JtIHdvdWxkIHlvdSBsaWtlIHRvIHNlZSBtb3JlIGluZm9ybWF0aW9uPycsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2NhbGVzOiB7XG4gICAgICAgIHk6IHtcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFBpZUNoYXJ0O1xuIiwgImltcG9ydCB7IFN1cFNjcm9sbExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9TY3JvbGxMaW5rXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3ltcHRvbURhdGVuc2F0eiB7IFxuICAgIG5hbWU6IHN0cmluZzsgIFxuICAgIHBpY3R1cmU6IHN0cmluZzsgXG4gICAgaW50cm9kdWN0aW9uOiBBcnJheTxzdHJpbmc+IHwgQXJyYXk8UmVhY3QuUmVhY3ROb2RlPjtcbn1cblxuLy9CaWxkZXIrUXVlbGxlbiBtXHUwMEZDc3NlbiBub2NoIGFuZ2VwYXNzdCB3ZXJkZW5cbi8vZGEga29tbWVuIGpldHp0IGZvbGdlbmRlIE9yZ2FuZTogUGFuY3JlYXMsIEludGVzdGluZXMsIExpdmVyLCBTZXh1YWwgZ2xhbmRzLCBMdW5ncywgU2tlbGV0YWwgU3lzdGVtLCBTa2luLCBOb3NlLCBCcmFpbi9NZW50YWwgSGVhbHRoIFxuZXhwb3J0IGNvbnN0IHN5bXB0b21kYXRhOiAoQXJyYXk8U3ltcHRvbURhdGVuc2F0ej4pICA9IFtcbiAgICB7XG4gICAgICAgIG5hbWU6IFwiUGFuY3JlYXNcIixcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvcGFuY3JlYXMuc3ZnXCIsXG4gICAgICAgIGludHJvZHVjdGlvbjogWzw+TG9jYXRlZCBiZWhpbmQgdGhlIHN0b21hY2ggaW4gdGhlIGJhY2sgYWJkb21pbmFsIGNhdml0eSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc0XCIvPjwvPiw8PlJlc3BvbnNpYmxlIGZvciBuZXV0cmFsaXppbmcgc3RvbWFjaCBhY2lkLCBwcm9kdWN0aW9uIG9mIGhvcm1vbmVzIChsaWtlIEluc3VsaW4pIGFuZCBkaWdlc3Rpb24gZW56eW1lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc0XCIvPjwvPiw8PkNsb2dnaW5nIGNhdXNlZCBieSBDRiwgc28gdGhhdCBwcm9kdWN0cyBvZiB0aGUgcGFuY3JlYXRpYyBnbGFuZCBjYW4gbm90IGJlIGRpc3RyaWJ1dGVkIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzVcIi8+PC8+LDw+UGFuY3JlYXRpYyBpbnN1ZmZpY2llbmN5IGR1ZSB0byBDRiBjYW4gbGVhZCB0byBtYWxudXRyaXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3NlwiLz4sIGRpZ2VzdGl2ZSBwcm9ibGVtcyBhbmQgYWJkb21pbmFsIHBhaW4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3N1wiLz4sIENGLWFzc29jaWF0ZWQgZGlhYmV0ZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3OFwiLz48Lz4sPD5UcmVhdG1lbnQgb3B0aW9ucyBpbmNsdWRlIG51dHJpdGlvbmFsIHRoZXJhcHkgYW5kIHN1cHBsZW1lbnRhdGlvbiBvZiBwYW5jcmVhdGljIGVuenltZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3OVwiLz48Lz5dXG4gICAgfSxcbiAgICB7IFxuICAgICAgICBuYW1lOiBcIkludGVzdGluZXNcIiwgXG4gICAgICAgIHBpY3R1cmU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2xhcmdlaW50ZXN0aW5lLnN2Z1wiLFxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgaW4gdGhlIGFiZG9taW5hbCBjYXZpdHkgYW5kIGV4dGVuZHMgZnJvbSB0aGUgc3RvbWFjaCB0byB0aGUgYW51czwvPiw8PlJlc3BvbnNpYmxlIGZvciBudXRyaWVudCBhYnNvcnB0aW9uLCB3YXRlciByZWFic29ycHRpb24sIGFuZCB3YXN0ZSBlbGltaW5hdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgwXCIvPjwvPiw8PkNGIGNhbiBjYXVzZSBibG9ja2luZyBvZiB0aGUgaW50ZXN0aW5lcywgcHJldmVudGluZyB0aGUgbm9ybWFsIG1vdmVtZW50IG9mIGZvb2QgYW5kIGFic29ycHRpb24gb2YgbnV0cmllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODFcIi8+PC8+LDw+SW50ZXN0aW5hbCBibG9ja2FnZSBkdWUgdG8gQ0YgY2FuIGxlYWQgdG8gbWFsYWJzb3JwdGlvbiBvZiBudXRyaWVudHMsIGFuZCBjb25kaXRpb25zIGxpa2UgbWVjb25pdW0gaWxldXMgaW4gbmV3Ym9ybnMgb3IgZGlzdGFsIGludGVzdGluYWwgb2JzdHJ1Y3Rpb24gc3luZHJvbWUgKERJT1MpIGluIGFkdWx0cyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgxXCIvPjwvPiw8PlRyZWF0bWVudCBvcHRpb25zIGluY2x1ZGUgdGhlIHVzZSBvZiBsYXhhdGl2ZXMsIGVuenltZSBzdXBwbGVtZW50YXRpb24sIGZlZWRpbmcgdHViZXMsIGFuZCBpbiBzZXZlcmUgY2FzZXMsIHN1cmdpY2FsIGludGVydmVudGlvbiBvciBpbnRlc3RpbmFsIHRyYW5zcGxhbnRhdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgxXCIvPjwvPl1cbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogXCJMaXZlclwiLCBcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbGl2ZXIuc3ZnXCIsXG4gICAgICAgIGludHJvZHVjdGlvbjogWzw+TG9jYXRlZCBkaXJlY3RseSBiZWxvdyB0aGUgZGlhcGhyYWdtIG5lYXIgdGhlIHBhbmNyZWF0aWMgZ2xhbmQgYW5kIHN0b21hY2ggPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4MlwiLz48Lz4sPD5SZXNwb25zaWJsZSBmb3IgZGV0b3hpZmljYXRpb24sIGJpbGUgcHJvZHVjdGlvbiBmb3IgZW5oYW5jZW1lbnQgb2YgZGlnZXN0aW9uLCBwcm90ZWluIHN5bnRoZXNpcyBmb3IgYmxvb2QgY2xvdHRpbmcgYW5kIGltbXVuZSBmdW5jdGlvbnMsIG51dHJpZW50IHByb2Nlc3NpbmcgYW5kIHN0b3JhZ2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4MlwiLz48Lz4sPD5DRiBhZmZlY3RzIHRoZSBub3JtYWwgc2VjcmV0aW9uIGFuZCBmdW5jdGlvbiBvZiBiaWxlLSBpdCBiZWNvbWVzIHN0aWNraWVyIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODNcIi8+PC8+LDw+U3ltcHRvbXMgY2F1c2VkIGJ5IENGIGluY2x1ZGUgYnJ1aXNpbmcsIG5vc2UgYmxlZWRzLCBJbmZsYW1tYXRpb24sIG1vcmUgZnJlcXVlbnQgY2hlc3QgaW5mZWN0aW9ucywgbG93IGJvZHkgd2VpZ2h0LCBsaXZlciBjaXJyaG9zaXMsIGxldGhhcmd5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODNcIi8+PC8+LDw+VHJlYXRtZW50IG9wdGlvbnMgaW5jbHVkZSBudXRyaXRpb25hbCB0aGVyYXB5LCBtb2R1bGF0b3JzLCBVRENBLCBsaXZlciB0cmFuc3BsYW50YXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4NFwiLz48Lz5dXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6IFwiU2V4dWFsIGdsYW5kc1wiLFxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9nbGFuZHMuc3ZnXCIsXG4gICAgICAgIGludHJvZHVjdGlvbjogWzw+TG9jYXRlZCBpbiBwZWx2aWMgYXJlYSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjg1XCIvPjwvPiw8PlJlc3BvbnNpYmxlIGZvciBwcm9kdWN0aW9uIG9mIHNwZXJtIChtYWxlKS8gcHJvZHVjdGlvbiBvZiBvb2N5dGVzIGFuZCBhcyBzaXRlIGZvciBlbWJyeW8gZGV2ZWxvcG1lbnQgKGZlbWFsZSkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4NlwiLz48Lz4sPD5DRiBjYXVzZXMgdGhpY2sgbXVjdXMgdG8gYmxvY2sgcmVwcm9kdWN0aXZlIGR1Y3RzIChib3RoKSwgYWZmZWN0cyBzcGVybSB0cmFuc3BvcnQgKG1hbGUpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODdcIi8+IGFuZCBjZXJ2aWNhbCBtdWN1cyBkZW5zaXR5IChmZW1hbGUpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODhcIi8+PC8+LDw+VGhpcyBjYW4gbGVhZCBpbiBjb250ZXh0IG9mIENGIHRvIHJlZHVjZWQgZmVydGlsaXR5IG9yIGV2ZW4gaW5mZXJ0aWxpdHkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4N1wiLz48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjg4XCIvPjwvPiw8PiA8aT4gSW4gdml0cm8gPC9pPiBmZXJ0aWxpemF0aW9uIGNhbiBiZSBhbiBvcHRpb24gZm9yIENGIHBhdGllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODlcIi8+IDwvPl1cbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogXCJMdW5nc1wiLCBcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbHVuZ3Muc3ZnXCIsXG4gICAgICAgIGludHJvZHVjdGlvbjogWzw+TG9jYXRlZCBpbiB0aGUgcmliY2FnZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjkwXCIvPjwvPiw8PlJlc3BvbnNpYmxlIGZvciBicmVhdGhpbmcgXHUyMDEzIGFzcGlyYXRpb24gb2YgbGlmZS1naXZpbmcgb3h5Z2VuIGFuZCBkZXBvc2l0aW9uIG9mIGNhcmJvbmRpb3hpZGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5MFwiLz48Lz4sPD5DRiBjYXVzZXMgdGhlIHRoaWNrZW5pbmcgb2YgbXVjdXMgb24gdG9wIG9mIHRoZSByZXNwaXJhdG9yeSBlcGl0aGVsaXVtLCBzZXJ2aW5nIGFzIG51dHJpdGlvbiBncm91bmQgYXMgZm9yIHBhdGhvZ2VucyBhbmQgaW1wYWlyaW5nIHRoZSBtb3ZlbWVudCBvZiBjaWxpYSBzbyB0aGF0IHRoZSBtdWN1cyBjYW4gbm90IGJlIGNhcnQgYXdheSBbMThdPC8+LDw+U3ltcHRvbXMgY2F1c2VkIGJ5IENGIGluY2x1ZGUgc2hvcnRuZXNzIG9mIGJyZWF0aCwgcGVyc2lzdGVudCBjb3VnaCBbMTldLCBsdW5nIGluZmVjdGlvbnMgKG1haW5seSBjYXVzZWQgYnkgPGk+IFBzZXVkb21vbmFzIGFlcnVnaW5vc2EgPC9pPiwgPGk+IFN0YXBoeWxvY29jY3VzIGF1cmV1cyA8L2k+IGFuZCA8aT4gQnVya2hvbGRlcmlhIGNlcGFjaWEgPC9pPikgWzIwXSwgYnJvbmNoaWVjdGFzaXMgWzIxXSA8Lz4sPD5UcmVhdG1lbnQgb3B0aW9ucyBpbmNsdWRlIHJlc3BpcmF0b3J5IHBoeXNpb3RoZXJhcHkgKGUuZy4gYnJvbmNoaW9kaWxhdG9ycyksIHNwb3J0cywgaW5oYWxhdGlvbiwgYW50aWJpb3RpY3MgYWdhaW5zdCBwYXRob2dlbnMsIGx1bmcgdHJhbnNwbGFudGF0aW9uIFsyMl08Lz5dXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6IFwiU2tlbGV0YWwgU3lzdGVtXCIsXG4gICAgICAgIHBpY3R1cmU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2JvbmVzLnN2Z1wiLFxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgdGhyb3VnaG91dCB0aGUgZW50aXJlIGJvZHk8Lz4sPD5SZXNwb25zaWJsZSBmb3Igc3RydWN0dXJhdGlvbiBvZiB0aGUgYm9keSwgcHJvdGVjdGlvbiBvZiBvcmdhbnMsIG1pbmVyYWwgc3RvcmFnZSwgYmxvb2QgY2VsbCBwcm9kdWN0aW9uIFsyM108Lz4sPD5DRiBhZmZlY3RzIHRoZSBza2VsZXRhbCBzeXN0ZW0gYnkgcmVkdWNpbmcgYm9uZSBtaW5lcmFsIGRlbnNpdHkgWzI0XTwvPiw8PlRoaXMgY2FuIGxlYWQgaW4gY29udGV4dCBvZiBDRiB0byBvc3Rlb3Bvcm9zaXMsIHNwaW5hbCBmcmFjdHVyZXMsIGt5cGhvc2lzLCBzY29saW9zaXMgWzI0XTwvPiw8PlRyZWF0bWVudCBvcHRpb25zIGluY2x1ZGUgdXB0YWtlIG9mIGJpb3Bob3NwaG9uYXRlcyB0byBpbmNyZWFzZSBib25lIGRlbnNpdHksIHZpdGFtaW4gRCBmb3IgbWFpbnRlbmFuY2Ugb2YgY2FsY2l1bSBsZXZlbHMgbmVlZGVkIGZvciBtaW5lcmFsaXphdGlvbiBbMjRdPC8+XVxuICAgIH0sXG4gICAge1xuICAgICAgICBuYW1lOiBcIlNraW5cIixcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvc2tpbi5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD5Mb2NhdGVkIG9uIHRoZSBzdXJmYWNlIG9mIHRoZSBlbnRpcmUgYm9keTwvPiw8PlJlc3BvbnNpYmxlIGZvciBiYXJyaWVyIGZ1bmN0aW9uLCBpbW11bm9sb2dpY2FsIGRlZmVuc2UsIHJlZ3VsYXRpb24gb2YgaG9tZW9zdGFzaXMsIHNlbnNvcnkgZnVuY3Rpb25zIFsyNV08Lz4sPD5DRiBhZmZlY3RzIENGVFIgY2hhbm5lbHMgb2Ygc3dlYXQgZ2xhbmRzLCB3aGljaCBsZWFkcyB0byBzYWx0IGRlcG9zaXRzIG9uIHRoZSBza2luIFsyNl08Lz4sPD5UaGlzIGNhbiBsZWFkIGluIGNvbnRleHQgb2YgQ0YgdG8gc2tpbiBpcnJpdGF0aW9uIChyYXNoIG9yIGRlcm1hdGl0aXMpIFsyNl08Lz4sPD5QcmV2ZW50aW9uIHZpYSBkcmlua2luZyBhIGxvdCBhbmQgYSByYXRoZXIgc2FsdHkgZGlldCBwb3NzaWJsZSBbMjddPC8+XVxuICAgIH0sXG4gICAge1xuICAgICAgICBuYW1lOiBcIk5vc2VcIixcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbm9zZS5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD48Lz4sPD5SZXNwb25zaWJsZSBmb3Igc21lbGwgcGVyY2VwdGlvbiwgYnJlYXRoaW5nLCBmaWx0cmF0aW9uIGFuZCBjbGVhbmluZywgYW5kIHNlcnZpbmcgYXMgYSByZXNvbmFuY2UgY2hhbWJlciBmb3IgdGhlIHZvaWNlIFsyOF08Lz4sPD5DRiBhZmZlY3RzIHRoaWNrbmVzcyBvZiBuYXNhbCBzZWNyZXRpb25zLCB3aGljaCBjYW5ub3QgZHJhaW4gd2VsbCBbMjZdPC8+LDw+VGhpcyBjYW4gbGVhZCBpbiBjb250ZXh0IG9mIENGIHRvIG5hc2FsIGNvbmdlc3Rpb24sIHByZXNzdXJlIGhlYWRhY2hlcywgc2ludXNpdGlzLCBpbmZsYW1tYXRpb24gb2YgbmFzYWwgcG9seXBzIFsyNl08Lz4sPD5UaGVyYXB5IHJhbmdlcyBmcm9tIG5hc2FsIHNwcmF5cyB0byBzdXJnaWNhbCByZW1vdmFsIG9mIG5hc2FsIHBvbHlwcyBbMjZdPC8+XVxuICAgIH0sXG4gICAge1xuICAgICAgICBuYW1lOiBcIkJyYWluXCIsXG4gICAgICAgIHBpY3R1cmU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2JyYWluLnN2Z1wiLFxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgaW5zaWRlIHRoZSBza3VsbDwvPiw8PlJlc3BvbnNpYmxlIGZvciBjb2duaXRpdmUgZnVuY3Rpb25zLCBtb3ZlbWVudCBjb29yZGluYXRpb24sIGFuZCBjb250cm9sIG9mIHZpdGFsIGZ1bmN0aW9ucyBbMjldPC8+LDw+Q0YgYWZmZWN0cyBtZW50YWwgaGVhbHRoIGR1ZSB0byBwc3ljaG9sb2dpY2FsIHN0cmVzcyBhbmQgc29jaWFsIGlzb2xhdGlvbiBbMzBdPC8+LDw+VGhpcyBjYW4gbGVhZCBpbiBjb250ZXh0IG9mIENGIHRvIHBoeXNpY2FsIGlsbG5lc3NlcyBsaWtlIGRlcHJlc3Npb24gYW5kIGFueGlldHkgZGlzb3JkZXJzIFszMF08Lz4sPD5UcmVhdG1lbnQgb3B0aW9ucyBpbmNsdWRlIHBzeWNob3RoZXJhcHksIGFudGlkZXByZXNzYW50cywgc3VwcG9ydCBncm91cHMgYW5kIHNwb3J0cyBbMzFdPC8+XVxuICAgIH1cbl0iLCAiaW1wb3J0IHsgU3VwU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEcnVnRGF0ZW5zYXR6IHtcbiAgICBuYW1lOiBzdHJpbmc7ICBcbiAgICBwaWN0dXJlOiBzdHJpbmc7IFxuICAgIGludHJvZHVjdGlvbjogc3RyaW5nIHwgUmVhY3QuUmVhY3ROb2RlO1xuICAgIGV4YW1wbGVzOiBBcnJheTxleGFtcGxlPjsgXG5cblxufVxuXG5cbmludGVyZmFjZSBleGFtcGxle1xuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgdGV4dDogQXJyYXk8c3RyaW5nPiB8IEFycmF5PFJlYWN0LlJlYWN0Tm9kZT47IFxufVxuIFxuZXhwb3J0IGNvbnN0IGRydWdkYXRhOiAoQXJyYXk8RHJ1Z0RhdGVuc2F0ej4pICA9IFtcbi8vICAgIHtcbi8vICAgICAgICBuYW1lOiBcIkFib3V0XCIsXG4vLyAgICAgICAgcGljdHVyZTogXCIuLi5cIixcbi8vICAgICAgICBpbnRyb2R1Y3Rpb246IFwiXCIsXG4vLyAgICAgICAgZXhhbXBsZXM6IFtcbi8vICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgdGl0bGU6IFwiXCIsXG4vLyAgICAgICAgICAgICAgICB0ZXh0OiBbXCJcIl1cbi8vICAgICAgICAgICAgfSxcbi8vICAgICAgICAgICAge1xuLy8gICAgICAgICAgICAgICAgdGl0bGU6IFwiXCIsXG4vLyAgICAgICAgICAgICAgICB0ZXh0OiBbXCJzdHJpbmdcIl1cbi8vICAgICAgICAgICAgfSxcbi8vICAgICAgICBdXG4vLyAgICB9LFxuICAgIHtcbiAgICAgICAgLy9naWJ0IDQgTW9kdWxhdG9yIEJlaXNwaWVsZVxuICAgICAgICBuYW1lOiBcIk1vZHVsYXRvcnNcIixcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbW9kdWxhdG9ycy5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiA8YT5DRlRSIG1vZHVsYXRvcnMgcmVwcmVzZW50IGEgc2lnbmlmaWNhbnQgYWR2YW5jZW1lbnQgaW4gQ0YgdHJlYXRtZW50IHNpbmNlIHRoZXkgYXJlIHNtYWxsIG1vbGVjdWxlcyBpbXByb3ZpbmcgdGhlIGZ1bmN0aW9uIG9mIHRoZSBkZWZlY3RpdmUgQ0ZUUiBwcm90ZWluIGluIGEgbXV0YXRpb24tc3BlY2lmaWMgd2F5LCB3aGljaCBoZWxwcyByZXN0b3JlIGNobG9yaWRlIGlvbiB0cmFuc3BvcnQgYWNyb3NzIGNlbGwgbWVtYnJhbmVzLiBOb3RhYmxlIHBoYXJtYWNldXRpY2FsIGFnZW50cyBpbmNsdWRlIFRyaWthZnRhXHUwMEFFLCBTeW1kZWtvXHUwMEFFLCBPcmthbWJpXHUwMEFFIGFuZCBLYWx5ZGVjb1x1MDBBRSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc0XCIvPi4gVGhlc2UgbWVkaWNhdGlvbnMgaGF2ZSBiZWVuIGRlbW9uc3RyYXRlZCB0byBzaWduaWZpY2FudGx5IGltcHJvdmUgbHVuZyBmdW5jdGlvbiBhbmQgcmVkdWNlIHB1bG1vbmFyeSBleGFjZXJiYXRpb25zLiBIb3dldmVyLCB0aGV5IGFyZSBleHBlbnNpdmUgYW5kIG1heSBjYXVzZSBzaWRlIGVmZmVjdHMgc3VjaCBhcyBsaXZlciBlbnp5bWUgZWxldmF0aW9ucyBhbmQgY2F0YXJhY3RzIGluIHBlZGlhdHJpYyBwYXRpZW50cyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc1XCIvPi4gRnVydGhlcm1vcmUsIHRoZXkgYXJlIG5vdCBzdWl0YWJsZSBmb3IgYWxsIENGIHBhdGllbnRzIHNpbmNlIG9ubHkgbXV0YXRpb25zIHdoaWNoIHByb2R1Y2UgYSBDRlRSIGNoYW5uZWwgY2FuIGJlIHN1cHBvcnRlZCBieSBDRlRSIG1vZHVsYXRvcnMsIG5vdCB0aG9zZSBtdXRhdGlvbnMgd2hpY2ggbGVhZCB0byBhIG1pc3NpbmcgQ0ZUUiBjaGFubmVsIChrbm9jayBvdXQpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+LCBlLmcuIHN0b3AtbXV0YXRpb25zIGluY2x1ZGluZyBwLkFyZzU1M1RlciBvciBwLkdseTU0MlRlcjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzZcIi8+LiA8L2E+LFxuICAgICAgICBleGFtcGxlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIlRyaWthZnRhXCIsIC8vcXVlbGxlIDRcbiAgICAgICAgICAgICAgICB0ZXh0OiBbPGE+QWN0aXZlIGluZ3JlZGllbnQocyk6IENvbWJpbmF0aW9uIG9mIGVsZXhhY2FmdG9yL3RlemFjYWZ0b3IvaXZhY2FmdG9yXCIsXCJJbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgMiB5ZWFycyBhbmQgb2xkZXIgd2l0aCBhdCBsZWFzdCBvbmUgRjUwOGRlbCBtdXRhdGlvbiA9IDg1ICUgb2YgQ0YgcGF0aWVudHNcIixcIk1lY2hhbmlzbTogRWxleGFjYWZ0b3IgYW5kIHRlemFjYWZ0b3IgYWN0IGFzIGNvcnJlY3RvcnMgb24gbWlzZm9sZGVkIENGVFIgYW5kIHBlcm1pdCBkZWxpdmVyeSB0byB0aGUgY2VsbCBzdXJmYWNlLCB0aGVyZWJ5IGltcHJvdmluZyB0aGUgY2hhbm5lbCBkZW5zaXR5IGF0IHRoZSBwbGFzbWEgbWVtYnJhbmUsIHdoaWxlIGl2YWNhZnRvciBhcyBhIHBvdGVudGlhdG9yIGFjdHMgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+XCIsXCJBZG1pbmlzdHJhdGlvbjogT3JhbCB0YWJsZXRzPC9hPixcIkFwcHJvdmFsOiBBcHByb3ZlZCBieSB0aGUgRU1BIGluIDIwMjAgXCJdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIlN5bWRla29cIiwgLy9xdWVsbGUgMVxuICAgICAgICAgICAgICAgIHRleHQ6IFtcIkFjdGl2ZSBpbmdyZWRpZW50KHMpOiBDb21iaW5hdGlvbiBvZiB0ZXphY2FmdG9yIGFuZCBpdmFjYWZ0b3JcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCA2IHllYXJzIGFuZCBvbGRlciB3aXRoIHNwZWNpZmljIG11dGF0aW9ucyBpbiBjb21iaW5hdGlvbiB3aXRoIEY1MDhkZWwgb3Igd2l0aCB0d28gY29waWVzIG9mIEY1MDhkZWwgbXV0YXRpb25cIiwgPGE+TWVjaGFuaXNtOiBUZXphY2FmdG9yIGFjdHMgYXMgYSBjb3JyZWN0b3Igb24gbWlzZm9sZGVkIENGVFIgYW5kIHBlcm1pdCBkZWxpdmVyeSB0byB0aGUgY2VsbCBzdXJmYWNlLCB0aGVyZWJ5IGltcHJvdmluZyB0aGUgY2hhbm5lbCBkZW5zaXR5IGF0IHRoZSBwbGFzbWEgbWVtYnJhbmUsIHdoaWxlIGl2YWNhZnRvciBhcyBhIHBvdGVudGlhdG9yIGFjdHMgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+IDwvYT4sIFwiQWRtaW5pc3RyYXRpb246IE9yYWwgdGFibGV0c1wiLCBcIkFwcHJvdmFsOiBBcHByb3ZlZCBieSB0aGUgRU1BIGluIDIwMThcIl1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiT3JrYW1iaVwiLCAvL3F1ZWxsZSA2XG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IENvbWJpbmF0aW9uIG9mIGx1bWFjYWZ0b3IgYW5kIGl2YWNhZnRvclwiLCBcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCAxIHllYXIgYW5kIG9sZGVyIHdpdGggdHdvIGNvcGllcyBvZiB0aGUgRjUwOGRlbCBtdXRhdGlvblwiLDxhPk1lY2hhbmlzbTogTHVtYWNhZnRvciBhY3RzIGFzIGEgY29ycmVjdG9yIG9uIG1pc2ZvbGRlZCBDRlRSIGFuZCBwZXJtaXQgZGVsaXZlcnkgdG8gdGhlIGNlbGwgc3VyZmFjZSwgdGhlcmVieSBpbXByb3ZpbmcgdGhlIGNoYW5uZWwgZGVuc2l0eSBhdCB0aGUgcGxhc21hIG1lbWJyYW5lLCB3aGlsZSBpdmFjYWZ0b3IgYXMgYSBwb3RlbnRpYXRvciBhY3Qgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+PC9hPixcIkFkbWluaXN0cmF0aW9uOiBPcmFsIHRhYmxldHNcIixcIkFwcHJvdmFsOiBBcHByb3ZlZCBieSB0aGUgRU1BIGluIDIwMTVcIl1cbiAgICAgICAgICAgIH0sICBcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJLYWx5ZGVjb1wiLCAvL3F1ZWxsZSA3XG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IEl2YWNhZnRvclwiLFwiSW5kaWNhdGlvbnM6IEZvciBDRiBwYXRpZW50cyBhZ2VkIDQgbW9udGhzIGFuZCBvbGRlciB3aXRoIGEgZ2F0aW5nIG11dGF0aW9uIGluIHRoZSBDRlRSIGdlbmUgKGV4Y2x1ZGluZyBGNTA4ZGVsKVwiLDxhPk1lY2hhbmlzbTogSXZhY2FmdG9yIGFzIGEgcG90ZW50aWF0b3IgYWN0cyBvbiBDRlRSIGNoYW5uZWxzIHRoYXQgaGF2ZSByZWFjaGVkIHRoZSBjZWxsIHN1cmZhY2UgYW5kIGluY3JlYXNlIHRoZSBnYXRpbmcgYW5kIGNvbmR1Y3RhbmNlIG9mIGlvbnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3N1wiLz48L2E+LFwiQWRtaW5pc3RyYXRpb246IE9yYWwgdGFibGV0c1wiLFwiQXBwcm92YWw6IEFwcHJvdmVkIGJ5IHRoZSBFTUEgaW4gSnVseSAyMDEyXCJdXG4gICAgICAgICAgICB9LCBcbiAgICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgICBuYW1lOiBcIk11Y29seXRpY3MgYW5kIGluaGFsYXRpb25cIiwgLy9naWJ0IDIgSW5oYWxhdGlvbiBCZWlzcGllbGVcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbXVjb2x5dGljcy5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiA8YT5NdWNvbHl0aWNzIGhlbHAgdGhpbiBhbmQgbG9vc2VuIHRoZSBtdWN1cyBpbiB0aGUgbHVuZ3MsIG1ha2luZyBpdCBlYXNpZXIgdG8gY291Z2ggdXAgYW5kIGNsZWFyIHRoZSBhaXJ3YXlzLiBUaGVzZSB0aGVyYXBpZXMgYXJlIHR5cGljYWxseSBhZG1pbmlzdGVyZWQgdmlhIHdldCBvciBkcnkgaW5oYWxhdGlvbiwgcHJvdmlkaW5nIGRpcmVjdCBkZWxpdmVyeSB0byB0aGUgbHVuZ3MuIEluIHRoZSBjYXNlIG9mIHdldCBpbmhhbGF0aW9uLCB0aGUgbWVkaWNhdGlvbiBpcyBpbmhhbGVkIGFzIGFuIGFxdWVvdXMgc29sdXRpb24gYW5kIG5lYnVsaXplZCwgd2hpbGUgaW4gdGhlIGNhc2Ugb2YgZHJ5IGluaGFsYXRpb24sIHRoZSBtZWRpY2F0aW9uIGlzIGluaGFsZWQgYXMgYSBwb3dkZXIuIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+IEtleSBUaGVyYXBpZXMgaW5jbHVkZSBtYW5uaXRvbCwgUHVsbW96eW1lXHUwMEFFIGFuZCBoeXBlcnRvbmljIHNhbGluZS48L2E+LFxuICAgICAgICBleGFtcGxlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIlB1bG1venltZVwiLCAvL3F1ZWxsZSA4XG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IERvcm5hc2UgYWxmYSBhcyBtdWNvbHl0aWMgZW56eW1lXCIsXCJJbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgNSB5ZWFycyBhbmQgb2xkZXJcIixcIk1lY2hhbmlzbTogYnJlYWtzIHVwIGFuZCB0aGlucyBtdWN1cyB2aWEgRE5hc2UgYWN0aXZpdHlcIixcIkFkbWluaXN0cmF0aW9uOiBJbmhhbGF0aW9uIHZpYSBuZWJ1bGl6ZXIsIG9uY2Ugb3IgdHdpY2UgZGFpbHlcIixcIkFwcHJvdmFsOiBBcHByb3ZlZCBieSB0aGUgRkRBIGluIDE5OTMgWzldXCJdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIkh5cGVydG9uaWMgc2FsaW5lXCIsLy9xdWVsbGUgMTBcbiAgICAgICAgICAgICAgICB0ZXh0OiBbXCJBY3RpdmUgaW5ncmVkaWVudChzKTogT3Ntb3RpYyBhZ2VudCBzb2RpdW0gY2hsb3JpZGUgKDMlLCAzLjUlLCA3JSlcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCA2IHllYXJzIGFuZCBvbGRlclwiLFwiTWVjaGFuaXNtOiBEcmF3cyB3YXRlciBpbnRvIHRoZSBhaXJ3YXlzLCBoeWRyYXRpbmcgdGhlIG11Y3VzIGFuZCBpbXByb3ZpbmcgY2xlYXJhbmNlXCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiB2aWEgbmVidWxpemVyLCB1c2VkIHR3aWNlIGRhaWx5XCIsXCJBcHByb3ZhbDogbm8gb2ZmaWNpYWwgYXBwcm92YWwgYnkgRU1BIG9yIEZEQSBhdmFpbGFibGUsIGJ1dCB3aWRlbHkgdXNlZCBmb3Igc2V2ZXJhbCBkZWNhZGVzIFsxMV1cIixcIlByaWNlOiBsb3ctY29zdCBbMTFdXCJdXG4gICAgICAgICAgICB9LFxuICAgICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6IFwiQW50aWJpb3RpY3NcIiwgLy9naWJ0IDIgQUIgQmVpc3BpZWxlIFxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9hbnRpYmlvdGljcy5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiBcIkFudGliaW90aWNzIGFyZSBjcnVjaWFsIGZvciB0cmVhdGluZyBiYWN0ZXJpYWwgaW5mZWN0aW9ucyBpbiBDRiBwYXRpZW50cyBzaW5jZSB0aGUgbXVjdXMgc2VydmVzIGFzIGFuIG9wdGltYWwgZW52aXJvbm1lbnQgZm9yIHBhdGhvZ2Vucy4gQSBodWdlIHZhcmlldHkgb2YgYW50aWJpb3RpY3MgY2FuIGJlIGluaGFsZWQsIG9yYWwsIG9yIGludHJhdmVub3VzLCBkZXBlbmRpbmcgb24gdGhlIHNldmVyaXR5IGFuZCBraW5kIG9mIHRoZSBpbmZlY3Rpb24gWzEyXS4gQ29tbWVyY2lhbGx5IGF2YWlsYWJsZSBtZWRpY2F0aW9ucyBpbmNsdWRlIFRPQklcdTAwQUUgYW5kIENBWVNUT05cdTAwQUUuIEEgbWFqb3IgcHJvYmxlbSBhc3NvY2lhdGVkIHdpdGggdGhlIGFwcGxpY2F0aW9uIG9mIGFudGliaW90aWNzIGlzIHRoZSBmYWN0IHRoYXQgbG9uZy10ZXJtIHVzZSBjYW4gbGVhZCB0byBhbnRpYmlvdGljIHJlc2lzdGFuY2UgYW5kIHBvdGVudGlhbCBzaWRlIGVmZmVjdHMgbGlrZSBraWRuZXkgZGFtYWdlIGFuZCBoZWFyaW5nIGxvc3MgWzEyXS5cIixcbiAgICAgICAgZXhhbXBsZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJUT0JJXCIsIC8vcXVlbGxlIDEzICsgUHNldWRvIG11c3Mga3Vyc2l2XG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IFRvYnJhbXljaW5cIiw8PkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCA2IHllYXJzIGFuZCBvbGRlciB3aXRoIDxpPiBQc2V1ZG9tb25hcyBhZXJ1Z2lub3NhIDwvaT4gaW5mZWN0aW9ucyA8Lz4sXCJNZWNoYW5pc206IEFtaW5vZ2x5Y29zaWRlIGFudGliaW90aWMgZGlzcnVwdHMgYmFjdGVyaWFsIHByb3RlaW4gc3ludGhlc2lzLCBsZWFkaW5nIHRvIHRoZSBkZWF0aCBvZiB0aGUgcGF0aG9nZW5cIixcIkFkbWluaXN0cmF0aW9uOiBJbmhhbGF0aW9uIG9mIGFudGliaW90aWMgdmlhIG5lYnVsaXplciwgdHlwaWNhbGx5IHRha2VuIHR3aWNlIGRhaWx5IGluIDI4LWRheSBjeWNsZXNcIixcIkFwcHJvdmFsOiBBcHByb3ZlZCBieSB0aGUgRU1BIGluIDIwMTEgWzE0XVwiXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJDQVlTVE9OXCIsIC8vcXVlbGxlIDE1ICsgUHNldWRvIG11c3Mga3Vyc2l2XG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IEF6dHJlb25hbVwiLDw+SW5kaWNhdGlvbnM6IEZvciBDRiBwYXRpZW50cyBhZ2VkIDYgeWVhcnMgYW5kIG9sZGVyIHdpdGggPGk+IFBzZXVkb21vbmFzIGFlcnVnaW5vc2EgPC9pPiBpbmZlY3Rpb25zIDwvPixcIk1lY2hhbmlzbTogQmV0YS1MYWN0YW0gYW50aWJpb3RpYyBkaXNydXB0cyBiYWN0ZXJpYWwgY2VsbCB3YWxsIHN5bnRoZXNpcywgbGVhZGluZyB0byB0aGUgZGVhdGggb2YgdGhlIHBhdGhvZ2VuXCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiB2aWEgbmVidWxpemVyLCB0YWtlbiB0aHJlZSB0aW1lcyBkYWlseSBpbiAyOC1kYXkgY3ljbGVzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEVNQSBpbiAyMDA5XCJdXG4gICAgICAgICAgICB9LFxuICAgICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6IFwiRGlnZXN0aXZlIGVuenltZXMgYW5kIGRpZXRcIiwgLy9laW4gYmVpc3BpZWxcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvZGlldC5zdmdcIixcbiAgICAgICAgaW50cm9kdWN0aW9uOiA8YT4gVGhlIGRpZ2VzdGl2ZSBwcm9jZXNzIGlzIGltcGFpcmVkIGluIDgwJSBvZiBwYXRpZW50cyB3aXRoIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLCBhcyBhIHJlc3VsdCBvZiBwYW5jcmVhdGljIGluc3VmZmljaWVuY3ksIHdoaWNoIGluIHR1cm4gbGVhZHMgdG8gZGlmZmljdWx0aWVzIGluIGRpZ2VzdGluZyBmb29kIGFuZCBhYnNvcmJpbmcgbnV0cmllbnRzLiBFbnp5bWUgc3VwcGxlbWVudHMgbGlrZSBDcmVvblx1MDBBRSBhcmUgdGhlcmVmb3JlIGVzc2VudGlhbCBbMTZdLiBNb3Jlb3ZlciBDRiBwYXRpZW50cyBhcmUgYWxzbyBhZHZpc2VkIHRvIGVhdCBhIGJhbGFuY2VkIGFuZCBlbmVyZ3ktcmljaCBkaWV0LCBhcyB0aGUgaW5jcmVhc2VkIHdvcmsgb2YgYnJlYXRoaW5nIGFuZCBpbmNyZWFzZWQgY291Z2hpbmcsIGFzIHdlbGwgYXMgaW5mZWN0aW9ucywgZmV2ZXIgYW5kIGRpYXJyaG9lYSwgY29uc3VtZSBtb3JlIGVuZXJneSB0aGFuIGEgaGVhbHRoeSBwZXJzb24uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+IEl0IGlzIGFsc28gYW4gb3B0aW9uIGZvciBwYXRpZW50cyB0byB1c2UgbnV0cml0aW9uYWwgc3VwcGxlbWVudHMuIEVsZWN0cm9seXRlIHByZXBhcmF0aW9ucyBhcmUgYWxzbyB1c2VkIGluIHRoaXMgY29udGV4dCB0byBjb21wZW5zYXRlIGZvciB0aGUgaW5jcmVhc2VkIG5lZWQgZm9yIGZsdWlkcyBhbmQgdGhlIHJlcXVpcmVkIHNhbHRzLjwvYT4sXG4gICAgICAgIGV4YW1wbGVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiQ3Jlb25cIiwgLy9xdWVsbGUgMTdcbiAgICAgICAgICAgICAgICB0ZXh0OiBbXCJBY3RpdmUgaW5ncmVkaWVudChzKTogcGFuY3JlYXRpYyBlbnp5bWVzIChsaXBhc2UsIGFteWxhc2UsIHByb3RlYXNlKSBmb3IgZW56eW1lIHJlcGxhY2VtZW50IHRoZXJhcHlcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgd2l0aCBleG9jcmluZSBwYW5jcmVhdGljIGluc3VmZmljaWVuY3lcIixcIk1lY2hhbmlzbTogUHJvdmlkZXMgZGlnZXN0aXZlIGVuenltZXMgKGxpcGFzZSwgcHJvdGVhc2UsIGFteWxhc2UpIHRvIGFpZCBkaWdlc3Rpb25cIixcIkFkbWluaXN0cmF0aW9uOiBPcmFsIGNhcHN1bGVzLCB0YWtlbiB3aXRoIG1lYWxzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEZEQSBpbiAyMDA5XCJdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXG4gICAgICAgIF1cbiAgICB9XG5dIiwgImltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiAgU1ZHKCl7XG4gICAgY29uc3QgeyBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgLyogLCBnb1RvVGV4dHNBbmRPcGVuQ29sbGFwc2libGUgKi8gfSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgICByZXR1cm4oXG4gICAgICAgIDxzdmdcbiAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMDAwIDUwMFwiXG4gICAgICAgICAgIG92ZXJmbG93PVwiaGlkZGVuXCJcbiAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXG4gICAgICAgICAgIGlkPVwic3ZnMzY3XCJcbiAgICAgICAgICAgaW5rc2NhcGU6ZXhwb3J0LXlkcGk9XCI5LjU5NTU1MjRcIlxuICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgIDxkZWZzXG4gICAgICAgICAgICAgaWQ9XCJkZWZzMVwiPjxjbGlwUGF0aFxuICAgICAgICAgICAgICAgaWQ9XCJjbGlwMFwiPjxyZWN0XG4gICAgICAgICAgICAgICAgIHg9XCItMTUzN1wiXG4gICAgICAgICAgICAgICAgIHk9XCI2NDY3XCJcbiAgICAgICAgICAgICAgICAgd2lkdGg9XCIxOTY1OFwiXG4gICAgICAgICAgICAgICAgIGhlaWdodD1cIjY1MjBcIlxuICAgICAgICAgICAgICAgICBpZD1cInJlY3QxXCIgLz48L2NsaXBQYXRoPjwvZGVmcz48Z1xuICAgICAgICAgICAgIGNsaXBQYXRoPVwidXJsKCNjbGlwMClcIlxuICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjA1OTM4ODA3LDAsMCwwLjA1OTM4ODA3LC0xMTIuNDUwMTgsLTM4NC4wNjI2NSlcIlxuICAgICAgICAgICAgIGlkPVwiZzM2N1wiPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyOTY1LjgzLDgzODcuNzMgYyAxNDQuMywyMjQuMTkgMjg4LjU5LDQ0OC4zNyAzMDUuNjYsNTY5LjggMTcuMDcsMTIxLjQzIC05My4wOCwxNDAuMSAtMjAzLjI0LDE1OC43OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjRjYzFlXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNzMuMzMzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM1NDUuMDEsODQ5MC4zIGMgMjk4LjY5LDQ2NC4wNSA1OTcuMzgsOTI4LjExIDYzMi43MSwxMTc5LjQ2IDM1LjMzLDI1MS4zNiAtMTkyLjY5LDI5MC4wMSAtNDIwLjcxLDMyOC42NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjRjYzFlXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNzMuMzMzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI0MjkuMjgsNzA5My45NyBjIC05MC4zNiwxMDguODEgLTI4MS4yMSwtOC4wNiAtMzYyLjE2LDk2LjczIC04MC45NCwxMDQuOCAtNzkuOTgsMjIwLjQgLTIzLjY1LDMzMS41MyA0MC4yNCw3OS40IC0xODMuMzIsNDkuOTUgLTkuNzIsMjAxLjQ5IDE2My4xNywxNDIuNDQgLTk0LjgyLDIxNy4xIC0xMDUuNTgsMzA0LjMxIC0xMC43Nyw4Ny4yIDQ0LjU3LDEyOS4yIDQwLjk3LDIxOC45MSAtMy42LDg5LjcyIC04OS45MiwyMzkuMDMgLTYyLjU2LDMxOS4zOSAyNy4zNiw4MC4zNiA4Mi4wMiw4OC40NyAxNjAuMTcsMTc3LjU5IDc4LjE0LDg5LjEyIDIyMy42MSw0MDkuNzYgMzA4LjcxLDM1Ny4xMiA4NS4xMSwtNTIuNjQgNDkuNDksLTIwNC43MSAxNjMuNjUsLTI1Mi4yOSAxMTQuMTYsLTQ3LjU4IDIxMC40MSwtMTQxLjYxIDM1OS4xOSwtMTExLjI5IDE3Ny40NywzNi4xNiA0NDMuNTMsODcuNyA1NDkuNyw0OS4yNSAxMDYuMTgsLTM4LjQ1IDE2Mi4yLC0xNDYuNzYgMjQ5LjQ4LC0yMDEuODQgODcuMjksLTU1LjA5IDIwMC44NiwtOTMuMzEgMjc0LjI1LC0xMjguNjcgNzMuMzksLTM1LjM1IDk3LjIzLC0yNi4zIDE2Ni4wOSwtODMuNDggNjguODUsLTU3LjE3IDIwNy45OCwtMTc4LjUxIDI0Ny4wMywtMjU5LjU3IDM5LjA2LC04MS4wNiAxNi4xNywtMTY0LjE2IC0xMi43MSwtMjI2Ljc4IC0yOC44NywtNjIuNjMgLTU3LjAxLC0xODUuMTYgLTExMS43NiwtMjI2LjIyIC01NC43NSwtNDEuMDYgLTEyNC41MywtMy44IC0yMTYuNzMsLTIwLjEzIC05Mi4yMSwtMTYuMzMgLTk4LjMxLC04MC4zNiAtMzM2LjUsLTc3Ljg1IC05My4yNywwLjk5IC00Ni4yMiwxOTcuMDEgLTIyMy4xNSw3Ny41MSAtMjQ5LjgsLTE2OC43MiAtNTQuOTUsLTI0MC4yOCAtOTIuOTYsLTMxNS4wNCAtMzguMDEsLTc0Ljc2IC05Mi43OCwtODQuNTggLTEzNS4xLC0xMzMuNTIgLTQyLjMyLC00OC45NSAtNjQuNDgsLTEzMi4zNCAtMTE4LjgyLC0xNjAuMTQgLTU0LjM0LC0yNy44MSAtMTM3LjQyLDkuOTggLTIwNy4yMSwtNi42OCAtNjkuNzgsLTE2LjY2IC0yMjAuNTUsLTUwLjEzIC0zMDAuODEsLTc4LjI1IC01My42NCwtMzUuMzcgLTQ1LjQ5LC0xNjMuODMgLTE4MC43NCwtOTAuNDQgLTgxLjQxLDQ0LjE4IDMyLjU5LDE2Ny4wMSAtMTkuMDgsMjM4LjM2IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNiYjk5MDlcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyODIyLjU0LDc1OTkuODYgYyAtMjUuOTYsLTguMTUgLTg0LjAxLC01LjgxIC0xMDEuNDksMjUuNDIgLTE3LjQ4LDMxLjI0IC0xNC44NywxMTUuNjkgLTMuMzcsMTYyIDExLjUsNDYuMzEgNTYuODMsODQuMTQgNzIuMzcsMTE1Ljg2IDE1LjU0LDMxLjcxIDMxLjc1LDU2LjM1IDIwLjg3LDc0LjQyIC0xMC44OCwxOC4wNiAtNTIuNjcsMzQuMzcgLTg2LjE0LDMzLjk3IC0zMy40NiwtMC40IC03OC42NCwtMzcuMzQgLTExNC42NiwtMzYuMzggLTM2LjAyLDAuOTYgLTY0LjE3LDM3LjcgLTEwMS40Nyw0Mi4xMiAtMzcuMjksNC40MSAtOTIuMzksLTMwLjg1IC0xMjIuMywtMTUuNjEgLTI5LjkxLDE1LjIzIC0zMC4xLDg4LjU2IC01Ny4xNSwxMDcuMDIgLTI3LjA0LDE4LjQ3IC04My42MywtMjIuNTcgLTEwNS4xMywzLjc3IC0yMS41LDI2LjM0IC0zLjMsMTI2LjEyIC0yMy44OCwxNTQuMjggLTIwLjU5LDI4LjE3IDEuNTYsMzkuNDggMTUuNjMsNjEuNDIgMTQuMDcsMjEuOTQgMzcuMDcsOTcuODkgNjguNzcsNzAuMjMgMzEuNjksLTI3LjY2IC0xNS42LC04Mi4zNyAtNS42NSwtMTA3LjQyIDkuOTUsLTI1LjA1IDQwLjQzLC0xOS45MSA2NS4zNiwtNDIuODcgMjQuOTMsLTIyLjk2IDQ3LjkzLC04Ny4zOSA4NC4yNCwtOTQuODggMzYuMzEsLTcuNSAxMzMuNjQsNDkuODggMTMzLjY0LDQ5Ljg4IDQ3LjQsMTcuMDggMTE0LjM3LDM5LjkzIDE1MC43OSw1Mi41NyAzNi40MSwxMi42NSA0NS42OCwzOC42IDY3LjcsMjMuMyAyMi4wMSwtMTUuMyAzNi43MiwtOTQuNDYgNjQuMzcsLTExNS4wOSAyNy42NSwtMjAuNjQgOTAuODMsMTEuNjEgMTAxLjUxLC04LjczIDEwLjY4LC0yMC4zNCAtNTkuMDQsLTcxLjggLTM3LjQzLC0xMTMuMzMgMjEuNjIsLTQxLjUyIDY0LjM5LC0zMy42IDkyLjI1LC00MC42MiAyNy44NiwtNy4wMSA1MC40OSwxOC44OCA3NC45LC0xLjQ3IDI0LjQxLC0yMC4zNCA0My43LC0xMDEuNTEgNzEuNTcsLTEyMC41OCAyNy44NywtMTkuMDcgNzYuMDcsNDAuMzYgOTUuNjcsNi4xNyAxOS42LC0zNC4xOCAtOC4zMSwtNzQuMjEgLTQ4Ljg3LC05MS45NyAtNDAuNTYsLTE3Ljc3IC0xNDEuNTMsNS4yNSAtMTk0LjUsLTE0LjYgLTUyLjk4LC0xOS44NSAtOTMuNzQsLTc0LjY5IC0xMjMuMzQsLTEwNC41IC0yOS42LC0yOS44MiAtMjguMywtNjYuMjIgLTU0LjI2LC03NC4zOCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjM1My45Miw4OTUwLjY0IGMgLTI3LjU5LC0zNi40MSA3MS4xLC04OS42NiA4OS4yNiwtMTI5LjEzIDE4LjE2LC0zOS40NyAxMy42OSwtNzEuNDEgMTkuNzEsLTEwNy42NyA2LjAyLC0zNi4yNyAtNDIuMSwtODguNzQgMTYuNDEsLTEwOS45MyA1OC41LC0yMS4yIDExMC4zLDM1LjI1IDE1MS4xOSwyMS44OCA0MC44OSwtMTMuMzcgNTYuNTcsLTg4LjM3IDk0LjE2LC0xMDIuMTIgMzcuNTgsLTEzLjc0IDExMS44MywzIDEzMS4zMywxOS42NiAxOS41LDE2LjY3IDQuNjIsNTAuNzUgLTE0LjMyLDgwLjM0IC0xOC45MywyOS41OSAtNjIuOTQsNzUuNzYgLTk5LjI5LDk3LjE4IC0zNi4zNSwyMS40MiAtOTQuMjYsMTYuMDUgLTExOC44LDMxLjM1IC0yNC41NCwxNS4zIC00LjQ5LDM3LjQgLTI4LjQ1LDYwLjQ1IC0yMy45NSwyMy4wNSAtMTE4LjkyLDU5IC0xNDcuNDMsODMuMjUgLTI4LjUxLDI0LjI1IC02Ny44Niw4OC45MyAtOTMuNzcsNTQuNzQgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM5MDMsODEzMi40MyBjIC0zOC43OCw3LjEyIC04Mi41MiwzNi44OSAtMTE2LjYsMzAuNTEgLTM0LjA4LC02LjM4IC04Mi4yLC00Ny42NSAtODcuODgsLTY4LjggLTUuNjgsLTIxLjE1IC0xLjIyLC02MS4yNiA1My44MiwtNTguMSA1NS4wMywzLjE2IDkzLjAzLC0yOC4zNyAxMzQuODIsLTUxLjc1IDQxLjgsLTIzLjM4IDgyLjg0LC04Ny4yMSAxMTUuOTMsLTg4LjU0IDMzLjA4LC0xLjMyIDU3LjI4LDU5LjcxIDgyLjU5LDgwLjU5IDI1LjMxLDIwLjg3IDUyLjI2LDE3LjI1IDY5LjI5LDQ0LjY2IDE3LjAyLDI3LjQyIDEzLjI5LDkzLjQ2IDMyLjg3LDExOS44NCAxOS41OCwyNi4zOCA3OC4wNCwxOS4yNyA4NC41OSwzOC40NiA2LjU2LDE5LjE4IC0xOS44NSw1NC44MSAtNDUuMjQsNzYuNjUgLTI1LjQsMjEuODMgLTgwLjkzLDQ4LjEzIC0xMDcuMTQsNTQuMzYgLTI2LjIsNi4yMiAtNDEuNjcsMi40NiAtNTAuMSwtMTcuMDEgLTguNDIsLTE5LjQ4IDguMDUsLTcxIC0wLjQ0LC05OS44NiAtOC40OSwtMjguODUgLTIyLjczLC02My4wOSAtNTAuNDgsLTczLjI2IC0yNy43NSwtMTAuMTcgLTc3LjI2LDUuMTIgLTExNi4wMywxMi4yNSB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzMxNC40MSw4NDc4LjUyIGMgLTQzLjE2LC02LjM3IC0xMDEuNjIsLTg4LjczIC0xMzcuMDYsLTU4LjcxIC0zMy4xMSwyOC4wNiA1NS40Nyw5MC4zIDQyLjAxLDEyMC4xMiAtMTMuNDYsMjkuODIgLTkyLjM4LDM5LjQ2IC0xMjIuNzQsNTguNzkgLTMwLjM2LDE5LjM0IC03Mi43NSwzMy43NCAtNTkuNDEsNTcuMjQgMTMuMzMsMjMuNDkgODYuMTUsNjcuNTcgMTM5LjQ0LDgzLjc0IDUzLjI5LDE2LjE3IDExNi4yOCwxNy45OSAxODAuMjksMTMuMjggNjQuMDEsLTQuNzEgMTUyLjkyLDAuMDEgMjAzLjc3LC00MS41NCA1MC44NCwtNDEuNTYgMjcuOTMsLTE5OS40MSAxMDEuMzEsLTIwNy44MSA3My4zOCwtOC40MSAyMzMuMjEsLTgwLjcxIDIwNC4yMywtMTI1LjIgLTI4Ljk4LC00NC40OCAtMTg1LjQzLDI0LjUzIC0yNDUuMzYsLTAuNTIgLTU5LjkzLC0yNS4wNCAtMTMzLjQ5LDYzLjMzIC0xODQuNTcsODAuMSAtNTEuMDgsMTYuNzcgLTc4Ljc1LDI2Ljg3IC0xMjEuOTEsMjAuNTEgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM3NzEuOTksNzc4NS42NCBjIC0xNS43NSwzLjU2IC00MS41OCwzMy42NCAtMzcuOTMsNDQuNTMgMy42NSwxMC45IDQ0LjA3LDI0LjM5IDU5LjgzLDIwLjgzIDE1Ljc1LC0zLjU2IDM4Ljg4LC0zMS42OCAzNC42OSwtNDIuMTggLTQuMTksLTEwLjQ5IC00MC44MywtMjYuNzQgLTU2LjU5LC0yMy4xOCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzM4NS44Nyw4MDM2LjcyIGMgLTI2LjUsMjkuOTcgLTQ5LjI5LDI2Ljg0IC01MC45Miw0NC43NCAtMS42MywxNy45IDE0LjUxLDUwLjQ0IDQxLjE1LDYyLjY2IDI2LjY0LDEyLjIyIDg5LjIyLDE0LjY4IDExOC42OSwxMC42NSAyOS40OCwtNC4wMyA0OS4zMSwtMTguNDkgNTguMTYsLTM0LjgzIDguODUsLTE2LjMzIC05LjA4LC0zNC42NSAtNS4wNiwtNjMuMTYgNC4wMiwtMjguNTEgMjguNDYsLTgxLjc5IDI5LjE3LC0xMDcuODkgMC43MSwtMjYuMSAtMTEuMDQsLTQwLjgyIC0yNC44OSwtNDguNjkgLTEzLjg1LC03Ljg4IC0zMC4wNCwtMjEuMzkgLTU4LjIxLDEuNDQgLTI4LjE2LDIyLjgzIC04MS41OSwxMDUuMSAtMTA4LjA5LDEzNS4wOCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzA3NS4zMyw3MzY1LjMgYyAtMjMuODksMTUuMTUgLTEyLjQ1LDc3LjcgLTM5LjU3LDk1LjcyIC0yNy4xMiwxOC4wMSAtMTAzLjcsMS4yMSAtMTIzLjE2LDEyLjM3IC0xOS40NywxMS4xNSAtMjEuOTcsNDMuMTIgNi4zOSw1NC41OCAyOC4zNywxMS40NyAxMjEuODMsLTEgMTYzLjgyLDE0LjIgNDEuOTksMTUuMiA1Ni41MSw2OC40MyA4OC4xMSw3Ny4wMyAzMS41OSw4LjYgOTMuMDMsMS41MSAxMDEuNDgsLTI1LjQyIDguNDYsLTI2Ljk0IC0zNS4xOSwtOTguOTIgLTUwLjc0LC0xMzYuMiAtMTUuNTQsLTM3LjI4IC0xOC4xNSwtNzIuMDkgLTQyLjU0LC04Ny40NyAtMjQuMzksLTE1LjM4IC03OS45LC0xOS45NiAtMTAzLjc5LC00LjgxIHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDMzNi4zOSwxMDYyMyBjIC0yMy42LC05IC01Ni40NCwtOCAtODUuNzgsLTEuOCAtNDYuOTQsOS44IC0xMDUuMTMsNjggLTE2Ni4xMSw4OSAtNjAuOTgsMjEuMSAtMTU3Ljc5LC0wLjggLTE5OS43NywzNy4zIC00MS45OCwzOC4yIC0xMTAuMywxNDUuMSAtNTIuMTEsMTkxLjcgMTQuODQsMTEuOSA4OC4zMywtMTA1LjUgMTMxLjk3LC0xMTAuMiA0My42NCwtNC43IDY1Ljk2LDEwLjUgMTI5Ljg2LDgxLjkgNjMuOTEsNzEuMyA5OS43Miw0Mi4zIDEzOS42NSw0Ny4xIDM5LjkyLDQuNyA3My43MywtNy43IDk5Ljg4LC0xOC43IDI2LjE2LC0xMC45IDU4LjI2LC0zMC41IDU3LjA0LC00NyA1LjM0LC0zMy4zIC02MC4xOSwtMTIuMSAtNjQuMzQsLTUyLjMgLTQuMTUsLTQwLjIgNTIuMTQsLTE1Mi40IDM5LjQ2LC0xODguOSAtNC43NSwtMTMuNyAtMTUuNTksLTIyLjcgLTI5Ljc1LC0yOC4xIHogbSAyMTYuMDUsLTkwNy4xMiBjIDQ2LjM3LDE4LjAzIDk4LjAzLDQzLjA4IDEyNS4xMyw1Ni40OSA0My4zNiwyMS40NiA0Ny4yOCwyOC4yIDYzLjcyLDUxLjQyIDE2LjQ0LDIzLjIyIDI2LjIxLDQzLjU5IDM0LjkyLDg3LjkyIDguNzIsNDQuMzIgMjQuNDcsMTM1Ljc5IDE3LjM5LDE3Ny45OSAtNy4wOCw0Mi4zIC0yOS4wMywzNC44IC02NC43LDQ1LjEgLTM1LjY3LDEwLjQgLTIwLjIsNzYuMSAyLjc4LDExNi45IDIyLjk4LDQwLjggODguMDksMTM5LjQgMTM1LjEsMTI3LjkgNDcsLTExLjQgLTE1LjAzLC0xMTEuMyA3LjMsLTEzNS43IDIyLjM0LC0yNC40IDkxLjk0LC0yOC4zIDEyNi43MywtMTAuNyAzNC43OCwxNy42IDY2LDc0LjkgODEuOTgsMTE2LjEgMTUuOTgsNDEuMyAtNTAuNjEsMTE2LjEgMTMuODksMTMxLjQgNDEuMDksOS43IDQ5LjY2LDc5IDYyLjUxLDExMC4xIDEyLjg0LDMxLjEgMTUuNjcsMzcuOCAxNC41Niw3Ni4yIC0wLjg1LDI5LjQgNzMuMjcsNTEuNyA2OC44Myw3OS4xIC00LjQ0LDI3LjMgLTMyLjQ0LDYxLjkgLTk1LjQ5LDg1IC02My4wNiwyMy4xIC00Mi41LDE1MS43IC00NS4wNCwyMTcuMyAtMi41Myw2NS42IDMwLjY1LDEyNi41IDI5Ljg2LDE3Ni4yIC0wLjgsNDkuOCAtNTEuNDgsNzkuMSAtMzQuNjIsMTIyLjQgNi42NCwyNC40IDUwLjA3LDI1IDcwLjg1LDU0LjcgMjAuNzksMjkuNyA0Mi44OCw4NC4yIDUzLjg5LDEyMy41IDExLjAxLDM5LjMgMy45Nyw4Ny4yIDEyLjE4LDExMi4yIDguMjEsMjUuMSA0Mi43LDQyIDgxLjgxLDY3LjQgMzEuMTIsNDUuOCA3Mi41NCwxNDcuNyAxMDQuOTEsMjA3LjQgMzIuMzcsNTkuNyAtMzAuODEsMTM5LjMgNjUuNDgsMTY2LjcgOTYuMjgsMjcuMyA4Mi4wMSw0Mi4yIDg5LjY4LDcyLjkgNy42NywzMC43IC0xLjAyLDkwLjMgLTQzLjY4LDExMS4zIC00Mi42NiwyMSAtMTQ5LjgxLC00LjMgLTIxMi4yOSwxNC44IC02Mi40NywxOS4yIC0xMDkuOSwxMTIuMiAtMTYyLjU2LDk5LjkgLTUyLjY3LC0xMi4zIC03My4zOSwtMjM1LjMgLTE1My40NCwtMTczLjYgLTgwLjA0LDYxLjggLTIyNS41NCw3MC4zIC0yMzYuMjgsNS41IC00NC44MSwtMjcwLjcgLTEzNi42OSwtNjcuMSAtMTU3Ljk5LC0xLjYgLTMyLjU4LDEwMC4xIC0xNzAuNjcsNzkuOCAtMjM5LjA2LDExNS4xIC02OC40LDM1LjIgLTExNi4yMiwxMDAuNCAtMTcxLjMsOTYuNCAtNTUuMDgsLTQgLTEyOS4zOCwtMjAwLjYgLTE1OS4xOCwtMTIwLjQgLTMwLjYxLDgyLjMgLTcxLjksNTQuOCAtMTI0Ljk1LDYxLjcgLTc3LjMyLDAuMyAtOC4wOSwxMDMuMSAtMTc5Ljc5LDYwLjMgLTEzNC45MSwtMzMuNiAyNC45NSwtMTM2LjIgLTc5LjY1LC0xMzcgLTEwNC42LC0wLjggLTEwMi4yMSwtNTguMSAtMTIxLjI0LC0xMDggLTE5LjAzLC00OS45IDQ4LjE3LC0xNTYuOSA3LjA1LC0xOTEuMSAtNDEuMTMsLTM0LjIgLTIwOS4wMiwxNi4xIC0yNTMuODIsLTE0IC00NC44LC0zMC4yIDAuOTEsLTEzMC42IC0xNC45OSwtMTY3LjEgLTE1LjkxLC0zNi40IC01MS45LC02Mi4zIC04MC40MSwtNTEuNyAtMjguNTEsMTAuNiAtMjQuMSw4OS4yIC05MC42NiwxMTUuNSAtNjYuNTYsMjYuMyAtMjQzLjk0LDY2LjYgLTMwOC43Myw0Mi40IC02NC43OCwtMjQuMSAxNTAuNzYsLTIxNi40IC03OS45NywtMTg3LjUgLTE2Ny44MiwyMS4xIC0xMDEuMTMsLTE0OS42IC0xODAuNTMsLTEyMy43IC03OS40MSwyNS45IC04NS4yLC01Mi4zIC0xMzguOTIsLTgyLjIgLTUzLjcyLC0yOS45IC0xNTAuNDUsLTU4LjMgLTE4My40MSwtOTcuMiAtMzIuOTYsLTM5IDI5Ljk5LC0xMjIuMyAtMTQuMzcsLTEzNi42IC01OC44NywtMTguOSAtMTAwLjc4LC01MCAtMTQxLjE4LC05NS43IC00MC40LC00NS43IC0xMy4yOCwtMTcxLjQgLTEwMS4yNCwtMTc4LjIgLTg3Ljk1LC02LjkgLTU4LjY3LC0xNDUuNiAtMzkuNTQsLTE5NC4zIDE5LjEzLC00OC43IDgzLjI1LC05NC41IDE1NC4zMSwtOTguMSA3MS4wNiwtMy41IDIwOC44OSwxMTEuNCAyNzIuMDYsNzYuNiA2My4xNywtMzQuNyAxMDcuNDYsLTIxNyAxMDYuOTgsLTI4NS4zIC0wLjQ5LC02OC4zIC04Ny4yOCwtNzEgLTEwOS44OCwtMTI0LjUgLTIyLjYsLTUzLjQgLTQzLjYsLTE0Ny43IC0yNS43MiwtMTk2IDE3Ljg3LC00OC4zIDg2LjQzLC00NS43IDEzMi45NywtOTMuNyA0Ni41MywtNDguMSAtNi4zOCwtNDUuNCA1LjE2LC0xMzEuNTggMTEuNTMsLTg2LjE1IDg3LjQ2LC03My4xMyAxMjMuMjgsLTk4LjggMzUuODIsLTI1LjY2IDU5Ljk5LC0xMy4wNiA5MS42MywtNTUuMTkgMzEuNjUsLTQyLjEzIDE5Ljg3LC00MS4zNiA2My4xLC00OS44NiA0My4yMiwtOC41IDE2Ny4wNywxLjM5IDE5Ni4yNSwtMS4xNCAyOS4xNywtMi41MyA4MC4zMSwtODUuNSAxMTkuNTQsLTgwLjkxIDM5LjIzLDQuNTkgNzkuODYsMzkuNjIgMTA4LjcxLDI5LjMyIDI4Ljg1LC0xMC4zIDI5LjI5LC03Ny44NyA2NS41MiwtNjkuNjkgMzYuMjIsOC4xOCA3My4zLDcwLjY4IDExMS4xOSw1Ny4wMSAzNy44OSwtMTMuNjYgNjAuNjIsLTY1LjI4IDEwMC42NywtODAuMjEgNDAuMDUsLTE0LjkzIDU1LjI2LC00Ljg5IDEzOS42MywtOS4zNyA4NC4zNywtNC40OSA1NC44MSw5Mi41IDk0LjE4LDkzLjA1IDM5LjM4LDAuNTYgLTEuNTMsLTc4LjI4IDI2LjA5LC04OC45OCAyNy42MiwtMTAuNyAxMDEuNzUsLTM1LjU5IDEzOS42NCwyNC43NyAzNy44OSw2MC4zNSAtMjEuMTIsNzEuNDUgMjEuMDQsMTI4IDQyLjE2LDU2LjU0IDE2Ni42Niw4NS41IDE5OC44OCwxMDAuOTggMzIuMjIsMTUuNDcgOS4yNCwtNzYuNTcgNjcuMTEsLTk1Ljk5IDU3Ljg3LC0xOS40MyAyMTkuMywtOC44OSAyODAuMSwtMjAuNTkgNjAuODEsLTExLjY5IDM3Ljg2LC01NC4yMSA4NC43MiwtNDkuNTggMTcuNTgsMS43MyA0My41LDEwLjAyIDcxLjMyLDIwLjg0IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzk1NC41LDEwNzIyLjEgYyAtMjIuMDcsLTMuNiAtMzYuMzQsLTMzLjYgLTEyLjY0LC03MC40IDIzLjcsLTM2LjkgOTAuOTQsLTExNi4yIDE1NC44NCwtMTUwLjcgNjMuOSwtMzQuNSAxNjcuODgsLTE3LjIgMjI4LjU2LC01Ni4zIDYwLjY4LC0zOS4xIDg3LjYyLC0xMTQuMiAxMzUuNTIsLTE3OC41IDQ3LjksLTY0LjIgMTExLjIxLC0xNjcuOCAxNTEuODcsLTIwNy4yIDQwLjY2LC0zOS40IDkyLjQzLC02NC40NCA5Mi4wNywtMjkuMyAtMC4zNSwzNS4xIC03MC41NywxNzEuMiAtOTQuMjEsMjM5LjkgLTIzLjY0LDY4LjggLTI0LjU5LDEyNC43IC00Ny42NCwxNzIuNyAtMjMuMDUsNDggLTU1LjIxLDEwMCAtOTAuNjUsMTE1LjUgLTM1LjQ1LDE1LjQgLTEwNC4yMiwtMzEuNyAtMTIyLjAxLC0yMi44IC0xNy43OCw5IDQ1LjIzLDYyLjMgMTUuMjksNzYuNSAtMjkuOTQsMTQuMyAtMTQ2LjM4LC0xLjIgLTE5NC45Miw5LjEgLTQ4LjUzLDEwLjMgLTU5LjgyLDM3IC05Ni4yNyw1Mi45IC0zNi40NiwxNS45IC05Ny43NCw1Mi4yIC0xMTkuODEsNDguNiB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQyODAuODUsMTExMjIuMSBjIC0yNS4wOSwtMjEuNiAtNTguNjQsLTI4IC05OC40NywtMTguNSAtMzkuODQsOS42IC0xMTYuMiw0NS45IC0xNDAuNTMsNzUuOCAtMjQuMzIsMjkuOSAtMjAuMzksMTAxLjEgLTUuNDMsMTAzLjYgMTQuOTYsMi41IDU5LjU4LC03NC44IDk1LjE4LC04OC41IDM1LjYsLTEzLjcgODQuODcsLTAuMyAxMTguNDIsNi4yIDMzLjU1LDYuNCA3Ny40Nyw0Ni4zIDgyLjksMzIuNSA1LjQyLC0xMy44IC0yNi45OCwtODkuNSAtNTIuMDcsLTExMS4xIHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjkzNy45NCwxMDQ2NCBjIDIwLjUxLC0xMy44IDMxLjc4LC00NC42IDI5LjEyLC03NC4yIC0yLjY1LC0yOS42IC0xNi4wOSwtODkuNCAtNDUuMDUsLTEwMy4zIC0yOC45NiwtMTMuOSAtMTAwLjk2LDAuNyAtMTI4LjY5LDIwIC0yNy43MywxOS4zIC00Ni4xNCw2OC4zIC0zNy42OSw5NiA4LjQ1LDI3LjYgNTguMjYsNTguOSA4OC4zNiw2OS45IDMwLjEsMTEgNzMuNDQsNS40IDkzLjk1LC04LjQgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzOTU4LjExLDExNTU5LjQgYyAxOS4xNCwtMS43IC0xOC40LC04Ny44IC0zNy4yNiwtMTEwLjMgLTE4Ljg2LC0yMi41IC00Ni41NCwtMTguMyAtNzUuODksLTI0LjcgLTI5LjM0LC02LjUgLTc0LjUyLDUuOSAtMTAwLjE4LC0xNC4yIC0yNS42NywtMjAuMSAtMzEuOTEsLTg5LjcgLTUzLjc4LC0xMDYuNyAtMjEuODcsLTE3IC02Mi4wMiwtMTAuOSAtNzcuNDQsNC44IC0xNS40MiwxNS44IC0yMi45NCw2NC45IC0xNS4wOSw4OS44IDcuODUsMjQuOSAzOCw0NC4zIDYyLjE4LDU5LjYgMjQuMTgsMTUuNCA1OC42NywzMi4zIDgyLjksMzIuNiAyNC4yMywwLjMgMjcuMTUsLTQxLjQgNjIuNDcsLTMwLjkgMzUuMzIsMTAuNSAxMzIuOTUsMTAxLjcgMTUyLjA5LDEwMCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM5MzIuMDUsMTIxMDAuNiBjIC0yMy4wNiwtMjYuNCAtNTUuNDgsLTIyLjQgLTc5Ljk2LDcuMiAtMjQuNDgsMjkuNiAtNzEuMjUsMTM0IC02Ni45MSwxNzAuNCA0LjM0LDM2LjUgNTguNzcsNTAuMSA5Mi45OCw0OC4xIDM0LjIxLC0yIDEwMy43NCwtMjMuNSAxMTIuMjksLTYwIDguNTQsLTM2LjUgLTM1LjM0LC0xMzkuMyAtNTguNCwtMTY1LjcgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSA1MjE5LjQ2LDExNzg4LjQgYyAtMjMuOTUsLTkuNCAtOTcuNTEsLTguNyAtMTM3LjcxLDQ2LjIgLTQwLjIxLDU0LjkgLTk4LjU1LDIyOC4xIC0xMDMuNTMsMjgzLjMgLTQuOTgsNTUuMyA0OC45Miw1Ny4yIDczLjY1LDQ4LjIgMjQuNzIsLTguOSA1OS4yNSwtNjQuMSA3NC42OCwtMTAxLjggMTUuNDMsLTM3LjYgMS4zOSwtOTUuMiAxNy44OCwtMTI0LjEgMTYuNDgsLTI4LjkgNjguNTEsLTIzLjkgODEuMDIsLTQ5LjIgMTIuNTEsLTI1LjMgMTcuOTYsLTkzLjIgLTUuOTksLTEwMi42IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzc5Mi43MSwxMDQ2Ny4yIGMgLTI0Ljc1LC0xMy45IC01Ni42MiwtMjguOSAtODcuODcsNS44IC0zMS4yNiwzNC43IC04Mi42NSwxNDIuMSAtOTkuNjgsMjAyLjYgLTE3LjAyLDYwLjQgLTIxLjI4LDE0MS45IC0yLjQ1LDE2MC4yIDE4LjgzLDE4LjMgNzkuMzIsLTI2LjggMTE1LjQ0LC01MC40IDM2LjEyLC0yMy42IDc4LjcyLC01MyAxMDEuMjYsLTkxLjIgMjIuNTMsLTM4LjEgMzkuMzksLTEwMC4zIDMzLjkzLC0xMzcuNyAtNS40NiwtMzcuNCAtMzUuODgsLTc1LjQgLTYwLjYzLC04OS4zIHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDc1NC4xNiwxMTYzNS4zIGMgMzMuNjcsLTE5LjUgMTMxLjk1LC0xMDEgMTM2LjYxLC0xNDIuOCA0LjY3LC00MS44IC03OC43LC0xMDMuMSAtMTA4LjYyLC0xMDguMSAtMjkuOTIsLTUgLTQyLjk0LDY4LjggLTcwLjg4LDc3LjkgLTI3Ljk0LDkuMiAtOTMsLTQ3LjQgLTk2Ljc2LC0yMi44IC0zLjc2LDI0LjUgNTAuNDksMTM2LjQgNzQuMiwxNzAuMSAyMy43MiwzMy42IDMxLjc3LDQ1LjIgNjUuNDUsMjUuNyB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI3NzUuMjEsMTE1NTguMyBjIDEzLjA3LC00MS45IDc5Ljc3LC0xMzkuMSAxMTcuMjgsLTE3MC41IDM3LjUyLC0zMS40IDY0Ljg0LC0yNC4xIDEwNy44MiwtMTguMSA0Mi45OCw2IDExMi4xOSwzMC42IDE1MC4wNiw1My45IDM3Ljg2LDIzLjIgOTAuMDcsNjUuNSA3Ny4xNCw4NS43IC0xMi45MywyMC4xIC0xMDYuNywxMC45IC0xNTQuNzEsMzQuOSAtNDguMDEsMjMuOSAtOTAuMjIsOTMgLTEzMy4zNSwxMDguOCAtNDMuMTMsMTUuOCAtOTguNzgsMS41IC0xMjUuNDMsLTE0IC0yNi42NSwtMTUuNSAtNTEuODksLTM4LjkgLTM4LjgxLC04MC43IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzQ2Ni41MSwxMDc3Mi4yIGMgMTguNzMsMS41IDQzLjQ0LC01OS4zIDI5LjksLTg5IC0xMy41NCwtMjkuNiAtODMuMTEsLTY2LjIgLTExMS4xMSwtODguOSAtMjgsLTIyLjcgLTU2LjY4LC02MC45IC01Ni44OCwtNDcuNSAtMC4yMSwxMy4zIDMyLjM1LDkwLjcgNTUuNjUsMTI3LjYgMjMuMywzNi44IDYzLjcyLDk2LjMgODIuNDQsOTcuOCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzMDguNDgsMTEyMTQuMiBjIC0zNy44NSwxLjggLTk2Ljg4LDY1LjggLTk3LjY3LDEwNC4xIC0wLjgsMzguMiA2OS4wNSw3MCA5Mi44OCwxMjUuMiAyMy44Miw1NS4yIDkwLjU3LDEyMiA1MC4wNiwyMDYgLTQwLjUyLDgzLjkgLTE4Ni40MywyMjQuNyAtMjkzLjE3LDI5Ny44IC0xMDYuNzQsNzMgLTMwNS4yLDE0MC4zIC0zNDcuMjcsMTQwLjYgLTQyLjA3LDAuMyA1MS42OCwtMTA4LjEgOTQuODYsLTEzOSA0My4xOCwtMzAuOSA4MS41NSwtNDEgMTY0LjIxLC00Ni4zIDgyLjY2LC01LjMgMjI5LjkyLC0yNS42IDMzMS43MiwxNC40IDEwMS44MSw0MCAyNDcuNTQsMTQzLjMgMjc5LjExLDIyNS40IDMxLjU3LDgyIC03MC42NywyMDEuNCAtODkuNjksMjY2LjkgLTE5LjAyLDY1LjYgLTIzLjk4LDg0LjYgLTI0LjQ0LDEyNi40IC0wLjQ1LDQxLjggNDMuMzQsODQuMSAyMS42OSwxMjQuMyAtMjEuNjUsNDAuMiAtNjkuNDIsMTAyIC0xNTEuNTgsMTE2LjcgLTgyLjE2LDE0LjggLTMxNC45OSwtNTIuNyAtMzQxLjM4LC0yOC4yIC0yNi40LDI0LjQgMTA4LjY4LDE0NC4zIDE4My4wMSwxNzUuMSA3NC4zMywzMC45IDE4NS40Niw1MS40IDI2Mi45NiwxMCA3Ny40OSwtNDEuMyAxNjYuNTcsLTE3Ni4zIDIwMi4wMiwtMjU4LjEgMzUuNDYsLTgxLjcgNDUuODMsLTE2MS42IDEwLjcsLTIzMi40IC0zNS4xMiwtNzAuOSAtMTM4LjQ5LC0xNTEuNyAtMjIxLjQ0LC0xOTIuNyAtODIuOTYsLTQxIC0xOTcuMDYsLTUzLjkgLTI3Ni4yNywtNTMuMSAtNzkuMiwwLjggLTE0NS4zLDUzLjggLTE5OC45NSw1Ny45IC01My42NSw0LjEgLTExNi4wMiwtNjEuNSAtMTIyLjk0LC0zMy4yIC02LjkzLDI4LjMgNDMuNzEsMTY2LjYgODEuMzcsMjAzLjIgMzcuNjcsMzYuNiA2Mi45NCw2NC4xIDE0NC42LDE2LjUgODEuNjYsLTQ3LjcgMjc1LjgyLC0xNzQuNiAzNDUuMzYsLTMwMi42IDY5LjU0LC0xMjcuOSA5My40MywtMzYxLjkgNzEuODgsLTQ2NS4yIC0yMS41NSwtMTAzLjMgLTE1OS44OCwtMTE2LjUgLTIwMS4xOCwtMTU0LjUgLTQxLjMsLTM4LjEgLTc2LjMxLC00NS4xIC00Ni42LC03My43IDI5LjcsLTI4LjYgMTU3Ljg5LC04MS41IDIyNC44MSwtOTguMSA2Ni45MSwtMTYuNSAxMzMuNjgsLTExLjMgMTc2LjY4LC0xLjEgNDMuMDEsMTAuMiA3MC4yMywyNC4yIDgxLjM1LDYyLjEgMTEuMTIsMzggLTM3LjY4LDk2IC0xNC42MSwxNjUuNSAyMy4wOCw2OS41IDkxLjg5LDE2Ny45IDE1My4wNiwyNTEuNSA2MS4xOCw4My42IDE0NC43OSwyMDYuMiAyMTMuOTgsMjUwLjEgNjkuMTksNDQgMTMyLjUzLDM0LjQgMjAxLjE2LDEzLjYgNjguNjMsLTIwLjkgMTMzLjM1LC04NS4zIDIxMC42MiwtMTM4LjkgNzcuMjcsLTUzLjYgMjAyLjE2LC0xMjMuNyAyNTIuOTksLTE4Mi43IDUwLjg0LC01OC45IDcwLjUxLC0xMTMuMyA1Mi4wMSwtMTcwLjkgLTE4LjUxLC01Ny42IC0xMzIuMjIsLTE2Ny43IC0xNjMuMDIsLTE3NC44IC0zMC44LC03LjEgLTQyLjg4LDc3LjIgLTIxLjc4LDEzMi40IDIxLjEsNTUuMyAxMjMuMjcsMTMwLjcgMTQ4LjM3LDE5OS4zIDI1LjEsNjguNiAtMC4yMywxNDUuOSAyLjIzLDIxMi40IDIuNDYsNjYuNCAtMTkuNjUsMTQ4LjMgMTIuNTEsMTg2LjEgMzIuMTUsMzcuOSAxMzYuOTksNTMgMTgwLjQzLDQwLjcgNDMuNDQsLTEyLjMgNzEuOTcsLTg5LjMgODAuMjIsLTExNC42IDguMjUsLTI1LjMgMjUuNTksLTU4LjcgLTMwLjcsLTM3LjIgLTU2LjMsMjEuNSAtMjE5LjksMTQxLjEgLTMwNy4wNywxNjYuNSAtODcuMTcsMjUuMyAtMTQyLjc0LDIzLjcgLTIxNS45NSwtMTQuMyAtNzMuMjIsLTM4IC0xNzYuMTcsLTEyMiAtMjIzLjMyLC0yMTMuNiAtNDcuMTYsLTkxLjUgLTQzLjExLC0yMzAuMSAtNTkuNiwtMzM1LjYgLTE2LjQ5LC0xMDUuNSAtNDguNDUsLTIwMy42IC0zOS4zMywtMjk3LjQgOS4xMiwtOTMuOCA3MS4yMiwtMTgzLjUgOTQuMDUsLTI2NS4yIDIyLjg0LC04MS43IDEwMS4zMiwtMTcyLjYgMTE3LjEzLC0xOTUuN1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDg5LjA1NzgsMTAzLjEyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDM0NzcuNjEsMTE2OTQuMSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODkuMDU3OCwxMDMuMTJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzMwMy42OSwxMTc4Mi42KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM0NzYuNiwxMTg5NS4xIC0yLjgyLDY1LjFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNTUuOTU0LDc0LjkzMzJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzIzOC4wMSwxMTkyNi40KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxOTMuMDI1LDQ3LjU0NFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwzNDE0LjEzLDEyMTAwLjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE5My4wMjUsNDcuNTQ0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDMxMzkuNjEsMTIwNTgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0My42NjIsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwzMjc3LjA2LDEyMjc4LjEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIwOC4zODMsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwyOTg3LjE0LDEyMTU0LjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzExOC4wMSwxMjM5OC4yIC0xNjQuNTgsLTE3OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMjkzMS42NywxMjE3MyAyNzY3LjEsMTE5OTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5NDguODIsMTI0NDcuNCAtMTcuMTMsLTE4OS45XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyOTA4LjYzLDEyMTE1LjggLTE3LjEzLC0xOTBcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5LjUyNzIsMTU1Ljk2N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMjg2NC42LDEyMzEzLjkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDkuNTI3MiwxNTUuOTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwyOTcyLjQ2LDEyMDY1LjMpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNC43NjYsMTY4LjMwNVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMjg2OC4zOCwxMjIzMS42KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMTQuNzY2LDE2OC4zMDVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDMxMzkuNDEsMTIwNDYuNClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMDk5LDEyMzE2LjUgODUuNjgsMzMuNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjk1Ni40NCwxMjI2MC41IDg1LjY3LDMzLjZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA4Ni42NTg5LDEwMy4zNDhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDMxMzguNjQsMTIyMDUpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDk0Ljg4OTQsMTA2Ljc0NFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzMxMS40NywxMjA5OC4yKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA3OS44NTI5LDQxLjc0OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzMzOC43OCwxMjIzMy4xKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA2OS42MzUzLDQwLjUwNDRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDM0OTAuMDYsMTIyMjEuMilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNDRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDguNzI5MSwzOS44MjgxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzNjEzLjAxLDEyNTMwLjYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQ1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDQ4LjIwMTUsMzQuODIxMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzQ5Ny4zNSwxMjU3MC45KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM1NjkuMjUsMTIzNDEuOCAtMjQuMywtMjcuM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQ3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzYwNC4wOCwxMjM5MC41IC05LjEsLTEzLjhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA0MS45ODg3LDE4LjM0NzhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDM1OTcuODksMTI2NzEuOSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNDlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDQuNzIzNiwxNS45NzY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzNDkyLjQxLDEyNjcwLjIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDUwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDU2LjkwMyw3LjA0NDYyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzMzk3LjM0LDEyNzU2LjMpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDUxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDc1LjExNzksOC4yOTk0NFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzUwNi4xNiwxMjc4My43KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzMjYuNjgsMTI4NjAuNCAxMjkuMiw3MC40XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNTNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMTM1Ljc2LDEyNzYzLjMgMTQwLjQyLDY5LjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM0MzEuNywxMTUyNy45IC0xMDcuODYsLTYzLjFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDM0NjkuNCwxMTUxMiAtMTA3Ljk0LC0xMTUuNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDU2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzU3NC45MSwxMTUxOS41IC0yMi4wNiwtMTc4LjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1N1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNzQuOTU2LDE0LjAzNjVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzg5OC45OSwxMTQ5Mi41KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxOTguNDY2LDEyMy42NzlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzk3NC45NSwxMTU5NS45KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA2MS4wMjQsMTg1LjM0N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0MDE0LjU2LDExNjk1LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDYwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE0LjMxNywyMjAuODMxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQwNjEuNzgsMTE3OTQuNClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNjFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSA0MTYxLjM3LDExOTMwIC0yMi44NiwxNzAuOVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDYyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4LjEyMzYsMTI0LjYxM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0NDgxLjQyLDEyMDQ2LjkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDYzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4LjEyMzYsMTI0LjYxM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0NTg5LjAxLDExODg2LjkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDYzMy42MSwxMjA1NS42IC0zNC4yMywxNzEuNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDY2Ni4yMywxMTgxOS45IC0yMy4wOCwxNjIuOVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDgxNC43LDExOTkyLjEgMjkuMSwxMDkuM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDc2Mi42OSwxMjE1Mi4yIDM3LjUzLC0yMzAuNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDMuNDk2NjksMTk1Ljk1M1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0OTcxLjMyLDEyMDEwLjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNTAxOC4yNiwxMjA1Ny4xIC04Ni40OSwtMTI3LjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQ4OTYuMzQsMTE4NjguNiAtMTA1Ljg5LC0xNTUuOFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDcxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDYyOS40MywxMTQxMC4yIC0yNS4zOSwtMTQ0LjZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQzNzcuMjQsMTEyNjAuMSAtMTQ0LjEsLTEyNS41XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNzNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgOTIuOTcxNyw2NS44NjgzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQyODguNTYsMTEzMjcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gNDU3OC43MywxMTQ0Mi41IC0xNTEuMjQsLTEzNy4xXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNzVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSA0NjQ5LjczLDExNjE4LjIgLTEwMi40NSwtMTAzLjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMTYuOTg5LDE1LjE1OTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsNDI2Ny43NSwxMTAxNS4yKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3N1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA3Ny4xOTcsNzAuMjE5MlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0NzQ3LjM0LDEyMDQ3LjEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDk3LjU1NzksODIuMjEzOFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsNDc2NS42NSwxMTU4MylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNzlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzIuNjQ3NiwxNy44NTEyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiw0NjUxLjE2LDExNjkwLjEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDgwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDUyLjgwOSwyMC43ODA1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQ4NTQuMTcsMTE3MDYuNilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSA0NzExLjg1LDExNDk1LjIgMzAuNzgsMTgyLjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQ3NjIuNjksMTIxNTIuMiAtMS4wNCwtMjQzLjFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5LjcwNTQ4LDIwNi4xMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsNDE3Mi4zOSwxMTU0NS45KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQxODkuNywxMTY4MS45IC0xOC42OCwxNzUuOFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDg1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMzM0NS4yMiwxMTY1MS44IC02LjUzLC0yNi45XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMzI5LjcyLDExNTcwLjkgLTYuNTMsLTI2LjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4N1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ0NjYsMTEyMTQuNCBWIDEwOTY5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSA0NTY1LDExMjMyLjQgViAxMDk4N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDg5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gNDY2NCwxMTI1MS40IFYgMTEwMDZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ3NjIsMTEyNTkuNCBWIDExMDE0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSA0MzY4LDExMjAyLjQgViAxMDk1N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDkyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMzQ3NSwxMTIxNi40IFYgMTA5NzFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDM1NzQsMTEyMzQuNCBWIDEwOTg5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAzNjczLDExMjUyLjQgViAxMTAwN1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDk1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMzc3MSwxMTI2MC40IFYgMTEwMTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDMzNzcsMTEyMDQuNCBWIDEwOTU5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjQ1LjM1MSwzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCw0MTY2LDExMjE2LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDk4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsNDA2NywxMTIzNC40KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDM5NjksMTEyNTIuNClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTAwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMzg3MCwxMTI2MC40KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjQ1LjM1MSwzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCw0MjY1LDExMjA0LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDQzMTgsMTEyMDMgYyAxOTUuMDcsMC4yIDI5NC43NSw1OC43IDQ5NCw1OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwM1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzMjcsMTEyMDUgYyAxOTUuMDcsMC4yIDI5NC43NSw1Ny43IDQ5NCw1OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ5NCw1OC4wMDAxIEMgMjk4LjkyOCw1Ny44MjQ2IDE5OS4yNDgsMC4yNzE3MTcgMCwwXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDM4MjAsMTEyNjMpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzkuNDkzLDE1Ny43MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1Miw0MTEyLjUyLDc5NDEuMjIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMjMzMTQ0LC0wLjk3MjQ0MiwtMC45NzI0NDIsMC4yMzMxNDQsNDQyMi42OCw3ODY3LjE1KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTIwLjk5NywxNzMuMDg1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDQyMjUuMzQsNzkyMy41NSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTA4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNy45MiwxNzkuMzQ0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDQzMjMuMDksNzg5Ny45MSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTA5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNC4wNDEsMTYwLjIyNVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwzMjU4LDc3ODkuMjMpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExMFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDguMzAyLDU2LjQ4NDdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsMzM1MS44OSw3ODczLjg1KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTY2LjIxOCwxNDYuODg3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDM5MDMuODUsNzk0Ny43NilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTEyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE3MS44Myw4Ny4zNzQ5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDM0NzcuNjUsNzkxMC4xMSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTEzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1Ni40MTcsMTEwLjI5OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1MiwzNTg2Ljc4LDc5MjYuMzIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNjUuMjg0LDEzMS4zNTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsMzY4NC40Miw3OTM5LjM4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU1LjMsMTQzLjE5OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1MiwzNzk3Ljg1LDc5MzIuOTcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTMuMDgyLDEzOS45MzlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsNDAwNC40NSw3OTU1LjQ0KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMjAwLjQxLDc3ODEuMjUgYyAxMzguMDMsMTY0LjEzIDEwNzUuMTMsMzA5LjIgMTMzNS44NywtMTMuOTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMThcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAyOTEzLjY5LDkwNDcuNDYgMjc1Ni4yLDg5NjUuNDNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyOTc2Ljk4LDg5NDguMTEgLTE3Mi42NCwtNzAuMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjBcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMDI3LjQ1LDg4NDUuMjYgLTE2OC4xLC02MS4wMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyMVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMwNDYuODksODY5NS44MiAtMTgwLjEsMTAuMTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyODg4LjQ3LDg1NjguNzIgLTkyLjgxLDk3Ljk1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTIzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1OC4zOTcsMS45OTUwMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC40ODM2MzcsMC44NzUyNjksMC44NzUyNjksMC40ODM2MzcsMjc3NS4yNSw4NTEyLjYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI2NjEuODEsODQ1Ni42NyAtNzUuMzksMTIzLjMxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjU2NS41NSw4NDAyLjY2IC03OC4wMSwxMTcuODlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyNDkxLjg3LDgzNDkuNTcgLTkzLjYxLDk3LjQyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjQyOS42NCw4MjY1LjE0IC0xMTUuNDcsOTEuNjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyMzcyLjMyLDgxODguNzYgLTExOC42Nyw3Ny44MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyOVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDIzMTQuNjMsODEwNC4wNyAtMTI1LjE1LDU1LjM1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTMwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjI3NS4xLDgwMzMuMTIgLTExNi40MiwyNS40MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzMVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDIyNzQuMDYsNzk1My4zMSAtMTI5Ljg2LC0zLjc0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTMyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjI4NC4wMSw3ODY5LjEzIC0xMTcuMzUsLTMwLjM4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTMzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjMxMy4wMyw3NzkzLjA5IC0xMTIuMzEsLTUzLjg2XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTM0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEzLjEyNDIsMTIzLjkzMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyMzU0LjI5LDc3MTcuNTUpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyOC45OTA4LDExMy4wNTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjQwMi40LDc2NDMuMzMpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1Ni4yOTQyLDExMS40NzdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjQ2OS44LDc1OTAuODEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA3Ni42NjU4LDc1LjI0NjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjU0Mi4zNCw3NTQ1LjY0KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMzhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTAxLjY0NCw1NC4yNTU4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNDgzNjM3LC0wLjg3NTI2OSwtMC44NzUyNjksLTAuNDgzNjM3LDI2MzMuMDUsNzUzMi42KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMzlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTQwLjYyNSw0My41OTExXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNDgzNjM3LC0wLjg3NTI2OSwtMC44NzUyNjksLTAuNDgzNjM3LDI3MjAuNTcsNzUzOS4zOSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1Ny43OTYsMjMuNDI0MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyODA2LjM0LDc1NjIuNSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE2MS4xNzMsMTUuNzU2NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyOTAwLjAzLDc1ODkuNjEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5ODEuMjgsNzYzNC41MSA5OC45NiwtMTYwLjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAzMDcxLjQyLDc2ODQuMDMgOTguOTYsLTE2MC45MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMxNTAuNzEsNzczOS4zOSAxMjUuODIsLTE5Ny42NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEyODUuNTMsMTEyNi40NCBDIDExNTcuNTksMTE0OC4yOSA5MjUuNTg5LDExNzIuNiA4NDkuMzQxLDEwNDkuODIgNzczLjA5NCw5MjcuMDQzIDg3OS43NCw1NzUuNTk3IDgyOC4wNDcsMzg5Ljc1NCA3NzkuNDY1LDIxNS4wOTcgNjIxLjQ0MywtMjMuNjAzMSAzNTguMDM0LDEuODgyNzggMjM5Ljk5NiwxMy4zMDM2IC0zOC41MDUxLC01Ljg1MTUxIDQuNDYzMTYsNzY0LjAyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjQ4MzYzNywwLjg3NTI2OSwwLjg3NTI2OSwwLjQ4MzYzNywyNTI5LjE4LDc0MDEuNzgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDI4NzEuMjQsOTA4NSBjIC0xNTkuMjMsMjA3LjA0IC00LjIsOTAxLjUyIDQyMS4zOSw5MjYuNiA2NjIuNjcsMzkgMTI2NS4wMyw2NDAuMiAxMDc0LjcxLDg2My40XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDM3ODAuMywzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSw3MDI4LjgsNzQxMy41KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSA2OTQ3LjE1LDExODMwLjUgSCA1Mjc0LjVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ5XCIgLz5cbiAgICAgICAgICAgICAgIHsvKiBuU3B1RnoxICovfVxuICAgICAgICAgICAgICAgIDxhPlxuICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNzA3NC4xLDExOTk2KVwiXG4gICAgICAgICAgICAgICBpZD1cInRleHQxNDlcIj5uU3B1RnoxPC90ZXh0PlxuICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE0ODUuNDIsMTI3OS4xOVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsNjI4NS45MiwxMDI0NS41KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTBcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSA4MjQyLjIsMTEwMTEuNSBIIDQ2NTAuNVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTFcIiAvPlxuICAgICAgICAgICAgICAgey8qIHBlZ1JOQSBzY2FmZm9sZCovfVxuICAgICAgICAgICAgICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDogJ3RhYi1wZWdybmEnLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgc2Nyb2xsVG9JZDogXCJwZWdSTkFcIn0pfT5cbiAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDY0MDguNTgsMTAyNjYpXCJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDE1MVwiPnBlZ1JOQTwvdGV4dD48dGV4dFxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4MTU1LjUyLDEwMjY2KVwiXG4gICAgICAgICAgICAgICBpZD1cInRleHQxNTJcIj5zY2FmZm9sZDwvdGV4dD5cbiAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTcxNC44LDgzODEuOTggYyAxNDEsMjE5LjE5IDI4Mi4xLDQzOC4zOCAyOTguOCw1NTcuMSAxNi43LDExOC43MyAtOTEsMTM2Ljk5IC0xOTguNywxNTUuMjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y0Y2MxZVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjczLjMzMzNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExOTgyLjcsNzg5NC45MiBjIDM2MS42LDU2MS43OSA3MjMuMiwxMTIzLjU5IDc2NS45LDE0MjcuODkgNDIuOCwzMDQuMjkgLTIzMy4yLDM1MS4wOSAtNTA5LjMsMzk3Ljg4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNGNjMWVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI3My4zMzMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDA0NS40LDc3OTguNTEgYyAwLjIsMTQxLjQ0IC0yMjEuMTksMTczLjg5IC0yMTYuMjUsMzA2LjIyIDQuOTQsMTMyLjMyIDc5LjcxLDIyMC41IDE5NC4xNSwyNjkuNzggODEuNywzNS4yIC0xMDguODIsMTU1Ljc1IDEyMS42LDE2MC45NyAyMTYuNSw0LjkxIDY2LjIsMjI3LjQ2IDExMy43LDMwMS4zMyA0Ny42LDczLjg4IDExNyw3MC42OSAxNzEuNywxNDEuOSA1NC43LDcxLjIxIDg0LDI0MS4xNyAxNTYuNSwyODUuMzcgNzIuNSw0NC4xOSAxMTkuNiwxNS40MiAyMzYuNywzMy44MiAxMTcuMSwxOC40IDQzNC4yLDE3MS41MiA0NjUuOCw3Ni41OSAzMS43LC05NC45MyAtOTMsLTE4OC45MyAtMzUuOCwtMjk4LjU4IDU3LjIsLTEwOS42NSA3MC45LC0yNDMuNSAyMDQuNiwtMzE1LjQ5IDE1OS40LC04NS44OCAzOTYuOCwtMjE2LjY4IDQ1My43LC0zMTQuMiA1Ni45LC05Ny41MyAzMC42LC0yMTYuNTkgNjIuNCwtMzE0LjggMzEuNywtOTguMiA5NC41LC0yMDAuMjkgMTI4LjIsLTI3NC40NCAzMy43LC03NC4xNiA1Ny44LC04Mi40NyA3NC4xLC0xNzAuNDggMTYuMywtODguMDEgNDUuNCwtMjcwLjMgMjMuNSwtMzU3LjU3IC0yMS45LC04Ny4yNiAtOTIuNywtMTM2LjQzIC0xNTUsLTE2Ni4wNCAtNjIuMywtMjkuNjEgLTE2Mi40LC0xMDUuNyAtMjMwLjcsLTEwMi4xNyAtNjguMywzLjUzIC05OC4xLDc2LjgzIC0xNzkuNCwxMjMuMzQgLTgxLjIsNDYuNSAtMTI2LjksMS4yMyAtMzA4LjMsMTU1LjcgLTcxLDYwLjQ4IDkwLjcsMTgwLjkxIC0xMjEuNywyMDIuNDMgLTI5OS45LDMwLjM5IC0xOTYuMSwtMTQ5LjM1IC0yNzMuMiwtMTgyLjQzIC03NywtMzMuMDcgLTEyNS40LC01LjU0IC0xODkuMiwtMTYuMDMgLTYzLjksLTEwLjQ5IC0xMzQuMywtNjAuMzUgLTE5My44LC00Ni45IC01OS42LDEzLjQ0IC05OS4yLDk1LjY3IC0xNjMuNSwxMjcuNTYgLTY0LjIsMzEuOSAtMjAxLjUsMTAyLjc0IC0yODEuMSwxMzIuNTQgLTYzLjksNy4xOSAtMTM5Ljg2LC05Ni42OSAtMTk2Ljc0LDQ2LjI4IC0zNC4yNCw4Ni4wNyAxMzEuOTQsMTA3LjQxIDEzOC4wNCwxOTUuMyB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYmI5OTA5XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDY3MS40LDc5MzUuMjEgYyAtMjUuMiwxMC4zNiAtNjguMyw0OS4zNCAtNjEuNyw4NC41MiA2LjYsMzUuMTggNjIuNyw5OC4zNyAxMDEuMSwxMjYuNTggMzguNSwyOC4yIDk3LjYsMjguMjMgMTI5LjgsNDIuNjMgMzIuMywxNC40MSA2MC41LDIyLjk2IDYzLjcsNDMuOCAzLjIsMjAuODQgLTE4LjQsNjAuMTMgLTQ0LjQsODEuMjUgLTI1LjksMjEuMTIgLTg0LjMsMjEuNjkgLTExMS40LDQ1LjQ5IC0yNywyMy44IC0yNS4xLDcwLjA1IC01MC45LDk3LjMzIC0yNS44LDI3LjI3IC05MC43LDM1LjQ4IC0xMDMuOSw2Ni4zMyAtMTMuMywzMC44NiAzMy42LDg3LjI5IDI0LjYsMTE4LjggLTguOSwzMS41IC03OC43LDM2LjIxIC03OC4zLDcwLjIyIDAuMywzNCA3OC4yLDk4Ljk3IDgwLjQsMTMzLjc5IDIuMywzNC44MSAyNi41LDI5LjMxIDUxLjQsMzcuMTYgMjQuOCw3Ljg0IDkxLjEsNTEuNDQgOTcuOCw5LjkgNi42LC00MS41NCAtNjQuOCwtNTMuMjggLTczLjIsLTc4Ljg5IC04LjQsLTI1LjYxIDE4LjMsLTQxLjE4IDIyLjgsLTc0Ljc4IDQuNCwtMzMuNiAtMTkuMiwtOTcuODEgMy45LC0xMjYuODIgMjMuMSwtMjkuMDIgMTM0LjYsLTQ3LjI3IDEzNC42LC00Ny4yNyA0Ny4zLC0xNy4yNCAxMTMuNCwtNDIuNTggMTQ5LjUsLTU2LjE5IDM2LC0xMy42IDU5LjgsMC4zOSA2Ni45LC0yNS40NiA3LjEsLTI1Ljg0IC0zMi4zLC05Ni4wNiAtMjQuMywtMTI5LjYyIDgsLTMzLjU2IDc3LjIsLTQ5LjI1IDcyLjQsLTcxLjcxIC00LjgsLTIyLjQ2IC05MS4zLC0xNy4zMyAtMTAxLjMsLTYzLjA3IC0xMCwtNDUuNzMgMjcuOSwtNjcuMDUgNDQuOCwtOTAuMjggMTYuOSwtMjMuMjMgNTAuOSwtMTcuODMgNTYuNiwtNDkuMDkgNS43LC0zMS4yNiAtMzEuNCwtMTA1Ljk1IC0yMi4yLC0xMzguNDQgOS4yLC0zMi41IDg0LjIsLTE3LjcyIDc3LjQsLTU2LjUzIC02LjgsLTM4LjgxIC01My45LC01MS42OCAtOTYuNCwtMzkuMzQgLTQyLjYsMTIuMzMgLTEwNS40LDk0LjY2IC0xNTguOCwxMTMuMzQgLTUzLjQsMTguNjggLTExOS44LDIuNjcgLTE2MS42LC0xLjI3IC00MS45LC0zLjk1IC02NC4yLC0zMi43NCAtODkuMywtMjIuMzggelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTExNzYuNSw5MjcyLjc3IGMgLTQ0LjUsLTEwLjMgLTIuOCwtMTE0LjQgLTE0LjIsLTE1Ni4zNCAtMTEuMywtNDEuOTQgLTM1LjIsLTYzLjYxIC01My44LC05NS4zMiAtMTguNiwtMzEuNzEgLTg5LjEsLTQxLjE5IC01Ny44LC05NC45NCAzMS40LC01My43NCAxMDcuMywtNDMuNTYgMTMwLjIsLTgwLjAxIDIyLjgsLTM2LjQ2IC0xMy4yLC0xMDQuMTEgNi45LC0xMzguNzMgMjAsLTM0LjYyIDg3LjgsLTY5LjMyIDExMy40LC02OS4wMSAyNS43LDAuMzEgMzYuMSwzNi4wMiA0MC41LDcwLjg3IDQuNCwzNC44NSAwLjIsOTguNSAtMTQsMTM4LjIzIC0xNC4yLDM5LjczIC02Mi4xLDcyLjY5IC03MS4yLDEwMC4xNiAtOSwyNy40NyAyMC41LDMxLjYgMTYuOSw2NC42NCAtMy43LDMzLjA1IC01My42LDEyMS40NyAtNjAsMTU4LjM1IC02LjMsMzYuODggNC45LDExMS43NyAtMzYuOSwxMDIuMSB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTg0Mi4zLDc2NTIuMzIgYyAtMjUuMywzMC4zIC0zOS44LDgxLjE4IC03MC4xLDk4LjEgLTMwLjIsMTYuOTMgLTkzLjYsMTYuMDUgLTExMS41LDMuNDQgLTE3LjksLTEyLjYgLTQwLjIsLTQ2LjI3IDQuMSwtNzkuMDkgNDQuMywtMzIuODIgNTMuMywtODEuMzcgNzAuNCwtMTI2LjA5IDE3LjIsLTQ0LjcyIDcuOCwtMTIwLjAzIDMyLjQsLTE0Mi4yMyAyNC41LC0yMi4yMSA4Mi4yLDkuMTcgMTE1LDkgMzIuOCwtMC4xOCA1MS4yLC0yMC4yMiA4MS44LC0xMC4wNyAzMC43LDEwLjE2IDcwLjEsNjMuMjYgMTAyLDcwLjk5IDMxLjksNy43MiA3Mi4zLC0zNS4xNyA4OS42LC0yNC42NCAxNy4zLDEwLjU0IDE5LjksNTQuODEgMTQuNCw4Ny44NSAtNS42LDMzLjAzIC0zMS40LDg4Ljc5IC00Ny41LDExMC4zNiAtMTYuMiwyMS41NiAtMzAuNSwyOC41OCAtNDkuNCwxOS4wMiAtMTguOSwtOS41NyAtMzkuMywtNTkuNjggLTY0LjMsLTc2LjQxIC0yNSwtMTYuNzMgLTU3LjgsLTMzLjkxIC04NS43LC0yMy45NSAtMjcuOCw5Ljk2IC01Niw1My40MiAtODEuMiw4My43MiB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTYxMS44LDgyOTUuMDYgYyAtMzcuMiwyMi43NSAtMTM0LjgsLTMuMDcgLTE0Mi44LDQyLjY4IC03LjUsNDIuNzYgMTAwLjQsMzMuODQgMTA5LjIsNjUuMzYgOC43LDMxLjUyIC00NS43LDg5LjQ2IC01Ni43LDEyMy43NiAtMTAuOSwzNC4yOSAtMzQuMiw3Mi41IC04LjksODIgMjUuMiw5LjUxIDEwOS40LC0zLjI4IDE2MC43LC0yNC45OCA1MS4zLC0yMS43MSAxMDAuOCwtNjAuNjUgMTQ3LC0xMDUuMjYgNDYuMSwtNDQuNjEgMTE3LjQsLTk3LjkxIDEyOS45LC0xNjIuMzkgMTIuNCwtNjQuNDggLTEwNi4zLC0xNzEuMDQgLTU1LjMsLTIyNC40OSA1MSwtNTMuNDUgMTI3LjQsLTIxMS4zNCA3Ni43LC0yMjYuOTUgLTUwLjgsLTE1LjYgLTEyNi43LDEzNy41OSAtMTg4LjgsMTU2Ljc0IC02Mi4xLDE5LjE0IC02MiwxMzQuMTIgLTkwLjUsMTc5LjcxIC0yOC41LDQ1LjU5IC00My4yLDcxLjA3IC04MC41LDkzLjgyIHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExNTE5LjYsNzQ2OS44NyBjIC05LjksMTIuODIgLTEwLjQsNTIuNDYgLTAuNyw1OC40OSA5LjgsNi4wMyA0OS41LC05LjUgNTkuMywtMjIuMzIgOS44LC0xMi44MiA5LjYsLTQ5LjIyIC0wLjMsLTU0LjYgLTEwLC01LjM5IC00OC41LDUuNjEgLTU4LjMsMTguNDMgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTEzODMuOCw3OTA5Ljk4IGMgLTEuMiwzOS45OSAtMjAuNyw1Mi4xOCAtMTAuNSw2Ni45NyAxMC4yLDE0LjggNDMuNSwyOS40NSA3MS44LDIxLjc3IDI4LjMsLTcuNjcgNzcuOSwtNDUuODUgOTcuOSwtNjcuODIgMjAuMSwtMjEuOTcgMjYuMSwtNDUuNzkgMjIuNCwtNjQgLTMuNywtMTguMjEgLTI5LjIsLTIwLjggLTQ0LjMsLTQ1LjI3IC0xNS4yLC0yNC40NyAtMzAuNSwtODEuMDQgLTQ2LjcsLTEwMS41NCAtMTYuMiwtMjAuNSAtMzQuNiwtMjQuMjggLTUwLjMsLTIxLjQ2IC0xNS43LDIuODIgLTM2LjgsMi44MSAtNDMuOCwzOC4zOCAtNywzNS41NyA0LjYsMTMyLjk3IDMuNSwxNzIuOTcgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTYwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTA3MTUuMyw3NTkzLjE3IGMgLTguNiwyNi45NCA0MC4yLDY3LjY1IDMwLjksOTguODYgLTkuMywzMS4yIC03OC45LDY3LjM0IC04Ni43LDg4LjM3IC03LjgsMjEuMDMgMTAuOCw0Ny4xOSAzOS45LDM3LjgzIDI5LjEsLTkuMzYgOTIuOSwtNzguOCAxMzQuOSwtOTQuMDEgNDIsLTE1LjIxIDg3LjIsMTYuMzcgMTE3LDIuNzQgMjkuOCwtMTMuNjMgNzIuNCwtNTguNDEgNjEuNywtODQuNTEgLTEwLjgsLTI2LjExIC05MC40LC01My40NCAtMTI2LjIsLTcyLjExIC0zNS44LC0xOC42OCAtNjAuMSwtNDMuNzUgLTg4LjcsLTM5Ljk0IC0yOC42LDMuOCAtNzQuMSwzNS44MyAtODIuOCw2Mi43NyB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMjk3Mi4yLDkxMzQuNzIgYyAtNDguNywtOC42MyAtNDYuOSw2Mi41MSAtMTI1LjcsOTQuMjcgLTc4LjksMzEuNzYgLTI2Ny4yLDYzLjIzIC0zNDcuNSw5Ni4zMSAtODAuMywzMy4wNyAtODEuNSw2OS40NCAtMTM0LjEsMTAyLjEyIC01Mi43LDMyLjY5IC0xNDYuMyw0OS4xNyAtMTgxLjYsOTMuOTggLTM1LjMsNDQuODEgLTE4LjUsMTI0IC0zMC4zLDE3NC44NyAtMTEuOCw1MC44NiAtOC44LDEwMi41MSAtNDAuNywxMzAuMzQgLTMyLDI3Ljg0IC0xMDcuMywyMy43NyAtMTUwLjgsMzYuNjYgLTQzLjQsMTIuOSAtNC43LDEzNS43OCAtMTEwLDQwLjc0IC0zMS43LC0yOC42NiAtOTMuNSwtMTMuNzMgLTEzMC40LDQ4Ljg4IC0zNi42LDIyLjQgNjguOSwtMTEuNjkgLTI0LjQsMTA1LjkxIC0yOS45LDQzLjQgLTEwNi40LC0yMi42IC0xOTUuNiw3Ny40IC02NC41LDUxLjYgMTU0LjQsMTgxLjggOTcuOCwyNjguOCAtMjEsNjQuNSAtMTgxLDU4LjMgLTE2NywxMTguMiAxNCw1OS44IDE4OS4zLDE3My4zIDI1MS4xLDI0MS4yIDYxLjgsNjcuOSA2Mi4zLDEwMS4xIDExOS42LDE2Ni4xIDU3LjMsNjUgMTc4LjksMTQ2LjQgMjI0LjEsMjI0IDQ1LjIsNzcuNyA1NywxODYuMyA0Ni45LDI0MS44IC0xMC4yLDU1LjUgLTEwOC4yLDQ5LjggLTEwOCw5MS4xIDAuMiw0MS4zIDgxLjYsOTUuNiAxMDkuMSwxNTYuNSAyNy41LDYwLjkgMTguMiwxNTYuMyA1NS45LDIwOC45IDM3LjcsNTIuNyAxNzAuNywtNDMuNCAxNzAuMiwxMDcuMSAtMC40LDE1MC41IDIwOC43LC0yNiAyNDIuNywzOC4xIDM0LjEsNjQuMSAtMTgyLjcsMjI5LjkgLTM4LjQsMzQ2LjUgOTkuOSw4MC44IDQ3LjUsMTIuNSAxMjQuNiw0MC4yIDc3LjEsMjcuNyAyMzYuNiwxMTAuMSAzMzguMSwxMjYuMyAxMDEuNiwxNi4yIDE2MC4zLC0zNS44IDIyMC43LC03Ny4xIDU3LjgsLTM5LjUgNTguMSwzMyAxMjYuMiwxNS43IDY4LjEsLTE3LjQgMzQ1LC04LjYgMjgyLjMsLTExOS43IC02Mi43LC0xMTEuMiAtMTYzLjEsLTc4LjIgLTE0Ny45LC0xNDguNiA4LjMsLTM4LjMgNzgsLTEzLjMgMTkxLjUsLTgyLjQgNjIuNSwtMzguMSAtMzcuNywtNzkuMyAyMTguMSwtNzcuMSAxMzMuNCwtMTMuOCA1OC41LDY1LjQgMTkxLjUsODIuNCA2MC43LDE2LjggNzQuNSwtNzcuNyAxODYuMSwtNjMuOCA4OC4yLC0zLjEgMTUuMiw0NC42IDIyMC44LDcxLjggNDcuOCwxNS41IDQ3LjgsLTMzLjcgOTMsLTI0IDQ1LjMsOS44IDExNi42LDY2LjUgMTc4LjIsODIuNSA2MS42LDE1LjkgMjgsLTE1NC40IDE1MS42LC0xNDguOSAxMjMuNiw1LjUgMTU0LjQsLTE1LjkgMjE1LjEsLTQ0LjEgNjAuNiwtMjguMiAxMjQuOSwtNDYuNyAxNDguOSwtMTI1LjMgMjQsLTc4LjcgLTExMS42LC0yODguNCAtNC45LC0zNDYuNSA2NS43LC0zNS44IC01MS41LC0xMjYuMyAyNi42LC0xNzIuOCA0MS43LC0yNC45IDcwLjQsMTQ3LjQgMTg4LjgsMTAxIDExOC40LC00Ni4zIDEwOS45LC0xNDguNiAxNjUuMywtMjc4IDU1LjQsLTEyOS40IDExOC45LC05MC41IDE2Ny4xLC0xNDcuNCA0OC4zLC01Ni45IC00OS43LC0xNjMgLTc0LjQsLTI0MiAtMjQuNywtNzkgLTMzLC0xNTYuNyAtNzMuNywtMjMyLjEgLTQwLjgsLTc1LjMgLTEwNC44LC0xNTMuMiAtMTcxLC0yMTkuOSAtNjYuMywtNjYuNyAtMTM3LjgsLTE1OS41IC0yMjYuNSwtMTgwLjQgLTg4LjYsLTIxIC0yMzcuMyw1Ny4xIC0zMDUuNSw1NC44IC02OC4yLC0yLjIgLTQ1LjIsLTcxLjUgLTEwMy42LC02OC41IC01OC41LDMgLTE0OSwzMS41IC0xOTQuMiwyMS4yIC00NS4yLC0xMC4yIC0zNy43LC02OC40IC02MC44LC0xMDMuNCAtMjMsLTM1IC00NC40LC02OS44MSAtNzcuNSwtMTA2LjYxIC0zMy4xLC0zNi44MSAtMTAwLjIsLTY0Ljc2IC0xMzcuNSwtOTMuODMgLTM3LjMsLTI5LjA3IC01Mi4yLC02MS4yMiAtODYuNSwtODAuNTkgLTM0LjIsLTE5LjM4IC04MC40LC0yMS4zOSAtMTE5LjEsLTM1LjY1IC0zOC43LC0xNC4yNSAtODIuMSwzLjE2IC0xMTcuMiwtMTMuMjMgLTM1LC0xNi40IC0zMS45LC0xMDYuODEgLTkyLjksLTg1LjE1IC02MC45LDIxLjY2IC0xNTEuOSwxNDkuNTQgLTI0MC4xLDE3NC4zNiAtODguMiwyNC44MSAtMjkxLDYxLjU0IC0yODkuMSwtMjUuNDUgNy40LC0zNTAuMzMgLTEyNy41LC0xMTEuNjIgLTIwNC4yLC0xNDUuNzUgLTc2LjcsLTM0LjEyIC0yMjYuNiwtMjUuMTQgLTI1NS45LC01OSAtMjkuMywtMzMuODYgLTM5LjksLTEwMC40NCAtOS42LC0xNDguMjIgMzAuMywtNDcuNzkgMjAyLjMsLTkwLjQgMTkxLjUsLTEzOC41IDIuNSwtNzIuMTMgLTExOC4xLC0xMzcuNDMgLTE2Ni44LC0xNDYuMDYgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2Y0Y2MxZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTYyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI2NjQuOCwxMDA5NC4zIGMgMzEuMSwzLjUgODMuNCwzMC45IDEyNy43LDI2LjUgNDQuMywtNC40IDExNS4yLC02MSAxMzguMywtNTMgMjMsNy45IDAsMTAwLjcgMCwxMDAuNyAwLDI5LjEgMjMsNjQuNSAwLDc0LjIgLTIzLjEsOS43IC0xMDAuMiwtMTQuMiAtMTM4LjMsLTE1LjkgLTM4LjEsLTEuOCAtNjUuNiwxNS45IC05MC40LDUuMyAtMjQuOCwtMTAuNiAtNDIuNiwtNDYuOCAtNTguNSwtNjguOSAtMTYsLTIyLjEgLTQwLjgsLTUzIC0zNy4zLC02My42IDMuNiwtMTAuNiAyNy41LC04LjkgNTguNSwtNS4zIHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMDI0LjgsMTI0NDguMSBjIDQuMSwtMjAuNCA0MC44LC01Ny43IDUzLjEsLTEwMS44IDEyLjIsLTQ0LjEgLTIuOCwtMTA4LjYgMjAuNCwtMTYyLjkgMjMuMSwtNTQuMyA3Mi43LC0xMTYgMTE4LjIsLTE2Mi44IDQ1LjYsLTQ2LjkgMTA3LjQsLTk1LjcgMTU1LC0xMTguMSA0Ny42LC0yMi40IDkzLjgsLTI4LjUgMTMwLjUsLTE2LjMgMzYuNywxMi4yIDk0LjUsNTQuMyA4OS43LDg5LjYgLTQuNywzNS4zIC03MS4zLDEwMC40IC0xMTguMiwxMjIuMSAtNDYuOSwyMS43IC0xMzYsLTE0LjkgLTE2My4yLDguMiAtMjcuMiwyMyAyNS4yLDgxLjQgMCwxMzAuMyAtMjUuMSw0OC44IC0xMDguMSwxMjQuMiAtMTUwLjksMTYyLjggLTQyLjgsMzguNyAtODQuMyw2Mi41IC0xMDYsNjkuMyAtMjEuOCw2LjcgLTMyLjYsMCAtMjguNiwtMjAuNCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzc5Mi40LDExOTQ0LjUgYyAtMTUuMSwtMTIuNCAtNTUuOSwtMjguNCAtNTMuMywtNDcuOCAyLjcsLTE5LjUgNDAsLTMxIDY5LjIsLTY5LjEgMjkuMywtMzggODAuOCwtMTE3LjcgMTA2LjUsLTE1OS4zIDI1LjcsLTQxLjYgMTguNiwtNzQuMyA0Ny45LC05MC4yIDI5LjMsLTE2IDEyMC43LC0xNi44IDEyNy44LC01LjMgNy4xLDExLjUgLTYyLjEsNDMuMyAtODUuMiw3NC4zIC0yMy4xLDMxIC01Ni44LDg0LjEgLTUzLjIsMTExLjUgMy41LDI3LjQgNzUuNCwyMyA3NC41LDUzLjEgLTAuOSwzMC4xIC00NywxMDAuOSAtNzkuOCwxMjcuNCAtMzIuOSwyNi42IC05MC42LDMxLjkgLTExNy4yLDMxLjkgLTI2LjYsMCAtMjIuMiwtMTQuMiAtMzcuMiwtMjYuNSB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzA0Ny43LDEwNjU3LjkgYyAtMzYuNCwtOCAtMTM2LjUsLTYuMiAtMTU5LjYsLTM3LjMgLTIzLC0zMSAyLjcsLTEyMS41IDIxLjMsLTE0OS4xIDE4LjYsLTI3LjUgNjMuOCw4IDkwLjQsLTE1LjkgMjYuNiwtMjQgNTUuOSwtODUuMiA2OS4yLC0xMjcuOCAxMy4yLC00Mi42IC01LjQsLTk5LjQgMTAuNiwtMTI3LjggMTUuOSwtMjguNCA1My4yLC00OS43IDg1LjEsLTQyLjYgMzEuOSw3LjEgODIuNCw1OS40IDEwNi40LDg1LjIgMjMuOSwyNS43IDQ1LjIsMzYuNCAzNy4yLDY5LjIgLTgsMzIuOCAtNTkuNCwxMjEuNiAtODUuMSwxMjcuOCAtMjUuNyw2LjIgLTQxLjcsLTkwLjUgLTY5LjEsLTkwLjUgLTI3LjUsMCAtODkuNiw1Ni44IC05NS44LDkwLjUgLTYuMiwzMy43IDUwLjUsNzMuNyA1OC41LDExMS44IDgsMzguMiAxLjgsOTguNSAtMTAuNiwxMTcuMiAtMTIuNCwxOC42IC0yMi4yLC0yLjcgLTU4LjUsLTEwLjcgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTY2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI4NDYuMSwxMTIyNi44IGMgMjQuOSwtMzEuOSA2NC44LC01NC4xIDYzLjksLTk1LjggLTAuOSwtNDEuNyAtNTAuNiwtMTQ1LjUgLTY5LjIsLTE1NC40IC0xOC42LC04LjggLTIzLDc4LjEgLTQyLjYsMTAxLjIgLTE5LjUsMjMgLTY3LjMsOS43IC03NC40LDM3LjIgLTcuMSwyNy41IDQ3LDkzLjIgMzEuOSwxMjcuOCAtMTUuMSwzNC42IC0xMDAuMiw0NS4yIC0xMjIuNCw3OS44IC0yMi4yLDM0LjYgLTEyLjQsODEuNiAtMTAuNiwxMjcuOCAxLjcsNDYuMSA3LjksMTEwLjkgMjEuMiwxNDkgMTMuMywzOC4yIDMyLjksOTkuNCA1OC42LDc5LjkgMjUuNywtMTkuNiA4NiwtMTM3LjYgOTUuNywtMTk3IDkuOCwtNTkuNCAtNDYuMSwtMTE2LjIgLTM3LjIsLTE1OS43IDguOSwtNDMuNSA2MC4zLC02My45IDg1LjEsLTk1LjggelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTY3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTQ5NTcuMSwxMTUzMC4yIGMgLTM2LjMsOS43IC0xNDIuNywtNDAuOCAtMTk2LjgsLTMxLjkgLTU0LjEsOC44IC0xMjAuNiw5My45IC0xMjcuNyw4NS4xIC03LjEsLTguOSA0OS43LC0xMDYuNCA4NS4xLC0xMzguMyAzNS41LC0zMS45IDEwOS4xLC0yMS4zIDEyNy43LC01My4yIDE4LjYsLTMxLjkgLTMxLC05OC4zIC0xNiwtMTM4LjIgMTUuMSwtMzkuOSA3Ni4zLC02OS4xIDEwNi40LC0xMDEgMzAuMiwtMzEuOSA0OC44LC01NC4xIDc0LjUsLTkwLjQgMjUuNywtMzYuNCA1MS40LC0xMDQuNiA3OS44LC0xMjcuNiAyOC40LC0yMy4xIDg1LjEsLTI0LjggOTAuNSwtMTAuNyA1LjMsMTQuMiAtMzguMiw1NSAtNTguNiw5NS43IC0yMC40LDQwLjggLTQ3LDExMC44IC02My44LDE0OC45IC0xNi45LDM4LjEgLTM4LjEsNTUuOCAtMzcuMiw3OS44IDAuOCwyMy45IDQ5LjYsMzEuOSA0Mi41LDYzLjggLTcuMSwzMS45IC02Ni41LDkxLjMgLTg1LjEsMTI3LjYgLTE4LjYsMzYuMyAxNS4xLDgwLjYgLTIxLjMsOTAuNCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNTQ0Ni44LDExMjQ4LjEgYyAtMTcuNywtMzcuMiAtNjkuMiwtMTE2LjEgLTkwLjUsLTE3NS41IC0yMS4zLC01OS40IC0yOC40LC0xMzEuMiAtMzcuMywtMTgwLjggLTguOSwtNDkuNiAtMjguNCwtODUuMSAtMTYsLTExNyAxMi40LC0zMS45IDg3LjksLTI4LjMgOTAuNiwtNzQuNCAyLjYsLTQ2LjEgLTcxLjksLTE1Ni45IC03NC42LC0yMDIuMSAtMi43LC00NS4yIDIzLjEsLTg2LjggNTguNiwtNjkuMSAzNS41LDE3LjcgMTIzLjQsMTE2LjEgMTU0LjQsMTc1LjUgMzEuMSw1OS4zIDQzLjUsMTI3LjYgMzIsMTgwLjggLTExLjYsNTMuMSAtODIuNiw3OCAtMTAxLjIsMTM4LjIgLTE4LjcsNjAuMyAtMTMuMywxNzIgLTEwLjcsMjIzLjQgMi43LDUxLjQgMTEuNiw4NC4yIDI2LjcsODUgMTUuMSwwLjkgNDcuOSwtODAuNiA2My45LC03OS43IDE1LjksMC45IDQ1LjIsNjEuMSAzMS45LDg1LjEgLTEzLjMsMjMuOSAtOTEuNCw1Ny42IC0xMTEuOCw1OC41IC0yMC40LDAuOCAxLjgsLTEwLjcgLTE2LC00Ny45IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NTM3LDEwNzc0LjUgYyAtMjAuMywtMzEuOSAtODYuOCwtNTkuNCAtMTIyLjIsLTYzLjggLTM1LjQsLTQuNSAtNzMuNSwxNC4xIC05MC4zLDM3LjIgLTE2LjgsMjMgLTI4LjMsNzAuOSAtMTAuNiwxMDEgMTcuNywzMC4xIDc5LjcsNzAuOSAxMTYuOSw3OS44IDM3LjIsOC44IDg5LjQsMCAxMDYuMiwtMjYuNiAxNi44LC0yNi42IDIwLjQsLTk1LjcgMCwtMTI3LjYgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTcwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTIxMDYuMywxMDg2NC45IGMgLTI3LjUsMjEuMyAtNzEuOCwtMzAuMSAtNjkuMiwtNDcuOSAyLjcsLTE3LjcgNjQuOCwtMjQuOCA4NS4xLC01OC41IDIwLjQsLTMzLjcgOCwtMTI2LjggMzcuMywtMTQzLjYgMjkuMywtMTYuOSAxMDIuOSw0My40IDEzOC4zLDQyLjUgMzUuNSwtMC45IDUwLjYsLTMwLjEgNzQuNSwtNDcuOSAyNCwtMTcuNyA0Ni4xLC01Ny42IDY5LjIsLTU4LjUgMjMuMSwtMC45IDg3LjgsMjguNCA2OS4yLDUzLjIgLTE4LjYsMjQuOSAtMTI5LjUsODEuNiAtMTgwLjksOTUuOCAtNTEuNSwxNC4yIC04OS42LC0zOC4xIC0xMjcuNywtMTAuNiAtMzguMiwyNy40IC02OC4zLDE1NC4yIC05NS44LDE3NS41IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3MVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExOTE1LjEsMTA1ODguNiBjIDExLjUsLTIxLjMgMTkuNSwtOTguNSA1LjMsLTEyNy43IC0xNC4xLC0yOS4zIC02Ny4zLC01NC4xIC05MC4zLC00Ny45IC0yMyw2LjIgLTUxLjMsNTUuOCAtNDcuOCw4NS4xIDMuNSwyOS4zIDQ3LjgsNzYuMyA2OS4xLDkwLjUgMjEuMiwxNC4yIDUyLjIsMjEuMyA2My43LDAgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTcyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTM3NjAuMiw5ODc2LjcyIGMgLTEyNS45LC05NC4wMiAtMjUxLjgsLTE4OC4wNCAtMzU1LjUsLTI0Ni4xNiAtMTAzLjcsLTU4LjEzIC0yMTIsLTY2LjEgLTI2Ni43LC0xMDIuNTcgLTU0LjcsLTM2LjQ3IC0yOC41LC0xMDMuNzEgLTYxLjYsLTExNi4yNSAtMzMsLTEyLjUzIC0xMTAuNSwxMi41NCAtMTM2LjcsNDEuMDMgLTI2LjIsMjguNDkgLTE3LjEsNzUuMjIgLTIwLjUsMTI5LjkyIC0zLjQsNTQuNyA2LjgsMTU2LjEzIDAsMTk4LjMgLTYuOSw0Mi4xNyAtMS4yLDQ1LjU5IC00MS4xLDU0LjcgLTM5LjgsOS4xMiAtMTQ4LjEsMTIuNTQgLTE5OC4zLDAgLTUwLjEsLTEyLjUzIC03NS4yLC00Mi4xNiAtMTAyLjUsLTc1LjIxIC0yNy40LC0zMy4wNSAtMzguOCwtMTEwLjU1IC02MS42LC0xMjMuMDkgLTIyLjgsLTEyLjUzIC01OC4xLDEyLjU0IC03NS4yLDQ3Ljg3IC0xNy4xLDM1LjMzIC0zOS45LDE0MS4zMiAtMjcuMywxNjQuMTEgMTIuNSwyMi43OSA2Mi42LC0xLjE0IDEwMi41LC0yNy4zNSAzOS45LC0yNi4yMiA4Ni42LC0xMjYuNSAxMzYuOCwtMTI5LjkyIDUwLjEsLTMuNDIgMTE5LjcsNjEuNTQgMTY0LjEsMTA5LjQgNDQuNCw0Ny44NyA3MS44LDExOS42NyAxMDIuNiwxNzcuNzkgMzAuNyw1OC4xMSAzMywxNTAuNDEgODIsMTcwLjkxIDQ5LDIwLjYgMTM0LjUsLTIzLjkgMjEyLC00Ny44IDc3LjUsLTI0IDE5Mi42LC00OSAyNTMsLTk1LjggNjAuNCwtNDYuNjggOTUuNywtMTEyLjc4IDEwOS40LC0xODQuNTggMTMuNywtNzEuOCAtMTQuOCwtMTU4LjQxIC0yNy4zLC0yNDYuMTcgLTEyLjYsLTg3Ljc1IC00Ni44LC0yMDguNTUgLTQ3LjksLTI4MC4zNSAtMS4xLC03MS44IC0yLjMsLTE0OS4yOSA0MSwtMTUwLjQzIDQzLjMsLTEuMTQgMTUwLjUsMTAzLjcgMjE4LjgsMTQzLjU5IDY4LjQsMzkuODkgMTM1LjcsODQuMzQgMTkxLjUsOTUuNzMgNTUuOCwxMS40IDExMS43LC01Ni45OCAxNDMuNiwtMjcuMzUgMzEuOSwyOS42MyAzNy42LDE1Ny4yNyA0Ny45LDIwNS4xNCAxMC4yLDQ3Ljg2IDE4LjIsNzIuOTQgMTMuNiw4Mi4wNSAtNC41LDkuMTIgLTM2LjQsLTcxLjggLTQxLC0yNy4zNSAtNC42LDQ0LjQ1IC0xMS40LDIwOS43IDEzLjcsMjk0LjAzIDI1LjEsODQuMzMgOTAsMTYyLjk5IDEzNi43LDIxMS45OSA0Ni44LDQ5IDgzLjIsNjguNCAxNDMuNiw4MiA2MC40LDEzLjcgMTU1LDExLjQgMjE4LjksMCA2My44LC0xMS40IDExNy4zLC0zOS44IDE2NC4xLC02OC4zIDQ2LjcsLTI4LjUgNzEuOCwtOTIuNCAxMTYuMiwtMTAyLjYgNDQuNSwtMTAuMyAxMTQsNDkgMTUwLjQsNDEgMzYuNSwtOCA5My41LC04Ni41OSA2OC40LC04OC44NyAtMjUsLTIuMjggLTE0Mi40LDgzLjE3IC0yMTguOCw3NS4xNyAtNzYuMywtNy45IC0xOTMuNywtNDUuNSAtMjM5LjMsLTEyMy4wNCAtNDUuNiwtNzcuNDkgLTEzLjcsLTI3My41MSAtMzQuMiwtMzQxLjg5IC0yMC41LC02OC4zOCAtNTAuMiwtNjcuMjQgLTg4LjksLTY4LjM4IC0zOC43LC0xLjE0IC05MS4yLDUxLjI4IC0xNDMuNiw2MS41NCAtNTIuNCwxMC4yNiAtMTI2LjUsLTI3LjM1IC0xNzAuOSwwIC00NC41LDI3LjM1IC02Ni4xLDg1LjQ3IC05NS44LDE2NC4xMSAtMjkuNiw3OC42MyAtMzMsMjUyLjk2IC04MiwzMDcuNjYgLTQ5LDU0LjcgLTE0OS4zLDM5LjkgLTIxMiwyMC42IC02Mi43LC0xOS40IC0xMjMuMSwtODguOTQgLTE2NC4xLC0xMzYuOCAtNDEsLTQ3Ljg3IC02OS41LC03Ny41IC04Mi4xLC0xNTAuNDMgLTEyLjUsLTcyLjk0IDE4LjMsLTIwMS43MiA2LjksLTI4Ny4yIC0xMS40LC04NS40NyAtMjUuMSwtMTY1LjI1IC03NS4zLC0yMjUuNjUgLTUwLjEsLTYwLjQgLTE4Ni45LC03Mi45MyAtMjI1LjYsLTEzNi43NSAtMzguOCwtNjMuODIgMTAuMywtMTc1LjUxIC02LjgsLTI0Ni4xNyAtMTcuMSwtNzAuNjYgLTMzLjEsLTEzMS4wNiAtOTUuOCwtMTc3Ljc4IC02Mi43LC00Ni43MyAtMTkxLjQsLTgyLjA2IC0yODAuMywtMTAyLjU3IC04OC45LC0yMC41MiAtMTc2LjcsLTMuNDIgLTI1MywtMjAuNTIgLTc2LjQsLTE3LjA5IC0xNjcuNiwtNTUuODQgLTIwNS4yLC04Mi4wNSAtMzcuNiwtMjYuMjEgLTM2LjQsLTU2Ljk4IC0yMC41LC03NS4yMiAxNiwtMTguMjMgNzUuMiwtMTcuMDkgMTE2LjMsLTM0LjE5IDQxLC0xNy4wOSA5MS4xLC0xOC4yMyAxMjkuOSwtNjguMzggMzguNywtNTAuMTQgODMuMiwtMTQzLjU5IDEwMi41LC0yMzIuNDggMTkuNCwtODguOSA2LjksLTIyOS4wNyAxMy43LC0zMDAuODcgNi45LC03MS44IDIyLjgsLTkyLjMxIDI3LjQsLTEyOS45MiA0LjUsLTM3LjYxIDI1LC01OC4xMiAwLC05NS43MyAtMjUuMSwtMzcuNjEgLTkyLjMsLTg3Ljc1IC0xNTAuNSwtMTI5LjkyIC01OC4xLC00Mi4xNyAtMTQ0LjcsLTEwMC4yOSAtMTk4LjMsLTEyMy4wOCAtNTMuNSwtMjIuOCAtNjYuMiwtMy41MyAtMTIzLC0xMy42OCAtNTYuOSwtMTAuMTUgLTE2MCwtNjAuOCAtMjE4LC00Ny4yMSAtNTgsMTMuNTkgLTEyMi4yLDYxLjQxIC0xMjkuOSwxMjguNzUgLTcuOCw2Ny4zMyAtMjQuNywxODEuNjMgMTIuOCwyNjcuMTkgMzcuNSw4NS41NiAxNTcuMywxODUuNzcgMjEyLDI0Ni4xNyA1NC43LDYwLjQgNjkuNSw3OS43NyAxMTYuMiwxMTYuMjQgNDYuNywzNi40NyAxMDAuMyw4NC4zNCAxNjQuMSwxMDIuNTcgNjMuOSwxOC4yMyAxNDkuMyw5LjEyIDIxOC44LDYuODQgNjkuNiwtMi4yOCAxNDMuNiwtNTQuNzEgMTk4LjMsLTIwLjUyIDU0LjcsMzQuMTkgMTAyLjYsMTQxLjMyIDEzMCwyMjUuNjUgMjcuMyw4NC4zNCA0MSwyMDAuNTggMzQuMiwyODAuMzYgLTYuOSw3OS43NyAtOS4yLDEzMS4wNiAtNzUuMywxOTguMyAtNjYuMSw2Ny4yNCAtMjM1LjksMTU3LjI3IC0zMjEuMywyMDUuMTMgLTg1LjUsNDcuODcgLTE5My44LDY4LjM4IC0xOTEuNSw4Mi4wNiAyLjMsMTMuNjcgMTQzLjYsMTMuNjcgMjA1LjEsMCA2MS42LC0xMy42OCA5NS44LC02Ny4yNCAxNjQuMSwtODIuMDYgNjguNCwtMTQuODEgMTc2LjcsLTMwLjc3IDI0Ni4yLC02LjgzIDY5LjUsMjMuOTMgMTM5LDk4LjAxIDE3MSwxNTAuNDMgMzEuOSw1Mi40MiAzOS44LDEyMy4wOCAyMC41LDE2NC4xMSAtMTkuNCw0MS4wMyAtMTE1LjEsMjEuNjUgLTEzNi44LDgyLjA1IC0yMS42LDYwLjQgMi4zLDE5MS40NyA2LjgsMjgwLjM2IDQuNiw4OC44OSAxOS40LDE1OC40MSAyMC42LDI1MyAxLjEsOTQuNiA0LjUsMjQyLjcgLTEzLjcsMzE0LjUgLTE4LjIsNzEuOCAtNjYuMSw3Ni40IC05NS43LDExNi4zIC0yOS43LDM5LjkgLTY3LjMsOTUuNyAtODIuMSwxMjMuMSAtMTQuOCwyNy4zIC0xOS40LDE4LjIgLTYuOCw0MSAxMi41LDIyLjggNzAuNiwzOC43IDgyLDk1LjcgMTEuNCw1NyAtMjguNSwxNzcuOCAtMTMuNywyNDYuMiAxNC45LDY4LjQgLTEwLjMsMTQ0LjEgMTAyLjYsMTY0LjFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNzNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMzEuOTEyMywyOTUuMTg4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNjc1LDk4MTcuMTkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMS4yNzUsMTgwLjgzNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMzczMS4zLDkyNzcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMS4yNzUsMzA1LjgyNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzU1Niw5NzUwLjgzKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNzZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzU5MCw5MTc5IHYgMjEyLjc1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDY2LjQ4NCwxNTkuNTYxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzMzM4LDk2MDQuNTYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA2Ni40ODQsMTU2LjkwMlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzQyMCw5MzkwLjkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDcuNDMsOTAuNDE4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzMTc0LDk0OTIuNDIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNDcuMTUxLDU4LjQyMDJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM0MDcsOTM4NC40MilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTgxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEyMi4zMywyLjY1OTQyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzMDQzLDk1MjQuNjYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMzkwLDk1MzUgMTU1LjYsNi40OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyOTIwLDk1MjIgMTE0LjQsNTguNTFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxODRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzA2MSw5NTk3IDEwOSw3MC40N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyOTIwLDk2NzEgaCAxMDEuMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMDcuNTE0LDcuNzQ2NTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTMwNzIsOTY3Mi43NSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI5MDMsOTgzMCAxMzkuMiwxMjYuNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMDY4LDk5ODcgMTAyLjQsMTMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTMyMDMsOTk0NiA0NS4zLDMwLjVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTBcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzI4MiwxMDAwMSA1NS44LDUyLjhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzE4Niw5NzEzIDEzNS42LDExNi45M1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMzYwLDk4NjcgMTQ4LjksMTE3LjAxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTkzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1NS41NzIsMTA4LjQ5NVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjQ3MSw5OTIwLjUpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDcuMjYxLDgwLjI5NjhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI1MjcsOTY2MC4zKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTUxLjU4MywxNjQuODhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIzNjQsOTk4Ni44OClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTk2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDUzLjE4NzIsMjEwLjA4OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjQwOSwxMDA1OS4xKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDIuMjE2OCwxMDcuNzg2XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMzY3LDk5MDQuNzkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA2Ni40ODQsMTI0LjYxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNDczLDk3OTcuNjEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzMuNTM3LDIxMi4yODdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI2NjMsMTAwNDguMylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjAwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDM3LjQ4MDUsMTExLjMxM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjYxMiw5OTQ3LjMxKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMDFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzAzNSwxMDIxNiA5NS43LDEyNVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMTg5LDkzOTggNzkuNCw4My4zNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwM1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMzY4LjUsOTU4MC4xMiAxMzI5MCw5NTAzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTM0NzUsOTMxOCAxMDEuOSw3My43OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzNTk2LDk0MzQgNTUuOCwxMTcuMDFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMDZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTExLjY5Myw1My4xODcyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzODMwLDk0NDQuMTkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNjIuMjIxLDE2Mi4yMjFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM3MzEsMTAwMTEuMilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1OS41NjEsMTQ4LjkyNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzk0MSw5ODE2LjkyKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMDlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjQ0LjY2MSwxNTYuNTIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNjIwLDk4NDguNTIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIxMFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDcuNDMsMTg2LjE1NVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzg5NCw5NjY4LjE2KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNDE3NSw5NjY4IDgyLjQsMjA0Ljc3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjEyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTQyODIsOTkyMSAxMDEuMSwyNzEuM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIxM1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NTIyLDk1NTEgMjIuNiwyOTcuODVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNDU0OCw5OTIxIDMxLjcsMjcxLjNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMzkuODkwMiwyMjAuNzI2XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLDAsMCwxLDE0NzgxLjksMTAxNDEpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIxNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NjQzLDk3MzIgMTE2LjIsMTg5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTQ3NzYsOTk0NiA2Ny44LDEzMS45XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTQ2MzYsOTY2OCAxNjQuOSwxNTQuMjRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNDgzMiw5ODU5IDE4MC44LDIwNC44XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjIwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTUwMjQsOTc5MSAxMTAuNywxOTYuNzlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgOTUuNzM2OCwxMzIuOTY4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE0ODcyLDEwMTg0KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNDY0NSw5ODY5IDE4OC44LDQ3Ljg3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjIzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIxNS40MDgsNjkuOTAzMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxNDA3OS40LDk0MTIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyNFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDQuNzcsMTExLjY5M1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzU3Nyw5NjMzLjY5KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAxMzI1Mi4zLDkzNjEuODIgMTMyMzksOTI5OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMTI1LDkwMTUgMTAxLjQsMTIzLjM5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjI3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTM0MDQsOTIzNCA4Mi40LDE3Ny40MlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyOFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNTI5LjUsOTY5Mi43IDEzNDg3LDk0NDVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzIwMyw5MDY3IGggNDIuNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzMFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA0MS4yMiwzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLDAsMCwxLDEzMjkwLjIsOTA2NylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjMxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEyOC45NzksODkuMTcwN1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjk3NSw5MDA0LjE3KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTIyLjMzLDk4LjM5NjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTMxMzgsODg4Ny40KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTE0LjM1MiwxOTIuODAzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNzY5LDkwNzQuOClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjM0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEzNS42MjcsMTkzLjk5N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjg5OSw4ODQ1KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNTguMTg3LDI1MS4yNjhcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI3MzUsOTA4OS4yNylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjM2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDM0LjU3MTcsMTc1Ljc3M1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMjg0MC42LDg2MTApXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMjYuMzIsMjAzLjM1OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjU0NSw5MDg1LjM2KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTM2Ljk1NywxOTYuNzkyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNTg4LDkwNzQuNzkpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzOVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzYuOTU3LDIzOC4yMzZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI3MzQsODg1Ny4yNClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjQwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEzMS42MzgsMjI5Ljk5M1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjY5NCw4ODQyLjk5KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNDFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAxMjYzMi42LDkwMjYuNjcgMTI1NTMsODgxNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNDM1LDg0ODUgOTMuNCwyNzAuNjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNDNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNTMuMTg3MiwyMzEuMzY0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNTE2LDkwOTAuMzYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA0NS4yMDksMjE5LjQ3OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMjYyNi4yLDg1ODcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNjEyLDgzODggMTExLDI1MC42N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEyODU5LjQsODkyOC4zOSAxMjc1Myw4NzA1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjQ3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI0NTIsODQzNiAxODQuMiwyMzAuMzRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNDhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMjY3Miw4NzEwIDE3Mi45LDIzNS40OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMDUzLDg3OTAuMDcgMTI5MjAsODU3MlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNzY5LDgzMTQgMTMwLjMsMjEwLjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjUxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMTMxMDMuMyw4NTcyLjI0IDEyOTY1LDg0MThcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMjgwNiw3OTY4IDExNC40LDIxMy41NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMDkyLjMsODQ2My40MSAxMjk0NCw4MjA4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjU0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI3NDIsNzg1OSA1My4yLDIxMC4wOVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyODAyLDc3OTAgOTEuNywxOTEuOTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMjkxMCw4MDEyIDkwLjQsMTY5LjYzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjU3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTI4NDAsNzY0NCA3OS44LDE5Ni43OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1MC41Mjc4LDMwOC4yODJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI1NzYsODEyOS4yOClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjU5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDk3LjczMTUsMjU0LjUzOFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMjczNS43LDc0OTQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA3Ny4xMjEzLDMzMi40MTlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIzODYsODA0NS40MilcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjYxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDcwLjQ3MjksMzAxLjkxMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMjU0MS41LDczNjcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA3NC40NjE4LDI1Ni42NTJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIyNTMsNzkyNC42NSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjYzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDMuNjA4OTJlLTQsMzE0LjAxMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjM0Myw3NjE1LjAxKVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNjRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODUuNzExNiwzMS44MzAzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzODgwLDEwMDg3LjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA4OS4yMzI4LDQzLjM1MjZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM5OTcsMTAwMzcuNClcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjY2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTQwNDIsOTg5MyA1My41LDYzLjI5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjY3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEwMC43NDcsOC43NzkwN1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjkyMSw5NTE4Ljc4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNjhcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzQuNDYxOCwyNTYuNjUyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMTU0LDc4NDAuNjUpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMS4yNzUsMjA4LjI0NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjIzMiw3NDkzLjI1KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNzBcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAxMjE1Ny45LDc0NDAuMjkgMTIxMjYsNzI2MFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3MVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA4My4wNDMxLDEyMy43OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjA1MSw3Njg4Ljc4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNzJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTIxLjA5NiwxOC42MTU1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMDAwLDc0OTIuNjIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0MzMwLDExMDYwLjQgViAxMDgxNVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0NDI5LDExMDc3LjQgViAxMDgzMlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0NTI4LDExMDk2LjQgViAxMDg1MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0NjI3LDExMTA0LjQgViAxMDg1OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3N1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0MjMyLDExMDQ4LjQgViAxMDgwM1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE1MDIxLDExMDYwLjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE0OTIzLDExMDc3LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE0ODI0LDExMDk2LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4MVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE0NzI1LDExMTA0LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE1MTIwLDExMDQ4LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMzM5LDExMDYxLjQgViAxMDgxNlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4NFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNDM4LDExMDc5LjQgViAxMDgzNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4NVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNTM3LDExMDk3LjQgViAxMDg1MlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNjM1LDExMTA2LjQgViAxMDg2MVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4N1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMjQxLDExMDQ5LjQgViAxMDgwNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE0MDMwLDExMDYxLjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4OVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDEzOTMyLDExMDc5LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDEzODMzLDExMDk3LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDEzNzM0LDExMTA2LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDE0MTI5LDExMDQ5LjQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5M1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0MTgyLDExMDQ4IGMgMTk1LjEsMC4yIDI5NC44LDU4LjcgNDk0LDU5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gNDk1LDU4Ljk5OTggQyAyOTkuNTM0LDU4LjgyMTIgMTk5LjY1MSwwLjI3NjQgMCwwXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE0Njc1LDExMTA3KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyOTVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzE5MSwxMTA1MCBjIDE5NS4xLDAuMiAyOTQuOCw1Ny43IDQ5NCw1OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5NlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ5NCw1OC4wMDAxIEMgMjk4LjkyOCw1Ny44MjQ2IDE5OS4yNDgsMC4yNzE3MTcgMCwwXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNjg0LDExMTA4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyOTdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMzc2MC4xLDk4ODAuOTQgYyAxODcuMywxNTUuNDYgMTAyLjIsMzQ4LjA2IC01NC4yLDM5MS41NiAtMTU2LjMsNDMuNSAtNjAzLjMsLTIzIC04ODMuNywtMTMwLjUgQyAxMjU0MS43LDEwMDM0LjYgMTE2ODYsOTU5Ni4wOSAxMTY3OSw5MTIyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEzOS40OTMsMTU3LjcxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExODYzLjUsNzIzNy44MylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzAzMDgsLTAuMzY2NzgxLC0wLjM2Njc4MSwwLjkzMDMwOCwxMTk4MC44LDY5NDEuMjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwMFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMjAuOTk3LDE3My4wODVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE5MTMuOCw3MTM1LjI3KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTE3LjkyLDE3OS4zNDRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE5NDguOCw3MDQwLjUpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMTQuMTg1LDE4Ljg1MDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTEyNDguNiw3ODUwLjI5KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjA4LjMwMiw1Ni40ODQ3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExMzcyLjEsNzgyMi4yNylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzA0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE2Ni4yMTgsMTQ2Ljg4N1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTc0OS4yLDc0MTIuNTIpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNzEuODMsODcuMzc0OVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTQ3My45LDc3NDAuMDQpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwNlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTYuNDE3LDExMC4yOThcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE1NDkuOCw3NjU5Ljk0KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTY1LjI4NCwxMzEuMzU2XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExNjE2LjUsNzU4Ny40NSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzA4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1NS4zLDE0My4xOThcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE2NzYuMyw3NDkwLjg2KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTUzLjA4MiwxMzkuOTM5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExODEzLjIsNzMzNC41MSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzEwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTEyMDkuMyw3ODkzLjI0IGMgMjEzLjcsLTE4LjkzIDg3MCwtNzAzLjM2IDc1NC44LC0xMTAyLjNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTY3Ni42LDkwOTcuMjUgLTE3Ni4xLDIyLjU3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzEyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTE2NzEuOSw4OTc5LjU1IC0xODEuOCw0MS4wMlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxM1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExNjU0LjYsODg2Ni4yOSAtMTcyLjgsNDUuODlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTU4NS4yLDg3MzIuNTEgLTE0MiwxMTEuMTZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTM4Mi42LDg3MTguNiAtMjAuMywxMzMuNDFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU4LjM5NywxLjk5NTAxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuMTAyNjUyLDAuOTk0NzE3LDAuOTk0NzE3LC0wLjEwMjY1MiwxMTI1Ny42LDg3MzcuMTcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxN1wiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExMTMyLjUsODc1Ni4wMiA4LjUsMTQ0LjI4XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzE4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTEwMjIuNyw4NzY2LjYzIDMuMiwxNDEuMzNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTlcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDkzMS45LDg3NjUuMTIgLTIxLjMsMTMzLjQyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzIwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTA4MzIuNiw4NzMxLjMyIC00Mi41LDE0MS4yXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzIxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTA3NDEuOSw4NzAxLjM1IC01MywxMzEuNjNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjJcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDY0Ni4yLDg2NjQuNzUgLTcxLjEsMTE2LjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDU3My4yLDg2MjkuMDcgLTgxLDg3LjMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzI0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTA1MjYuOCw4NTY0LjE0IC0xMDguNyw3MS4wN1wiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEwNDg2LjksODQ4OS4zNSAtMTEzLjcsNDIuMDZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMDQ2Ny4zLDg0MTAuMzUgLTEyMi45LDE5LjlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjdcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTMuMTI0MiwxMjMuOTMxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwNDU4LjEsODMyNC43NylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzI4XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4Ljk5MDgsMTEzLjA1NFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMDQ1NS4yLDgyMzYuMzcpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyOVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1Ni4yOTQyLDExMS40NzdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTA0ODAuNiw4MTU0Ljc4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzBcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzYuNjY1OCw3NS4yNDY0XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwNTE0LjMsODA3Ni4yNylcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzMxXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEwMS42NDQsNTQuMjU1OFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMDU4MS40LDgwMTMuNzgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzMlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNDAuNjI1LDQzLjU5MTFcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTA2NTcuMSw3OTY5LjM4KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzNcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU3Ljc5NiwyMy40MjQxXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwNzQwLjcsNzkzOS4zOSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzM0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE2MS4xNzMsMTUuNzU2NlwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMDgzMy4xLDc5MDguMTYpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzNVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDEwOTI1LjQsNzg5OC42MyAtMTAuNiwtMTg4LjZcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMTAyNy43LDc4ODcuODIgLTEwLjYsLTE4OC42XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzM3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTExMjQuNCw3ODg4IC05LjUsLTIzNC4xMVwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzOFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDEyODUuNTMsMTEyNi40NCBDIDExNTcuNTksMTE0OC4yOSA5MjUuNTg5LDExNzIuNiA4NDkuMzQxLDEwNDkuODIgNzczLjA5NCw5MjcuMDQzIDg3OS43NCw1NzUuNTk3IDgyOC4wNDcsMzg5Ljc1NCA3NzkuNDY1LDIxNS4wOTcgNjIxLjQ0MywtMjMuNjAzMSAzNTguMDM0LDEuODgyNzggMjM5Ljk5NiwxMy4zMDM2IC0zOC41MDUxLC01Ljg1MTUxIDQuNDYzMTYsNzY0LjAyXCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuMTAyNjUyLDAuOTk0NzE3LDAuOTk0NzE3LC0wLjEwMjY1MiwxMDQyMS40LDc5NjUuNjgpXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzOVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExODQ2LjUsODkxNS45NSBjIC0yMS4xLC03Ljk2IC0yMS43LC0zNy44OCAtNDYuNCwtNDAuOCAtMTYuMSwtMTguMTkgLTI2LjIsLTYzLjQgLTUwLjMsLTY4LjM0IC0yNC4xLC00Ljk0IC02OCwxOS41OSAtOTQuMiwzOC43IC0yNi4yLDE5LjExIC01OC4yLDQ4LjcgLTYyLjksNzUuOTQgLTQuOCwyNy4yNCA2NC40LDQ0LjI2IDM0LjUsODcuNDggLTMwLDQzLjIyIDIuOCw1Ny43NiA1OC41LDU4LjY4IDU1LjcsMC45MiA1Mi41LDc4LjcgNTUuNSwxMDIuNTQgMywyMy44NSAtMTMuNSw0Mi44IDE4LDg1LjU0IDMxLjYsNDIuNzMgLTIyLjUsNjUuNzggLTUyLjQsNzYuODkgLTMwLDExLjExIC02NC45LC0yNSAtMTI3LjQsLTEwLjI1IC0zMi40LC0xMy43MSAtMzguOCwtNTguOTggLTY2LjQsLTUzLjkzIC0yNy41LDUuMDYgLTkxLjgsMzkuOTUgLTk4LjcsODQuMjMgLTYuOSw0NC4yOCAtODcuOCw1OS4yNyAtMTA4LjgsOTguMzggLTIxLjEsMzkuMTEgLTE5LDk3LjM5IC0xNy42LDEzNi4yNiAxLjUsMzguODcgLTguMSw3MC45OSAyNi40LDk2Ljk3IDIxLjksMTYuNTUgMTQuOSwzNC41MSAzMi41LDU2LjE1IDE3LjUsMjEuNjUgLTQuNiw3OS4zMiA3Mi45LDczLjcgNzcuNSwtNS42MSA3OC41LDk2LjQxIDEwNy40LDExMi4zNiAyOSwxNS45NiAzNC4zLC0xNi43MiA1MywtMjEuNjMgMTguNywtNC45MiAyOS4yLDI1Ljg5IDUyLjgsMjUuMjUgMjMuNiwtMC42NCA0Ni45LC02OS4wOSA3My41LC04MS40OCAyNi42LC0xMi4zOSA2NC44LDUuMzEgODUuOSw3LjEyIDIxLjIsMS44MiAyNi4xLDUuMDMgNDAuOSwzLjc2IDE0LjksLTEuMjcgMzEuNSwtMTcuMzMgNDUuOCwtMjEuOTggMTQuMywtNC42NCAzMC41LDEyLjc4IDQ1LjcsNS45NyAxNS4yLC02LjggMjUuMSwtMzEuNzIgNDUuNSwtNDYuOCAyMC41LC0xNS4wOCAyNi42LC00My43NyA0MC4yLC01NC4yOCAxMy43LC0xMC41MiAtNzguMSwtMzAuNTEgMS4yLC02OC41MyAxNC4zLC0yLjM1IDM4LjMsMTguNTEgNzAuOCwxNi45NSAzMi41LC0xLjU3IDEwNi4yLC00LjggMTI0LjIsLTI2LjMzIDE3LjksLTIxLjU0IDYyLjgsLTYwLjA1IC0xNi43LC0xMDIuODkgLTE3LjYsLTkuNDUgLTQ3LjEsLTIyLjYxIC0xNS4zLC0yNS45NCAzMS44LC0zLjMzIDQzLjcsMjAuMDEgNTcuNywzLjIzIDE0LC0xNi43OCAxMy4yLC03Ny4zMSAyNi4zLC0xMDMuOTEgMTMuMSwtMjYuNiAyNS40LC0zMS41OSA1Mi40LC01NS42OSAyNi45LC0yNC4xMSA4NC4xLC01Mi45MyAxMDkuNCwtODguOTMgMjUuMywtMzUuOTkgMS43LC04MC4yNSAtMTkuNiwtOTUuMTkgLTEwMS41LC03MS4xMiAtMzEuNSwtNjQuOTggLTUxLjMsLTk3LjU4IC0xOS44LC0zMi42IDM4LjYsLTQyLjk1IC02Ny42LC05OC4wMyAtMTA2LjIsLTU1LjA4IC0xMTAuNSwzMy4xNyAtMTM3LjMsMjAuMjYgLTI2LjgsLTEyLjkyIDEzLjksLTc1Ljg5IC0yMy40LC05Ny43NCAtNDcuNywtMjcuOTkgLTk3LjYsNzQuNTcgLTExNS4yLDMzLjU0IC0xMi44LC0yOS43NCAtNDguMSwtNy43NiAtNzksLTMyLjcgLTMwLjksLTI0Ljk1IC01OS4zLDEuMDEgLTgwLjUsLTYuOTUgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2UzYmEwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQwXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTE4MzAuNCw5MjA2LjQ1IGMgOC4xLDE1LjYgOC40LDU2LjM4IDE5LjYsNTUuODUgMTEuMSwtMC41MiA0My45LC00MC4yNiA0Ny4zLC01OSAzLjMsLTE4Ljc0IC0xNC44LC0zNy4xIC0yNy4zLC01My40NCAtMTIuNCwtMTYuMzQgLTI5LjksLTI5LjMgLTQ3LjcsLTQ0LjYxIC0xNy44LC0xNS4zMiAtNDguOSwtNDguNzYgLTU5LC00Ny4yOCAtMTAuMSwxLjQ4IC03LjcsMzcuNzMgLTEuNCw1Ni4xOCA2LjMsMTguNDYgMjgsMzkuMTYgMzkuNCw1NC41NSAxMS41LDE1LjM4IDIwLjksMjIuODMgMjkuMSwzNy43NSB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZGJiMzBiXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDFcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxMjA3OC43LDk1NzIuODMgYyAtMTIuNiwtNy4yNCAtMzIuNSwtMjQuOTQgLTU3LjEsLTI3Ljc5IC0yNC42LC0yLjg1IC02NSw0LjQ1IC05MC42LDEwLjY5IC0yNS41LDYuMjQgLTY1LjIsMTMuNiAtNjIuOCwyNi43NyAyLjQsMTMuMTcgNTUuMyw0MC4xNiA3Ny41LDUyLjI0IDIyLjEsMTIuMDggMzYuNywyMy4yNyA1NS4zLDIwLjIzIDE4LjUsLTMuMDUgNDAsLTI3LjQgNTYuMSwtMzguNDggMTYsLTExLjA4IDM2LjMsLTIwLjc1IDM5LjksLTI4LjAyIDMuNiwtNy4yOCAtNS43LC04LjQgLTE4LjMsLTE1LjY0IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNkYmIzMGJcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM0MlwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDExNjgyLjgsOTYxMC4xNyBjIDEzLjQsLTIzLjggLTMsLTYxLjEyIC0xNS44LC04MC4wNCAtMTIuOCwtMTguOTIgLTQxLjEsLTI1Ljc5IC02MS4xLC0zMy40OSAtMTkuOSwtNy43MSAtNDIuNCwtNS4zIC01OC44LC0xMi43NCAtMTYuNCwtNy40NSAtMjEuNSwtMjguNCAtMzkuNSwtMzEuOTQgLTE3LjksLTMuNTQgLTUyLDEuMTcgLTY3LjksMTAuNjggLTE2LDkuNTIgLTI4LjksMzAuNzQgLTI3LjcsNDYuNDEgMS4zLDE1LjY2IDIxLjMsMzkuMzMgMzUuMiw0Ny41NyAxMy45LDguMjYgMzMuOSwtMi44OCA0OC4zLDEuOTIgMTQuNCw0LjgxIDI1LjcsMjEuNjQgMzguMywyNi45IDEyLjUsNS4yNyAyOC40LC05Ljg5IDM3LjEsNC43IDguOCwxNC41OCAtMy41LDg2LjE1IDE1LjQsODIuOCAxOSwtMy4zNSA4MywtMzguOTcgOTYuNSwtNjIuNzcgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTEzNDAuOSw5NjEzLjU3IGMgMTIuNCwtNS41OSAzMC44LC0yMi41NSA1Mi4zLC0xNC45OCAyMS41LDcuNTYgNjMuNSw0NC42NyA3Ni44LDYwLjM5IDEzLjIsMTUuNzIgMTEuMSwzMi4zOSAyLjYsMzMuOTUgLTguNSwxLjU2IC0zMy4xLC0yMS4yMyAtNTMuNiwtMjQuNiAtMjAuNiwtMy4zNyAtNTIuOCwxMC40MiAtNjkuNSw0LjM4IC0xNi43LC02LjA0IC0yOS4yLC0zMC44IC0zMC44LC00MC42MSAtMS43LC05LjgxIDkuOCwtMTIuOTUgMjIuMiwtMTguNTMgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ0XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTYzMTYuNCw3MzM4LjQ1IGMgOS4yLDQ3LjkgLTE1NSwtNDUuMDMgLTIwMi43LC00NS4wMyAtNDcuNiwwIC01MSwxOS44NyAtODMuNCw0NS4wMyAtMzIuNSwyNS4xNyAtNzEuNSw4Ni41NCAtMTExLjMsMTA1Ljk3IC0zOS43LDE5LjQzIC05Ny41LC0yMC45NyAtMTI3LjEsMTAuNiAtMjkuNiwzMS41NyAtMTIsMTMwLjQ3IC01MC40LDE3OC44MiAtMzguNCw0OC4zNSAtMTM2LjIsNjAuOTMgLTE4MC4xLDExMS4yNyAtNDMuOSw1MC4zNCAtNTIuNSwxMjcuNiAtODMuNSwxOTAuNzQgLTMwLjksNjMuMTUgLTc5LjIsMTM4LjQzIC0xMDEuOSwxODguMSAtMjIuOCw0OS42NyAtMzMuNiw2OC42NiAtMzQuNSwxMDkuOTQgLTAuOSw0MS4yOSAtNC4yLDk5LjM1IDI5LjIsMTM3Ljc2IDMzLjMsMzguNDIgMTIyLjcsNTMuODcgMTcwLjgsOTIuNzMgNDguMiwzOC44NSA3Ny4xLDEwOS4wNiAxMTcuOSwxNDAuNDEgNDAuOSwzMS4zNCA3Ny41LDI0LjcyIDEyNy4yLDQ3LjY4IDQ5LjYsMjIuOTYgMTIwLDc0Ljg5IDE3MC44LDkwLjA4IDUwLjksMTUuMTggNjcuMSwtODkuMjYgMTM0LjQsMS4wNCA2Ny4zLDkwLjI5IDE1Ni41LDQzLjA2IDE5OC4xLDg3LjcgNDEuNiw0NC42NSAyMC4zLDEzMi45MSA1MS43LDE4MC4xNSAzMS4zLDQ3LjI1IDEwMC44LDU4LjA3IDEzNi40LDEwMy4zMiAzNS41LDQ1LjI2IDMwLjIsMTY5LjU1IDc2LjgsMTY4LjIzIDYyLjUsLTEuNzcgMTQzLjMsLTE1OC43MyAyMDIuNywtMTc4LjgyIDU5LjQsLTIwLjA5IDExNC41LDYyLjI1IDE1My42LDU4LjI4IDM5LjEsLTMuOTcgMzkuMywtNTMuNDMgODAuOCwtODIuMTMgNDEuNSwtMjguNyAxMjQuMywtNDMuMDUgMTY4LjIsLTkwLjA3IDQ0LC00Ny4wMiA2My42LC0xMzEuOCA5NS40LC0xOTIuMDcgMzEuOCwtNjAuMjcgNS41LC0xMTUuNDYgOTUuNCwtMTY5LjU1IDg5LjgsLTU0LjA5IDEwMy4zLDcxLjc1IDE1Ny42LDExLjkyIDU0LjMsLTU5LjgzIDEzNS41LC0yNzIuNjUgMTY4LjIsLTM3MC44OSAzMi43LC05OC4yNCAtNS43LC0xNjQuOTIgMjcuOCwtMjE4LjU2IDMzLjYsLTUzLjY1IDEzOC45LC00MC40IDE3My41LC0xMDMuMzIgMzQuNywtNjIuOTIgMTIuMiwtMTUwLjc5IDM0LjUsLTI3NC4yIDIyLjMsLTEyMy40MSA2NC45LC0zNTguMDkgOTkuMywtNDY2LjI2IDM0LjUsLTEwOC4xOCA5Ni4xLC0xMDAuMDEgMTA3LjMsLTE4Mi44IDExLjMsLTgyLjc5IC0zMS4xLC0yMzAuNzEgLTM5LjcsLTMxMy45NCAtOC42LC04My4yMyA1Mi43LC0xNDYuMzcgLTExLjksLTE4NS40NCAtNjQuNywtMzkuMDggLTMyMi40LC03NS43MyAtMzc2LjIsLTQ5LjAxIC01My45LDI2LjcxIC01NSwxMjUuMTcgNTMsMjA5LjI5IDEwNy45LDg0LjExIC0xNzYuMiwxMzUuMTEgLTEyMC42LDI0Ny43IDU1LjcsMTEyLjU5IC0zNDcuNCwtMTQ3LjkyIC01MjMuMiwtNDkuMDEgLTE3NS43LDk4LjkgLTEyNC45LC03Mi40NCAtMjIxLjIsLTQ5LjAxIC0yODEuMiw2OC40NCAtMjc2LjQsLTI3LjgyIC0zNjkuNSwtMTcuMjIgLTkzLjIsMTAuNiAtMTE1LjUsNDkuNjcgLTE4OS40LDgwLjggLTc0LDMxLjEzIC0yMDIsLTE1LjYyIC0yNTQuMywxMDUuOTcgLTQ4LDExMS41IDIyNi40LDIxMC4xNyAyNTAuMywzMzMuOCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZmFlOTllXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDVcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAxNjI2Mi40LDgyMTAuNDEgYyAxOS43LC00My44NiAtNzcsLTEwMC43NiAtMTIzLjQsLTExNS4zNCAtNDYuNCwtMTQuNTggLTExNC44LDQuNjQgLTE1NS4yLDI3Ljg0IC00MC41LDIzLjIgLTc0LjMsODAuODcgLTg3LjYsMTExLjM2IC0xMy4zLDMwLjQ5IC0yLjcsNjIuOTcgOCw3MS41OCAxMC42LDguNjIgMjEuMiw0LjY0IDU1LjcsLTE5Ljg4IDM0LjUsLTI0LjUzIDEwMC44LC0xMTQuNjcgMTUxLjIsLTEyNy4yNyA1MC41LC0xMi41OSAxMzYsODUuODQgMTUxLjMsNTEuNzEgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2Y0Y2MxZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ2XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTcwNTcuMiw4NDA4Ljk5IGMgLTIxLjIsMC42NiAtMTAyLjYsLTIwLjUyIC0xMjMuMiwtNjMuNTQgLTIwLjUsLTQzLjAyIC0xMy45LC0xMTMuMTcgMCwtMTk0LjU3IDEzLjksLTgxLjQxIDU3LjcsLTI0OC44NSA4My41LC0yOTMuODUgMjUuOCwtNDUuMDEgNTkuNiwtMy45NyA3MS41LDIzLjgyIDExLjksMjcuOCAzLjMsMTAxLjI2IDAsMTQyLjk2IC0zLjMsNDEuNjkgLTMyLjQsODAuMDggLTE5LjgsMTA3LjIxIDEyLjUsMjcuMTMgNjQuOSw0NSA5NS4zLDU1LjU5IDMwLjUsMTAuNTkgNDMuNywxMC45MiA4Ny41LDcuOTQgNDMuNywtMi45NyAxNjMuOSwtNzguNDkgMTc0LjgsLTI1LjgxIDE5LjIsOTIuNDMgLTIwMC43LDgxLjA4IC0yNTguMyw5Ny4yOSAtNTcuNiwxNi4yMiAtNjkuNSwtMTIuNTcgLTg3LjQsMCAtMTcuOSwxMi41OCAtMTUuMyw1Mi4yOSAtMTkuOSw3NS40NSAtNC42LDIzLjE2IDE3LjIsNjYuODQgLTQsNjcuNTEgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2Y0Y2MxZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ3XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTY5NzcuNCw3MTkzLjEgYyAtNi42LC01MS42MyA2NS42LC0xOTAuNDUgMTYsLTIxNi40MiAtMzAuMiwtMTUuNzYgLTk0LjksODMuMDYgLTEyNy40LDE0MC45NyAtMzIuNiw1Ny45MSAtNzEuNywxNTguMTcgLTY3LjcsMjA2LjQ5IDQsNDguMzEgNTkuNyw1Ni4yNSA5MS41LDgzLjM5IDMxLjksMjcuMTMgNjIuNCw4MS40IDk5LjYsNzkuNDIgMzcuMSwtMS45OSAxMTguOCwtNjEuNTUgMTIzLjQsLTkxLjMzIDQuNiwtMjkuNzkgLTczLC01My42MSAtOTUuNiwtODcuMzcgLTIyLjUsLTMzLjc1IC0zMy4xLC02My41MyAtMzkuOCwtMTE1LjE1IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM0OFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE3NDM4LjMsNzgzMi42NyBjIC0yMi42LDcuOTQgLTExMS40LDEuMzIgLTEzOS4zLC0xNS44OCAtMjcuOCwtMTcuMiAtMzYuNCwtNjQuODQgLTI3LjgsLTg3LjMzIDguNiwtMjIuNSA1MSwtMjcuNzkgNzkuNiwtNDcuNjQgMjguNSwtMTkuODQgNTkuNiwtNTIuOTIgOTEuNCwtNzEuNDUgMzEuOSwtMTguNTIgNjMuNywtMzEuMDkgOTkuNSwtMzkuNjkgMzUuOCwtOC42IDg1LjUsLTMuMzEgMTE1LjMsLTExLjkxIDI5LjksLTguNiA0OS4xLC0xNy41NCA2My43LC0zOS43IDE0LjUsLTIyLjE2IC0zMS45LC0xMDguNSAyMy44LC05My4yOCA1NS43LDE1LjIxIDkuMywxMjEuNCAxMiwxNjAuNzYgMi42LDM5LjM3IC0yLDUzLjU5IDMuOSw3NS40MyA2LDIxLjgzIDM3LjgsMzguMzcgMzEuOSw1NS41NyAtNiwxNy4yIC0yOS4yLDUxLjYgLTY3LjcsNDcuNjMgLTM4LjQsLTMuOTcgLTEyMC45LC01My45MiAtMTYzLC03MS40NSAtNDIuMSwtMTcuNTMgLTY4LjMsLTQ2LjMxIC04OS41LC0zMy43NCAtMjEuMiwxMi41NyAtMzIuMiw4MC4zOCAtMzcuOCwxMDkuMTYgLTUuNywyOC43OCAyNi41LDU1LjU4IDQsNjMuNTIgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2Y0Y2MxZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMTcyNDgsNzAyMi41OCBjIDAsLTIwLjUgLTM1LjcsLTI5Ljc1IC01NS42LC0yMy44IC0xOS45LDUuOTUgLTQzLDI4LjQzIC02My42LDU5LjUxIC0yMC41LDMxLjA4IC02My41LDk3Ljg2IC01OS41LDEyNi45NiAzLjksMjkuMDkgNTguMiw0NS42MiA4My40LDQ3LjYxIDI1LjEsMS45OCA2MC45LC0xNy4xOSA2Ny41LC0zNS43MSA2LjYsLTE4LjUxIC0zMi40LC00Ni4yOSAtMjcuOCwtNzUuMzggNC42LC0yOS4xIDU1LjYsLTc4LjY5IDU1LjYsLTk5LjE5IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1MFwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDE2NDc3LjEsODkzNy4xOCBjIDEzLjIsLTM5LjY2IDgyLjYsLTE0MC44MiA5MS4yLC0xOTAuNCA4LjYsLTQ5LjU5IC00MS43LC03OC4wMSAtMzkuNywtMTA3LjEgMiwtMjkuMDkgMjMuOCwtNjMuNDcgNTEuNiwtNjcuNDQgMjcuNywtMy45NyA4NS44LDQyLjMxIDExNC45LDQzLjY0IDI5LjEsMS4zMiA0NC45LC01Mi4yMyA1OS41LC0zNS43MSAxNC41LDE2LjUzIDQ4LjgsMTAxLjgyIDI3LjcsMTM0Ljg3IC0yMS4xLDMzLjA2IC0xMjIuOSwyMS4xNiAtMTU0LjYsNjMuNDcgLTMxLjcsNDIuMzIgLTEyLjUsMTU2LjAzIC0zNS43LDE5MC40MSAtMjMuMSwzNC4zOCAtODMuOSwyMS44MSAtMTAzLDE1Ljg2IC0xOS4yLC01Ljk1IC0yNS4xLC03LjkzIC0xMS45LC00Ny42IHpcIlxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1MVwiIC8+XG4gICAgICAgICAgICAgICB7LyogTUxIMWRuICovfVxuICAgICAgICAgICAgICAgPGE+XG4gICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxNTkzMy43LDk5NzEpXCJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDM1MVwiPk1MSDFkbjwvdGV4dD5cbiAgICAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAzLjYwODkyZS00LDY4Ny45OTdcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE2NzQwLjUsOTUzMi41KVwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNTJcIiAvPlxuICAgICAgICAgICAgICAgey8qIExhKDEtMTk0KSAqL31cbiAgICAgICAgICAgICAgIDxhPlxuICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNzkxOC4zNiw5NTAyKVwiXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNTJcIj5MYSgxPC90ZXh0Pjx0ZXh0XG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDg3MTAuMjMsOTUwMilcIlxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzUzXCI+LTwvdGV4dD48dGV4dFxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4ODczLjMsOTUwMilcIlxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzU0XCI+MTk0KTwvdGV4dD5cbiAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAxMDU0Myw3NDQ3LjUgSCA5Njg1LjVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzU0XCIgLz5cbiAgICAgICAgICAgICAgIHsvKiBQRTZjIHJldmVyc2UgdHJhbnNjcmlwdGFzZSAqL31cbiAgICAgICAgICAgICAgIDxhPlxuICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNzExNy4wNyw3MzM2KVwiXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNTVcIj5QRTZjIHJldmVyc2UgPC90ZXh0Pjx0ZXh0XG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDcxMzkuNDMsNzg2NClcIlxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzU2XCI+dHJhbnNjcmlwdGFzZTwvdGV4dD5cbiAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODA2LjI2NywzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMDQ5MC44LDg1MDkuNSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzU2XCIgLz5cbiAgICAgICAgICAgICAgIHsvKiBQQ1MvUlRUICovfVxuICAgICAgICAgICAgICAgPGE+XG4gICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg3ODAyLjU5LDg2NjcpXCJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDM1N1wiPlBDUy9SVFQ8L3RleHQ+XG4gICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDQzMjQuMDIsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTQzMzAuNSwxMDE1Ni41KVwiXG4gICAgICAgICAgICAgICBpZD1cInBlZ1JOQXNjYWZmb2xkXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIwNDYuNzksMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTE5MzMuMyw5MzQzLjUpXCJcbiAgICAgICAgICAgICAgIGlkPVwiTGFsaW5lXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMTM1ODQsMTE4MjAuNSBIIDExNzkwLjVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzU5XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDM5MzQuODQsMy42MDg5MmUtNFwiXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTM3MDguMywxMTAxMS41KVwiXG4gICAgICAgICAgICAgICBpZD1cInNwYWNlcmxpbmVcIiAvPlxuICAgICAgICAgICAgICAgey8qIFNwYWNlciAqL31cbiAgICAgICAgICAgICAgIDxhPlxuICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoODI4My44MSwxMTE2NilcIlxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzYwXCI+U3BhY2VyPC90ZXh0PlxuICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgey8qIG5QbG1DYXNYICovfVxuICAgICAgICAgICAgICAgPGE+XG4gICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5NjczLjUsMTE5NzApXCJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDM2MVwiPm5QbG1DYXNYPC90ZXh0PlxuICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJNIDc3MjMuNDQsODUxNC41IEggMjgwOC41XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2MVwiIC8+PHBhdGhcbiAgICAgICAgICAgICAgIGQ9XCJtIDMyMTguNzIsOTAwMi42NiBjIC00Ljc2LC0yMi4xIDIwLjEzLC0zOC43MyA5LjE5LC02MS4xMiA2LjU4LC0yMy40IDM5LjE1LC01Ni4zNCAzMC4yNywtNzkuMjYgLTguODcsLTIyLjkzIC01My4yNywtNDYuNiAtODMuNTEsLTU4LjMgLTMwLjI0LC0xMS42OSAtNzIuNDUsLTIyLjYgLTk3LjkyLC0xMS44NiAtMjUuNDcsMTAuNzUgLTIuMzYsNzguMTYgLTU0LjkxLDc2LjM0IC01Mi41NiwtMS44MiAtNDcuMDIsMzMuNjcgLTE3LjY3LDgxIDI5LjM1LDQ3LjMzIC0zNy43OSw4Ni43MSAtNTYuMjEsMTAyLjE1IC0xOC40MiwxNS40NCAtNDMuMzIsMTEuNzggLTYyLjE5LDYxLjQ0IC0xOC44Niw0OS42NyAtNjcuNSwxNi42NyAtOTMuMDUsLTIuNTMgLTI1LjU1LC0xOS4xOSAtMTQuMDgsLTY4LjA5IC02MC4yNywtMTEyLjY0IC02LjA1LC0zNC43NCAyOC41NywtNjQuNTkgOS40MywtODUuMDEgLTE5LjE0LC0yMC40MiAtODMuMjksLTU1LjY2IC0xMjQuMjYsLTM3LjQ5IC00MC45NywxOC4xNiAtOTcuMzMsLTQxLjc1IC0xNDEuNjEsLTM4LjMgLTQ0LjI4LDMuNDUgLTkyLjE5LDM2LjcgLTEyNC4wOSw1OC45NiAtMzEuOSwyMi4yNyAtNjQuMSwzMS41NiAtNjcuMzEsNzQuNjEgLTIuMDQsMjcuNDEgLTIwLjk1LDMxLjIyIC0yOS42NCw1Ny43MSAtOC43LDI2LjQ5IC02OS4xNiwzOS4xMSAtMjIuNTMsMTAxLjIyIDQ2LjYzLDYyLjExIC0zOC42MywxMTguMTUgLTM2LjM3LDE1MS4xNCAyLjI1LDMyLjk5IDMyLjYsMTkuNzcgNDYuODUsMzIuODQgMTQuMjUsMTMuMDcgLTUuOTksMzguNTUgNy4zMyw1OC4wNyAxMy4zMSwxOS41MiA4My40OSwyLjEgMTA4LjI5LDE3Ljc0IDI0LjgsMTUuNjUgMzAuNTksNTcuMzcgNDAuNSw3Ni4xMyA5LjkxLDE4Ljc2IDkuODYsMjQuNjIgMTguOTcsMzYuNDMgOS4xLDExLjgxIDMxLjYxLDE3LjEgNDMuMjMsMjYuNTkgMTEuNjMsOS40OSA1Ljc3LDMyLjU3IDE5LjcyLDQxLjY4IDEzLjk0LDkuMSA0MC4yMiwzLjg5IDYzLjk4LDEyLjk1IDIzLjc2LDkuMDYgNTEuMTYsLTEuMzYgNjcuMzksNC40MyAxNi4yMyw1LjggLTE2LjU4LC04Mi4xNiA1OC4yNywtMzYuMDcgOS43MiwxMC43NiA1LjE1LDQyLjIxIDI0LjA0LDY4LjY5IDE4LjksMjYuNDkgNjEuNTIsODYuNzggODkuMzMsOTAuMiAyNy44MSwzLjQyIDg0LjUsMjAuMzggNzcuNTIsLTY5LjY3IC0xLjU1LC0xOS44OCAtNi40NCwtNTEuODIgMTMuNTUsLTI2Ljg4IDE5Ljk5LDI0LjkzIDYuNzksNDcuNTQgMjguNDgsNTAuMjMgMjEuNjgsMi43IDcyLjE2LC0zMC43MSAxMDEuNjIsLTM0LjA4IDI5LjQ3LC0zLjM2IDQwLjMxLDQuMjcgNzUuMTgsMTMuOTIgMzQuODYsOS42NCA5MC4wNSw0Mi4xNiAxMzMuOTksNDMuOTMgNDMuOTQsMS43NyA2OC40LC00MiA2OS40MywtNjguMDIgNC45MiwtMTIzLjgyIDM3LjYyLC02MS42MiA1NC4zMiwtOTUuOTIgMTYuNzEsLTM0LjI5IDU3LjA0LDkuMjggNDUuOTEsLTEwOS44MyAtMTEuMTMsLTExOS4xMSAtODcuNywtNzUuMDMgLTkxLjMyLC0xMDQuNTQgLTMuNjMsLTI5LjUxIDcxLjM1LC0yOS4zNCA2OS41NSwtNzIuNTQgLTIuMzEsLTU1LjMzIC0xMTUuNTUsLTQxLjc5IC05MC41OCwtNzguOCAxOC4xLC0yNi44MyAtMTkuNDYsLTQ0LjYgLTE1LjE5LC04NC4wOCA0LjI2LC0zOS40OCAtMzIuOTYsLTQ5LjM3IC0zNy43MSwtNzEuNDYgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2UzYmEwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzYyXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjk2NS42Niw5MTQ2LjI0IGMgLTguNzQsMTUuMjYgLTQyLjg0LDM3LjYxIC0zNi4zNyw0Ni43IDYuNDgsOS4wOSA1Ny42NCwxNS4xNiA3NS4yMSw3Ljg0IDE3LjU3LC03LjMzIDIzLjIzLC0zMi40NSAzMC4yMiwtNTEuNzkgNi45OCwtMTkuMzUgOC40MywtNDEuMDQgMTEuNjksLTY0LjI5IDMuMjYsLTIzLjI1IDE0LjU0LC02Ny41NCA3Ljg0LC03NS4yIC02LjY5LC03LjY3IC0zNS45MiwxMy45IC00OC4wMSwyOS4yMSAtMTIuMDksMTUuMzIgLTE3Ljc3LDQ0Ljc2IC0yNC41NCw2Mi42OCAtNi43NiwxNy45MiAtNy45MSwyOS45MSAtMTYuMDQsNDQuODUgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzYzXCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjc5MS44Niw5NTUzLjI4IGMgLTAuNzEsLTE0LjQ4IDMuNDEsLTQwLjggLTcuNTEsLTYzLjAzIC0xMC45MSwtMjIuMjQgLTM4LjksLTUyLjI3IC01Ny45OCwtNzAuNCAtMTkuMDksLTE4LjEyIC00Ni43NiwtNDcuNTQgLTU2LjUyLC0zOC4zNyAtOS43NSw5LjE3IC0zLjg0LDY4LjI3IC0yLjAzLDkzLjQxIDEuODIsMjUuMTQgMC4zMSw0My40OCAxMi45MSw1Ny40NSAxMi42LDEzLjk3IDQ0LjczLDE4LjkgNjIuNzEsMjYuMzcgMTcuOTgsNy40NiAzNy4xMSwxOS4zMyA0NS4xOCwxOC40MyA4LjA3LC0wLjkgMy45NSwtOS4zOCAzLjI0LC0yMy44NiB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZGJiMzBiXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNjRcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwibSAyNTQ2LjI4LDkyNDAuNTIgYyAyNy4yOSwtMS41NyA0OS44LC0zNS41NiA1OC43OSwtNTYuNTYgOC45OCwtMjEuMDEgLTAuNTUsLTQ4LjUxIC00Ljg4LC02OS40OSAtNC4zMywtMjAuOTggLTE4LjUzLC0zOC41OSAtMjEuMTMsLTU2LjM5IC0yLjYsLTE3LjgxIDEyLjI0LC0zMy40OCA1LjUzLC01MC40NSAtNi43LC0xNi45NyAtMjkuMTMsLTQzLjEzIC00NS43NSwtNTEuMzggLTE2LjYzLC04LjI1IC00MS40OSwtNy42NyAtNTMuOTgsMS44NiAtMTIuNSw5LjUzIC0yMS42LDM5LjEzIC0yMS4wMSw1NS4yOSAwLjU5LDE2LjE3IDIwLjc2LDI2Ljk1IDI0LjUzLDQxLjY5IDMuNzcsMTQuNzMgLTQuMywzMy4zIC0xLjkzLDQ2LjcyIDIuMzcsMTMuNDIgMjMuNjgsMTguNTIgMTYuMTUsMzMuNzggLTcuNTIsMTUuMjYgLTc0LjM2LDQzLjY2IC02MS4yOSw1Ny43NyAxMy4wNiwxNC4xMiA3Ny42Nyw0OC43MiAxMDQuOTcsNDcuMTYgelwiXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzY1XCIgLz48cGF0aFxuICAgICAgICAgICAgICAgZD1cIm0gMjM1OC40Nyw4OTU0LjgzIGMgMTEuNDIsNy40MiAzNS42MywxMy43MSA0MC45LDM1LjkgNS4yNywyMi4xOCAtMy4yMiw3Ny41NiAtOS4yOCw5Ny4yIC02LjA3LDE5LjY0IC0yMS4yLDI2LjkyIC0yNy4xMSwyMC42MSAtNS45LC02LjMgLTAuMDcsLTM5LjM2IC04LjM0LC01OC40NCAtOC4yNywtMTkuMDggLTM3LjMsLTM4LjcxIC00MS4yNiwtNTYuMDQgLTMuOTcsLTE3LjMyIDEwLjExLC00MS4yMiAxNy40NywtNDcuOTEgNy4zNiwtNi42OSAxNi4yLDEuMjUgMjcuNjIsOC42OCB6XCJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZGJiMzBiXCJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNjZcIiAvPjxwYXRoXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDgwNy4wOSwzLjYwODkyZS00XCJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSw3ODQ5LjU5LDkzNDMuNSlcIlxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzY3XCIgLz48L2c+PC9zdmc+XG4gICAgICAgIFxuKTtcblxuICAgIFxufSIsICJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUsIHVzZUVmZmVjdCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IGJpYnRleFBhcnNlIGZyb20gJ2JpYnRleC1wYXJzZXItanMnO1xuXG5pbnRlcmZhY2UgQmliRW50cnkge1xuICBFTlRSWVRZUEU6IHN0cmluZztcbiAgVElUTEU/OiBzdHJpbmc7XG4gIEFVVEhPUj86IHN0cmluZztcbiAgam91cm5hbD86IHN0cmluZztcbiAgdm9sdW1lPzogc3RyaW5nO1xuICBwYWdlcz86IHN0cmluZztcbiAgeWVhcj86IHN0cmluZztcbiAgZG9pPzogc3RyaW5nO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmludGVyZmFjZSBCaWJ0ZXhQYXJzZXJQcm9wcyB7XG4gIGJpYnRleFNvdXJjZXM6IHN0cmluZ1tdOyAvLyBBY2NlcHQgYW4gYXJyYXkgb2YgQmliVGVYIHN0cmluZ3NcbiAgc3BlY2lhbD86IHN0cmluZ1xufVxuXG5cbmZ1bmN0aW9uIGZvcm1hdFBhZ2VzKHBhZ2VzOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBKU1guRWxlbWVudCB8IG51bGwge1xuICAgIC8vIENoZWNrIGlmIHBhZ2VzIGlzIHByb3ZpZGVkIGFuZCBpcyBhIG5vbi1lbXB0eSBzdHJpbmdcbiAgICBpZiAocGFnZXMgJiYgcGFnZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAvLyBDaGVjayBmb3IgY29tbW9uIHBhZ2UgcmFuZ2Ugc2VwYXJhdG9yc1xuICAgICAgICBjb25zdCBwYWdlUmFuZ2VSZWdleCA9IC8tLXwtfFx1MjAxM3xcdTAwRTJcdTIwQUNcdTIwMUMvOyAvLyBSZWdFeCB0byBtYXRjaCB2YXJpb3VzIGRhc2ggdHlwZXNcbiAgICAgICAgaWYgKHBhZ2VSYW5nZVJlZ2V4LnRlc3QocGFnZXMpKSB7XG4gICAgICAgICAgICBjb25zdCBwYWcgPSBwYWdlcy5zcGxpdChwYWdlUmFuZ2VSZWdleCkubWFwKHAgPT4gcC50cmltKCkpO1xuICAgICAgICAgICAgY29uc3QgYmVnaW4gPSBwYWdbMF07XG4gICAgICAgICAgICBjb25zdCBlbmQgPSBwYWdbMV07XG5cbiAgICAgICAgICAgIC8vIFJldHVybiBmb3JtYXR0ZWQgSlNYXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj57YmVnaW59PC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+e2VuZH08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2UgaWYgKC9eXFxkKygtXFxkKyk/JC8udGVzdChwYWdlcykpIHtcbiAgICAgICAgICAgIC8vIElmIHBhZ2VzIGlzIGEgc2luZ2xlIG51bWVyaWMgcmFuZ2UsIHJldHVybiBpdCBkaXJlY3RseVxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj57cGFnZXN9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEhhbmRsZSBub24tbnVtZXJpYyBwYWdlIGluZm9cbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgTm9uLW51bWVyaWMgcGFnZSBpbmZvcm1hdGlvbiBkZXRlY3RlZCAoJyR7cGFnZXN9JykuIFRyZWF0aW5nIGFzIG1pc3NpbmcuYCk7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDsgLy8gUmV0dXJuIG51bGwgaWYgaW52YWxpZFxuICAgICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS53YXJuKFwiU29ycnksIG5vIHBhZ2UgaW5mb3JtYXRpb24uXCIpO1xuICAgICAgICByZXR1cm4gbnVsbDsgLy8gUmV0dXJuIG51bGwgaWYgbm8gcGFnZSBpbmZvXG4gICAgfVxufVxuXG5cbmV4cG9ydCBjb25zdCBCaWJ0ZXhQYXJzZXI6IFJlYWN0LkZDPEJpYnRleFBhcnNlclByb3BzPiA9ICh7IGJpYnRleFNvdXJjZXMgLCBzcGVjaWFsfSkgPT4ge1xuICBjb25zdCBbcGFyc2VkRW50cmllcywgc2V0UGFyc2VkRW50cmllc10gPSB1c2VTdGF0ZTxCaWJFbnRyeVtdPihbXSk7XG5cbiAgLy8gUGFyc2UgQmliVGVYIG9uIGNvbXBvbmVudCBtb3VudCBvciB3aGVuIHNvdXJjZXMgY2hhbmdlXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc29sZS5sb2coXCJQYXJzaW5nIEJpYlRlWCBzb3VyY2VzOiBcIiwgYmlidGV4U291cmNlcyk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgYWxsRW50cmllczogQmliRW50cnlbXSA9IFtdO1xuICAgICAgYmlidGV4U291cmNlcy5mb3JFYWNoKChiaWJ0ZXgpID0+IHtcbiAgICAgICAvLyBjb25zb2xlLmxvZyhgUGFyc2luZyBCaWJUZVggZW50cnkgIyR7aW5kZXggKyAxfTogYCwgYmlidGV4KTtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gYmlidGV4UGFyc2UudG9KU09OKGJpYnRleCk7XG4gICAgICAgLy8gY29uc29sZS5sb2coYFBhcnNlZCBlbnRyeTogYCwgcGFyc2VkKTtcbiAgICAgICAgYWxsRW50cmllcy5wdXNoKC4uLnBhcnNlZCk7XG4gICAgICB9KTtcbiAgICAgIHNldFBhcnNlZEVudHJpZXMoYWxsRW50cmllcyk7XG4gICAgICAvL2NvbnNvbGUubG9nKFwiQWxsIHBhcnNlZCBlbnRyaWVzOiBcIiwgYWxsRW50cmllcyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHBhcnNpbmcgQmliVGVYOiBcIiwgZXJyb3IpO1xuICAgICAgYWxlcnQoXCJBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nIHRoZSBCaWJUZVggZW50cmllcy4gUGxlYXNlIGNoZWNrIHRoZSBmb3JtYXQuXCIgKyBiaWJ0ZXhTb3VyY2VzKTtcbiAgICB9XG4gIH0sIFtiaWJ0ZXhTb3VyY2VzXSk7XG5cbiAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlbmRlciBBVVRIT1JTXG4gIGNvbnN0IGZvcm1hdEF1dGhvcnMgPSAoYXV0aG9yczogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICBjb25zb2xlLmxvZyhcIk9yaWdpbmFsIGlucHV0OlwiLCBhdXRob3JzKTtcblxuICAgIC8vIEJlcmVpbmlnZW4gZGVzIEVpbmdhYmVzdHJpbmdzIHVuZCBFcnNldHplbiB2b24gXCJhbmRcIiBkdXJjaCBcInxcIlxuICAgIGNvbnN0IGNsZWFuZWRBdXRob3JzID0gYXV0aG9yc1xuICAgICAgICAucmVwbGFjZSgvXFxzKmFuZFxccyovZywgXCJ8XCIpIC8vIFwiYW5kXCIgZHVyY2ggXCJ8XCIgZXJzZXR6ZW5cbiAgICAgICAgLnJlcGxhY2UoL1xce3xcXH0vZywgXCJcIikgICAgICAvLyBnZXNjaHdlaWZ0ZSBLbGFtbWVybiBlbnRmZXJuZW5cbiAgICAgICAgLnRyaW0oKTtcbiAgICBcbiAgICBjb25zb2xlLmxvZyhcIkNsZWFuZWQgYXV0aG9ycyBzdHJpbmc6XCIsIGNsZWFuZWRBdXRob3JzKTtcblxuICAgIC8vIEF1dG9yZW4gaW4gZWluIEFycmF5IGF1ZnRlaWxlblxuICAgIGNvbnN0IGF1dGhvckxpc3QgPSBjbGVhbmVkQXV0aG9ycy5zcGxpdChcInxcIikubWFwKGF1dGhvciA9PiBhdXRob3IudHJpbSgpKTtcbiAgICBjb25zb2xlLmxvZyhcIlNwbGl0IGF1dGhvciBsaXN0OlwiLCBhdXRob3JMaXN0KTtcblxuICAgIC8vIE1heGltYWxlIEFuemFobCBkZXIgYW56dXplaWdlbmRlbiBBdXRvcmVuXG4gICAgY29uc3QgbWF4QXV0aG9ycyA9IDc7XG5cbiAgICAvLyBGb3JtYXRpZXJlIGplZGVuIEF1dG9yXG4gICAgY29uc3QgZm9ybWF0dGVkQXV0aG9ycyA9IGF1dGhvckxpc3QubWFwKChhdXRob3IsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGBQcm9jZXNzaW5nIGF1dGhvciAjJHtpbmRleCArIDF9OmAsIGF1dGhvcik7XG5cbiAgICAgICAgLy8gTmFjaG5hbWUgdW5kIFZvcm5hbWVuIGF1ZnRlaWxlblxuICAgICAgICBjb25zdCBbbGFzdCwgZmlyc3ROYW1lc10gPSBhdXRob3IuaW5jbHVkZXMoXCIsXCIpID8gXG4gICAgICAgICAgICBhdXRob3Iuc3BsaXQoXCIsXCIpLm1hcChwYXJ0ID0+IHBhcnQudHJpbSgpKSA6XG4gICAgICAgICAgICBbJycsIGF1dGhvcl07IC8vIFdlbm4ga2VpbiBLb21tYSB2b3JoYW5kZW4gaXN0LCB3aXJkIGRlciBnZXNhbXRlIE5hbWUgYWxzIFZvcm5hbWUgYmVoYW5kZWx0XG5cbiAgICAgICAgY29uc29sZS5sb2coYExhc3QgbmFtZTogXCIke2xhc3R9XCIsIEZpcnN0IG5hbWVzOiBcIiR7Zmlyc3ROYW1lc31cImApO1xuXG4gICAgICAgIC8vIEluaXRpYWxlbiBmXHUwMEZDciBWb3JuYW1lbiBlcnN0ZWxsZW5cbiAgICAgICAgY29uc3QgaW5pdGlhbHMgPSBmaXJzdE5hbWVzLnNwbGl0KCcgJykubWFwKG4gPT4gblswXSArICcuJykuam9pbignICcpOyBcbiAgICAgICAgY29uc29sZS5sb2coYEluaXRpYWxzIGZvciBcIiR7Zmlyc3ROYW1lc31cIjogXCIke2luaXRpYWxzfVwiYCk7XG5cbiAgICAgICAgY29uc3QgZm9ybWF0dGVkTmFtZSA9IGAke2xhc3R9LCAke2luaXRpYWxzfWAudHJpbSgpOyAvLyBSXHUwMEZDY2tnYWJlIGRlcyBmb3JtYXRpZXJ0ZW4gTmFtZW5zXG4gICAgICAgIGNvbnNvbGUubG9nKGBGb3JtYXR0ZWQgbmFtZTogXCIke2Zvcm1hdHRlZE5hbWV9XCJgKTtcblxuICAgICAgICByZXR1cm4gZm9ybWF0dGVkTmFtZTtcbiAgICB9KTtcblxuICAgIGNvbnNvbGUubG9nKFwiRm9ybWF0dGVkIGF1dGhvcnMgYmVmb3JlIGFkZGluZyBldCBhbC46XCIsIGZvcm1hdHRlZEF1dGhvcnMpO1xuXG4gICAgLy8gS29tYmluaWVyZSBkaWUgZm9ybWF0aWVydGVuIEF1dG9yZW4gbWl0IGtvcnJla3RlciBJbnRlcnB1bmt0aW9uXG4gICAgY29uc3Qgb3V0cHV0ID0gZm9ybWF0dGVkQXV0aG9ycy5zbGljZSgwLCBtYXhBdXRob3JzKS5qb2luKCc7ICcpICsgXG4gICAgICAgICAgICAgICAgICAgKGZvcm1hdHRlZEF1dGhvcnMubGVuZ3RoID4gbWF4QXV0aG9ycyA/ICcgZXQgYWwuJyA6ICcnKTtcbiAgICBcbiAgICBjb25zb2xlLmxvZyhcIkZpbmFsIG91dHB1dDpcIiwgb3V0cHV0KTtcbiAgICByZXR1cm4gb3V0cHV0O1xufTtcblxuICBsZXQgc3BlY2lhbHRoaW5nID0gXCJcIjtcblxuICBpZiAoc3BlY2lhbCkge1xuICAgIHNwZWNpYWx0aGluZyA9IGAjJHtzcGVjaWFsfWA7IFxuICB9XG5cbiAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlbmRlciBpbmRpdmlkdWFsIGNpdGF0aW9ucyBiYXNlZCBvbiB0aGVpciB0eXBlXG4gIGNvbnN0IHJlbmRlckNpdGF0aW9uID0gKGVudHJ5OiBCaWJFbnRyeSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgLy8gY29uc29sZS5sb2coYFJlbmRlcmluZyBjaXRhdGlvbiBmb3IgZW50cnkgIyR7aW5kZXggKyAxfTogYCwgZW50cnkpO1xuICAgIFxuICAgIC8vIFVzZSB0aGUgaW5kZXggYXMgY2l0YXRpb24gbnVtYmVyXG4gICAgY29uc3QgY2l0YXRpb25OdW1iZXIgPSBpbmRleCArIDE7IFxuICAgIGNvbnN0IGVudHJ5VHlwZSA9IGVudHJ5LmVudHJ5VHlwZS50b0xvd2VyQ2FzZSgpOyAvLyBDb252ZXJ0IHRvIGxvd2VyY2FzZSBmb3IgY29uc2lzdGVudCBjb21wYXJpc29uXG4gICAgY29uc3QgZW50cnlUYWdzID0gZW50cnkuZW50cnlUYWdzOyAvLyBBZGp1c3QgYmFzZWQgb24geW91ciBkYXRhIHN0cnVjdHVyZVxuICAgLy8gY29uc29sZS5sb2coXCJFbnRyeSBUYWdzOiBcIiwgZW50cnlUYWdzKTtcblxuICAgIHN3aXRjaCAoZW50cnlUeXBlKSB7XG4gICAgICBjYXNlIFwiYXJ0aWNsZVwiOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fSB0eXBlb2Y9XCJzY2hlbWE6U2Nob2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPXtgZGVzYy0ke2NpdGF0aW9uTnVtYmVyfSR7c3BlY2lhbHRoaW5nfWB9PlxuICAgICAgICAgICAgey8qIENpdGF0aW9uIG51bWJlciBhcyBjb21tZW50ICovfVxuICAgICAgICAgICAgey8qPCEtLSBDaXRhdGlvbiBudW0gJHtjaXRhdGlvbk51bWJlcn0gLS0+ICovfVxuICAgICAgICAgICAge2Zvcm1hdEF1dGhvcnMoZW50cnlUYWdzLkFVVEhPUiB8fCBlbnRyeVRhZ3MuRURJVE9SIHx8IFwiXCIpfVxuICAgICAgICAgICAgJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPntlbnRyeVRhZ3MuVElUTEUucmVwbGFjZSgvWz8hLl0vZywgJycpLnJlcGxhY2UoL1xcbi9nLCAnICcpLnRyaW0oKX0uPC9zcGFuPlxuICAgICAgICAgICAgJm5ic3A7PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPntlbnRyeVRhZ3MuSk9VUk5BTH08L2k+XG4gICAgICAgICAgICAmbmJzcDs8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPntlbnRyeVRhZ3MuVk9MVU1FfTwvYj5cbiAgICAgICAgICAgIHtmb3JtYXRQYWdlcyhlbnRyeVRhZ3MuUEFHRVMpICYmIDxzcGFuPntmb3JtYXRQYWdlcyhlbnRyeVRhZ3MuUEFHRVMpfTwvc3Bhbj59XG4gICAgICAgICAgICB7ZW50cnlUYWdzLllFQVIgJiYgKFxuICAgICAgICAgICAgICA8c3Bhbj4mbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9e2VudHJ5VGFncy5ZRUFSfT57ZW50cnlUYWdzLllFQVJ9PC90aW1lPikuPC9zcGFuPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuRE9JICYmIChcbiAgICAgICAgICAgICAgPHNwYW4+Jm5ic3A7PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj17YGh0dHBzOi8vZG9pLm9yZy8ke2VudHJ5VGFncy5ET0l9YH0+ZG9pOiB7ZW50cnlUYWdzLkRPSX08L2E+PC9zcGFuPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICApO1xuXG4gICAgICBjYXNlIFwiYm9va1wiOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPXtgZGVzYy0ke2NpdGF0aW9uTnVtYmVyfWB9PlxuICAgICAgICAgICAgey8qIFJlbmRlciBhdXRob3JzICovfVxuICAgICAgICAgICAge2Zvcm1hdEF1dGhvcnMoZW50cnlUYWdzLkFVVEhPUiB8fCBlbnRyeVRhZ3MuRURJVE9SIHx8IFwiXCIpfVxuICAgICAgICAgICAgey8qIFJlbmRlciB0aXRsZSBvciBib29rdGl0bGUgKi99XG4gICAgICAgICAgICB7ZW50cnlUYWdzLlRJVExFID8gKFxuICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7e2VudHJ5VGFncy5USVRMRS5yZXBsYWNlKC9bPyEuXS9nLCAnJykucmVwbGFjZSgvXFxuL2csICcgJykudHJpbSgpfS48L3NwYW4+XG4gICAgICAgICAgICApIDogZW50cnlUYWdzLkJPT0tUSVRMRSA/IChcbiAgICAgICAgICAgICAgPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO3tlbnRyeVRhZ3MuQk9PS1RJVExFLnJlcGxhY2UoL1s/IS5dL2csICcnKS5yZXBsYWNlKC9cXG4vZywgJyAnKS50cmltKCl9Ljwvc3Bhbj5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybihgTm8gdGl0bGUgb3IgYm9va3RpdGxlIGZvdW5kIGZvciBlbnRyeSAke2NpdGF0aW9uTnVtYmVyfWApXG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgey8qIFJlbmRlciBwdWJsaXNoZXIgKi99XG4gICAgICAgICAgICB7ZW50cnlUYWdzLlBVQkxJU0hFUiAmJiAoXG4gICAgICAgICAgICAgIDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj5cbiAgICAgICAgICAgICAgICAmbmJzcDt7ZW50cnlUYWdzLlBVQkxJU0hFUn1cbiAgICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHsvKiBSZW5kZXIgeWVhciAqL31cbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuWUVBUiAmJiAoXG4gICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT17ZW50cnlUYWdzLllFQVJ9PlxuICAgICAgICAgICAgICAgICAge2VudHJ5VGFncy5ZRUFSfVxuICAgICAgICAgICAgICAgIDwvdGltZT4pLlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAge2VudHJ5VGFncy5JU0JOICYmIChcbiAgICAgICAgICAgICAgPHNwYW4gcHJvcGVydHk9XCJpc2JuXCI+Jm5ic3A7e2VudHJ5VGFncy5JU0JOfTwvc3Bhbj5cbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICApO1xuXG4gICAgICBjYXNlIFwibWlzY1wiOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fSB0eXBlb2Y9XCJzY2hlbWE6V2ViUGFnZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPXtgZGVzYy0ke2NpdGF0aW9uTnVtYmVyfWB9PlxuICAgICAgICAgICAgey8qIFJlbmRlciBhdXRob3JzICovfVxuICAgICAgICAgICAgeyhlbnRyeVRhZ3MuQVVUSE9SIHx8IGVudHJ5VGFncy5FRElUT1IgfHwgXCJcIil9XG4gICAgICAgICAgICB7LyogUmVuZGVyIHRpdGxlICovfVxuICAgICAgICAgICAge2VudHJ5VGFncy5USVRMRSAmJiAoXG4gICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4uJm5ic3A7e2VudHJ5VGFncy5USVRMRS5yZXBsYWNlKC9bPyEuXS9nLCAnJykucmVwbGFjZSgvXFxuL2csICcgJykudHJpbSgpfS48L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgey8qIFJlbmRlciBob3dwdWJsaXNoZWQgKi99XG4gICAgICAgICAgICB7ZW50cnlUYWdzLkhPV1BVQkxJU0hFRCAmJiAoXG4gICAgICAgICAgICAgIDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDt7ZW50cnlUYWdzLkhPV1BVQkxJU0hFRH08L2k+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgey8qIFJlbmRlciB5ZWFyICovfVxuICAgICAgICAgICAge2VudHJ5VGFncy5ZRUFSICYmIChcbiAgICAgICAgICAgICAgPHNwYW4+Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPXtlbnRyeVRhZ3MuWUVBUn0+e2VudHJ5VGFncy5ZRUFSfTwvdGltZT4pLjwvc3Bhbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKTtcblxuICAgICAgLy8gSGFuZGxlIGFkZGl0aW9uYWwgZW50cnkgdHlwZXMgaGVyZVxuICAgICAgY2FzZSBcImlucHJvY2VlZGluZ3NcIjpcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8bGkga2V5PXtpbmRleH0+XG4gICAgICAgICAgICA8c3Bhbj57Zm9ybWF0QXV0aG9ycyhlbnRyeVRhZ3MuQVVUSE9SIHx8IFwiXCIpfTwvc3Bhbj4mbmJzcDtcbiAgICAgICAgICAgIDxzcGFuPntlbnRyeVRhZ3MuVElUTEV9PC9zcGFuPi4gSW4gPGk+e2VudHJ5VGFncy5CT09LVElUTEV9PC9pPiwmbmJzcDtcbiAgICAgICAgICAgIDxiPntlbnRyeVRhZ3MuZWRpdG9yfTwvYj4sIHtlbnRyeVRhZ3MuWUVBUn0uXG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKTtcblxuICAgICAgY2FzZSBcInBoZHRoZXNpc1wiOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgIDxzcGFuPntmb3JtYXRBdXRob3JzKGVudHJ5VGFncy5BVVRIT1IgfHwgXCJcIil9PC9zcGFuPiZuYnNwO1xuICAgICAgICAgICAgPHNwYW4+e2VudHJ5VGFncy5USVRMRX08L3NwYW4+LCBQaEQgdGhlc2lzLCB7ZW50cnlUYWdzLlNDSE9PTH0sIHtlbnRyeVRhZ3MuWUVBUn0uXG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgY29uc29sZS53YXJuKGBVbmtub3duIGVudHJ5IHR5cGU6ICR7ZW50cnlUeXBlfWApO1xuICAgICAgICByZXR1cm4gPGxpIGtleT17aW5kZXh9PlVua25vd24gZW50cnkgdHlwZToge2VudHJ5VHlwZX08L2xpPjtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2PlxuICAgICAge3BhcnNlZEVudHJpZXMubGVuZ3RoID09PSAwID8gKFxuICAgICAgICA8cD5ObyBjaXRhdGlvbnMgYXZhaWxhYmxlLjwvcD5cbiAgICAgICkgOiAoXG4gICAgICAgIDxvbD5cbiAgICAgICAgICB7cGFyc2VkRW50cmllcy5tYXAoKGVudHJ5LCBpbmRleCkgPT4gcmVuZGVyQ2l0YXRpb24oZW50cnksIGluZGV4KSl9XG4gICAgICAgIDwvb2w+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmlidGV4UGFyc2VyO1xuIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRGVzY1NvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApXG59XG5cblxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcbiAgYEBhcnRpY2xle2FydGljbGUsICAgXG4gICAgYXV0aG9yPXtSb2RyaWd1ZXMsIFJvYmVydGEgYW5kIEdhYmV0dGEsIENhcm1lbiBTLiBhbmQgUGVkcm8sIEthcmxhIFAuIGFuZCBWYWxkZXRhcm8sIEZhYmlvYW5kIEZlcm5hbmRlcywgTWFyaWEgSS4gTS4gYW5kIE1hZ2FsaFx1MDBFM2VzLCBQYXRyXHUwMEVEY2lhIEsuIFIuIGFuZCBKYW51XHUwMEUxcmlvLCBKb3NcdTAwRTkgTi4sIE1hY2llbCwgTFx1MDBFOWEgTS4gWi59LCAgIFxuICAgIHllYXI9ezIwMDh9LCAgIFxuICAgIHBhZ2VzPXs0NzUtNDg0fSwgICBcbiAgICB0aXRsZT17Q3lzdGljIGZpYnJvc2lzIGFuZCBuZW9uYXRhbCBzY3JlZW5pbmd9LCAgIFxuICAgIHZvbHVtZT17MjR9LCAgIFxuICAgIGpvdXJuYWw9e0NhZGVybm9zIGRlIFNhXHUwMEZBZGUgUFx1MDBGQWJsaWNhfSwgICBcbiAgICBkb2k9ezEwLjE1OTAvUzAxMDItMzExWDIwMDgwMDE2MDAwMDJ9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle2FydGljbGUsICAgXG4gICAgYXV0aG9yPXtGYXJyZWxsLCBQaGlsaXAgTS4gYW5kIFJvY2ssIE1pY2hhZWwgSi4gYW5kIEJha2VyLCBNZWkgVy59LCAgIFxuICAgIHllYXI9ezIwMjB9LCAgIFxuICAgIHBhZ2VzPXs0MDF9LCAgIFxuICAgIHRpdGxlPXtUaGUgSW1wYWN0IG9mIHRoZSBDRlRSIEdlbmUgRGlzY292ZXJ5IG9uIEN5c3RpYyBGaWJyb3NpcyBEaWFnbm9zaXMsIENvdW5zZWxpbmcsIGFuZCBQcmV2ZW50aXZlIFRoZXJhcHl9LCAgIFxuICAgIHZvbHVtZT17MTEoNCl9LCAgIFxuICAgIGpvdXJuYWw9e0dlbmVzfSwgICBcbiAgICBkb2k9ezEwLjMzOTAvZ2VuZXMxMTA0MDQwMX0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7YXJ0aWNsZSwgICBcbiAgICBhdXRob3I9e0x1a2FjcywgR2VyZ2VseSBMLiBhbmQgVmVya21hbiwgQS4gUy59LCAgIFxuICAgIHllYXI9ezIwMTJ9LCAgIFxuICAgIHBhZ2VzPXs4MS05MX0sICAgXG4gICAgdGl0bGU9eyBDRlRSOiBmb2xkaW5nLCBtaXNmb2xkaW5nIGFuZCBjb3JyZWN0aW5nIHRoZSBcdTAzOTRGNTA4IGNvbmZvcm1hdGlvbmFsIGRlZmVjdH0sICAgXG4gICAgdm9sdW1lPXsxOCgyKX0sICAgXG4gICAgam91cm5hbD17VHJlbmRzIGluIG1vbGVjdWxhciBtZWRpY2luZX0sICAgXG4gICAgZG9pPXsxMC4xMDE2L2oubW9sbWVkLjIwMTEuMTAuMDAzfSAgIFxuICB9YCwgICBcbiAgXG4gIGBAbWlzY3tFQ0ZTMjAyNGludGVybmV0LCAgIFxuICAgIGF1dGhvcj17RXVyb3BlYW4gQ3lzdGljIEZpYnJvc2lzIFNvY2lldHl9LCAgIFxuICAgIHRpdGxlPXsyMDIyIEhpZ2hsaWdodCBSZXBvcnQ6IEN5c3RpYyBGaWJyb3NpcyBpbiBFdXJvcGUsIEZhY3RzIGFuZCBGaWd1cmVzfSwgICBcbiAgICB5ZWFyPXsyMDIyfSwgICBcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmVjZnMuZXUvc2l0ZXMvZGVmYXVsdC9maWxlcy8yNDA2MTlfUFJfSGlnaGxpZ2h0cyUyMFJlcG9ydF9wYWdlLnBkZn0sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAyNy4gU2VwdGVtYmVyIDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle2FydGljbGUsICAgXG4gICAgYXV0aG9yPXtCb2JhZGlsbGEsIEouIEwuIGFuZCBNYWNrZSBKciwgTS4gYW5kIEZpbmUsIEouIFAuIGFuZCBGYXJyZWxsLCBQLiBNLn0sICAgXG4gICAgeWVhcj17MjAwMn0sICAgXG4gICAgcGFnZXM9ezU3NS02MDZ9LCAgIFxuICAgIHRpdGxlPXtDeXN0aWMgZmlicm9zaXM6IEEgd29ybGR3aWRlIGFuYWx5c2lzIG9mIENGVFIgbXV0YXRpb25zIC0gY29ycmVsYXRpb24gd2l0aCBpbmNpZGVuY2UgZGF0YSBhbmQgYXBwbGljYXRpb24gdG8gc2NyZWVuaW5nfSwgICBcbiAgICB2b2x1bWU9ezE5KDYpfSwgICBcbiAgICBqb3VybmFsPXtIdW1hbiBNdXRhdGlvbn0sICAgXG4gICAgZG9pPXsxMC4xMDAyL2h1bXUuMTAwNDF9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xlezEwLjMzODkvZnBoYXIuMjAxOS4wMTY2MiwgICBcbiAgICBhdXRob3I9e0xvcGVzLVBhY2hlY28sIE1pcXVcdTAwRTlpYXN9LCAgIFxuICAgIHRpdGxlPXtDRlRSIE1vZHVsYXRvcnM6IFRoZSBDaGFuZ2luZyBGYWNlIG9mIEN5c3RpYyBGaWJyb3NpcyBpbiB0aGUgRXJhIG9mIFByZWNpc2lvbiBNZWRpY2luZX0sICAgXG4gICAgam91cm5hbD17RnJvbnRpZXJzIGluIFBoYXJtYWNvbG9neX0sICAgXG4gICAgdm9sdW1lPXsxMH0sICAgXG4gICAgeWVhcj17MjAyMH0sICAgXG4gICAgZG9pPXsxMC4zMzg5L2ZwaGFyLjIwMTkuMDE2NjJ9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuZnJvbnRpZXJzaW4ub3JnL2FydGljbGVzLzEwLjMzODkvZnBoYXIuMjAxOS4wMTY2Mn0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7YXJlbmEyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtDbGluaWNhbCBUcmlhbHMgQXJlbmF9LCAgIFxuICAgIHRpdGxlPXtDeXN0aWMgZmlicm9zaXM6IGdsb2JhbCBjbGluaWNhbCB0cmlhbHMgbGFuZHNjYXBlIGFuZCB0cmVhdG1lbnRzfSwgICBcbiAgICB5ZWFyPXsyMDI0fSwgICBcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmNsaW5pY2FsdHJpYWxzYXJlbmEuY29tL3Nwb25zb3JlZC9jeXN0aWMtZmlicm9zaXMtZ2xvYmFsLWNsaW5pY2FsLXRyaWFscy1sYW5kc2NhcGUtYW5kLXRyZWF0bWVudHMvfSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDIzLiBTZXB0ZW1iZXIgMjAyNH0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7TVNEbWFudWFsMjAyNGludGVybmV0LCAgIFxuICAgIGF1dGhvcj17U2F3aWNraSwgR30sICAgXG4gICAgdGl0bGU9e011a292aXN6aWRvc2UgKHp5c3Rpc2NoZSBGaWJyb3NlLCBDRil9LCAgIFxuICAgIHllYXI9ezIwMjN9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cubXNkbWFudWFscy5jb20vZGUtZGUvaGVpbS9nZXN1bmRoZWl0c3Byb2JsZW1lLXZvbi1raW5kZXJuL211a292aXN6aWRvc2UvbXVrb3Zpc3ppZG9zZS16eXN0aXNjaGUtZmlicm9zZS1jZn0sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAyMy4gU2VwdGVtYmVyIDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBtaXNje3BhdGllbnQyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtCdXJraGFydCwgTS4gYW5kICBOXHUwMEU0aHJsaWNoLCBMLn0sICAgXG4gICAgdGl0bGU9e1phaGxlbiwgRGF0ZW4gdW5kIEZha3RlbiBmXHUwMEZDciBQYXRpZW50ZW4gdW5kIEFuZ2VoXHUwMEY2cmlnZX0sICAgXG4gICAgeWVhcj17MjAyMn0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5tdWtvLmluZm8vZmlsZWFkbWluL3VzZXJfdXBsb2FkL3dhc193aXJfdHVuL3JlZ2lzdGVyL2JlcmljaHRzYmFlbmRlL3BhdGllbnRlbmJlcmljaHRzYmFuZC5wZGZ9LCAgIFxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMjMuIFNlcHRlbWJlciAyMDI0fSAgIFxuICB9YCwgICBcbiAgXG4gIGBAbWlzY3tNdWtvODIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e011a292aXN6aWRvc2UgZS5WfSwgICBcbiAgICB0aXRsZT17V2FzIGlzdCBNdWtvdmlzemlkb3NlLyBDeXN0aXNjaGUgRmlicm9zZSAoQ0YpP30sICAgXG4gICAgeWVhcj17MjAyNH0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5tdWtvLmluZm8vbXVrb3Zpc3ppZG9zZS91ZWJlci1kaWUtZXJrcmFua3VuZ30sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAyMy4gU2VwdGVtYmVyIDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle0VsYm9ybjIwMTYsICAgXG4gICAgdGl0bGU9e0N5c3RpYyBmaWJyb3Npc30sICAgXG4gICAgdm9sdW1lPXszODh9LCAgIFxuICAgIElTU049ezAxNDAtNjczNn0sICAgXG4gICAgdXJsPXtodHRwOi8vZHguZG9pLm9yZy8xMC4xMDE2L3MwMTQwLTY3MzYoMTYpMDA1NzYtNn0sICAgXG4gICAgRE9JPXsxMC4xMDE2L3MwMTQwLTY3MzYoMTYpMDA1NzYtNn0sICAgXG4gICAgbnVtYmVyPXsxMDA1OX0sICAgXG4gICAgam91cm5hbD17VGhlIExhbmNldH0sICAgXG4gICAgcHVibGlzaGVyPXtFbHNldmllciBCVn0sICAgXG4gICAgYXV0aG9yPXtFbGJvcm4sIEogU3R1YXJ0fSwgICBcbiAgICB5ZWFyPXsyMDE2fSwgICBcbiAgICBtb250aD17bm92fSwgICBcbiAgICBwYWdlcz17MjUxOS0yNTMxfSAgIFxuICB9YCwgICBcbiAgXG4gIGBAYm9va3syMDAxLCAgIFxuICAgIHRpdGxlPXtDeXN0aXNjaGUgRmlicm9zZX0sXG4gICAgYXV0aG9yPXtSZWluaGFyZHQsIEQuIGFuZCBHXHUwMEY2dHosIE0uIGFuZCBLcmFlbWVyLCBSLiBhbmQgU2NoXHUwMEY2bmksIE0ufSwgICBcbiAgICBJU0JOPXs5NzgzNjQyNTY3OTY0fSwgICBcbiAgICB1cmw9e2h0dHA6Ly9keC5kb2kub3JnLzEwLjEwMDcvOTc4LTMtNjQyLTU2Nzk2LTR9LCAgIFxuICAgIERPST17MTAuMTAwNy85NzgtMy02NDItNTY3OTYtNH0sICAgXG4gICAgcHVibGlzaGVyPXtTcHJpbmdlciBCZXJsaW4gSGVpZGVsYmVyZ30sICAgXG4gICAgeWVhcj17MjAwMX0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7YmlvbTQwMjA0OTgsICAgXG4gICAgYXV0aG9yPXtXYW5nLCBYaWFvZG9uZyBSb2JlcnQgYW5kIExpLCBDaGVuZ2xvbmd9LCAgIFxuICAgIHRpdGxlPXtEZWNvZGluZyBGNTA4ZGVsIE1pc2ZvbGRpbmcgaW4gQ3lzdGljIEZpYnJvc2lzfSwgICBcbiAgICBqb3VybmFsPXtCaW9tb2xlY3VsZXN9LCAgIFxuICAgIHZvbHVtZT17NH0sICAgXG4gICAgeWVhcj17MjAxNH0sICAgXG4gICAgbnVtYmVyPXsyfSwgICBcbiAgICBwYWdlcz17NDk4LS01MDl9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cubWRwaS5jb20vMjIxOC0yNzNYLzQvMi80OTh9LCAgIFxuICAgIFB1Yk1lZElEPXsyNDk3MDIyN30sICAgXG4gICAgSVNTTj17MjIxOC0yNzNYfSwgICBcbiAgICBET0k9ezEwLjMzOTAvYmlvbTQwMjA0OTh9ICAgXG4gIH1gLCAgIFxuICAvKiAxNCAqL1xuICBgQGFydGljbGV7UFVDSEVMTEUyMDAyMTE1LCAgIFxuICAgIHRpdGxlPXtBaXJ3YXkgbXVjdXMgaW4gY3lzdGljIGZpYnJvc2lzfSwgICBcbiAgICBqb3VybmFsPXtQYWVkaWF0cmljIFJlc3BpcmF0b3J5IFJldmlld3N9LCAgIFxuICAgIHZvbHVtZT17M30sICAgXG4gICAgbnVtYmVyPXsyfSwgICBcbiAgICBwYWdlcz17MTE1LTExOX0sICAgXG4gICAgeWVhcj17MjAwMn0sICAgXG4gICAgaXNzbj17MTUyNi0wNTQyfSwgICBcbiAgICBkb2k9e2h0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L1MxNTI2LTA1NTAoMDIpMDAwMDUtN30sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MxNTI2MDU1MDAyMDAwMDU3fSwgICBcbiAgICBhdXRob3I9e1B1Y2hlbGxlLCBFZGl0aCBhbmQgQmFqb2xldCwgT2RpbGUgYW5kIEFiXHUwMEU5bHksIE1pY2hlbH0sICAgXG4gICAga2V5d29yZHM9e2N5c3RpYyBmaWJyb3NpcywgYWlyd2F5IG11Y3VzLCBhaXJ3YXkgc3VyZmFjZSBsaXF1aWQsIHJoZW9sb2d5LCBtdWNvY2lsaWFyeSBjbGVhcmFuY2UsIG11Y3VzIGNvdWdoIHRyYW5zcG9ydH0gICBcbiAgfWAsICAgLyogMTUgKi9cbiAgYEBhcnRpY2xle0FuemFsb25lMjAxOSxcbiAgYXV0aG9yICAgID0ge0FuemFsb25lLCBBbmRyZXcgYW5kIFJhbmRvbHBoLCBQZXl0b24gYW5kIERhdmlzLCBKZXNzaWUgYW5kIFNvdXNhLCBBeWFsdXIgYW5kIEtvYmxhbiwgTHVrZSBhbmQgTGV2eSwgSm9uYXRoYW4gYW5kIENoZW4sIFBhdHJpY2sgYW5kIFdpbHNvbiwgQ2hhcmxvdHRlIGFuZCBOZXdieSwgR3JlZyBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBMaXUsIERhdmlkfSxcbiAgdGl0bGUgICAgID0ge1NlYXJjaC1hbmQtcmVwbGFjZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQX0sXG4gIGpvdXJuYWwgICA9IHtOYXR1cmV9LFxuICB2b2x1bWUgICAgPSB7NTc2fSxcbiAgcGFnZXMgICAgID0gezE0OS0tMTU3fSxcbiAgeWVhciAgICAgID0gezIwMTl9LFxuICBkb2kgICAgICAgPSB7MTAuMTAzOC9zNDE1ODYtMDE5LTE3MTEtNH1cbn1cbmAsLyogMTYgKi9cbmBAYXJ0aWNsZXtEb21hbjIwMjMsXG4gIGF1dGhvciAgICA9IHtEb21hbiwgSmFjb2IgYW5kIFBhbmRleSwgU2lkZGhhcnRoIGFuZCBOZXVnZWJhdWVyLCBNYXJpYSBhbmQgQW4sIE1laXFpIGFuZCBEYXZpcywgSmVzc2llIGFuZCBSYW5kb2xwaCwgUGV5dG9uIGFuZCBNY0Vscm95LCBBbmRyZXcgYW5kIEdhbywgWGlhb3h1IGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIFJpY2h0ZXIsIE1hcmt1cyBhbmQgRXZlcmV0dGUsIEtlYXRvbiBhbmQgQmFuc2tvdGEsIFNhcm9qIGFuZCBUaWFuLCBLYW5ncnVpIGFuZCBUYW8sIFl1aGFuZyBhbmQgVG9sYXIsIEpha3ViIGFuZCBPc2Jvcm4sIE1hdHRoZXcgYW5kIExpdSwgRGF2aWR9LFxuICB0aXRsZSAgICAgPSB7UGhhZ2UtYXNzaXN0ZWQgZXZvbHV0aW9uIGFuZCBwcm90ZWluIGVuZ2luZWVyaW5nIHlpZWxkIGNvbXBhY3QsIGVmZmljaWVudCBwcmltZSBlZGl0b3JzfSxcbiAgam91cm5hbCAgID0ge0NlbGx9LFxuICB2b2x1bWUgICAgPSB7MTg2fSxcbiAgcGFnZXMgICAgID0gezM5ODMtLTQwMDIuZTI2fSxcbiAgeWVhciAgICAgID0gezIwMjN9LFxuICBkb2kgICAgICAgPSB7MTAuMTAxNi9qLmNlbGwuMjAyMy4wNy4wMzl9XG59XG5gXG4sXG5gQGFydGljbGV7R2Fkc2J5MjAwNiwgXG5cbiAgdGl0bGU9e1RoZSBBQkMgcHJvdGVpbiB0dXJuZWQgY2hsb3JpZGUgY2hhbm5lbCB3aG9zZSBmYWlsdXJlIGNhdXNlcyBjeXN0aWMgZmlicm9zaXN9LCBcblxuICBhdXRob3I9e0dhZHNieSwgRGF2aWQgQy4gYW5kIFZlcmdhbmksIFBhb2xhIGFuZCBDc2FuXHUwMEUxZHksIEx7XFwnYX1zemx7XFwnb319LCBcblxuICBqb3VybmFsPXtOYXR1cmV9LCBcblxuICB2b2x1bWU9ezQ0MH0sIFxuXG4gIG51bWJlcj17NzA4M30sIFxuXG4gIHBhZ2VzPXs0NzctLTQ4M30sIFxuXG4gIHllYXI9ezIwMDZ9LCBcblxuICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgXG5cbiAgZG9pPXsxMC4xMDM4L25hdHVyZTA0NzEyfSBcblxufSBgLFxuXG5gQGFydGljbGV7SHdhbmcyMDEzLCBcblxuICB0aXRsZT17VGhlIENGVFIgaW9uIGNoYW5uZWw6IGdhdGluZywgcmVndWxhdGlvbiwgYW5kIGFuaW9uIHBlcm1lYXRpb259LCBcblxuICBhdXRob3I9e0h3YW5nLCBUenloLUNoYW5nIGFuZCBLaXJrLCBLZXZpbiBMLn0sIFxuXG4gIGpvdXJuYWw9e0NvbGQgU3ByaW5nIEhhcmJvciBQZXJzcGVjdGl2ZXMgaW4gTWVkaWNpbmV9LCBcblxuICB2b2x1bWU9ezN9LCBcblxuICBudW1iZXI9ezF9LCBcblxuICBwYWdlcz17YTAwOTQ5OH0sIFxuXG4gIHllYXI9ezIwMTN9LCBcblxuICBwdWJsaXNoZXI9e0NvbGQgU3ByaW5nIEhhcmJvciBMYWJvcmF0b3J5IFByZXNzfSwgXG5cbiAgZG9pPXsxMC4xMTAxL2NzaHBlcnNwZWN0LmEwMDk0OTh9IFxuXG59IGAsXG4gYEBhcnRpY2xle1Jpb3JkYW4yMDA4LCBcblxuICB0aXRsZT17Q0ZUUiBmdW5jdGlvbiBhbmQgcHJvc3BlY3RzIGZvciB0aGVyYXB5fSwgXG5cbiAgYXV0aG9yPXtSaW9yZGFuLCBKb2huIFIufSwgXG5cbiAgam91cm5hbD17QW5udWFsIFJldmlldyBvZiBCaW9jaGVtaXN0cnl9LCBcblxuICB2b2x1bWU9ezc3fSwgXG5cbiAgcGFnZXM9ezcwMS0tNzI2fSwgXG5cbiAgeWVhcj17MjAwOH0sIFxuXG4gIHB1Ymxpc2hlcj17QW5udWFsIFJldmlld3N9LCBcblxuICBkb2k9ezEwLjExNDYvYW5udXJldi5iaW9jaGVtLjc1LjEwMzAwNC4xNDI1MzJ9IFxuXG59IGAsXG5cbmBAYXJ0aWNsZXtTaGVwcGFyZDE5OTksIFxuXG4gIHRpdGxlPXtTdHJ1Y3R1cmUgYW5kIGZ1bmN0aW9uIG9mIHRoZSBDRlRSIGNobG9yaWRlIGNoYW5uZWx9LCBcblxuICBhdXRob3I9e1NoZXBwYXJkLCBEYXZpZCBOLiBhbmQgV2Vsc2gsIE1pY2hhZWwgSi59LCBcblxuICBqb3VybmFsPXtQaHlzaW9sb2dpY2FsIFJldmlld3N9LCBcblxuICB2b2x1bWU9ezc5fSwgXG5cbiAgbnVtYmVyPXsxIFN1cHBsfSwgXG5cbiAgcGFnZXM9e1MyMy0tUzQ1fSwgXG5cbiAgeWVhcj17MTk5OX0sIFxuXG4gIHB1Ymxpc2hlcj17QW1lcmljYW4gUGh5c2lvbG9naWNhbCBTb2NpZXR5fSwgXG5cbiAgZG9pPXsxMC4xMTUyL3BoeXNyZXYuMTk5OS43OS4xLlMyM30gXG5cbn0gYCxcbiBgIEBhcnRpY2xle0NoZW4yMDA4LCBcblxuICB0aXRsZT17Q0ZUUiBhY3RpdmF0aW9uIGJ5IHBob3NwaG9yeWxhdGlvbn0sIFxuXG4gIGF1dGhvcj17Q2hlbiwgSmVuZy1IYXVyIGFuZCBDaGFuZywgWHVlLUJhb30sIFxuXG4gIGpvdXJuYWw9e0pvdXJuYWwgb2YgQmlvbWVkaWNhbCBTY2llbmNlfSwgXG5cbiAgdm9sdW1lPXsxNX0sIFxuXG4gIG51bWJlcj17Nn0sIFxuXG4gIHBhZ2VzPXs2NTktLTY3Mn0sIFxuXG4gIHllYXI9ezIwMDh9LCBcblxuICBwdWJsaXNoZXI9e1NwcmluZ2VyfSwgXG5cbiAgZG9pPXsxMC4xMDA3L3MxMTM3My0wMDgtOTI2MC00fSBcblxufSBgLFxuXG5gQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17THVrYWNzLCBHZXJnZWx5IEwuOyBWZXJrbWFuLCBBLiBTLn0sIFxuXG55ZWFyPXsyMDEyfSwgXG5cbm1vbnRoPXsyfSwgXG5cbnBhZ2VzPXs4MS05MX0sIFxuXG50aXRsZT17IENGVFI6IGZvbGRpbmcsIG1pc2ZvbGRpbmcgYW5kIGNvcnJlY3RpbmcgdGhlIFx1MDM5NEY1MDggY29uZm9ybWF0aW9uYWwgZGVmZWN0fSwgXG5cbnZvbHVtZT17MTgoMil9LCBcblxuam91cm5hbD17VHJlbmRzIGluIG1vbGVjdWxhciBtZWRpY2luZX0sIFxuXG5kb2k9ezEwLjEwMTYvai5tb2xtZWQuMjAxMS4xMC4wMDN9IFxuXG59IGAsXG5gQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17RmFycmVsbCwgUGhpbGlwIE0uOyBSb2NrLCBNaWNoYWVsIEouOyBCYWtlciwgTWVpIFcufSwgXG5cbnllYXI9ezIwMjB9LCBcblxubW9udGg9ezA0fSwgXG5cbnBhZ2VzPXs0MDF9LCBcblxudGl0bGU9e1RoZSBJbXBhY3Qgb2YgdGhlIENGVFIgR2VuZSBEaXNjb3Zlcnkgb24gQ3lzdGljIEZpYnJvc2lzIERpYWdub3NpcywgQ291bnNlbGluZywgYW5kIFByZXZlbnRpdmUgVGhlcmFweX0sIFxuXG52b2x1bWU9ezExKDQpfSwgXG5cbmpvdXJuYWw9e0dlbmVzfSwgXG5cbmRvaT17MTAuMzM5MC9nZW5lczExMDQwNDAxfSBcblxufSBgLFxuXG5gQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17Um9kcmlndWVzLCBSb2JlcnRhOyBHYWJldHRhLCBDYXJtZW4gUy47IFBlZHJvLCBLYXJsYSBQLjsgVmFsZGV0YXJvLCBGYWJpbzsgRmVybmFuZGVzLCBNYXJpYSBJLiBNLjsgTWFnYWxoXHUwMEUzZXMsIFBhdHJcdTAwRURjaWEgSy4gUi47IEphbnVcdTAwRTFyaW8sIEpvc1x1MDBFOSBOLiwgTWFjaWVsLCBMXHUwMEU5YSBNLiBaLn0sIFxuXG55ZWFyPXsyMDA4fSwgXG5cbm1vbnRoPXsgfSwgXG5cbnBhZ2VzPXs0NzUtNDg0fSwgXG5cbnRpdGxlPXtDeXN0aWMgZmlicm9zaXMgYW5kIG5lb25hdGFsIHNjcmVlbmluZ30sIFxuXG52b2x1bWU9ezI0fSwgXG5cbmpvdXJuYWw9e0NhZGVybm9zIGRlIFNhXHUwMEZBZGUgUFx1MDBGQWJsaWNhfSwgXG5cbmRvaT17MTAuMTU5MC9TMDEwMi0zMTFYMjAwODAwMTYwMDAwMn0gXG5cbn0gYCxcblxuYEBhcnRpY2xle2FydGljbGUsIFxuXG5hdXRob3I9e0FtaWNvLCBHaXVsaWE7IEJyYW5kYXMsIENoaWFyYTsgTW9yYW4sIE9zY2FyOyBCYXJvbmksIERlYm9yYX0sIFxuXG55ZWFyPXsyMDE5fSwgXG5cbm1vbnRoPXsxfSwgXG5cbnBhZ2VzPXs1NDYzfSwgXG5cbnRpdGxlPXtVbnJhdmVsbGluZyB0aGUgUmVnaW9ucyBvZiBNdXRhbnQgRjUwOGRlbC1DRlRSIE1vcmUgU3VzY2VwdGlibGUgdG8gdGhlIEFjdGlvbiBvZiBGb3VyIEN5c3RpYyBGaWJyb3NpcyBDb3JyZWN0b3JzfSwgXG5cbnZvbHVtZT17MjAoMjEpfSwgXG5cbmpvdXJuYWw9e0ludGVybmF0aW9uYWwgSm91cm5hbCBvZiBNb2xlY3VsYXIgU2NpZW5jZXN9LCBcblxuZG9pPXsxMC4zMzkwL2lqbXMyMDIxNTQ2M30gXG5cbn0gYCxcblxuYEBib29re0JyYXVuMjAyMkJhc2lzbGVocmJ1Y2gsIFxuXG5pc2JuID0gezk3ODM0Mzc0MTE0NDF9LCBcblxubGFuZ3VhZ2UgPSB7ZGV9LCBcblxubnVtcGFnZXMgPSB7MTIwOH0sIFxuXG50aXRsZSA9IHtCYXNpc2xlaHJidWNoIElubmVyZSBNZWRpemlufSwgXG5cbnVybCA9IHtodHRwczovL2Jvb2tzLmdvb2dsZS5jb20vYm9va3MvYWJvdXQvQmFzaXNsZWhyYnVjaF9Jbm5lcmVfTWVkaXppbi5odG1sP2hsPSZpZD1CUzh0endFQUNBQUp9LCBcblxuYXV0aG9yID0ge0JyYXVuLCBKXHUwMEY2cmcgYW5kIE1cdTAwRkNsbGVyLVdpZWxhbmQsIERpcmt9LCBcblxuZGF0ZSA9IHsyMDIyLTA5LTIwfSwgXG5cbnllYXIgPSB7MjAyMn0sIFxuXG5tb250aCA9IHs5fSwgXG5cbmRheSA9IHsyMH0sIFxuXG59IGAsXG5cbi8qIDI3ICovXG4gIGBAYXJ0aWNsZXtXZW5rXzIwMTAsICAgXG4gICAgdGl0bGU9e0N5c3RpYyBGaWJyb3NpcyBQcmVzZW50aW5nIFdpdGggRGVybWF0aXRpc30sICAgXG4gICAgdm9sdW1lPXsxNDZ9LCAgIFxuICAgIElTU049ezAwMDMtOTg3WH0sICAgXG4gICAgdXJsPXtodHRwOi8vZHguZG9pLm9yZy8xMC4xMDAxL2FyY2hkZXJtYXRvbC4yMDA5LjM2MX0sICAgXG4gICAgRE9JPXsxMC4xMDAxL2FyY2hkZXJtYXRvbC4yMDA5LjM2MX0sICAgXG4gICAgbnVtYmVyPXsyfSwgICBcbiAgICBqb3VybmFsPXtBcmNoaXZlcyBvZiBEZXJtYXRvbG9neX0sICAgXG4gICAgcHVibGlzaGVyPXtBbWVyaWNhbiBNZWRpY2FsIEFzc29jaWF0aW9uIChBTUEpfSwgICBcbiAgICBhdXRob3I9e1dlbmssIEt1cnQgUy4gYW5kIEhpZ2dpbnMsIEtyaXN0ZW4gQi4gYW5kIEdyZWVyLCBLZW5uZXRoIEUufSwgICBcbiAgICB5ZWFyPXsyMDEwfSwgICBcbiAgICBtb250aD17ZmVifSAgIFxuICB9YCwgICBcblxuXG4gIC8qIDI4ICovXG4gIGBAbWlzY3ttdWtvbGVpdGxpbmllbjIwMjRpbnRlcm5ldCwgXG4gICBhdXRob3IgICAgICAgPSB7TS4gU3Rlcm4sIEguIEVsbGVtdW50ZXIsIEIuIFBhbG0sIEguLUcuIFBvc3NlbHQsIEMuIFNtYWN6bnl9LCBcbiAgIHRpdGxlICAgICAgICA9IHtNdWtvdmlzemlkb3NlIChDeXN0aXNjaGUgRmlicm9zZSk6IEVyblx1MDBFNGhydW5nIHVuZCBleG9rcmluZSBQYW5rcmVhc2luc3VmZml6aWVuen0sIFxuICAgeWVhciAgICAgICAgID0gezIwMTF9LCBcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5tdWtvLmluZm8vZmlsZWFkbWluL3VzZXJfdXBsb2FkL3dhc193aXJfdHVuL2xlaXRsaW5pZW4vTExfUzFfbXVrb3Zpc3ppZG9zZV9lcm5hZWhydW5nX2V4b2tyaW5lX3BhbmtyZWFzaW5zdWZmaXppZW56LnBkZlx1MjAwQn0sIFxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcbiB9IGAsXG5cbiBgIFxuXG5AbWlzY3tDRkY0MjAyNGludGVybmV0LCBcbiAgIGF1dGhvciAgICAgICA9IHtDeXN0aWMgRmlicm9zaXMgRm91bmRhdGlvbn0sIFxuICAgdGl0bGUgICAgICAgID0ge1RoZSBEaWdlc3RpdmUgVHJhY3R9LCBcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuY2ZmLm9yZy9tYW5hZ2luZy1jZi9kaWdlc3RpdmUtdHJhY3RcdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSBgLFxuICBgIFxuXG5AYXJ0aWNsZXtQb3pvMjAyMCwgXG5cbiB0aXRsZSA9IHtDeXN0aWMgZmlicm9zaXMtcmVsYXRlZCBkaWFiZXRlczogVGhlIHVubWV0IG5lZWR9LCBcblxuIHZvbHVtZSA9IHsxMX0sIFxuXG4gSVNTTiA9IHsxOTQ4LTkzNTh9LCBcblxuIHVybCA9IHtodHRwOi8vZHguZG9pLm9yZy8xMC40MjM5L3dqZC52MTEuaTYuMjEzfSwgXG5cbiBET0kgPSB7MTAuNDIzOS93amQudjExLmk2LjIxM30sIFxuXG4gbnVtYmVyID0gezZ9LCBcblxuIGpvdXJuYWwgPSB7V29ybGQgSm91cm5hbCBvZiBEaWFiZXRlc30sIFxuXG4gcHVibGlzaGVyID0ge0JhaXNoaWRlbmcgUHVibGlzaGluZyBHcm91cCBJbmMufSwgXG5cbiBhdXRob3IgPSB7UG96bywgTGVvbmFyZG8gYW5kIEJlbGxvLCBGYXRpbWFoIGFuZCBNZW5kZXosIFlhbWVseSBhbmQgU3VyYW5pLCBTYWxpbX0sIFxuXG4geWVhciA9IHsyMDIwfSwgXG5cbiBtb250aCA9IGp1biwgXG5cbiBwYWdlcyA9IHsyMTNcdTIwMTMyMTd9IFxuXG59XHRgLFxuICBgQG1pc2N7TXVrbzcyMDI0aW50ZXJuZXQsIFxuICAgYXV0aG9yICAgICAgID0ge011a292aXN6aWRvc2UgZS5WLn0sIFxuICAgdGl0bGUgICAgICAgID0ge1RoZXJhcGllIGRlciBNdWtvdmlzemlkb3NlfSwgXG4gICB5ZWFyICAgICAgICAgPSB7MjAxN30sIFxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlI2MxNTcxXHUyMDBCfSwgXG4gICBub3RlICAgICAgICAgPSB7WnVncmlmZiBhbSAyNS4gU2VwdGVtYmVyIDIwMjR9IFxuIH0gIGAsXG5cbmBAbWlzY3tpbnRlc3RpbmUyMDI0aW50ZXJuZXQsIFxuICAgYXV0aG9yICAgICAgID0ge0luc3RpdHV0ZSBmb3IgUXVhbGl0eSBhbmQgRWZmaWNpZW5jeSBpbiBIZWFsdGggQ2FyZSAoSVFXaUcpfSwgXG4gICB0aXRsZSAgICAgICAgPSB7SW4gYnJpZWY6IEhvdyBkb2VzIHRoZSBpbnRlc3RpbmUgd29yaz99LCBcbiAgIHllYXIgICAgICAgICA9IHsyMDIxfSwgXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cubmNiaS5ubG0ubmloLmdvdi9ib29rcy9OQksyNzkzMDNcdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSAgYCxcbiAgIGBAYXJ0aWNsZXtEZUxpc2xlMjAxMywgXG5cbiB0aXRsZSA9IHtUaGUgQ3lzdGljIEZpYnJvc2lzIEludGVzdGluZX0sIFxuXG4gdm9sdW1lID0gezN9LCBcblxuIElTU04gPSB7MjE1Ny0xNDIyfSwgXG5cbiB1cmwgPSB7aHR0cDovL2R4LmRvaS5vcmcvMTAuMTEwMS9jc2hwZXJzcGVjdC5hMDA5NzUzfSwgXG5cbiBET0kgPSB7MTAuMTEwMS9jc2hwZXJzcGVjdC5hMDA5NzUzfSwgXG5cbiBudW1iZXIgPSB7OX0sIFxuXG4gam91cm5hbCA9IHtDb2xkIFNwcmluZyBIYXJib3IgUGVyc3BlY3RpdmVzIGluIE1lZGljaW5lfSwgXG5cbiBwdWJsaXNoZXIgPSB7Q29sZCBTcHJpbmcgSGFyYm9yIExhYm9yYXRvcnl9LCBcblxuIGF1dGhvciA9IHtEZSBMaXNsZSwgUi4gQy4gYW5kIEJvcm93aXR6LCBELn0sIFxuXG4geWVhciA9IHsyMDEzfSwgXG5cbiBtb250aCA9IGp1biwgXG5cbiBwYWdlcyA9IHthMDA5NzUzXHUyMDEzYTAwOTc1M30gXG5cbn0gYCxcbiBgQG1pc2N7R2VzdW5kMjAyNGludGVybmV0LCBcbiAgIGF1dGhvciAgICAgICA9IHtHRVNVTkRoZWl0LkdWLkFUfSwgXG4gICB0aXRsZSAgICAgICAgPSB7TGViZXI6IEF1ZmJhdSB1bmQgRnVua3Rpb259LCBcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuZ2VzdW5kaGVpdC5ndi5hdC9rcmFua2hlaXRlbi9sZWJlci9mdW5rdGlvbi5odG1sXHUyMDBCfSwgXG4gICBub3RlICAgICAgICAgPSB7WnVncmlmZiBhbSAyNS4gU2VwdGVtYmVyIDIwMjR9IFxuIH0gYCxcblxuIGBAbWlzY3tDRlQyMjAyNGludGVybmV0LCBcbiAgIGF1dGhvciAgICAgICA9IHtDeXN0aWMgRmlicm9zaXMgVHJ1c3R9LCBcbiAgIHRpdGxlICAgICAgICA9IHtIb3cgZG9lcyBjeXN0aWMgZmlicm9zaXMgYWZmZWN0IHRoZSBib2R5P30sIFxuICAgeWVhciAgICAgICAgID0gezIwMjR9LCBcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5jeXN0aWNmaWJyb3Npcy5vcmcudWsvd2hhdC1pcy1jeXN0aWMtZmlicm9zaXMvaG93LWRvZXMtY3lzdGljLWZpYnJvc2lzLWFmZmVjdC10aGUtYm9keVx1MjAwQn0sIFxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcbiB9ICBgLFxuXG4gYEBtaXNje0xpdmVyMjAyNGludGVybmV0LCBcbiAgIGF1dGhvciAgICAgICA9IHtCZXRhcHVkaSwgQi4sIEFsZWVtLCBBLiwgS290aGFkaWEsIEpQLn0sIFxuICAgdGl0bGUgICAgICAgID0ge0N5c3RpYyBGaWJyb3NpcyBhbmQgTGl2ZXIgRGlzZWFzZX0sIFxuICAgeWVhciAgICAgICAgID0gezIwMjR9LCBcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uY2JpLm5sbS5uaWguZ292L2Jvb2tzL05CSzU1NjA4Ni9cdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSAgYCxcbmBAYm9va3tuZXR0ZXIyMDE4YXRsYXMsIFxuXG4gdGl0bGU9e0F0bGFzIG9mIEh1bWFuIEFuYXRvbXl9LCBcblxuIGF1dGhvcj17TmV0dGVyLCBGcmFuayBILn0sIFxuXG4geWVhcj17MjAxOH0sIFxuXG4gZWRpdGlvbj17N3RofSwgXG5cbiBwdWJsaXNoZXI9e0Vsc2V2aWVyfSBcblxufSBgLFxuYEBib29re3RvcnRvcmEyMDE2cHJpbmNpcGxlcywgXG5cbiB0aXRsZT17UHJpbmNpcGxlcyBvZiBBbmF0b215IGFuZCBQaHlzaW9sb2d5fSwgXG5cbiBhdXRob3I9e1RvcnRvcmEsIEdlcmFyZCBKLiBhbmQgRGVycmlja3NvbiwgQnJ5YW4gSC59LCBcblxuIHllYXI9ezIwMTZ9LCBcblxuIGVkaXRpb249ezE1dGh9LCBcblxuIHB1Ymxpc2hlcj17V2lsZXl9IFxuXG59IGAsXG5gQGFydGljbGV7RG9kZ2VfMTk5NSwgXG5cbnRpdGxlPXtNYWxlIGZlcnRpbGl0eSBpbiBjeXN0aWMgZmlicm9zaXN9LCBcblxudm9sdW1lPXszNDZ9LCBcblxuSVNTTj17MDE0MC02NzM2fSwgXG5cbnVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTAxNi9zMDE0MC02NzM2KDk1KTkxNDMxLTV9LCBcblxuRE9JPXsxMC4xMDE2L3MwMTQwLTY3MzYoOTUpOTE0MzEtNX0sIFxuXG5udW1iZXI9ezg5NzV9LCBcblxuam91cm5hbD17VGhlIExhbmNldH0sIFxuXG5wdWJsaXNoZXI9e0Vsc2V2aWVyIEJWfSwgXG5cbmF1dGhvcj17RG9kZ2UsIEouQS59LCBcblxueWVhcj17MTk5NX0sIFxuXG5tb250aD1zZXAsIFxuXG5wYWdlcz17NTg3XHUyMDEzNTg4fSBcblxufSBgLFxuYEBhcnRpY2xle0RhdmlzXzIwMDYsIHRpdGxlPXtDeXN0aWMgRmlicm9zaXMgU2luY2UgMTkzOH0sIHZvbHVtZT17MTczfSwgSVNTTj17MTUzNS00OTcwfSwgdXJsPXtodHRwOi8vZHguZG9pLm9yZy8xMC4xMTY0L3JjY20uMjAwNTA1LTg0MG9lfSwgRE9JPXsxMC4xMTY0L3JjY20uMjAwNTA1LTg0MG9lfSwgbnVtYmVyPXs1fSwgam91cm5hbD17QW1lcmljYW4gSm91cm5hbCBvZiBSZXNwaXJhdG9yeSBhbmQgQ3JpdGljYWwgQ2FyZSBNZWRpY2luZX0sIHB1Ymxpc2hlcj17QW1lcmljYW4gVGhvcmFjaWMgU29jaWV0eX0sIGF1dGhvcj17RGF2aXMsIFBhbWVsYSBCLn0sIHllYXI9ezIwMDZ9LCBtb250aD1tYXIsIHBhZ2VzPXs0NzVcdTIwMTM0ODJ9IH0gYCxcbmBAbWlzY3tDRlQyMDI0aW50ZXJuZXQsIFxuICAgYXV0aG9yICAgICAgID0ge0N5c3RpYyBGaWJyb3NpcyBUcnVzdH0sIFxuICAgdGl0bGUgICAgICAgID0ge0ZlcnRpbGl0eSBhbmQgY3lzdGljIGZpYnJvc2lzfSwgXG4gICB5ZWFyICAgICAgICAgPSB7MjAyNH0sIFxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LmN5c3RpY2ZpYnJvc2lzLm9yZy51ay93aGF0LWlzLWN5c3RpYy1maWJyb3Npcy9ob3ctZG9lcy1jeXN0aWMtZmlicm9zaXMtYWZmZWN0LXRoZS1ib2R5L3N5bXB0b21zLW9mLWN5c3RpYy1maWJyb3Npcy9mZXJ0aWxpdHkgXHUyMDBCfSwgXG4gICBub3RlICAgICAgICAgPSB7WnVncmlmZiBhbSAyNS4gU2VwdGVtYmVyIDIwMjR9IFxuIH0gYCxcbiAgYEBtaXNje1NHVzIwMjRpbnRlcm5ldCwgXG4gICBhdXRob3IgICAgICAgPSB7U3RpZnR1bmcgR2VzdW5kaGVpdCBXaXNzZW59LCBcbiAgIHRpdGxlICAgICAgICA9IHtXaWUgZnVua3Rpb25pZXJ0IGRpZSBMdW5nZT99LCBcbiAgIHllYXIgICAgICAgICA9IHsyMDIzfSwgXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuc3RpZnR1bmctZ2VzdW5kaGVpdHN3aXNzZW4uZGUvZ2VzdW5kZXMtbGViZW4va29lcnBlci13aXNzZW4vd2llLWZ1bmt0aW9uaWVydC1kaWUtbHVuZ2VcdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSAgYCxcbiAgIGBAbWlzY3tDRlNvdXJjZTIwMjRpbnRlcm5ldCwgXG4gICBhdXRob3IgICAgICAgPSB7Q0YgU291cmNlfSwgXG4gICB0aXRsZSAgICAgICAgPSB7QWJuZWhtZW5kZSBMdW5nZW5mdW5rdGlvbiBhbHMgTGVpdHN5bXB0b20gYmVpIENGfSwgXG4gICB5ZWFyICAgICAgICAgPSB7MjAyM30sIFxuICAgdXJsICAgICAgICAgID0ge2h0dHA6Ly93d3cuY2Zzb3VyY2UuYXQvZGUvY3lzdGlzY2hlLWZpYnJvc2Uvc3ltcHRvbWUvbHVuZ2VcdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSBgLFxuICBgQG1pc2N7Q0ZGMzIwMjRpbnRlcm5ldCwgXG4gICBhdXRob3IgICAgICAgPSB7Q3lzdGljIEZpYnJvc2lzIEZvdW5kYXRpb259LCBcbiAgIHRpdGxlICAgICAgICA9IHtBYm91dCBDeXN0aWMgRmlicm9zaXN9LCBcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuY2ZmLm9yZy9pbnRyby1jZi9hYm91dC1jeXN0aWMtZmlicm9zaXNcdTIwMEJ9LCBcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXG4gfSBgLFxuICBgQGFydGljbGV7Um93ZTIwMDUsIFxuXG4gdGl0bGUgPSB7Q3lzdGljIEZpYnJvc2lzfSwgXG5cbiB2b2x1bWUgPSB7MzUyfSwgXG5cbiBJU1NOID0gezE1MzMtNDQwNn0sIFxuXG4gdXJsID0ge2h0dHA6Ly9keC5kb2kub3JnLzEwLjEwNTYvTkVKTXJhMDQzMTg0fSwgXG5cbiBET0kgPSB7MTAuMTA1Ni9uZWptcmEwNDMxODR9LCBcblxuIG51bWJlciA9IHsxOX0sIFxuXG4gam91cm5hbCA9IHtOZXcgRW5nbGFuZCBKb3VybmFsIG9mIE1lZGljaW5lfSwgXG5cbiBwdWJsaXNoZXIgPSB7TWFzc2FjaHVzZXR0cyBNZWRpY2FsIFNvY2lldHl9LCBcblxuIGF1dGhvciA9IHtSb3dlLCBTdGV2ZW4gTS4gYW5kIE1pbGxlciwgU3RhY2V5IGFuZCBTb3JzY2hlciwgRXJpYyBKLn0sIFxuXG4geWVhciA9IHsyMDA1fSwgXG5cbiBtb250aCA9IG1heSwgXG5cbiBwYWdlcyA9IHsxOTkyXHUyMDEzMjAwMX0gXG5cbn0gYCxcbmBAYXJ0aWNsZXtPX1N1bGxpdmFuXzIwMDksIHRpdGxlPXtDeXN0aWMgZmlicm9zaXN9LCB2b2x1bWU9ezM3M30sIElTU049ezAxNDAtNjczNn0sIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTAxNi9zMDE0MC02NzM2KDA5KTYwMzI3LTV9LCBET0k9ezEwLjEwMTYvczAxNDAtNjczNigwOSk2MDMyNy01fSwgbnVtYmVyPXs5Njc4fSwgam91cm5hbD17VGhlIExhbmNldH0sIHB1Ymxpc2hlcj17RWxzZXZpZXIgQlZ9LCBhdXRob3I9e09cdTIwMTlTdWxsaXZhbiwgQnJpYW4gUCBhbmQgRnJlZWRtYW4sIFN0ZXZlbiBEfSwgeWVhcj17MjAwOX0sIG1vbnRoPW1heSwgcGFnZXM9ezE4OTFcdTIwMTMxOTA0fSB9IGAsXG5gQG1pc2N7TXVrbzYyMDI0aW50ZXJuZXQsIFxuICAgYXV0aG9yICAgICAgID0ge0x1bmdlbiBJbmZvcm1hdGlvbnNkaWVuc3R9LCBcbiAgIHRpdGxlICAgICAgICA9IHtNdWtvdmlzemlkb3NlOiBNZWRpa2FtZW50ZSB1bmQgQmVoYW5kbHVuZ30sIFxuICAgeWVhciAgICAgICAgID0gezIwMjN9LCBcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5sdW5nZW5pbmZvcm1hdGlvbnNkaWVuc3QuZGUva3JhbmtoZWl0ZW4vbXVrb3Zpc3ppZG9zZS90aGVyYXBpZVx1MjAwQn0sIFxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcbiB9IGAsXG4gIGBAYXJ0aWNsZXtEYWhkdWxfMjAxMiwgdGl0bGU9e0EgVW5pZmllZCBBbmF0b215IE9udG9sb2d5IG9mIHRoZSBWZXJ0ZWJyYXRlIFNrZWxldGFsIFN5c3RlbX0sIHZvbHVtZT17N30sIElTU049ezE5MzItNjIwM30sIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTM3MS9qb3VybmFsLnBvbmUuMDA1MTA3MH0sIERPST17MTAuMTM3MS9qb3VybmFsLnBvbmUuMDA1MTA3MH0sIG51bWJlcj17MTJ9LCBqb3VybmFsPXtQTG9TIE9ORX0sIHB1Ymxpc2hlcj17UHVibGljIExpYnJhcnkgb2YgU2NpZW5jZSAoUExvUyl9LCBhdXRob3I9e0RhaGR1bCwgV2FzaWxhIE0uIGFuZCBCYWxob2ZmLCBKYW1lcyBQLiBhbmQgQmxhY2tidXJuLCBEYXZpZCBDLiBhbmQgRGllaGwsIEFsZXhhbmRlciBELiBhbmQgSGFlbmRlbCwgTWVsaXNzYSBBLiBhbmQgSGFsbCwgQnJpYW4gSy4gYW5kIExhcHAsIEhpbG1hciBhbmQgTHVuZGJlcmcsIEpvaG4gRy4gYW5kIE11bmdhbGwsIENocmlzdG9waGVyIEouIGFuZCBSaW5nd2FsZCwgTWFydGluIGFuZCBTZWdlcmRlbGwsIEVyaWsgYW5kIFZhbiBTbHlrZSwgQ2VyaSBFLiBhbmQgVmlja2FyeW91cywgTWF0dGhldyBLLiBhbmQgV2VzdGVyZmllbGQsIE1vbnRlIGFuZCBNYWJlZSwgUGF1bGEgTS59LCBlZGl0b3I9e1JvYmluc29uLVJlY2hhdmksIE1hcmN9LCB5ZWFyPXsyMDEyfSwgbW9udGg9ZGVjLCBwYWdlcz17ZTUxMDcwfSB9IGAsXG4gIGBAYm9va3tMYW1icmVjaHRzXzIwMjMsIHRpdGxlPXtNdXNjdWxvc2tlbGV0YWwgQWJub3JtYWxpdGllcyBDYXVzZWQgYnkgQ3lzdGljIEZpYnJvc2lzfSwgSVNCTj17OTc4MTgwMzU2MjczNX0sIElTU049ezI2MzEtODI2MX0sIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuNTc3Mi9pbnRlY2hvcGVuLjEwNDU5MX0sIERPST17MTAuNTc3Mi9pbnRlY2hvcGVuLjEwNDU5MX0sIGJvb2t0aXRsZT17QWR2YW5jZXMgaW4gU2tlbGV0YWwgTXVzY2xlIEhlYWx0aCBhbmQgRGlzZWFzZX0sIHB1Ymxpc2hlcj17SW50ZWNoT3Blbn0sIGF1dGhvcj17TGFtYnJlY2h0cywgTWFya30sIHllYXI9ezIwMjN9LCBtb250aD1tYXIgfSBgLFxuICBgQG1pc2N7QW5hdG9teTIwMjRpbnRlcm5ldCwgXG4gICBhdXRob3IgICAgICAgPSB7WW91c2VmLCBILiwgQWxoYWpqLCBNLiwgRmFrb3lhIEFPLCBldCBhbC59LCBcbiAgIHRpdGxlICAgICAgICA9IHtBbmF0b215LCBTa2luIChJbnRlZ3VtZW50KSwgRXBpZGVybWlzfSwgXG4gICB5ZWFyICAgICAgICAgPSB7MjAyNH0sIFxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5jYmkubmxtLm5paC5nb3YvYm9va3MvTkJLNDcwNDY0L30sIFxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlcjIwMjR9IFxuIH0gIGAsXG4gICBgQGFydGljbGV7REFFMTkzMTcyLCBcblxuYXV0aG9yID0ge05hZWhyaWcsIFN1c2FubmUgYW5kIENoYW8sIENoby1NaW5nIGFuZCBOYWVocmxpY2gsIEx1dHp9LCBcblxudGl0bGUgPSB7e0N5c3RpYyBGaWJyb3Npc319LCBcblxuam91cm5hbCA9IHtEZXV0c2NoZXMgXHUwMEM0cnp0ZWJsYXR0IEludGVybmF0aW9uYWx9LCBcblxudm9sdW1lID0gezExNH0sIFxuXG5udW1iZXIgPSB7MzMtMzR9LCBcblxucGFnZXMgPSB7NTY0LTU3NH0sIFxuXG5kb2kgPSB7MTAuMzIzOC9hcnp0ZWJsLjIwMTcuMDU2NH0sIFxuXG55ZWFyID0gezIwMTd9LCBcblxuYWJzdHJhY3QgPSB7QmFja2dyb3VuZDogVW5pdmVyc2FsIHNjcmVlbmluZyBvZiBuZXdib3JuIGJhYmllcyBmb3IgY3lzdGljIGZpYnJvc2lzIHdhcyBsYXVuY2hlZCBpbiBHZXJtYW55IG9uIDEgU2VwdGVtYmVyIDIwMTYuIEhlcmUgd2UgcHJlc2VudCB1cC10by1kYXRlIGluZm9ybWF0aW9uIG9uIHRoZSBkaWFnbm9zaXMsIHRyZWF0bWVudCwgYW5kIHByb2dub3NpcyBvZiB0aGlzIGRpc2Vhc2UuTWV0aG9kczogVGhpcyBhcnRpY2xlIGlzIGJhc2VkIG9uIHJlbGV2YW50IHB1YmxpY2F0aW9ucyByZXRyaWV2ZWQgYnkgYSBzZWxlY3RpdmUgc2VhcmNoIGluIFB1Yk1lZCwgYWxvbmcgd2l0aCBndWlkZWxpbmVzIGZyb20gR2VybWFueSBhbmQgYWJyb2FkIGFuZCBzeXN0ZW1hdGljIHJldmlld3MuUmVzdWx0czogQ3lzdGljIGZpYnJvc2lzIGlzIGNhdXNlZCBieSBhIGdlbmUgbXV0YXRpb24gbGVhZGluZyB0byBkeXNmdW5jdGlvbiBvZiB0aGUgY3lzdGljIGZpYnJvc2lzIHRyYW5zbWVtYnJhbmUgY29uZHVjdGFuY2UgcmVndWxhdG9yIChDRlRSKSBwcm90ZWluLiBJdCBhZmZlY3RzIG11bHRpcGxlIG9yZ2FuIHN5c3RlbXNcdTIwMTR0aGUgbHVuZ3MsIHBhbmNyZWFzLCB1cHBlciBhaXJ3YXlzLCBsaXZlciwgaW50ZXN0aW5lLCBhbmQgcmVwcm9kdWN0aXZlIG9yZ2Fuc1x1MjAxNHRvIHZhcnlpbmcgZGVncmVlcy4gSXRzIGluY2lkZW5jZSBhbW9uZyBuZXdib3JuIGJhYmllcyBpbiBHZXJtYW55IGlzIGJldHdlZW4gMSBpbiAzMzAwIGFuZCAxIGluIDQ4MDAuIEl0cyBkaWFnbm9zaXMgcmVxdWlyZXMgYm90aCBjbGluaWNhbCBldmlkZW5jZSAocG9zaXRpdmUgbmV3Ym9ybiBzY3JlZW5pbmcsIHNpYmxpbmdbc10gd2l0aCBjeXN0aWMgZmlicm9zaXMsIGNsaW5pY2FsIHNpZ25zKSBhbmQgdGhlIGRlbW9uc3RyYXRpb24gb2YgQ0ZUUiBkeXNmdW5jdGlvbiBieSBhbiBlbGV2YXRlZCBjaGxvcmlkZSBjb25jZW50cmF0aW9uIGluIHN3ZWF0LCBhbmQvb3IgdHdvIGRpc2Vhc2UtY2F1c2luZyBtdXRhdGlvbnMsIGFuZC9vciBhYm5vcm1hbCBlbGVjdHJvcGh5c2lvbG9naWNhbCBmaW5kaW5ncyAobmFzYWwgcG90ZW50aWFsIGRpZmZlcmVuY2UgbWVhc3VyZW1lbnQsIGludGVzdGluYWwgc2hvcnQtY2lyY3VpdCBjdXJyZW50IG1lYXN1cmVtZW50KS4gUGF0aWVudHMgc2hvdWxkIGJlIGNhcmVkIGZvciBieSBzcGVjaWFsaXplZCBjeXN0aWMgZmlicm9zaXMgY2VudGVycyBpbiBjbG9zZSBjb29wZXJhdGlvbiB3aXRoIHRoZWlyIHByaW1hcnkgY2FyZSBwaHlzaWNpYW5zLiBUaGUgbWVkaWFuIGxpZmUgc3BhbiBvZiBwYXRpZW50cyB3aXRoIHRoaXMgZGlzZWFzZSBoYXMgcmlzZW4gc3RlYWRpbHkgdG8gdGhlIGN1cnJlbnQgdmFsdWUgb2YgNDAgeWVhcnMuIEFzaWRlIGZyb20gc3ltcHRvbWF0aWMgdHJlYXRtZW50LCB0aGUgZmlyc3QgbXV0YXRpb24tc3BlY2lmaWMgdHJlYXRtZW50cyBoYXZlIHJlY2VudGx5IGJlY29tZSBhdmFpbGFibGUuQ29uY2x1c2lvbjogRWFybHkgZGlhZ25vc2lzIGFuZCBvcHRpbWl6ZWQgdHJlYXRtZW50IHByb2xvbmcgdGhlIGxpdmVzIG9mIHBlcnNvbnMgd2l0aCBjeXN0aWMgZmlicm9zaXMgYW5kIGltcHJvdmUgdGhlaXIgcXVhbGl0eSBvZiBsaWZlLiBDYXVzYWxseSBkaXJlY3RlZCB0cmVhdG1lbnQgZm9yIGFsbCBwYXRpZW50cyBhbmQgdGhlaXIgZWZmZWN0cyBvbiB0aGUgY291cnNlIG9mIGRpc2Vhc2UgYXJlIG5vdyBjZW50cmFsIGlzc3VlcyBmb3IgZnVydGhlciByZXNlYXJjaC59LCBcblxuVVJMID0ge2h0dHBzOi8vd3d3LmFlcnp0ZWJsYXR0LmRlL2ludC9hcnRpY2xlLmFzcD9pZD0xOTMxNzJ9LCBcblxuZXByaW50ID0ge2h0dHBzOi8vd3d3LmFlcnp0ZWJsYXR0LmRlL3BkZi5hc3A/aWQ9MTkzMTcyfSBcblxufSBgLFxuXG5cblxuXG5cblxuICBcbiAvKiA1MyAqL1xuICBgQGJvb2t7c29ib3R0YV9hbmF0b21pZSwgICBcbiAgICB0aXRsZT17QXRsYXMgZGVyIEFuYXRvbWllIEJhbmQgM30sICAgXG4gICAgYXV0aG9yPXtTb2JvdHRhLCBKb2hhbm5lcyBhbmQgUGF1bHNlbiwgRnJpZWRyaWNoIGFuZCBXYXNjaGtlLCBKZW5zfSwgICBcbiAgICB5ZWFyPXsyMDE3fSwgICBcbiAgICBwdWJsaXNoZXI9e1VyYmFuIFxcJiBGaXNjaGVyfSwgICBcbiAgICBlZGl0aW9uPXsyNC4gQXVmbGFnZX0sICAgXG4gICAgaXNibj17OTc4MzQzNzA5ODE4NX0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7UmVzcDIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e1RoZSBSZXNwaXJhdG9yeSBTeXN0ZW19LCAgIFxuICAgIHRpdGxlPXtOYXNlOiBEZWZpbml0aW9uLCBBbmF0b21pZSB1bmQgRnVua3Rpb259LCAgIFxuICAgIHllYXI9ezIwMTd9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cudGhlcmVzcGlyYXRvcnlzeXN0ZW0uY29tL2RlL25vc2UvfSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7R3V0YTIwMjEsICAgXG4gICAgdGl0bGU9e0dsb2JhbCBCdXJkZW4gb2YgQW54aWV0eSBhbmQgRGVwcmVzc2lvbiBhbW9uZyBDeXN0aWMgRmlicm9zaXMgUGF0aWVudDogU3lzdGVtYXRpYyBSZXZpZXcgYW5kIE1ldGEtQW5hbHlzaXN9LCAgIFxuICAgIHZvbHVtZT17MjAyMX0sICAgXG4gICAgSVNTTj17MjM1Ni02OTgxfSwgICBcbiAgICB1cmw9e2h0dHA6Ly9keC5kb2kub3JnLzEwLjExNTUvMjAyMS82NzA4ODY1fSwgICBcbiAgICBET0k9ezEwLjExNTUvMjAyMS82NzA4ODY1fSwgICBcbiAgICBqb3VybmFsPXtJbnRlcm5hdGlvbmFsIEpvdXJuYWwgb2YgQ2hyb25pYyBEaXNlYXNlc30sICAgXG4gICAgcHVibGlzaGVyPXtIaW5kYXdpIExpbWl0ZWR9LCAgIFxuICAgIGF1dGhvcj17R3V0YSwgTWlzdGlyZSBUZXNob21lIGFuZCBUZWthbGlnbiwgVGl3YWJ3b3JrIGFuZCBBd29rZSwgTmVmc3UgYW5kIEZpdGUsIFJvYmVyYSBPbGFuYSBhbmQgRGVuZGlyLCBHZXRhaHVuIGFuZCBMZW5qZWJvLCBUc2VnYXllIExvbGFzb30sICAgXG4gICAgZWRpdG9yPXtSYW8sIEtvc2FnaSBTLiBKYWdhbm5hdGhhfSwgICBcbiAgICB5ZWFyPXsyMDIxfSwgICBcbiAgICBtb250aD17anVsfSwgICBcbiAgICBwYWdlcz17MS05fSAgIFxuICB9YCwgICBcbiAgLyogNTYgKi9cbiAgYEBhcnRpY2xle0ZhcnJlbGwyMDE3LCAgIFxuICAgIHRpdGxlPXtEaWFnbm9zaXMgb2YgQ3lzdGljIEZpYnJvc2lzOiBDb25zZW5zdXMgR3VpZGVsaW5lcyBmcm9tIHRoZSBDeXN0aWMgRmlicm9zaXMgRm91bmRhdGlvbn0sICAgXG4gICAgYXV0aG9yPXtGYXJyZWxsLCBQaGlsaXAgTS4gYW5kIFdoaXRlLCBUaG9tYXMgQi4gYW5kIFJlbiwgQ2Fyb2wgTC4gYW5kIEhlbXBzdGVhZCwgU2FyYWggRS4gYW5kIEFjY3Vyc28sIEZyYW5rIGFuZCBEZXJpY2hzLCBOaWNvIGFuZCBIb3dlbnN0aW5lLCBNYXJnYXJldCBTLiBhbmQgTWNDb2xsZXksIFN1c2FubmEgQS4gYW5kIFJvY2ssIE1pY2hhZWwgSi4gYW5kIFJvc2VuZmVsZCwgTWFyZ2FyZXQgYW5kIENhbXBiZWxsLCBQZXRlciBXLn0sICAgXG4gICAgam91cm5hbD17Sm91cm5hbCBvZiBQZWRpYXRyaWNzfSwgICBcbiAgICB2b2x1bWU9ezE4MVN9LCAgIFxuICAgIHBhZ2VzPXs0LS0xNX0sICAgXG4gICAgeWVhcj17MjAxN30sICAgXG4gICAgcHVibGlzaGVyPXtFbHNldmllcn0sICAgXG4gICAgZG9pPXsxMC4xMDE2L2ouanBlZHMuMjAxNi4wOS4wNjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle0Nhc3RlbGxhbmkyMDA4LCAgIFxuICAgIHRpdGxlPXtDb25zZW5zdXMgb24gdGhlIHVzZSBhbmQgaW50ZXJwcmV0YXRpb24gb2YgY3lzdGljIGZpYnJvc2lzIG11dGF0aW9uIGFuYWx5c2lzIGluIGNsaW5pY2FsIHByYWN0aWNlfSwgICBcbiAgICBhdXRob3I9e0Nhc3RlbGxhbmksIENhcmxvIGFuZCBDdXBwZW5zLCBILiBhbmQgTWFjZWsgSnIsIE1pbGFuIGFuZCBDYXNzaW1hbiwgSmVhbi1NYXJpZSBhbmQgS2VyZW0sIEVpdGFuIGFuZCBEdXJpZSwgUGV0ZXIgYW5kIFR1bGxpcywgRWxpemFiZXRoIGFuZCBBc3NhZWwsIEIuIE0uIGFuZCBCb21iaWVyaSwgQ3Jpc3RpbmEgYW5kIEJyb3duLCBBbWFuZGEgYW5kIG90aGVyc30sICAgXG4gICAgam91cm5hbD17Sm91cm5hbCBvZiBDeXN0aWMgRmlicm9zaXN9LCAgIFxuICAgIHZvbHVtZT17N30sICAgXG4gICAgbnVtYmVyPXszfSwgICBcbiAgICBwYWdlcz17MTc5LS0xOTZ9LCAgIFxuICAgIHllYXI9ezIwMDh9LCAgIFxuICAgIHB1Ymxpc2hlcj17RWxzZXZpZXJ9LCAgIFxuICAgIGRvaT17MTAuMTAxNi9qLmpjZi4yMDA4LjAzLjAwOX0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7Q29tZWF1MjAwNCwgICBcbiAgICB0aXRsZT17UG9wdWxhdGlvbi1iYXNlZCBuZXdib3JuIHNjcmVlbmluZyBmb3IgZ2VuZXRpYyBkaXNvcmRlcnM6IHRoZSBNYXNzYWNodXNldHRzIG1vZGVsfSwgICBcbiAgICBhdXRob3I9e0NvbWVhdSwgQXVkcmV5IE0uIGFuZCBMYXJzb24sIENoYWQgYW5kIEVhdG9uLCBSb2JlcnQgQi59LCAgIFxuICAgIGpvdXJuYWw9e1BlZGlhdHJpY3N9LCAgIFxuICAgIHZvbHVtZT17MTE0fSwgICBcbiAgICBudW1iZXI9ezV9LCAgIFxuICAgIHBhZ2VzPXsxMzcwLS0xMzc1fSwgICBcbiAgICB5ZWFyPXsyMDA0fSwgICBcbiAgICBwdWJsaXNoZXI9e0FtZXJpY2FuIEFjYWRlbXkgb2YgUGVkaWF0cmljc30sICAgXG4gICAgZG9pPXsxMC4xNTQyL3BlZHMuMjAwNC0wNzEwfSAgIFxuICB9YCwgICBcbiAgXG4gIGBAYXJ0aWNsZXtTb3V0aGVybjIwMDksICAgXG4gICAgdGl0bGU9e05ld2Jvcm4gc2NyZWVuaW5nIGZvciBjeXN0aWMgZmlicm9zaXN9LCAgIFxuICAgIGF1dGhvcj17U291dGhlcm4sIEtldmluIFcuIGFuZCBNXHUwMEU5cmVsbGUsIE1hcmlla2UgTS4gRS4gYW5kIERhbmtlcnQtUm9lbHNlLCBKZWFubmV0dGUgRS4gYW5kIE5hZ2Vsa2Vya2UsIE5pY299LCAgIFxuICAgIGpvdXJuYWw9e0NvY2hyYW5lIERhdGFiYXNlIG9mIFN5c3RlbWF0aWMgUmV2aWV3c30sICAgXG4gICAgdm9sdW1lPXsxfSwgICBcbiAgICBwYWdlcz17Q0QwMDE0MDJ9LCAgIFxuICAgIHllYXI9ezIwMDl9LCAgIFxuICAgIHB1Ymxpc2hlcj17Sm9obiBXaWxleSBcXCYgU29uc30sICAgXG4gICAgZG9pPXsxMC4xMDAyLzE0NjUxODU4LkNEMDAxNDAyLnB1YjJ9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle0N1dHRpbmcyMDE1LCAgIFxuICAgIHRpdGxlPXtDeXN0aWMgZmlicm9zaXMgZ2VuZXRpY3M6IGZyb20gbW9sZWN1bGFyIHVuZGVyc3RhbmRpbmcgdG8gY2xpbmljYWwgYXBwbGljYXRpb259LCAgIFxuICAgIGF1dGhvcj17Q3V0dGluZywgR2FycnkgUi59LCAgIFxuICAgIGpvdXJuYWw9e05hdHVyZSBSZXZpZXdzIEdlbmV0aWNzfSwgICBcbiAgICB2b2x1bWU9ezE2fSwgICBcbiAgICBwYWdlcz17NDUtLTU2fSwgICBcbiAgICB5ZWFyPXsyMDE1fSwgICBcbiAgICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgICBcbiAgICBkb2k9ezEwLjEwMzgvbnJnMzg0OX0gICBcbiAgfWAsICAgXG4gIC8qIDYxICovXG4gIGBAYXJ0aWNsZXtDcm9zc2xleTE5NzksICAgXG4gICAgdGl0bGU9e0RyaWVkLWJsb29kIHNwb3Qgc2NyZWVuaW5nIGZvciBjeXN0aWMgZmlicm9zaXMgaW4gdGhlIG5ld2Jvcm59LCAgIFxuICAgIGF1dGhvcj17Q3Jvc3NsZXksIEpvaG4gUi4gYW5kIEVsbGlvdHQsIFJvYmVydCBCLiBhbmQgU21pdGgsIFBhdHJpY2lhIEEufSwgICBcbiAgICBqb3VybmFsPXtUaGUgTGFuY2V0fSwgICBcbiAgICB2b2x1bWU9ezF9LCAgIFxuICAgIG51bWJlcj17ODEyNn0sICAgXG4gICAgcGFnZXM9ezQ3Mi0tNDc0fSwgICBcbiAgICB5ZWFyPXsxOTc5fSwgICBcbiAgICBwdWJsaXNoZXI9e0Vsc2V2aWVyfSwgICBcbiAgICBkb2k9ezEwLjEwMTYvUzAxNDAtNjczNig3OSk5MTc1Ny05fSAgIFxuICB9YCwgICBcbmBAYm9va3tQYXJhY2NoaW5pMjAxMWlkLCBcblxuIHRpdGxlID0gXCJDeXN0aWMgZmlicm9zaXMgbmV3Ym9ybiBzY3JlZW5pbmc6IERpc3RyaWJ1dGlvbiBvZiBibG9vZCBcblxuIGltbXVub3JlYWN0aXZlIHRyeXBzaW5vZ2VuIGNvbmNlbnRyYXRpb25zIGluIGh5cGVydHJ5cHNpbmVtaWMgXG5cbiBuZW9uYXRlc1wiLCBcblxuIGJvb2t0aXRsZSA9IFwie0pJTUR9IFJlcG9ydHNcIiwgXG5cbiBhdXRob3IgPSBcIlBhcmFjY2hpbmksIFZhbGVudGluYSBhbmQgU2VpYSwgTWFudWVsYSBhbmQgUmFpbW9uZGksIFNhcmEgYW5kIFxuXG4gQ29zdGFudGlubywgTHVjeSBhbmQgQ2FwYXNzbywgUGF0cml6aWEgYW5kIFBvcmNhcm8sIEx1aWdpIGFuZCBcblxuIENvbG9tYm8sIENhcmxhIGFuZCBDb3ZpZWxsbywgRG9tZW5pY28gQSBhbmQgTWFyaWFuaSwgVGl6aWFuYSBhbmQgXG5cbiBNYW56b25pLCBFbWFudWVsYSBhbmQgU2FuZ2lvdmFubmksIE1vbmljYSBhbmQgQ29yYmV0dGEsIENhcmxvXCIsIFxuXG4gcHVibGlzaGVyID0gXCJTcHJpbmdlciBCZXJsaW4gSGVpZGVsYmVyZ1wiLCBcblxuIHBhZ2VzID0gXCIxNy0tMjNcIiwgXG5cbiBzZXJpZXMgPSBcIkpJTUQgcmVwb3J0c1wiLCBcblxuIHllYXIgPSAyMDExLCBcblxuIGFkZHJlc3MgPSBcIkJlcmxpbiwgSGVpZGVsYmVyZ1wiIFxuXG59IGAsXG5gQGFydGljbGV7c291dGhlcm4yMDA3c3VydmV5LCBcblxuIHRpdGxlPXtBIHN1cnZleSBvZiBuZXdib3JuIHNjcmVlbmluZyBmb3IgY3lzdGljIGZpYnJvc2lzIGluIEV1cm9wZX0sIFxuXG4gYXV0aG9yPXtTb3V0aGVybiwgS2V2aW4gVyBhbmQgTXVuY2ssIEFubmUgYW5kIFBvbGxpdHQsIFJvZG5leSBhbmQgVHJhdmVydCwgR2VvcmdlcyBhbmQgWmFub2xsYSwgTHVpc2EgYW5kIERhbmtlcnQtUm9lbHNlLCBKZWFubmV0dGUgYW5kIENhc3RlbGxhbmksIENhcmxvIGFuZCBFQ0ZTIENGIE5lb25hdGFsIFNjcmVlbmluZyBXb3JraW5nIEdyb3VwIGFuZCBvdGhlcnN9LCBcblxuIGpvdXJuYWw9e0pvdXJuYWwgb2YgQ3lzdGljIEZpYnJvc2lzfSwgXG5cbiB2b2x1bWU9ezZ9LCBcblxuIG51bWJlcj17MX0sIFxuXG4gcGFnZXM9ezU3LS02NX0sIFxuXG4geWVhcj17MjAwN30sIFxuXG4gcHVibGlzaGVyPXtFbHNldmllcn0gXG5cbn0gYCxcbiAvKiA2NCkqL1xuIGBAQVJUSUNMRXtNaXNocmEyMDA4LWlhLCBcblxuIHRpdGxlID0gXCJEaWFnbm9zaXMgb2YgY3lzdGljIGZpYnJvc2lzIGJ5IHN3ZWF0IHRlc3Rpbmc6IGFnZS1zcGVjaWZpYyBcblxuIHJlZmVyZW5jZSBpbnRlcnZhbHNcIiwgXG5cbiBhdXRob3IgPSBcIk1pc2hyYSwgQXZhbnRpa2EgYW5kIEdyZWF2ZXMsIFJvbmRhIGFuZCBTbWl0aCwgS2F0aGVyaW5lIGFuZCBcblxuIENhcmxpbiwgSm9obiBCIGFuZCBXb290dG9uLCBBbmRyZXcgYW5kIFN0aXJsaW5nLCBSb2IgYW5kIE1hc3NpZSwgXG5cbiBKb2huXCIsIFxuXG4gYWJzdHJhY3QgPSBcIk9CSkVDVElWRTogVG8gZGV2ZWxvcCByZWZlcmVuY2UgaW50ZXJ2YWxzIChSSXMpIGZvciBzd2VhdCBcblxuIGNobG9yaWRlIGFuZCBzb2RpdW0gaW4gaGVhbHRoeSBjaGlsZHJlbiwgYWRvbGVzY2VudHMsIGFuZCBcblxuIGFkdWx0cy4gU1RVRFkgREVTSUdOOiBIZWFsdGh5LCB1bnJlbGF0ZWQgc3ViamVjdHMgYWdlZCBmcm9tIDUgdG8gXG5cbiA+NTAgeWVhcnMgYW5kIHN1YmplY3RzIHdobyB3ZXJlIHBhbmNyZWF0aWMgaW5zdWZmaWNpZW50IHdpdGggXG5cbiBjeXN0aWMgZmlicm9zaXMgKENGKSB3ZXJlIHJlY3J1aXRlZC4gU3dlYXQgY29sbGVjdGlvbiB3YXMgXG5cbiBwZXJmb3JtZWQgb24gYWxsIHN1YmplY3RzIHdpdGggdGhlIFdlc2NvciBNYWNyb2R1Y3Qgc3lzdGVtLiBcblxuIFN3ZWF0IGVsZWN0cm9seXRlcyB3ZXJlIGFuYWx5emVkIHdpdGggZGlyZWN0IGlvbiBzZWxlY3RpdmUgXG5cbiBlbGVjdHJvZGVzLiBEZWx0YUY1MDggbXV0YXRpb24gYW5hbHlzaXMgd2FzIHBlcmZvcm1lZCBvbiB0aGUgXG5cbiBoZWFsdGh5IHN1YmplY3RzID4vPTE1IHllYXJzIG9sZC4gUkVTVUxUUzogQSB0b3RhbCBvZiAyODIgXG5cbiBoZWFsdGh5IGFuZCA0MCBzdWJqZWN0cyB3aXRoIENGIHdlcmUgaW5jbHVkZWQgZm9yIGFuYWx5c2lzLiBcblxuIFRoZXJlIHdhcyBubyBvdmVybGFwIG9mIHN3ZWF0IGNobG9yaWRlIGJldHdlZW4gdGhlIGdyb3VwIHdpdGggQ0YgXG5cbiBhbmQgdGhlIGdyb3VwIHdpdGhvdXQgQ0YsIGJ1dCB0aGVyZSB3YXMgc29tZSBvdmVybGFwIG9mIHN3ZWF0IFxuXG4gc29kaXVtLiBTd2VhdCBjaGxvcmlkZSBpbmNyZWFzZWQgd2l0aCBhZ2UsIHdpdGggdGhlIHJhdGUgb2YgXG5cbiBpbmNyZWFzZSBzbG93aW5nIHByb2dyZXNzaXZlbHkgdG8gemVybyBhZnRlciB0aGUgYWdlIG9mIDE5IFxuXG4geWVhcnMuIFRoZSBlc3RpbWF0ZWQgbWVkaWFuICg5NVxcJSBSSSkgZm9yIHN3ZWF0IGNobG9yaWRlIHdlcmU6IDUgXG5cbiB0byA5IHllYXJzLCAxMyBtbW9sL0wgKDEtMzkgbW1vbC9MKTsgMTAgdG8gMTQgeWVhcnMsIDE4bW1vbC9MIFxuXG4gKDMtNDcgbW1vbC9MKTsgMTUgdG8gMTkgeWVhcnMsIDIwIG1tb2wvTCAoMy01MW1tb2wvTCk7IGFuZCAyMCsgXG5cbiB5ZWFycyAyMyBtbW9sL0wgKDUtNTZtbW9sL0wpLiBDT05DTFVTSU9OUzogV2UgaGF2ZSBzdWNjZXNzZnVsbHkgXG5cbiBkZXZlbG9wZWQgdGhlIGFnZS1yZWxhdGVkIFJJIGZvciBzd2VhdCBlbGVjdHJvbHl0ZXMsIHdoaWNoIHdpbGwgXG5cbiBiZSB1c2VmdWwgZm9yIGNsaW5pY2lhbnMgaW50ZXJwcmV0aW5nIHN3ZWF0IHRlc3QgcmVzdWx0cyBmcm9tIFxuXG4gY2hpbGRyZW4sIGFkb2xlc2NlbnRzLCBhbmQgYWR1bHRzLlwiLCBcblxuIGpvdXJuYWwgPSBcIkouIFBlZGlhdHIuXCIsIFxuXG4gcHVibGlzaGVyID0gXCJFbHNldmllciBCVlwiLCBcblxuIHZvbHVtZSA9IDE1MywgXG5cbiBudW1iZXIgPSA2LCBcblxuIHBhZ2VzID0gXCI3NTgtLTc2M1wiLCBcblxuIG1vbnRoID0gZGVjLCBcblxuIHllYXIgPSAyMDA4LCBcblxuIGxhbmd1YWdlID0gXCJlblwiIFxuXG59IGAsXG5cbmBcbkBtaXNje2Vmd2Vmd2UsXG5hdXRob3IgPSB7Q3lzdGljIEZpYnJvc2lzIEZvdW5kYXRpb259LFxudGl0bGUgPSB7TmV3Ym9ybiBTY3JlZW5pbmcgZm9yIENGfSwgXG51cmwgPSB7aHR0cHM6Ly93d3cuY2ZmLm9yZy9pbnRyby1jZi9uZXdib3JuLXNjcmVlbmluZy1jZn0sIFxubm90ZSA9IHtBY2Nlc3NlZCBvbiAwMi4gT2N0b2JlciAyMDI0fVxufVxuYCxcblxuXG5cblxuXG4gIC8qIDY2ICovXG4gIGBAYm9va3tIZWd5aTIwMTYsICAgXG4gICAgYXV0aG9yPXtIZWd5aSwgUFx1MDBFOXRlciBhbmQgV2lsc2NoYW5za2ksIE1pY2hhZWwgYW5kIE11YWxsZW0sIFNobXVlbCBhbmQgTHVrYWNzLCBHZXJnZWx5IEwuIGFuZCBTYWhpbi1UXHUwMEYzdGgsIE1pa2xcdTAwRjNzIGFuZCBVYywgQWxpeWUgYW5kIEdyYXksIE1pY2hhZWwgQS4gYW5kIFJha29uY3pheSwgWm9sdFx1MDBFMW4gYW5kIE1hbFx1MDBFOXRoLCBKXHUwMEYzenNlZn0sICAgXG4gICAgZWRpdG9yPXtOaWxpdXMsIEJlcm5kIGFuZCBkZSBUb21iZSwgUGlldGVyIGFuZCBHdWRlcm1hbm4sIFRob21hcyBhbmQgSmFobiwgUmVpbmhhcmQgYW5kIExpbGwsIFJvbGFuZCBhbmQgUGV0ZXJzZW4sIE9sZSBILn0sICAgXG4gICAgdGl0bGU9e0NGVFI6IEEgTmV3IEhvcml6b24gaW4gdGhlIFBhdGhvbWVjaGFuaXNtIGFuZCBUcmVhdG1lbnQgb2YgUGFuY3JlYXRpdGlzfSwgICBcbiAgICBib29rVGl0bGU9e1Jldmlld3Mgb2YgUGh5c2lvbG9neSwgQmlvY2hlbWlzdHJ5IGFuZCBQaGFybWFjb2xvZ3kgVm9sLiAxNzB9LCAgIFxuICAgIHllYXI9ezIwMTZ9LCAgIFxuICAgIHB1Ymxpc2hlcj17U3ByaW5nZXIgSW50ZXJuYXRpb25hbCBQdWJsaXNoaW5nfSwgICBcbiAgICBhZGRyZXNzPXtDaGFtfSwgICBcbiAgICBwYWdlcz17MzctLTY2fSwgICBcbiAgICBpc2JuPXs5NzgtMy0zMTktMzE0OTItMX0sICAgXG4gICAgZG9pPXsxMC4xMDA3LzExMl8yMDE1XzUwMDJ9LCAgIFxuICAgIHVybD17aHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvMTEyXzIwMTVfNTAwMn0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7ZmFycmVsbDIwMjBpbXBhY3QsICAgXG4gICAgdGl0bGU9e1RoZSBpbXBhY3Qgb2YgdGhlIENGVFIgZ2VuZSBkaXNjb3Zlcnkgb24gY3lzdGljIGZpYnJvc2lzIGRpYWdub3NpcywgY291bnNlbGluZywgYW5kIHByZXZlbnRpdmUgdGhlcmFweX0sICAgXG4gICAgYXV0aG9yPXtGYXJyZWxsLCBQaGlsaXAgTSBhbmQgUm9jaywgTWljaGFlbCBKIGFuZCBCYWtlciwgTWVpIFd9LCAgIFxuICAgIGpvdXJuYWw9e0dlbmVzfSwgICBcbiAgICB2b2x1bWU9ezExfSwgICBcbiAgICBudW1iZXI9ezR9LCAgIFxuICAgIHBhZ2VzPXs0MDF9LCAgIFxuICAgIHllYXI9ezIwMjB9LCAgIFxuICAgIHB1Ymxpc2hlcj17TURQSX0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7Rmx1bWUyMDA5LCAgIFxuICAgIHRpdGxlPXtDeXN0aWMgZmlicm9zaXMgcHVsbW9uYXJ5IGd1aWRlbGluZXM6IGFpcndheSBjbGVhcmFuY2UgdGhlcmFwaWVzfSwgICBcbiAgICBhdXRob3I9e0ZsdW1lLCBQYXRyaWNrIEEuIGFuZCBSb2JpbnNvbiwgS2FyZW4gQS4gYW5kIE8nU3VsbGl2YW4sIEJyaWFuIFAgYW5kIEZpbmRlciwgSm9uIEQgYW5kIFZlbmRlciwgUm9iaW4gTCBhbmQgV2lsbGV5LUNvdXJhbmQsIERvbm5hIEIgYW5kIFdoaXRlLCBUaG9tYXMgQiBhbmQgTWFyc2hhbGwsIEJydWNlIEMufSwgICBcbiAgICBqb3VybmFsPXtSZXNwaXJhdG9yeSBDYXJlfSwgICBcbiAgICB2b2x1bWU9ezU0fSwgICBcbiAgICBudW1iZXI9ezR9LCAgIFxuICAgIHBhZ2VzPXs1MjItLTUzN30sICAgXG4gICAgeWVhcj17MjAwOX0sICAgXG4gICAgcHVibGlzaGVyPXtSZXNwaXJhdG9yeSBDYXJlfSwgICBcbiAgICBkb2k9ezEwLjQxODcvYWFyYzA1NTV9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle1JFSVNNQU4xOTg4NjMyLCAgIFxuICAgIHRpdGxlPXtSb2xlIG9mIGNvbnZlbnRpb25hbCBwaHlzaW90aGVyYXB5IGluIGN5c3RpYyBmaWJyb3Npc30sICAgXG4gICAgam91cm5hbD17VGhlIEpvdXJuYWwgb2YgUGVkaWF0cmljc30sICAgXG4gICAgdm9sdW1lPXsxMTN9LCAgIFxuICAgIG51bWJlcj17NH0sICAgXG4gICAgcGFnZXM9ezYzMi02MzZ9LCAgIFxuICAgIHllYXI9ezE5ODh9LCAgIFxuICAgIGlzc249ezAwMjItMzQ3Nn0sICAgXG4gICAgZG9pPXtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9TMDAyMi0zNDc2KDg4KTgwMzcwLTZ9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuc2NpZW5jZWRpcmVjdC5jb20vc2NpZW5jZS9hcnRpY2xlL3BpaS9TMDAyMjM0NzY4ODgwMzcwNn0sICAgXG4gICAgYXV0aG9yPXtSZWlzbWFuLCBKb2huIEouIGFuZCBSaXZpbmd0b24tTGF3LCBCZXR0eSBhbmQgQ29yZXksIE1hcnkgYW5kIE1hcmNvdHRlLCBKYWNxdWVzIGFuZCBXYW5uYW1ha2VyLCBFbGVhbm9yIGFuZCBIYXJjb3VydCwgRGF3biBhbmQgTGV2aXNvbiwgSGVucnl9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle1dhaW53cmlnaHQyMDE1LCAgIFxuICAgIHRpdGxlPXtMdW1hY2FmdG9yLWl2YWNhZnRvciBpbiBwYXRpZW50cyB3aXRoIGN5c3RpYyBmaWJyb3NpcyBob21venlnb3VzIGZvciBQaGU1MDhkZWwgQ0ZUUn0sICAgXG4gICAgYXV0aG9yPXtXYWlud3JpZ2h0LCBDbGFpcmUgRSBhbmQgRWxib3JuLCBKIFN0dWFydCBhbmQgUmFtc2V5LCBCb25uaWUgVyBhbmQgTWFyaWdvd2RhLCBHaXJpc2ggYW5kIEh1YW5nLCBYaW54aW4gYW5kIENpcG9sbGksIE1hcmNvIGFuZCBDb2xvbWJvLCBDYXJsbyBhbmQgRGF2aWVzLCBKYW5lIEMgYW5kIERlIEJvZWNrLCBLcmlzIGFuZCBGbHVtZSwgUGF0cmljayBBIGFuZCBvdGhlcnN9LCAgIFxuICAgIGpvdXJuYWw9e05ldyBFbmdsYW5kIEpvdXJuYWwgb2YgTWVkaWNpbmV9LCAgIFxuICAgIHZvbHVtZT17MzczfSwgICBcbiAgICBudW1iZXI9ezN9LCAgIFxuICAgIHBhZ2VzPXsyMjAtLTIzMX0sICAgXG4gICAgeWVhcj17MjAxNX0sICAgXG4gICAgcHVibGlzaGVyPXtNYXNzYWNodXNldHRzIE1lZGljYWwgU29jaWV0eX0sICAgXG4gICAgZG9pPXsxMC4xMDU2L05FSk1vYTE0MDk1NDd9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle0dlbGxlcjY1OCwgICBcbiAgICBhdXRob3I9e0dlbGxlciwgRGF2aWQgRX0sICAgXG4gICAgdGl0bGU9e0Flcm9zb2wgQW50aWJpb3RpY3MgaW4gQ3lzdGljIEZpYnJvc2lzfSwgICBcbiAgICB2b2x1bWU9ezU0fSwgICBcbiAgICBudW1iZXI9ezV9LCAgIFxuICAgIHBhZ2VzPXs2NTgtLTY3MH0sICAgXG4gICAgeWVhcj17MjAwOX0sICAgXG4gICAgcHVibGlzaGVyPXtSZXNwaXJhdG9yeSBDYXJlfSwgICBcbiAgICBpc3NuPXswMDIwLTEzMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly9yYy5yY2pvdXJuYWwuY29tL2NvbnRlbnQvNTQvNS82NTh9LCAgIFxuICAgIGVwcmludD17aHR0cHM6Ly9yYy5yY2pvdXJuYWwuY29tL2NvbnRlbnQvNTQvNS82NTguZnVsbC5wZGZ9LCAgIFxuICAgIGpvdXJuYWw9e1Jlc3BpcmF0b3J5IENhcmV9ICAgXG4gIH1gLFxuICBgQEFSVElDTEV7R3VvMjAyMi1jaCwgICBcbiAgICB0aXRsZT17V29ybGR3aWRlIHJhdGVzIG9mIGRpYWdub3NpcyBhbmQgZWZmZWN0aXZlIHRyZWF0bWVudCBmb3IgY3lzdGljIGZpYnJvc2lzfSwgICBcbiAgICBhdXRob3I9e0d1bywgSm9uYXRoYW4gYW5kIEdhcnJhdHQsIEFubmEgYW5kIEhpbGwsIEFuZHJld30sICAgXG4gICAgam91cm5hbD17Sm91cm5hbCBvZiBDeXN0aWMgRmlicm9zaXN9LCAgIFxuICAgIHZvbHVtZT17MjF9LCAgIFxuICAgIG51bWJlcj17M30sICAgXG4gICAgcGFnZXM9ezQ1Ni0tNDYyfSwgICBcbiAgICB5ZWFyPXsyMDIyfSwgICBcbiAgICBtb250aD17bWF5fSwgICBcbiAgICBkb2k9ezEwLjEwMTYvai5qY2YuMjAyMS4xMi4wMDF9LCAgIFxuICAgIGtleXdvcmRzPXtDRlRSIG1vZHVsYXRvciwgQ3lzdGljIGZpYnJvc2lzLCBFcGlkZW1pb2xvZ3ksIEl2YWNhZnRvci90ZXphY2FmdG9yL2VsZXhhY2FmdG9yfSwgICBcbiAgICBwdWJsaXNoZXI9e0Vsc2V2aWVyIEJWfSAgIFxuICB9YCwgICBcbiAgXG4gIGBAYXJ0aWNsZXtHcmllc2VuYmFjaDIwMTMsICAgXG4gICAgdGl0bGU9e0dlbmUgdGhlcmFweSBwcm9ncmVzcyBhbmQgcHJvc3BlY3RzOiBjeXN0aWMgZmlicm9zaXN9LCAgIFxuICAgIGF1dGhvcj17R3JpZXNlbmJhY2gsIFV0YSBhbmQgQWx0b24sIEVyaWMgV0ZXfSwgICBcbiAgICBqb3VybmFsPXtHZW5lIFRoZXJhcHl9LCAgIFxuICAgIHZvbHVtZT17MjB9LCAgIFxuICAgIG51bWJlcj17Nn0sICAgXG4gICAgcGFnZXM9ezY0MS0tNjQ5fSwgICBcbiAgICB5ZWFyPXsyMDEzfSwgICBcbiAgICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgICBcbiAgICBkb2k9ezEwLjEwMzgvZ3QuMjAxMy4yMH0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7TXVrbzUyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtNdWtvdmlzemlkb3NlIGUuVn0sICAgXG4gICAgdGl0bGU9e1RoZXJhcGllIGRlciBNdWtvdmlzemlkb3NlfSwgICBcbiAgICB5ZWFyPXsyMDI0fSwgICBcbiAgICB1cmw9e2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlfSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcbiAgfWAsICAgXG4gIC8qIDc1ICovXG4gIGBAYXJ0aWNsZXtqaWEyMDIzY3lzdGljLCAgIFxuICAgIGF1dGhvcj17SmlhLCBTaGlqaW5nIGFuZCBUYXlsb3ItQ291c2FyLCBKZW5uaWZlciBMLn0sICAgXG4gICAgdGl0bGU9e0N5c3RpYyBGaWJyb3NpcyBNb2R1bGF0b3IgVGhlcmFwaWVzfSwgICBcbiAgICBqb3VybmFsPXtBbm51YWwgUmV2aWV3IG9mIE1lZGljaW5lfSwgICBcbiAgICB2b2x1bWU9ezc0fSwgICBcbiAgICBwYWdlcz17NDEzLTQyNn0sICAgXG4gICAgeWVhcj17MjAyM30sICAgXG4gICAgZG9pPXsxMC4xMTQ2L2FubnVyZXYtbWVkLTA0MjkyMS0wMjE0NDd9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuYW5udWFscmV2aWV3cy5vcmcvY29udGVudC9qb3VybmFscy8xMC4xMTQ2L2FubnVyZXYtbWVkLTA0MjkyMS0wMjE0NDd9LCAgIFxuICAgIHB1Ymxpc2hlcj17QW5udWFsIFJldmlld3N9LCAgIFxuICAgIGlzc249ezE1NDUtMzI2WH0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7VHVtbWxlcjIwMTYsICAgXG4gICAgYXV0aG9yPXtUXHUwMEZDbW1sZXIsIEIufSwgICBcbiAgICB0aXRsZT17VGhlcmFwaWUgZGVyIE11a292aXN6aWRvc2UgbWl0IENGVFItTW9kdWxhdG9yZW59LCAgIFxuICAgIGpvdXJuYWw9e1BuZXVtb2xvZ2llfSwgICBcbiAgICB2b2x1bWU9ezcwfSwgICBcbiAgICBudW1iZXI9ezN9LCAgIFxuICAgIHBhZ2VzPXszMDEtMzEzfSwgICBcbiAgICB5ZWFyPXsyMDE2fSwgICBcbiAgICBkb2k9ezEwLjEwNTUvcy0wMDQyLTEwMDYwN30sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy50aGllbWUtY29ubmVjdC5jb20vcHJvZHVjdHMvZWpvdXJuYWxzL3BkZi8xMC4xMDU1L3MtMDA0Mi0xMDA2MDcucGRmfSwgICBcbiAgICBwdWJsaXNoZXI9e0dlb3JnIFRoaWVtZSBWZXJsYWcgS0d9LCAgIFxuICAgIGlzc249ezA5MzQtODM4N30gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7TXVrbzQyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtNdWtvdmlzemlkb3NlIGUuVn0sICAgXG4gICAgdGl0bGU9e0thZnRyaW8gKFRyaWthZnRhKSAtIFRyaXBsZS1UaGVyYXBpZSBmXHUwMEZDciBNdWtvdmlzemlkb3NlIChDRil9LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cubXVrby5pbmZvL211a292aXN6aWRvc2UvdGhlcmFwaWUtZGVyLW11a292aXN6aWRvc2Uva2FmdHJpby10cmlrYWZ0YX0sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBhcnRpY2xle3JvZGEyMDIybmV3LCAgIFxuICAgIGF1dGhvcj17Um9kYSwgSnVsaWFuYSBhbmQgUGludG8tU2lsdmEsIENhdGFyaW5hIGFuZCBTaWx2YSwgSXJpcyBBLiBJLiBhbmQgTWFpYSwgQ2FybGEgYW5kIEFsbWVpZGEsIFN1c2FuYSBhbmQgRmVycmVpcmEsIFJpY2FyZG8gYW5kIE9saXZlaXJhLCBHdWlvbWFyfSwgICBcbiAgICB0aXRsZT17TmV3IGRydWdzIGluIGN5c3RpYyBmaWJyb3Npczogd2hhdCBoYXMgY2hhbmdlZCBpbiB0aGUgbGFzdCBkZWNhZGU/fSwgICBcbiAgICBqb3VybmFsPXtUaGVyYXBldXRpYyBBZHZhbmNlcyBpbiBDaHJvbmljIERpc2Vhc2V9LCAgIFxuICAgIHZvbHVtZT17MTN9LCAgIFxuICAgIHBhZ2VzPXsyMDQwNjIyMzIyMTA5ODEzNn0sICAgXG4gICAgeWVhcj17MjAyMn0sICAgXG4gICAgZG9pPXsxMC4xMTc3LzIwNDA2MjIzMjIxMDk4MTM2fSwgICBcbiAgICBwbWlkPXszNTYyMDE4OH0sICAgXG4gICAgcG1jPXtQTUM5MTI4MDUyfSwgICBcbiAgICBpc3NuPXsyMDQwLTYyMjN9LCAgIFxuICAgIG5vdGU9e2VDb2xsZWN0aW9uIDIwMjJ9LCAgIFxuICAgIHB1Ymxpc2hlcj17U0FHRSBQdWJsaWNhdGlvbnN9LCAgIFxuICAgIHVybD17aHR0cHM6Ly9kb2kub3JnLzEwLjExNzcvMjA0MDYyMjMyMjEwOTgxMzZ9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBtaXNje011a28zMjAyNGludGVybmV0LCAgIFxuICAgIGF1dGhvcj17TXVrb3Zpc3ppZG9zZSBlLlZ9LCAgIFxuICAgIHRpdGxlPXtPcmthbWJpIC0gQ0ZUUi1Nb2R1bGF0b3IgYmVpIHp3ZWkgRjUwOGRlbC1NdXRhdGlvbmVufSwgICBcbiAgICB5ZWFyPXsyMDI0fSwgICBcbiAgICB1cmw9e2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlL29ya2FtYml9LCAgIFxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxuICB9YCwgICBcbiAgXG4gIGBAbWlzY3tNdWtvMjIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e011a292aXN6aWRvc2UgZS5WfSwgICBcbiAgICB0aXRsZT17S2FseWRlY28gKEl2YWZhY3RvcikgLSBDRlRSLU1vZHVsYXRvciBiZWkgR2F0aW5nLU11dGF0aW9uZW59LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cubXVrby5pbmZvL211a292aXN6aWRvc2UvdGhlcmFwaWUtZGVyLW11a292aXN6aWRvc2Uva2FseWRlY299LCAgIFxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxuICB9YCwgICBcbiAgLyogODEgKi9cbiAgYEBtaXNje1B1bG1vMjAyNGludGVybmV0LCAgIFxuICAgIGF1dGhvcj17UHVsbW9ueXplIGRvcm5hc2UgYWxmYSBJbmhhbGF0aW9uIFNvbHV0aW9ufSwgICBcbiAgICB0aXRsZT17V2hhdCBpcyBQdWxtb255emU/fSwgICBcbiAgICB5ZWFyPXsyMDE5fSwgICBcbiAgICB1cmw9e2h0dHBzOi8vd3d3LnB1bG1venltZS5nbG9iYWwvaG9tZS5odG1sfSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7cHVsbW96eW1lX2FwcHJvdmFsX0NERVIsICAgXG4gICAgYXV0aG9yPXtDZW50ZXIgZm9yIERydWcgRXZhbHVhdGlvbiBhbmQgUmVzZWFyY2ggKENERVIpfSwgICBcbiAgICB0aXRsZT17Q0RFUiBMaXN0IG9mIExpY2Vuc2VkIEJpb2xvZ2ljYWwgUHJvZHVjdHMgd2l0aCBSZWZlcmVuY2UgUHJvZHVjdCBFeGNsdXNpdml0eSBhbmQgQmlvc2ltaWxhcml0eSBvciBJbnRlcmNoYW5nZWFiaWxpdHkgRXZhbHVhdGlvbnN9LCAgIFxuICAgIHllYXI9ezIwMTl9LCAgIFxuICAgIHVybD17ZmlsZTovLy9tbnQvZGF0YS9DREVSJTIwTGlzdCUyMG9mJTIwTGljZW5zZWQlMjBCaW9sb2dpY2FsJTIwUHJvZHVjdHMlMjA0LTI0LTIwMTlfLnBkZn0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7Q0ZGMjIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e0N5c3RpYyBGaWJyb3NpcyBGb3VuZGF0aW9ufSwgICBcbiAgICB0aXRsZT17TXVjdXMgVGhpbm5lcnN9LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuY2ZmLm9yZy9tYW5hZ2luZy1jZi9tdWN1cy10aGlubmVyc30sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXG4gIH1gLCAgIFxuICAvKiA4NCAqL1xuICBgQGFydGljbGV7VGVybGl6emkyMDIxLCAgIFxuICAgIHRpdGxlPXtIeXBlcnRvbmljIHNhbGluZSBpbiBwZW9wbGUgd2l0aCBjeXN0aWMgZmlicm9zaXM6IHJldmlldyBvZiBjb21wYXJhdGl2ZSBzdHVkaWVzIGFuZCBjbGluaWNhbCBwcmFjdGljZX0sICAgXG4gICAgYXV0aG9yPXtUZXJsaXp6aSwgVmFsZXJpYSBhbmQgTWFzaSwgRWxlb25vcmEgYW5kIEZyYW5jYWxhbmNpLCBNYXJjbyBhbmQgQnJhZ2dpb24sIENoaWFyYX0sICAgXG4gICAgam91cm5hbD17SXRhbGlhbiBKb3VybmFsIG9mIFBlZGlhdHJpY3N9LCAgIFxuICAgIHZvbHVtZT17NDd9LCAgIFxuICAgIG51bWJlcj17MX0sICAgXG4gICAgcGFnZXM9ezE2OH0sICAgXG4gICAgeWVhcj17MjAyMX0sICAgXG4gICAgcHVibGlzaGVyPXtTcHJpbmdlcn0sICAgXG4gICAgZG9pPXsxMC4xMTg2L3MxMzA1Mi0wMjEtMDExMTctMX0sICAgXG4gICAgdXJsPXtodHRwczovL2lqcG9ubGluZS5iaW9tZWRjZW50cmFsLmNvbS9hcnRpY2xlcy8xMC4xMTg2L3MxMzA1Mi0wMjEtMDExMTctMX0gICBcbiAgfWAsICAgXG4gIFxuICBgQG1pc2N7Q0ZGMTIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e0N5c3RpYyBGaWJyb3NpcyBGb3VuZGF0aW9ufSwgICBcbiAgICB0aXRsZT17QW50aWJpb3RpY3N9LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuY2ZmLm9yZy9tYW5hZ2luZy1jZi9hbnRpYmlvdGljc30sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBtaXNje1RPQkkyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtUT0JJXHUwMEFFIFBvZGhhbGVyXHUwMEFFfSwgICBcbiAgICB0aXRsZT17VE9CSVx1MDBBRSBQb2RoYWxlclx1MDBBRX0sICAgXG4gICAgeWVhcj17MjAyNH0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy50b2JpcG9kaGFsZXIuY29tL30sICAgXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXG4gIH1gLCAgIFxuICBcbiAgYEBtaXNje0VNQTIyMDI0aW50ZXJuZXQsICAgXG4gICAgYXV0aG9yPXtFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5fSwgICBcbiAgICB0aXRsZT17VG9iaSBQb2RoYWxlcn0sICAgXG4gICAgeWVhcj17MjAyNH0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5lbWEuZXVyb3BhLmV1L2VuL21lZGljaW5lcy9odW1hbi9FUEFSL3RvYmktcG9kaGFsZXJ9LCAgIFxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxuICB9YCwgICBcbiAgXG4gIGBAbWlzY3tFTUExMjAyNGludGVybmV0LCAgIFxuICAgIGF1dGhvcj17RXVyb3BlYW4gTWVkaWNpbmVzIEFnZW5jeX0sICAgXG4gICAgdGl0bGU9e0NheXN0b259LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuZW1hLmV1cm9wYS5ldS9lbi9tZWRpY2luZXMvaHVtYW4vRVBBUi9jYXlzdG9ufSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcbiAgfWAsICAgXG4gIC8qIDg5ICovXG4gIGBAbWlzY3tNdWtvMTIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e011a292aXN6aWRvc2UgZS5WfSwgICBcbiAgICB0aXRsZT17VGhlcmFwaWUgZGVyIEJhdWNoc3BlaWNoZWxkclx1MDBGQ3NlbmZlaGxmdW5rdGlvbiAoUGFua3JlYXNpbnN1ZmZpemllbnopOiBFbnp5bXN1YnN0aXR1dGlvbn0sICAgXG4gICAgeWVhcj17MjAyNH0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5tdWtvLmluZm8vbWl0d2lya2VuL2FyYmVpdHNrcmVpc2UtdW5kLWFyYmVpdHNnZW1laW5zY2hhZnRlbi9hay1lcm5hZWhydW5nL2VybmFlaHJ1bmdzdGhlcmFwaWUtYmVpLW11a292aXN6aWRvc2UvcGFua3JlYXNpbnN1ZmZpemllbnotdW5kLWVuenltc3Vic3RpdHV0aW9ufSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcbiAgfWAsICAgXG4gIC8qIDkwICovXG4gIGBAbWlzY3tDUkVPTjIwMjRpbnRlcm5ldCwgICBcbiAgICBhdXRob3I9e0NSRU9OXHUwMEFFIChwYW5jcmVsaXBhc2UpfSwgICBcbiAgICB0aXRsZT17QWJvdXQgQ1JFT05cdTAwQUV9LCAgIFxuICAgIHllYXI9ezIwMjR9LCAgIFxuICAgIHVybD17aHR0cHM6Ly93d3cuY3Jlb25oY3AuY29tL2Fib3V0LWNyZW9ufSwgICBcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcbiAgfWAsICAgXG4gIC8qIG9yaWdpbmFsIDkxIGlzdCAxNSAqL1xuXG5gQG1pc2N7QnJvYWRJbnN0aXR1dGUyMDI0LFxuICBhdXRob3IgICAgICAgPSB7QnJvYWQgSW5zdGl0dXRlIG9mIE1JVCBhbmQgSGFydmFyZH0sXG4gIHRpdGxlICAgICAgICA9IHtSZXNlYXJjaGVycyBlbmdpbmVlciBpbiB2aXZvIGRlbGl2ZXJ5IHN5c3RlbSBmb3IgcHJpbWUgZWRpdGluZywgcGFydGlhbGx5IHJlc3RvcmluZyB2aXNpb24gaW4gbWljZX0sXG4gIHB1Ymxpc2hlciAgICA9IHtQaHlzLm9yZ30sXG4gIHllYXIgICAgICAgICA9IHsyMDI0fSxcbn1cbmAsXG5gQGFydGljbGV7QmFkb25fT2hfS2ltX0xlZV8yMDI0LCB0aXRsZT17UmVjZW50IGFwcGxpY2F0aW9uIG9mIENSSVNQUi1DYXMxMiBhbmQgT01FR0Egc3lzdGVtIGZvciBnZW5vbWUgZWRpdGluZ30sIHZvbHVtZT17MzJ9LCBJU1NOPXsxNTI1LTAwMTYsIDE1MjUtMDAyNH0sIERPST17MTAuMTAxNi9qLnltdGhlLjIwMjMuMTEuMDEzfSwgbnVtYmVyPXsxfSwgam91cm5hbD17TW9sZWN1bGFyIFRoZXJhcHl9LCBwdWJsaXNoZXI9e0Vsc2V2aWVyfSwgYXV0aG9yPXtCYWRvbiwgSXNhYmVsIFdlbiBhbmQgT2gsIFllb3Vuc3VuIGFuZCBLaW0sIEhvLUpvb25nIGFuZCBMZWUsIFNldW5nIEh3YW59LCB5ZWFyPXsyMDI0fSwgbW9udGg9amFuLCBwYWdlcz17MzJcdTIwMTM0M30sIGxhbmd1YWdlPXtFbmdsaXNofSB9XHUyMDJGYCxcblxuXG4vKiA5NCAqL1xuICBgQGFydGljbGV7U2FpdG9fWHVfRmF1cmVfTWFndWlyZV9LYW5uYW5fQWx0YWUtVHJhbl9Wb19EZXNpbW9uZV9NYWNyYWVfWmhhbmdfMjAyMywgICBcbiAgICB0aXRsZT17RmFuem9yIGlzIGEgZXVrYXJ5b3RpYyBwcm9ncmFtbWFibGUgUk5BLWd1aWRlZCBlbmRvbnVjbGVhc2V9LCAgIFxuICAgIHZvbHVtZT17NjIwfSwgICBcbiAgICByaWdodHM9ezIwMjMgVGhlIEF1dGhvcihzKX0sICAgXG4gICAgSVNTTj17MTQ3Ni00Njg3fSwgICBcbiAgICBET0k9ezEwLjEwMzgvczQxNTg2LTAyMy0wNjM1Ni0yfSwgICBcbiAgICBudW1iZXI9ezc5NzR9LCAgIFxuICAgIGpvdXJuYWw9e05hdHVyZX0sICAgXG4gICAgcHVibGlzaGVyPXtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sICAgXG4gICAgYXV0aG9yPXtTYWl0bywgTWFrb3RvIGFuZCBYdSwgUGVpeXUgYW5kIEZhdXJlLCBHdWlsaGVtIGFuZCBNYWd1aXJlLCBTYW1hbnRoYSBhbmQgS2FubmFuLCBTb3VteWEgYW5kIEFsdGFlLVRyYW4sIEhhbiBhbmQgVm8sIFNhbSBhbmQgRGVzaW1vbmUsIEFuQW4gYW5kIE1hY3JhZSwgUmhpYW5ub24gSy4gYW5kIFpoYW5nLCBGZW5nfSwgICBcbiAgICB5ZWFyPXsyMDIzfSwgICBcbiAgICBtb250aD17YXVnfSwgICBcbiAgICBwYWdlcz17NjYwLTY2OH0sICAgXG4gICAgbGFuZ3VhZ2U9e2VufSAgIFxuICB9YCwgICBcbiAgXG4gIGBAYXJ0aWNsZXtMaXVfT3Jsb3ZhX09ha2VzX01hX1NwaW5uZXJfQmFuZXlfQ2h1Y2tfVGFuX0tub3R0XywgICBcbiAgICB0aXRsZT17Q2FzWCBlbnp5bWVzIGNvbXByaXNlIGEgZGlzdGluY3QgZmFtaWx5IG9mIFJOQS1ndWlkZWQgZ2Vub21lIGVkaXRvcnN9LCAgIFxuICAgIHZvbHVtZT17NTY2fSwgICBcbiAgICByaWdodHM9ezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LCAgIFxuICAgIElTU049ezE0NzYtNDY4N30sICAgXG4gICAgRE9JPXsxMC4xMDM4L3M0MTU4Ni0wMTktMDkwOC14fSwgICBcbiAgICBudW1iZXI9ezc3NDN9LCAgIFxuICAgIGpvdXJuYWw9e05hdHVyZX0sICAgXG4gICAgcHVibGlzaGVyPXtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sICAgXG4gICAgYXV0aG9yPXtMaXUsIEp1bi1KaWUgYW5kIE9ybG92YSwgTmF0YWxpYSBhbmQgT2FrZXMsIEJlbmphbWluIEwuIGFuZCBNYSwgRW5ibyBhbmQgU3Bpbm5lciwgSGFubmFoIEIuIGFuZCBCYW5leSwgS2F0aGVyaW5lIEwuIE0uIGFuZCBDaHVjaywgSm9uYXRoYW4gYW5kIFRhbiwgRGFuIGFuZCBLbm90dCwgR2F2aW4gSi4gYW5kIEhhcnJpbmd0b24sIEx1Y2FzIEIuIGFuZCBBbC1TaGF5ZWIsIEJhc2VtIGFuZCBXYWduZXIsIEFsZXhhbmRlciBhbmQgQnJcdTAwRjZ0em1hbm4sIEp1bGlhbiBhbmQgU3RhYWhsLCBCcmV0dCBULiBhbmQgVGF5bG9yLCBLaWFuIEwuIGFuZCBEZXNtYXJhaXMsIEpvaG4gYW5kIE5vZ2FsZXMsIEV2YSBhbmQgRG91ZG5hLCBKZW5uaWZlciBBLn0sICAgXG4gICAgeWVhcj17MjAxOX0sICAgXG4gICAgbW9udGg9e2ZlYn0sICAgXG4gICAgcGFnZXM9ezIxOC0yMjN9LCAgIFxuICAgIGxhbmd1YWdlPXtlbn0gICBcbiAgfWAsICAgXG4gIFxuICBgQGFydGljbGV7RG9tYW5fUGFuZGV5X05ldWdlYmF1ZXJfQW5fRGF2aXNfUmFuZG9scGhfTWNFbHJveV9HYW9fUmFndXJhLFxuXHR0aXRsZSAgICAgICAgPSB7UGhhZ2UtYXNzaXN0ZWQgZXZvbHV0aW9uIGFuZCBwcm90ZWluIGVuZ2luZWVyaW5nIHlpZWxkIGNvbXBhY3QsIGVmZmljaWVudCBwcmltZSBlZGl0b3JzfSxcblx0YXV0aG9yICAgICAgID0ge0RvbWFuLCBKLiBMLiBhbmQgUGFuZGV5LCBTLiBhbmQgTmV1Z2ViYXVlciwgTS4gRS4gYW5kIEFuLCBNZWlydWkgYW5kIERhdmlzLCBKZXNzaWUgUi4gYW5kIFJhbmRvbHBoLCBQZXl0b24gQi4gYW5kIE1jRWxyb3ksIEFtYmVyIGFuZCBHYW8sIFhpbiBELiBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBSaWNodGVyLCBNaWNoZWxsZSBGLiBhbmQgRXZlcmV0dGUsIEtlbGNlZSBBLiBhbmQgQmFuc2tvdGEsIFNhbWFneWEgYW5kIFRpYW4sIEthdGhyeW4gYW5kIFRhbywgWS4gQWxsZW4gYW5kIFRvbGFyLCBKYWt1YiBhbmQgT3Nib3JuLCBNYXJrIEouIGFuZCBMaXUsIERhdmlkIFIufSxcblx0eWVhciAgICAgICAgID0gMjAyMyxcblx0am91cm5hbCAgICAgID0ge0NlbGx9LFxuXHRwdWJsaXNoZXIgICAgPSB7RWxzZXZpZXJ9LFxuXHR2b2x1bWUgICAgICAgPSAxODYsXG5cdG51bWJlciAgICAgICA9IDE4LFxuXHRwYWdlcyAgICAgICAgPSB7Mzk4My0tNDAwMn0sXG5cdGRvaSAgICAgICAgICA9IHsxMC4xMDE2L2ouY2VsbC4yMDIzLjA3LjAzOX0sXG5cdGxhbmd1YWdlICAgICA9IHtFbmdsaXNofVxufVxuYCwgICBcbiAgXG4gIGBAYXJ0aWNsZXtJV0FXQUtJMjAwNjcwOSwgICBcbiAgICB0aXRsZT17QW5hbHlzaXMgb2YgdGhlIFhCUDEgc3BsaWNpbmcgbWVjaGFuaXNtIHVzaW5nIGVuZG9wbGFzbWljIHJldGljdWx1bSBzdHJlc3MtaW5kaWNhdG9yc30sICAgXG4gICAgam91cm5hbD17QmlvY2hlbWljYWwgYW5kIEJpb3BoeXNpY2FsIFJlc2VhcmNoIENvbW11bmljYXRpb25zfSwgICBcbiAgICB2b2x1bWU9ezM1MH0sICAgXG4gICAgbnVtYmVyPXszfSwgICBcbiAgICBwYWdlcz17NzA5LTcxNX0sICAgXG4gICAgeWVhcj17MjAwNn0sICAgXG4gICAgSVNTTj17MDAwNi0yOTFYfSwgICBcbiAgICBET0k9e2h0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L2ouYmJyYy4yMDA2LjA5LjEwMH0sICAgXG4gICAgdXJsPXtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMDA2MjkxWDA2MDIxNTUzfSwgICBcbiAgICBhdXRob3I9e0l3YXdha2ksIFRha2FvIGFuZCBBa2FpLCBSeW9rb30sICAgXG4gICAga2V5d29yZHM9e0VSIHN0cmVzcywgSVJFMSwgU3BsaWNpbmcsIFVuZm9sZGVkIHByb3RlaW4gcmVzcG9uc2UsIFhCUDF9ICAgXG4gIH1gLCAgIFxuICAgICAgIFxuXG5cbiAgICBcblxuXSIsICJpbXBvcnQgeyBJbmZvQm94IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQm94ZXNcIjtcbmltcG9ydCB7IFRhYkJ1dHRvblJvdyB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCBDb2xsYXBzaWJsZSBmcm9tIFwiLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuaW1wb3J0IHsgU3VwU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjtcbmltcG9ydCB7IEg0fSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgQnV0dG9uUm93VGFicyB9IGZyb20gXCIuLi9jb21wb25lbnRzL1RhYnNcIjtcbmltcG9ydCBQaWVDaGFydCBmcm9tIFwiLi4vY29tcG9uZW50cy9HcmFwaFwiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uL2NvbXBvbmVudHMvcHJlY3lzZVwiO1xuXG5cbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgc3ltcHRvbWRhdGEsIFN5bXB0b21EYXRlbnNhdHogfSBmcm9tIFwiLi4vZGF0YS9zeW1wdG9tLWRhdGFcIjtcbmltcG9ydCB7IGRydWdkYXRhLCBEcnVnRGF0ZW5zYXR6IH0gZnJvbSBcIi4uL2RhdGEvZHJ1Zy1kYXRhXCI7XG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcbmltcG9ydCBQcmltZUVkaXRpbmdDb21wbGV4IGZyb20gXCIuLi9jb21wb25lbnRzL0NvbXBsZXgtc3ZnXCI7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgRGVzY1NvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvZGVzY3JpcHRpb24tc291cmNlc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gRGVzY3JpcHRpb24oKSB7IFxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IG10LTRcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQWJzdHJhY3RcIiBpZD1cIkFic3RyYWN0XCI+XG4gICAgICAgICAgICAgICAgPHAgaWQ9XCJvYmVuaW5kZXNjcmlwdGlvblwiPldlIGFyZSBwcm91ZCB0byBwcmVzZW50IDxQcmVDeXNlLz4sIGEgbmV4dC1nZW5lcmF0aW9uIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neSwgYXMgaW5ub3ZhdGl2ZSBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggZm9yIGN5c3RpYyBmaWJyb3NpcyBcbiAgICAgICAgICAgICAgICBzcGVjaWZpY2FsbHkgdGFyZ2V0aW5nIHRoZSBtb3N0IGNvbW1vbiBtdXRhdGlvbiA8Yj5GNTA4ZGVsPC9iPiBvZiB0aGUgQ0ZUUiBnZW5lLiBDeXN0aWMgZmlicm9zaXMgaXMgYSBzZXZlcmUgZGlzb3JkZXIgdGhhdCBwcmltYXJpbHkgYWZmZWN0cyB0aGUgbHVuZ3MgXG4gICAgICAgICAgICAgICAgYW5kIGZvciB3aGljaCBvbmx5IHNob3J0LXRlcm0gc3ltcHRvbWF0aWMgdHJlYXRtZW50cyBleGlzdC4gUHJlQ3lzZSBhaW1zIHRvIHByb3ZpZGUgbG9uZy10ZXJtIHJlbGllZiBieSBkZWxpdmVyaW5nIGEgc21hbGwgZ2VuZXRpYyBwYXlsb2FkIHdpdGggc3BlZWQgXG4gICAgICAgICAgICAgICAgYW5kIHByZWNpc2lvbi4gT3VyIGFwcHJvYWNoIGludGVncmF0ZXMgPGI+UHJpbWVHdWlkZTwvYj4sIGEgaGlnaGx5IG9wdGltaXplZCBQcmltZSBFZGl0aW5nIHN5c3RlbSwgd2l0aCA8Yj5BaXJCdWRkeTwvYj4sIGEgbm92ZWwgbGlwaWQgbmFub3BhcnRpY2xlIFxuICAgICAgICAgICAgICAgIChMTlApIGRlbGl2ZXJ5IHBsYXRmb3JtLiBUaGUgPGI+U09SVCBMTlBzPC9iPiB1c2VkIGluIEFpckJ1ZGR5IGFyZSBvcHRpbWl6ZWQgZm9yIHB1bG1vbmFyeSBkZWxpdmVyeSwgb2ZmZXJpbmcgcHJlY2lzZSBvcmdhbiB0YXJnZXRpbmcgYW5kIHN0cnVjdHVyYWwgXG4gICAgICAgICAgICAgICAgc3RhYmlsaXR5IHRocm91Z2hvdXQgdGhlIGluaGFsYXRpb24gcHJvY2Vzcy4gU21hbGwgcGF5bG9hZCBzaXplIGlzIGtleSBmb3IgZWZmZWN0aXZlIGRlbGl2ZXJ5IGFuZCBjb21wYXRpYmlsaXR5IHdpdGggdmlyYWwgdmVjdG9ycywgd2hpY2ggaGF2ZSBhIFxuICAgICAgICAgICAgICAgIGxpbWl0ZWQgY2FwYWNpdHkuIFByaW1lR3VpZGUgZW1ib2RpZXMgdGhpcyB2aXNpb24gYnkgdXRpbGl6aW5nIGEgc21hbGxlciwgbW9yZSBlZmZpY2llbnQgZWRpdGluZyBjb21wbGV4LiBDdXJyZW50IHRyZWF0bWVudHMgb2Z0ZW4gcmVxdWlyZSBkYWlseSBcbiAgICAgICAgICAgICAgICBhZG1pbmlzdHJhdGlvbiB3aGVyZWFzIFByZUN5c2UgaXMgY3VycmVudGx5IGRldmVsb3BlZCBhcyBhIG1vbnRobHkgYXBwbGllZCB0aGVyYXB5LiBJbiBhZGRpdGlvbiwgUHJpbWUgRWRpdGluZyBob2xkcyB0aGUgcHJvbWlzZSB0byBvZmZlciBhIGNhdXNhbCBjdXJlLCBcbiAgICAgICAgICAgICAgICB3aGVuIG11dGF0aW9ucyBhcmUgY29ycmVjdGVkIGluIHN0ZW0gY2VsbHMuIE91ciBhcHByb2FjaCBhaW1zIHRvIHJlZHVjZSBtZWRpY2F0aW9uIGZyZXF1ZW5jeSB3aGlsZSBpbXByb3ZpbmcgcGF0aWVudCBvdXRjb21lcy4gXG4gICAgICAgICAgICAgICAgQnkgbG93ZXJpbmcgY29zdHMgYW5kIGltcHJvdmluZyBhY2Nlc3NpYmlsaXR5LCBQcmVDeXNlIGFzcGlyZXMgdG8gb2ZmZXIgYW4gYWR2YW5jZWQgYW5kIHVzZXItZnJpZW5kbHkgY3VyZSBmb3IgY3lzdGljIGZpYnJvc2lzLjwvcD5cbiAgICAgICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiT3VyIE1vdGl2YXRpb25cIiBpZD1cIk91ciBNb3RpdmF0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5PdXIgcHJvamVjdCBzdGFydGVkIHdpdGggYSBwZXJzb25hbCBzdG9yeS4gUmF0aGVyIHRoYW4gYmVpbmcgZHJpdmVuIHB1cmVseSBieSBhY2FkZW1pYyBjdXJpb3NpdHksIG91ciBtb3RpdmF0aW9uIGNhbWUgZnJvbSBzb21lb25lIGNsb3NlIHRvIG9uZSBvZiBvdXIgdGVhbSBtZW1iZXJzIFx1MjAxNCBNYXggQmVja21hbm4sIGEgZnJpZW5kIHdobyBoYXMgbGl2ZWQgd2l0aCBDeXN0aWMgRmlicm9zaXMgKENGKSBzaW5jZSBoaXMgYmlydGguIFNwZWNpZmljYWxseSwgaGUgY2FycmllcyB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgdGhlIG1vc3QgY29tbW9uIGdlbmV0aWMgY2F1c2Ugb2YgdGhlIGRpc2Vhc2UuIFNlZWluZyB0aGUgaW1wYWN0IG9mIENGIG9uIGhpcyBkYWlseSBsaWZlXHUyMDE0ZnJlcXVlbnQgdHJlYXRtZW50cyBhbmQgcGh5c2ljYWwgc3RyYWluXHUyMDE0bWFkZSB1cyByZWFsaXplIGhvdyBtdWNoIG1vcmUgY2FuIGJlIGRvbmUgdG8gaW1wcm92ZSB0aGUgbGl2ZXMgb2YgdGhvc2UgYWZmZWN0ZWQsIHdoaWNoIGluc3BpcmVkIHVzIHRvIHB1cnN1ZSB0aGlzIHByb2plY3QuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFzIHdlIGV4cGxvcmVkIEN5c3RpYyBGaWJyb3NpcyBmdXJ0aGVyLCB3ZSB3ZXJlIHN0cnVjayBieSBob3cgd2lkZXNwcmVhZCBpdCBpcywgYmVpbmcgdGhlIG1vc3QgY29tbW9uIGdlbmV0aWMgZGlzb3JkZXIgaW4gR2VybWFueS4gQXBwcm94aW1hdGVseSA3MCUgb2YgdGhvc2Ugd2l0aCBDRiBhcmUgc3BlY2lmaWNhbGx5IGFmZmVjdGVkIGJ5IHRoZSBGNTA4ZGVsIG11dGF0aW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4gLiBUaGlzIG11dGF0aW9uIGlzIHRoZSBtb3N0IHByZXZhbGVudCBhbmQgd2VsbC1zdHVkaWVkIG9mIHRoZSB0aG91c2FuZHMgb2YgZ2VuZXRpYyB2YXJpYXRpb25zIHRoYXQgY2F1c2UgQ0YsIG1ha2luZyBpdCBhbiBpbXBvcnRhbnQgZm9jdXMgb2YgcmVzZWFyY2ggYW5kIGludGVydmVudGlvbi4gSW4gZmFjdCwgYWJvdXQgOTAlIG9mIEV1cm9wZWFucyBhbmQgaW5kaXZpZHVhbHMgb2YgRXVyb3BlYW4gZGVzY2VudCB3aXRoIENGIGhhdmUgYXQgbGVhc3Qgb25lIEY1MDhkZWwgYWxsZWxlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz48c3VwPiw8L3N1cD48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+LiBUaGlzIHdpZGVzcHJlYWQgcHJldmFsZW5jZSBoaWdobGlnaHRlZCB0aGUgc2lnbmlmaWNhbmNlIG9mIG91ciBwcm9qZWN0XHUyMDE0bm90IGp1c3QgZm9yIG91ciBmcmllbmQsIGJ1dCBmb3IgdGhlIHRob3VzYW5kcyBvZiBvdGhlcnMgYWZmZWN0ZWQgYnkgdGhpcyBtdXRhdGlvbiBhY3Jvc3MgRXVyb3BlIGFuZCBiZXlvbmQuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3RoZXIvbWF4LWJpbGQud2VicFwiLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8cD5CeSBmb2N1c2luZyBvbiB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgd2UgYWxzbyBob3BlIHRvIGNvbnRyaWJ1dGUgdmFsdWFibGUgaW5zaWdodHMgdG8gdGhlIGdsb2JhbCBjeXN0aWMgZmlicm9zaXMgY29tbXVuaXR5LiBBbHRob3VnaCB0aGlzIG11dGF0aW9uIGlzIG1vc3QgY29tbW9uIGluIEV1cm9wZWFuIHBvcHVsYXRpb25zLCBpdCBpcyBhbHNvIGZvdW5kIGluIG90aGVyIHJlZ2lvbnMgYXJvdW5kIHRoZSB3b3JsZCA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjRcIi8+PHN1cD4sPC9zdXA+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1XCIvPi4gT3VyIHJlc2VhcmNoIGNvdWxkIHRodXMgaGVscCBpbmZvcm0gdHJlYXRtZW50IHN0cmF0ZWdpZXMgYW5kIGhlYWx0aCBwb2xpY2llcyBvbiBhbiBpbnRlcm5hdGlvbmFsIHNjYWxlLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPldpdGggc2V2ZXJhbCB0ZWFtIG1lbWJlcnMgZm9jdXNpbmcgdGhlaXIgc3R1ZGllcyBvbiBiaW9tZWRpY2FsIGZpZWxkcywgd2UgYmVnYW4gYnkgZXhhbWluaW5nIHRoZSBjdXJyZW50IGxhbmRzY2FwZSBvZiBDRiB0cmVhdG1lbnRzLiBJdCBxdWlja2x5IGJlY2FtZSBjbGVhciB0aGF0LCBkZXNwaXRlIHJlY2VudCBwcm9ncmVzcywgdGhlcmUgaXMgc3RpbGwgbm8gY3VyZS4gTW9zdCB0aGVyYXBpZXMsIHN1Y2ggYXMgQ0ZUUiBtb2R1bGF0b3JzLCBmb2N1cyBvbiBtYW5hZ2luZyBzeW1wdG9tcyBhbmQgaW1wcm92aW5nIGx1bmcgZnVuY3Rpb24gcmF0aGVyIHRoYW4gYWRkcmVzc2luZyB0aGUgdW5kZXJseWluZyBjYXVzZSBvZiB0aGUgZGlzZWFzZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjZcIi8+IC4gVGhpcyByZWFsaXphdGlvbiBsZWQgdXMgdG8gZXhwbG9yZSBnZW5lLWVkaXRpbmcgdGVjaG5vbG9naWVzLCB0aHVzIGxlYWRpbmcgdXMgdG8gUHJpbWUgRWRpdGluZ1x1MjAxNGEgbmV4dCBnZW5lcmF0aW9uIGdlbmUgZWRpdGluZyBtZXRob2RcdTIwMTRjYXB0dXJlZCBvdXIgYXR0ZW50aW9uLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPldoaWxlIFByaW1lIEVkaXRpbmcgaG9sZHMgZ3JlYXQgcHJvbWlzZSwgd2UgZm91bmQgdGhhdCBpdHMgYXBwbGljYXRpb24gZm9yIGN5c3RpYyBmaWJyb3NpcywgcGFydGljdWxhcmx5IHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBoYWQgbm90IGJlZW4gZnVsbHkgZXhwbG9yZWQuIFJlY29nbml6aW5nIHRoaXMgZ2FwIGluIHRoZSByZXNlYXJjaCBpbnNwaXJlZCB1cyB0byB0YWtlIG9uIHRoZSBjaGFsbGVuZ2Ugb2Ygb3B0aW1pemluZyBQcmltZSBFZGl0aW5nIGZvciB0aGlzIHNwZWNpZmljIG11dGF0aW9uLiBPdXIgbWlzc2lvbiBiZWNhbWUgY2xlYXI6IHdlIHdhbnQgdG8gY29udHJpYnV0ZSB0byB0aGUgZGV2ZWxvcG1lbnQgb2YgYSBwb3RlbnRpYWwgdGhlcmFwZXV0aWMgYXBwcm9hY2ggZm9yIGN5c3RpYyBmaWJyb3Npcywgc3BlY2lmaWNhbGx5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiB3aXRoIHByaW1lIGVkaXRpbmcsIGFuZCBicmluZyB1cyBjbG9zZXIgdG8gYSBsb25nLXRlcm0gc29sdXRpb24gZm9yIHBhdGllbnRzLiA8L3A+XG4gICAgICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkN5c3RpYyBGaWJyb3Npc1wiIGlkPVwiQ3lzdGljIEZpYnJvc2lzXCI+XG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJPdmVydmlld1wiIGlkPVwiQ3lzdGljIEZpYnJvc2lzMVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZGF0YS1hb3M9XCJ6b29tLXktb3V0XCIgPkN5c3RpYyBGaWJyb3NpcyAoQ0YpIGlzIGEgY29tbW9uIGxpZmUtbGltaXRpbmcgZ2VuZXRpYyBkaXNvcmRlciwgcGFydGljdWxhcmx5IGFmZmVjdGluZyB0aGUgQ2F1Y2FzaWFuIHBvcHVsYXRpb24sIHdpdGggYXBwcm94aW1hdGVseSA8Yj4xNjIsNDAwIHBlb3BsZSB3b3JsZHdpZGU8L2I+IGxpdmluZyB3aXRoIHRoZSBjb25kaXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3XCIvPiAuIFN0YXRpc3RpY2FsbHksIGFib3V0IDxiPm9uZSBpbiBldmVyeSAzLDMwMDwvYj4gd2hpdGUgbmV3Ym9ybnMgaXMgYm9ybiB3aXRoIENGIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOFwiLz4gLiBBbmQgYWNjb3JkaW5nIHRvIHRoZSBHZXJtYW4gQ3lzdGljIEZpYnJvc2lzIFJlZ2lzdHJ5LCB0aGUgYXZlcmFnZSBsaWZlIGV4cGVjdGFuY3kgZm9yIGNoaWxkcmVuIGJvcm4gd2l0aCBDRiBpbiAyMDIxIHdhcyBhcm91bmQgNTcgeWVhcnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5XCIvPiAsIGhpZ2hsaWdodGluZyB0aGUgc2V2ZXJlIGFuZCBsaWZlLXNob3J0ZW5pbmcgbmF0dXJlIG9mIHRoZSBkaXNlYXNlLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIG1vZGVybiB1bmRlcnN0YW5kaW5nIG9mIENGIGRhdGVzIGJhY2sgdG8gMTkyMiB3aGVuIERyLiBEb3JvdGh5IEFuZGVyc2VuLCBhIHBlZGlhdHJpYyBzcGVjaWFsaXN0LCBmaXJzdCBkZXNjcmliZWQgdGhlIGRpc2Vhc2UgYW5kIGNvaW5lZCB0aGUgdGVybSBcIkN5c3RpYyBGaWJyb3Npc1wiIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTBcIi8+IC4gSW4gR2VybWFueSwgaXQgaXMgY29tbW9ubHkga25vd24gYXMgXCJNdWtvdmlzemlkb3NlLFwiIGRlcml2ZWQgZnJvbSB0aGUgTGF0aW4gd29yZHMgbWVhbmluZyBcIm11Y3VzXCIgYW5kIFwidmlzY291c1wiIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTBcIi8+ICwgZW1waGFzaXppbmcgdGhlIGNoYXJhY3RlcmlzdGljIHRoaWNrLCBzdGlja3kgbXVjdXMgdGhhdCBkZWZpbmVzIHRoZSBjb25kaXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxMVwiLz48c3VwPiw8L3N1cD48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjEyXCIvPi4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkdlbmV0aWMgcmVzZWFyY2ggaGFzIGlkZW50aWZpZWQgb3ZlciAxLDcwMCBtdXRhdGlvbnMgaW4gdGhlIENGVFIgKEN5c3RpYyBGaWJyb3NpcyBUcmFuc21lbWJyYW5lIENvbmR1Y3RhbmNlIFJlZ3VsYXRvcikgZ2VuZSwgd2l0aCB0aGUgXHUyMjA2RjUwOCBtdXRhdGlvbiBiZWluZyB0aGUgbW9zdCBjb21tb24sIGFmZmVjdGluZyBhYm91dCA3MCUgb2YgQ0YgcGF0aWVudHMuIFRoaXMgbXV0YXRpb24gcHJldmVudHMgdGhlIHByb3BlciBmb2xkaW5nIG9mIHRoZSBDRlRSIHByb3RlaW4sIHNpZ25pZmljYW50bHkgaW1wYWlyaW5nIGl0cyBmdW5jdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjEzXCIvPiAuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgQ0ZUUiBwcm90ZWluIHJlZ3VsYXRlcyB0aGUgZmxvdyBvZiBjaGxvcmlkZSBpb25zIGFjcm9zcyB0aGUgbWVtYnJhbmVzIG9mIGNlbGxzIGluIHRoZSBsdW5ncywgZGlnZXN0aXZlIHN5c3RlbSwgYW5kIG90aGVyIG9yZ2Fucy4gVGhpcyBpb24gZmxvdyBpcyBlc3NlbnRpYWwgZm9yIGRyYXdpbmcgd2F0ZXIgaW50byBzdXJyb3VuZGluZyB0aXNzdWVzLCB3aGljaCBoZWxwcyBtYWludGFpbiB0aGUgcHJvcGVyIGh5ZHJhdGlvbiBhbmQgY29uc2lzdGVuY3kgb2YgbXVjdXMuIEluIHBhdGllbnRzIHdpdGggQ0YsIHRoZSBkaXNydXB0aW9uIG9mIHRoaXMgcHJvY2VzcyBwcmV2ZW50cyBzdWZmaWNpZW50IHdhdGVyIGZyb20gZW50ZXJpbmcgdGhlIG11Y3VzLCBtYWtpbmcgaXQgYWJub3JtYWxseSB0aGljayBhbmQgc3RpY2t5LiBUaGUgYWNjdW11bGF0aW9uIG9mIHRoaXMgbXVjdXMgbGVhZHMgdG8gYW4gb2JzdHJ1Y3Rpb24gb2YgYWlyd2F5cyBhbmQgZGlnZXN0aXZlIGR1Y3RzLCByZXN1bHRpbmcgaW4gY2hyb25pYyBsdW5nIGluZmVjdGlvbnMsIGluZmxhbW1hdGlvbiwgaW1wYWlyZWQgZGlnZXN0aW9uLCBhbmQgbWFsbnV0cml0aW9uPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNFwiLz4gLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlY29udGFpbmVyXCIgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wcm9qZWN0LWRlc2NyaXB0aW9uL2x1bmctZXBoaXRlbC1iaW9yZW5kZXIucG5nXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAxOiA8L2I+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEx1bmcgZXBoaXRlbGl1bSBvZiBodW1hbiB3aXRoIGNvcnJlY3QgQ0ZUUiBleHByZXNzaW9uIChsZWZ0KSBhbmQgQ3lzdGljIEZpYnJvc2lzIChyaWdodClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiY2xhc3Nlcy1tdXRhdGlvbnMtY29sbGFwc2libGVcIiB0aXRsZT1cIkRpZmZlcmVudCBjbGFzc2VzIG9mIG11dGF0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBtdXRhdGlvbnMgY2FuIGJlIGRpdmlkZWQgaW50byA8dT5zaXggY2xhc3NlczwvdT4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNVwiLz4gOjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5DbGFzcyBJPC9iPiBtdXRhdGlvbnMgcHJldmVudCB0aGUgc3ludGhlc2lzIG9mIENGVFIgcHJvdGVpbnMgYWx0b2dldGhlciwgbWVhbmluZyBubyBjaGFubmVscyBhcmUgcHJvZHVjZWQuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPkNsYXNzIEk8L2I+IG11dGF0aW9ucywgd2hpY2ggaW5jbHVkZSB0aGUgY29tbW9uIEY1MDhkZWwgbXV0YXRpb24gKHJlc3BvbnNpYmxlIGZvciBhYm91dCA4NSUgb2YgY2FzZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNlwiLz4gLCBkaXNydXB0IHRoZSBtYXR1cmF0aW9uIHByb2Nlc3Mgb2YgdGhlIHByb3RlaW4uIEFzIGEgcmVzdWx0LCB0aGUgZGVmZWN0aXZlIGNoYW5uZWxzIGFyZSBxdWlja2x5IGRlZ3JhZGVkIGJ5IHRoZSBjZWxsLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5DbGFzcyBJPC9iPiBtdXRhdGlvbnMsIGtub3duIGFzIFx1MjAxQ2dhdGluZ1x1MjAxRCBtdXRhdGlvbnMsIHJlZHVjZSB0aGUgbGlrZWxpaG9vZCB0aGF0IHRoZSBDRlRSIGNoYW5uZWwgd2lsbCBvcGVuIGNvcnJlY3RseSwgaW1wYWlyaW5nIGl0cyBmdW5jdGlvbi48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGI+Q2xhc3MgSVYsIFY8L2I+IGFuZCA8Yj5WSTwvYj4gbXV0YXRpb25zIGFyZSByYXJlLiBUaGVzZSBtdXRhdGlvbnMgcmVzdWx0IGluIHRoZSBwcm9kdWN0aW9uIG9mIHVuc3RhYmxlIG9yIGluZWZmaWNpZW50IENGVFIgcHJvdGVpbnMsIHdoaWNoIGRvIG5vdCBmdW5jdGlvbiBhZGVxdWF0ZWx5IGFuZCBhcmUgcHJvZHVjZWQgaW4gaW5zdWZmaWNpZW50IG51bWJlcnMuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByZXZhbGVuY2Ugb2YgQ0YgdmFyaWVzIGdsb2JhbGx5LCB3aXRoIGhpZ2hlciBjb25jZW50cmF0aW9ucyBvZiBjYXNlcyBpbiBFdXJvcGUsIE5vcnRoIEFtZXJpY2EsIGFuZCBwYXJ0cyBvZiBPY2VhbmlhLiBUaGlzIGdlb2dyYXBoaWMgdmFyaWF0aW9uIHVuZGVyc2NvcmVzIHRoZSBuZWVkIGZvciByZWdpb25hbGx5IHRhaWxvcmVkIGhlYWx0aGNhcmUgc29sdXRpb25zLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2FzZXR0ZWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2NoYXJ0cy1tYXBzL2NmcGVyMTAtMDAwLnBuZ1wiPjwvaW1nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5DRiBpcyBvZnRlbiBkaWFnbm9zZWQgZWFybHkgdGhyb3VnaCBuZXdib3JuIHNjcmVlbmluZyBwcm9ncmFtcywgd2hpY2ggZGV0ZWN0IGVsZXZhdGVkIGxldmVscyBvZiBpbW11bm9yZWFjdGl2ZSB0cnlwc2lub2dlbiAoSVJUKS4gQSBwb3NpdGl2ZSByZXN1bHQgdHlwaWNhbGx5IGxlYWRzIHRvIGEgc3dlYXQgdGVzdCwgdGhlIGdvbGQgc3RhbmRhcmQgZm9yIGRpYWdub3NpbmcgQ0YsIHdoaWNoIG1lYXN1cmVzIHRoZSBjb25jZW50cmF0aW9uIG9mIGNobG9yaWRlIGluIHN3ZWF0LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QWx0aG91Z2ggdGhlcmUgaXMgY3VycmVudGx5IG5vIGN1cmUgZm9yIENGLCBwYXRpZW50cyBtdXN0IG1hbmFnZSB0aGUgZGlzZWFzZSB0aHJvdWdob3V0IHRoZWlyIGxpdmVzLCByZWx5aW5nIG9uIHRyZWF0bWVudHMgdGhhdCBhbGxldmlhdGUgc3ltcHRvbXMgYnV0IGRvIG5vdCBhZGRyZXNzIHRoZSByb290IGNhdXNlLiBUaGlzIGxpZmVsb25nIG1hbmFnZW1lbnQgaW1wb3NlcyBzaWduaWZpY2FudCBmaW5hbmNpYWwgYnVyZGVucyBvbiBhZmZlY3RlZCBmYW1pbGllcyBhbmQgaGVhbHRoY2FyZSBzeXN0ZW1zLCBwYXJ0aWN1bGFybHkgaW4gcmVnaW9ucyB3aXRoIGEgaGlnaCBwcmV2YWxlbmNlIG9mIENGIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTVcIi8+IC4gSW4gcmVjZW50IHllYXJzLCA8Yj5DRlRSIG1vZHVsYXRvcnM8L2I+LCB3aGljaCB0YXJnZXQgdGhlIHVuZGVybHlpbmcgZ2VuZXRpYyBkZWZlY3QsIGhhdmUgb2ZmZXJlZCBuZXcgaG9wZSBmb3IgbWFueSBwYXRpZW50cy4gPC9wPlxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlRoZSBDRlRSIFByb3RlaW5cIiBpZD1cIkN5c3RpYyBGaWJyb3NpczJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIENGVFIgKEN5c3RpYyBGaWJyb3NpcyBUcmFuc21lbWJyYW5lIENvbmR1Y3RhbmNlIFJlZ3VsYXRvcikgcHJvdGVpbiBpcyBhbiBpb24gY2hhbm5lbCB0aGF0IGZhY2lsaXRhdGVzIHRoZSBtb3ZlbWVudCBvZiBjaGxvcmlkZSBpb25zIGFjcm9zcyBlcGl0aGVsaWFsIGNlbGwgbWVtYnJhbmVzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTdcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMThcIi8+IC4gVGhpcyBtb3ZlbWVudCBpcyBlc3NlbnRpYWwgZm9yIGNvbnRyb2xsaW5nIHRoZSBmbG93IG9mIHdhdGVyIGluIHRpc3N1ZXMgc3VjaCBhcyB0aGUgbHVuZ3MgYW5kIGludGVzdGluZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOVwiLz4gLiBUaGlzIGluY3JlYXNlIGluIGlvbiBjb25jZW50cmF0aW9uIGluIHRoZSBleHRyYWNlbGx1bGFyIHNwYWNlIGRyYXdzIHdhdGVyIG91dCBvZiB0aGUgY2VsbHMgYW5kIGludG8gdGhlIHN1cnJvdW5kaW5nIG11Y3VzIG9yIGZsdWlkLCBlbnN1cmluZyBpdCBzdGF5cyB0aGluIGFuZCBtb2JpbGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMFwiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIEN5c3RpYyBGaWJyb3NpcyBUcmFuc21lbWJyYW5lIENvbmR1Y3RhbmNlIFJlZ3VsYXRvciAoQ0ZUUikgcHJvdGVpbiBpcyBhIHNwZWNpYWxpemVkIHByb3RlaW4gdGhhdCBwbGF5cyBhIGNydWNpYWwgcm9sZSBpbiBtYWludGFpbmluZyB0aGUgYmFsYW5jZSBvZiBpb25zIGFuZCB3YXRlciBvbiB0aGUgc3VyZmFjZSBvZiBjZXJ0YWluIGNlbGxzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGx1bmdzLCBwYW5jcmVhcywgYW5kIG90aGVyIG9yZ2FucyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE4XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPiAuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJTdHJ1Y3R1cmUgb2YgQ0ZUUlwiIGlkPVwic3RydWN0dXJlLWNmdHJcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+Q0ZUUiBpcyBhIGxhcmdlIHByb3RlaW4gZW1iZWRkZWQgaW4gdGhlIGNlbGwgbWVtYnJhbmUuIEl0IGJlbG9uZ3MgdG8gYSBmYW1pbHkgb2YgcHJvdGVpbnMga25vd24gYXMgQUJDIHRyYW5zcG9ydGVycyAoQVRQLUJpbmRpbmcgQ2Fzc2V0dGUgdHJhbnNwb3J0ZXJzKSwgd2hpY2ggdHlwaWNhbGx5IG1vdmUgbW9sZWN1bGVzIGFjcm9zcyBjZWxsIG1lbWJyYW5lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE3XCIvPiAuIENGVFIsIGhvd2V2ZXIsIGlzIHVuaXF1ZSBiZWNhdXNlIGl0IGZ1bmN0aW9ucyBhcyBhbiBpb24gY2hhbm5lbCByYXRoZXIgdGhhbiBhIHRyYW5zcG9ydGVyIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMThcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByb3RlaW4gY29uc2lzdHMgb2Ygc2V2ZXJhbCBpbXBvcnRhbnQgcmVnaW9uczogPC9wPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+VHdvIHRyYW5zbWVtYnJhbmUgZG9tYWlucyAoVE1Ecyk8L2I+OiBUaGVzZSBzcGFuIHRoZSBjZWxsIG1lbWJyYW5lIGFuZCBjcmVhdGUgdGhlIGNoYW5uZWwgdGhyb3VnaCB3aGljaCBpb25zIGNhbiBmbG93IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjBcIi8+IC48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5Ud28gbnVjbGVvdGlkZS1iaW5kaW5nIGRvbWFpbnMgKE5CRHMpPC9iPjogTG9jYXRlZCBvbiB0aGUgY3l0b3BsYXNtaWMgc2lkZSBvZiB0aGUgbWVtYnJhbmUsIHRoZXNlIGRvbWFpbnMgYmluZCBhbmQgaHlkcm9seXplIEFUUCAoYWRlbm9zaW5lIHRyaXBob3NwaGF0ZSkuIEFUUCBiaW5kaW5nIGFuZCBoeWRyb2x5c2lzIHJlZ3VsYXRlIHRoZSBvcGVuaW5nIGFuZCBjbG9zaW5nIG9mIHRoZSBjaGxvcmlkZSBjaGFubmVsIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTdcIi8+ICA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPiAuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+UmVndWxhdG9yeSAoUikgZG9tYWluPC9iPjogVGhpcyBkb21haW4gaXMgdW5pcXVlIHRvIENGVFIgYW5kIGNvbnRyb2xzIHRoZSBhY3Rpdml0eSBvZiB0aGUgcHJvdGVpbi4gSXQgcmVxdWlyZXMgcGhvc3Bob3J5bGF0aW9uIGJ5IHByb3RlaW4ga2luYXNlIEEgKFBLQSkgdG8gYWN0aXZhdGUgdGhlIGlvbiBjaGFubmVsIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMThcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTlcIi8+IC48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWd1cmUtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZ2lmLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIkNGVFItZ2lmXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZmFuem9yL2NmdHItd3QuZ2lmXCI+PC9pbWc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5BbmltYXRpb24gMTo8L2I+IE1vZGVsIG9mIGEgZnVuY3Rpb25hbCBDRlRSIEVuenltZS48L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkZ1bmN0aW9uIG9mIENGVFJcIiBpZD1cImZ1bmN0aW9uLWNmdHJcIiAvPiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5DRlRSIGZ1bmN0aW9ucyBwcmltYXJpbHkgYXMgYSBjaGxvcmlkZSBpb24gY2hhbm5lbC4gSXQgaXMgcmVzcG9uc2libGUgZm9yIHRyYW5zcG9ydGluZyBjaGxvcmlkZSBpb25zIChDbFx1MjA3QikgYWNyb3NzIGVwaXRoZWxpYWwgY2VsbCBtZW1icmFuZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxN1wiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMFwiLz4gLiBIZXJlJ3MgaG93IGl0IHdvcmtzOjwvcD4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8b2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPlJlZ3VsYXRpb24gYnkgcGhvc3Bob3J5bGF0aW9uPC9iPjogVGhlIFIgZG9tYWluIG11c3QgZmlyc3QgYmUgcGhvc3Bob3J5bGF0ZWQgYnkgUEtBIHRvIGFsbG93IGNoYW5uZWwgYWN0aXZhdGlvbi4gVGhpcyBwaG9zcGhvcnlsYXRpb24gaXMgb2Z0ZW4gdHJpZ2dlcmVkIGJ5IGN5Y2xpYyBBTVAgKGNBTVApLCBhIHNpZ25hbGluZyBtb2xlY3VsZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPiAuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+T3BlbmluZyB0aGUgY2hhbm5lbDwvYj46IE9uY2UgdGhlIFIgZG9tYWluIGlzIHBob3NwaG9yeWxhdGVkLCBBVFAgYmluZHMgdG8gdGhlIE5CRHMsIGNhdXNpbmcgY29uZm9ybWF0aW9uYWwgY2hhbmdlcyB0aGF0IG9wZW4gdGhlIGNobG9yaWRlIGNoYW5uZWwgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOFwiLz4gLjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkNobG9yaWRlIHRyYW5zcG9ydDwvYj46IFdpdGggdGhlIGNoYW5uZWwgb3BlbiwgY2hsb3JpZGUgaW9ucyBtb3ZlIGZyb20gaW5zaWRlIHRoZSBjZWxsIHRvIHRoZSBvdXRzaWRlLiBUaGlzIG1vdmVtZW50IG9mIGNobG9yaWRlIGhlbHBzIGRyYXcgd2F0ZXIgb3V0IG9mIHRoZSBjZWxsLCB0aGlubmluZyBtdWN1cyBhbmQgbWFpbnRhaW5pbmcgcHJvcGVyIGh5ZHJhdGlvbiBvZiB0aGUgZXBpdGhlbGlhbCBzdXJmYWNlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE5XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIwXCIvPiAuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+Q2xvc2luZyB0aGUgY2hhbm5lbDwvYj46IEh5ZHJvbHlzaXMgb2YgQVRQIGNhdXNlcyB0aGUgY2hhbm5lbCB0byBjbG9zZSBhZnRlciBhIGNlcnRhaW4gcGVyaW9kLCB0aWdodGx5IHJlZ3VsYXRpbmcgY2hsb3JpZGUgdHJhbnNwb3J0IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTdcIi8+IC48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5DRlRSIHBsYXlzIGEgY3JpdGljYWwgcm9sZSBpbiBtYWludGFpbmluZyB0aGUgZmx1aWQgYmFsYW5jZSBvbiB0aGUgc3VyZmFjZXMgb2YgdGlzc3VlcyBzdWNoIGFzIHRoZSBhaXJ3YXlzLCBkaWdlc3RpdmUgdHJhY3QgYW5kIHN3ZWF0IGdsYW5kcy4gQnkgYWxsb3dpbmcgY2hsb3JpZGUgaW9ucyB0byBmbG93IG91dCBvZiB0aGUgY2VsbHMsIENGVFIgZW5zdXJlcyB0aGF0IHdhdGVyIGZvbGxvd3MsIHByZXZlbnRpbmcgdGhlIGFjY3VtdWxhdGlvbiBvZiB0aGljaywgc3RpY2t5IG11Y3VzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTlcIi8+IC48L3A+XG4gICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ0ZUUiBpbiBDeXN0aWMgRmlicm9zaXNcIiBpZD1cIkNGVFItaW4tY2Z0clwiIC8+ICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+SW4gdGhlIGx1bmdzLCB0aGlzIHdhdGVyIG1vdmVtZW50IGlzIGNydWNpYWwgZm9yIG1haW50YWluaW5nIGEgdGhpbiwgc2xpcHBlcnkgbGF5ZXIgb2YgbXVjdXMgdGhhdCBjYW4gdHJhcCBhbmQgcmVtb3ZlIHBhcnRpY2xlcyBsaWtlIGR1c3QgYW5kIGJhY3RlcmlhLiBUaGUgbXVjdXMgaXMgdGhlbiBtb3ZlZCBvdXQgb2YgdGhlIGx1bmdzIGJ5IHRoZSBhY3Rpb24gb2YgY2lsaWEsIHRpbnkgaGFpci1saWtlIHN0cnVjdHVyZXMgb24gdGhlIHN1cmZhY2Ugb2YgZXBpdGhlbGlhbCBjZWxscy4gV2hlbiB0aGUgQ0ZUUiBwcm90ZWluIGlzIGRlZmVjdGl2ZSwgYXMgaW4gY3lzdGljIGZpYnJvc2lzLCBjaGxvcmlkZSBjYW5ub3QgcHJvcGVybHkgZXhpdCB0aGUgY2VsbHMuIFRoaXMgZGlzcnVwdHMgdGhlIG9zbW90aWMgZ3JhZGllbnQsIHByZXZlbnRpbmcgd2F0ZXIgZnJvbSBlbnRlcmluZyB0aGUgbXVjdXMuIEFzIGEgcmVzdWx0LCB0aGUgbXVjdXMgYmVjb21lcyB0aGljayBhbmQgc3RpY2t5LCBtYWtpbmcgaXQgZGlmZmljdWx0IHRvIGNsZWFyIGFuZCBjcmVhdGluZyBhbiBpZGVhbCBlbnZpcm9ubWVudCBmb3IgYmFjdGVyaWFsIGluZmVjdGlvbnMsIHdoaWNoIGxlYWRzIHRvIGNocm9uaWMgaW5mbGFtbWF0aW9uIGFuZCBsdW5nIGRhbWFnZSBvdmVyIHRpbWUuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+SW4gdGhlIGludGVzdGluZXMsIENGVFIgcmVndWxhdGVzIGZsdWlkIHNlY3JldGlvbiBpbnRvIHRoZSBkaWdlc3RpdmUgdHJhY3QsIHdoaWNoIGlzIHZpdGFsIGZvciB0aGUgbm9ybWFsIG1vdmVtZW50IG9mIGRpZ2VzdGl2ZSBjb250ZW50cy4gV2l0aG91dCBwcm9wZXIgQ0ZUUiBmdW5jdGlvbiwgd2F0ZXIgbW92ZW1lbnQgaXMgcmVkdWNlZCwgbGVhZGluZyB0byB0aGlja2VuZWQgZGlnZXN0aXZlIGZsdWlkcywgYmxvY2thZ2VzLCBhbmQgaW1wYWlyZWQgbnV0cmllbnQgYWJzb3JwdGlvbi4gVGhpcyBjb250cmlidXRlcyB0byBtYWxudXRyaXRpb24gYW5kIG90aGVyIGRpZ2VzdGl2ZSBjb21wbGljYXRpb25zIGluIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cy4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QnkgY29ycmVjdGluZyB0aGUgZ2VuZXRpYyBtdXRhdGlvbnMgdGhhdCBsZWFkIHRvIENGVFIgbWFsZnVuY3Rpb24sIHN1Y2ggYXMgdGhlIFx1MjIwNkY1MDggbXV0YXRpb24sIHdlIGFpbSB0byByZXN0b3JlIHRoZSBwcm9wZXIgYmFsYW5jZSBvZiBjaGxvcmlkZSBhbmQgd2F0ZXIgbW92ZW1lbnQsIHdoaWNoIGlzIGNydWNpYWwgZm9yIHByZXZlbnRpbmcgdGhlIGJ1aWxkdXAgb2YgbXVjdXMgYW5kIGVuc3VyaW5nIG5vcm1hbCBmdW5jdGlvbiBpbiBib3RoIHRoZSByZXNwaXJhdG9yeSBhbmQgZGlnZXN0aXZlIHN5c3RlbXMuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkY1MDhkZWxcIiBpZD1cIkN5c3RpYyBGaWJyb3NpczNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+TW9yZSB0aGFuIDEsMDAwIG11dGF0aW9ucyBpbiB0aGUgQ0ZUUiBnZW5lIGFyZSByZXNwb25zaWJsZSBmb3IgdGhlIGRldmVsb3BtZW50IG9mIGN5c3RpYyBmaWJyb3Npcy4gVGhlIG1vc3QgY29tbW9uIHZhcmlhbnQgaXMgdGhlIEY1MDhkZWwgbXV0YXRpb24sIGZvdW5kIGluIGFwcHJveGltYXRlbHkgNzAlIG9mIGFmZmVjdGVkIGluZGl2aWR1YWxzIG9mIENhdWNhc2lhbiBkZXNjZW50IGluIENhbmFkYSwgTm9ydGhlcm4gRXVyb3BlLCBhbmQgdGhlIFVuaXRlZCBTdGF0ZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMlwiLz4gLiBJdCBpcyBlc3RpbWF0ZWQgdGhhdCBhcm91bmQgOTAlIG9mIHBlb3BsZSB3aXRoIGN5c3RpYyBmaWJyb3NpcyBpbiBFdXJvcGUgYW5kIHRob3NlIG9mIEV1cm9wZWFuIGhlcml0YWdlIGNhcnJ5IGF0IGxlYXN0IG9uZSBGNTA4ZGVsIGFsbGVsZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIzXCIvPjxzdXA+LDwvc3VwPjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjRcIi8+LiBSZXNlYXJjaCBzdWdnZXN0cyB0aGF0IHRoaXMgbXV0YXRpb24gb3JpZ2luYXRlZCBpbiBXZXN0ZXJuIEV1cm9wZSBhdCBsZWFzdCA1LDAwMCB5ZWFycyBhZ28gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyM1wiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIEY1MDhkZWwgbXV0YXRpb24gaW52b2x2ZXMgdGhlIGRlbGV0aW9uIG9mIHRocmVlIG51Y2xlb3RpZGVzLCBcIkNUVCxcIiBhdCBwb3NpdGlvbiA1MDgsIHdoaWNoIHJlbW92ZXMgYSBwaGVueWxhbGFuaW5lIHJlc2lkdWUgd2l0aG91dCBjYXVzaW5nIGEgZnJhbWVzaGlmdC4gVGhpcyBkZWxldGlvbiBpbXBhaXJzIHRoZSBraW5ldGljIGFuZCB0aGVybW9keW5hbWljIGZvbGRpbmcgb2YgdGhlIE5CRDEgZG9tYWluIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjRcIi8+IC4gQXMgYSByZXN1bHQsIHRoZSBDRlRSIHByb3RlaW4gbm90IG9ubHkgbWlzZm9sZHMgYnV0IGFsc28gZXhwZXJpZW5jZXMgZGVmZWN0cyBpbiB0cmFmZmlja2luZyBhbmQgcHJlbWF0dXJlIGRlZ3JhZGF0aW9uLCBsZWFkaW5nIHRvIGEgcmVkdWN0aW9uIGluIGl0cyBzdXJmYWNlIGV4cHJlc3Npb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyNVwiLz4gLiBUaGlzIHNwZWNpZmljIG11dGF0aW9uIGlzIHBhcnRpY3VsYXJseSBzZXZlcmUgYmVjYXVzZSBpdCBhZmZlY3RzIGJvdGggdGhlIHByb2R1Y3Rpb24gYW5kIGZ1bmN0aW9uIG9mIENGVFIsIHJlc3VsdGluZyBpbiBhIG1vcmUgYWdncmVzc2l2ZSBkaXNlYXNlIGNvdXJzZS4gQ29uc2VxdWVudGx5LCBwYXRpZW50cyB3aXRoIHRoZSBGNTA4ZGVsIG11dGF0aW9uIG1heSByZXNwb25kIGJldHRlciB0byBDRlRSIG1vZHVsYXRvcnMsIHdoaWNoIHRhcmdldCB0aGVzZSBzcGVjaWZpYyBkZWZlY3RzIGluIHByb3RlaW4gZm9sZGluZyBhbmQgZnVuY3Rpb24uPC9wPlxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJzdGF0aXN0aWNhbC1kaXN0cmlidXRpb24tY29sbGFwc2libGVcIiB0aXRsZT1cIlN0YXRpc3RpY2FsIGRpc3RyaWJ1dGlvbiBvZiBGNTA4ZGVsIG11dGF0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+SW4gMjAyMywgYSBjb21wcmVoZW5zaXZlIGFuYWx5c2lzIHdhcyBjb25kdWN0ZWQgdG8gYXNzZXNzIHRoZSBkaXN0cmlidXRpb24gb2YgbXV0YXRpb25zIGluIHRoZSBDRlRSIGdlbmUgYXNzb2NpYXRlZCB3aXRoIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHdvcmxkd2lkZS4gRGF0YSB3YXMgc291cmNlZCBmcm9tIHR3byByZXB1dGFibGUgZGF0YWJhc2VzOiB0aGUgPGEgaHJlZj1cImh0dHBzOi8vY2Z0ci5pdXJjLm1vbnRwLmluc2VybS5mci9jZ2ktYmluL3ZhcmlhbnRfbGlzdC5jZ2lcIiB0aXRsZT1cIkNGVFItZGF0YWJhc2UtMVwiID5DRlRSIE11dGF0aW9uIERhdGFiYXNlPC9hPiBhbmQgdGhlIDxhIGhyZWY9XCJodHRwczovL2NmdHIyLm9yZy9tdXRhdGlvbnNfaGlzdG9yeVwiIHRpdGxlPVwiQ0ZUUi1kYXRhYmFzZS0yXCIgPkNGVFIyIERhdGFiYXNlPC9hPi4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHJlc3VsdHMgaW5kaWNhdGUgdGhlIGZvbGxvd2luZyBkaXN0cmlidXRpb24gb2YgQ0ZUUiBtdXRhdGlvbiB0eXBlcyBhbmQgdGhlaXIgZnJlcXVlbmNpZXMgaW4gcGVyY2VudDogPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5JbnNlcnRpb25zIChpbnMpPC9iPjogMC4wMDA4OCU8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkRlbGV0aW9ucyAoZGVsKTwvYj46IDcyLjY0JTwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+U3Vic3RpdHV0aW9ucyAoc3Vicyk8L2I+OiAyMy44NCU8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkluc2VydGlvbnMvRGVsZXRpb25zIChpbmRlbCk8L2I+OiAwLDAwNDg1JTwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+T3RoZXIgbXV0YXRpb25zPC9iPjogMCwwMDM3MCU8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBpZUNoYXJ0IC8+IHsvKiBSZW5kZXIgdGhlIFBpZUNoYXJ0IGNvbXBvbmVudCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+ICBcbiAgICAgICAgICAgICAgICAgICAgPHA+T3ZlcmFsbCwgdGhlIHN0YXRpc3RpY2FsIGRpc3RyaWJ1dGlvbiBvZiBDRlRSIG11dGF0aW9ucyByZXZlYWxzIHNpZ25pZmljYW50IHZhcmlhdGlvbnMgaW4gbXV0YXRpb24gdHlwZXMgYW5kIHRoZWlyIGZyZXF1ZW5jaWVzIHdvcmxkd2lkZSwgd2l0aCBkZWxldGlvbnMgKDcyLjY0JSkgYmVpbmcgdGhlIG1vc3QgY29tbW9uIG11dGF0aW9uIHR5cGUuIFRoaXMgdW5kZXJzY29yZXMgdGhlIG5lZWQgZm9yIGNvbnRpbnVlZCByZXNlYXJjaCBhbmQgbW9uaXRvcmluZyBvZiB0aGVzZSBnZW5ldGljIHZhcmlhdGlvbnMgdG8gaW1wcm92ZSBwYXRpZW50IGNhcmUgYW5kIHRyZWF0bWVudCBzdHJhdGVnaWVzLiBDRiBub3Qgb25seSBhZmZlY3RzIHRoZSBkaXJlY3RseSBhZmZlY3RlZCBvcmdhbnMsIGJ1dCBhbHNvIG1hbnkgb3RoZXIgYXJlYXMgb2YgdGhlIGJvZHkgdGhhdCBhcmUgaW5kaXJlY3RseSBhZmZlY3RlZCBieSB0aGUgZXh0ZW50IG9mIHRoZSBkaXNlYXNlLCBlLmcuIHRocm91Z2ggdGhlIGNvbmRpdGlvbiBvZiBkaXNlYXNlZCBvcmdhbnMuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlN5bXB0b21zXCIgaWQ9XCJDeXN0aWMgRmlicm9zaXM0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwPlNpbmNlIHRoZSBDRlRSIGdlbmUgaXMgZXhwcmVzc2VkIGluIG5lYXJseSBhbGwgdGlzc3VlcyBvZiB0aGUgaHVtYW4gYm9keSwgY3lzdGljIGZpYnJvc2lzIGFmZmVjdHMgYXMgYSBtZXRhYm9saWMgZGlzZWFzZSBhIHdpZGUgcmFuZ2Ugb2Ygdml0YWwgb3JnYW5zLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwic3ltcHRvbXMtY29sbGFwc2libGVcIiB0aXRsZT1cIkhvdyB0aGUgc3ltcHRvbXMgYWZmZWN0IGRpZmZlcmVudCBwYXJ0cyBvZiB0aGUgYm9keVwiID5cbiAgICAgICAgICAgICAgICAgICAgPFRhYkJ1dHRvblJvdyBkYXRhPXtzeW1wdG9tYnV0dG9ucm93ZGF0YX0gb3BlbnR5cGU9XCJtZWRpdGFic1wiIGNsb3Npbmc9XCJcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Sb3dUYWJzIGRhdGE9e3N5bXB0b21idXR0b25yb3dkYXRhfSBjbGE9XCJtZWRpdGFic1wiLz4gXG4gICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRGlhZ25vc2lzXCIgaWQ9XCJDeXN0aWMgRmlicm9zaXM1XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwPldpdGggQ3lzdGljIEZpYnJvc2lzIGJlaW5nIGEgaGVyZWRpdGFyeSBkaXNlYXNlLCB0aGUgZGlhZ25vc3RpYyBtZXRob2RzIGhhdmUgZXZvbHZlZCBzaWduaWZpY2FudGx5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTZcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTdcIi8+IC4gRWFybHkgZGlhZ25vc2lzIGlzIGNydWNpYWwsIGFzIGl0IGFsbG93cyBmb3IgdGltZWx5IGludGVydmVudGlvbnMgdGhhdCBjYW4gaW1wcm92ZSB0aGUgcXVhbGl0eSBvZiBsaWZlIGFuZCBsb25nZXZpdHkgZm9yIENGIHBhdGllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTZcIi8+PHN1cD4sPC9zdXA+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1OFwiLz4uIFdpdGggYWR2YW5jZW1lbnRzIGluIHNjcmVlbmluZyBhbmQgZGlhZ25vc3RpYyB0b29scywgbWFueSBpbmRpdmlkdWFscyBhcmUgZGlhZ25vc2VkIHNob3J0bHkgYWZ0ZXIgYmlydGgsIGVuYWJsaW5nIGVhcmx5IG1hbmFnZW1lbnQgb2YgdGhlIGRpc2Vhc2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1NlwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2MVwiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+Q3lzdGljIGZpYnJvc2lzIGNhbiBiZSBkaWFnbm9zZWQgdGhyb3VnaCBhIHZhcmlldHkgb2YgbWV0aG9kcywgb2Z0ZW4gc3RhcnRpbmcgaW4gaW5mYW5jeSBvciBldmVuIGJlZm9yZSBiaXJ0aCA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjU2XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjYwXCIvPiAuIFRoZSBtb3N0IGNvbW1vbiBkaWFnbm9zdGljIHRlc3QgaXMgdGhlIG5ld2Jvcm4gc2NyZWVuaW5nLCB3aGljaCBpbnZvbHZlcyBhIGJsb29kIHRlc3QgdGhhdCBjaGVja3MgZm9yIGVsZXZhdGVkIGxldmVscyBvZiBhIHByb3RlaW4gY2FsbGVkIGltbXVub3JlYWN0aXZlIHRyeXBzaW5vZ2VuIChJUlQpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTlcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjFcIi8+IC4gRWxldmF0ZWQgSVJUIGxldmVscyBjYW4gaW5kaWNhdGUgcG90ZW50aWFsIENGLCBwcm9tcHRpbmcgZnVydGhlciB0ZXN0aW5nIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjFcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJuZXdib3JuLXNjcmVlbmluZy1jb2xsYXBzaWJsZVwiIHRpdGxlPVwiTmV3Ym9ybiBzY3JlZW5pbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5ld2Jvcm4gc2NyZWVuaW5nIGZvciBDeXN0aWMgRmlicm9zaXMgKENGKSBoYXMgYmVlbiBhIG1ham9yIGFkdmFuY2VtZW50IGluIGVhcmx5IGRldGVjdGlvbiBhbmQgbWFuYWdlbWVudCwgbGVhZGluZyB0byBzaWduaWZpY2FudGx5IGltcHJvdmVkIHBhdGllbnQgb3V0Y29tZXMuIFRoaXMgcHJhY3RpY2UsIHdoaWNoIHN0YXJ0ZWQgaW4gdGhlIGxhdGUgMTk2MHMsIGJlY2FtZSBtb3JlIHdpZGVzcHJlYWQgaW4gdGhlIDE5NzBzLiBUaGUgc2NyZWVuaW5nIHR5cGljYWxseSBpbnZvbHZlcyBhIGJsb29kIHRlc3Qgd2l0aGluIHRoZSBmaXJzdCBmZXcgZGF5cyBvZiBsaWZlLCBtZWFzdXJpbmcgaW1tdW5vcmVhY3RpdmUgdHJ5cHNpbm9nZW4gKElSVCksIGEgbWFya2VyIHRoYXQgaXMgZWxldmF0ZWQgaW4gbmV3Ym9ybnMgd2l0aCBDRi4gRWxldmF0ZWQgSVJUIGxldmVscyBwcm9tcHQgZnVydGhlciBnZW5ldGljIHRlc3RpbmcgdG8gaWRlbnRpZnkgQ0ZUUiBtdXRhdGlvbnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2MlwiLz4gLiBJZiBtdXRhdGlvbnMgYXJlIGZvdW5kLCBhIHN3ZWF0IGNobG9yaWRlIHRlc3QgaXMgb2Z0ZW4gY29uZHVjdGVkIHRvIGNvbmZpcm0gdGhlIGRpYWdub3Npcy4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWFueSBjb3VudHJpZXMsIGluY2x1ZGluZyB0aGUgVW5pdGVkIFN0YXRlcywgQ2FuYWRhLCB0aGUgVW5pdGVkIEtpbmdkb20sIEF1c3RyYWxpYSwgYW5kIHNldmVyYWwgRXVyb3BlYW4gbmF0aW9ucywgaGF2ZSBpbXBsZW1lbnRlZCBuZXdib3JuIHNjcmVlbmluZyBwcm9ncmFtcyBmb3IgQ0YuIEhvd2V2ZXIsIGEgc3VydmV5IG9mIENGIHNjcmVlbmluZyBpbiBFdXJvcGUgcmV2ZWFsZWQgdGhhdCB0aGUgaW1wbGVtZW50YXRpb24gb2Ygc3VjaCBwcm9ncmFtcyB2YXJpZXMgd2lkZWx5LCB3aXRoIHNvbWUgY291bnRyaWVzIGFkb3B0aW5nIG1vcmUgY29tcHJlaGVuc2l2ZSBwcm90b2NvbHMgdGhhbiBvdGhlcnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2M1wiLz4gLiBFYXJseSBkaWFnbm9zaXMgdGhyb3VnaCBzY3JlZW5pbmcgb2ZmZXJzIHNpZ25pZmljYW50IGJlbmVmaXRzLCBzdWNoIGFzIGltcHJvdmVkIGdyb3d0aCwgYmV0dGVyIGx1bmcgZnVuY3Rpb24sIGFuZCBvdmVyYWxsIGVuaGFuY2VkIGhlYWx0aCBvdXRjb21lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY0XCIvPiAuIFRoZSBkaXNjb3Zlcnkgb2YgdGhlIENGVFIgZ2VuZSBoYXMgZnVydGhlciByZWZpbmVkIGRpYWdub3N0aWMgdGVjaG5pcXVlcyBhbmQgdW5kZXJzY29yZWQgdGhlIGNydWNpYWwgcm9sZSBvZiBuZXdib3JuIHNjcmVlbmluZyBpbiB0aGUgZWFybHkgZGV0ZWN0aW9uIGFuZCBtYW5hZ2VtZW50IG9mIENGLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5UZWNobm9sb2dpY2FsIGFkdmFuY2VtZW50cyBhbmQgaW1wcm92ZWQgbWVkaWNhbCBwcm9jZWR1cmVzIGhhdmUgZ3JlYXRseSB0cmFuc2Zvcm1lZCB0aGUgZGlhZ25vc2lzIG9mIGN5c3RpYyBmaWJyb3Npcy4gV2hpbGUgbmV3Ym9ybiBzY3JlZW5pbmcgaGFzIHJldm9sdXRpb25pemVkIGVhcmx5IGRldGVjdGlvbiBhbmQgdHJlYXRtZW50LCB0cmFkaXRpb25hbCBtZXRob2RzIHN1Y2ggYXMgdGhlIHN3ZWF0IHRlc3QgYW5kIHN5bXB0b20gb2JzZXJ2YXRpb24gY29udGludWUgdG8gcGxheSBhIHZpdGFsIHJvbGUsIHBhcnRpY3VsYXJseSBpbiByZWdpb25zIHdoZXJlIHNjcmVlbmluZyBwcm9ncmFtcyBhcmUgbm90IHlldCB3aWRlbHkgYXZhaWxhYmxlLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgPHA+QW5vdGhlciB3aWRlbHkgdXNlZCBtZXRob2QgaXMgdGhlIHN3ZWF0IHRlc3QsIHdoaWNoIG1lYXN1cmVzIHRoZSBjb25jZW50cmF0aW9uIG9mIGNobG9yaWRlIGluIGEgcGVyc29uJ3Mgc3dlYXQuIENGIHBhdGllbnRzIHR5cGljYWxseSBoYXZlIGhpZ2hlci10aGFuLW5vcm1hbCBjaGxvcmlkZSBsZXZlbHMgZHVlIHRvIGRlZmVjdGl2ZSBDRlRSIHByb3RlaW4gZnVuY3Rpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2NVwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2NlwiLz4gLiBXaGlsZSB0aGUgc3dlYXQgdGVzdCBpcyBub24taW52YXNpdmUgYW5kIHJlbGlhYmxlIGZvciBpbmRpY2F0aW5nIENGLCBpdCBpcyBsaW1pdGVkIGluIHNjb3BlLiBGb3IgZGVmaW5pdGl2ZSBkaWFnbm9zaXMgYW5kIHRvIGd1aWRlIHNwZWNpZmljIHRyZWF0bWVudHMsIGEgZ2VuZXRpYyBhbmFseXNpcyBpcyB1c3VhbGx5IHJlcXVpcmVkIHRvIGlkZW50aWZ5IHRoZSBleGFjdCBDRlRSIG11dGF0aW9uLCBzdWNoIGFzIHRoZSBGNTA4ZGVsIG11dGF0aW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjVcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjZcIi8+IC48L3A+XG4gICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cInN3ZWF0LXRlc3QtY29sbGFwc2libGVcIiB0aXRsZT1cIlN3ZWF0IHRlc3RcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRyYWRpdGlvbmFsbHksIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGhhcyBiZWVuIGRpYWdub3NlZCB1c2luZyB0aGUgc3dlYXQgdGVzdCwgd2hpY2ggbWVhc3VyZXMgY2hsb3JpZGUgbGV2ZWxzIGluIHN3ZWF0LiBBIGNobG9yaWRlIGxldmVsIGJlbG93IDQwIG1tb2wvTCAobWlsbGltb2xlcyBvZiBjaGxvcmlkZSBwZXIgbGl0cmUgb2Ygc3dlYXQpIGlzIGNvbnNpZGVyZWQgbm9ybWFsIGFuZCB1bmxpa2VseSB0byBpbmRpY2F0ZSBDRi4gTGV2ZWxzIGJldHdlZW4gNDAgYW5kIDYwIG1tb2wvTCByZXF1aXJlIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbiwgd2hpbGUgbGV2ZWxzIGFib3ZlIDYwIG1tb2wvTCBzdHJvbmdseSBzdWdnZXN0IHRoZSBwcmVzZW5jZSBvZiBDRiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY1XCIvPiAuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhpcyBxdWljayBhbmQgcGFpbmxlc3MgdGVzdCBoYXMgYmVlbiB0aGUgZ29sZCBzdGFuZGFyZCBmb3IgQ0YgZGlhZ25vc2lzIGZvciBtYW55IHllYXJzLiBEZXNwaXRlIGl0cyBhY2N1cmFjeSwgdGhlIHN3ZWF0IHRlc3QgcmVxdWlyZXMgc3BlY2lhbGl6ZWQgbGFiIHBlcnNvbm5lbCBhbmQgY2FuIGJlIGRpZmZpY3VsdCB0byBwZXJmb3JtIG9uIG5ld2Jvcm5zLiBXaGlsZSBkaWFnbm9zaW5nIENGIGJhc2VkIG9uIHN5bXB0b21zIGNhbiBiZSB1c2VmdWwsIGl0IGlzIG5vdCBhbHdheXMgcmVsaWFibGUsIHBhcnRpY3VsYXJseSBpbiBtaWxkIG9yIGF0eXBpY2FsIGNhc2VzLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJUcmVhdG1lbnRcIiBpZD1cIkN5c3RpYyBGaWJyb3NpczZcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+Q3VycmVudCBDeXN0aWMgZmlicm9zaXMgdHJlYXRtZW50cyBmb2N1cyBvbiBtYW5hZ2luZyBzeW1wdG9tcywgc2xvd2luZyBkaXNlYXNlIHByb2dyZXNzaW9uLCBhbmQgaW1wcm92aW5nIHF1YWxpdHkgb2YgbGlmZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY2XCIvPiAuIFNpbmNlIHRoZXJlIGlzIHN0aWxsIG5vIGN1cmUgZm9yIENGLCB0cmVhdG1lbnQgaXMgdHlwaWNhbGx5IGxpZmVsb25nIGFuZCBpbnZvbHZlcyBtdWx0aXBsZSBhcHByb2FjaGVzLCBpbmNsdWRpbmcgbWVkaWNhdGlvbnMsIHBoeXNpY2FsIHRoZXJhcHksIGFuZCBkaWV0YXJ5IGFkanVzdG1lbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjZcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjdcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgcHJpbWFyeSBnb2FsIG9mIENGIHRyZWF0bWVudCBpcyB0byBjbGVhciB0aGUgdGhpY2sgbXVjdXMgZnJvbSB0aGUgbHVuZ3MgdG8gcHJldmVudCBpbmZlY3Rpb25zIGFuZCBpbXByb3ZlIGJyZWF0aGluZyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY4XCIvPiAuIEFpcndheSBjbGVhcmFuY2UgdGVjaG5pcXVlcywgc3VjaCBhcyBjaGVzdCBwaHlzaW90aGVyYXB5LCBhcmUgb2Z0ZW4gdXNlZCBhbG9uZ3NpZGUgaW5oYWxlZCBtZWRpY2F0aW9ucywgbGlrZSBicm9uY2hvZGlsYXRvcnMgYW5kIG11Y29seXRpY3MsIHRvIHRoaW4gdGhlIG11Y3VzIGFuZCBvcGVuIHRoZSBhaXJ3YXlzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjlcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzBcIi8+IC4gQW50aWJpb3RpY3MgYXJlIGZyZXF1ZW50bHkgcHJlc2NyaWJlZCB0byB0cmVhdCBvciBwcmV2ZW50IGx1bmcgaW5mZWN0aW9ucyBjYXVzZWQgYnkgdHJhcHBlZCBiYWN0ZXJpYSBpbiB0aGUgYWlyd2F5cyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjcxXCIvPiAuPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5PbmUgb2YgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgYWR2YW5jZXMgaW4gQ0YgdHJlYXRtZW50IGhhcyBiZWVuIHRoZSBkZXZlbG9wbWVudCBvZiBDRlRSIG1vZHVsYXRvcnMsIHdoaWNoIHRhcmdldCB0aGUgdW5kZXJseWluZyBwcm90ZWluIGR5c2Z1bmN0aW9uIGNhdXNlZCBieSBtdXRhdGlvbnMgaW4gdGhlIENGVFIgZ2VuZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjcwXCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjcyXCIvPiAuIFRoZXNlIGRydWdzLCBzdWNoIGFzIGl2YWNhZnRvciwgbHVtYWNhZnRvciwgYW5kIGVsZXhhY2FmdG9yLCB3b3JrIGJ5IGltcHJvdmluZyB0aGUgZnVuY3Rpb24gb2YgdGhlIGRlZmVjdGl2ZSBDRlRSIHByb3RlaW4sIHBhcnRpY3VsYXJseSBpbiBwYXRpZW50cyB3aXRoIHNwZWNpZmljIG11dGF0aW9ucyBsaWtlIEY1MDhkZWwgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyM1wiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyNFwiLz4gLiBXaGlsZSBDRlRSIG1vZHVsYXRvcnMgY2FuIGRyYW1hdGljYWxseSBpbXByb3ZlIGx1bmcgZnVuY3Rpb24gYW5kIG92ZXJhbGwgaGVhbHRoIGluIG1hbnkgcGF0aWVudHMsIHRoZXkgYXJlIG5vdCBlZmZlY3RpdmUgZm9yIGFsbCBDRlRSIG11dGF0aW9ucyBhbmQgb2Z0ZW4gYXJlIHZlcnkgZXhwZW5zaXZlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzNcIi8+IC48L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPkRpZ2VzdGl2ZSBlbnp5bWUgc3VwcGxlbWVudHMgYXJlIGVzc2VudGlhbCBmb3IgQ0YgcGF0aWVudHMgd2hvIHN1ZmZlciBmcm9tIHBhbmNyZWF0aWMgaW5zdWZmaWNpZW5jeSwgaGVscGluZyB0aGVtIHRvIGFic29yYiBudXRyaWVudHMgZnJvbSBmb29kIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjhcIi8+IC4gQWRkaXRpb25hbGx5LCBoaWdoLWNhbG9yaWUgZGlldHMgYW5kIHZpdGFtaW5zIGFyZSByZWNvbW1lbmRlZCB0byBzdXBwb3J0IGdyb3d0aCBhbmQgbWFpbnRhaW4gYm9keSB3ZWlnaHQgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2OFwiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+QWx0aG91Z2ggY3VycmVudCB0cmVhdG1lbnRzIGNhbiBzaWduaWZpY2FudGx5IGltcHJvdmUgcXVhbGl0eSBvZiBsaWZlIGFuZCBsaWZlIGV4cGVjdGFuY3ksIG1hbmFnaW5nIENGIHJlbWFpbnMgYSBkYWlseSBjaGFsbGVuZ2UgZm9yIHBhdGllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzBcIi8+IC4gQ29udGludWVkIHJlc2VhcmNoIGludG8gZ2VuZSB0aGVyYXB5IGFuZCBvdGhlciBpbm5vdmF0aXZlIHRyZWF0bWVudHMgb2ZmZXJzIGhvcGUgZm9yIG1vcmUgcGVybWFuZW50IHNvbHV0aW9ucyBpbiB0aGUgZnV0dXJlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzNcIi8+IC48L3A+XG4gICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cImRydWdzLWNvbGxhcHNpYmxlXCIgdGl0bGU9XCJEaWZmZXJlbnQgdHlwZXMgb2YgZHJ1Z3NcIiA+XG4gICAgICAgICAgICAgICAgICAgIDxUYWJCdXR0b25Sb3cgZGF0YT17bWVkaWJ1dHRvbnJvd2RhdGF9IG9wZW50eXBlPVwic3ltcHRhYnNcIiBjbG9zaW5nPVwiXCIvPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uUm93VGFicyBkYXRhPXttZWRpYnV0dG9ucm93ZGF0YX0gY2xhPVwic3ltcHRhYnNcIi8+XG4gICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ0YgdHJlYXRtZW50IHdpdGggZ2VuZSB0aGVyYXB5XCI+PC9IND5cbiAgICAgICAgICAgICAgICAgICAgPHA+V2hpbGUgbWVudGlvbmVkIG1lZGljYXRpb25zIGhhdmUgaW1wcm92ZWQgdGhlIHF1YWxpdHkgb2YgbGlmZSBmb3IgbnVtZXJvdXMgQ0YgcGF0aWVudHMsIHRoZXkgb25seSBtYW5hZ2Ugc3ltcHRvbXMgcmF0aGVyIHRoYW4gY3VyZSB0aGUgZGlzZWFzZS4gTW9yZW92ZXIsIG1vc3Qgb2YgdGhlbSBhcmUgZXhwZW5zaXZlIGFuZCBub3Qgd29ybGQtd2lkZSBhY2Nlc3NpYmxlLiBPdXIgcmVzZWFyY2ggaXMgZm9jdXNlZCBvbiB0aGUgZGV2ZWxvcG1lbnQgb2YgYSBnZW5lIHRoZXJhcHkgdGhhdCB0YXJnZXRzIHRoZSB1bmRlcmx5aW5nIGNhdXNlIG9mIENGIGJ5IGNvcnJlY3RpbmcgdGhlIGRlZmVjdGl2ZSBDRlRSIGdlbmUuIDxQcmVDeXNlLz4gYWltcyB0byBoYWx0IGRpc2Vhc2UgcHJvZ3Jlc3Npb24gYW5kIHJlZHVjZSB0aGUgdHJlYXRtZW50IGJ1cmRlbiBmb3IgcGF0aWVudHMuPC9wPlxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiT3VyIEFwcHJvYWNoXCIgaWQ9XCJBcHByb2FjaFwiPlxuICAgICAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiTWVjaGFuaXNtXCIgaWQ9XCJBcHByb2FjaDFcIj5cbiAgICAgICAgICAgICAgICA8cD5UaGUgZGV2ZWxvcG1lbnQgb2YgYW4gaW1wcm92ZWQgUHJpbWUgRWRpdGluZyBjb21wbGV4IGhvbGRzIGdyZWF0IHByb21pc2UgZm9yIGFkdmFuY2luZyBnZW5lIGVkaXRpbmcgdGVjaG5vbG9naWVzLiBPdXIgZW5oYW5jZWQgc3lzdGVtLCBQcmltZSBHdWlkZSwgYWRkcmVzc2VzIGtleSBsaW1pdGF0aW9ucyBvZiBjb252ZW50aW9uYWwgUHJpbWUgRWRpdGluZyBieSBmb2N1c2luZyBvbiBmb3VyIG1haW4gYXJlYXM6IGVkaXRpbmcgZWZmaWNpZW5jeSwgcHJlY2lzaW9uLCBzaXplLCBhbmQgc2FmZXR5LiBQcmltZSBHdWlkZSBoYXMgYmVlbiBkZXNpZ25lZCB0byB0YXJnZXQgdGhlIFx1MDM5NEY1MDggbXV0YXRpb24gaW4gY3lzdGljIGZpYnJvc2lzIHdpdGggaGlnaCBhY2N1cmFjeSwgd2hpbGUgbWluaW1pemluZyBvZmYtdGFyZ2V0IGVmZmVjdHMuIEJ5IG9wdGltaXppbmcgdGhlIHBlZ1JOQSwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBhbmQgbmlja2FzZSBjb21wb25lbnRzLCB3ZSBhaW0gdG8gZGVsaXZlciBwcmVjaXNlIGFuZCBlZmZpY2llbnQgZ2VuZXRpYyBtb2RpZmljYXRpb25zLjwvcD5cbiAgICAgICAgICAgICAgICA8SW5mb0JveCB0aXRsZT1cIlByaW1lIEVkaXRpbmdcIiBpZD1cInByaW1lLWVkaXRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5QcmltZSBlZGl0aW5nIGlzIGEgbmV3IG1ldGhvZCBvZiBnZW5lIGVkaXRpbmcgYmFzZWQgb24gYW4gUk5BLVByb3RlaW4gY29tcGxleC4gSXQgd2FzIGRldmVsb3BlZCBieSBhIGdyb3VwIG9mIHJlc2VhcmNoZXJzIHJldm9sdmluZyBhcm91bmQgUHJvZmVzc29yIERhdmlkIExpdSBmcm9tIEhhcnZhcmQgVW5pdmVyc2l0eSBpbiAyMDE5LjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTVcIi8+IDwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPkhvdyBkb2VzIFByaW1lIEVkaXRpbmcgd29yaz88L2I+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+UHJpbWUgRWRpdGluZyBidWlsZHMgb24gdGhlIHdlbGwta25vd24gQ1JJU1BSIHRlY2hub2xvZ3ksIG9mZmVyaW5nIGEgbW9yZSBwcmVjaXNlIGFuZCBjb250cm9sbGVkIGFwcHJvYWNoIHRvIEROQSBtb2RpZmljYXRpb24uIFRyYWRpdGlvbmFsIENSSVNQUi1DYXM5IG1ldGhvZHMgdHlwaWNhbGx5IGludm9sdmUgY3JlYXRpbmcgZG91YmxlLXN0cmFuZCBicmVha3MgaW4gRE5BLCB3aGljaCBjYW4gYmUgcmVwYWlyZWQgYnkgdGhlIGNlbGwgaW4gd2F5cyB0aGF0IG1pZ2h0IGludHJvZHVjZSB1bmludGVuZGVkIG11dGF0aW9ucy4gUHJpbWUgRWRpdGluZywgYnkgY29udHJhc3QsIGNpcmN1bXZlbnRzIHRoaXMgaXNzdWUgYnkgdXNpbmcgYSBtb3JlIHJlZmluZWQgbWV0aG9kIHRoYXQgYXZvaWRzIGRvdWJsZSBzdHJhbmQgYnJlYWtzIGFsdG9nZXRoZXIgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5MVwiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkF0IHRoZSBoZWFydCBvZiBQcmltZSBFZGl0aW5nIGlzIGEgZnVzaW9uIHByb3RlaW4sIHdoaWNoIGNvbWJpbmVzIHR3byBrZXkgY29tcG9uZW50czogYSBtb2RpZmllZCBDYXM5IGVuenltZSwga25vd24gYXMgYSBcIm5pY2thc2UsXCIgYW5kIGEgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGVuenltZS4gVGhlIG5pY2thc2UgaXMgcmVzcG9uc2libGUgZm9yIG1ha2luZyBhIHNpbmdsZSBzdHJhbmQgY3V0IGluIHRoZSBETkEsIHVubGlrZSB0aGUgdHJhZGl0aW9uYWwgQ2FzOSwgd2hpY2ggY3V0cyBib3RoIHN0cmFuZHMuIFRoaXMgc2luZ2xlIHN0cmFuZCBjdXQgbWluaW1pemVzIHRoZSByaXNrIG9mIHVuaW50ZW5kZWQgbXV0YXRpb25zIG9yIGxhcmdlLXNjYWxlIEROQSBkYW1hZ2UuIFRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgYXR0YWNoZWQgdG8gdGhlIG5pY2thc2UgdGhlbiBtb2RpZmllcyB0aGUgRE5BIGF0IHRoZSB0YXJnZXRlZCBzaXRlIGJ5IGluY29ycG9yYXRpbmcgbmV3IGdlbmV0aWMgaW5mb3JtYXRpb24uPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VG8gZ3VpZGUgdGhpcyBwcm9jZXNzLCBQcmltZSBFZGl0aW5nIHVzZXMgYSBzcGVjaWFsaXplZCBSTkEgbW9sZWN1bGUga25vd24gYXMgcHJpbWUgZWRpdGluZyBndWlkZSBSTkEgKHBlZ1JOQSkuIFRoaXMgcGVnUk5BIHNlcnZlcyB0d28gZnVuY3Rpb25zOiBpdCBkaXJlY3RzIHRoZSBDYXM5IG5pY2thc2UgdG8gdGhlIHNwZWNpZmljIGxvY2F0aW9uIG9uIHRoZSBnZW5vbWUsIGFuZCBpdCBjYXJyaWVzIGEgdGVtcGxhdGUgZm9yIHRoZSBkZXNpcmVkIEROQSBtb2RpZmljYXRpb24uIE5vdywgbGV0XHUyMDE5cyBnbyB0aHJvdWdoIHRoZSBwcm9jZXNzIGluIG1vcmUgZGV0YWlsLCByZWZlcmVuY2luZyB0aGUgaW1hZ2UgYWJvdmUuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5ETkEgTmlja2luZzwvYj46IEluIHRoZSBmaXJzdCBzdGVwICh0b3AgbGVmdCBpbiB0aGUgaW1hZ2UpLCB0aGUgQ2FzOSBuaWNrYXNlLCBndWlkZWQgYnkgdGhlIHBlZ1JOQSwgYmluZHMgdG8gdGhlIHRhcmdldCBnZW5vbWljIEROQSBhbmQgY3JlYXRlcyBhIHNpbmdsZS1zdHJhbmQgYnJlYWssIG9yIFwibmljayxcIiBhdCB0aGUgcHJlY2lzZSBsb2NhdGlvbi4gVGhpcyBpcyBhIGtleSBkaWZmZXJlbmNlIGZyb20gc3RhbmRhcmQgQ1JJU1BSLCB3aGVyZSBib3RoIEROQSBzdHJhbmRzIGFyZSBjdXQsIGluY3JlYXNpbmcgdGhlIHJpc2sgb2YgdW53YW50ZWQgbXV0YXRpb25zLjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPlByaW1lciBCaW5kaW5nIGFuZCBSZXZlcnNlIFRyYW5zY3JpcHRpb248L2I+OiBPbmNlIHRoZSBETkEgaXMgbmlja2VkLCB0aGUgcHJpbWVyIGJpbmRpbmcgc2l0ZSAoUEJTKSBvbiB0aGUgcGVnUk5BIGh5YnJpZGl6ZXMgd2l0aCB0aGUgZXhwb3NlZCBzaW5nbGUtc3RyYW5kZWQgRE5BLCBhcyBzaG93biBpbiB0aGUgbWlkZGxlIG9mIHRoZSBpbWFnZS4gVGhpcyBhbGlnbm1lbnQgYWxsb3dzIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgKFJUKSBlbnp5bWUsIGFsc28gZnVzZWQgdG8gdGhlIG5pY2thc2UsIHRvIGJlZ2luIGNvcHlpbmcgdGhlIGVkaXQgaW50byB0aGUgdGFyZ2V0IEROQS4gVGhlIHJldmVyc2UgdHJhbnNjcmlwdGFzZSB1c2VzIHRoZSB0ZW1wbGF0ZSBlbmNvZGVkIHdpdGhpbiB0aGUgcGVnUk5BIHRvIGNyZWF0ZSBhIGNvbXBsZW1lbnRhcnkgRE5BIHNlcXVlbmNlIChkZXBpY3RlZCBhcyB0aGUgbmV3IHNlcXVlbmNlIGluIHRoZSBpbWFnZSksIGVuc3VyaW5nIHRoZSBjb3JyZWN0ZWQgZ2VuZXRpYyBzZXF1ZW5jZSBpcyBhY2N1cmF0ZWx5IGluc2VydGVkIGludG8gdGhlIGdlbm9tZS48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5GbGFwIEZvcm1hdGlvbiBhbmQgRXF1aWxpYnJhdGlvbjwvYj46IFRoZSBwcm9jZXNzIGNvbnRpbnVlcyBhcyB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGNvcGllcyB0aGUgbmV3IGdlbmV0aWMgc2VxdWVuY2UgaW50byB0aGUgRE5BIHN0cmFuZCwgY3JlYXRpbmcgd2hhdCBpcyBjYWxsZWQgYSBcIjMnIGZsYXBcIiAoYXMgc2hvd24gaW4gdGhlIGJvdHRvbSBwYXJ0IG9mIHRoZSBpbWFnZSkuIFRoaXMgZmxhcCBjb250YWlucyB0aGUgbmV3bHkgZWRpdGVkIHNlcXVlbmNlLiBBdCB0aGlzIHBvaW50LCB0aGVyZSBpcyBhbiBlcXVpbGlicmF0aW9uIGJldHdlZW4gdGhlIG5ldyBmbGFwICh3aGljaCBlbmNvZGVzIHRoZSBpbnRlbmRlZCBlZGl0KSBhbmQgdGhlIHVuZWRpdGVkIDUnIGZsYXAsIHdoaWNoIHN0aWxsIGNvbnRhaW5zIHRoZSBvcmlnaW5hbCwgdW5tb2RpZmllZCBETkEgc2VxdWVuY2UuIFRoZSBjZWxsJ3MgbmF0dXJhbCBtZWNoYW5pc21zIHR5cGljYWxseSBkZWdyYWRlIHRoZSB1bmVkaXRlZCA1JyBmbGFwLCBmYXZvcmluZyB0aGUgaW50ZWdyYXRpb24gb2YgdGhlIDMnIGZsYXAgZW5jb2RpbmcgdGhlIGVkaXQuPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+RmxhcCBSZXNvbHV0aW9uIGFuZCBGaW5hbCBFZGl0aW5nPC9iPjogSW4gc29tZSBjYXNlcywgYW4gYWRkaXRpb25hbCBuaWNrIChzZWVuIGluIHRoZSBQRTMvUEU1IHN5c3RlbXMgaW4gdGhlIGltYWdlKSBpcyBpbnRyb2R1Y2VkIGluIHRoZSBub24tdGFyZ2V0IEROQSBzdHJhbmQgdG8gcHJvbW90ZSByZXBhaXIgYW5kIGZhdm9yIHRoZSBpbmNvcnBvcmF0aW9uIG9mIHRoZSBlZGl0LiBUaGlzIHN0ZXAgaW5jcmVhc2VzIHRoZSBlZmZpY2llbmN5IG9mIFByaW1lIEVkaXRpbmcgYnkgZW5zdXJpbmcgdGhhdCB0aGUgbmV3bHkgZWRpdGVkIHN0cmFuZCBpcyBwcmVmZXJlbnRpYWxseSB1c2VkIGR1cmluZyB0aGUgY2VsbCdzIEROQSByZXBhaXIgcHJvY2Vzcy4gVGhlIG1pc21hdGNoIHJlcGFpciAoTU1SKSBzeXN0ZW0gb2YgdGhlIGNlbGwgYWxzbyBwbGF5cyBhIHJvbGUgaW4gZGV0ZXJtaW5pbmcgd2hldGhlciB0aGUgZWRpdCBpcyByZXRhaW5lZCBvciByZXZlcnRlZCB0byB0aGUgb3JpZ2luYWwgc2VxdWVuY2UuIEZvciBzeXN0ZW1zIGxpa2UgUEU0IGFuZCBQRTUsIGluaGliaXRpb24gb2YgdGhlIG1pc21hdGNoIHJlcGFpciBzeXN0ZW0gKGUuZy4sIGJ5IE1MSDFkbikgZnVydGhlciBwcm9tb3RlcyB0aGUgaW50ZWdyYXRpb24gb2YgdGhlIGRlc2lyZWQgZWRpdC48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5GaW5hbCBvdXRjb21lPC9iPjogT25jZSB0aGUgdW5lZGl0ZWQgZmxhcCBpcyBkZWdyYWRlZCBhbmQgdGhlIG5ldyBzZXF1ZW5jZSBpcyBpbnRlZ3JhdGVkLCB0aGUgY2VsbCBjb21wbGV0ZXMgdGhlIHJlcGFpciwgYW5kIHRoZSBlZGl0IGJlY29tZXMgcGVybWFuZW50bHkgaW5jb3Jwb3JhdGVkIGludG8gdGhlIEROQS4gQXMgc2hvd24gaW4gdGhlIGRpYWdyYW0sIHRoZSByZXN1bHQgaXMgYSBzdWNjZXNzZnVsIGdlbmV0aWMgbW9kaWZpY2F0aW9uLCB3aGVyZSB0aGUgbmV3LCBjb3JyZWN0ZWQgc2VxdWVuY2UgcmVwbGFjZXMgdGhlIG9yaWdpbmFsIGZhdWx0eSBzZXF1ZW5jZS48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiZ2lmLXdyYXBwZXJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wcm9qZWN0LWRlc2NyaXB0aW9uL3ByaW1lLWVkaXRpbmctYW5pbWF0aW9uLTEwZnBzLmdpZlwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSA0OiA8L2I+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbGx1c3RyYXRpb24gb2YgdGhlIFByaW1lIEVkaXRpbmcgcHJvY2VzcyBhbmQgaXRzIHBvc3NpYmxlIG91dGNvbWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk92ZXJhbGwsIHRoZXJlIGFyZSBtYW55IGRpZmZlcmVudCBQcmltZSBFZGl0aW5nIHN5c3RlbXMgd2l0aCBhIHZhcmlldHkgb2YgY29tcG9uZW50cyBhbmQgY29tcGxleGl0eSwgc3RhcnRpbmcgZnJvbSBQRTIgdXAgdG8gUEU3LiBQb3NzaWJsZSBlZGl0cyBjb3VsZCBpbnRlZ3JhdGUgc3Vic3RpdHV0aW9ucywgaW5zZXJ0cyBhbmQgZGVsZXRpb25zIGluIHRoZSByYW5nZSBvZiBvbmUgYmFzZSB1cCB0byBodW5kcmVkcyBvZiBudWNsZW90aWRlcywgd2l0aCBncmFkdWFsbHkgZGVjcmVhc2luZyBlZGl0aW5nIGVmZmljaWVuY3kuIFRoZXJlZm9yZSBQcmltZSBFZGl0aW5nIHRlY2hub2xvZ3kgYWxsb3dzIHRhcmdldGVkIG1vZGlmaWNhdGlvbnMgb2Ygc3BlY2lmaWMgZ2VuZXMuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kZXRhaWxzPlxuICAgICAgICAgICAgICAgIDwvSW5mb0JveD4gXG4gICAgICAgICAgICAgICAgPHA+SG93ZXZlciwgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBpcyByZWxhdGl2ZWx5IGxhcmdlLCBwb3NpbmcgY2hhbGxlbmdlcyBmb3IgdGhlcmFwZXV0aWMgZGVsaXZlcnk8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+LiBBZGRpdGlvbmFsbHksIFByaW1lIEVkaXRpbmcgaGFzIGJlZW4gc2hvd24gdG8gYmUgcmVsYXRpdmVseSBpbmVmZmljaWVudCBpbiB0ZXJtcyBvZiBnZW5lIGVkaXRpbmcgcmF0ZXMsIHdoaWNoIGNvdWxkIGxpbWl0IGl0cyB0aGVyYXBldXRpYyB1dGlsaXR5PFN1cFNjcm9sbExpbmsgbGFiZWw9XCI0XCIvPi4gT3VyIHByb2plY3QgYWltcyB0byBlbmhhbmNlIHRoZSBQcmltZSBFZGl0aW5nIGFwcHJvYWNoIGJ5IG1pbmlhdHVyaXppbmcgaXRzIGNvbXBvbmVudHMgYW5kIGVuaGFuY2luZyBpdHMgZWZmaWNpZW5jeSwgYXMgd2VsbCBhcyBwcmVjaXNpb24uIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5BcyBzaG93biBpbiB0aGUgaW1hZ2UsIHdlIGRldmVsb3BlZCB0d28gcG90ZW50aWFsIGNvbmZpZ3VyYXRpb25zIGZvciBQcmltZSBHdWlkZSwgZWFjaCB1c2luZyBhIGRpZmZlcmVudCBuaWNrYXNlOiBvbmUgYmFzZWQgb24gdGhlIEZhbnpvciAoblNwdUZ6MSkgbmlja2FzZSBhbmQgdGhlIG90aGVyIG9uIGEgQ2FzWCAoblBsbUNhc1gpIG5pY2thc2UuIEJvdGggY29uZmlndXJhdGlvbnMgYXJlIGRlc2lnbmVkIHRvIGltcHJvdmUgdGhlIHByZWNpc2lvbiBhbmQgc3RhYmlsaXR5IG9mIHRoZSBQcmltZSBFZGl0aW5nIHN5c3RlbS4gVGhlIHBlZ1JOQSBzY2FmZm9sZCwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIChQRTZjKSwgYW5kIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUy9SVFQpIHdvcmsgdG9nZXRoZXIgaW4gYm90aCBzeXN0ZW1zIHRvIGludHJvZHVjZSBwcmVjaXNlIGVkaXRzLCB3aXRoIHRoZSBMYSgxLTE5MykgZW5oYW5jaW5nIHN0YWJpbGl0eSBhbmQgZnVuY3Rpb24uPC9wPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Byb2plY3QtZGVzY3JpcHRpb24vcHJpbWVndWlkZS5wbmdcIi8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImltZy1yaWdodCBpbWctaGFsZiBjb2xcIj48UHJpbWVFZGl0aW5nQ29tcGxleC8+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHA+VG8gZGV2ZWxvcCBvdXIgaW5ub3ZhdGl2ZSBQcmltZSBFZGl0aW5nIHN5c3RlbSwgUHJpbWUgR3VpZGUsIHdlIHdvcmtlZCBjbG9zZWx5IHdpdGggc2V2ZXJhbCBsZWFkaW5nIGV4cGVydHMgaW4gdGhlIGZpZWxkLiBBbW9uZyB0aGVtIHdlcmUgTWF0dGlqcyBCdWxjYWVuLCBNYWthdG8gU2FpdG8sIERyLiBIYW1tZXIsIEphbi1QaGlsbGlwcCBHZXJoYXJkIGFuZCBQcm9mLiBLcmlzdGlhbiBNXHUwMEZDbGxlciwgd2hvc2UgaW5zaWdodHMgaGVscGVkIGd1aWRlIG91ciBkZWNpc2lvbnMuIFByaW1lIEd1aWRlIGlzIGEgaGlnaGx5IHNwZWNpYWxpemVkIFByaW1lIEVkaXRpbmcgY29tcGxleCwgZGVzaWduZWQgdG8gdGFyZ2V0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIGN5c3RpYyBmaWJyb3NpcyB3aXRoIHByZWNpc2lvbiBhbmQgZWZmaWNpZW5jeS4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPk91ciBQcmltZSBHdWlkZSBzeXN0ZW0gY29uc2lzdHMgb2YgY2FyZWZ1bGx5IHNlbGVjdGVkIGNvbXBvbmVudHMsIGVhY2ggb3B0aW1pemVkIGZvciBpdHMgcm9sZS4gRm9yIHRoZSBuaWNrYXNlLCB3ZSBjaG9zZSBiZXR3ZWVuIFNwdUZ6MSBhbmQgQ2FzWCBuaWNrYXNlcyBkdWUgdG8gdGhlaXIgc21hbGxlciBzaXplIGFuZCBzdHJ1Y3R1cmFsIGFkdmFudGFnZXMsIHdoaWNoIHN1Z2dlc3QgaW5jcmVhc2VkIHN0YWJpbGl0eSBmb3IgdGhlIHBlZ1JOQSB3aXRoaW4gdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC4gU21hbGxlciBuaWNrYXNlcyBhbHNvIHByb3ZpZGUgYmVuZWZpdHMgaW4gdGVybXMgb2Ygb3ZlcmFsbCBlZmZpY2llbmN5IGFuZCBlYXNlIG9mIGRlbGl2ZXJ5LCBhbGlnbmluZyB3aXRoIHRoZSBjb21wYWN0IGRlc2lnbiB3ZSBhaW1lZCBmb3IuPC9wPlxuICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cImZhbnpvcmNhcy1jb2xsYXBzaWJsZVwiIHRpdGxlPVwiQWR2YW50YWdlcyBvZiBGYW56b3IvUGxtQ2FzWCBvdmVyIENhczlcIj4gXG4gICAgICAgICAgICAgICAgICAgIDxwPkZyb20gdGhlIHN0YXJ0IG9mIG91ciBwcm9qZWN0IHdlIGhhdmUgYmVlbiBleGFtaW5pbmcgdGhlIGVzdGFibGlzaGVkIFByaW1lIEVkaXRpbmcgY29tcGxleCwga25vd24gZm9yIGl0cyBlZmZlY3RpdmVuZXNzIGJ1dCBhbHNvIGZvciBzZXZlcmFsIGxpbWl0YXRpb25zLCBpbmNsdWRpbmcgaXRzIHJlbGF0aXZlbHkgbGFyZ2Ugc2l6ZSBhbmQgc3RydWN0dXJhbCB2dWxuZXJhYmlsaXRpZXMuIEEga2V5IGNvbXBvbmVudCBvZiB0aGlzIGNvbXBsZXggaXMgdGhlIENhczkgbmlja2FzZSwgYW4gZW56eW1lIHRoYXQgc2VsZWN0aXZlbHkgY3V0cyBvbmUgb2YgdGhlIHR3byBETkEgc3RyYW5kcyBhdCBhIHByZWNpc2UgbG9jYXRpb24uIFRoaXMgbmlja2FzZSB3YXMgb3JpZ2luYWxseSBlbmdpbmVlcmVkIGJ5IGludHJvZHVjaW5nIG11dGF0aW9ucyBpbnRvIHRoZSBDYXM5IGVuZG9udWNsZWFzZSwgd2hpY2ggdHlwaWNhbGx5IGN1dHMgYm90aCBETkEgc3RyYW5kcy4gQnkgZGlzYWJsaW5nIG9uZSBvZiB0aGUgdHdvIGFjdGl2ZSBzaXRlcywgdGhlIENhczkgbmlja2FzZSB3YXMgZGVzaWduZWQgdG8gbmljayBvbmx5IG9uZSBzdHJhbmQsIGEgZnVuY3Rpb24gZXNzZW50aWFsIHRvIHRoZSBzdWNjZXNzIG9mIHRoZSBQcmltZSBFZGl0aW5nIHByb2Nlc3MgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5MlwiLz4gLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPk91ciBhaW0gd2FzIHRvIGltcHJvdmUgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCwgbm90IG9ubHkgYnkgcmVkdWNpbmcgaXRzIHNpemUgYnV0IGFsc28gYnkgZW5oYW5jaW5nIGl0cyBzdGFiaWxpdHkuIFRvIGFjaGlldmUgdGhpcywgd2Ugc291Z2h0IGFsdGVybmF0aXZlIGVuZG9udWNsZWFzZXMgdGhhdCBhcmUgc21hbGxlciBhbmQgcG9zc2VzcyBvdGhlciBkZXNpcmFibGUgcHJvcGVydGllcy4gT3VyIHN0cmF0ZWd5IGludm9sdmVkIGlkZW50aWZ5aW5nIGVuZG9udWNsZWFzZXMgd2l0aCBzdWl0YWJsZSBjaGFyYWN0ZXJpc3RpY3MgYW5kIHRoZW4gZGV2ZWxvcGluZyBtZXRob2RzIHRvIG11dGF0ZSB0aGVtIGludG8gbmlja2FzZXMsIGFsbG93aW5nIHRoZW0gdG8gc2VsZWN0aXZlbHkgY3V0IGEgc2luZ2xlIEROQSBzdHJhbmQuIENhc1ggYW5kIEZhbnpvciBlbWVyZ2VkIGFzIHByb21pc2luZyBjYW5kaWRhdGVzLCBvZmZlcmluZyBzdHJ1Y3R1cmFsIGFkdmFudGFnZXMgYmV5b25kIHRoZWlyIHNtYWxsZXIgc2l6ZS4gPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5JbiBDYXM5LWJhc2VkIHN5c3RlbXMsIHRoZSBzcGFjZXIgcmVnaW9uIG9mIHRoZSBndWlkZSBSTkEgKGdSTkEpXHUyMDE0dGhlIHBhcnQgdGhhdCBiaW5kcyB0byB0aGUgdGFyZ2V0IEROQVx1MjAxNGlzIGxvY2F0ZWQgYXQgdGhlIDUnIGVuZCBvZiB0aGUgUk5BLXByb3RlaW4gY29tcGxleC4gSG93ZXZlciwgaW4gQ2FzWCBhbmQgRmFuem9yLCB0aGUgc3BhY2VyIGlzIHBvc2l0aW9uZWQgYXQgdGhlIDMnIGVuZDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOTNcIi8+ICA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjk0XCIvPiAuIFRoaXMgcmV2ZXJzYWwgb2ZmZXJzIHNldmVyYWwgYmVuZWZpdHM6IHRoZSAzJyBlbmQgb2YgdGhlIFJOQSBpcyB0eXBpY2FsbHkgbW9yZSBzdXNjZXB0aWJsZSB0byBkZWdyYWRhdGlvbiBieSBSTmFzZXMsIHdoaWNoIGNhbiBjb21wcm9taXNlIHRoZSBzdGFiaWxpdHkgYW5kIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC4gSW4gQ2FzWCBhbmQgRmFuem9yLCBob3dldmVyLCB0aGUgM1x1MjAxOSB0ZXJtaW51cyBpcyBwb3NpdGlvbmVkIGF0IHRoZSBzcGFjZXIgZW5jbG9zZWQgYnkgdGhlIHByb3RlaW4sIHBvdGVudGlhbGx5IHByb3RlY3RpbmcgZnJvbSBSTmFzZSBkZWdyYWRhdGlvbi4gIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+QWRkaXRpb25hbGx5LCB0aGlzIHJldmVyc2VkIGFyY2hpdGVjdHVyZSBhbHRlcnMgdGhlIHBvc2l0aW9uaW5nIG9mIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRpb24gdGVtcGxhdGUgKFJUVCkgYW5kIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUykgb24gdGhlIHBlZ1JOQS4gSW4gQ2FzOS1iYXNlZCBzeXN0ZW1zLCB0aGUgUlRUIGlzIGxvY2F0ZWQgYXQgdGhlIDMnIGVuZCBvZiB0aGUgcGVnUk5BLCB3aGljaCBsZWF2ZXMgaXQgbW9yZSBleHBvc2VkIGFuZCBpbmNyZWFzZXMgdGhlIHJpc2sgb2YgcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIGNvbnRpbnVpbmcgcGFzdCB0aGUgaW50ZW5kZWQgc3RvcCBwb2ludC4gVGhpcyBcInNjYWZmb2xkIHJlYWQtdGhyb3VnaFwiIGVmZmVjdCBjYW4gcmVzdWx0IGluIHRoZSBzeW50aGVzaXMgb2YgdW5pbnRlbmRlZCBETkEgc2VxdWVuY2VzLCBsZWFkaW5nIHRvIHVuZGVzaXJlZCBtdXRhdGlvbnMgb3IgZ2Vub21pYyBhbHRlcmF0aW9ucyBhdCB0aGUgdGFyZ2V0IHNpdGU8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjk1XCIvPiAsIHBvdGVudGlhbGx5IGNvbXByb21pc2luZyB0aGUgc2FmZXR5IG9mIHRoZSBQcmltZSBFZGl0aW5nIHByb2Nlc3MuIEluIENhc1ggYW5kIEZhbnpvciBzeXN0ZW1zLCBob3dldmVyLCB0aGUgUlRUIGlzIHBvc2l0aW9uZWQgYXQgdGhlIDUnIGVuZCBvZiB0aGUgcGVnUk5BLCB3aGlsZSB0aGUgc3BhY2VyIGlzIGxvY2F0ZWQgbmVhciB0aGUgMycgZW5kIGFuZCBpcyBjbG9zZWx5IGJvdW5kIHRvIHRoZSBwcm90ZWluLiBUaGlzIHJldmVyc2VkIGxheW91dCBoZWxwcyBlbnN1cmUgdGhhdCByZXZlcnNlIHRyYW5zY3JpcHRpb24gc3RvcHMgcHJlY2lzZWx5IGF0IHRoZSBlbmQgb2YgdGhlIFJUVCBzZXF1ZW5jZSwgc2lnbmlmaWNhbnRseSByZWR1Y2luZyB0aGUgcmlzayBvZiB1bmludGVuZGVkIGV4dGVuc2lvbnMgYW5kIGltcHJvdmluZyB0aGUgcHJlY2lzaW9uIGFuZCByZWxpYWJpbGl0eSBvZiB0aGUgZWRpdGluZyBwcm9jZXNzLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+QnkgaW5jb3Jwb3JhdGluZyB0aGVzZSBzbWFsbGVyLCBtb3JlIHN0YWJsZSBuaWNrYXNlcyBpbnRvIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIHdlIGFpbSB0byByZWR1Y2UgaXRzIG92ZXJhbGwgc2l6ZSB3aGlsZSBtYWludGFpbmluZyBvciBldmVuIGVuaGFuY2luZyBpdHMgZnVuY3Rpb25hbGl0eSBhbmQgcmVsaWFiaWxpdHkuIDwvcD5cbiAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgIDxwPkluIHRlcm1zIG9mIHRoZSBwZWdSTkEsIHdlIG9wdGVkIGZvciBhIHBlZ1JOQSwgaW5jbHVkaW5nIGEgMTYtYmFzZSBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIGFuZCBhIDMwLWJhc2UgcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIHRlbXBsYXRlIChSVFQpLCB3aXRoIG5vIHNpbGVudCBlZGl0cyBhbmQgYSBzdHJ1Y3R1cmFsIG1vdGlmLCB0aGUgdGV2b3ByZVExLiBBZnRlciBleHRlbnNpdmUgc2NyZWVuaW5nIHVzaW5nIGEgcmVwb3J0ZXIgc3lzdGVtLCB0aGlzIHBlZ1JOQSBkZW1vbnN0cmF0ZWQgdGhlIGhpZ2hlc3QgcGVyZm9ybWFuY2UsIGxlYWRpbmcgdXMgdG8gc2VsZWN0IGl0IGFzIHRoZSBiZXN0IGNhbmRpZGF0ZSBmb3IgZnVydGhlciBkZXZlbG9wbWVudC4gV2hpbGUgb3RoZXIgcGVnUk5BcyBhbHNvIHNob3dlZCBwcm9taXNlLCBwZWdSTkFfUEVBUl8wNSB3YXMgdWx0aW1hdGVseSBjaG9zZW4gZm9yIGl0cyBzdXBlcmlvciByZXN1bHRzIGluIG91ciB0ZXN0aW5nLjwvcD5cbiAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJwZWdSTkEtZ2VuYXUtY29sbGFwc2libGVcIiB0aXRsZT1cIk9wdGltaXphdGlvbiBvZiB0aGUgcGVnUk5BXCI+IFxuICAgICAgICAgICAgICAgICAgICA8cD48Yj5TdGFiaWxpdHkgaW1wcm92ZW1lbnQ6IHRldm9wcmVRMSBleHRlbnNpb248L2I+PC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgcGVnUk5BIHdhcyBzcGVjaWZpY2FsbHkgb3B0aW1pemVkIHRvIGVuaGFuY2UgaXRzIHN0YWJpbGl0eSBpbiB0aGUgY2VsbHVsYXIgZW52aXJvbm1lbnQuIFRvIGFjaGlldmUgdGhpcywgYSBzdHJ1Y3R1cmFsIG1vdGlmIGtub3duIGFzIHRldm9wcmVRMSB3YXMgYWRkZWQgdG8gdGhlIGJhc2ljIHBlZ1JOQSBzdHJ1Y3R1cmUuIFRoaXMgbW90aWYgd2FzIHNlbGVjdGVkIGJhc2VkIG9uIGl0cyBrbm93biBhYmlsaXR5IHRvIGltcHJvdmUgUk5BIHN0YWJpbGl0eSBieSBwcmV2ZW50aW5nIGRlZ3JhZGF0aW9uLiBCeSBpbnRlZ3JhdGluZyB0ZXZvcHJlUTEsIHRoZSBnb2FsIHdhcyB0byBleHRlbmQgdGhlIGhhbGYtbGlmZSBvZiB0aGUgcGVnUk5BLCBhbGxvd2luZyBpdCB0byByZW1haW4gZnVuY3Rpb25hbCBpbiBjZWxscyBmb3IgYSBsb25nZXIgZHVyYXRpb24sIHRodXMgaW1wcm92aW5nIHRoZSBsaWtlbGlob29kIG9mIHN1Y2Nlc3NmdWwgZ2VuZSBlZGl0cy4gVGhpcyBzdGFiaWxpemluZyBhZGRpdGlvbiB3YXMgcGFydGljdWxhcmx5IHZhbHVhYmxlIGluIHRoZSBjb250ZXh0IG9mIENGVFIgZ2VuZSBlZGl0aW5nLCB3aGVyZSBoaWdoZXIgUk5BIHN0YWJpbGl0eSBjb3VsZCBsZWFkIHRvIGJldHRlciBlZGl0aW5nIG91dGNvbWVzLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+UHJlY2lzaW9uIGVuaGFuY2VtZW50OiBTcGFjZXIgc2VsZWN0aW9uPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+QSBtYWpvciBmb2N1cyBkdXJpbmcgdGhlIG9wdGltaXphdGlvbiBvZiB0aGUgcGVnUk5BIHdhcyB0aGUgY2FyZWZ1bCBkZXNpZ24gb2YgdGhlIHNwYWNlciBzZXF1ZW5jZSwgd2hpY2ggcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gZ3VpZGluZyB0aGUgZWRpdGluZyBjb21wbGV4IHRvIHRoZSBjb3JyZWN0IGdlbm9taWMgbG9jYXRpb24uIE11bHRpcGxlIHNwYWNlciBzZXF1ZW5jZXMgd2VyZSBkZXNpZ25lZCBhbmQgdGVzdGVkIHZpYSBhIHNvZnR3YXJlLCB3aXRoIHRoZSBhaW0gb2YgbWluaW1pemluZyBvZmYtdGFyZ2V0IGVmZmVjdHMgdGhhdCBjYW4gbGVhZCB0byB1bmludGVuZGVkIGdlbmV0aWMgY2hhbmdlcy4gVGhyb3VnaCBleHBlcnQgY29uc3VsdGF0aW9ucyBhbmQgdGhlb3JldGljYWwgbW9kZWxpbmcsIGEgcmF0aW9uYWwgZGVzaWduIHN0cmF0ZWd5IHdhcyBlbXBsb3llZCB0byBzZWxlY3QgYSBzcGFjZXIgc2VxdWVuY2UgdGhhdCB3b3VsZCBlbmhhbmNlIHRoZSBwcmVjaXNpb24gb2YgdGhlIGVkaXRpbmcgcHJvY2Vzcy4gVGhpcyBwcmVjaXNpb24gaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgZm9yIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucywgc3VjaCBhcyBpbiBDRlRSIGdlbmUgZWRpdGluZywgd2hlcmUgdW5pbnRlbmRlZCBlZGl0cyBjb3VsZCBoYXZlIGhhcm1mdWwgY29uc2VxdWVuY2VzLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+SW1wcm92aW5nIEVkaXRpbmcgRWZmaWNpZW5jeTogUEJTIGFuZCBSVFQgbGVuZ3RoIGFkanVzdG1lbnRzIHdpdGggU2lsZW50IEVkaXRzPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+VG8gbWF4aW1pemUgZWRpdGluZyBlZmZpY2llbmN5LCB2YXJpb3VzIGNvbWJpbmF0aW9ucyBvZiBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIGFuZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdGVtcGxhdGUgKFJUVCkgbGVuZ3RocyB3ZXJlIGV2YWx1YXRlZC4gVGhlIFJUVCwgd2hpY2ggcHJvdmlkZXMgdGhlIHRlbXBsYXRlIGZvciB0aGUgZGVzaXJlZCBnZW5ldGljIGNoYW5nZSwgd2FzIGNhcmVmdWxseSBvcHRpbWl6ZWQsIGluY2x1ZGluZyB0aGUgaW50cm9kdWN0aW9uIG9mIHNpbGVudCBlZGl0c1x1MjAxNGNoYW5nZXMgaW4gdGhlIFJUVCB0aGF0IGRvIG5vdCBhbHRlciB0aGUgcHJvdGVpbiBzZXF1ZW5jZSBidXQgY2FuIGltcHJvdmUgdGhlIGVkaXRpbmcgcHJvY2Vzcy4gQm90aCBzaG9ydGVuZWQgYW5kIGV4dGVuZGVkIHZlcnNpb25zIG9mIHRoZSBQQlMgYW5kIFJUVCB3ZXJlIHRlc3RlZCBpbiBjb21iaW5hdGlvbnMgd2l0aCBlYWNoIG90aGVyLCB3aXRoIGFuZCB3aXRob3V0IHRoZXNlIHNpbGVudCBlZGl0cywgdG8gaWRlbnRpZnkgdGhlIG9wdGltYWwgY29uZmlndXJhdGlvbiB0aGF0IHdvdWxkIHJlc3VsdCBpbiB0aGUgaGlnaGVzdCBlZGl0aW5nIGVmZmljaWVuY3kuIFRoaXMgc3RlcC1ieS1zdGVwIHNjcmVlbmluZyBwcm9jZXNzIGFsbG93ZWQgZm9yIHRoZSBzZWxlY3Rpb24gb2YgdGhlIG1vc3QgZWZmaWNpZW50IHBlZ1JOQSBmb3IgdGFyZ2V0aW5nIHRoZSBDRlRSIGdlbmUsIGVuc3VyaW5nIHRoYXQgdGhlIHN5c3RlbSBjb3VsZCBhY2hpZXZlIGhpZ2ggbGV2ZWxzIG9mIHN1Y2Nlc3NmdWwgZWRpdHMgd2l0aCBtaW5pbWFsIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLjwvcD5cbiAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgIDxwPkZvciB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCB3ZSBzZWxlY3RlZCB0aGUgUDZDIHZhcmlhbnQsIHdoaWNoIGhhcyBzaG93biB0byBwcm92aWRlIHRoZSBiZXN0IGVkaXRpbmcgZWZmaWNpZW5jeSBhbmQgYSBtb3JlIGNvbXBhY3Qgc3RydWN0dXJlIGNvbXBhcmVkIHRvIGFsdGVybmF0aXZlcy4gSXRzIGFkdmFuY2VkIGRldmVsb3BtZW50IHN0YWdlIGFuZCBhYmlsaXR5IHRvIG9mZmVyIGhpZ2ggcHJlY2lzaW9uIGFuZCBlZGl0aW5nIHBlcmZvcm1hbmNlIG1hZGUgaXQgdGhlIGlkZWFsIGNob2ljZSBmb3IgUHJpbWUgR3VpZGUuIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5Ub2dldGhlciwgdGhlc2UgY29tcG9uZW50cyBmb3JtIGEgaGlnaGx5IG9wdGltaXplZCBQcmltZSBFZGl0aW5nIHN5c3RlbSB0aGF0IGJhbGFuY2VzIHNpemUsIHN0YWJpbGl0eSwgYW5kIGVmZmljaWVuY3kuIE91ciBhaW0gd2l0aCBQcmltZSBHdWlkZSBpcyB0byBjcmVhdGUgYSByb2J1c3QgYW5kIHByZWNpc2Ugc29sdXRpb24gZm9yIGNvcnJlY3RpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gY3lzdGljIGZpYnJvc2lzLCBidWlsZGluZyBvbiB0aGUgZ3VpZGFuY2UgZnJvbSBvdXIgZXhwZXJ0IGNvbGxhYm9yYXRvcnMgYW5kIGV4dGVuc2l2ZSB0ZXN0aW5nIG9mIGVhY2ggaW5kaXZpZHVhbCBjb21wb25lbnQuPC9wPlxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiT3VyIFByZUN5c2UgY2Fzc2V0dGVcIiBpZD1cIlByZUN5c2UtY2Fzc2V0dGVcIi8+IFxuICAgICAgICAgICAgICAgIDxwPldlIGhhdmUgZGV2ZWxvcGVkIG91ciBQcmltZUd1aWRlLCBhbiBvcHRpbWl6ZWQgdmVyc2lvbiBvZiB0aGUgUHJpbWUgRWRpdGluZyBzeXN0ZW0sIGRlc2lnbmVkIHRvIGVuaGFuY2UgZWRpdGluZyBlZmZpY2llbmN5LCBwcmVjaXNpb24sIGFuZCB2ZXJzYXRpbGl0eS4gQXMgcGFydCBvZiBvdXIgY29udGludWVkIGVmZm9ydHMgdG8gaW1wcm92ZSBhbmQgc3RyZWFtbGluZSB0aGUgUHJpbWUgRWRpdGluZyB3b3JrZmxvdywgd2UgaW50cm9kdWNlIHRvIHlvdSB0aGUgUHJlQ3lzZS1DYXNzZXR0ZVx1MjAxNGEgdW5pdmVyc2FsIHBsYXNtaWQgYmFja2JvbmUgc3BlY2lmaWNhbGx5IHRhaWxvcmVkIGZvciBhbnkgUHJpbWUgRWRpdGluZyBzeXN0ZW0uPC9wPlxuICAgICAgICAgICAgICAgIDxwPlRoZSBQcmVDeXNlLUNhc3NldHRlIGlzIGVuZ2luZWVyZWQgdG8gcHJvdmlkZSBtYXhpbXVtIGZsZXhpYmlsaXR5IGZvciB0aGUgY29uc3RydWN0aW9uIG9mIHRoZSBQcmltZSBFZGl0aW5nIHN5c3RlbXMuIEl0IGluY2x1ZGVzIEJzYUkgdW5kIFNhcEkgY2xvbmluZyBzaXRlcywgYWxsb3dpbmcgZWFzeSBpbnNlcnRpb24gYW5kIGV4Y2hhbmdlIG9mIGVzc2VudGlhbCBjb21wb25lbnRzIGxpa2UgYSBuaWNrYXNlIGFuZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UsIGZ1bmRhbWVudGFsIGZvciBQcmltZSBFZGl0aW5nLiBBZGRpdGlvbmFsbHksIGl0IGluY29ycG9yYXRlcyBhIGNsb25pbmcgc2l0ZSBmb3IgdGhlIGd1aWRlIFJOQSwgZW5zdXJpbmcgc2VhbWxlc3MgaW50ZWdyYXRpb24gYW5kIGFkYXB0YXRpb24gdG8gdmFyaW91cyB0YXJnZXQgc2VxdWVuY2VzLjwvcD5cbiAgICAgICAgICAgICAgICA8cD5Nb3Jlb3ZlciwgdGhlIFByZUN5c2UtQ2Fzc2V0dGUgY29udGFpbnMgc2V2ZXJhbCBhZHZhbmNlZCBmZWF0dXJlcyBkZXNpZ25lZCB0byBlbmhhbmNlIHN5c3RlbSBwZXJmb3JtYW5jZS4gVGhlIGFyY2hpdGVjdHVyZSBvZiB0aGlzIGNhc3NldHRlIGlzIGJhc2VkIG9uIGEgY29tYmluYXRpb24gb2YgdGhlIFBFNCBhbmQgUEU3IHN5c3RlbXMsIHByb3ZpZGluZyB0aGUgcHJlc2VuY2Ugb2YgdGhlIExBIG1vdGlmIGFuZCBNTEgxZG4uIFRodXMgYWxsb3dpbmcgYW4gaW5jcmVhc2VkIGZ1bmN0aW9uYWxpdHkgYW5kIGVkaXRpbmcgZWZmaWNpZW5jeSwgd2hpbGUgdGhlIENNViBhbmQgVDcgcHJvbW90ZXJzIGVuc3VyZSBoaWdoIGV4cHJlc3Npb24gbGV2ZWxzIGFjcm9zcyBkaWZmZXJlbnQgc3lzdGVtcy4gVGhlc2UgZmVhdHVyZXMgbWFrZSB0aGUgY2Fzc2V0dGUgdW5pdmVyc2FsbHkgYXBwbGljYWJsZSB0byBhIHdpZGUgcmFuZ2Ugb2YgUHJpbWUgRWRpdGluZyBjb250ZXh0cywgZW5hYmxpbmcgdXNlcnMgdG8gZWZmb3J0bGVzc2x5IGNsb25lIHRoZWlyIGRlc2lyZWQgY29tcG9uZW50c1x1MjAxNG5pY2thc2UsIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgYW5kIGd1aWRlIFJOQVx1MjAxNHdpdGhvdXQgdGhlIG5lZWQgZm9yIGNvbXBsZXggbW9kaWZpY2F0aW9ucy48L3A+XG4gICAgICAgICAgICAgICAgPHA+V2l0aCB0aGlzIFByZUN5c2UtQ2Fzc2V0dGUsIHJlc2VhcmNoZXJzIGNhbiBlYXNpbHkgc2V0IHVwIGFuZCB0ZXN0IHRoZWlyIFByaW1lIEVkaXRpbmcgc3lzdGVtcywgYnlwYXNzaW5nIG11Y2ggb2YgdGhlIGxhYm9yaW91cyBjbG9uaW5nIHdvcmsgdHJhZGl0aW9uYWxseSBhc3NvY2lhdGVkIHdpdGggdGhlc2Ugc2V0dXBzLiBUaGUgY2Fzc2V0dGUgcHJvdmlkZXMgYW4gZWZmaWNpZW50IGFuZCB2ZXJzYXRpbGUgcGxhdGZvcm0gZm9yIGV4cGVyaW1lbnRpbmcgd2l0aCBhbmQgcmVmaW5pbmcgUHJpbWUgRWRpdGluZyBhcHBsaWNhdGlvbnMsIGZvcm1pbmcgdGhlIGlkZWFsIGJhY2tib25lIGZvciBQcmltZUd1aWRlIGFuZCBiZXlvbmQuPC9wPlxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZmFuem9yL2thc3NldHRlbWVjaC53ZWJwXCIvPiBcbiAgICAgICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJEZWxpdmVyeVwiIGlkPVwiQXBwcm9hY2gyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvc29ydC1sbnAtb2huZS1iZXNjaHJpZnR1bmcud2VicFwiLz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldlIG9wdGltaXplZCBMTlBzIGFzIGEgcm9idXN0IGRlbGl2ZXJ5IHN5c3RlbSB0byB0cmFuc3BvcnQgbGFyZ2VyIHRoZXJhcGV1dGljIGNhcmdvLCBzdWNoIGFzIFByaW1lIEVkaXRpbmcgbVJOQSwgdG8gbHVuZyBlcGl0aGVsaWFsIGNlbGxzIHZpYSBpbmhhbGF0aW9uLiBMTlBzIHdlcmUgY2hvc2VuIG92ZXIgb3RoZXIgZGVsaXZlcnkgc3lzdGVtcywgbGlrZSBBZGVuby1hc3NvY2lhdGVkIHZpcnVzZXMgKEFBVnMpLCBkdWUgdG8gdGhlaXIgc3VwZXJpb3IgY2FyZ28gY2FwYWNpdHkgYW5kIHJlZHVjZWQgaW1tdW5vZ2VuaWNpdHkuIE91ciBnb2FsIHdhcyB0byBjcmVhdGUgYSBzcHJheS1kcmllZCBsdW5nLXNwZWNpZmljIExOUCBuYW1lZDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYWlyYnVkZHkud2VicFwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHRcIn19Lz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+Y2FwYWJsZSBvZiBlZmZpY2llbnRseSBkZWxpdmVyaW5nIG9mIG91ciBQcmltZSBFZGl0aW5nIGNvbXBvbmVudHMsIHJlZmVycmVkIHRvIGFzIFByaW1lR3VpZGUsIHRvIGx1bmcgdGlzc3VlcyB0aHJvdWdoIGluaGFsYXRpb24uIFRoaXMgYXBwcm9hY2ggaXMgZGVzaWduZWQgdG8gYWR2YW5jZSBwcmVjaXNpb24gbWVkaWNpbmUgYnkgZW5zdXJpbmcgdGFyZ2V0ZWQgZGVsaXZlcnkgd2l0aCBtaW5pbWFsIG9mZi10YXJnZXQgZWZmZWN0cy48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNvbDFcIiBvcGVuPXtmYWxzZX0gdGl0bGU9XCJMTlBzIGV4cGxhaW5lZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTE5QcyBhbmQgdGhlaXIgaW1wYWN0IG9uIG1vZGVybiBtZWRpY2luZVwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxOUHMgYXJlIGFuIGFkdmFuY2VkIGRlbGl2ZXJ5IHN5c3RlbSBkZXNpZ25lZCB0byB0cmFuc3BvcnQgdGhlcmFwZXV0aWMgbW9sZWN1bGVzIGxpa2UgUk5BLCBETkEgb3IgcHJvdGVpbnMgaW50byB0aGUgY2VsbHMuIFRoZXNlIG5hbm9wYXJ0aWNsZXMgYXJlIHRpbnkgc3BoZXJlcyBtYWRlIG9mIGxpcGlkcyB0aGF0IGZvcm0gYSBwcm90ZWN0aXZlIHNoZWxsIGFyb3VuZCB0aGUgY2FyZ28uIFRoZSBzaXplIG9mIExOcyB0eXBpY2FsbHkgcmFuZ2VzIGZyb20gNTAgdG8gMjAwIG5tIGluIGRpYW1ldGVyLCBtYWtpbmcgdGhlbSBpbmNyZWRpYmx5IHNtYWxsIC0gYWJvdXQgMSwwMDAgdGltZXMgdGhpbm5lciB0aGFuIGEgaHVtYW4gaGFpciA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjFcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk92ZXJhbGwsIExOUHMgcmVwcmVzZW50IGEgc2lnbmlmaWNhbnQgYWR2YW5jZW1lbnQgaW4gZHJ1ZyBkZWxpdmVyeSB0ZWNobm9sb2d5LiBMTlBzIG9mZmVyIGV4Y2VwdGlvbmFsbHkgaGlnaCBkcnVnLWxvYWRpbmcgY2FwYWNpdGllcywgbWFraW5nIHRoZW0gaGlnaGx5IGVmZmVjdGl2ZSBmb3IgZGVsaXZlcmluZyBzdWJzdGFudGlhbCBhbW91bnRzIG9mIHRoZXJhcGV1dGljIGFnZW50cyBpbiBhIHNpbmdsZSBkb3NlLiBUaGVpciBhZHZhbmNlZCBkZXNpZ24gYWxsb3dzIGZvciB0aGUgZW5jYXBzdWxhdGlvbiBvZiBhIGxhcmdlIHBheWxvYWQsIHdoaWNoIGVuaGFuY2VzIHRoZSBlZmZpY2FjeSBvZiB0cmVhdG1lbnRzIGFuZCByZWR1Y2VzIHRoZSBmcmVxdWVuY3kgb2YgYWRtaW5pc3RyYXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPiAuIEJ5IGVuY2Fwc3VsYXRpbmcgYW5kIHByb3RlY3RpbmcgdGhlcmFwZXV0aWMgYWdlbnRzIGxpa2UgbVJOQSwgTE5QcyBlbmhhbmNlIHRoZSBzdGFiaWxpdHksIHRhcmdldGVkIGRlbGl2ZXJ5LCBhbmQgZWZmZWN0aXZlbmVzcyBvZiB0cmVhdG1lbnRzLiBUaGVpciBhYmlsaXR5IHRvIGJlIHRhaWxvcmVkIGZvciBzcGVjaWZpYyBkZWxpdmVyeSBuZWVkcywgc3VjaCBhcyB0YXJnZXRpbmcgcGFydGljdWxhciBvcmdhbnMgb3Igb3ZlcmNvbWluZyBwaHlzaW9sb2dpY2FsIGJhcnJpZXJzLCBtYWtlcyB0aGVtIGEgcG93ZXJmdWwgdG9vbCBpbiBtb2Rlcm4gbWVkaWNpbmUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5XCIvPiAuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJQcm90ZWN0aW9uIG9mIGNhcmdvXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8cD4gVGhlIHByaW1hcnkgZnVuY3Rpb24gb2YgTE5QcyBpcyB0byBzaGllbGQgdGhlIHRoZXJhcGV1dGljIGFnZW50cyB0aGV5IGNhcnJ5LCBzdWNoIGFzIG1STkEsIGZyb20gZGVncmFkYXRpb24gYW5kIGZhY2lsaXRhdGUgdGhlaXIgZGVsaXZlcnkgaW50byBjZWxscy4gbVJOQSBpcyBhIGNyaXRpY2FsIGNvbXBvbmVudCBpbiBtYW55IG1vZGVybiB2YWNjaW5lcyBhbmQgdGhlcmFwaWVzLCBidXQgaXQgaXMgaGlnaGx5IHN1c2NlcHRpYmxlIHRvIGJyZWFraW5nIGRvd24gYmVmb3JlIGl0IGNhbiByZWFjaCBpdHMgdGFyZ2V0IHdpdGhpbiBjZWxscy4gTE5QcyBhZGRyZXNzIHRoaXMgY2hhbGxlbmdlIGJ5IGVuY2Fwc3VsYXRpbmcgdGhlIG1STkEsIHRodXMgcHJvdGVjdGluZyBpdCBmcm9tIGhhcm1mdWwgZW56eW1lcywgbGlrZSBSTmFzZXMgYW5kIGVudmlyb25tZW50YWwgY29uZGl0aW9ucyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjJcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZWxpdmVyeSBhc3N1cmFuY2VcIiBpZD1cInRleHRcIiAvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5MTlBzIGNvbWUgaW4gdmFyaW91cyB0eXBlcyB0YWlsb3JlZCBmb3IgZGlmZmVyZW50IHRoZXJhcGV1dGljIG5lZWRzLiBTb2xpZCBMaXBpZCBOYW5vcGFydGljbGVzIChTTE5zKSBhbmQgTmFub3N0cnVjdHVyZWQgTGlwaWQgQ2FycmllcnMgKE5MQ3MpIGVuaGFuY2UgZHJ1ZyBzdGFiaWxpdHkgYW5kIHNvbHViaWxpdHksIHdoaWxlIExpcG9zb21lcywgd2l0aCB0aGVpciBiaWxheWVyIHN0cnVjdHVyZSwgYXJlIHZlcnNhdGlsZSBmb3IgZW5jYXBzdWxhdGluZyBib3RoIGh5ZHJvcGhpbGljIGFuZCBoeWRyb3Bob2JpYyBkcnVncy4gQ2F0aW9uaWMgTE5QcyBhcmUgaWRlYWwgZm9yIGdlbmUgZGVsaXZlcnkgZHVlIHRvIHRoZWlyIHBvc2l0aXZlIGNoYXJnZSwgd2hlcmVhcyBhbmlvbmljIGFuZCBuZXV0cmFsIExOUHMgb2ZmZXIgcmVkdWNlZCBpbnRlcmFjdGlvbiBhbmQgbG93ZXIgdG94aWNpdHksIHJlc3BlY3RpdmVseSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRvIGVuaGFuY2UgdGhlaXIgZWZmZWN0aXZlbmVzcywgTE5QcyBhcmUgZGVzaWduZWQgd2l0aCBzcGVjaWZpYyBjb21wb25lbnRzLiBGb3IgaW5zdGFuY2UsIHRoZSBOZWJ1bGl6ZWQgTHVuZyBEZWxpdmVyeSAxIChOTEQxKSBuYW5vcGFydGljbGUsIGEgcGFydGljdWxhciB0eXBlIG9mIExOUCwgaW5jbHVkZXMgYSBjb21iaW5hdGlvbiBvZiBsaXBpZHMgYW5kIHBvbHltZXJzIHRoYXQgc3RhYmlsaXplIHRoZSBtUk5BIGFuZCBhbGxvdyBpdCB0byBiZSBkZWxpdmVyZWQgZWZmaWNpZW50bHkuIFRoaXMgZm9ybXVsYXRpb24gaW5jbHVkZXMgc21hbGwgbGlwaWQgcGFydGljbGVzIHRoYXQgZW5jYXBzdWxhdGUgdGhlIG1STkEgYW5kIGNhbiBtYWludGFpbiBzdGFiaWxpdHkgZm9yIHNldmVyYWwgZGF5cyB1bmRlciBwcm9wZXIgc3RvcmFnZSBjb25kaXRpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlNpemUgaW1wYWN0IG9mIHB1bG1vbmFyeSBMTlBzXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGUgY29udGV4dCBvZiBwdWxtb25hcnkgZGVsaXZlcnksIHdoZXJlIHRoZSBnb2FsIGlzIHRvIHRhcmdldCB0aGUgbHVuZ3MsIHRoZSBzaXplIGFuZCBwcm9wZXJ0aWVzIG9mIHRoZSBMTlBzIGFyZSBjcnVjaWFsLiBQYXJ0aWNsZXMgc21hbGxlciB0aGFuIDIgbWljcm9tZXRlcnMgYXJlIHBhcnRpY3VsYXJseSBlZmZlY3RpdmUgZm9yIHJlYWNoaW5nIHRoZSBhbHZlb2xhciByZWdpb25zIG9mIHRoZSBsdW5ncyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjExXCIvPiAuIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiUm9sZSBvZiBzdXJmYWNlIG1vZGlmaWNhdGlvbnMgaW4gdGFyZ2V0aW5nXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL2Fycy5lbHMtY2RuLmNvbS9jb250ZW50L2ltYWdlLzEtczIuMC1TMTc3MzIyNDcyNDAwMjE1Ni1ncjNfbHJnLmpwZ1wiIGFsdD1cIkF1Zm5haG1lIExOUFwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjIwMHB0XCJ9fS8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZS4gPC9iPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5kb3NvbWFsIGVzY2FwZSB2cyBkZWdyYWRhdGlvbiBvZiBMTlAgY2FyZ28gYXQgZW5kb2N5dG9zaXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI0XCIvPiAuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxOUHMgYXJlIHBpdm90YWwgbm90IG9ubHkgZm9yIHNoaWVsZGluZyBtUk5BIGJ1dCBhbHNvIGZvciBlbnN1cmluZyBpdHMgZWZmaWNpZW50IGRlbGl2ZXJ5IGludG8gdGFyZ2V0IGNlbGxzLiBUaGV5IGZhY2lsaXRhdGUgY2VsbHVsYXIgdXB0YWtlIHRocm91Z2ggZW5kb2N5dG9zaXMsIHdoZXJlIHRoZSBjZWxsIG1lbWJyYW5lIGVuZ3VsZnMgdGhlIG5hbm9wYXJ0aWNsZS4gTE5QcyBhcmUgYWNjbGFpbWVkIGZvciB0aGVpciBoaWdoIGRydWctbG9hZGluZyBjYXBhY2l0aWVzLCB3aGljaCBncmVhdGx5IGVuaGFuY2UgdGhlaXIgdGhlcmFwZXV0aWMgZWZmZWN0aXZlbmVzcy4gSG93ZXZlciwgdGhlIHN1Y2Nlc3Mgb2YgdGhpcyBkZWxpdmVyeSBoaW5nZXMgb24gZWZmZWN0aXZlIGVuZG9zb21hbCBlc2NhcGUuIElkZWFsbHksIExOUHMgcmVsZWFzZSB0aGVpciBtUk5BIHBheWxvYWQgaW50byB0aGUgY3l0b3BsYXNtIGFmdGVyIGVzY2FwaW5nIGZyb20gZW5kb3NvbWVzLiBJZiB0aGlzIGVzY2FwZSBwcm9jZXNzIGlzIGluZWZmaWNpZW50LCB0aGUgbVJOQSBjYW4gYmUgZGVncmFkZWQgYnkgbHlzb3NvbWVzLCB3aGljaCBwb3NlcyBhIHNpZ25pZmljYW50IGNoYWxsZW5nZSBmb3IgbVJOQSB2YWNjaW5lcyBhbmQgdGhlcmFwaWVzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNFwiLz4gLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QSBjcnVjaWFsIGFkdmFuY2VtZW50IGluIExOUCB0ZWNobm9sb2d5IGludm9sdmVzIHRoZSB1c2Ugb2YgcEgtc2Vuc2l0aXZlIGNhdGlvbml6YWJsZSBsaXBpZHMuIFRoZXNlIGxpcGlkcyByZW1haW4gbmV1dHJhbCBhdCBwaHlzaW9sb2dpY2FsIHBIIGJ1dCBiZWNvbWUgY2F0aW9uaWMgaW4gdGhlIGFjaWRpYyBlbnZpcm9ubWVudCBvZiBlbmRvc29tZXMuIFRoaXMgc2hpZnQgaW4gY2hhcmdlIGhlbHBzIGRpc3NvY2lhdGUgdGhlIG5hbm9wYXJ0aWNsZXMgYW5kIGRpc3J1cHQgdGhlIGVuZG9zb21hbCBtZW1icmFuZSwgZW5oYW5jaW5nIHRoZSBsaWtlbGlob29kIG9mIHN1Y2Nlc3NmdWwgZW5kb3NvbWFsIGVzY2FwZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjVcIi8+IC4gPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk1vcmVvdmVyLCB0aGUgc3VyZmFjZSBvZiBMTlBzIGNhbiBiZSBjdXN0b21pemVkIHRvIGltcHJvdmUgdGFyZ2V0aW5nLiBGb3IgaW5zdGFuY2UsIGluY29ycG9yYXRpbmcgc3BlY2lmaWMgbGlwaWRzIG9yIG1vZGlmeWluZyB0aGUgc3VyZmFjZSB3aXRoIGNoYXJnZWQgZ3JvdXBzIGNhbiBkaXJlY3QgdGhlIGRlbGl2ZXJ5IG9mIG1STkEgdG8gdGFyZ2V0ZWQgb3JnYW5zIGxpa2UgdGhlIGx1bmdzIG9yIHNwbGVlbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjZcIi8+IC4gQWRkaXRpb25hbGx5LCBMTlBzIGNhbiBiZSBlbmdpbmVlcmVkIHdpdGggdGFyZ2V0aW5nIGxpZ2FuZHMgb3IgYW50aWJvZGllcyB0byBwcmVjaXNlbHkgZGlyZWN0IHRoZWlyIHBheWxvYWQgdG8gc3BlY2lmaWMgY2VsbCB0eXBlcywgZnVydGhlciBlbmhhbmNpbmcgdGhlaXIgdGhlcmFwZXV0aWMgZWZmaWNhY3kgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3XCIvPiAuIEFub3RoZXIgYXBwcm9hY2ggY2FuIGJlIGNoaXRvc2FuLWJhc2VkIG5hbm9wYXJ0aWNsZXMgaGF2ZSBiZWVuIGV4cGxvcmVkIGZvciB0aGVpciBhYmlsaXR5IHRvIGFkaGVyZSB0byBtdWN1cyBhbmQgZW5oYW5jZSBkcnVnIGRlbGl2ZXJ5IHRocm91Z2ggdGhlIHJlc3BpcmF0b3J5IHRyYWN0LiBUaGVzZSBuYW5vcGFydGljbGVzIGNhbiBwZW5ldHJhdGUgdGhyb3VnaCB0aGUgbXVjdXMgbGF5ZXIgdG8gcmVhY2ggdGhlIGx1bmcgdGlzc3VlcyBtb3JlIGVmZmVjdGl2ZWx5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOFwiLz4gLiBUaGlzIHZlcnNhdGlsaXR5IGluIGRlc2lnbiBpcyBlc3NlbnRpYWwgZm9yIG9wdGltaXppbmcgdGhlIGRlbGl2ZXJ5IGFuZCBlZmZlY3RpdmVuZXNzIG9mIExOUC1iYXNlZCB0aGVyYXBpZXMuPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDb2wyXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ2hhbGxlbmdlcyBvZiB3b3JraW5nIHdpdGggTE5Qc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk1haW50YWluaW5nIHRoZSBzdGFiaWxpdHkgb2YgTE5QcyB0aHJvdWdob3V0IGZvcm11bGF0aW9uLCBzdG9yYWdlLCBhbmQgZGVsaXZlcnkgaXMgY3JpdGljYWwsIGFzIGZhY3RvcnMgbGlrZSB0ZW1wZXJhdHVyZSBjaGFuZ2VzLCBwSCBzaGlmdHMsIG9yIG1lY2hhbmljYWwgc3RyZXNzIGNhbiBhZmZlY3QgdGhlaXIgaW50ZWdyaXR5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4gIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gLiBFcXVhbGx5IGltcG9ydGFudCBpcyBlbnN1cmluZyBlZmZpY2llbnQgZW5jYXBzdWxhdGlvbiBvZiB0aGUgZ2VuZXRpYyBtYXRlcmlhbCwgYXMgYW55IGluZWZmaWNpZW5jeSBjYW4gbGVhZCB0byBkZWdyYWRhdGlvbiBvZiB0aGUgdGhlcmFwZXV0aWMgY2FyZ28gb3IgaW5hZGVxdWF0ZSBkZWxpdmVyeSB0byB0aGUgdGFyZ2V0IGNlbGxzLiBPbmNlIGluc2lkZSB0aGUgYm9keSwgTE5QcyBmYWNlIHRoZSBjaGFsbGVuZ2Ugb2YgY2VsbHVsYXIgdXB0YWtlIGFuZCBzdWNjZXNzZnVsIGVuZG9zb21hbCBlc2NhcGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPiAgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI0XCIvPiAuIElmIHRoZXkgY2Fubm90IGVzY2FwZSB0aGUgZW5kb3NvbWUgYWZ0ZXIgZW50ZXJpbmcgdGhlIGNlbGxzLCB0aGVyZSBpcyBhIHJpc2sgdGhhdCB0aGUgZ2VuZXRpYyBtYXRlcmlhbCB3aWxsIGJlIGRlZ3JhZGVkIGluIHRoZSBseXNvc29tZXMsIGxpbWl0aW5nIHRoZSBlZmZpY2FjeSBvZiB0aGUgdHJlYXRtZW50LiBJbiBhZGRpdGlvbiwgdGhlIGZvcm11bGF0aW9uIG11c3QgbWluaW1pemUgaW1tdW5vZ2VuaWNpdHkgYW5kIHRveGljaXR5LCBwYXJ0aWN1bGFybHkgd2l0aCByZXBlYXRlZCBkb3NpbmcsIHdoaWNoIGlzIG9mdGVuIG5lY2Vzc2FyeSBmb3IgY2hyb25pYyBkaXNlYXNlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjJcIi8+ICA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+IC4gQWNoaWV2aW5nIHRoaXMgc2Vuc2l0aXZlIGJhbGFuY2UgaXMgY3J1Y2lhbCBmb3IgbWF4aW1pemluZyB0aGUgdGhlcmFwZXV0aWMgcG90ZW50aWFsIG9mIExOUHMgaW4gZ2VuZSBkZWxpdmVyeS48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2hpbGUgdGhlc2UgYXJlIGdlbmVyYWwgZGlmZmljdWx0aWVzIGluIHRoZSB1c2Ugb2YgTE5QcyBmb3IgZ2VuZSB0aGVyYXB5LCBmdXJ0aGVyIGNoYWxsZW5nZXMgYXJpc2Ugd2hlbiBhZG1pbmlzdGVyaW5nIHRoZSBMTlBzIHZpYSBpbmhhbGF0aW9uIGludG8gdGhlIGx1bmdzLCBkdWUgdG8gdGhlIHVuaXF1ZSBlbnZpcm9ubWVudCBhbmQgYW5hdG9teSBvZiB0aGUgcmVzcGlyYXRvcnkgc3lzdGVtLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJDaGFsbGVuZ2VzIG9mIGluaGFsYXRlZCBsdW5nLXNwZWNpZmljIExOUHNcIiBpZD1cImNoYWxsMlwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZXNlIGNoYWxsZW5nZXMgcmFuZ2UgZnJvbSBmb3JtdWxhdGlvbiBhbmQgcGFydGljbGUgc2l6ZSB0byBvdmVyY29taW5nIGJpb2xvZ2ljYWwgYmFycmllcnMgYW5kIG1haW50YWluaW5nIGNvbnNpc3RlbnQgZG9zaW5nLCBhbGwgb2Ygd2hpY2ggaW1wYWN0IHRoZSBvdmVyYWxsIGVmZmljYWN5IG9mIHRoZSB0aGVyYXB5LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2hlbiB0cmFuc2Zvcm1pbmcgTE5QIGZvcm11bGF0aW9ucyBpbnRvIGluaGFsYWJsZSBwYXJ0aWNsZXMsIGV2ZW4gZ3JlYXRlciBhdHRlbnRpb24gbXVzdCBiZSBwYWlkIHRvIHN0YWJpbGl0eSB0aGFuIGlzIGFscmVhZHkgdGhlIGNhc2UuIER1cmluZyBwcm9jZXNzZXMgbGlrZSBuZWJ1bGl6YXRpb24gb3Igc3ByYXktZHJ5aW5nLCBMTlBzIGFyZSBleHBvc2VkIHRvIHN0cm9uZyA8c3Ryb25nPm1lY2hhbmljYWwgc3RyZXNzPC9zdHJvbmc+IHN1Y2ggYXMgc2hlYXIgZm9yY2VzIGR1cmluZyBhZXJvc29saXphdGlvbiB0aGF0IGNhbiBkYW1hZ2UgdGhlIExOUCBhbmQgdGh1cyB0aGVpciBhYmlsaXR5IHRvIHByb3RlY3QgYW5kIGRlbGl2ZXIgZ2VuZXRpYyBtYXRlcmlhbCBlZmZlY3RpdmVseSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjVcIi8+IC4gRW5zdXJpbmcgdGhhdCB0aGUgTE5QcyBtYWludGFpbiB0aGVpciBzdHJ1Y3R1cmUgdGhyb3VnaG91dCB0aGlzIHRyYW5zZm9ybWF0aW9uIHdoaWxlIHJlbWFpbmluZyBzdWl0YWJsZSBmb3IgYWVyb3NvbCBkZWxpdmVyeSBpcyBjcml0aWNhbCB0byB0aGUgc3VjY2VzcyBvZiB0aGUgdGhlcmFweS48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIDxzdHJvbmc+c2l6ZTwvc3Ryb25nPiBvZiB0aGUgbmFub3BhcnRpY2xlcyBpcyBhbm90aGVyIGltcG9ydGFudCBmYWN0b3IuIEZvciBzdWNjZXNzZnVsIGx1bmcgZGVsaXZlcnksIExOUHMgc2hvdWxkIGJlIHNtYWxsZXIgdGhhbiAyIFx1MDBCNW0gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2XCIvPiAuIElmIHRoZSBwYXJ0aWNsZXMgYXJlIHRvbyBsYXJnZSwgdGhlcmUgaXMgYSByaXNrIHRoYXQgdGhleSB3aWxsIGdldCBzdHVjayBpbiB0aGUgdXBwZXIgYWlyd2F5cyBub3QgYWJsZSB0byByZWFjaCB0aGUgdGFyZ2V0IGNlbGxzOyBpZiB0aGV5IGFyZSB0b28gc21hbGwsIHRoZXkgbWF5IGJlIGV4aGFsZWQgYmVmb3JlIHJlYWNoaW5nIHRoZSBkZWVwZXIgbHVuZyB0aXNzdWUuIFRoZSByaWdodCBwYXJ0aWNsZSBzaXplIGlzIGNydWNpYWwgZm9yIHRoZSBMTlBzIHRvIHJlYWNoIHRoZSBhbHZlb2xpLCB3aGVyZSB0aGV5IGNhbiBwcm92aWRlIHRoZSBncmVhdGVzdCB0aGVyYXBldXRpYyBpbXBhY3QuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFub3RoZXIgbWFqb3IgY2hhbGxlbmdlIGlzIG92ZXJjb21pbmcgdGhlIGx1bmdzJyBuYXR1cmFsIDxzdHJvbmc+cHJvdGVjdGl2ZSBiYXJyaWVyczwvc3Ryb25nPi4gVGhlIGFpcndheXMgYXJlIGxpbmVkIHdpdGggbXVjdXMgYW5kIHN1cmZhY3RhbnRzLCB3aGljaCBoZWxwIHRvIGRlZmVuZCBhZ2FpbnN0IHBhdGhvZ2VucywgYnV0IGFsc28gbWFrZSBpdCBkaWZmaWN1bHQgZm9yIExOUHMgdG8gYmUgdHJhbnNwb3J0ZWQuIEluIGRpc2Vhc2VzIHN1Y2ggYXMgY3lzdGljIGZpYnJvc2lzLCB0aGUgdGhpY2tlbmVkIG11Y3VzIHByZXNlbnRzIGFuIGV2ZW4gZ3JlYXRlciBvYnN0YWNsZSwgbWFraW5nIGl0IG1vcmUgZGlmZmljdWx0IGZvciB0aGUgTE5QcyB0byByZWFjaCB0aGUgdGFyZ2V0IGNlbGxzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNVwiLz4gLiBUaGUgZGV2ZWxvcG1lbnQgb2YgTE5QcyB0aGF0IGNhbiBwZW5ldHJhdGUgdGhlc2UgYmFycmllcnMgaXMgZXNzZW50aWFsIGZvciB0aGUgc3VjY2VzcyBvZiBnZW5lIHRoZXJhcHkuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5GaW5hbGx5LCBpbmhhbGVkIGFkbWluaXN0cmF0aW9uIGxlYWRzIHRvIGZsdWN0dWF0aW9ucyBpbiB0aGUgY29uc2lzdGVuY3kgb2YgdGhlIDxzdHJvbmc+ZG9zYWdlPC9zdHJvbmc+LiBVbmxpa2UgaW50cmF2ZW5vdXMgYWRtaW5pc3RyYXRpb24sIHdoZXJlIGRvc2luZyBjYW4gYmUgc3RyaWN0bHkgY29udHJvbGxlZCwgdGhlIHJlc3VsdHMgb2YgaW5oYWxhdGlvbiBhcmUgaW5mbHVlbmNlZCBieSBmYWN0b3JzIHN1Y2ggYXMgdGhlIHBhdGllbnQncyBicmVhdGhpbmcgcGF0dGVybiwgbHVuZyBjYXBhY2l0eSBhbmQgaW5oYWxhdGlvbiB0ZWNobmlxdWUuIFRoZXNlIHZhcmlhYmxlcyBjYW4gYWZmZWN0IGhvdyBtdWNoIG9mIHRoZSBMTlAgZm9ybXVsYXRpb24gYWN0dWFsbHkgcmVhY2hlcyB0aGUgbHVuZ3MsIGNvbXBsaWNhdGluZyBlZmZvcnRzIHRvIG1haW50YWluIGEgY29uc2lzdGVudCB0aGVyYXBldXRpYyBkb3NlIG92ZXIgdGltZSwgd2hpY2ggaXMgYSByZWFzb25hYmxlIHByaWNlIHRvIHBheSB3aGVuIHlvdSBjb25zaWRlciB0aGF0IGluaGFsYXRpb24gaXMgYSBub24taW52YXNpdmUgZm9ybSBvZiB0aGVyYXB5IGNvbXBhcmVkIHRvIHN5c3RlbWljIHRoZXJhcHkgdmlhIGluamVjdGlvbnMgaW50byB0aGUgYmxvb2RzdHJlYW08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QWxsIHRoZXNlIGNoYWxsZW5nZXMgY29tcGxpY2F0ZSB0aGUgd29yayB3aXRoIExOUHMgYW5kIHByZXNlbnQgc2NpZW50aXN0cyB3aXRoIGEgZ3JlYXQgY2hhbGxlbmdlLCB3aGljaCBtYWtlcyB3b3JraW5nIHdpdGggTE5QcyBldmVuIG1vcmUgaW1wb3J0YW50IHRvIGZpbmQgc29sdXRpb25zLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cImFpcmJ1ZGR5LWhvb2tcIiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VG8gb3B0aW1pemUgQWlyQnVkZHkgZm9yIHB1bG1vbmFyeSBkZWxpdmVyeSwgd2UgY29sbGFib3JhdGVkIGV4dGVuc2l2ZWx5IHdpdGggc2V2ZXJhbCBleHBlcnRzLCBpbmNsdWRpbmcgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignd2ViZXInLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBXZWJlciwgRHIuIEdyb1x1MDBERmUtT25uZWJyaW5rPC9hPiBhbmQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigna29sb25rb2ZpcnN0JywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIEtvbG9ua288L2E+IGFzIG1lZGljYWwgZXhwZXJ0cywgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigna3Jpc3RpYW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBEci4gTVx1MDBGQ2xsZXI8L2E+LCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdyYWR1a2ljJywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIFJhZHVraWM8L2E+LCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtb29ybGFjaCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkJlbmphbWluIE1vb3JsYWNoPC9hPiBhbmQgdGhlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2Jpb3BoeXNpaycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlBoeXNpY2FsIGFuZCBCaW9waHlzaWNhbCBDaGVtaXN0cnkgd29ya2luZyBncm91cDwvYT4gYXMgYWNhZGVtaWMgZXhwZXJ0cyBmb3JtIEJpZWxlZmVsZCBVbml2ZXJzaXR5IGFuZCBGSCBCaWVsZWZlbGQgYXMgd2VsbCBhcyA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdjb3JkZW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Db3JkZW4gUGhhcm1hPC9hPiBhbmQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncm5oYWxlJywgJy9odW1hbi1wcmFjdGljZXMnKX0+Uk5oYWxlPC9hPiBhcyBpbmR1c3RyaWFsIGV4cGVydHMuIFRocm91Z2hvdXQgdGhlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2RlbGl2ZXJ5IGhlYWQnLCAnL2VuZ2luZWVyaW5nJyl9PmRldmVsb3BtZW50IHByb2Nlc3M8L2E+LCB3ZSB0ZXN0ZWQgdHdvIGNvbW1lcmNpYWxseSBhdmFpbGFibGUga2l0czogdGhlIDxzdHJvbmc+Q2F5bWFuIENoZW1pY2FsIExOUCBFeHBsb3JhdGlvbiBLaXQgKExOUC0xMDIpPC9zdHJvbmc+IGFuZCB0aGUgPHN0cm9uZz5Db3JkZW4gUGhhcm1hIExOUCBTdGFydGVyIEtpdCAjMjwvc3Ryb25nPi4gV2hpbGUgdGhlIENheW1hbiBraXQgZGVtb25zdHJhdGVkIGxpbWl0ZWQgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIHRoZSBDb3JkZW4gUGhhcm1hIGZvcm11bGF0aW9uIHNpZ25pZmljYW50bHkgZW5oYW5jZWQgY2VsbHVsYXIgdXB0YWtlIGluIGx1bmcgdGlzc3Vlcy4gQnVpbGRpbmcgb24gdGhpcywgd2UgaW50ZWdyYXRlZCB0aGUgPHN0cm9uZz5TT1JUIExOUDwvc3Ryb25nPiBtZXRob2QgYmFzZWQgb24gV2FuZydzIHJlc2VhcmNoIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4gLCBtYWtpbmcgb3VyIG5hbm9wYXJ0aWNsZXMgbHVuZy1zcGVjaWZpYy4gQWRkaXRpb25hbGx5LCB3ZSBlbXBsb3llZCB0aGUgPHN0cm9uZz5zcHJheS1kcnlpbmcgdGVjaG5pcXVlPC9zdHJvbmc+IGluIGNvb3BlcmF0aW9uIHdpdGggUk5oYWxlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gIHRvIGltcHJvdmUgdGhlIHN0YWJpbGl0eSBvZiBvdXIgTE5QLCBlbnN1cmluZyB0aGF0IGl0IHdpdGhzdGFuZHMgdGhlIGluaGFsYXRpb24gcHJvY2VzcyB3aXRob3V0IGRlZ3JhZGF0aW9uLiBUaGlzIHN0YWJpbGl0eSBpcyBjcnVjaWFsIGZvciB0aGUgZWZmaWNpZW50IGRlbGl2ZXJ5IG9mIG1STkEgaW50byBsdW5nIGVwaXRoZWxpYWwgY2VsbHMsIHdoZXJlIFByaW1lR3VpZGUgY2FuIGVmZmVjdGl2ZWx5IHBlcmZvcm0gZ2Vub21lIGVkaXRpbmcuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9iaWctcGxhbi1pbmhhbGF0aW9uLXRlaWwtZGVsLndlYnBcIi8+ICBcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgPHA+VG8gZXZhbHVhdGUgdGhlIDxzdHJvbmc+ZGVsaXZlcnkgZWZmaWNpZW5jeTwvc3Ryb25nPiwgd2UgdHJhbnNmZWN0ZWQgSEVLMjkyIGFuZCBDRkJFNDFvLSBjZWxscyB1c2luZyBmbHVvcmVzY2VudCBjYXJnbyBhbmQgcXVhbnRpZmllZCB0aGUgcmVzdWx0cyB0aHJvdWdoIEZBQ1MgYW5hbHlzaXMuIFdlIGFsc28gZW5zdXJlZCB0aGF0IEFpckJ1ZGR5IG1lZXRzIHRoZSBuZWNlc3Nhcnkgc3RhbmRhcmRzIGZvciBzYWZldHkgYW5kIGVmZmljYWN5IHNpbmNlIHdlIGNvbmR1Y3RlZCBleHRlbnNpdmUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdJbi1EZXB0aCBDaGFyYWN0ZXJpemF0aW9uIG9mIExOUHNIJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT4gY2hhcmFjdGVyaXphdGlvbiBvZiB0aGUgTE5QcyA8L2E+dXNpbmcgdGVjaG5pcXVlcyBzdWNoIGFzIFpldGEgcG90ZW50aWFsIGFuYWx5c2lzLCBEeW5hbWljIExpZ2h0IFNjYXR0ZXJpbmcgKERMUyksIFNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSksIGFuZCBDcnlvZ2VuaWMgRWxlY3Ryb24gTWljcm9zY29weSAoY3J5by1FTSkuIFRoZXNlIG1ldGhvZHMgY29uZmlybWVkIHRoZSB1bmlmb3JtaXR5LCBzdGFiaWxpdHksIGFuZCBvcHRpbWFsIHNpemUgZGlzdHJpYnV0aW9uIG9mIHRoZSBuYW5vcGFydGljbGVzLiBGdXJ0aGVybW9yZSwgPHN0cm9uZz5jeXRvdG94aWNpdHkgYXNzZXNzbWVudHM8L3N0cm9uZz4gaW5jbHVkaW5nIE1UVCBhbmQgcHJvbGlmZXJhdGlvbiBhc3NheXMgZGVtb25zdHJhdGVkIHRoYXQgb3VyIExOUHMgYXJlIGJpb2NvbXBhdGlibGUgYW5kIGRvIG5vdCBpbXBlZGUgY2VsbCBncm93dGggb3IgZnVuY3Rpb24gYnkgdGhlIGluY29ycG9yYXRpb24gb2YgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignaXQ0JywgJy9lbmdpbmVlcmluZycpfT5QRUc8L2E+IGFuZCBvdGhlciBhbWJpdmFsZW50IGNvbXBvbmVudHMuIFRoZXNlIGZpbmRpbmdzIHJlaW5mb3JjZSBBaXJCdWRkeSdzIHBvdGVudGlhbCBhcyBhIHNhZmUgYW5kIGVmZmVjdGl2ZSB0b29sIGZvciBwdWxtb25hcnkgZGVsaXZlcnksIHdpdGggYnJvYWQgaW1wbGljYXRpb25zIGZvciBnZW5lIHRoZXJhcGllcyB0YXJnZXRpbmcgbHVuZyBkaXNlYXNlcy48L3A+XG4gICAgICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgICAgPC9TZWN0aW9uPlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBBY2hpZXZlbWVudFwiIGlkPVwiT3VyIEFjaGlldmVtZW50XCI+XG4gICAgICAgICAgICAgICAgPHA+V2UgaGF2ZSBzdWNjZXNzZnVsbHkgZGVtb25zdHJhdGVkIGEgPGI+cHJvb2Ygb2YgY29uY2VwdDwvYj4gZm9yIG91ciBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggdGFyZ2V0aW5nIGN5c3RpYyBmaWJyb3Npcy4gSW4gaW5pdGlhbCBleHBlcmltZW50cywgSEVLIGNlbGxzIGNhcnJ5aW5nIGEgMy1iYXNlIGRlbGV0aW9uIGFuYWxvZ291cyB0byB0aGUgPGk+RjUwOGRlbDwvaT4gbXV0YXRpb24gd2VyZSB0cmFuc2ZlY3RlZCB3aXRoIG91ciBwcmltZSBlZGl0aW5nIGNvbXBsZXguIFRoZSByZXN1bHRzIG1ldCBvdXIgZXhwZWN0YXRpb25zLCBjb25maXJtaW5nIHRoZSB2aWFiaWxpdHkgb2Ygb3VyIGFwcHJvYWNoIGZvciBwcmVjaXNlIGdlbmUgY29ycmVjdGlvbi4gQmFzZWQgb24gdGhlc2UgZmluZGluZ3MsIHdlIG9wdGltaXplZCB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4LCBsZWFkaW5nIHRvIHRoZSBjcmVhdGlvbiBvZiA8aT5QcmltZUd1aWRlPC9pPiwgYSBtb3JlIGNvbXBhY3QgYW5kIGVmZmljaWVudCBlZGl0aW5nIHRvb2wuIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5DZW50cmFsIHRvIG91ciA8Yj5kZWxpdmVyeSBzeXN0ZW08L2I+IGlzIDxiPkFpckJ1ZGR5PC9iPiwgYSBsdW5nLXNwZWNpZmljIGxpcGlkIG5hbm9wYXJ0aWNsZSBkZXNpZ25lZCB0byBzdGFiaWxpemUgYW5kIHByb3RlY3QgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCBkdXJpbmcgdHJhbnNwb3J0IHRvIGx1bmcgaW9ub2N5dGVzLiA8aT5BaXJCdWRkeTwvaT4gZW5zdXJlcyB0aGF0IHRoZSBwcm90ZWluIGNvbXBsZXggaXMgZGVsaXZlcmVkIHNwZWNpZmljYWxseSB0byBsdW5nIGNlbGxzLCBlbmhhbmNpbmcgdGhlIGVmZmljaWVuY3kgb2YgdGhlIGdlbmUtZWRpdGluZyBwcm9jZXNzLiBCeSBtb2RpZnlpbmcgdGhlIGxpcGlkIG5hbm9wYXJ0aWNsZSB3aXRoIHByb3RlY3RpdmUgZmVhdHVyZXMsIHdlIGFjaGlldmVkIGluY3JlYXNlZCBzdGFiaWxpdHksIGVuc3VyaW5nIGVmZmVjdGl2ZSBkZWxpdmVyeSB0byB0aGUgdGFyZ2V0IGNlbGxzLiA8L3A+XG4gICAgICAgICAgICAgICAgPHA+V2UgZnVydGhlciBvcHRpbWl6ZWQgdGhlIHByaW1lIGVkaXRpbmcgZnVzaW9uIHByb3RlaW4sIDxiPlByaW1lR3VpZGU8L2I+LCB0byBzdHJlYW1saW5lIGl0cyBjb21wb25lbnRzLCByZXN1bHRpbmcgaW4gYSBzbWFsbGVyIGFuZCBtb3JlIGVmZmljaWVudCBwcmltZSBlZGl0aW5nIGNvbXBsZXguIFRoaXMgaW1wcm92ZW1lbnQgc2lnbmlmaWNhbnRseSBlbmhhbmNlcyB0aGUgcHJlY2lzaW9uIG9mIHRoZSBnZW5lIGVkaXRpbmcgcHJvY2VzcywgcmVkdWNpbmcgb2ZmLXRhcmdldCBlZmZlY3RzIGFuZCBpbmNyZWFzaW5nIHRoZSBvdmVyYWxsIHN1Y2Nlc3Mgb2YgbXV0YXRpb24gY29ycmVjdGlvbi4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPkluIHN1YnNlcXVlbnQgZXhwZXJpbWVudHMsIDxiPkhFSyBjZWxsczwvYj4gY2FycnlpbmcgdGhlIENGVFIgPGk+RjUwOGRlbDwvaT4gbXV0YXRpb24gd2VyZSBzdWNjZXNzZnVsbHkgPGI+dHJhbnNmZWN0ZWQ8L2I+IHdpdGggdGhlIG9wdGltaXplZCBwcmltZSBlZGl0aW5nIGNvbXBsZXguIE91ciByZXN1bHRzIGluZGljYXRlZCBzdWNjZXNzZnVsIGNvcnJlY3Rpb24gb2YgdGhlIG11dGF0aW9uLCBjb25maXJtaW5nIHRoZSBwb3RlbnRpYWwgb2Ygb3VyIGFwcHJvYWNoIGZvciB0cmVhdGluZyBjeXN0aWMgZmlicm9zaXMuIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIGV4cGxvcmVkIDxiPmRvd25zdHJlYW0gYXBwbGljYXRpb25zPC9iPi4gUHJpbWFyeSBjZWxsIGN1bHR1cmVzIHdlcmUgdHJlYXRlZCB3aXRoIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdG8gaW50cm9kdWNlIGEgcmVwb3J0ZXIgUk5BLiBXZSBhbHNvIGVzdGFibGlzaGVkIDJEIGN1bHR1cmVzIHRyYW5zZmVjdGVkIHdpdGggWUZQLCBhIHNvZGl1bS1zZW5zaXRpdmUgcmVwb3J0ZXIgcHJvdGVpbiwgdG8gYXNzZXNzIGlvbiBjaGFubmVsIGZ1bmN0aW9uYWxpdHkuIEZpbmFsbHksIGluIENGVFItZGVmaWNpZW50IG9yZ2Fub2lkcywgb3VyIHN5c3RlbSBmYWNpbGl0YXRlZCByZXBhaXIgb2YgdGhlIENGVFIgY2hhbm5lbCwgZXZpZGVuY2VkIGJ5IGFuIGluY3JlYXNlIGluIG9yZ2Fub2lkIHZvbHVtZSB1cG9uIHRyZWF0bWVudC4gVGhpcyBzdWdnZXN0cyBzdWNjZXNzZnVsIGZ1bmN0aW9uYWwgcmVzdG9yYXRpb24gb2YgQ0ZUUiBhY3Rpdml0eS4gPC9wPlxuICAgICAgICAgICAgPC9TZWN0aW9uPlxuICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJPdXIgVmlzaW9uXCIgaWQ9XCJPdXIgVmlzaW9uXCI+XG4gICAgICAgICAgICAgICAgPHA+QXQgPGI+UHJlQ3lzZTwvYj4sIHdlIGVudmlzaW9uIGEgZnV0dXJlIHdoZXJlIGdlbmUgdGhlcmFweSBmb3IgY3lzdGljIGZpYnJvc2lzIChDRikgaXMgYXMgc2ltcGxlIGFuZCB1c2VyLWZyaWVuZGx5IGFzIHVzaW5nIGFuIGluaGFsZXIuIE91ciBnb2FsIGlzIHRvIGRldmVsb3AgYSBmdWxseSBpbnRlZ3JhdGVkIFByaW1lIEVkaXRpbmcgc3lzdGVtLCA8Yj5QcmltZUd1aWRlPC9iPiwgZGVsaXZlcmVkIHZpYSBhIGN1dHRpbmctZWRnZSBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgcGxhdGZvcm0sIDxiPkFpckJ1ZGR5PC9iPi4gVGhlIHRoZXJhcHkgd291bGQgYWxsb3cgcGF0aWVudHMgdG8gaW5oYWxlIHRoZSB0aGVyYXBldXRpYyBjb21wbGV4LCB0YXJnZXRpbmcgdGhlIHVuZGVybHlpbmcgZ2VuZXRpYyBtdXRhdGlvbiB0aGF0IGNhdXNlcyBDRlx1MjAxNHNwZWNpZmljYWxseSwgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gdGhlIENGVFIgZ2VuZS4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPlRoZSBjb3JlIG9mIG91ciB2aXNpb24gaXMgdG8gY3JlYXRlIGEgaGlnaGx5IGVmZmljaWVudCBhbmQgc2FmZSBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIHJlZmVycmVkIHRvIGFzIFByaW1lIEd1aWRlLCB0aGF0IGlzIGRlbGl2ZXJlZCBkaXJlY3RseSBpbnRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscy4gVGhpcyBjb21wbGV4IHdpbGwgYmUgcGFja2FnZWQgYXMgbVJOQSBpbnRvIExOUHMsIHdpdGggYW4gb3B0aW1hbCByYXRpbyBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wb25lbnRzIGFuZCBpdHMgZ3VpZGUgUk5BIChwZWdSTkEpLiBPbmNlIGluc2lkZSB0aGUgY2VsbCwgdGhlIG1STkEgd2lsbCBiZSB0cmFuc2xhdGVkLCBmb3JtaW5nIHRoZSBhY3RpdmUgUHJpbWUgRWRpdGluZyBjb21wbGV4LCB3aGljaCB0aGVuIHRyYW5zbG9jYXRlcyBpbnRvIHRoZSBudWNsZXVzIHVzaW5nIG51Y2xlYXIgbG9jYWxpemF0aW9uIHNlcXVlbmNlcy4gVGhlcmUsIHRoZSBjb21wbGV4IHdpbGwgcHJlY2lzZWx5IGVkaXQgdGhlIGdlbm9tZSB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uLiA8L3A+XG4gICAgICAgICAgICAgICAgPHA+VG8gZW5zdXJlIHNhZmV0eSwgd2UgYXJlIHdvcmtpbmcgb24gZGV2ZWxvcGluZyBhIHJvYnVzdCBtZWNoYW5pc20gdGhhdCByZWd1bGF0ZXMgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBhdCB0aGUgbVJOQSBsZXZlbC4gT25lIGNvbmNlcHQgd2UgYXJlIGV4cGxvcmluZyBpcyB1c2luZyB0aGUgWEJQMSBpbnRyb248U3VwU2Nyb2xsTGluayBsYWJlbD1cIjk2XCIvPiAsIHdoaWNoIHJlc3BvbmRzIHRvIGNlbGx1bGFyIHN0cmVzcyBzaWduYWxzLiBBZGRpdGlvbmFsbHksIGluIHRoZSBmdXR1cmUsIHdlIGFpbSB0byBkZXZlbG9wIG1vcmUgbXV0YXRpb24tc3BlY2lmaWMgY29udHJvbCBtZWNoYW5pc21zLCBzdWNoIGFzIFJOQSByaWJvc3dpdGNoZXMgdGhhdCBhY3RpdmF0ZSB0aGUgZWRpdGluZyBjb21wbGV4IG9ubHkgaW4gdGhlIHByZXNlbmNlIG9mIHRoZSB0YXJnZXQgbXV0YXRpb24sIG9mZmVyaW5nIGFuIGV2ZW4gZ3JlYXRlciBsZXZlbCBvZiBwcmVjaXNpb24gYW5kIHNhZmV0eS4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPlRoZSBsb25nLXRlcm0gdmlzaW9uIGZvciBQcmVDeXNlIGlzIHRvIHByb3ZpZGUgYSBnZW5lIHRoZXJhcHkgdGhhdCBjYW4gYmUgYWRtaW5pc3RlcmVkIHRocm91Z2ggaW5oYWxhdGlvbiwgbXVjaCBsaWtlIGFuIGFzdGhtYSBzcHJheS4gVGhlIHBhdGllbnQgd291bGQgc2ltcGx5IGluaGFsZSB0aGUgTE5Qcywgd2hpY2ggdGhlbiBkZWxpdmVyIHRoZSB0aGVyYXBldXRpYyBtUk5BIHRvIHRoZSBsdW5ncy4gVGhpcyBhcHByb2FjaCBvZmZlcnMgYSB1c2VyLWZyaWVuZGx5IGFuZCBtaW5pbWFsbHkgaW52YXNpdmUgdHJlYXRtZW50IHRoYXQgY291bGQgc3VwcHJlc3MgdGhlIHN5bXB0b21zIG9mIENGIGZvciBzZXZlcmFsIG1vbnRocy4gQnkgY29ycmVjdGluZyB0aGUgbXV0YXRpb24gaW4gdGhlIHRvcCBsYXllcnMgb2YgbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3aGVyZSBtdWN1cyBidWlsZHVwIGlzIG1vc3QgcHJvYmxlbWF0aWMsIHdlIGNvdWxkIG9mZmVyIHJlbGllZiBmcm9tIHN5bXB0b21zIG92ZXIgYW4gZXh0ZW5kZWQgcGVyaW9kLiBIb3dldmVyLCBzaW5jZSB0aGVzZSBlcGl0aGVsaWFsIGNlbGxzIG5hdHVyYWxseSByZWdlbmVyYXRlIG92ZXIgdGltZSwgdGhlIHRoZXJhcHkgd291bGQgbmVlZCB0byBiZSByZWFwcGxpZWQgcGVyaW9kaWNhbGx5LCBsaWtlbHkgZXZlcnkgZmV3IG1vbnRocywgYmFsYW5jaW5nIGxvbmctbGFzdGluZyBlZmZlY3RzIHdpdGggdGhlIG5lZWQgZm9yIG9jY2FzaW9uYWwgcmUtYWRtaW5pc3RyYXRpb24uIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5VbHRpbWF0ZWx5LCBvdXIgdmlzaW9uIGlzIHRvIGNyZWF0ZSBhIHRoZXJhcGV1dGljIGFwcHJvYWNoIHRoYXQgbm90IG9ubHkgb2ZmZXJzIGEgY3VyZSB0aGF0IGlzIHNhZmUgYW5kIGVmZmljaWVudCBidXQgYWxzbyBtYXhpbWl6ZXMgY29udmVuaWVuY2UgZm9yIHRoZSBwYXRpZW50LiBXaXRoIGFuIGVhc3ktdG8tdXNlIGluaGFsZXIsIHBhdGllbnRzIGNvdWxkIGFkbWluaXN0ZXIgdGhlaXIgdHJlYXRtZW50IHdpdGggbWluaW1hbCBkaXNydXB0aW9uIHRvIHRoZWlyIGRhaWx5IGxpdmVzLCBpbmhhbGluZyB0aGUgZ2VuZSB0aGVyYXB5IGluIGp1c3QgYSBmZXcgYnJlYXRocywgbGVhdmluZyB0aGUgcmVzdCBvZiB0aGUgcHJvY2VzcyB0byB0aGUgc2NpZW5jZSB3ZSd2ZSBidWlsdCBpbnRvIFByZUN5c2UuIEJ5IHJlZHVjaW5nIHRoZSBmcmVxdWVuY3kgb2YgYWRtaW5pc3RyYXRpb24gYW5kIHNpbXBsaWZ5aW5nIHRoZSBkZWxpdmVyeSBtZXRob2QsIHdlIGFpbSB0byBtYWtlIGdlbmUgdGhlcmFweSBmb3IgY3lzdGljIGZpYnJvc2lzIGJvdGggYWNjZXNzaWJsZSBhbmQgcHJhY3RpY2FsIGZvciBwYXRpZW50cyBhcm91bmQgdGhlIHdvcmxkLiA8L3A+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlY29udGFpbmVyXCIgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9iaWctcGxhbi1pbmhhbGF0aW9uLWRlbC1tZWNoLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDQ6IDwvYj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWxsdXN0cmF0aW9uIG9mIG91ciBwYXRoIGZyb20gZmluYWwgcHJvZHVjdCB0byBwcmltZSBlZGl0aW5nIGluIGx1bmcgZXBpdGhlbGlhbCBjZWxsc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwiUmVmZXJlbmNlc1wiPlxuICAgICAgICAgICAgICAgPERlc2NTb3VyY2VzLz5cbiAgICAgICAgICAgIDwvU2VjdGlvbj5cblxuXG4gICAgXG5cbiAgICAgICAgICAgIFxuXG5cbiAgICAgICAgPC9kaXY+ICBcbiAgICAgIDwvZGl2PiAgICBcbiAgKTtcbn1cblxuIGxldCBtZWRpYnV0dG9ucm93ZGF0YSA9W1xuICAgIHtcbiAgICAgICAgbm9kZTogY3JlYXRlRHJ1Z1N0ZWNrYnJpZWYoZHJ1Z2RhdGFbMF0pLCBcbiAgICAgICAgYnV0dG9ubmFtZTogXCJNb2R1bGF0b3JzXCIsIFxuICAgICAgICBjc3NuYW1lOiBcIk1lZC1GaXJzdFwiLFxuICAgICAgICBtYWluOiB0cnVlXG4gICAgICAgIFxuICAgIH0sXG4gICAgeyAgIFxuICAgICAgICBub2RlOiBjcmVhdGVEcnVnU3RlY2ticmllZihkcnVnZGF0YVsxXSApLFxuICAgICAgICBidXR0b25uYW1lOiBcIk11Y29seXRpY3NcIiwgXG4gICAgICAgIGNzc25hbWU6IFwiTXVjb2x5dGljc1wiXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZURydWdTdGVja2JyaWVmKGRydWdkYXRhWzJdICksXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiQW50aWJpb3RpY3NcIiwgXG4gICAgICAgIGNzc25hbWU6IFwiQW50aWJpb3RpY3NcIlxuICAgIH0sXG4gICAge1xuICAgICAgICBub2RlOiBjcmVhdGVEcnVnU3RlY2ticmllZihkcnVnZGF0YVszXSApLFxuICAgICAgICBidXR0b25uYW1lOiBcIkVuenltZXNcIiwgXG4gICAgICAgIGNzc25hbWU6IFwiRW56eW1lc1wiXG4gICAgfSxcbl1cblxuXG5cbmxldCBzeW1wdG9tYnV0dG9ucm93ZGF0YSA9IFtcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzBdKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiUGFuY3JlYXNcIiwgXG4gICAgICAgIGNzc25hbWU6IFwiU3ltcC1GaXJzdFwiLFxuICAgICAgICBtYWluOiB0cnVlXG4gICAgfSxcbiAgICB7ICAgXG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzFdKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiSW50ZXN0aW5lc1wiLCBcbiAgICAgICAgY3NzbmFtZTogXCJpbnRlc3RpbmVzXCJcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbm9kZTogY3JlYXRlU3ltcHRvbVN0ZWNrYnJpZWYoc3ltcHRvbWRhdGFbMl0pLCBcbiAgICAgICAgYnV0dG9ubmFtZTogXCJMaXZlclwiLCBcbiAgICAgICAgY3NzbmFtZTogXCJsaXZlclwiXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzNdKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiU2V4dWFsIGdsYW5kc1wiLCBcbiAgICAgICAgY3NzbmFtZTogXCJTZXh1YWwgZ2xhbmRzXCJcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbm9kZTogY3JlYXRlU3ltcHRvbVN0ZWNrYnJpZWYoc3ltcHRvbWRhdGFbNF0pLCBcbiAgICAgICAgYnV0dG9ubmFtZTogXCJMdW5nc1wiLCBcbiAgICAgICAgY3NzbmFtZTogXCJsdW5nc1wiXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzVdKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiU2tlbGV0YWwgU3lzdGVtXCIsIFxuICAgICAgICBjc3NuYW1lOiBcIlNrZWxldGFsIFN5c3RlbVwiXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzZdKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiU2tpblwiLCBcbiAgICAgICAgY3NzbmFtZTogXCJza2luXCJcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbm9kZTogY3JlYXRlU3ltcHRvbVN0ZWNrYnJpZWYoc3ltcHRvbWRhdGFbN10gKSwgXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiTmFzYWwgbXVjb3NhXCIsIFxuICAgICAgICBjc3NuYW1lOiBcIk5hc2FsIG11Y29zYVwiXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzhdICksIFxuICAgICAgICBidXR0b25uYW1lOiBcIkJyYWluXCIsIFxuICAgICAgICBjc3NuYW1lOiBcImJyYWluXCJcbiAgICB9LFxuXG5dXG5cblxuXG5cbmZ1bmN0aW9uIGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKGRhdGE6IFN5bXB0b21EYXRlbnNhdHope1xuICAgIGxldCBleGFtcGxlbGlzdDogSlNYLkVsZW1lbnRbXSA9IFtdOyBcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGF0YS5pbnRyb2R1Y3Rpb24ubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBleGFtcGxlbGlzdC5wdXNoKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2luZGV4fT57ZGF0YS5pbnRyb2R1Y3Rpb25baW5kZXhdfTwvbGk+XG4gICAgICAgICAgICApXG4gICAgfVxuICAgIHJldHVybihcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxINCBpZD17YCR7ZGF0YS5uYW1lfS1idG5gfSB0ZXh0PXtkYXRhLm5hbWV9Lz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN5bXB0b20taW1nLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtkYXRhLnBpY3R1cmV9IGNsYXNzTmFtZT1cInN5bXB0b20taW1nXCIvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8dWw+e2V4YW1wbGVsaXN0fTwvdWw+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgXG4gICAgICAgIDwvZGl2PlxuICAgIClcbn1cblxuXG5mdW5jdGlvbiBjcmVhdGVEcnVnU3RlY2ticmllZihkYXRhOiBEcnVnRGF0ZW5zYXR6KXtcbiAgICBsZXQgZXhhbXBsZWxpc3Q6IEpTWC5FbGVtZW50W10gID0gW107IFxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkYXRhLmV4YW1wbGVzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBsZXQgYWJzYWV0emU6IEpTWC5FbGVtZW50W10gID0gW11cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmV4YW1wbGVzW2luZGV4XS50ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhYnNhZXR6ZS5wdXNoKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2l9PntkYXRhLmV4YW1wbGVzW2luZGV4XS50ZXh0W2ldfTwvbGk+XG4gICAgICAgICAgICApXG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBleGFtcGxlbGlzdC5wdXNoKFxuICAgICAgICAgICAgPGRpdiBrZXk9e2luZGV4KzUwMH0gY2xhc3NOYW1lPVwiZHJ1Z1wiPlxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PXtkYXRhLmV4YW1wbGVzW2luZGV4XS50aXRsZX0vPlxuICAgICAgICAgICAgICAgIDx1bCBrZXk9e2luZGV4fT57YWJzYWV0emV9PC91bD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICApXG4gICAgICAgIFxuICAgIH1cbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8SDQgaWQ9e2Ake2RhdGEubmFtZX0tYnRuYH0gdGV4dD17ZGF0YS5uYW1lfS8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzeW1wdG9tLWltZy13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17ZGF0YS5waWN0dXJlfSBjbGFzc05hbWU9XCJzeW1wdG9tLWltZ1wiLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAge2RhdGEuaW50cm9kdWN0aW9ufVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAge2V4YW1wbGVsaXN0fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIClcbn0iLCAiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjtcbmltcG9ydCB7IEhpZ2hsaWdodCwgTmV3SGlnaGxpZ2h0IH0gZnJvbSBcIi4vSGlnaGxpZ2h0LWZ1bmN0aW9uc1wiO1xuaW1wb3J0IHsgQmFja1VwIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xuXG4vLyBGdW5rdGlvbiB6dXIgRXJzdGVsbHVuZyBkZXIgU2lkZWJhclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNpZGViYXIodGFiczogQXJyYXk8eyB0YWI6IHN0cmluZzsgc3VidGFicz86IEFycmF5PHN0cmluZz4gfT4pIHtcbiAgICBjb25zdCB7IG51bXNCaWcsIG51bXNTdWIgfSA9IGRlcml2ZVRhYnNEYXRhKHRhYnMpO1xuICAgIGNvbnNvbGUubG9nKHsgbnVtc0JpZywgbnVtc1N1YiB9KVxuICAgIGNvbnN0IFtvcGVuVGFiLCBzZXRPcGVuVGFiXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICAgIFxuICAgICAgICAgICBcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlU2Nyb2xsID0gKCkgPT4ge1xuICAgICAgICBudW1zQmlnLmZvckVhY2goKGl0ZW0sIGluZCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdGVtKTtcbiAgICAgICAgICBjb25zdCBzdWJ0aXRsZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgc3VidGl0bGUke2luZH1gKTtcbiAgICAgICAgICBpZiAoZWxlbWVudCAmJiBzdWJ0aXRsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIEhpZ2hsaWdodCh7IGVsOiBlbGVtZW50IH0sIHsgc3VidGl0bGU6IHN1YnRpdGxlRWxlbWVudCB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICBcbiAgICAgICAgbnVtc1N1Yi5mb3JFYWNoKChpdGVtLCBpbmQpID0+IHtcbiAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSk7XG4gICAgICAgICAgY29uc3Qgc3VidGl0bGVFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYG5ld3N1YnRpdGxlJHtpbmR9YCk7XG4gICAgICAgICAgaWYgKGVsZW1lbnQgJiYgc3VidGl0bGVFbGVtZW50KSB7XG4gICAgICAgICAgICBOZXdIaWdobGlnaHQoeyBlbDogZWxlbWVudCB9LCB7IHN1YnRpdGxlOiBzdWJ0aXRsZUVsZW1lbnQgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG4gIFxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgaGFuZGxlU2Nyb2xsKTtcbiAgICAgIHJldHVybiAoKSA9PiB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBoYW5kbGVTY3JvbGwpO1xuICAgIH0sIFtudW1zQmlnLCBudW1zU3ViLCBvcGVuVGFiXSk7XG5cbiAgICBjb25zdCBzY3JvbGxpbmcgPSAodGFiOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWIpO1xuICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgU2Nyb2xsaW5nIHRvIGVsZW1lbnQgd2l0aCBJRDogJHt0YWJ9YCk7XG4gICAgICAgIFxuICAgICAgICAvLyBHZXQgdGhlIHBvc2l0aW9uIG9mIHRoZSBlbGVtZW50IHJlbGF0aXZlIHRvIHRoZSBkb2N1bWVudFxuICAgICAgICBjb25zdCBlbGVtZW50UmVjdCA9IHRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnRUb3AgPSBlbGVtZW50UmVjdC50b3AgKyB3aW5kb3cuc2Nyb2xsWTtcbiAgICAgICAgXG4gICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWlkZGxlIG9mIHRoZSB2aWV3cG9ydFxuICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsT2Zmc2V0ID0gZWxlbWVudFRvcCAtICh2aWV3cG9ydEhlaWdodCAvIDUgLSB0YXJnZXRFbGVtZW50Lm9mZnNldEhlaWdodCAvIDIpO1xuICAgICAgIC8qICBcbiAgICAgICAgY29uc29sZS5sb2coYEVsZW1lbnQgVG9wOiAke2VsZW1lbnRUb3B9YCk7XG4gICAgICAgIGNvbnNvbGUubG9nKGBWaWV3cG9ydCBIZWlnaHQ6ICR7dmlld3BvcnRIZWlnaHR9YCk7XG4gICAgICAgIGNvbnNvbGUubG9nKGBTY3JvbGwgT2Zmc2V0OiAke3Njcm9sbE9mZnNldH1gKTsgKi9cbiAgICAgICAgXG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XG4gICAgICAgICAgICB0b3A6IHNjcm9sbE9mZnNldCxcbiAgICAgICAgICAgIGJlaGF2aW9yOiBcInNtb290aFwiXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGBTY3JvbGwgdGFyZ2V0IGVsZW1lbnQgbm90IGZvdW5kIGZvciBJRDogJHt0YWJ9YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgdG9nZ2xlVGFiID0gKHRhYjogc3RyaW5nKSA9PiB7XG4gICAgICBzZXRPcGVuVGFiKG9wZW5UYWIgPT09IHRhYiA/IG51bGwgOiB0YWIpO1xuICAgICAvLyBjb25zb2xlLmxvZyhgU3RhdHVzIG9mIHRhYiAke3RhYn0gaXMgJHtvcGVuVGFifWApXG4gICAgIHNjcm9sbGluZyh0YWIpXG4gICAgfTtcblxuICAgIGxldCBzdWJ0aXRsZW51bWJlciA9IDA7IFxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8YnIgLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdGlja3ktdG9wXCI+XG4gICAgICAgICAgPG5hdiBjbGFzc05hbWU9XCJzaWRlYmFyXCI+XG4gICAgICAgICAgICB7dGFicy5tYXAoKHRhYiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdGFiSWQgPSBgdGFiLSR7dGFiLnRhYn1gO1xuICAgICAgICAgICAgICBjb25zdCBwYXJlbnRJZCA9IGBwYXJlbnQtJHt0YWIudGFifWA7XG4gICAgICAgICAgICAgIGNvbnN0IHN1YnRpdGxlSWQgPSBgc3VidGl0bGUke2luZGV4fWA7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxkaXYga2V5PXtpbmRleH0+XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD17c3VidGl0bGVJZH0gY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD17cGFyZW50SWR9IGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBDbGlja2VkIG9uIFRhYiAke3RhYi50YWJ9IHdpdGggdGFiLW5hbWUgdGFiLSR7dGFiLnRhYn0gYW5kIHBhcmVudCBwYXJlbnQtJHt0YWIudGFifWApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZVRhYih0YWIudGFiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBDbG9zZSBvdGhlciB0YWJzIHdoZW4gYSBuZXcgdGFiIGlzIG9wZW5lZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYnMuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHQudGFiICE9PSB0YWIudGFiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGB0YWItJHt0LnRhYn1gKSEuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgcGFyZW50LSR7dC50YWJ9YCkhLmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmUtc2lkZWl0ZW1cIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2hvdyBvciBoaWRlIHRoZSBzZWxlY3RlZCB0YWJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWJJZCkhLnN0eWxlLmRpc3BsYXkgPSBvcGVuVGFiID09PSB0YWIudGFiID8gXCJibG9ja1wiIDogXCJub25lXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocGFyZW50SWQpIS5jbGFzc0xpc3QudG9nZ2xlKFwiYWN0aXZlLXNpZGVpdGVtXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT57dGFiLnRhYn08L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dGFiLnN1YnRhYnMgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXt0YWJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzaWRlc3VidGFiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiBvcGVuVGFiID09PSB0YWIudGFiID8gXCJibG9ja1wiIDogXCJub25lXCIgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0YWIuc3VidGFicy5tYXAoKHN1YnRhYiwgc3ViSW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ViVGFiSWQgPSBgbmV3c3VidGl0bGUke3N1YnRpdGxlbnVtYmVyfWA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogIGNvbnNvbGUubG9nKGBPbGQgc3VidGl0bGVudW1iZXIgaXMgJHtzdWJ0aXRsZW51bWJlcn1gKSAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJ0aXRsZW51bWJlciA9IHN1YnRpdGxlbnVtYmVyICsgMTsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBOZXcgc3VidGl0bGVudW1iZXIgaXMgJHtzdWJ0aXRsZW51bWJlcn1gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBNYWRlIHN1YnRhYiBuZXdzdWJ0aXRsZSR7c3VidGl0bGVudW1iZXJ9IHRoYXQgd2lsbCBsaW5rIHRvICR7dGFiLnRhYn0ke3N1YkluZGV4ICsxIH1IYCkgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17c3VidGl0bGVudW1iZXJ9IGlkPXtzdWJUYWJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2Nyb2xsTGluayBsYWJlbD17c3VidGFifSB0YXJnZXRJZD17YCR7dGFiLnRhYn0ke3N1YkluZGV4ICsxIH1IYH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICBcbiAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgIDwvbmF2PlxuICAgICAgICAgIDxCYWNrVXAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cblxuXG4gIGZ1bmN0aW9uIGRlcml2ZVRhYnNEYXRhKHRhYnM6IEFycmF5PHsgdGFiOiBzdHJpbmc7IHN1YnRhYnM/OiBBcnJheTxzdHJpbmc+IH0+KSB7XG4gICAgY29uc3QgbnVtc0JpZzogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBudW1zU3ViOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgdGFicy5mb3JFYWNoKHRhYiA9PiB7XG4gICAgICAgIGxldCBjb3VudCA9IDE7ICBcbiAgICAgICAgbnVtc0JpZy5wdXNoKGAke3RhYi50YWJ9SGApOyAvLyB6LkIuIFJvbGVILCBDaGVja3NIXG4gICAgICAgIGlmICh0YWIuc3VidGFicykge1xuICAgICAgICAgICAgdGFiLnN1YnRhYnMuZm9yRWFjaCgoX2luZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coaW5kZXgpXG4gICAgICAgICAgICAgICAgbnVtc1N1Yi5wdXNoKGAke3RhYi50YWJ9JHtjb3VudH1gKTsgLy8gei5CLiBSb2xlMUgsIFJvbGUySFxuICAgICAgICAgICAgICAgIGNvdW50ICs9IDE7IFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiB7IG51bXNCaWcsIG51bXNTdWIgfTtcbn1cblxuXG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBEZXNjU2lkZWJhcigpe1xuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yICBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICB7c2lkZWJhcn1cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufVxuXG5cbmNvbnN0IHRhYnMgPSBbXG4gICAgeyB0YWI6IFwiQWJzdHJhY3RcIiB9LFxuICAgIHt0YWI6IFwiT3VyIE1vdGl2YXRpb25cIn0sXG4gICAgeyB0YWI6IFwiQ3lzdGljIEZpYnJvc2lzXCIsIHN1YnRhYnM6IFtcIk92ZXJ2aWV3XCIsIFwiVGhlIENGVFIgUHJvdGVpblwiLCBcIkY1MDhkZWxcIiwgXCJTeW1wdG9tc1wiLCBcIkRpYWdub3Npc1wiLCBcIlRyZWF0bWVudFwiXX0sXG4gICAge3RhYjogXCJBcHByb2FjaFwiLCBzdWJ0YWJzOiBbXCJNZWNoYW5pc21cIiwgXCJEZWxpdmVyeVwiXX0sXG4gICAge3RhYjogXCJPdXIgVmlzaW9uXCJ9LFxuICAgIHt0YWI6IFwiUmVmZXJlbmNlc1wifVxuICBdO1xuIiwgImltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIlxuXG5leHBvcnQgZnVuY3Rpb24gVGFiU2Nyb2xsTGluayh7dGFiLCBzY3JvbGxJZCwgbnVtfTp7dGFiOiBzdHJpbmcsIHNjcm9sbElkOiBzdHJpbmcsIG51bTogc3RyaW5nfSl7XG4gICAgY29uc3Qge2dvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxuICAgIHJldHVybihcbiAgICAgICAgPHN1cD48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiB0YWIsIHNjcm9sbFRvSWQ6IHNjcm9sbElkfSl9PntudW19PC9hPjwvc3VwPlxuICAgIClcbn0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFbmdUcmZzb3VyY2VzKCl7XG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbn1cblxuXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xuICBgQGFydGljbGV7R3JhaGFtX1NtaWxleV9SdXNzZWxsX05haXJuXzE5NzcsXG4gICAgdGl0bGUgICAgICAgID0ge0NoYXJhY3RlcmlzdGljcyBvZiBhIEh1bWFuIENlbGwgTGluZSBUcmFuc2Zvcm1lZCBieSBETkEgZnJvbSBIdW1hbiBBZGVub3ZpcnVzIFR5cGUgNX0sXG4gICAgYXV0aG9yICAgICAgID0ge0dyYWhhbSwgRi4gTC4gYW5kIFNtaWxleSwgSi4gYW5kIFJ1c3NlbGwsIFcuIEMuIGFuZCBOYWlybiwgUi59LFxuICAgIHllYXIgICAgICAgICA9IDE5NzcsXG4gICAgam91cm5hbCAgICAgID0ge0pvdXJuYWwgb2YgR2VuZXJhbCBWaXJvbG9neX0sXG4gICAgcHVibGlzaGVyICAgID0ge01pY3JvYmlvbG9neSBTb2NpZXR5LH0sXG4gICAgdm9sdW1lICAgICAgID0gMzYsXG4gICAgbnVtYmVyICAgICAgID0gMSxcbiAgICBwYWdlcyAgICAgICAgPSB7NTlcdTIwMTM3Mn0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwOTkvMDAyMi0xMzE3LTM2LTEtNTl9LFxuICAgIGlzc24gICAgICAgICA9IHsxNDY1LTIwOTl9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtTVU1NQVJZIEh1bWFuIGVtYnJ5b25pYyBraWRuZXkgY2VsbHMgaGF2ZSBiZWVuIHRyYW5zZm9ybWVkIGJ5IGV4cG9zaW5nIGNlbGxzIHRvIHNoZWFyZWQgZnJhZ21lbnRzIG9mIGFkZW5vdmlydXMgdHlwZSA1IEROQS4gVGhlIHRyYW5zZm9ybWVkIGNlbGxzIChkZXNpZ25hdGVkIDI5MyBjZWxscykgZXhoaWJpdGVkIG1hbnkgb2YgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0cmFuc2Zvcm1hdGlvbiBpbmNsdWRpbmcgdGhlIGVsYWJvcmF0aW9uIG9mIGEgdmlydXMtc3BlY2lmaWMgdHVtb3VyIGFudGlnZW4uIEFuYWx5c2lzIG9mIHRoZSBwb2x5cGVwdGlkZXMgc3ludGhlc2l6ZWQgaW4gdGhlIDI5MyBjZWxscyBieSBsYWJlbGxpbmcgd2l0aCAzNVMtbWV0aGlvbmluZSBhbmQgU0RTIFBBR0Ugc2hvd2VkIGEgdmFyaWFibGUgcGF0dGVybiBvZiBzeW50aGVzaXMsIGRpZmZlcmVudCBpbiBhIG51bWJlciBvZiByZXNwZWN0cyBmcm9tIHRoYXQgc2VlbiBpbiBvdGhlciBodW1hbiBjZWxscy4gT24gbGFiZWxsaW5nIHRoZSBzdXJmYWNlIG9mIGNlbGxzIGJ5IGxhY3RvcGVyb3hpZGFzZSBjYXRhbHlzZWQgcmFkaW8taW9kaW5hdGlvbiwgdGhlIGFic2VuY2Ugb2YgYSBsYWJlbGxlZCBwb2x5cGVwdGlkZSBhbmFsb2dvdXMgdG8gdGhlIDI1MCBLIChMRVRTKSBnbHljb3Byb3RlaW4gd2FzIG5vdGVkLiBIeWJyaWRpemF0aW9uIG9mIGxhYmVsbGVkIGNlbGx1bGFyIFJOQSB3aXRoIHJlc3RyaWN0aW9uIGZyYWdtZW50cyBvZiBhZGVub3ZpcnVzIHR5cGUgNSBETkEgaW5kaWNhdGVkIHRyYW5zY3JpcHRpb24gb2YgYSBwb3J0aW9uIG9mIHRoZSBhZGVub3ZpcnVzIGdlbm9tZSBhdCB0aGUgY29udmVudGlvbmFsIGxlZnQgaGFuZCBlbmQufVxuICB9YCxcbiAgYEBhcnRpY2xle1NpbW9uLFxuICAgIHRpdGxlICAgICAgICA9IHtQRUFSLCBhIGZsZXhpYmxlIGZsdW9yZXNjZW50IHJlcG9ydGVyIGZvciB0aGUgaWRlbnRpZmljYXRpb24gYW5kIGVucmljaG1lbnQgb2Ygc3VjY2Vzc2Z1bGx5IHByaW1lIGVkaXRlZCBjZWxsc30sXG4gICAgYXV0aG9yICAgICAgID0ge1NpbW9uLCBEb3JvdHR5YSBBbm5hIGFuZCBUXHUwMEUxbGFzLCBBbmRyXHUwMEUxcyBhbmQgS3VsY3NcdTAwRTFyLCBQXHUwMEU5dGVyIElzdHZcdTAwRTFuIGFuZCBCaWN6XHUwMEYzaywgWnN1enNhbm5hIGFuZCBLcmF1c3osIFNhcmFoIExhdXJhIGFuZCBWXHUwMEUxcmFkeSwgR3lcdTAwRjZyZ3kgYW5kIFdlbGtlciwgRXJ2aW59LFxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXG4gICAgbW9udGggICAgICAgID0gZmViLFxuICAgIGpvdXJuYWwgICAgICA9IHtlTGlmZX0sXG4gICAgcHVibGlzaGVyICAgID0ge2VMaWZlIFNjaWVuY2VzIFB1YmxpY2F0aW9ucywgTHRkfSxcbiAgICB2b2x1bWUgICAgICAgPSAxMSxcbiAgICBwYWdlcyAgICAgICAgPSB7ZTY5NTA0fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuNzU1NC9lTGlmZS42OTUwNH0sXG4gICAgaXNzbiAgICAgICAgID0gezIwNTAtMDg0WH0sXG4gICAgYWJzdHJhY3Rub3RlID0ge1ByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnRseSBkZXZlbG9wZWQgQ1JJU1BSL0NhczkgYmFzZWQgZ2VuZSBlbmdpbmVlcmluZyB0b29sIHRoYXQgYWxsb3dzIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2hvcnQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgc3Vic3RpdHV0aW9ucyBpbnRvIHRoZSBnZW5vbWUuIEhvd2V2ZXIsIHRoZSBlZmZpY2llbmN5IG9mIHByaW1lIGVkaXRpbmcsIHdoaWNoIHR5cGljYWxseSBhY2hpZXZlcyBlZGl0aW5nIHJhdGVzIG9mIGFyb3VuZCAxMCVcdTIwMTMzMCUsIGhhcyBub3QgbWF0Y2hlZCBpdHMgdmVyc2F0aWxpdHkuIEhlcmUsIHdlIGludHJvZHVjZSB0aGUgcHJpbWUgZWRpdG9yIGFjdGl2aXR5IHJlcG9ydGVyIChQRUFSKSwgYSBzZW5zaXRpdmUgZmx1b3Jlc2NlbnQgdG9vbCBmb3IgaWRlbnRpZnlpbmcgc2luZ2xlIGNlbGxzIHdpdGggcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gUEVBUiBoYXMgbm8gYmFja2dyb3VuZCBmbHVvcmVzY2VuY2UgYW5kIHNwZWNpZmljYWxseSBpbmRpY2F0ZXMgcHJpbWUgZWRpdGluZyBldmVudHMuIEl0cyBkZXNpZ24gcHJvdmlkZXMgYXBwYXJlbnRseSB1bmxpbWl0ZWQgZmxleGliaWxpdHkgZm9yIHNlcXVlbmNlIHZhcmlhdGlvbiBhbG9uZyB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUgc3BhY2VyIHNlcXVlbmNlLCBtYWtpbmcgaXQgdW5pcXVlbHkgc3VpdGVkIGZvciBzeXN0ZW1hdGljIGludmVzdGlnYXRpb24gb2Ygc2VxdWVuY2UgZmVhdHVyZXMgdGhhdCBpbmZsdWVuY2UgcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gVGhlIHVzZSBvZiBQRUFSIGFzIGFuIGVucmljaG1lbnQgbWFya2VyIGZvciBwcmltZSBlZGl0aW5nIGNhbiBpbmNyZWFzZSB0aGUgZWRpdGVkIHBvcHVsYXRpb24gYnkgdXAgdG8gODQlLCB0aHVzIHNpZ25pZmljYW50bHkgaW1wcm92aW5nIHRoZSBhcHBsaWNhYmlsaXR5IG9mIHByaW1lIGVkaXRpbmcgZm9yIGJhc2ljIHJlc2VhcmNoIGFuZCBiaW90ZWNobm9sb2dpY2FsIGFwcGxpY2F0aW9ucy59LFxuICAgIGVkaXRvciAgICAgICA9IHtMYXBpbmFpdGUsIEF1ZHJvbmUgYW5kIFN0YWluaWVyLCBEaWRpZXIgWVIgYW5kIEhhbWlsdG9uLCBKZW5uaWZlciBSfVxuICB9YCxcbiAgYEBhcnRpY2xle0FuemFsb25lX1JhbmRvbHBoX0RhdmlzX1NvdXNhX0tvYmxhbl9MZXZ5X0NoZW5fV2lsc29uX05ld2J5X1JhZ3VyYW1fMjAxOSxcbiAgICB0aXRsZSAgICAgICAgPSB7U2VhcmNoLWFuZC1yZXBsYWNlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BfSxcbiAgICBhdXRob3IgICAgICAgPSB7QW56YWxvbmUsIEFuZHJldyBWLiBhbmQgUmFuZG9scGgsIFBleXRvbiBCLiBhbmQgRGF2aXMsIEplc3NpZSBSLiBhbmQgU291c2EsIEFsZXhhbmRlciBBLiBhbmQgS29ibGFuLCBMdWtlIFcuIGFuZCBMZXZ5LCBKb25hdGhhbiBNLiBhbmQgQ2hlbiwgUGV0ZXIgSi4gYW5kIFdpbHNvbiwgQ2hyaXN0b3BoZXIgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIExpdSwgRGF2aWQgUi59LFxuICAgIHllYXIgICAgICAgICA9IDIwMTksXG4gICAgbW9udGggICAgICAgID0gZGVjLFxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmV9LFxuICAgIHB1Ymxpc2hlciAgICA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sXG4gICAgdm9sdW1lICAgICAgID0gNTc2LFxuICAgIG51bWJlciAgICAgICA9IDc3ODUsXG4gICAgcGFnZXMgICAgICAgID0gezE0OVx1MjAxMzE1N30sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTg2LTAxOS0xNzExLTR9LFxuICAgIGlzc24gICAgICAgICA9IHsxNDc2LTQ2ODd9LFxuICAgIHJpZ2h0cyAgICAgICA9IHsyMDE5IFRoZSBBdXRob3IocyksIHVuZGVyIGV4Y2x1c2l2ZSBsaWNlbmNlIHRvIFNwcmluZ2VyIE5hdHVyZSBMaW1pdGVkfSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7TW9zdCBnZW5ldGljIHZhcmlhbnRzIHRoYXQgY29udHJpYnV0ZSB0byBkaXNlYXNlMSBhcmUgY2hhbGxlbmdpbmcgdG8gY29ycmVjdCBlZmZpY2llbnRseSBhbmQgd2l0aG91dCBleGNlc3MgYnlwcm9kdWN0czJcdTIwMTM1LiBIZXJlIHdlIGRlc2NyaWJlIHByaW1lIGVkaXRpbmcsIGEgdmVyc2F0aWxlIGFuZCBwcmVjaXNlIGdlbm9tZSBlZGl0aW5nIG1ldGhvZCB0aGF0IGRpcmVjdGx5IHdyaXRlcyBuZXcgZ2VuZXRpYyBpbmZvcm1hdGlvbiBpbnRvIGEgc3BlY2lmaWVkIEROQSBzaXRlIHVzaW5nIGEgY2F0YWx5dGljYWxseSBpbXBhaXJlZCBDYXM5IGVuZG9udWNsZWFzZSBmdXNlZCB0byBhbiBlbmdpbmVlcmVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgcHJvZ3JhbW1lZCB3aXRoIGEgcHJpbWUgZWRpdGluZyBndWlkZSBSTkEgKHBlZ1JOQSkgdGhhdCBib3RoIHNwZWNpZmllcyB0aGUgdGFyZ2V0IHNpdGUgYW5kIGVuY29kZXMgdGhlIGRlc2lyZWQgZWRpdC4gV2UgcGVyZm9ybWVkIG1vcmUgdGhhbiAxNzUgZWRpdHMgaW4gaHVtYW4gY2VsbHMsIGluY2x1ZGluZyB0YXJnZXRlZCBpbnNlcnRpb25zLCBkZWxldGlvbnMsIGFuZCBhbGwgMTIgdHlwZXMgb2YgcG9pbnQgbXV0YXRpb24sIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQSB0ZW1wbGF0ZXMuIFdlIHVzZWQgcHJpbWUgZWRpdGluZyBpbiBodW1hbiBjZWxscyB0byBjb3JyZWN0LCBlZmZpY2llbnRseSBhbmQgd2l0aCBmZXcgYnlwcm9kdWN0cywgdGhlIHByaW1hcnkgZ2VuZXRpYyBjYXVzZXMgb2Ygc2lja2xlIGNlbGwgZGlzZWFzZSAocmVxdWlyaW5nIGEgdHJhbnN2ZXJzaW9uIGluIEhCQikgYW5kIFRheVx1MjAxM1NhY2hzIGRpc2Vhc2UgKHJlcXVpcmluZyBhIGRlbGV0aW9uIGluIEhFWEEpOyB0byBpbnN0YWxsIGEgcHJvdGVjdGl2ZSB0cmFuc3ZlcnNpb24gaW4gUFJOUDsgYW5kIHRvIGluc2VydCB2YXJpb3VzIHRhZ3MgYW5kIGVwaXRvcGVzIHByZWNpc2VseSBpbnRvIHRhcmdldCBsb2NpLiBGb3VyIGh1bWFuIGNlbGwgbGluZXMgYW5kIHByaW1hcnkgcG9zdC1taXRvdGljIG1vdXNlIGNvcnRpY2FsIG5ldXJvbnMgc3VwcG9ydCBwcmltZSBlZGl0aW5nIHdpdGggdmFyeWluZyBlZmZpY2llbmNpZXMuIFByaW1lIGVkaXRpbmcgc2hvd3MgaGlnaGVyIG9yIHNpbWlsYXIgZWZmaWNpZW5jeSBhbmQgZmV3ZXIgYnlwcm9kdWN0cyB0aGFuIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgaGFzIGNvbXBsZW1lbnRhcnkgc3RyZW5ndGhzIGFuZCB3ZWFrbmVzc2VzIGNvbXBhcmVkIHRvIGJhc2UgZWRpdGluZywgYW5kIGluZHVjZXMgbXVjaCBsb3dlciBvZmYtdGFyZ2V0IGVkaXRpbmcgdGhhbiBDYXM5IG51Y2xlYXNlIGF0IGtub3duIENhczkgb2ZmLXRhcmdldCBzaXRlcy4gUHJpbWUgZWRpdGluZyBzdWJzdGFudGlhbGx5IGV4cGFuZHMgdGhlIHNjb3BlIGFuZCBjYXBhYmlsaXRpZXMgb2YgZ2Vub21lIGVkaXRpbmcsIGFuZCBpbiBwcmluY2lwbGUgY291bGQgY29ycmVjdCB1cCB0byA4OSUgb2Yga25vd24gZ2VuZXRpYyB2YXJpYW50cyBhc3NvY2lhdGVkIHdpdGggaHVtYW4gZGlzZWFzZXMufSxcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XG4gIH1gXG5dIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRW5nUmVwc291cmNlcygpe1xuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG59XG5cblxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcbmBcbkBhcnRpY2xle0hlaW1fUHJhc2hlcl9Uc2llbl8xOTk0LFxuXHR0aXRsZSAgICAgICAgPSB7V2F2ZWxlbmd0aCBtdXRhdGlvbnMgYW5kIHBvc3R0cmFuc2xhdGlvbmFsIGF1dG94aWRhdGlvbiBvZiBncmVlbiBmbHVvcmVzY2VudCBwcm90ZWluLn0sXG5cdGF1dGhvciAgICAgICA9IHtIZWltLCBSIGFuZCBQcmFzaGVyLCBEIEMgYW5kIFRzaWVuLCBSIFl9LFxuXHR5ZWFyICAgICAgICAgPSAxOTk0LFxuXHRtb250aCAgICAgICAgPSBkZWMsXG5cdGpvdXJuYWwgICAgICA9IHtQcm9jZWVkaW5ncyBvZiB0aGUgTmF0aW9uYWwgQWNhZGVteSBvZiBTY2llbmNlc30sXG5cdHB1Ymxpc2hlciAgICA9IHtQcm9jZWVkaW5ncyBvZiB0aGUgTmF0aW9uYWwgQWNhZGVteSBvZiBTY2llbmNlc30sXG5cdHZvbHVtZSAgICAgICA9IDkxLFxuXHRudW1iZXIgICAgICAgPSAyNixcblx0cGFnZXMgICAgICAgID0gezEyNTAxXHUyMDEzMTI1MDR9LFxuXHRkb2kgICAgICAgICAgPSB7MTAuMTA3My9wbmFzLjkxLjI2LjEyNTAxfSxcblx0YWJzdHJhY3Rub3RlID0ge1RoZSBncmVlbiBmbHVvcmVzY2VudCBwcm90ZWluIChHRlApIG9mIHRoZSBqZWxseWZpc2ggQWVxdW9yZWEgdmljdG9yaWEgaXMgYW4gdW51c3VhbCBwcm90ZWluIHdpdGggc3Ryb25nIHZpc2libGUgYWJzb3JiYW5jZSBhbmQgZmx1b3Jlc2NlbmNlIGZyb20gYSBwLWh5ZHJveHliZW56eWxpZGVuZS1pbWlkYXpvbGlkaW5vbmUgY2hyb21vcGhvcmUsIHdoaWNoIGlzIGdlbmVyYXRlZCBieSBjeWNsaXphdGlvbiBhbmQgb3hpZGF0aW9uIG9mIHRoZSBwcm90ZWluXHUyMDE5cyBvd24gU2VyLVR5ci1HbHkgc2VxdWVuY2UgYXQgcG9zaXRpb25zIDY1LTY3LiBDbG9uaW5nIG9mIHRoZSBjRE5BIGFuZCBoZXRlcm9sb2dvdXMgZXhwcmVzc2lvbiBvZiBmbHVvcmVzY2VudCBwcm90ZWluIGluIGEgd2lkZSB2YXJpZXR5IG9mIG9yZ2FuaXNtcyBpbmRpY2F0ZSB0aGF0IHRoaXMgdW5pcXVlIHBvc3R0cmFuc2xhdGlvbmFsIG1vZGlmaWNhdGlvbiBtdXN0IGJlIGVpdGhlciBzcG9udGFuZW91cyBvciBkZXBlbmRlbnQgb25seSBvbiB1YmlxdWl0b3VzIGVuenltZXMgYW5kIHJlYWN0YW50cy4gV2UgcmVwb3J0IHRoYXQgZm9ybWF0aW9uIG9mIHRoZSBmaW5hbCBmbHVvcm9waG9yZSByZXF1aXJlcyBtb2xlY3VsYXIgb3h5Z2VuIGFuZCBwcm9jZWVkcyB3aXRoIGEgdGltZSBjb25zdGFudCAoYXBwcm94aW1hdGVseSA0IGhyIGF0IDIyIGRlZ3JlZXMgQyBhbmQgYXRtb3NwaGVyaWMgcE8yKSBpbmRlcGVuZGVudCBvZiBkaWx1dGlvbiwgaW1wbHlpbmcgdGhhdCB0aGUgb3hpZGF0aW9uIGRvZXMgbm90IHJlcXVpcmUgZW56eW1lcyBvciBjb2ZhY3RvcnMuIEdGUCB3YXMgbXV0YWdlbml6ZWQgYW5kIHNjcmVlbmVkIGZvciB2YXJpYW50cyB3aXRoIGFsdGVyZWQgc3BlY3RyYS4gVGhlIG1vc3Qgc3RyaWtpbmcgbXV0YW50IGZsdW9yZXNjZWQgYmx1ZSBhbmQgY29udGFpbmVkIGhpc3RpZGluZSBpbiBwbGFjZSBvZiBUeXItNjYuIFRoZSBhdmFpbGFiaWxpdHkgb2YgdHdvIHZpc2libHkgZGlzdGluY3QgY29sb3JzIHNob3VsZCBzaWduaWZpY2FudGx5IGV4dGVuZCB0aGUgdXNlZnVsbmVzcyBvZiBHRlAgaW4gbW9sZWN1bGFyIGFuZCBjZWxsIGJpb2xvZ3kgYnkgZW5hYmxpbmcgaW4gdml2byB2aXN1YWxpemF0aW9uIG9mIGRpZmZlcmVudGlhbCBnZW5lIGV4cHJlc3Npb24gYW5kIHByb3RlaW4gbG9jYWxpemF0aW9uIGFuZCBtZWFzdXJlbWVudCBvZiBwcm90ZWluIGFzc29jaWF0aW9uIGJ5IGZsdW9yZXNjZW5jZSByZXNvbmFuY2UgZW5lcmd5IHRyYW5zZmVyLn1cbn1cbmAsYFxuICBAYXJ0aWNsZXtTaW1vbixcbiAgICB0aXRsZSAgICAgICAgPSB7UEVBUiwgYSBmbGV4aWJsZSBmbHVvcmVzY2VudCByZXBvcnRlciBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFuZCBlbnJpY2htZW50IG9mIHN1Y2Nlc3NmdWxseSBwcmltZSBlZGl0ZWQgY2VsbHN9LFxuICAgIGF1dGhvciAgICAgICA9IHtTaW1vbiwgRG9yb3R0eWEgQW5uYSBhbmQgVFx1MDBFMWxhcywgQW5kclx1MDBFMXMgYW5kIEt1bGNzXHUwMEUxciwgUFx1MDBFOXRlciBJc3R2XHUwMEUxbiBhbmQgQmljelx1MDBGM2ssIFpzdXpzYW5uYSBhbmQgS3JhdXN6LCBTYXJhaCBMYXVyYSBhbmQgVlx1MDBFMXJhZHksIEd5XHUwMEY2cmd5IGFuZCBXZWxrZXIsIEVydmlufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDIyLFxuICAgIG1vbnRoICAgICAgICA9IGZlYixcbiAgICBqb3VybmFsICAgICAgPSB7ZUxpZmV9LFxuICAgIHB1Ymxpc2hlciAgICA9IHtlTGlmZSBTY2llbmNlcyBQdWJsaWNhdGlvbnMsIEx0ZH0sXG4gICAgdm9sdW1lICAgICAgID0gMTEsXG4gICAgcGFnZXMgICAgICAgID0ge2U2OTUwNH0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjc1NTQvZUxpZmUuNjk1MDR9LFxuICAgIGlzc24gICAgICAgICA9IHsyMDUwLTA4NFh9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtQcmltZSBlZGl0aW5nIGlzIGEgcmVjZW50bHkgZGV2ZWxvcGVkIENSSVNQUi9DYXM5IGJhc2VkIGdlbmUgZW5naW5lZXJpbmcgdG9vbCB0aGF0IGFsbG93cyB0aGUgaW50cm9kdWN0aW9uIG9mIHNob3J0IGluc2VydGlvbnMsIGRlbGV0aW9ucywgYW5kIHN1YnN0aXR1dGlvbnMgaW50byB0aGUgZ2Vub21lLiBIb3dldmVyLCB0aGUgZWZmaWNpZW5jeSBvZiBwcmltZSBlZGl0aW5nLCB3aGljaCB0eXBpY2FsbHkgYWNoaWV2ZXMgZWRpdGluZyByYXRlcyBvZiBhcm91bmQgMTAlXHUyMDEzMzAlLCBoYXMgbm90IG1hdGNoZWQgaXRzIHZlcnNhdGlsaXR5LiBIZXJlLCB3ZSBpbnRyb2R1Y2UgdGhlIHByaW1lIGVkaXRvciBhY3Rpdml0eSByZXBvcnRlciAoUEVBUiksIGEgc2Vuc2l0aXZlIGZsdW9yZXNjZW50IHRvb2wgZm9yIGlkZW50aWZ5aW5nIHNpbmdsZSBjZWxscyB3aXRoIHByaW1lIGVkaXRpbmcgYWN0aXZpdHkuIFBFQVIgaGFzIG5vIGJhY2tncm91bmQgZmx1b3Jlc2NlbmNlIGFuZCBzcGVjaWZpY2FsbHkgaW5kaWNhdGVzIHByaW1lIGVkaXRpbmcgZXZlbnRzLiBJdHMgZGVzaWduIHByb3ZpZGVzIGFwcGFyZW50bHkgdW5saW1pdGVkIGZsZXhpYmlsaXR5IGZvciBzZXF1ZW5jZSB2YXJpYXRpb24gYWxvbmcgdGhlIGVudGlyZSBsZW5ndGggb2YgdGhlIHNwYWNlciBzZXF1ZW5jZSwgbWFraW5nIGl0IHVuaXF1ZWx5IHN1aXRlZCBmb3Igc3lzdGVtYXRpYyBpbnZlc3RpZ2F0aW9uIG9mIHNlcXVlbmNlIGZlYXR1cmVzIHRoYXQgaW5mbHVlbmNlIHByaW1lIGVkaXRpbmcgYWN0aXZpdHkuIFRoZSB1c2Ugb2YgUEVBUiBhcyBhbiBlbnJpY2htZW50IG1hcmtlciBmb3IgcHJpbWUgZWRpdGluZyBjYW4gaW5jcmVhc2UgdGhlIGVkaXRlZCBwb3B1bGF0aW9uIGJ5IHVwIHRvIDg0JSwgdGh1cyBzaWduaWZpY2FudGx5IGltcHJvdmluZyB0aGUgYXBwbGljYWJpbGl0eSBvZiBwcmltZSBlZGl0aW5nIGZvciBiYXNpYyByZXNlYXJjaCBhbmQgYmlvdGVjaG5vbG9naWNhbCBhcHBsaWNhdGlvbnMufSxcbiAgICBlZGl0b3IgICAgICAgPSB7TGFwaW5haXRlLCBBdWRyb25lIGFuZCBTdGFpbmllciwgRGlkaWVyIFlSIGFuZCBIYW1pbHRvbiwgSmVubmlmZXIgUn1cbiAgfVxuYFxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEVuZ1BFc3lzdGVtcygpe1xuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG59XG5cblxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcbiAgYEBhcnRpY2xle0FuemFsb25lX1JhbmRvbHBoX0RhdmlzX1NvdXNhX0tvYmxhbl9MZXZ5X0NoZW5fV2lsc29uX05ld2J5X1JhZ3VyYW1fMjAxOSxcbiAgICB0aXRsZSAgICAgICAgPSB7U2VhcmNoLWFuZC1yZXBsYWNlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BfSxcbiAgICBhdXRob3IgICAgICAgPSB7QW56YWxvbmUsIEFuZHJldyBWLiBhbmQgUmFuZG9scGgsIFBleXRvbiBCLiBhbmQgRGF2aXMsIEplc3NpZSBSLiBhbmQgU291c2EsIEFsZXhhbmRlciBBLiBhbmQgS29ibGFuLCBMdWtlIFcuIGFuZCBMZXZ5LCBKb25hdGhhbiBNLiBhbmQgQ2hlbiwgUGV0ZXIgSi4gYW5kIFdpbHNvbiwgQ2hyaXN0b3BoZXIgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIExpdSwgRGF2aWQgUi59LFxuICAgIHllYXIgICAgICAgICA9IDIwMTksXG4gICAgbW9udGggICAgICAgID0gZGVjLFxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmV9LFxuICAgIHB1Ymxpc2hlciAgICA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sXG4gICAgdm9sdW1lICAgICAgID0gNTc2LFxuICAgIG51bWJlciAgICAgICA9IDc3ODUsXG4gICAgcGFnZXMgICAgICAgID0gezE0OVx1MjAxMzE1N30sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTg2LTAxOS0xNzExLTR9LFxuICAgIGlzc24gICAgICAgICA9IHsxNDc2LTQ2ODd9LFxuICAgIHJpZ2h0cyAgICAgICA9IHsyMDE5IFRoZSBBdXRob3IocyksIHVuZGVyIGV4Y2x1c2l2ZSBsaWNlbmNlIHRvIFNwcmluZ2VyIE5hdHVyZSBMaW1pdGVkfSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7TW9zdCBnZW5ldGljIHZhcmlhbnRzIHRoYXQgY29udHJpYnV0ZSB0byBkaXNlYXNlMSBhcmUgY2hhbGxlbmdpbmcgdG8gY29ycmVjdCBlZmZpY2llbnRseSBhbmQgd2l0aG91dCBleGNlc3MgYnlwcm9kdWN0czJcdTIwMTM1LiBIZXJlIHdlIGRlc2NyaWJlIHByaW1lIGVkaXRpbmcsIGEgdmVyc2F0aWxlIGFuZCBwcmVjaXNlIGdlbm9tZSBlZGl0aW5nIG1ldGhvZCB0aGF0IGRpcmVjdGx5IHdyaXRlcyBuZXcgZ2VuZXRpYyBpbmZvcm1hdGlvbiBpbnRvIGEgc3BlY2lmaWVkIEROQSBzaXRlIHVzaW5nIGEgY2F0YWx5dGljYWxseSBpbXBhaXJlZCBDYXM5IGVuZG9udWNsZWFzZSBmdXNlZCB0byBhbiBlbmdpbmVlcmVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgcHJvZ3JhbW1lZCB3aXRoIGEgcHJpbWUgZWRpdGluZyBndWlkZSBSTkEgKHBlZ1JOQSkgdGhhdCBib3RoIHNwZWNpZmllcyB0aGUgdGFyZ2V0IHNpdGUgYW5kIGVuY29kZXMgdGhlIGRlc2lyZWQgZWRpdC4gV2UgcGVyZm9ybWVkIG1vcmUgdGhhbiAxNzUgZWRpdHMgaW4gaHVtYW4gY2VsbHMsIGluY2x1ZGluZyB0YXJnZXRlZCBpbnNlcnRpb25zLCBkZWxldGlvbnMsIGFuZCBhbGwgMTIgdHlwZXMgb2YgcG9pbnQgbXV0YXRpb24sIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQSB0ZW1wbGF0ZXMuIFdlIHVzZWQgcHJpbWUgZWRpdGluZyBpbiBodW1hbiBjZWxscyB0byBjb3JyZWN0LCBlZmZpY2llbnRseSBhbmQgd2l0aCBmZXcgYnlwcm9kdWN0cywgdGhlIHByaW1hcnkgZ2VuZXRpYyBjYXVzZXMgb2Ygc2lja2xlIGNlbGwgZGlzZWFzZSAocmVxdWlyaW5nIGEgdHJhbnN2ZXJzaW9uIGluIEhCQikgYW5kIFRheVx1MjAxM1NhY2hzIGRpc2Vhc2UgKHJlcXVpcmluZyBhIGRlbGV0aW9uIGluIEhFWEEpOyB0byBpbnN0YWxsIGEgcHJvdGVjdGl2ZSB0cmFuc3ZlcnNpb24gaW4gUFJOUDsgYW5kIHRvIGluc2VydCB2YXJpb3VzIHRhZ3MgYW5kIGVwaXRvcGVzIHByZWNpc2VseSBpbnRvIHRhcmdldCBsb2NpLiBGb3VyIGh1bWFuIGNlbGwgbGluZXMgYW5kIHByaW1hcnkgcG9zdC1taXRvdGljIG1vdXNlIGNvcnRpY2FsIG5ldXJvbnMgc3VwcG9ydCBwcmltZSBlZGl0aW5nIHdpdGggdmFyeWluZyBlZmZpY2llbmNpZXMuIFByaW1lIGVkaXRpbmcgc2hvd3MgaGlnaGVyIG9yIHNpbWlsYXIgZWZmaWNpZW5jeSBhbmQgZmV3ZXIgYnlwcm9kdWN0cyB0aGFuIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgaGFzIGNvbXBsZW1lbnRhcnkgc3RyZW5ndGhzIGFuZCB3ZWFrbmVzc2VzIGNvbXBhcmVkIHRvIGJhc2UgZWRpdGluZywgYW5kIGluZHVjZXMgbXVjaCBsb3dlciBvZmYtdGFyZ2V0IGVkaXRpbmcgdGhhbiBDYXM5IG51Y2xlYXNlIGF0IGtub3duIENhczkgb2ZmLXRhcmdldCBzaXRlcy4gUHJpbWUgZWRpdGluZyBzdWJzdGFudGlhbGx5IGV4cGFuZHMgdGhlIHNjb3BlIGFuZCBjYXBhYmlsaXRpZXMgb2YgZ2Vub21lIGVkaXRpbmcsIGFuZCBpbiBwcmluY2lwbGUgY291bGQgY29ycmVjdCB1cCB0byA4OSUgb2Yga25vd24gZ2VuZXRpYyB2YXJpYW50cyBhc3NvY2lhdGVkIHdpdGggaHVtYW4gZGlzZWFzZXMufSxcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XG4gIH1gLFxuICBgQGFydGljbGV7SmluZWtfQ2h5bGluc2tpX0ZvbmZhcmFfSGF1ZXJfRG91ZG5hX0NoYXJwZW50aWVyXzIwMTIsXG4gICAgdGl0bGUgICAgICAgID0ge0EgcHJvZ3JhbW1hYmxlIGR1YWwgUk5BLWd1aWRlZCBETkEgZW5kb251Y2xlYXNlIGluIGFkYXB0aXZlIGJhY3RlcmlhbCBpbW11bml0eX0sXG4gICAgYXV0aG9yICAgICAgID0ge0ppbmVrLCBNYXJ0aW4gYW5kIENoeWxpbnNraSwgS3J6eXN6dG9mIGFuZCBGb25mYXJhLCBJbmVzIGFuZCBIYXVlciwgTWljaGFlbCBhbmQgRG91ZG5hLCBKZW5uaWZlciBBLiBhbmQgQ2hhcnBlbnRpZXIsIEVtbWFudWVsbGV9LFxuICAgIHllYXIgICAgICAgICA9IDIwMTIsXG4gICAgbW9udGggICAgICAgID0gYXVnLFxuICAgIGpvdXJuYWwgICAgICA9IHtTY2llbmNlfSxcbiAgICB2b2x1bWUgICAgICAgPSAzMzcsXG4gICAgbnVtYmVyICAgICAgID0gNjA5NixcbiAgICBwYWdlcyAgICAgICAgPSB7ODE2XHUyMDEzODIxfSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTEyNi9zY2llbmNlLjEyMjU4Mjl9LFxuICAgIGlzc24gICAgICAgICA9IHswMDM2LTgwNzV9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtDUklTUFIvQ2FzIHN5c3RlbXMgcHJvdmlkZSBiYWN0ZXJpYSBhbmQgYXJjaGFlYSB3aXRoIGFkYXB0aXZlIGltbXVuaXR5IGFnYWluc3QgdmlydXNlcyBhbmQgcGxhc21pZHMgYnkgdXNpbmcgY3JSTkFzIHRvIGd1aWRlIHRoZSBzaWxlbmNpbmcgb2YgaW52YWRpbmcgbnVjbGVpYyBhY2lkcy4gV2Ugc2hvdyBoZXJlIHRoYXQgaW4gYSBzdWJzZXQgb2YgdGhlc2Ugc3lzdGVtcywgdGhlIG1hdHVyZSBjclJOQSBiYXNlLXBhaXJlZCB0byB0cmFucy1hY3RpdmF0aW5nIHRyYWNyUk5BIGZvcm1zIGEgdHdvLVJOQSBzdHJ1Y3R1cmUgdGhhdCBkaXJlY3RzIHRoZSBDUklTUFItYXNzb2NpYXRlZCBwcm90ZWluIENhczkgdG8gaW50cm9kdWNlIGRvdWJsZS1zdHJhbmRlZCAoZHMpIGJyZWFrcyBpbiB0YXJnZXQgRE5BLiBBdCBzaXRlcyBjb21wbGVtZW50YXJ5IHRvIHRoZSBjclJOQS1ndWlkZSBzZXF1ZW5jZSwgdGhlIENhczkgSE5IIG51Y2xlYXNlIGRvbWFpbiBjbGVhdmVzIHRoZSBjb21wbGVtZW50YXJ5IHN0cmFuZCB3aGlsZSB0aGUgQ2FzOSBSdXZDLWxpa2UgZG9tYWluIGNsZWF2ZXMgdGhlIG5vbi1jb21wbGVtZW50YXJ5IHN0cmFuZC4gVGhlIGR1YWwtdHJhY3JSTkE6Y3JSTkEsIHdoZW4gZW5naW5lZXJlZCBhcyBhIHNpbmdsZSBSTkEgY2hpbWVyYSwgYWxzbyBkaXJlY3RzIHNlcXVlbmNlLXNwZWNpZmljIENhczkgZHNETkEgY2xlYXZhZ2UuIE91ciBzdHVkeSByZXZlYWxzIGEgZmFtaWx5IG9mIGVuZG9udWNsZWFzZXMgdGhhdCB1c2UgZHVhbC1STkFzIGZvciBzaXRlLXNwZWNpZmljIEROQSBjbGVhdmFnZSBhbmQgaGlnaGxpZ2h0cyB0aGUgcG90ZW50aWFsIHRvIGV4cGxvaXQgdGhlIHN5c3RlbSBmb3IgUk5BLXByb2dyYW1tYWJsZSBnZW5vbWUgZWRpdGluZy4sIEEgdHdvLVJOQSBzdHJ1Y3R1cmUgZGlyZWN0cyBhbiBlbmRvbnVjbGVhc2UgdG8gY2xlYXZlIHRhcmdldCBETkEufVxuICB9YCxcbiAgYEBhcnRpY2xle0dhb19SYXZlbmRyYW5fTWlra2Vsc2VuX0hhbGRydXBfQ2FpX0RpbmdfUGFsdWRhbl9UaG9tc2VuX01pa2tlbHNlbl9CYWtfMjAyMixcbiAgICB0aXRsZSAgICAgICAgPSB7QSB0cnVuY2F0ZWQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGVuaGFuY2VzIHByaW1lIGVkaXRpbmcgYnkgc3BsaXQgQUFWIHZlY3RvcnN9LFxuICAgIGF1dGhvciAgICAgICA9IHtHYW8sIFpvbmdsaWFuZyBhbmQgUmF2ZW5kcmFuLCBTdWphbiBhbmQgTWlra2Vsc2VuLCBOYW5uYSBTLiBhbmQgSGFsZHJ1cCwgSmFrb2IgYW5kIENhaSwgSHVpcWlhbmcgYW5kIERpbmcsIFhpYW5nbmluZyBhbmQgUGFsdWRhbiwgU1x1MDBGOHJlbiBSLiBhbmQgVGhvbXNlbiwgTWFydGluIEsuIGFuZCBNaWtrZWxzZW4sIEphY29iIEdpZWhtIGFuZCBCYWssIFJhc211cyBPLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMixcbiAgICBtb250aCAgICAgICAgPSBzZXAsXG4gICAgam91cm5hbCAgICAgID0ge01vbGVjdWxhciBUaGVyYXB5fSxcbiAgICBwdWJsaXNoZXIgICAgPSB7RWxzZXZpZXJ9LFxuICAgIHZvbHVtZSAgICAgICA9IDMwLFxuICAgIG51bWJlciAgICAgICA9IDksXG4gICAgcGFnZXMgICAgICAgID0gezI5NDJcdTIwMTMyOTUxfSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnltdGhlLjIwMjIuMDcuMDAxfSxcbiAgICBpc3NuICAgICAgICAgPSB7MTUyNS0wMDE2LCAxNTI1LTAwMjR9LFxuICAgIGxhbmd1YWdlICAgICA9IHtFbmdsaXNofVxuICB9YCxcbiAgYEBhcnRpY2xle0NoZW5fSHVzc21hbm5fWWFuX0tuaXBwaW5nX1JhdmlzYW5rYXJfQ2hlbl9DaGVuX05lbHNvbl9OZXdieV9TYWhpbl8yMDIxLFxuICAgIHRpdGxlICAgICAgICA9IHtFbmhhbmNlZCBwcmltZSBlZGl0aW5nIHN5c3RlbXMgYnkgbWFuaXB1bGF0aW5nIGNlbGx1bGFyIGRldGVybWluYW50cyBvZiBlZGl0aW5nIG91dGNvbWVzfSxcbiAgICBhdXRob3IgICAgICAgPSB7Q2hlbiwgUGV0ZXIgSi4gYW5kIEh1c3NtYW5uLCBKZWZmcmV5IEEuIGFuZCBZYW4sIEp1biBhbmQgS25pcHBpbmcsIEZyaWVkZXJpa2UgYW5kIFJhdmlzYW5rYXIsIFB1cm5pbWEgYW5kIENoZW4sIFBpbi1GYW5nIGFuZCBDaGVuLCBDaWRpIGFuZCBOZWxzb24sIEphbWVzIFcuIGFuZCBOZXdieSwgR3JlZ29yeSBBLiBhbmQgU2FoaW4sIE11c3RhZmEgYW5kIE9zYm9ybiwgTWFyayBKLiBhbmQgV2Vpc3NtYW4sIEpvbmF0aGFuIFMuIGFuZCBBZGFtc29uLCBCcml0dCBhbmQgTGl1LCBEYXZpZCBSLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMSxcbiAgICBtb250aCAgICAgICAgPSBvY3QsXG4gICAgam91cm5hbCAgICAgID0ge0NlbGx9LFxuICAgIHZvbHVtZSAgICAgICA9IDE4NCxcbiAgICBudW1iZXIgICAgICAgPSAyMixcbiAgICBwYWdlcyAgICAgICAgPSB7NTYzNS0tNTY1Mn0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMTYvai5jZWxsLjIwMjEuMDkuMDE4fSxcbiAgICBpc3NuICAgICAgICAgPSB7MDA5Mi04Njc0fSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7V2hpbGUgcHJpbWUgZWRpdGluZyBlbmFibGVzIHByZWNpc2Ugc2VxdWVuY2UgY2hhbmdlcyBpbiBETkEsIGNlbGx1bGFyIGRldGVybWluYW50cyBvZiBwcmltZSBlZGl0aW5nIHJlbWFpbiBwb29ybHkgdW5kZXJzdG9vZC4gVXNpbmcgcG9vbGVkIENSSVNQUmkgc2NyZWVucywgd2UgZGlzY292ZXJlZCB0aGF0IEROQSBtaXNtYXRjaCByZXBhaXIgKE1NUikgaW1wZWRlcyBwcmltZSBlZGl0aW5nIGFuZCBwcm9tb3RlcyB1bmRlc2lyZWQgaW5kZWwgYnlwcm9kdWN0cy4gV2UgZGV2ZWxvcGVkIFBFNCBhbmQgUEU1IHByaW1lIGVkaXRpbmcgc3lzdGVtcyBpbiB3aGljaCB0cmFuc2llbnQgZXhwcmVzc2lvbiBvZiBhbiBlbmdpbmVlcmVkIE1NUi1pbmhpYml0aW5nIHByb3RlaW4gZW5oYW5jZXMgdGhlIGVmZmljaWVuY3kgb2Ygc3Vic3RpdHV0aW9uLCBzbWFsbCBpbnNlcnRpb24sIGFuZCBzbWFsbCBkZWxldGlvbiBwcmltZSBlZGl0cyBieSBhbiBhdmVyYWdlIDcuNy1mb2xkIGFuZCAyLjAtZm9sZCBjb21wYXJlZCB0byBQRTIgYW5kIFBFMyBzeXN0ZW1zLCByZXNwZWN0aXZlbHksIHdoaWxlIGltcHJvdmluZyBlZGl0L2luZGVsIHJhdGlvcyBieSAzLjQtZm9sZCBpbiBNTVItcHJvZmljaWVudCBjZWxsIHR5cGVzLiBTdHJhdGVnaWMgaW5zdGFsbGF0aW9uIG9mIHNpbGVudCBtdXRhdGlvbnMgbmVhciB0aGUgaW50ZW5kZWQgZWRpdCBjYW4gZW5oYW5jZSBwcmltZSBlZGl0aW5nIG91dGNvbWVzIGJ5IGV2YWRpbmcgTU1SLiBQcmltZSBlZGl0b3IgcHJvdGVpbiBvcHRpbWl6YXRpb24gcmVzdWx0ZWQgaW4gYSBQRW1heCBhcmNoaXRlY3R1cmUgdGhhdCBlbmhhbmNlcyBlZGl0aW5nIGVmZmljYWN5IGJ5IDIuOC1mb2xkIG9uIGF2ZXJhZ2UgaW4gSGVMYSBjZWxscy4gVGhlc2UgZmluZGluZ3MgZW5yaWNoIG91ciB1bmRlcnN0YW5kaW5nIG9mIHByaW1lIGVkaXRpbmcgYW5kIGVzdGFibGlzaCBwcmltZSBlZGl0aW5nIHN5c3RlbXMgdGhhdCBzaG93IHN1YnN0YW50aWFsIGltcHJvdmVtZW50IGFjcm9zcyAxOTEgZWRpdHMgaW4gc2V2ZW4gbWFtbWFsaWFuIGNlbGwgdHlwZXMufVxuICB9YCxcbiAgYEBhcnRpY2xle1RvbWVyX0J1ZXJtZXllcl9OZ3V5ZW5fTGlza2F5XzIwMDIsXG4gICAgdGl0bGUgICAgICAgID0ge0NvbnRyaWJ1dGlvbiBvZiBIdW1hbiBNbGgxIGFuZCBQbXMyIEFUUGFzZSBBY3Rpdml0aWVzIHRvIEROQSBNaXNtYXRjaCBSZXBhaXJ9LFxuICAgIGF1dGhvciAgICAgICA9IHtUb21lciwgR3V5IGFuZCBCdWVybWV5ZXIsIEFuZHJldyBCLiBhbmQgTmd1eWVuLCBNZWdhbiBNLiBhbmQgTGlza2F5LCBSLiBNaWNoYWVsfSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDAyLFxuICAgIG1vbnRoICAgICAgICA9IGp1bixcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBCaW9sb2dpY2FsIENoZW1pc3RyeX0sXG4gICAgdm9sdW1lICAgICAgID0gMjc3LFxuICAgIG51bWJlciAgICAgICA9IDI0LFxuICAgIHBhZ2VzICAgICAgICA9IHsyMTgwMVx1MjAxMzIxODA5fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTA3NC9qYmMuTTExMTM0MjIwMH0sXG4gICAgaXNzbiAgICAgICAgID0gezAwMjEtOTI1OH0sXG4gICAgYWJzdHJhY3Rub3RlID0ge011dExcdTAzQjEsIGEgaGV0ZXJvZGltZXIgY29tcG9zZWQgb2YgTWxoMSBhbmQgUG1zMiwgaXMgdGhlIG1ham9yIE11dEwgYWN0aXZpdHkgaW4gbWFtbWFsaWFuIEROQSBtaXNtYXRjaCByZXBhaXIuIEhpZ2hseSBjb25zZXJ2ZWQgbW90aWZzIGluIHRoZSBOIHRlcm1pbmkgb2YgYm90aCBzdWJ1bml0cyBwcmVkaWN0IHRoYXQgdGhlIHByb3RlaW4gaXMgYW4gQVRQYXNlLiBUbyBzdHVkeSB0aGUgc2lnbmlmaWNhbmNlIG9mIHRoZXNlIG1vdGlmcyB0byBtaXNtYXRjaCByZXBhaXIsIHdlIGhhdmUgZXhwcmVzc2VkIGluIGluc2VjdCBjZWxscyB3aWxkIHR5cGUgaHVtYW4gTXV0TFx1MDNCMSBhbmQgZm9ybXMgYWx0ZXJlZCBpbiBjb25zZXJ2ZWQgZ2x1dGFtaWMgYWNpZCByZXNpZHVlcywgcHJlZGljdGVkIHRvIGNhdGFseXplIEFUUCBoeWRyb2x5c2lzIG9mIE1saDEsIFBtczIsIG9yIGJvdGguIFVzaW5nIGFuIGluIHZpdHJvIGFzc2F5LCB3ZSBzaG93ZWQgdGhhdCBNdXRMXHUwM0IxIHByb3RlaW5zIGFsdGVyZWQgaW4gZWl0aGVyIGdsdXRhbWljIGFjaWQgcmVzaWR1ZSB3ZXJlIGVhY2ggcGFydGlhbGx5IGRlZmVjdGl2ZSBpbiBtaXNtYXRjaCByZXBhaXIsIHdoZXJlYXMgdGhlIGRvdWJsZSBtdXRhbnQgc2hvd2VkIG5vIGRldGVjdGFibGUgbWlzbWF0Y2ggcmVwYWlyLiBOZWl0aGVyIHN0cmFuZCBzcGVjaWZpY2l0eSBub3IgZGlyZWN0aW9uYWxpdHkgb2YgcmVwYWlyIHdhcyBhZmZlY3RlZCBpbiB0aGUgc2luZ2xlIG11dGFudCBwcm90ZWlucy4gTGltaXRlZCBwcm90ZW9seXNpcyBzdHVkaWVzIG9mIE11dExcdTAzQjEgZGVtb25zdHJhdGVkIHRoYXQgYm90aCBNbGgxIGFuZCBQbXMyIE4tdGVybWluYWwgZG9tYWlucyB1bmRlcmdvIEFUUC1pbmR1Y2VkIGNvbmZvcm1hdGlvbmFsIGNoYW5nZXMsIGJ1dCB0aGUgZXh0ZW50IG9mIHRoZSBjb25mb3JtYXRpb25hbCBjaGFuZ2UgZm9yIE1saDEgd2FzIG1vcmUgYXBwYXJlbnQgdGhhbiBmb3IgUG1zMi4gRnVydGhlcm1vcmUsIE1saDEgd2FzIHByb3RlY3RlZCBhdCBsb3dlciBBVFAgY29uY2VudHJhdGlvbnMgdGhhbiBQbXMyLCBzdWdnZXN0aW5nIE1saDEgYmluZHMgQVRQIHdpdGggaGlnaGVyIGFmZmluaXR5LiBUaGVzZSBmaW5kaW5ncyBpbXBseSB0aGF0IEFUUCBoeWRyb2x5c2lzIGlzIHJlcXVpcmVkIGZvciBNdXRMXHUwM0IxIGFjdGl2aXR5IGluIG1pc21hdGNoIHJlcGFpciBhbmQgdGhhdCB0aGlzIGFjdGl2aXR5IGlzIGFzc29jaWF0ZWQgd2l0aCBkaWZmZXJlbnRpYWwgY29uZm9ybWF0aW9uYWwgY2hhbmdlcyBpbiBNbGgxIGFuZCBQbXMyLn1cbiAgfWAsXG4gIGBAYXJ0aWNsZXtXdV9Db3JiZXR0X0JlcmxhbmRfMjAwOSxcbiAgICB0aXRsZSAgICAgICAgPSB7VGhlIEludHJhY2VsbHVsYXIgTW9iaWxpdHkgb2YgTnVjbGVhciBJbXBvcnQgUmVjZXB0b3JzIGFuZCBOTFMgQ2FyZ29lc30sXG4gICAgYXV0aG9yICAgICAgID0ge1d1LCBKaWFucm9uZyBhbmQgQ29yYmV0dCwgQW5pdGEgSC4gYW5kIEJlcmxhbmQsIEtlaXRoIE0ufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDA5LFxuICAgIG1vbnRoICAgICAgICA9IG1heSxcbiAgICBqb3VybmFsICAgICAgPSB7QmlvcGh5c2ljYWwgSm91cm5hbH0sXG4gICAgdm9sdW1lICAgICAgID0gOTYsXG4gICAgbnVtYmVyICAgICAgID0gOSxcbiAgICBwYWdlcyAgICAgICAgPSB7Mzg0MFx1MjAxMzM4NDl9LFxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDE2L2ouYnBqLjIwMDkuMDEuMDUwfSxcbiAgICBpc3NuICAgICAgICAgPSB7MDAwNi0zNDk1fSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7V2UgaGF2ZSBpbnZlc3RpZ2F0ZWQgY2xhc3NpY2FsIG51Y2xlYXIgbG9jYWxpemF0aW9uIHNlcXVlbmNlIChOTFMpIG1lZGlhdGVkIHByb3RlaW4gdHJhZmZpY2tpbmcgYnkgbWVhc3VyaW5nIGJpb21vbGVjdWxhciBkeW5hbWljcyB3aXRoaW4gbGl2aW5nIGNlbGxzIHVzaW5nIHR3by1waG90b24gZmx1b3Jlc2NlbmNlIGNvcnJlbGF0aW9uIHNwZWN0cm9zY29weS4gQnkgZGlyZWN0bHkgb2JzZXJ2aW5nIHRoZSBiZWhhdmlvciBvZiBzcGVjaWZpYyBtb2xlY3VsZXMgaW4gdGhlaXIgbmF0aXZlIGNlbGx1bGFyIGVudmlyb25tZW50LCBpdCBpcyBwb3NzaWJsZSB0byB1bmNvdmVyIGZ1bmN0aW9uYWwgZGV0YWlscyB0aGF0IGFyZSBub3QgYXBwYXJlbnQgZnJvbSB0cmFkaXRpb25hbCBiaW9jaGVtaWNhbCBpbnZlc3RpZ2F0aW9ucyBvciBmdW5jdGlvbmFsIGFzc2F5cy4gV2Ugc2hvdyB0aGF0IHRoZSBpbnRyYWNlbGx1bGFyIG1vYmlsaXR5IG9mIE5MUyBjYXJnb2VzIGFuZCB0aGVpciBpbXBvcnQgcmVjZXB0b3IgcHJvdGVpbnMsIGthcnlvcGhlcmluLVx1MDNCMSBhbmQga2FyeW9waGVyaW4tXHUwM0IyLCBjYW4gYmUgcm9idXN0bHkgbWVhc3VyZWQgYW5kIHRoYXQgcXVhbnRpdGF0aXZlIGNvbXBhcmlzb24gb2YgaW50cmFjZWxsdWxhciBkaWZmdXNpb24gY29lZmZpY2llbnRzIHByb3ZpZGVzIG5ldyBpbnNpZ2h0cyBpbnRvIG51Y2xlYXIgdHJhbnNwb3J0IG1lY2hhbmlzbXMuIEltcG9ydCBjYXJnbyBjb21wbGV4ZXMgYXJlIGFzc2VtYmxlZCB0aHJvdWdob3V0IHRoZSBjeXRvcGxhc20sIGFuZCB0aGVpciBkaWZmdXNpb24gaXMgc2xvd2VyIHRoYW4gcHJlZGljdGVkIGJ5IG1vbGVjdWxhciB3ZWlnaHQgZHVlIHRvIHNwZWNpZmljIGludGVyYWN0aW9ucy4gQW5hbHlzaXMgb2YgTkxTIGNhcmdvIGRpZmZ1c2lvbiBpbiB0aGUgY3l0b3BsYXNtIGluZGljYXRlcyB0aGF0IHRoZXNlIGludGVyYWN0aW9ucyBhcmUgbGlrZWx5IGRpc3J1cHRlZCBieSBOTFMgY2FyZ28gYmluZGluZy4gT3VyIHJlc3VsdHMgc3VnZ2VzdCB0aGF0IGRlbGl2ZXJ5IG9mIGltcG9ydCByZWNlcHRvcnMgYW5kIE5MUyBjYXJnb2VzIHRvIG51Y2xlYXIgcG9yZXMgbWF5IGNvbXBsZW1lbnQgc2VsZWN0aXZlIHRyYW5zbG9jYXRpb24gdGhyb3VnaCB0aGUgcG9yZXMgYXMgYSBmdW5jdGlvbmFsIG1lY2hhbmlzbSBmb3IgcmVndWxhdGluZyB0cmFuc3BvcnQgb2YgcHJvdGVpbnMgaW50byB0aGUgbnVjbGV1cy59XG4gIH1gLFxuICBgQGFydGljbGV7RGFuZ19MZWVfMTk4OCxcbiAgICB0aXRsZSAgICAgICAgPSB7SWRlbnRpZmljYXRpb24gb2YgdGhlIGh1bWFuIGMtbXljIHByb3RlaW4gbnVjbGVhciB0cmFuc2xvY2F0aW9uIHNpZ25hbH0sXG4gICAgYXV0aG9yICAgICAgID0ge0RhbmcsIEMuVi4gYW5kIExlZSwgVy5NLkYufSxcbiAgICB5ZWFyICAgICAgICAgPSAxOTg4LFxuICAgIGpvdXJuYWwgICAgICA9IHtNb2xlY3VsYXIgYW5kIENlbGx1bGFyIEJpb2xvZ3l9LFxuICAgIHZvbHVtZSAgICAgICA9IDgsXG4gICAgbnVtYmVyICAgICAgID0gMTAsXG4gICAgcGFnZXMgICAgICAgID0gezQwNDhcdTIwMTM0MDU0fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTEyOC9NQ0IuOC4xMC40MDQ4fVxuICB9YCxcbiAgYEBhcnRpY2xle1NwZW5jZXJfWmhhbmdfMjAxNyxcbiAgICB0aXRsZSAgICAgICAgPSB7RGVlcCBtdXRhdGlvbmFsIHNjYW5uaW5nIG9mIFMuIHB5b2dlbmVzIENhczkgcmV2ZWFscyBpbXBvcnRhbnQgZnVuY3Rpb25hbCBkb21haW5zfSxcbiAgICBhdXRob3IgICAgICAgPSB7U3BlbmNlciwgSi5NLiBhbmQgWmhhbmcsIFgufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDE3LFxuICAgIGpvdXJuYWwgICAgICA9IHtTY2llbnRpZmljIFJlcG9ydHN9LFxuICAgIHZvbHVtZSAgICAgICA9IDcsXG4gICAgbnVtYmVyICAgICAgID0gMSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1OTgtMDE3LTE3MDgxLXl9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZXMgKFJHRU5zKSBoYXZlIGludmlnb3JhdGVkIHRoZSBmaWVsZCBvZiBzaXRlLXNwZWNpZmljIG51Y2xlYXNlcy4gVGhlIHN1Y2Nlc3Mgb2YgU3RyZXB0b2NvY2N1cyBweW9nZW5lcyBDYXM5IChTcENhczkpIGhhcyBsZWQgdG8gdGhlIGRpc2NvdmVyeSBvZiBzZXZlcmFsIG90aGVyIENSSVNQUi1Bc3NvY2lhdGVkIFJHRU5zLiBBcyBtb3JlIFJHRU5zIGJlY29tZSBhdmFpbGFibGUsIGl0IHdpbGwgYmUgbmVjZXNzYXJ5IHRvIHJlZmluZSB0aGVpciBhY3Rpdml0eSBiZWZvcmUgdGhleSBjYW4gYmUgdHJhbnNsYXRlZCBpbnRvIHRoZSBjbGluaWMuIFdpdGggdGhpcyBpbiBtaW5kLCB3ZSBzb3VnaHQgdG8gZGVtb25zdHJhdGUgaG93IGRlZXAgbXV0YXRpb25hbCBzY2FubmluZyAoRE1TKSBjb3VsZCBwcm92aWRlIGRldGFpbHMgYWJvdXQgaW1wb3J0YW50IGZ1bmN0aW9uYWwgcmVnaW9ucyBpbiBTcENhczkgYW5kIHNwZWVkIGVuZ2luZWVyaW5nIGVmZm9ydHMuIENvbnNlcXVlbnRseSwgd2UgZGV2ZWxvcGVkIGEgbnVjbGVhc2Ugc2NyZWVuaW5nIHBsYXRmb3JtIHdoaWNoIGNvdWxkIGRpc3Rpbmd1aXNoIGFjdGl2ZSBDYXM5IG11dGFudHMuIFdlIHNjcmVlbmVkIGEgbGlicmFyeSBvZiAxLjkgXHUwMEQ3IDEwNyB3aXRoIG92ZXIgODUwMCBwb3NzaWJsZSBub24tc3lub255bW91cyBtdXRhdGlvbnMgYW5kIGluZmVycmVkIHRoZSBlZmZlY3RzIG9mIGVhY2ggbXV0YXRpb24gdXNpbmcgRE1TLiBXZSBkZW1vbnN0cmF0ZSB0aGF0IHRoZSBSdXZDIGFuZCBITkggZG9tYWlucyBhcmUgdGhlIGxlYXN0IHRvbGVyYW50IHJlZ2lvbnMgdG8gbXV0YXRpb24uIEluIGNvbnRyYXN0LCB0aGUgUmVjMiBhbmQgUEkgZG9tYWlucyB0b2xlcmF0ZSBtdXRhdGlvbiBiZXR0ZXIgdGhhbiBvdGhlciByZWdpb25zLiBUaGUgbXV0YXRpb24gaW5mb3JtYXRpb24gZGVmaW5lZCBpbiB0aGlzIHdvcmsgcHJvdmlkZXMgYSBmb3VuZGF0aW9uIGZvciBmdXJ0aGVyIFNwQ2FzOSBlbmdpbmVlcmluZy4gVG9nZXRoZXIsIG91ciByZXN1bHRzIGRlbW9uc3RyYXRlIGhvdyBETVMgY2FuIGJlIGEgcG93ZXJmdWwgdG9vbCB0byB1bmNvdmVyIGZlYXR1cmVzIGltcG9ydGFudCB0byBSR0VOIGZ1bmN0aW9uLiBBcHBsaWNhdGlvbiBvZiB0aGlzIGFwcHJvYWNoIHRvIGVtZXJnaW5nIFJHRU5zIHNob3VsZCBlbmhhbmNlIHRoZWlyIGVuZ2luZWVyaW5nIGFuZCBvcHRpbWl6YXRpb24gZm9yIHRoZXJhcGV1dGljIGFuZCBvdGhlciBhcHBsaWNhdGlvbnMuIFx1MDBBOSAyMDE3IFRoZSBBdXRob3IocykufVxuICB9YCxcbiAgYEBhcnRpY2xle0RvbWFuX1BhbmRleV9OZXVnZWJhdWVyX0FuX0RhdmlzX1JhbmRvbHBoX01jRWxyb3lfR2FvX1JhZ3VyYW1fUmljaHRlcl8yMDIzLFxuICAgIHRpdGxlICAgICAgICA9IHtQaGFnZS1hc3Npc3RlZCBldm9sdXRpb24gYW5kIHByb3RlaW4gZW5naW5lZXJpbmcgeWllbGQgY29tcGFjdCwgZWZmaWNpZW50IHByaW1lIGVkaXRvcnN9LFxuICAgIGF1dGhvciAgICAgICA9IHtEb21hbiwgSm9yZGFuIEwuIGFuZCBQYW5kZXksIFNtcml0aSBhbmQgTmV1Z2ViYXVlciwgTW9uaWNhIEUuIGFuZCBBbiwgTWVpcnVpIGFuZCBEYXZpcywgSmVzc2llIFIuIGFuZCBSYW5kb2xwaCwgUGV5dG9uIEIuIGFuZCBNY0Vscm95LCBBbWJlciBhbmQgR2FvLCBYaW4gRC4gYW5kIFJhZ3VyYW0sIEFkaXR5YSBhbmQgUmljaHRlciwgTWljaGVsbGUgRi4gYW5kIEV2ZXJldHRlLCBLZWxjZWUgQS4gYW5kIEJhbnNrb3RhLCBTYW1hZ3lhIGFuZCBUaWFuLCBLYXRocnluIGFuZCBUYW8sIFkuIEFsbGVuIGFuZCBUb2xhciwgSmFrdWIgYW5kIE9zYm9ybiwgTWFyayBKLiBhbmQgTGl1LCBEYXZpZCBSLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMyxcbiAgICBtb250aCAgICAgICAgPSBhdWcsXG4gICAgam91cm5hbCAgICAgID0ge0NlbGx9LFxuICAgIHB1Ymxpc2hlciAgICA9IHtFbHNldmllcn0sXG4gICAgdm9sdW1lICAgICAgID0gMTg2LFxuICAgIG51bWJlciAgICAgICA9IDE4LFxuICAgIHBhZ2VzICAgICAgICA9IHszOTgzLS00MDAyfSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLmNlbGwuMjAyMy4wNy4wMzl9LFxuICAgIGlzc24gICAgICAgICA9IHswMDkyLTg2NzQsIDEwOTctNDE3Mn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge0VuZ2xpc2h9XG4gIH1gLFxuICBgQGFydGljbGV7U291c2FfSGVtZXpfTGVpX1RyYW9yZV9LdWxoYW5rb3ZhX05ld2J5X0RvbWFuX095ZV9QYW5kZXlfS2FycF8yMDI0LFxuICAgIHRpdGxlICAgICAgICA9IHtTeXN0ZW1hdGljIG9wdGltaXphdGlvbiBvZiBwcmltZSBlZGl0aW5nIGZvciB0aGUgZWZmaWNpZW50IGZ1bmN0aW9uYWwgY29ycmVjdGlvbiBvZiBDRlRSIEY1MDhkZWwgaW4gaHVtYW4gYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHN9LFxuICAgIGF1dGhvciAgICAgICA9IHtTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBIZW1leiwgQ29saW4gYW5kIExlaSwgTGVpIGFuZCBUcmFvcmUsIFNvdW1iYSBhbmQgS3VsaGFua292YSwgS2F0YXJpbmEgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBEb21hbiwgSm9yZGFuIEwuIGFuZCBPeWUsIEtleWVkZSBhbmQgUGFuZGV5LCBTbXJpdGkgYW5kIEthcnAsIFBoaWxpcCBILiBhbmQgTWNDcmF5LCBQYXVsIEIuIGFuZCBMaXUsIERhdmlkIFIufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxuICAgIG1vbnRoICAgICAgICA9IGp1bCxcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIEJpb21lZGljYWwgRW5naW5lZXJpbmd9LFxuICAgIHB1Ymxpc2hlciAgICA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sXG4gICAgcGFnZXMgICAgICAgID0gezFcdTIwMTMxNX0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTUxLTAyNC0wMTIzMy0zfSxcbiAgICBpc3NuICAgICAgICAgPSB7MjE1Ny04NDZYfSxcbiAgICByaWdodHMgICAgICAgPSB7MjAyNCBUaGUgQXV0aG9yKHMpfSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyAoUEUpIGVuYWJsZXMgcHJlY2lzZSBhbmQgdmVyc2F0aWxlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmRlZCBETkEgYnJlYWtzLiBIZXJlIHdlIGRlc2NyaWJlIHRoZSBzeXN0ZW1hdGljIG9wdGltaXphdGlvbiBvZiBQRSBzeXN0ZW1zIHRvIGVmZmljaWVudGx5IGNvcnJlY3QgaHVtYW4gY3lzdGljIGZpYnJvc2lzIChDRikgdHJhbnNtZW1icmFuZSBjb25kdWN0YW5jZSByZWd1bGF0b3IgKENGVFIpIEY1MDhkZWwsIGEgdGhyZWUtbnVjbGVvdGlkZSBkZWxldGlvbiB0aGF0IGlzIHRoZSBwcmVkb21pbmFudCBjYXVzZSBvZiBDRi4gQnkgY29tYmluaW5nIHNpeCBlZmZpY2llbmN5IG9wdGltaXphdGlvbnMgZm9yIFBFXHUyMDE0ZW5naW5lZXJlZCBQRSBndWlkZSBSTkFzLCB0aGUgUEVtYXggYXJjaGl0ZWN0dXJlLCB0aGUgdHJhbnNpZW50IGV4cHJlc3Npb24gb2YgYSBkb21pbmFudC1uZWdhdGl2ZSBtaXNtYXRjaCByZXBhaXIgcHJvdGVpbiwgc3RyYXRlZ2ljIHNpbGVudCBlZGl0cywgUEU2IHZhcmlhbnRzIGFuZCBwcm94aW1hbCBcdTIwMThkZWFkXHUyMDE5IHNpbmdsZS1ndWlkZSBSTkFzXHUyMDE0d2UgaW5jcmVhc2VkIGNvcnJlY3Rpb24gZWZmaWNpZW5jaWVzIGZvciBDRlRSIEY1MDhkZWwgZnJvbSBsZXNzIHRoYW4gMC41JSBpbiBIRUsyOTNUIGNlbGxzIHRvIDU4JSBpbiBpbW1vcnRhbGl6ZWQgYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbHMgKGEgMTQwLWZvbGQgaW1wcm92ZW1lbnQpIGFuZCB0byAyNSUgaW4gcGF0aWVudC1kZXJpdmVkIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzLiBUaGUgb3B0aW1pemF0aW9ucyBhbHNvIHJlc3VsdGVkIGluIG1pbmltYWwgb2ZmLXRhcmdldCBlZGl0aW5nLCBpbiBlZGl0LXRvLWluZGVsIHJhdGlvcyAzLjUtZm9sZCBncmVhdGVyIHRoYW4gdGhvc2UgYWNoaWV2ZWQgYnkgbnVjbGVhc2UtbWVkaWF0ZWQgaG9tb2xvZ3ktZGlyZWN0ZWQgcmVwYWlyLCBhbmQgaW4gdGhlIGZ1bmN0aW9uYWwgcmVzdG9yYXRpb24gb2YgQ0ZUUiBpb24gY2hhbm5lbHMgdG8gb3ZlciA1MCUgb2Ygd2lsZC10eXBlIGxldmVscyAoc2ltaWxhciB0byB0aG9zZSBhY2hpZXZlZCB2aWEgY29tYmluYXRpb24gdHJlYXRtZW50IHdpdGggZWxleGFjYWZ0b3IsIHRlemFjYWZ0b3IgYW5kIGl2YWNhZnRvcikgaW4gcHJpbWFyeSBhaXJ3YXkgY2VsbHMuIE91ciBmaW5kaW5ncyBzdXBwb3J0IHRoZSBmZWFzaWJpbGl0eSBvZiBhIGR1cmFibGUgb25lLXRpbWUgdHJlYXRtZW50IGZvciBDRi59LFxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cbiAgfWAsXG4gIGBAYXJ0aWNsZXtZYW5fT3lsZXItQ2FzdHJpbGxvX1JhdmlzYW5rYXJfV2FyZF9MZXZlc3F1ZV9KaW5nX1NpbXBzb25fWmhhb19MaV9ZYW5fMjAyNCxcbiAgICB0aXRsZSAgICAgICAgPSB7SW1wcm92aW5nIHByaW1lIGVkaXRpbmcgd2l0aCBhbiBlbmRvZ2Vub3VzIHNtYWxsIFJOQS1iaW5kaW5nIHByb3RlaW59LFxuICAgIGF1dGhvciAgICAgICA9IHtZYW4sIEp1biBhbmQgT3lsZXItQ2FzdHJpbGxvLCBQYXVsIGFuZCBSYXZpc2Fua2FyLCBQdXJuaW1hIGFuZCBXYXJkLCBDYXJsIEMuIGFuZCBMZXZlc3F1ZSwgU1x1MDBFOWJhc3RpZW4gYW5kIEppbmcsIFlhbmd3b2RlIGFuZCBTaW1wc29uLCBEYW5ueSBhbmQgWmhhbywgQW5xaSBhbmQgTGksIEh1aSBhbmQgWWFuLCBXZWloYW8gYW5kIEdvdWR5LCBMYWluZSBhbmQgU2NobWlkdCwgUmFsZiBhbmQgU29sbGV5LCBTYWJyaW5hIEMuIGFuZCBHaWxiZXJ0LCBMdWtlIEEuIGFuZCBDaGFuLCBNaWNoZWxsZSBNLiBhbmQgQmF1ZXIsIERhbmllbCBFLiBhbmQgTWFyc29uLCBBbGV4YW5kZXIgYW5kIFBhcnNvbnMsIExhbmNlIFIuIGFuZCBBZGFtc29uLCBCcml0dH0sXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcbiAgICBtb250aCAgICAgICAgPSBhcHIsXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZX0sXG4gICAgdm9sdW1lICAgICAgID0gNjI4LFxuICAgIG51bWJlciAgICAgICA9IDgwMDgsXG4gICAgcGFnZXMgICAgICAgID0gezYzOVx1MjAxMzY0N30sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTg2LTAyNC0wNzI1OS02fSxcbiAgICBpc3NuICAgICAgICAgPSB7MDAyOC0wODM2LCAxNDc2LTQ2ODd9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtBYnN0cmFjdCAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbWUgZWRpdGluZyBlbmFibGVzIHRoZSBwcmVjaXNlIG1vZGlmaWNhdGlvbiBvZiBnZW5vbWVzIHRocm91Z2ggcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIG9mIHRlbXBsYXRlIHNlcXVlbmNlcyBhcHBlbmRlZCB0byB0aGUgM1x1MjAzMiBlbmRzIG9mIENSSVNQUlx1MjAxM0NhcyBndWlkZSBSTkFzICAgICAgICAgICAgICAxICAgICAgICAgICAgICAuIFRvIGlkZW50aWZ5IGNlbGx1bGFyIGRldGVybWluYW50cyBvZiBwcmltZSBlZGl0aW5nLCB3ZSBkZXZlbG9wZWQgc2NhbGFibGUgcHJpbWUgZWRpdGluZyByZXBvcnRlcnMgYW5kIHBlcmZvcm1lZCBnZW5vbWUtc2NhbGUgQ1JJU1BSLWludGVyZmVyZW5jZSBzY3JlZW5zLiBGcm9tIHRoZXNlIHNjcmVlbnMsIGEgc2luZ2xlIGZhY3RvciBlbWVyZ2VkIGFzIHRoZSBzdHJvbmdlc3QgbWVkaWF0b3Igb2YgcHJpbWUgZWRpdGluZzogdGhlIHNtYWxsIFJOQS1iaW5kaW5nIGV4b251Y2xlYXNlIHByb3RlY3Rpb24gZmFjdG9yIExhLiBGdXJ0aGVyIGludmVzdGlnYXRpb24gcmV2ZWFsZWQgdGhhdCBMYSBwcm9tb3RlcyBwcmltZSBlZGl0aW5nIGFjcm9zcyBhcHByb2FjaGVzIChQRTIsIFBFMywgUEU0IGFuZCBQRTUpLCBlZGl0IHR5cGVzIChzdWJzdGl0dXRpb25zLCBpbnNlcnRpb25zIGFuZCBkZWxldGlvbnMpLCBlbmRvZ2Vub3VzIGxvY2kgYW5kIGNlbGwgdHlwZXMgYnV0IGhhcyBubyBjb25zaXN0ZW50IGVmZmVjdCBvbiBnZW5vbWUtZWRpdGluZyBhcHByb2FjaGVzIHRoYXQgcmVseSBvbiBzdGFuZGFyZCwgdW5leHRlbmRlZCBndWlkZSBSTkFzLiBQcmV2aW91cyB3b3JrIGhhcyBzaG93biB0aGF0IExhIGJpbmRzIHBvbHl1cmlkaW5lIHRyYWN0cyBhdCB0aGUgM1x1MjAzMiBlbmRzIG9mIFJOQSBwb2x5bWVyYXNlXHUyMDA5SUlJIHRyYW5zY3JpcHRzICAgICAgICAgICAgICAyICAgICAgICAgICAgICAuIFdlIGZvdW5kIHRoYXQgTGEgZnVuY3Rpb25hbGx5IGludGVyYWN0cyB3aXRoIHRoZSAzXHUyMDMyIGVuZHMgb2YgcG9seXVyaWR5bGF0ZWQgcHJpbWUgZWRpdGluZyBndWlkZSBSTkFzIChwZWdSTkFzKS4gR3VpZGVkIGJ5IHRoZXNlIHJlc3VsdHMsIHdlIGRldmVsb3BlZCBhIHByaW1lIGVkaXRvciBwcm90ZWluIChQRTcpIGZ1c2VkIHRvIHRoZSBSTkEtYmluZGluZywgTi10ZXJtaW5hbCBkb21haW4gb2YgTGEuIFRoaXMgZWRpdG9yIGltcHJvdmVkIHByaW1lIGVkaXRpbmcgd2l0aCBleHByZXNzZWQgcGVnUk5BcyBhbmQgZW5naW5lZXJlZCBwZWdSTkFzIChlcGVnUk5BcyksIGFzIHdlbGwgYXMgd2l0aCBzeW50aGV0aWMgcGVnUk5BcyBvcHRpbWl6ZWQgZm9yIExhIGJpbmRpbmcuIFRvZ2V0aGVyLCBvdXIgcmVzdWx0cyBwcm92aWRlIGtleSBpbnNpZ2h0cyBpbnRvIGhvdyBwcmltZSBlZGl0aW5nIGNvbXBvbmVudHMgaW50ZXJhY3Qgd2l0aCB0aGUgY2VsbHVsYXIgZW52aXJvbm1lbnQgYW5kIHN1Z2dlc3QgZ2VuZXJhbCBzdHJhdGVnaWVzIGZvciBzdGFiaWxpemluZyBleG9nZW5vdXMgc21hbGwgUk5BcyB0aGVyZWluLn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9YCxcbiAgYEBhcnRpY2xle1NpbW9uLFxuICAgIHRpdGxlICAgICAgICA9IHtQRUFSLCBhIGZsZXhpYmxlIGZsdW9yZXNjZW50IHJlcG9ydGVyIGZvciB0aGUgaWRlbnRpZmljYXRpb24gYW5kIGVucmljaG1lbnQgb2Ygc3VjY2Vzc2Z1bGx5IHByaW1lIGVkaXRlZCBjZWxsc30sXG4gICAgYXV0aG9yICAgICAgID0ge1NpbW9uLCBEb3JvdHR5YSBBbm5hIGFuZCBUXHUwMEUxbGFzLCBBbmRyXHUwMEUxcyBhbmQgS3VsY3NcdTAwRTFyLCBQXHUwMEU5dGVyIElzdHZcdTAwRTFuIGFuZCBCaWN6XHUwMEYzaywgWnN1enNhbm5hIGFuZCBLcmF1c3osIFNhcmFoIExhdXJhIGFuZCBWXHUwMEUxcmFkeSwgR3lcdTAwRjZyZ3kgYW5kIFdlbGtlciwgRXJ2aW59LFxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXG4gICAgbW9udGggICAgICAgID0gZmViLFxuICAgIGpvdXJuYWwgICAgICA9IHtlTGlmZX0sXG4gICAgcHVibGlzaGVyICAgID0ge2VMaWZlIFNjaWVuY2VzIFB1YmxpY2F0aW9ucywgTHRkfSxcbiAgICB2b2x1bWUgICAgICAgPSAxMSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuNzU1NC9lTGlmZS42OTUwNH0sXG4gICAgaXNzbiAgICAgICAgID0gezIwNTAtMDg0WH0sXG4gICAgYWJzdHJhY3Rub3RlID0ge1ByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnRseSBkZXZlbG9wZWQgQ1JJU1BSL0NhczkgYmFzZWQgZ2VuZSBlbmdpbmVlcmluZyB0b29sIHRoYXQgYWxsb3dzIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2hvcnQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgc3Vic3RpdHV0aW9ucyBpbnRvIHRoZSBnZW5vbWUuIEhvd2V2ZXIsIHRoZSBlZmZpY2llbmN5IG9mIHByaW1lIGVkaXRpbmcsIHdoaWNoIHR5cGljYWxseSBhY2hpZXZlcyBlZGl0aW5nIHJhdGVzIG9mIGFyb3VuZCAxMCVcdTIwMTMzMCUsIGhhcyBub3QgbWF0Y2hlZCBpdHMgdmVyc2F0aWxpdHkuIEhlcmUsIHdlIGludHJvZHVjZSB0aGUgcHJpbWUgZWRpdG9yIGFjdGl2aXR5IHJlcG9ydGVyIChQRUFSKSwgYSBzZW5zaXRpdmUgZmx1b3Jlc2NlbnQgdG9vbCBmb3IgaWRlbnRpZnlpbmcgc2luZ2xlIGNlbGxzIHdpdGggcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gUEVBUiBoYXMgbm8gYmFja2dyb3VuZCBmbHVvcmVzY2VuY2UgYW5kIHNwZWNpZmljYWxseSBpbmRpY2F0ZXMgcHJpbWUgZWRpdGluZyBldmVudHMuIEl0cyBkZXNpZ24gcHJvdmlkZXMgYXBwYXJlbnRseSB1bmxpbWl0ZWQgZmxleGliaWxpdHkgZm9yIHNlcXVlbmNlIHZhcmlhdGlvbiBhbG9uZyB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUgc3BhY2VyIHNlcXVlbmNlLCBtYWtpbmcgaXQgdW5pcXVlbHkgc3VpdGVkIGZvciBzeXN0ZW1hdGljIGludmVzdGlnYXRpb24gb2Ygc2VxdWVuY2UgZmVhdHVyZXMgdGhhdCBpbmZsdWVuY2UgcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gVGhlIHVzZSBvZiBQRUFSIGFzIGFuIGVucmljaG1lbnQgbWFya2VyIGZvciBwcmltZSBlZGl0aW5nIGNhbiBpbmNyZWFzZSB0aGUgZWRpdGVkIHBvcHVsYXRpb24gYnkgdXAgdG8gODQlLCB0aHVzIHNpZ25pZmljYW50bHkgaW1wcm92aW5nIHRoZSBhcHBsaWNhYmlsaXR5IG9mIHByaW1lIGVkaXRpbmcgZm9yIGJhc2ljIHJlc2VhcmNoIGFuZCBiaW90ZWNobm9sb2dpY2FsIGFwcGxpY2F0aW9ucy59LFxuICAgIGVkaXRvciAgICAgICA9IHtMYXBpbmFpdGUsIEF1ZHJvbmUgYW5kIFN0YWluaWVyLCBEaWRpZXIgWVIgYW5kIEhhbWlsdG9uLCBKZW5uaWZlciBSfVxuICB9YFxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEVuZ1BlZ3NvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG5gXG4gIEBhcnRpY2xle0Nob3dfQ2hlbl9TaGVuX0NoZW5fMjAyMSxcbiAgICB0aXRsZSAgICAgICAgPSB7QSB3ZWIgdG9vbCBmb3IgdGhlIGRlc2lnbiBvZiBwcmltZS1lZGl0aW5nIGd1aWRlIFJOQXN9LFxuICAgIGF1dGhvciAgICAgICA9IHtDaG93LCBSeWFuIEQuIGFuZCBDaGVuLCBKZW5uaWZlciBTLiBhbmQgU2hlbiwgSm9oYW5uYSBhbmQgQ2hlbiwgU2lkaX0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMSxcbiAgICBtb250aCAgICAgICAgPSBmZWIsXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZSBCaW9tZWRpY2FsIEVuZ2luZWVyaW5nfSxcbiAgICBwdWJsaXNoZXIgICAgPSB7TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LFxuICAgIHZvbHVtZSAgICAgICA9IDUsXG4gICAgbnVtYmVyICAgICAgID0gMixcbiAgICBwYWdlcyAgICAgICAgPSB7MTkwXHUyMDEzMTk0fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1NTEtMDIwLTAwNjIyLTh9LFxuICAgIGlzc24gICAgICAgICA9IHsyMTU3LTg0Nlh9LFxuICAgIHJpZ2h0cyAgICAgICA9IHsyMDIwIFRoZSBBdXRob3IocyksIHVuZGVyIGV4Y2x1c2l2ZSBsaWNlbmNlIHRvIFNwcmluZ2VyIE5hdHVyZSBMaW1pdGVkfSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyBlbmFibGVzIGRpdmVyc2UgZ2Vub21pYyBhbHRlcmF0aW9ucyB0byBiZSB3cml0dGVuIGludG8gdGFyZ2V0IHNpdGVzIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIHRlbXBsYXRlcy4gVGhlIGRlc2lnbiBvZiBwcmltZS1lZGl0aW5nIGd1aWRlIFJOQXMgKHBlZ1JOQXMpLCB3aGljaCBtdXN0IGJlIGN1c3RvbWl6ZWQgZm9yIGVhY2ggZWRpdCwgY2FuIGhvd2V2ZXIgYmUgY29tcGxleCBhbmQgdGltZSBjb25zdW1pbmcuIENvbXBhcmVkIHdpdGggc2luZ2xlIGd1aWRlIFJOQXMgKHNnUk5BcyksIHBlZ1JOQXMgaGF2ZSBhbiBhZGRpdGlvbmFsIDNcdTIwMzIgZXh0ZW5zaW9uIGNvbXBvc2VkIG9mIGEgcHJpbWVyIGJpbmRpbmcgc2l0ZSBhbmQgYSByZXZlcnNlLXRyYW5zY3JpcHRpb24gdGVtcGxhdGUuIEhlcmUgd2UgcmVwb3J0IGEgd2ViIHRvb2wsIHdoaWNoIHdlIG5hbWVkIHBlZ0ZpbmRlciAoaHR0cDovL3BlZ2ZpbmRlci5zaWRpY2hlbmxhYi5vcmcpLCBmb3IgdGhlIHJhcGlkIGRlc2lnbiBvZiBwZWdSTkFzIGZyb20gcmVmZXJlbmNlIGFuZCBlZGl0ZWQgRE5BIHNlcXVlbmNlcy4gcGVnRmluZGVyIGNhbiBpbmNvcnBvcmF0ZSBzZ1JOQSBvbi10YXJnZXQgYW5kIG9mZi10YXJnZXQgc2NvcmluZyBwcmVkaWN0aW9ucyBpbnRvIGl0cyByYW5raW5nIHN5c3RlbSwgYW5kIG5vbWluYXRlcyBzZWNvbmRhcnkgbmlja2luZyBzZ1JOQXMgZm9yIGluY3JlYXNpbmcgZWRpdGluZyBlZmZpY2llbmN5LiBDUklTUFItYXNzb2NpYXRlZCBwcm90ZWluIDkgdmFyaWFudHMgd2l0aCBleHBhbmRlZCB0YXJnZXRpbmcgcmFuZ2VzIGFyZSBhbHNvIHN1cHBvcnRlZC4gVG8gZmFjaWxpdGF0ZSBkb3duc3RyZWFtIGV4cGVyaW1lbnRhdGlvbiwgcGVnRmluZGVyIHByb2R1Y2VzIGEgY29tcHJlaGVuc2l2ZSB0YWJsZSBvZiBjYW5kaWRhdGUgcGVnUk5BcywgYWxvbmcgd2l0aCBvbGlnb251Y2xlb3RpZGUgc2VxdWVuY2VzIGZvciBjbG9uaW5nLn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG5gLGBcbiAgQGFydGljbGV7QW56YWxvbmVfUmFuZG9scGhfRGF2aXNfU291c2FfS29ibGFuX0xldnlfQ2hlbl9XaWxzb25fTmV3YnlfUmFndXJhbV8yMDE5LFxuICAgIHRpdGxlICAgICAgICA9IHtTZWFyY2gtYW5kLXJlcGxhY2UgZ2Vub21lIGVkaXRpbmcgd2l0aG91dCBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkF9LFxuICAgIGF1dGhvciAgICAgICA9IHtBbnphbG9uZSwgQW5kcmV3IFYuIGFuZCBSYW5kb2xwaCwgUGV5dG9uIEIuIGFuZCBEYXZpcywgSmVzc2llIFIuIGFuZCBTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBLb2JsYW4sIEx1a2UgVy4gYW5kIExldnksIEpvbmF0aGFuIE0uIGFuZCBDaGVuLCBQZXRlciBKLiBhbmQgV2lsc29uLCBDaHJpc3RvcGhlciBhbmQgTmV3YnksIEdyZWdvcnkgQS4gYW5kIFJhZ3VyYW0sIEFkaXR5YSBhbmQgTGl1LCBEYXZpZCBSLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAxOSxcbiAgICBtb250aCAgICAgICAgPSBkZWMsXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZX0sXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcbiAgICB2b2x1bWUgICAgICAgPSA1NzYsXG4gICAgbnVtYmVyICAgICAgID0gNzc4NSxcbiAgICBwYWdlcyAgICAgICAgPSB7MTQ5XHUyMDEzMTU3fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1ODYtMDE5LTE3MTEtNH0sXG4gICAgaXNzbiAgICAgICAgID0gezE0NzYtNDY4N30sXG4gICAgcmlnaHRzICAgICAgID0gezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtNb3N0IGdlbmV0aWMgdmFyaWFudHMgdGhhdCBjb250cmlidXRlIHRvIGRpc2Vhc2UxIGFyZSBjaGFsbGVuZ2luZyB0byBjb3JyZWN0IGVmZmljaWVudGx5IGFuZCB3aXRob3V0IGV4Y2VzcyBieXByb2R1Y3RzMlx1MjAxMzUuIEhlcmUgd2UgZGVzY3JpYmUgcHJpbWUgZWRpdGluZywgYSB2ZXJzYXRpbGUgYW5kIHByZWNpc2UgZ2Vub21lIGVkaXRpbmcgbWV0aG9kIHRoYXQgZGlyZWN0bHkgd3JpdGVzIG5ldyBnZW5ldGljIGluZm9ybWF0aW9uIGludG8gYSBzcGVjaWZpZWQgRE5BIHNpdGUgdXNpbmcgYSBjYXRhbHl0aWNhbGx5IGltcGFpcmVkIENhczkgZW5kb251Y2xlYXNlIGZ1c2VkIHRvIGFuIGVuZ2luZWVyZWQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBwcm9ncmFtbWVkIHdpdGggYSBwcmltZSBlZGl0aW5nIGd1aWRlIFJOQSAocGVnUk5BKSB0aGF0IGJvdGggc3BlY2lmaWVzIHRoZSB0YXJnZXQgc2l0ZSBhbmQgZW5jb2RlcyB0aGUgZGVzaXJlZCBlZGl0LiBXZSBwZXJmb3JtZWQgbW9yZSB0aGFuIDE3NSBlZGl0cyBpbiBodW1hbiBjZWxscywgaW5jbHVkaW5nIHRhcmdldGVkIGluc2VydGlvbnMsIGRlbGV0aW9ucywgYW5kIGFsbCAxMiB0eXBlcyBvZiBwb2ludCBtdXRhdGlvbiwgd2l0aG91dCByZXF1aXJpbmcgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BIHRlbXBsYXRlcy4gV2UgdXNlZCBwcmltZSBlZGl0aW5nIGluIGh1bWFuIGNlbGxzIHRvIGNvcnJlY3QsIGVmZmljaWVudGx5IGFuZCB3aXRoIGZldyBieXByb2R1Y3RzLCB0aGUgcHJpbWFyeSBnZW5ldGljIGNhdXNlcyBvZiBzaWNrbGUgY2VsbCBkaXNlYXNlIChyZXF1aXJpbmcgYSB0cmFuc3ZlcnNpb24gaW4gSEJCKSBhbmQgVGF5XHUyMDEzU2FjaHMgZGlzZWFzZSAocmVxdWlyaW5nIGEgZGVsZXRpb24gaW4gSEVYQSk7IHRvIGluc3RhbGwgYSBwcm90ZWN0aXZlIHRyYW5zdmVyc2lvbiBpbiBQUk5QOyBhbmQgdG8gaW5zZXJ0IHZhcmlvdXMgdGFncyBhbmQgZXBpdG9wZXMgcHJlY2lzZWx5IGludG8gdGFyZ2V0IGxvY2kuIEZvdXIgaHVtYW4gY2VsbCBsaW5lcyBhbmQgcHJpbWFyeSBwb3N0LW1pdG90aWMgbW91c2UgY29ydGljYWwgbmV1cm9ucyBzdXBwb3J0IHByaW1lIGVkaXRpbmcgd2l0aCB2YXJ5aW5nIGVmZmljaWVuY2llcy4gUHJpbWUgZWRpdGluZyBzaG93cyBoaWdoZXIgb3Igc2ltaWxhciBlZmZpY2llbmN5IGFuZCBmZXdlciBieXByb2R1Y3RzIHRoYW4gaG9tb2xvZ3ktZGlyZWN0ZWQgcmVwYWlyLCBoYXMgY29tcGxlbWVudGFyeSBzdHJlbmd0aHMgYW5kIHdlYWtuZXNzZXMgY29tcGFyZWQgdG8gYmFzZSBlZGl0aW5nLCBhbmQgaW5kdWNlcyBtdWNoIGxvd2VyIG9mZi10YXJnZXQgZWRpdGluZyB0aGFuIENhczkgbnVjbGVhc2UgYXQga25vd24gQ2FzOSBvZmYtdGFyZ2V0IHNpdGVzLiBQcmltZSBlZGl0aW5nIHN1YnN0YW50aWFsbHkgZXhwYW5kcyB0aGUgc2NvcGUgYW5kIGNhcGFiaWxpdGllcyBvZiBnZW5vbWUgZWRpdGluZywgYW5kIGluIHByaW5jaXBsZSBjb3VsZCBjb3JyZWN0IHVwIHRvIDg5JSBvZiBrbm93biBnZW5ldGljIHZhcmlhbnRzIGFzc29jaWF0ZWQgd2l0aCBodW1hbiBkaXNlYXNlcy59LFxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cbiAgfVxuYCxgXG5AbWlzY3tEb21hbjIwMjQsXG5cdHRpdGxlICAgICAgICA9IHtQcmltZSBFZGl0aW5nIFdlYmluYXJ9LFxuXHRhdXRob3IgICAgICAgPSB7Sm9yZGFuIERvbWFufSxcblx0eWVhciAgICAgICAgID0gMjAyNCxcblx0dXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9MFpfenR2a3ZLVUF9LFxuXHRub3RlICAgICAgICAgPSB7QWNjZXNzZWQ6IE1heSAyMDI0fSxcblx0aG93cHVibGlzaGVkID0ge1lvdVR1YmV9XG59XG5gLGBcbiAgQGFydGljbGV7R2FsaWV0dGFfSGFnZ2llX1ZlcmttYW5fMjAwMSxcbiAgICB0aXRsZSAgICAgICAgPSB7R3JlZW4gZmx1b3Jlc2NlbnQgcHJvdGVpbi1iYXNlZCBoYWxpZGUgaW5kaWNhdG9ycyB3aXRoIGltcHJvdmVkIGNobG9yaWRlIGFuZCBpb2RpZGUgYWZmaW5pdGllc30sXG4gICAgYXV0aG9yICAgICAgID0ge0dhbGlldHRhLCBMdWlzIEouViBhbmQgSGFnZ2llLCBQZXRlciBNIGFuZCBWZXJrbWFuLCBBLnN9LFxuICAgIHllYXIgICAgICAgICA9IDIwMDEsXG4gICAgam91cm5hbCAgICAgID0ge0ZFQlMgTGV0dGVyc30sXG4gICAgdm9sdW1lICAgICAgID0gNDk5LFxuICAgIG51bWJlciAgICAgICA9IDMsXG4gICAgcGFnZXMgICAgICAgID0gezIyMFx1MjAxMzIyNH0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMTYvUzAwMTQtNTc5MygwMSkwMjU2MS0zfSxcbiAgICBpc3NuICAgICAgICAgPSB7MTg3My0zNDY4fSxcbiAgICByaWdodHMgICAgICAgPSB7RkVCUyBMZXR0ZXJzIDQ5OSAoMjAwMSkgMTg3My0zNDY4IFx1MDBBOSAyMDE1IEZlZGVyYXRpb24gb2YgRXVyb3BlYW4gQmlvY2hlbWljYWwgU29jaWV0aWVzfSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7VGhlIGdyZWVuIGZsdW9yZXNjZW50IHByb3RlaW4gWUZQLUgxNDhRIGlzIHNlbnNpdGl2ZSB0byBoYWxpZGVzIGJ5IGEgbWVjaGFuaXNtIGludm9sdmluZyBoYWxpZGUgYmluZGluZyBhbmQgYSBzaGlmdCBpbiBwSyBhLiBIb3dldmVyLCBhIGxpbWl0YXRpb24gb2YgWUZQLUgxNDhRIGlzIGl0cyBsb3cgaGFsaWRlIHNlbnNpdGl2aXR5LCB3aXRoIEsgZD4xMDAgbU0gZm9yIENsXHUyMjEyLiBJbmRpY2F0b3JzIHdpdGggaW1wcm92ZWQgc2Vuc2l0aXZpdGllcyBhcmUgbmVlZGVkIGZvciBjZWxsIHRyYW5zcG9ydCBzdHVkaWVzLCBwYXJ0aWN1bGFybHkgaW4gZHJ1ZyBkaXNjb3ZlcnkgYnkgaGlnaC10aHJvdWdocHV0IHNjcmVlbmluZywgYW5kIGZvciBtZWFzdXJlbWVudCBvZiBDbFx1MjIxMiBjb25jZW50cmF0aW9uIGluIHN1YmNlbGx1bGFyIG9yZ2FuZWxsZXMuIFlGUC1IMTQ4USBsaWJyYXJpZXMgd2VyZSBnZW5lcmF0ZWQgaW4gd2hpY2ggcGFpcnMgb2YgcmVzaWR1ZXMgaW4gdGhlIHZpY2luaXR5IG9mIHRoZSBoYWxpZGUgYmluZGluZyBzaXRlIHdlcmUgcmFuZG9tbHkgbXV0YXRlZC4gQW4gYXV0b21hdGVkIHByb2NlZHVyZSB3YXMgZGV2ZWxvcGVkIHRvIHNjcmVlbiBiYWN0ZXJpYWwgY29sb25pZXMgZm9yIGltcHJvdmVkIGhhbGlkZSBzZW5zaXRpdml0eS4gQW5hbHlzaXMgb2YgMTUzNiBjbG9uZXMgcmV2ZWFsZWQgaW1wcm92ZWQgYW5pb24gc2Vuc2l0aXZpdGllcyB3aXRoIEsgZCBkb3duIHRvIDIgbU0gZm9yIElcdTIyMTIgKEkxNTJMKSwgNDAgbU0gZm9yIENsXHUyMjEyIChWMTYzUyksIGFuZCAxMCBtTSBmb3IgTk8zIFx1MjIxMiAoSTE1MkwpLiBUaGUgYW5pb24tc2Vuc2l0aXZlIG1lY2hhbmlzbSBvZiB0aGVzZSBpbmRpY2F0b3JzIHdhcyBlc3RhYmxpc2hlZCBhbmQgdGhlaXIgdXRpbGl0eSBpbiBjZWxscyB3YXMgZGVtb25zdHJhdGVkIHVzaW5nIHRyYW5zZmVjdGVkIGNlbGxzIGV4cHJlc3NpbmcgdGhlIGN5c3RpYyBmaWJyb3NpcyB0cmFuc21lbWJyYW5lIGNvbmR1Y3RhbmNlIHJlZ3VsYXRvciBjaGxvcmlkZSBjaGFubmVsLn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG5gLGBcbiAgQGFydGljbGV7QnVsY2Flbl9Lb3J0bGV2ZW5fTGl1X01hdWxlX0RyZWFub19LZWxseV9FbnNpbmNrX1RoaWVyaWVfU21pdHNfQ2ljaWFuaV8yMDI0LFxuICAgIHRpdGxlICAgICAgICA9IHtQcmltZSBlZGl0aW5nIGZ1bmN0aW9uYWxseSBjb3JyZWN0cyBjeXN0aWMgZmlicm9zaXMtY2F1c2luZyBDRlRSIG11dGF0aW9ucyBpbiBodW1hbiBvcmdhbm9pZHMgYW5kIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzfSxcbiAgICBhdXRob3IgICAgICAgPSB7QnVsY2FlbiwgTWF0dGlqcyBhbmQgS29ydGxldmVuLCBQaFx1MDBFOWxpbmUgYW5kIExpdSwgUm9uYWxkIEIuIGFuZCBNYXVsZSwgR2l1bGlhIGFuZCBEcmVhbm8sIEVsaXNlIGFuZCBLZWxseSwgTWFpcmVhZCBhbmQgRW5zaW5jaywgTWFyam9sZWluIE0uIGFuZCBUaGllcmllLCBTYW0gYW5kIFNtaXRzLCBNYXhpbWUgYW5kIENpY2lhbmksIE1hdHRlbyBhbmQgSGF0dG9uLCBBdXJlbGllIGFuZCBDaGV2YWxpZXIsIEJlbm9pdCBhbmQgUmFtYWxobywgQW5hYmVsYSBTLiBhbmQgQ2FzYWRldmFsbCBpIFNvbHZhcywgWGF2aWVyIGFuZCBEZWJ5c2VyLCBaZWdlciBhbmQgVmVybWV1bGVuLCBGcmFuXHUwMEU3b2lzIGFuZCBHaWpzYmVycywgUmlrIGFuZCBTZXJtZXQtR2F1ZGVsdXMsIElzYWJlbGxlIGFuZCBDZXJlc2V0bywgQW5uYSBhbmQgQ2FybG9uLCBNYXJpYW5uZSBTLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcbiAgICBtb250aCAgICAgICAgPSBtYXksXG4gICAgam91cm5hbCAgICAgID0ge0NlbGwgUmVwb3J0cyBNZWRpY2luZX0sXG4gICAgcGFnZXMgICAgICAgID0gMTAxNTQ0LFxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDE2L2oueGNybS4yMDI0LjEwMTU0NH0sXG4gICAgaXNzbiAgICAgICAgID0gezI2NjYtMzc5MX0sXG4gICAgYWJzdHJhY3Rub3RlID0ge1ByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnQsIENSSVNQUi1kZXJpdmVkIGdlbm9tZSBlZGl0aW5nIHRlY2hub2xvZ3kgY2FwYWJsZSBvZiBpbnRyb2R1Y2luZyBwcmVjaXNlIG51Y2xlb3RpZGUgc3Vic3RpdHV0aW9ucywgaW5zZXJ0aW9ucywgYW5kIGRlbGV0aW9ucy4gSGVyZSwgd2UgcHJlc2VudCBwcmltZSBlZGl0aW5nIGFwcHJvYWNoZXMgdG8gY29ycmVjdCBMMjI3Ui0gYW5kIE4xMzAzSy1DRlRSLCB0d28gbXV0YXRpb25zIHRoYXQgY2F1c2UgY3lzdGljIGZpYnJvc2lzIGFuZCBhcmUgbm90IGVsaWdpYmxlIGZvciBjdXJyZW50IG1hcmtldC1hcHByb3ZlZCBtb2R1bGF0b3IgdGhlcmFwaWVzLiBXZSBzaG93IHRoYXQsIHVwb24gRE5BIGNvcnJlY3Rpb24gb2YgdGhlIENGVFIgZ2VuZSwgdGhlIGNvbXBsZXggZ2x5Y29zeWxhdGlvbiwgbG9jYWxpemF0aW9uLCBhbmQsIG1vc3QgaW1wb3J0YW50bHksIGZ1bmN0aW9uIG9mIHRoZSBDRlRSIHByb3RlaW4gYXJlIHJlc3RvcmVkIGluIEhFSzI5M1QgYW5kIDE2SEJFIGNlbGwgbGluZXMuIFRoZXNlIGZpbmRpbmdzIHdlcmUgc3Vic2VxdWVudGx5IHZhbGlkYXRlZCBpbiBwYXRpZW50LWRlcml2ZWQgcmVjdGFsIG9yZ2Fub2lkcyBhbmQgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscy4gVGhyb3VnaCBhbmFseXNpcyBvZiBwcmVkaWN0ZWQgYW5kIGV4cGVyaW1lbnRhbGx5IGlkZW50aWZpZWQgY2FuZGlkYXRlIG9mZi10YXJnZXQgc2l0ZXMgaW4gcHJpbWFyeSBzdGVtIGNlbGxzLCB3ZSBjb25maXJtIHByZXZpb3VzIHJlcG9ydHMgb24gdGhlIGhpZ2ggcHJpbWUgZWRpdG9yIChQRSkgc3BlY2lmaWNpdHkgYW5kIGl0cyBwb3RlbnRpYWwgZm9yIGEgY3VyYXRpdmUgQ0YgZ2VuZSBlZGl0aW5nIHRoZXJhcHkuIFRvIGZhY2lsaXRhdGUgZnV0dXJlIHNjcmVlbmluZyBvZiBnZW5ldGljIHN0cmF0ZWdpZXMgaW4gYSB0cmFuc2xhdGlvbmFsIENGIG1vZGVsLCBhIG1hY2hpbmUgbGVhcm5pbmcgYWxnb3JpdGhtIHdhcyBkZXZlbG9wZWQgZm9yIGR5bmFtaWMgcXVhbnRpZmljYXRpb24gb2YgQ0ZUUiBmdW5jdGlvbiBpbiBvcmdhbm9pZHMgKERFVEVDVE9SOiBcdTIwMUNkZXRlY3Rpb24gb2YgdGFyZ2V0ZWQgZWRpdGluZyBvZiBDRlRSIGluIG9yZ2Fub2lkc1x1MjAxRCkufVxuICB9XG5gLGBcbiAgQGFydGljbGV7UmVuel9WYWxkaXZpYS1GcmFuY2lhX1NlbmRvZWxfMjAyMCxcbiAgICB0aXRsZSAgICAgICAgPSB7U29tZSBsaWtlIGl0IHRyYW5zbGF0ZWQ6IHNtYWxsIE9SRnMgaW4gdGhlIDVcdTIwMzJVVFJ9LFxuICAgIGF1dGhvciAgICAgICA9IHtSZW56LCBQZXRlciBGLiBhbmQgVmFsZGl2aWEtRnJhbmNpYSwgRmFiaW9sYSBhbmQgU2VuZG9lbCwgQXRhbWFufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDIwLFxuICAgIG1vbnRoICAgICAgICA9IG5vdixcbiAgICBqb3VybmFsICAgICAgPSB7RXhwZXJpbWVudGFsIENlbGwgUmVzZWFyY2h9LFxuICAgIHZvbHVtZSAgICAgICA9IDM5NixcbiAgICBudW1iZXIgICAgICAgPSAxLFxuICAgIHBhZ2VzICAgICAgICA9IDExMjIyOSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnlleGNyLjIwMjAuMTEyMjI5fSxcbiAgICBpc3NuICAgICAgICAgPSB7MDAxNC00ODI3fSxcbiAgICBhYnN0cmFjdG5vdGUgPSB7VGhlIDVcdTIwMzIgdW50cmFuc2xhdGVkIHJlZ2lvbiAoNVx1MjAzMlVUUikgaXMgY3JpdGljYWwgaW4gZGV0ZXJtaW5pbmcgcG9zdC10cmFuc2NyaXB0aW9uYWwgY29udHJvbCwgd2hpY2ggaXMgcGFydGx5IG1lZGlhdGVkIGJ5IHNob3J0IHVwc3RyZWFtIG9wZW4gcmVhZGluZyBmcmFtZXMgKHVPUkZzKSBwcmVzZW50IGluIGhhbGYgb2YgbWFtbWFsaWFuIHRyYW5zY3JpcHRzLiB1T1JGcyBhcmUgZ2VuZXJhbGx5IGNvbnNpZGVyZWQgdG8gcHJvdmlkZSBmdW5jdGlvbmFsbHkgaW1wb3J0YW50IHJlcHJlc3Npb24gb2YgdGhlIG1haW4tT1JGIGJ5IGVuZ2FnaW5nIGluaXRpYXRpbmcgcmlib3NvbWVzLCBidXQgdW5kZXIgc3BlY2lmaWMgZW52aXJvbm1lbnRhbCBjb25kaXRpb25zIHN1Y2ggYXMgY2VsbHVsYXIgc3RyZXNzLCB1T1JGcyBjYW4gYmVjb21lIGVzc2VudGlhbCB0byBhY3RpdmF0ZSB0aGUgdHJhbnNsYXRpb24gb2YgdGhlIG1haW4gY29kaW5nIHNlcXVlbmNlLiBJbiBhZGRpdGlvbiwgYSBncm93aW5nIG51bWJlciBvZiB1T1JGLWVuY29kZWQgYmlvYWN0aXZlIG1pY3JvcHJvdGVpbnMgaGF2ZSBiZWVuIGRlc2NyaWJlZCwgd2hpY2ggaGF2ZSB0aGUgcG90ZW50aWFsIHRvIHNpZ25pZmljYW50bHkgaW5jcmVhc2UgY2VsbHVsYXIgcHJvdGVpbiBkaXZlcnNpdHkuIEhlcmUgd2UgcmV2aWV3IHRoZSBkaXZlcnNlIGNlbGx1bGFyIGNvbnRleHRzIGluIHdoaWNoIHVPUkZzIHBsYXkgYSBjcml0aWNhbCByb2xlIGFuZCBkaXNjdXNzIHRoZSBtb2xlY3VsYXIgbWVjaGFuaXNtcyB1bmRlcmx5aW5nIHRoZWlyIGZ1bmN0aW9uIGFuZCByZWd1bGF0aW9uLiBUaGUgcHJvZ3Jlc3Mgb3ZlciB0aGUgbGFzdCBkZWNhZGVzIGluIGRpc3NlY3RpbmcgdU9SRiBmdW5jdGlvbiBzdWdnZXN0cyB0aGF0IHRoZSA1XHUyMDMyVVRSIHJlbWFpbnMgYW4gZXhjaXRpbmcgZnJvbnRpZXIgdG93YXJkcyB1bmRlcnN0YW5kaW5nIGhvdyB0aGUgY2VsbHVsYXIgcHJvdGVvbWUgaXMgc2hhcGVkIGluIGhlYWx0aCBhbmQgZGlzZWFzZS59XG4gIH1cbmAsYFxuICBAYXJ0aWNsZXtMaWFuZ19IZV9aaGFvX1podV9IdV9MaXVfR2FvX0xpdV9aaGFuZ19RaXVfMjAyNCxcbiAgICB0aXRsZSAgICAgICAgPSB7UHJpbWUgZWRpdGluZyB1c2luZyBDUklTUFItQ2FzMTJhIGFuZCBjaXJjdWxhciBSTkFzIGluIGh1bWFuIGNlbGxzfSxcbiAgICBhdXRob3IgICAgICAgPSB7TGlhbmcsIFJvbmdob25nIGFuZCBIZSwgWml4aW4gYW5kIFpoYW8sIEtldmluIFRpYW5tZW5nIGFuZCBaaHUsIEhhb2NoZW5nIGFuZCBIdSwgSmlhY2hlbmcgYW5kIExpdSwgR3VhbndlbiBhbmQgR2FvLCBRaWFuZyBhbmQgTGl1LCBNZWl5YW4gYW5kIFpoYW5nLCBSdWkgYW5kIFFpdSwgSmluLUxvbmcgYW5kIEdhbywgQ2FpeGlhfSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxuICAgIG1vbnRoICAgICAgICA9IGphbixcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIEJpb3RlY2hub2xvZ3l9LFxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDM4L3M0MTU4Ny0wMjMtMDIwOTUteH0sXG4gICAgaXNzbiAgICAgICAgID0gezEwODctMDE1NiwgMTU0Ni0xNjk2fSxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cubmF0dXJlLmNvbS9hcnRpY2xlcy9zNDE1ODctMDIzLTAyMDk1LXh9LFxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cbiAgfVxuYFxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEVuZ05pY2tzb3VyY2VzKCl7XG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbn1cblxuXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xuICBgXG4gIEBhcnRpY2xle1NhaXRvX1h1X0ZhdXJlX01hZ3VpcmVfS2FubmFuX0FsdGFlLVRyYW5fVm9fRGVzaW1vbmVfTWFjcmFlX1poYW5nXzIwMjMsXG4gICAgdGl0bGUgICAgICAgID0ge0ZhbnpvciBpcyBhIGV1a2FyeW90aWMgcHJvZ3JhbW1hYmxlIFJOQS1ndWlkZWQgZW5kb251Y2xlYXNlfSxcbiAgICBhdXRob3IgICAgICAgPSB7U2FpdG8sIE1ha290byBhbmQgWHUsIFBlaXl1IGFuZCBGYXVyZSwgR3VpbGhlbSBhbmQgTWFndWlyZSwgU2FtYW50aGEgYW5kIEthbm5hbiwgU291bXlhIGFuZCBBbHRhZS1UcmFuLCBIYW4gYW5kIFZvLCBTYW0gYW5kIERlc2ltb25lLCBBbkFuIGFuZCBNYWNyYWUsIFJoaWFubm9uIEsuIGFuZCBaaGFuZywgRmVuZ30sXG4gICAgeWVhciAgICAgICAgID0gMjAyMyxcbiAgICBtb250aCAgICAgICAgPSBhdWcsXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZX0sXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcbiAgICB2b2x1bWUgICAgICAgPSA2MjAsXG4gICAgbnVtYmVyICAgICAgID0gNzk3NCxcbiAgICBwYWdlcyAgICAgICAgPSB7NjYwXHUyMDEzNjY4fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1ODYtMDIzLTA2MzU2LTJ9LFxuICAgIGlzc24gICAgICAgICA9IHsxNDc2LTQ2ODd9LFxuICAgIHJpZ2h0cyAgICAgICA9IHsyMDIzIFRoZSBBdXRob3Iocyl9LFxuICAgIGFic3RyYWN0bm90ZSA9IHtSTkEtZ3VpZGVkIHN5c3RlbXMsIHdoaWNoIHVzZSBjb21wbGVtZW50YXJpdHkgYmV0d2VlbiBhIGd1aWRlIFJOQSBhbmQgdGFyZ2V0IG51Y2xlaWMgYWNpZCBzZXF1ZW5jZXMgZm9yIHJlY29nbml0aW9uIG9mIGdlbmV0aWMgZWxlbWVudHMsIGhhdmUgYSBjZW50cmFsIHJvbGUgaW4gYmlvbG9naWNhbCBwcm9jZXNzZXMgaW4gYm90aCBwcm9rYXJ5b3RlcyBhbmQgZXVrYXJ5b3Rlcy4gRm9yIGV4YW1wbGUsIHRoZSBwcm9rYXJ5b3RpYyBDUklTUFJcdTIwMTNDYXMgc3lzdGVtcyBwcm92aWRlIGFkYXB0aXZlIGltbXVuaXR5IGZvciBiYWN0ZXJpYSBhbmQgYXJjaGFlYSBhZ2FpbnN0IGZvcmVpZ24gZ2VuZXRpYyBlbGVtZW50cy4gQ2FzIGVmZmVjdG9ycyBzdWNoIGFzIENhczkgYW5kIENhczEyIHBlcmZvcm0gZ3VpZGUtUk5BLWRlcGVuZGVudCBETkEgY2xlYXZhZ2UxLiBBbHRob3VnaCBhIGZldyBldWthcnlvdGljIFJOQS1ndWlkZWQgc3lzdGVtcyBoYXZlIGJlZW4gc3R1ZGllZCwgaW5jbHVkaW5nIFJOQSBpbnRlcmZlcmVuY2UyIGFuZCByaWJvc29tYWwgUk5BIG1vZGlmaWNhdGlvbjMsIGl0IHJlbWFpbnMgdW5jbGVhciB3aGV0aGVyIGV1a2FyeW90ZXMgaGF2ZSBSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZXMuIFJlY2VudGx5LCBhIG5ldyBjbGFzcyBvZiBwcm9rYXJ5b3RpYyBSTkEtZ3VpZGVkIHN5c3RlbXMgKHRlcm1lZCBPTUVHQSkgd2FzIHJlcG9ydGVkNCw1LiBUaGUgT01FR0EgZWZmZWN0b3IgVG5wQiBpcyB0aGUgcHV0YXRpdmUgYW5jZXN0b3Igb2YgQ2FzMTIgYW5kIGhhcyBSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZSBhY3Rpdml0eTQsNi4gVG5wQiBtYXkgYWxzbyBiZSB0aGUgYW5jZXN0b3Igb2YgdGhlIGV1a2FyeW90aWMgdHJhbnNwb3Nvbi1lbmNvZGVkIEZhbnpvciAoRnopIHByb3RlaW5zNCw3LCByYWlzaW5nIHRoZSBwb3NzaWJpbGl0eSB0aGF0IGV1a2FyeW90ZXMgYXJlIGFsc28gZXF1aXBwZWQgd2l0aCBDUklTUFJcdTIwMTNDYXMgb3IgT01FR0EtbGlrZSBwcm9ncmFtbWFibGUgUk5BLWd1aWRlZCBlbmRvbnVjbGVhc2VzLiBIZXJlIHdlIHJlcG9ydCB0aGUgYmlvY2hlbWljYWwgY2hhcmFjdGVyaXphdGlvbiBvZiBGeiwgc2hvd2luZyB0aGF0IGl0IGlzIGFuIFJOQS1ndWlkZWQgRE5BIGVuZG9udWNsZWFzZS4gV2UgYWxzbyBzaG93IHRoYXQgRnogY2FuIGJlIHJlcHJvZ3JhbW1lZCBmb3IgaHVtYW4gZ2Vub21lIGVuZ2luZWVyaW5nIGFwcGxpY2F0aW9ucy4gRmluYWxseSwgd2UgcmVzb2x2ZSB0aGUgc3RydWN0dXJlIG9mIFNwaXplbGxvbXljZXMgcHVuY3RhdHVzIEZ6IGF0IDIuN1x1MjAwOVx1MDBDNSB1c2luZyBjcnlvZ2VuaWMgZWxlY3Ryb24gbWljcm9zY29weSwgc2hvd2luZyB0aGUgY29uc2VydmF0aW9uIG9mIGNvcmUgcmVnaW9ucyBhbW9uZyBGeiwgVG5wQiBhbmQgQ2FzMTIsIGRlc3BpdGUgZGl2ZXJzZSBjb2duYXRlIFJOQSBzdHJ1Y3R1cmVzLiBPdXIgcmVzdWx0cyBzaG93IHRoYXQgRnogaXMgYSBldWthcnlvdGljIE9NRUdBIHN5c3RlbSwgZGVtb25zdHJhdGluZyB0aGF0IFJOQS1ndWlkZWQgZW5kb251Y2xlYXNlcyBhcmUgcHJlc2VudCBpbiBhbGwgdGhyZWUgZG9tYWlucyBvZiBsaWZlLn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXtpam1zMjUwMzE2MjIsXG4gICAgdGl0bGUgICAgICAgID0ge0FuIEVmZmljaWVudCBFeHByZXNzaW9uIGFuZCBQdXJpZmljYXRpb24gUHJvdG9jb2wgZm9yIFNwQ2FzOSBOdWNsZWFzZSBhbmQgRXZhbHVhdGlvbiBvZiBEaWZmZXJlbnQgRGVsaXZlcnkgTWV0aG9kcyBvZiBSaWJvbnVjbGVvcHJvdGVpbn0sXG4gICAgYXV0aG9yICAgICAgID0ge0V2bWVub3YsIEtvbnN0YW50aW4gYW5kIFB1c3RvZ2Fyb3YsIE5pa29sYXkgYW5kIFBhbnRlbGVldiwgRG1pdHJpIGFuZCBTYWZpbiwgQXJ0dXIgYW5kIEFsa2FsYWV2YSwgRWxlbmF9LFxuICAgIHllYXIgICAgICAgICA9IDIwMjQsXG4gICAgam91cm5hbCAgICAgID0ge0ludGVybmF0aW9uYWwgSm91cm5hbCBvZiBNb2xlY3VsYXIgU2NpZW5jZXN9LFxuICAgIHZvbHVtZSAgICAgICA9IDI1LFxuICAgIG51bWJlciAgICAgICA9IDMsXG4gICAgZG9pICAgICAgICAgID0gezEwLjMzOTAvaWptczI1MDMxNjIyfSxcbiAgICBpc3NuICAgICAgICAgPSB7MTQyMi0wMDY3fSxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cubWRwaS5jb20vMTQyMi0wMDY3LzI1LzMvMTYyMn0sXG4gICAgYXJ0aWNsZS1udW1iZXIgPSAxNjIyLFxuICAgIHB1Ym1lZGlkICAgICA9IDM4MzM4ODk4LFxuICAgIGFic3RyYWN0ICAgICA9IHtUaGUgQ2x1c3RlcmVkIFJlZ3VsYXJseSBJbnRlcnNwYWNlZCBTaG9ydCBQYWxpbmRyb21pYyBSZXBlYXRzIChDUklTUFIpLUNhczkgc3lzdGVtIGlzIGEgcmV2b2x1dGlvbmFyeSB0b29sIGZvciBwcmVjaXNlIGdlbm9tZSBlZGl0aW5nIGFjcm9zcyB2YXJpb3VzIGNlbGwgdHlwZXMuIFJpYm9udWNsZW9wcm90ZWlucyAoUk5QcyksIGVuY29tcGFzc2luZyB0aGUgQ2FzOSBwcm90ZWluIGFuZCBndWlkZSBSTkEgKGdSTkEpLCBoYXZlIGVtZXJnZWQgYXMgYSBwcm9taXNpbmcgdGVjaG5pcXVlIGR1ZSB0byB0aGVpciBpbmNyZWFzZWQgc3BlY2lmaWNpdHkgYW5kIHJlZHVjZWQgb2ZmLXRhcmdldCBlZmZlY3RzLiBUaGlzIG1ldGhvZCBlbGltaW5hdGVzIHRoZSBuZWVkIGZvciBwbGFzbWlkIEROQSBpbnRyb2R1Y3Rpb24sIHRoZXJlYnkgcHJldmVudGluZyBwb3RlbnRpYWwgaW50ZWdyYXRpb24gb2YgZm9yZWlnbiBETkEgaW50byB0aGUgdGFyZ2V0IGNlbGwgZ2Vub21lLiBHaXZlbiB0aGUgcmVxdWlyZW1lbnQgZm9yIGxhcmdlIHF1YW50aXRpZXMgb2YgaGlnaGx5IHB1cmlmaWVkIHByb3RlaW4gaW4gdmFyaW91cyBDYXM5IHN0dWRpZXMsIHdlIHByZXNlbnQgYW4gZWZmaWNpZW50IGFuZCBzaW1wbGUgbWV0aG9kIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgcmVjb21iaW5hbnQgU3RyZXB0b2NvY2N1cyBweW9nZW5lcyBDYXM5IChTcENhczkpIHByb3RlaW4uIFRoaXMgbWV0aG9kIGxldmVyYWdlcyB0aGUgU21hbGwgVWJpcXVpdGluIExpa2UgTW9kaWZpZXIoU1VNTykgdGFnIHN5c3RlbSwgd2hpY2ggaW5jbHVkZXMgbWV0YWwtYWZmaW5pdHkgY2hyb21hdG9ncmFwaHkgZm9sbG93ZWQgYnkgYW5pb24tZXhjaGFuZ2UgY2hyb21hdG9ncmFwaHkgcHVyaWZpY2F0aW9uLiBGdXJ0aGVybW9yZSwgd2UgY29tcGFyZSB0d28gbWV0aG9kcyBvZiBDUklTUFItQ2FzOSBzeXN0ZW0gZGVsaXZlcnkgaW50byBjZWxsczogdHJhbnNmZWN0aW9uIHdpdGggcGxhc21pZCBETkEgZW5jb2RpbmcgdGhlIENSSVNQUi1DYXM5IHN5c3RlbSBhbmQgUk5QIHRyYW5zZmVjdGlvbiB3aXRoIHRoZSBDYXM5LWdSTkEgY29tcGxleC4gV2UgZXN0aW1hdGUgdGhlIGVmZmljaWVuY3kgb2YgZ2Vub21pYyBlZGl0aW5nIGFuZCBwcm90ZWluIGxpZmVzcGFuIHBvc3QtdHJhbnNmZWN0aW9uLiBJbnRyaWd1aW5nbHksIHdlIGZvdW5kIHRoYXQgUk5QIHRyZWF0bWVudCBvZiBjZWxscywgZXZlbiBpbiB0aGUgYWJzZW5jZSBvZiBhIHRyYW5zZmVjdGlvbiBzeXN0ZW0sIGlzIGEgcmVsYXRpdmVseSBlZmZpY2llbnQgbWV0aG9kIGZvciBSTlAgZGVsaXZlcnkgaW50byBjZWxsIGN1bHR1cmUuIFRoaXMgZGlzY292ZXJ5IGlzIHBhcnRpY3VsYXJseSBwcm9taXNpbmcgYXMgaXQgY2FuIHNpZ25pZmljYW50bHkgcmVkdWNlIGN5dG90b3hpY2l0eSwgd2hpY2ggaXMgY3J1Y2lhbCBmb3IgY2VydGFpbiBjZWxsIGN1bHR1cmVzIHN1Y2ggYXMgaW5kdWNlZCBwbHVyaXBvdGVudCBzdGVtIGNlbGxzIChpUFNDcykufVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXtIaWxsYXJ5MjAyM1JldmlldyxcbiAgICB0aXRsZSAgICAgICAgPSB7QSBSZXZpZXcgb24gdGhlIE1lY2hhbmlzbSBhbmQgQXBwbGljYXRpb25zIG9mIENSSVNQUi9DYXM5L0NhczEyL0NhczEzL0NhczE0IFByb3RlaW5zIFV0aWxpemVkIGZvciBHZW5vbWUgRW5naW5lZXJpbmd9LFxuICAgIGF1dGhvciAgICAgICA9IHtIaWxsYXJ5LCBWLiBFLiBhbmQgQ2Vhc2FyLCBTLiBBLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMyxcbiAgICBqb3VybmFsICAgICAgPSB7TW9sZWN1bGFyIEJpb3RlY2hub2xvZ3l9LFxuICAgIHZvbHVtZSAgICAgICA9IDY1LFxuICAgIHBhZ2VzICAgICAgICA9IHszMTEtLTMyNX0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMDcvczEyMDMzLTAyMi0wMDU2Ny0wfVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXsxMC4zMzg5L2ZnZWVkLjIwMjQuMTQ3MTcyMCxcbiAgICB0aXRsZSAgICAgICAgPSB7VXNlIG9mIHBhaXJlZCBDYXM5LU5HIG5pY2thc2UgYW5kIHRydW5jYXRlZCBzZ1JOQXMgZm9yIHNpbmdsZS1udWNsZW90aWRlIG1pY3JvYmlhbCBnZW5vbWUgZWRpdGluZ30sXG4gICAgYXV0aG9yICAgICAgID0ge0plb25nLCBTb25nIEhlZSAgYW5kIExlZSwgSG8gSm91bmcgIGFuZCBMZWUsIFNhbmcgSnVufSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxuICAgIGpvdXJuYWwgICAgICA9IHtGcm9udGllcnMgaW4gR2Vub21lIEVkaXRpbmd9LFxuICAgIHZvbHVtZSAgICAgICA9IDYsXG4gICAgZG9pICAgICAgICAgID0gezEwLjMzODkvZmdlZWQuMjAyNC4xNDcxNzIwfSxcbiAgICBpc3NuICAgICAgICAgPSB7MjY3My0zNDM5fSxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuZnJvbnRpZXJzaW4ub3JnL2pvdXJuYWxzL2dlbm9tZS1lZGl0aW5nL2FydGljbGVzLzEwLjMzODkvZmdlZWQuMjAyNC4xNDcxNzIwfSxcbiAgICBhYnN0cmFjdCAgICAgPSB7PHA+VGhlIHBhaXJlZCBuaWNrYXNlcyBhcHByb2FjaCwgd2hpY2ggdXRpbGl6ZXMgY2x1c3RlcmVkIHJlZ3VsYXJseSBpbnRlcnNwYWNlZCBzaG9ydCBwYWxpbmRyb21pYyByZXBlYXRzIChDUklTUFIpLUNSSVNQUi1hc3NvY2lhdGVkIHByb3RlaW5zIChDYXMpIG5pY2thc2UgYW5kIGR1YWwgZ3VpZGUgUk5BLCBoYXMgdGhlIGFkdmFudGFnZSBvZiByZWR1Y2luZyBvZmYtdGFyZ2V0IGVmZmVjdHMgYnkgYmVpbmcgYWJsZSB0byBkb3VibGUgdGhlIHRhcmdldCBzZXF1ZW5jZS4gSW4gdGhpcyBzdHVkeSwgb3VyIHJlc2VhcmNoIHV0aWxpemVkIHRoZSBDYXM5LU5HIG5pY2thc2UgdmFyaWFudCB0byBtaW5pbWl6ZSBQQU0gc2VxdWVuY2UgY29uc3RyYWludHMsIGVuYWJsaW5nIHRoZSBnZW5lcmF0aW9uIG9mIHBhaXJlZCBuaWNrcyBhdCBkZXNpcmVkIGdlbm9taWMgbG9jaS4gV2UgcGVyZm9ybWVkIGEgc3lzdGVtYXRpYyBpbnZlc3RpZ2F0aW9uIGludG8gdGhlIGZvcm1hdGlvbiBzaXRlcyBmb3IgZG91YmxlIG5pY2tzIGFuZCB0aGUgZGVzaWduIG9mIGRvbm9yIEROQSB3aXRoaW4gYSBiYWN0ZXJpYWwgbW9kZWwgc3lzdGVtLiBBbHRob3VnaCB3ZSBzdWNjZXNzZnVsbHkgaWRlbnRpZmllZCB0aGUgY29uZGl0aW9ucyBuZWNlc3NhcnkgZm9yIHRoZSBlZmZlY3RpdmUgZm9ybWF0aW9uIG9mIGRvdWJsZSBuaWNrcyA8aXRhbGljPmluIHZpdm88L2l0YWxpYz4sIGFjaGlldmluZyBzaW5nbGUtbnVjbGVvdGlkZSBsZXZlbCBlZGl0aW5nIGRpcmVjdGx5IGF0IHRoZSB0YXJnZXQgc2l0ZXMgaW4gdGhlIGdlbm9tZSBwcm92ZWQgY2hhbGxlbmdpbmcuIE5vbmV0aGVsZXNzLCBvdXIgZXhwZXJpbWVudHMgcmV2ZWFsZWQgdGhhdCBlZmZpY2llbnQgZWRpdGluZyBhdCB0aGUgc2luZ2xlLW51Y2xlb3RpZGUgbGV2ZWwgd2FzIGFjaGlldmFibGUgb24gdGFyZ2V0IEROQSBzZXF1ZW5jZXMgdGhhdCBhcmUgaHlicmlkaXplZCB3aXRoIDVcdTIwMzItZW5kLXRydW5jYXRlZCBkdWFsIHNpbmdsZS1ndWlkZSBSTkFzIChzZ1JOQXMpLiBPdXIgZmluZGluZ3MgY29udHJpYnV0ZSB0byBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIG9mIHRoZSBwYWlyZWQgbmlja2FzZXMgYXBwcm9hY2gsIG9mZmVyaW5nIGEgc2luZ2xlLW1pc21hdGNoIGludG9sZXJhbmNlIGRlc2lnbiBzdHJhdGVneSBmb3IgYWNjdXJhdGUgbnVjbGVvdGlkZSBlZGl0aW5nLiBUaGlzIHN0cmF0ZWd5IG5vdCBvbmx5IGVuaGFuY2VzIHRoZSBwcmVjaXNpb24gb2YgZ2Vub21lIGVkaXRpbmcgYnV0IGFsc28gbWFya3MgYSBzaWduaWZpY2FudCBzdGVwIGZvcndhcmQgaW4gdGhlIGRldmVsb3BtZW50IG9mIG5pY2thc2UtZGVyaXZlZCBnZW5vbWUgZWRpdGluZyB0ZWNobm9sb2dpZXMuPC9wPn1cbiAgfVxuICBgLGBcbiAgQGFydGljbGV7QmFkb24yMDI0Q1JJU1BSLFxuXHR0aXRsZSAgICAgICAgPSB7UmVjZW50IGFwcGxpY2F0aW9uIG9mIENSSVNQUi1DYXMxMiBhbmQgT01FR0Egc3lzdGVtIGZvciBnZW5vbWUgZWRpdGluZ30sXG5cdGF1dGhvciAgICAgICA9IHtCYWRvbiwgSXNhYmVsIFdlbiBhbmQgT2gsIFllb25zdW4gYW5kIEtpbSwgSG8tSm9vbmcgYW5kIExlZSwgU2V1bmcgSHdhbn0sXG5cdHllYXIgICAgICAgICA9IDIwMjQsXG5cdG1vbnRoICAgICAgICA9IHtKYW51YXJ5fSxcblx0am91cm5hbCAgICAgID0ge01vbGVjdWxhciBUaGVyYXB5fSxcblx0dm9sdW1lICAgICAgID0gMzIsXG5cdG51bWJlciAgICAgICA9IDEsXG5cdHBhZ2VzICAgICAgICA9IHszMi0tNDN9LFxuXHRkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnltdGhlLjIwMjMuMTEuMDEzfSxcblx0dXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LmNlbGwuY29tL21vbGVjdWxhci10aGVyYXB5L2Z1bGx0ZXh0L1MxNTI1LTAwMTYoMjMpMDAxMTMtMn1cbiAgfVxuICBgLGBcbiAgQGFydGljbGV7S2ltMjAyNE5pY2tpbmcsXG5cdHRpdGxlICAgICAgICA9IHtVdGlsaXphdGlvbiBvZiBuaWNraW5nIHByb3BlcnRpZXMgb2YgQ1JJU1BSLUNhczEyYSBlZmZlY3RvciBmb3IgZ2Vub21lIGVkaXRpbmd9LFxuXHRhdXRob3IgICAgICAgPSB7S2ltLCBDaGFuIEh5b3VuZyBhbmQgTGVlLCBXaS1qYWUgYW5kIE9oLCBZZW9uc3VuIGFuZCBMZWUsIFlvdW5namVvbiBhbmQgTGVlLCBIeW9taW4gSy4gYW5kIFNlb25nLCBKdW5nIEJhZSBhbmQgTGltLCBLeXVuZy1TZW9iIGFuZCBQYXJrLCBTYW5nIEplIGFuZCBIdWgsIEphZS1Xb24gYW5kIEtpbSwgWW91bmctSHl1biBhbmQgS2ltLCBLeW91bmcgTWkgYW5kIEh1ciwgSnVuaG8gSy4gYW5kIExlZSwgU2V1bmcgSHdhbn0sXG5cdHllYXIgICAgICAgICA9IDIwMjQsXG5cdG1vbnRoICAgICAgICA9IHtGZWJydWFyeX0sXG5cdGpvdXJuYWwgICAgICA9IHtTY2llbnRpZmljIFJlcG9ydHN9LFxuXHR2b2x1bWUgICAgICAgPSAxNCxcblx0cGFnZXMgICAgICAgID0gMzM1Mixcblx0ZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTk4LTAyNC01MzY0OC0yfSxcblx0aXNzbiAgICAgICAgID0gezIwNDUtMjMyMn0sXG5cdHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uY2JpLm5sbS5uaWguZ292L3BtYy9hcnRpY2xlcy9QTUMxMDg1ODE5NX0sXG5cdHBtaWQgICAgICAgICA9IDM4MzM2OTc3LFxuXHRwbWNpZCAgICAgICAgPSB7UE1DMTA4NTgxOTV9XG4gIH1cbiAgYFxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEVuZ0RlbHNvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG4gIGBcbiAgQGFydGljbGV7VEFIQTIwMjIzNDUsXG4gICAgdGl0bGUgICAgICAgID0ge0RlbGl2ZXJ5IG9mIENSSVNQUi1DYXMgdG9vbHMgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweTogVHJlbmRzIGFuZCBjaGFsbGVuZ2VzfSxcbiAgICBhdXRob3IgICAgICAgPSB7RW1hbiBBLiBUYWhhIGFuZCBKb3NlcGggTGVlIGFuZCBBa2l0c3UgSG90dGF9LFxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXG4gICAgam91cm5hbCAgICAgID0ge0pvdXJuYWwgb2YgQ29udHJvbGxlZCBSZWxlYXNlfSxcbiAgICB2b2x1bWUgICAgICAgPSAzNDIsXG4gICAgcGFnZXMgICAgICAgID0gezM0NS0tMzYxfSxcbiAgICBkb2kgICAgICAgICAgPSB7aHR0cHM6Ly9kb2kub3JnLzEwLjEwMTYvai5qY29ucmVsLjIwMjIuMDEuMDEzfSxcbiAgICBpc3NuICAgICAgICAgPSB7MDE2OC0zNjU5fSxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuc2NpZW5jZWRpcmVjdC5jb20vc2NpZW5jZS9hcnRpY2xlL3BpaS9TMDE2ODM2NTkyMjAwMDI3WH0sXG4gICAga2V5d29yZHMgICAgID0ge0NSSVNQUi1DYXMsIERlbGl2ZXJ5LCBBQVYsIFZpcnVzLWxpa2UgcGFydGljbGUsIExpcGlkIG5hbm9wYXJ0aWNsZSwgR2VuZSB0aGVyYXB5fSxcbiAgICBhYnN0cmFjdCAgICAgPSB7VGhlIGRpc2NvdmVyeSBvZiBjbHVzdGVyZWQgcmVndWxhcmx5IGludGVyc3BhY2VkIHNob3J0IHBhbGluZHJvbWljIHJlcGVhdHMgKENSSVNQUikgZ2Vub21lIGVkaXRpbmcgdGVjaG5vbG9neSBvcGVuZWQgdGhlIGRvb3IgdG8gcHJvdmlkZSBhIHZlcnNhdGlsZSBhcHByb2FjaCBmb3IgdHJlYXRpbmcgbXVsdGlwbGUgZGlzZWFzZXMuIFByb21pc2luZyByZXN1bHRzIGhhdmUgYmVlbiBzaG93biBpbiBudW1lcm91cyBwcmUtY2xpbmljYWwgc3R1ZGllcyBhbmQgY2xpbmljYWwgdHJpYWxzLiBIb3dldmVyLCBhIHNhZmUgYW5kIGVmZmVjdGl2ZSBtZXRob2QgdG8gZGVsaXZlciBnZW5vbWUtZWRpdGluZyBjb21wb25lbnRzIGlzIHN0aWxsIGEga2V5IGNoYWxsZW5nZSBmb3IgaW4gdml2byBnZW5vbWUgZWRpdGluZyB0aGVyYXB5LiBBZGVuby1hc3NvY2lhdGVkIHZpcnVzIChBQVYpIGlzIG9uZSBvZiB0aGUgbW9zdCBjb21tb25seSB1c2VkIHZlY3RvciBzeXN0ZW1zIHRvIGRhdGUsIGJ1dCBpbW11bm9nZW5pY2l0eSBhZ2FpbnN0IGNhcHNpZCwgbGl2ZXIgdG94aWNpdHkgYXQgaGlnaCBkb3NlLCBhbmQgcG90ZW50aWFsIGdlbm90b3hpY2l0eSBjYXVzZWQgYnkgb2ZmLXRhcmdldCBtdXRhZ2VuZXNpcyBhbmQgZ2Vub21pYyBpbnRlZ3JhdGlvbiByZW1haW4gdW5zb2x2ZWQuIFJlY2VudGx5IGRldmVsb3BlZCB0cmFuc2llbnQgZGVsaXZlcnkgc3lzdGVtcywgc3VjaCBhcyB2aXJ1cy1saWtlIHBhcnRpY2xlIChWTFApIGFuZCBsaXBpZCBuYW5vcGFydGljbGUgKExOUCksIG1heSBzb2x2ZSBzb21lIG9mIHRoZSBpc3N1ZXMuIFRoaXMgcmV2aWV3IHN1bW1hcml6ZXMgZXhpc3RpbmcgaW4gdml2byBkZWxpdmVyeSBzeXN0ZW1zIGFuZCBwb3NzaWJsZSBzb2x1dGlvbnMgdG8gb3ZlcmNvbWUgdGhlaXIgbGltaXRhdGlvbnMuIEFsc28sIHdlIGhpZ2hsaWdodCB0aGUgb25nb2luZyBjbGluaWNhbCB0cmlhbHMgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweSBhbmQgcmVjZW50bHkgZGV2ZWxvcGVkIGdlbm9tZSBlZGl0aW5nIHRvb2xzIGZvciB0aGVpciBwb3RlbnRpYWwgYXBwbGljYXRpb25zLn1cbiAgfVxuICBgLGBcbiAgQGFydGljbGV7dmVybWFfbGFuZHNjYXBlXzIwMjMsXG4gICAgdGl0bGUgICAgICAgID0ge1RoZSBsYW5kc2NhcGUgZm9yIGxpcGlkLW5hbm9wYXJ0aWNsZS1iYXNlZCBnZW5vbWljIG1lZGljaW5lc30sXG4gICAgYXV0aG9yICAgICAgID0ge1Zlcm1hLCBNYWx2aWthIGFuZCBPemVyLCBJbXJhbiBhbmQgWGllLCBXZW4gYW5kIEdhbGxhZ2hlciwgUnlhbiBhbmQgVGVpeGVpcmEsIEFsZXhhbmRyYSBhbmQgQ2hveSwgTWljaGFlbH0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMyxcbiAgICBtb250aCAgICAgICAgPSBtYXksXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZSBSZXZpZXdzIERydWcgRGlzY292ZXJ5fSxcbiAgICB2b2x1bWUgICAgICAgPSAyMixcbiAgICBudW1iZXIgICAgICAgPSA1LFxuICAgIHBhZ2VzICAgICAgICA9IHszNDktLTM1MH0sXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvZDQxNTczLTAyMy0wMDAwMi0yfSxcbiAgICBpc3NuICAgICAgICAgPSB7MTQ3NC0xNzc2LCAxNDc0LTE3ODR9LFxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uYXR1cmUuY29tL2FydGljbGVzL2Q0MTU3My0wMjMtMDAwMDItMn0sXG4gICAgdXJsZGF0ZSAgICAgID0gezIwMjQtMDktMTZ9LFxuICAgIGNvcHlyaWdodCAgICA9IHtodHRwczovL3d3dy5zcHJpbmdlcm5hdHVyZS5jb20vZ3AvcmVzZWFyY2hlcnMvdGV4dC1hbmQtZGF0YS1taW5pbmd9LFxuICAgIGxhbmd1YWdlICAgICA9IHtlbn0sXG4gICAgZmlsZSAgICAgICAgID0ge1Zlcm1hIGV0IGFsLiAtIDIwMjMgLSBUaGUgbGFuZHNjYXBlIGZvciBsaXBpZC1uYW5vcGFydGljbGUtYmFzZWQgZ2Vub21pYy5wZGY6Q1xcOlxcXFxVc2Vyc1xcXFxJc2FiZWxsXFxcXFpvdGVyb1xcXFxzdG9yYWdlXFxcXFpFU1BXN0pKXFxcXFZlcm1hIGV0IGFsLiAtIDIwMjMgLSBUaGUgbGFuZHNjYXBlIGZvciBsaXBpZC1uYW5vcGFydGljbGUtYmFzZWQgZ2Vub21pYy5wZGY6YXBwbGljYXRpb24vcGRmfVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXt0YWhhX2RlbGl2ZXJ5XzIwMjIsXG4gICAgdGl0bGUgICAgICAgID0ge0RlbGl2ZXJ5IG9mIHtDUklTUFJ9LXtDYXN9IHRvb2xzIGZvciBpbiB2aXZvIGdlbm9tZSBlZGl0aW5nIHRoZXJhcHk6IHtUcmVuZHN9IGFuZCBjaGFsbGVuZ2VzfSxcbiAgICBzaG9ydHRpdGxlICAgPSB7RGVsaXZlcnkgb2Yge0NSSVNQUn0te0Nhc30gdG9vbHMgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweX0sXG4gICAgYXV0aG9yICAgICAgID0ge1RhaGEsIEVtYW4gQS4gYW5kIExlZSwgSm9zZXBoIGFuZCBIb3R0YSwgQWtpdHN1fSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDIyLFxuICAgIG1vbnRoICAgICAgICA9IGZlYixcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2V9LFxuICAgIHZvbHVtZSAgICAgICA9IDM0MixcbiAgICBwYWdlcyAgICAgICAgPSB7MzQ1LS0zNjF9LFxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDE2L2ouamNvbnJlbC4yMDIyLjAxLjAxM30sXG4gICAgaXNzbiAgICAgICAgID0gezAxNjgzNjU5fSxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly9saW5raW5naHViLmVsc2V2aWVyLmNvbS9yZXRyaWV2ZS9waWkvUzAxNjgzNjU5MjIwMDAyN1h9LFxuICAgIHVybGRhdGUgICAgICA9IHsyMDI0LTA5LTE2fSxcbiAgICBhYnN0cmFjdCAgICAgPSB7VGhlIGRpc2NvdmVyeSBvZiBjbHVzdGVyZWQgcmVndWxhcmx5IGludGVyc3BhY2VkIHNob3J0IHBhbGluZHJvbWljIHJlcGVhdHMgKENSSVNQUikgZ2Vub21lIGVkaXRpbmcgdGVjaG5vbG9neSBvcGVuZWQgdGhlIGRvb3IgdG8gcHJvdmlkZSBhIHZlcnNhdGlsZSBhcHByb2FjaCBmb3IgdHJlYXRpbmcgbXVsdGlwbGUgZGlzZWFzZXMuIFByb21pc2luZyByZXN1bHRzIGhhdmUgYmVlbiBzaG93biBpbiBudW1lcm91cyBwcmUtY2xpbmljYWwgc3R1ZGllcyBhbmQgY2xpbmljYWwgdHJpYWxzLiBIb3dldmVyLCBhIHNhZmUgYW5kIGVmZmVjdGl2ZSBtZXRob2QgdG8gZGVsaXZlciBnZW5vbWUtZWRpdGluZyBjb21wb25lbnRzIGlzIHN0aWxsIGEga2V5IGNoYWxsZW5nZSBmb3IgaW4gdml2byBnZW5vbWUgZWRpdGluZyB0aGVyYXB5LiBBZGVuby1hc3NvY2lhdGVkIHZpcnVzIChBQVYpIGlzIG9uZSBvZiB0aGUgbW9zdCBjb21tb25seSB1c2VkIHZlY3RvciBzeXN0ZW1zIHRvIGRhdGUsIGJ1dCBpbW11bm9nZW5pY2l0eSBhZ2FpbnN0IGNhcHNpZCwgbGl2ZXIgdG94aWNpdHkgYXQgaGlnaCBkb3NlLCBhbmQgcG90ZW50aWFsIGdlbm90b3hpY2l0eSBjYXVzZWQgYnkgb2ZmLXRhcmdldCBtdXRhZ2VuZXNpcyBhbmQgZ2Vub21pYyBpbnRlZ3JhdGlvbiByZW1haW4gdW5zb2x2ZWQuIFJlY2VudGx5IGRldmVsb3BlZCB0cmFuc2llbnQgZGVsaXZlcnkgc3lzdGVtcywgc3VjaCBhcyB2aXJ1cy1saWtlIHBhcnRpY2xlIChWTFApIGFuZCBsaXBpZCBuYW5vcGFydGljbGUgKExOUCksIG1heSBzb2x2ZSBzb21lIG9mIHRoZSBpc3N1ZXMuIFRoaXMgcmV2aWV3IHN1bW1hcml6ZXMgZXhpc3RpbmcgaW4gdml2byBkZWxpdmVyeSBzeXN0ZW1zIGFuZCBwb3NzaWJsZSBzb2x1dGlvbnMgdG8gb3ZlcmNvbWUgdGhlaXIgbGltaXRhdGlvbnMuIEFsc28sIHdlIGhpZ2hsaWdodCB0aGUgb25nb2luZyBjbGluaWNhbCB0cmlhbHMgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweSBhbmQgcmVjZW50bHkgZGV2ZWxvcGVkIGdlbm9tZSBlZGl0aW5nIHRvb2xzIGZvciB0aGVpciBwb3RlbnRpYWwgYXBwbGljYXRpb25zLn0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG4gIGAsYFxuICBAbWFudWFse2NheW1hbl9jaGVtaWNhbF9saXBpZGxhdW5jaF9wcm90b2NvbCxcbiAgICB0aXRsZSAgICAgICAgPSB7TGlwaWRMYXVuY2hcdTIxMjIgTE5QLTEwMiBFeHBsb3JhdGlvbiBLaXQgUHJvdG9jb2x9LFxuICAgIGF1dGhvciAgICAgICA9IHt7Q2F5bWFuIENoZW1pY2FsfX0sXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly9jZG4uY2F5bWFuY2hlbS5jb20vY2RuL2luc2VydC8zNTQyNS5wZGZ9LFxuICAgIG5vdGUgICAgICAgICA9IHtBY2Nlc3NlZDogMjAyNC0wOS0xNn1cbiAgfVxuICBgLGBcbiAgQG1pc2N7Y29yZGVuX3BoYXJtYV9sbnBfMjAyNCxcbiAgICB0aXRsZSAgICAgICAgPSB7TE5QIEZvcm11bGF0aW9uIGFuZCBNYW51ZmFjdHVyaW5nfSxcbiAgICBhdXRob3IgICAgICAgPSB7e0NvcmRlbiBQaGFybWF9fSxcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL2NvcmRlbnBoYXJtYS5jb20vd2hhdC15b3UtbmVlZC9kcnVnLXByb2R1Y3RzL3N1cHBvcnQtc2VydmljZXMvbG5wLWZvcm11bGF0aW9uLW1hbnVmYWN0dXJpbmcvfSxcbiAgICBub3RlICAgICAgICAgPSB7QWNjZXNzZWQ6IDIwMjQtMDktMTh9XG4gIH1cbiAgYCxgXG4gIEBhcnRpY2xle3dlaV9sdW5nXzIwMjMsXG4gICAgdGl0bGUgICAgICAgID0ge0x1bmcge1NPUlR9IHtMTlBzfSBlbmFibGUgcHJlY2lzZSBob21vbG9neS1kaXJlY3RlZCByZXBhaXIgbWVkaWF0ZWQge0NSSVNQUn0ve0Nhc30gZ2Vub21lIGNvcnJlY3Rpb24gaW4gY3lzdGljIGZpYnJvc2lzIG1vZGVsc30sXG4gICAgYXV0aG9yICAgICAgID0ge1dlaSwgVHVvIGFuZCBTdW4sIFllaHVpIGFuZCBDaGVuZywgUWlhbmcgYW5kIENoYXR0ZXJqZWUsIFN1bWFudGEgYW5kIFRyYXlsb3IsIFphY2hhcnkgYW5kIEpvaG5zb24sIExpbmRzYXkgVC4gYW5kIENvcXVlbGluLCBNZWxpc3NhIEwuIGFuZCBXYW5nLCBKaWFsdSBhbmQgVG9ycmVzLCBNaWNoYWVsIEouIGFuZCBMaWFuLCBYaXpoZW4gYW5kIFdhbmcsIFh1IGFuZCBYaWFvLCBZdWZlbiBhbmQgSG9kZ2VzLCBDcmFpZyBBLiBhbmQgU2llZ3dhcnQsIERhbmllbCBKLn0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMyxcbiAgICBtb250aCAgICAgICAgPSBub3YsXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZSBDb21tdW5pY2F0aW9uc30sXG4gICAgdm9sdW1lICAgICAgID0gMTQsXG4gICAgbnVtYmVyICAgICAgID0gMSxcbiAgICBwYWdlcyAgICAgICAgPSA3MzIyLFxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDM4L3M0MTQ2Ny0wMjMtNDI5NDgtMn0sXG4gICAgaXNzbiAgICAgICAgID0gezIwNDEtMTcyM30sXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5hdHVyZS5jb20vYXJ0aWNsZXMvczQxNDY3LTAyMy00Mjk0OC0yfSxcbiAgICB1cmxkYXRlICAgICAgPSB7MjAyNC0wNC0xNn0sXG4gICAgY29weXJpZ2h0ICAgID0gezIwMjMgVGhlIEF1dGhvcihzKX0sXG4gICAgbm90ZSAgICAgICAgID0ge1B1Ymxpc2hlcjogTmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LFxuICAgIGFic3RyYWN0ICAgICA9IHtBcHByb3hpbWF0ZWx5IDEwXFwlIG9mIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHBhdGllbnRzLCBwYXJ0aWN1bGFybHkgdGhvc2Ugd2l0aCBDRiB0cmFuc21lbWJyYW5lIGNvbmR1Y3RhbmNlIHJlZ3VsYXRvciAoQ0ZUUikgZ2VuZSBub25zZW5zZSBtdXRhdGlvbnMsIGxhY2sgZWZmZWN0aXZlIHRyZWF0bWVudHMuIFRoZSBwb3RlbnRpYWwgb2YgZ2VuZSBjb3JyZWN0aW9uIHRoZXJhcHkgdGhyb3VnaCBkZWxpdmVyeSBvZiB0aGUgQ1JJU1BSL0NhcyBzeXN0ZW0gdG8gQ0YtcmVsZXZhbnQgb3JnYW5zL2NlbGxzIGlzIGhpbmRlcmVkIGJ5IHRoZSBsYWNrIG9mIGVmZmljaWVudCBnZW5vbWUgZWRpdG9yIGRlbGl2ZXJ5IGNhcnJpZXJzLiBIZXJlaW4sIHdlIHJlcG9ydCBpbXByb3ZlZCBMdW5nIFNlbGVjdGl2ZSBPcmdhbiBUYXJnZXRpbmcgTGlwaWQgTmFub3BhcnRpY2xlcyAoU09SVCBMTlBzKSBmb3IgZWZmaWNpZW50IGRlbGl2ZXJ5IG9mIENhczkgbVJOQSwgc2dSTkEsIGFuZCBkb25vciBzc0ROQSB0ZW1wbGF0ZXMsIGVuYWJsaW5nIHByZWNpc2UgaG9tb2xvZ3ktZGlyZWN0ZWQgcmVwYWlyLW1lZGlhdGVkIGdlbmUgY29ycmVjdGlvbiBpbiBDRiBtb2RlbHMuIE9wdGltaXplZCBMdW5nIFNPUlQgTE5QcyBkZWxpdmVyIG1STkEgdG8gbHVuZyBiYXNhbCBjZWxscyBpbiBBaTkgcmVwb3J0ZXIgbWljZS4gU09SVCBMTlAgdHJlYXRtZW50IHN1Y2Nlc3NmdWxseSBjb3JyZWN0ZWQgdGhlIENGVFIgbXV0YXRpb25zIGluIGhvbW96eWdvdXMgRzU0MlggbWljZSBhbmQgaW4gcGF0aWVudC1kZXJpdmVkIGh1bWFuIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIHdpdGggaG9tb3p5Z291cyBGNTA4ZGVsIG11dGF0aW9ucywgbGVhZGluZyB0byB0aGUgcmVzdG9yYXRpb24gb2YgQ0ZUUiBwcm90ZWluIGV4cHJlc3Npb24gYW5kIGNobG9yaWRlIHRyYW5zcG9ydCBmdW5jdGlvbi4gVGhpcyBwcm9vZi1vZi1jb25jZXB0IHN0dWR5IHdpbGwgY29udHJpYnV0ZSB0byBhY2NlbGVyYXRpbmcgdGhlIGNsaW5pY2FsIGRldmVsb3BtZW50IG9mIG1STkEgTE5QcyBmb3IgQ0YgdHJlYXRtZW50IHRocm91Z2ggQ1JJU1BSL0NhcyBnZW5lIGNvcnJlY3Rpb24ufSxcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59LFxuICAgIGtleXdvcmRzICAgICA9IHtCaW9tZWRpY2FsIGVuZ2luZWVyaW5nLCBDUklTUFItQ2FzOSBnZW5vbWUgZWRpdGluZywgR2VuZSBkZWxpdmVyeX1cbiAgfVxuICBgLGBcbiAgQGFydGljbGV7SUJSQUhJTTIwMjIyMTUsXG4gICAgdGl0bGUgICAgICAgID0ge1BvbHlldGh5bGVuZSBnbHljb2wgKFBFRyk6IFRoZSBuYXR1cmUsIGltbXVub2dlbmljaXR5LCBhbmQgcm9sZSBpbiB0aGUgaHlwZXJzZW5zaXRpdml0eSBvZiBQRUd5bGF0ZWQgcHJvZHVjdHN9LFxuICAgIGF1dGhvciAgICAgICA9IHtNb2hhbWVkIElicmFoaW0gYW5kIEVzbGFtIFJhbWFkYW4gYW5kIE5laGFsIEUuIEVsc2FkZWsgYW5kIFNoZXJpZiBFLiBFbWFtIGFuZCBUYXJvIFNoaW1penUgYW5kIEhpZGVub3JpIEFuZG8gYW5kIFl1IElzaGltYSBhbmQgT21hciBIZWxteSBFbGdhcmh5IGFuZCBIYXRlbSBBLiBTYXJoYW4gYW5kIEFtYWwgSy4gSHVzc2VpbiBhbmQgVGF0c3VoaXJvIElzaGlkYX0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMixcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2V9LFxuICAgIHZvbHVtZSAgICAgICA9IDM1MSxcbiAgICBwYWdlcyAgICAgICAgPSB7MjE1LS0yMzB9LFxuICAgIGRvaSAgICAgICAgICA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wOS4wMzF9LFxuICAgIGlzc24gICAgICAgICA9IHswMTY4LTM2NTl9LFxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMTY4MzY1OTIyMDA2MjY1fSxcbiAgICBrZXl3b3JkcyAgICAgPSB7UG9seWV0aHlsZW5lIGdseWNvbCAoUEVHKSwgYW50aS1QRUcgYW50aWJvZGllcywgSHlwZXJzZW5zaXRpdml0eSwgQ09WSUQtMTkgbVJOQSB2YWNjaW5lcywgY29tcGxlbWVudCBhY3RpdmF0aW9uLXJlbGF0ZWQgcHNldWRvYWxsZXJneSAoQ0FSUEEpfSxcbiAgICBhYnN0cmFjdCAgICAgPSB7UG9seWV0aHlsZW5lIGdseWNvbCAoUEVHKSBpcyBhIHZlcnNhdGlsZSBwb2x5bWVyIHRoYXQgaXMgd2lkZWx5IHVzZWQgYXMgYW4gYWRkaXRpdmUgaW4gZm9vZHMgYW5kIGNvc21ldGljcywgYW5kIGFzIGEgY2FycmllciBpbiBQRUd5bGF0ZWQgdGhlcmFwZXV0aWNzLiBFdmVuIHRob3VnaCBQRUcgaXMgdGhvdWdodCB0byBiZSBsZXNzIGltbXVub2dlbmljLCBvciBwZXJoYXBzIGV2ZW4gbm9uLWltbXVub2dlbmljLCB3aXRoIGEgdmFyaWV0eSBvZiBwaHlzaWNvY2hlbWljYWwgcHJvcGVydGllcywgdGhlcmUgaXMgbW91bnRpbmcgZXZpZGVuY2UgdGhhdCBQRUcgY2F1c2VzIGltbXVub2dlbmljIHJlc3BvbnNlcyB3aGVuIGNvbmp1Z2F0ZWQgd2l0aCBvdGhlciBtYXRlcmlhbHMgc3VjaCBhcyBwcm90ZWlucyBhbmQgbmFub2NhcnJpZXJzLiBVbmRlciB0aGVzZSBjb25kaXRpb25zLCBQRUcgd2l0aCBvdGhlciBtYXRlcmlhbHMgY2FuIHJlc3VsdCBpbiB0aGUgcHJvZHVjdGlvbiBvZiBhbnRpLVBFRyBhbnRpYm9kaWVzIGFmdGVyIGFkbWluaXN0cmF0aW9uLiBUaGUgYW50aWJvZGllcyB0aGF0IGFyZSBpbmR1Y2VkIHNlZW0gdG8gaGF2ZSBhIGRlbGV0ZXJpb3VzIGltcGFjdCBvbiB0aGUgdGhlcmFwZXV0aWMgZWZmaWNhY3kgb2Ygc3Vic2VxdWVudGx5IGFkbWluaXN0ZXJlZCBQRUd5bGF0ZWQgZm9ybXVsYXRpb25zLiBJbiBhZGRpdGlvbiwgaHlwZXJzZW5zaXRpdml0eSB0byBQRUd5bGF0ZWQgZm9ybXVsYXRpb25zIGNvdWxkIGJlIGEgc2lnbmlmaWNhbnQgYmFycmllciB0byB0aGUgdXRpbGl0eSBvZiBQRUd5bGF0ZWQgcHJvZHVjdHMuIFNldmVyYWwgcmVwb3J0cyBoYXZlIGxpbmtlZCB0aGUgcHJlc2VuY2Ugb2YgYW50aS1QRUcgYW50aWJvZGllcyB0byBpbmNpZGVuY2VzIG9mIGNvbXBsZW1lbnQgYWN0aXZhdGlvbi1yZWxhdGVkIHBzZXVkb2FsbGVyZ3kgKENBUlBBKSBmb2xsb3dpbmcgdGhlIGFkbWluaXN0cmF0aW9uIG9mIFBFR3lsYXRlZCBmb3JtdWxhdGlvbnMuIFRoZSB1c2Ugb2YgQ09WSUQtMTkgbVJOQSB2YWNjaW5lcywgd2hpY2ggYXJlIGNvbXBvc2VkIG1haW5seSBvZiBQRUd5bGF0ZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcyksIGhhcyByZWNlbnRseSBnYWluZWQgd2lkZSBhY2NlcHRhbmNlLCBhbHRob3VnaCBtYW55IGNhc2VzIG9mIHBvc3QtdmFjY2luYXRpb24gaHlwZXJzZW5zaXRpdml0eSBoYXZlIGJlZW4gZG9jdW1lbnRlZC4gVGhlcmVmb3JlLCBvdXIgcmV2aWV3IGZvY3VzZXMgbm90IG9ubHkgb24gdGhlIGltcG9ydGFuY2Ugb2YgUEVHcyBhbmQgaXRzIGdyZWF0IHJvbGUgaW4gaW1wcm92aW5nIHRoZSB0aGVyYXBldXRpYyBlZmZpY2FjeSBvZiB2YXJpb3VzIG1lZGljYXRpb25zLCBidXQgYWxzbyBvbiB0aGUgaHlwZXJzZW5zaXRpdml0eSByZWFjdGlvbnMgYXR0cmlidXRlZCB0byB0aGUgdXNlIG9mIFBFR3lsYXRlZCBwcm9kdWN0cyB0aGF0IGluY2x1ZGUgUEVHLWJhc2VkIG1STkEgQ09WSUQtMTkgdmFjY2luZXMufVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXtaSU1NRVJNQU5OMjAyMjEzNyxcbiAgICB0aXRsZSAgICAgICAgPSB7U3ByYXkgZHJ5aW5nIHNpUk5BLWxpcGlkIG5hbm9wYXJ0aWNsZXMgZm9yIGRyeSBwb3dkZXIgcHVsbW9uYXJ5IGRlbGl2ZXJ5fSxcbiAgICBhdXRob3IgICAgICAgPSB7Q2hyaXN0b3BoIE0uIFppbW1lcm1hbm4gYW5kIERvbWl6aWEgQmFsZGFzc2kgYW5kIEthcmVuIENoYW4gYW5kIE5hdGhhbiBCLlAuIEFkYW1zIGFuZCBBbGluYSBOZXVtYW5uIGFuZCBEaWFuYSBMZWlkeSBQb3JyYXMtR29uemFsZXogYW5kIFhpbiBXZWkgYW5kIE5pa29sYXVzIEtuZWlkaW5nZXIgYW5kIE1pcmNlYSBHYWJyaWVsIFN0b2xlcml1IGFuZCBHZXJhbGQgQnVyZ3N0YWxsZXIgYW5kIERvbWluaWsgV2l0emlnbWFubiBhbmQgUGFvbGEgTHVjaWFuaSBhbmQgT2xpdmlhIE0uIE1lcmtlbH0sXG4gICAgeWVhciAgICAgICAgID0gMjAyMixcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2V9LFxuICAgIHZvbHVtZSAgICAgICA9IDM1MSxcbiAgICBwYWdlcyAgICAgICAgPSB7MTM3LS0xNTB9LFxuICAgIGRvaSAgICAgICAgICA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wOS4wMjF9LFxuICAgIGlzc24gICAgICAgICA9IHswMTY4LTM2NTl9LFxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMTY4MzY1OTIyMDA2MTM3fSxcbiAgICBrZXl3b3JkcyAgICAgPSB7TGlwaWQgbmFub3BhcnRpY2xlcywgTE5QLCBPbnBhdHRyb1x1MDBBRSwgUk5BIHRoZXJhcGV1dGljcywgc2lSTkEgZGVsaXZlcnksIFNwcmF5IGRyeWluZywgUHVsbW9uYXJ5IGRlbGl2ZXJ5LCBSZXNwaXJhdG9yeSBkaXNlYXNlcywgSHVtYW4gcHJlY2lzaW9uLWN1dCBsdW5nIHNsaWNlcywgRm9ybXVsYXRpb24gc2NyZWVuaW5nfSxcbiAgICBhYnN0cmFjdCAgICAgPSB7V2hpbGUgYWxsIHRoZSBzaVJOQSBkcnVncyBvbiB0aGUgbWFya2V0IHRhcmdldCB0aGUgbGl2ZXIsIHRoZSBsdW5ncyBvZmZlciBhIHZhcmlldHkgb2YgY3VycmVudGx5IHVuZHJ1Z2dhYmxlIHRhcmdldHMgd2hpY2ggY291bGQgcG90ZW50aWFsbHkgYmUgdHJlYXRlZCB3aXRoIFJOQSB0aGVyYXBldXRpY3MuIEhlbmNlLCBsb2NhbCwgcHVsbW9uYXJ5IGRlbGl2ZXJ5IG9mIFJOQSBuYW5vcGFydGljbGVzIGNvdWxkIGZpbmFsbHkgZW5hYmxlIGRlbGl2ZXJ5IGJleW9uZCB0aGUgbGl2ZXIuIFRoZSBhZG1pbmlzdHJhdGlvbiBvZiBSTkEgZHJ1Z3MgdmlhIGRyeSBwb3dkZXIgaW5oYWxlcnMgb2ZmZXJzIG1hbnkgYWR2YW50YWdlcyByZWxhdGVkIHRvIHBoeXNpY2FsLCBjaGVtaWNhbCBhbmQgbWljcm9iaWFsIHN0YWJpbGl0eSBvZiBSTkEgYW5kIG5hbm9zdXNwZW5zaW9ucy4gVGhlIHByZXNlbnQgc3R1ZHkgd2FzIHRoZXJlZm9yZSBkZXNpZ25lZCB0byB0ZXN0IHRoZSBmZWFzaWJpbGl0eSBvZiBlbmdpbmVlcmluZyBzcHJheSBkcmllZCBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgcG93ZGVycy4gU3ByYXkgZHJ5aW5nIHdhcyBwZXJmb3JtZWQgdXNpbmcgNSUgbGFjdG9zZSBzb2x1dGlvbiAobS9WKSwgYW5kIHRoZSB0YXJnZXRzIHdlcmUgc2V0IHRvIG9idGFpbiBuYW5vcGFydGljbGUgc2l6ZXMgYWZ0ZXIgcmVkaXNwZXJzaW9uIG9mIHNwcmF5LWRyaWVkIHBvd2RlcnMgYXJvdW5kIDE1MFx1MjAyRm5tLCBhIHJlc2lkdWFsIG1vaXN0dXJlIGxldmVsIGJlbG93IDUlLCBhbmQgUk5BIGxvc3MgYmVsb3cgMTUlIGF0IG1haW50YWluZWQgUk5BIGJpb2FjdGl2aXR5LiBUaGUgTE5QcyBjb25zaXN0ZWQgb2YgYW4gaW9uaXphYmxlIGNhdGlvbmljIGxpcGlkIHdoaWNoIGlzIGEgc3VsZnVyLWNvbnRhaW5pbmcgYW5hbG9nIG9mIERMaW4tTUMzLURNQSwgYSBoZWxwZXIgbGlwaWQsIGNob2xlc3Rlcm9sLCBhbmQgUEVHLURNRyBlbmNhcHN1bGF0aW5nIHNpUk5BLiBQcmlvciB0byB0aGUgc3ByYXkgZHJ5aW5nLCB0aGUgbGF0dGVyIHByb2Nlc3Mgd2FzIHNpbXVsYXRlZCB3aXRoIGEgbm92ZWwgZHVhbCBlbWlzc2lvbiBmbHVvcmVzY2VuY2Ugc3BlY3Ryb3Njb3B5IG1ldGhvZCB0byBwcmVzZWxlY3QgdGhlIGhpZ2hlc3QgcG9zc2libGUgZHJ5aW5nIHRlbXBlcmF0dXJlIGFuZCBleGNpcGllbnQgc29sdXRpb24gbWFpbnRhaW5pbmcgTE5QIGludGVncml0eSBhbmQgc3RhYmlsaXR5LiBUaHJvdWdoIGNoYXJhY3Rlcml6YXRpb24gb2YgcGh5c2ljb2NoZW1pY2FsIGFuZCBhZXJvZHluYW1pYyBwcm9wZXJ0aWVzIG9mIHRoZSBzcHJheSBkcmllZCBwb3dkZXJzLCBhZG1pbmlzdHJhdGlvbiBjcml0ZXJpYSBmb3IgZGVsaXZlcnkgdG8gdGhlIGxvd2VyIHJlc3BpcmF0b3J5IHRyYWN0IHdlcmUgZnVsZmlsbGVkLiBTcHJheSBkcmllZCBMTlBzIHBlbmV0cmF0ZWQgdGhlIGx1bmcgbXVjdXMgbGF5ZXIgYW5kIG1haW50YWluZWQgYmlvYWN0aXZpdHkgZm9yID45MCUgcHJvdGVpbiBkb3ducmVndWxhdGlvbiB3aXRoIGEgY29uZmlybWVkIHNhZmV0eSBwcm9maWxlIGluIGEgbHVuZyBhZGVub2NhcmNpbm9tYSBjZWxsIGxpbmUuIEFkZGl0aW9uYWxseSwgdGhlIHNwcmF5IGRyaWVkIExOUHMgc3VjY2Vzc2Z1bGx5IGFjaGlldmVkIHVwIHRvIDUwJSBnZW5lIHNpbGVuY2luZyBvZiB0aGUgaG91c2Uga2VlcGluZyBnZW5lIEdBUERIIGluIGV4IHZpdm8gaHVtYW4gcHJlY2lzaW9uLWN1dCBsdW5nIHNsaWNlcyBhdCB3aXRob3V0IGluY3JlYXNpbmcgY3l0b2tpbmUgbGV2ZWxzLiBUaGlzIHN0dWR5IHZlcmlmaWVzIHRoZSBzdWNjZXNzZnVsIHNwcmF5IGRyeWluZyBwcm9jZWR1cmUgb2YgTE5QLXNpUk5BIHN5c3RlbXMgbWFpbnRhaW5pbmcgdGhlaXIgaW50ZWdyaXR5IGFuZCBtZWRpYXRpbmcgc3Ryb25nIGdlbmUgc2lsZW5jaW5nIGVmZmljaWVuY3kgb24gbVJOQSBhbmQgcHJvdGVpbiBsZXZlbHMgYm90aCBpbiB2aXRybyBhbmQgZXggdml2by4gVGhlIHN1Y2Nlc3NmdWwgc3ByYXkgZHJ5aW5nIHByb2NlZHVyZSBvZiBMTlAtc2lSTkEgZm9ybXVsYXRpb25zIGluIDUlIGxhY3Rvc2Ugc29sdXRpb24gY3JlYXRlcyBhIG5vdmVsIHNpUk5BLWJhc2VkIHRoZXJhcHkgb3B0aW9uIHRvIHRhcmdldCByZXNwaXJhdG9yeSBkaXNlYXNlcyBzdWNoIGFzIGx1bmcgY2FuY2VyLCBhc3RobWEsIENPUEQsIGN5c3RpYyBmaWJyb3NpcyBhbmQgdmlyYWwgaW5mZWN0aW9ucy59XG4gIH1cbiAgYCxgXG4gIEBhcnRpY2xle2ppYW5nX2NvbWJpbmF0b3JpYWxfMjAyNCxcbiAgICB0aXRsZSAgICAgICAgPSB7Q29tYmluYXRvcmlhbCBkZXZlbG9wbWVudCBvZiBuZWJ1bGl6ZWQge21STkF9IGRlbGl2ZXJ5IGZvcm11bGF0aW9ucyBmb3IgdGhlIGx1bmdzfSxcbiAgICBhdXRob3IgICAgICAgPSB7SmlhbmcsIEFsbGVuIFkuIGFuZCBXaXR0ZW4sIEphY29iIGFuZCBSYWppLCBJZHJpcyBPLiBhbmQgRXdlamUsIEZleWlzYXlvIGFuZCBNYWNJc2FhYywgQ29yaW5hIGFuZCBNZW5nLCBTYWJyaW5hIGFuZCBPbGFkaW1lamksIEZhdm91ciBBLiBhbmQgSHUsIFlpem9uZyBhbmQgTWFuYW4sIFJhaml0aCBTLiBhbmQgTGFuZ2VyLCBSb2JlcnQgYW5kIEFuZGVyc29uLCBEYW5pZWwgRy59LFxuICAgIHllYXIgICAgICAgICA9IDIwMjQsXG4gICAgbW9udGggICAgICAgID0gbWFyLFxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmUgTmFub3RlY2hub2xvZ3l9LFxuICAgIHZvbHVtZSAgICAgICA9IDE5LFxuICAgIG51bWJlciAgICAgICA9IDMsXG4gICAgcGFnZXMgICAgICAgID0gezM2NC0tMzc1fSxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1NjUtMDIzLTAxNTQ4LTN9LFxuICAgIGlzc24gICAgICAgICA9IHsxNzQ4LTMzODcsIDE3NDgtMzM5NX0sXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5hdHVyZS5jb20vYXJ0aWNsZXMvczQxNTY1LTAyMy0wMTU0OC0zfSxcbiAgICB1cmxkYXRlICAgICAgPSB7MjAyNC0wOS0xMH0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG4gIGAsYFxuICBAYXJ0aWNsZXt2aWxhLWdvbnphbGV6X3ZpdHJvXzIwMjQsXG4gICAgdGl0bGUgICAgICAgID0ge0luIHZpdHJvIHBsYXRmb3JtIHRvIG1vZGVsIHRoZSBmdW5jdGlvbiBvZiBpb25vY3l0ZXMgaW4gdGhlIGh1bWFuIGFpcndheSBlcGl0aGVsaXVtfSxcbiAgICBhdXRob3IgICAgICAgPSB7VmlsXHUwMEUwLUdvbnpcdTAwRTFsZXosIE1hcnRhIGFuZCBQaW50ZSwgTGFldGl0aWEgYW5kIEZyYWRpcXVlLCBSaWNhcmRvIGFuZCBDYXVzYSwgRXJpa2EgYW5kIEtvb2wsIEhlbGVlbiBhbmQgUm9kcmF0LCBNYXl1cmVlIGFuZCBNb3JlbGwsIENhcm9sYSBNYXJpYSBhbmQgQWwtVGhhbmksIE1haGEgYW5kIFBvcnRlciwgTGluc2V5IGFuZCBHdW8sIFdlbnJ1aSBhbmQgTWFlc2hpbWEsIFJ1aGluYSBhbmQgSGFydCwgU3RlcGhlbiBMLiBhbmQgTWNDYXVnaGFuLCBGcmFuayBhbmQgR3JhbmF0YSwgQWxlc3NhbmRyYSBhbmQgU2hlcHBhcmQsIERhdmlkIE4uIGFuZCBGbG90bywgUi4gQW5kcmVzIGFuZCBSYXdsaW5zLCBFbW1hIEwuIGFuZCBDaWN1dGEsIFBpZXRybyBhbmQgVmFsbGllciwgTHVkb3ZpY30sXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcbiAgICBtb250aCAgICAgICAgPSBhcHIsXG4gICAgam91cm5hbCAgICAgID0ge1Jlc3BpcmF0b3J5IFJlc2VhcmNofSxcbiAgICB2b2x1bWUgICAgICAgPSAyNSxcbiAgICBudW1iZXIgICAgICAgPSAxLFxuICAgIHBhZ2VzICAgICAgICA9IDE4MCxcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTE4Ni9zMTI5MzEtMDI0LTAyODAwLTd9LFxuICAgIGlzc24gICAgICAgICA9IHsxNDY1LTk5M1h9LFxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3Jlc3BpcmF0b3J5LXJlc2VhcmNoLmJpb21lZGNlbnRyYWwuY29tL2FydGljbGVzLzEwLjExODYvczEyOTMxLTAyNC0wMjgwMC03fSxcbiAgICB1cmxkYXRlICAgICAgPSB7MjAyNC0wOS0xMH0sXG4gICAgYWJzdHJhY3QgICAgID0ge1xuICAgICAgQmFja2dyb3VuZFx1MjAwMiBQdWxtb25hcnkgaW9ub2N5dGVzIGhhdmUgYmVlbiBpZGVudGlmaWVkIGluIHRoZSBhaXJ3YXkgZXBpdGhlbGl1bSBhcyBhIHNtYWxsIHBvcHVsYXRpb24gb2YgaW9uIHRyYW5zcG9ydGluZyBjZWxscyBleHByZXNzaW5nIGhpZ2ggbGV2ZWxzIG9mIENGVFIgKGN5c3RpYyBmaWJyb3NpcyB0cmFuc21lbWJyYW5lIGNvbmR1Y3RhbmNlIHJlZ3VsYXRvciksIHRoZSBnZW5lIG11dGF0ZWQgaW4gY3lzdGljIGZpYnJvc2lzLiBCeSBwcm92aWRpbmcgYW4gaW5maW5pdGUgc291cmNlIG9mIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzIChBRUNzKSwgdGhlIHVzZSBvZiBodW1hbiBpbmR1Y2VkIHBsdXJpcG90ZW50IHN0ZW0gY2VsbHMgKGhpUFNDcykgY291bGQgb3ZlcmNvbWUgc29tZSBjaGFsbGVuZ2VzIG9mIHN0dWR5aW5nIGlvbm9jeXRlcy4gSG93ZXZlciwgdGhlIHByb2R1Y3Rpb24gb2YgQUVDIGVwaXRoZWxpYSBjb250YWluaW5nIGlvbm9jeXRlcyBmcm9tIGhpUFNDcyBoYXMgcHJvdmVuIGRpZmZpY3VsdC4gSGVyZSwgd2UgcHJlc2VudCBhIHBsYXRmb3JtIHRvIHByb2R1Y2UgaGlQU0NkZXJpdmVkIEFFQ3MgKGhpUFNDLUFFQ3MpIGluY2x1ZGluZyBpb25vY3l0ZXMgYW5kIGludmVzdGlnYXRlIHRoZWlyIHJvbGUgaW4gdGhlIGFpcndheSBlcGl0aGVsaXVtLlxuICBcbiAgICAgIE1ldGhvZHNcdTIwMDIgaGlQU0NzIHdlcmUgZGlmZmVyZW50aWF0ZWQgaW50byBsdW5nIHByb2dlbml0b3JzLCB3aGljaCB3ZXJlIGV4cGFuZGVkIGFzIDNEIG9yZ2Fub2lkcyBhbmQgbWF0dXJlZCBieSBhaXItbGlxdWlkIGludGVyZmFjZSBjdWx0dXJlIGFzIHBvbGFyaXNlZCBoaVBTQy1BRUMgZXBpdGhlbGlhLiBVc2luZyBDUklTUFIvQ2FzOSB0ZWNobm9sb2d5LCB3ZSBnZW5lcmF0ZWQgYSBoaVBTQ3Mga25vY2tvdXQgKEtPKSBmb3IgRk9YSTEsIGEgdHJhbnNjcmlwdGlvbiBmYWN0b3IgdGhhdCBpcyBlc3NlbnRpYWwgZm9yIGlvbm9jeXRlIHNwZWNpZmljYXRpb24uIERpZmZlcmVuY2VzIGJldHdlZW4gRk9YSTEgS08gaGlQU0MtQUVDcyBhbmQgdGhlaXIgd2lsZC10eXBlIChXVCkgaXNvZ2VuaWMgY29udHJvbHMgd2VyZSBpbnZlc3RpZ2F0ZWQgYnkgYXNzZXNzaW5nIGdlbmUgYW5kIHByb3RlaW4gZXhwcmVzc2lvbiwgZXBpdGhlbGlhbCBjb21wb3NpdGlvbiwgY2lsaWEgY292ZXJhZ2UgYW5kIG1vdGlsaXR5LCBwSCBhbmQgdHJhbnNlcGl0aGVsaWFsIGJhcnJpZXIgcHJvcGVydGllcy5cbiAgXG4gICAgICBSZXN1bHRzXHUyMDAyIE1hdHVyZSBoaVBTQy1BRUMgZXBpdGhlbGlhIGNvbnRhaW5lZCBiYXNhbCBjZWxscywgc2VjcmV0b3J5IGNlbGxzLCBjaWxpYXRlZCBjZWxscyB3aXRoIG1vdGlsZSBjaWxpYSwgcHVsbW9uYXJ5IG5ldXJvZW5kb2NyaW5lIGNlbGxzIChQTkVDcykgYW5kIGlvbm9jeXRlcy4gVGhlcmUgd2FzIG5vIGRpZmZlcmVuY2UgYmV0d2VlbiBGT1hJMSBXVCBhbmQgS08gaGlQU0NzIGluIHRlcm1zIG9mIHRoZWlyIGNhcGFjaXR5IHRvIGRpZmZlcmVudGlhdGUgaW50byBhaXJ3YXkgcHJvZ2VuaXRvcnMuIEhvd2V2ZXIsIEZPWEkxIEtPIGxlZCB0byBtYXR1cmUgaGlQU0MtQUVDIGVwaXRoZWxpYSB3aXRob3V0IGlvbm9jeXRlcyB3aXRoIHJlZHVjZWQgY2FwYWNpdHkgdG8gcHJvZHVjZSBjaWxpYXRlZCBjZWxscy5cbiAgXG4gICAgICBDb25jbHVzaW9uXHUyMDAyIE91ciByZXN1bHRzIHN1Z2dlc3QgdGhhdCBpb25vY3l0ZXMgY291bGQgaGF2ZSByb2xlIGJleW9uZCB0cmFuc2VwaXRoZWxpYWwgaW9uIHRyYW5zcG9ydCBieSByZWd1bGF0aW5nIGVwaXRoZWxpYWwgcHJvcGVydGllcyBhbmQgaG9tZW9zdGFzaXMgaW4gdGhlIGFpcndheSBlcGl0aGVsaXVtLlxuICAgIH0sXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxuICB9XG4gIGBcbl0iLCAiXG5pbXBvcnQgeyBCdXR0b25PbmVFbmdpbmVlcmluZyB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IG9wZW5FbGVtZW50IH0gZnJvbSBcIi4uL3V0aWxzL29wZW5FbGVtZW50XCI7XG5pbXBvcnQgeyBIMiwgSDMsIEg0LCBINSwgUGhpbGlwSDMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0NvbGxhcHNpYmxlXCI7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgeyBUYWJTY3JvbGxMaW5rIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvTGlua1wiO1xuaW1wb3J0IHsgSW5mb0JveCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0JveGVzXCI7XG5pbXBvcnQgeyBEb3dubG9hZExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCBFbmdUcmZzb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2VuZy10cmYtc291cmNlc1wiO1xuaW1wb3J0IEVuZ1JlcHNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvZW5nLXJlcG9ydGVyLXNvdXJjZXNcIjtcbmltcG9ydCBFbmdQRXN5c3RlbXMgZnJvbSBcIi4uL3NvdXJjZXMvZW5nLXBlLXNvdXJjZXNcIjtcbmltcG9ydCBFbmdQZWdzb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2VuZy1wZWctc291cmNlc1wiO1xuaW1wb3J0IEVuZ05pY2tzb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2VuZy1uaWNrYXNlcy1zb3VyY2VzXCI7XG5pbXBvcnQgRW5nRGVsc291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9lbmctZGVsaXZlcnktc291cmNlc1wiO1xuaW1wb3J0IHsgVHdvTGluZVBERiwgUERGIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvUGRmc1wiO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBFbmdpbmVlcmluZygpIHtcbiAgIHVzZVRhYk5hdmlnYXRpb24oKTtcbiAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24gKCk7XG4gICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgY29uc3Qge2dvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IG10LTRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxici8+IDxici8+IDxici8+IFxuICAgICAgICAgICAgPGRpdiBpZD1cInRhYi1vdXItY3ljbGVcIiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxuICAgICAgICAgICAgICAgPHNlY3Rpb24gPiA8YnIgaWQ9XCJvYmVuZW5naW5lZXJpbmdcIi8+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVuZy1ib3ggYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPEgyIHRleHQ9XCJPdXIgY3ljbGVcIiBpZD1cIm91ci1jeWNsZS1oZWFkZXJcIj48L0gyPlxuICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGUgY291cnNlIG9mIG91ciBwcm9qZWN0LCBpbm5vdmF0aXZlIHRob3VnaHRzIHdlcmUgdGFrZW4gdXAsIHJlamVjdGVkLCBlbGFib3JhdGVkLCBkaXNjdXNzZWQgYW5kIHRlc3RlZC4gT24gdGhpcyBwYWdlIHdlIHByZXNlbnQgYSBzZWxlY3Rpb24gb2YgaWRlYXMgdGhhdCBvY2N1cGllZCB1cyB0aGUgbW9zdCBpbiB0aGUgbGFzdCBtb250aC4gT3VyIHRyYWlucyBvZiB0aG91Z2h0IGFyZSByZXByZXNlbnRlZCBpbiBmb3JtIG9mIGl0ZXJhdGlvbnMgb2YgZW5naW5lZXJpbmcgY3ljbGVzLiBFYWNoIGVuZ2luZWVyaW5nIGN5Y2xlIGlzIGNvbXByaXNlZCBvZiBmb3VyIHN0ZXBzOlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RGVzaWduPC9iPjogSW4gdGhpcyBzdGVwIHRoZSBtb3RpdmF0aW9uIG9yIHByb2JsZW0sIHRoYXQgdGhlIGluZGl2aWR1YWwgaXRlcmF0aW9uIGFkZHJlc3NlcywgaXMgbWVudGlvbmVkLiBBIHRoZW9yZXRpY2FsIGFwcHJvYWNoIGFkZHJlc3NpbmcgdGhlIG1vdGl2YXRpb24gaXMgZXhwbGFpbmVkLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkJ1aWxkPC9iPjogVGhlIHByYWN0aWNhbCBleGFtaW5hdGlvbiBvZiB0aGUgdGhlb3JldGljYWwgcGxhbiBkZXNjcmliZWQgaW4gdGhlIGRlc2lnbiBzZWN0aW9uIGlzIGV4ZWN1dGVkLCBlLiBnLiBieSBwbGFubmluZyBhbiBleHBlcmltZW50LCBieSBjcmVhdGluZyBhIGNvbnN0cnVjdCBpbiBzaWxpY28sIGJ5IGNsb25pbmcuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+VGVzdDwvYj46IFRoZSBpbml0aWFsIGRlc2lnbiBpcyB0ZXN0ZWQsIGVpdGhlciBieSBjb25kdWN0aW5nIGFuIGV4cGVyaW1lbnQsIHRlc3RpbmcgYSBkZXNpZ24gaW4gc2lsaWNvLCBlLiBnLiBieSBtb2RlbGluZywgcmVmdXRpbmcgaWRlYXMgYmFzZWQgb24gbmV3IGlucHV0IG9yIGJhY2tncm91bmQgcmVzZWFyY2ggb3IgZGlzY3Vzc2luZyBhcHByb2FjaGVzIHdpdGggYW4gZXhwZXJ0LiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5MZWFybjwvYj46IEluIHRoaXMgbGFzdCBzZWN0aW9uLCB0ZXN0IHJlc3VsdHMgYXJlIGRpc2N1c3NlZCBhbmQgaW5zaWdodHMgZ2FpbmVkIGluIHRlc3RpbmcgdGhlIGRlc2lnbiBhcmUgZm9ybXVsYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyaWdodFwiPjxCdXR0b25PbmVFbmdpbmVlcmluZyBsYWJlbD1cIk5leHRcIiBvcGVuPVwicmVwb3J0ZXJcIiBzY3JvbGxUb0lkPVwicmVwb3J0ZXItaGVhZGVyXCIvPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVuZ2lubmVlcmluZ3RhYlwiIGlkPVwidGFiLXJlcG9ydGVyXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJyZXBvcnRlciBzZWNcIiA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVuZy1ib3ggYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPEgyIGlkPVwicmVwb3J0ZXItaGVhZGVyXCIgdGV4dD1cIlByaW1lIEVkaXRpbmcgUmVwb3J0ZXJcIj48L0gyPlxuICAgICAgICAgICAgICAgICAgICAgPHA+UHJpbWUgZWRpdGluZyBpcyBhIGlzIGEgdmVyeSBwcmVjaXNlIGFuZCBzYWZlIG1ldGhvZC4gSG93ZXZlciwgZGVwZW5kaW5nIG9uIHRoZSBnZW5vbWljIGxvY3VzIHRhcmdldGVkLCB0aGUgZWRpdGluZyBlZmZpY2llbmN5IGNhbiBiZSB2ZXJ5IGxvdy4gVGhlIGN5c3RpYyBmaWJyb3NpcyBjYXVzaW5nIENGVFIgRjUwOGRlbCBtdXRhdGlvbiBpcywgYXMgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF0dGlqc2ludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBNYXR0aWpzIEJ1bGNhZW4gPC9hPiAgc3RhdGVkIGluIG91ciBpbnRlcnZpZXcsIG9uZSBvZiwgaWYgbm90IHRoZSBtb3N0IG9idmlvdXMgYXBwbGljYXRpb24gb2YgcHJpbWUgZWRpdGluZywgY29uc2lkZXJpbmcgdGhlIGxhcmdlIGFtb3VudCBvZiBwZW9wbGUgYWZmZWN0ZWQuIFRoZSBsYWNrIG9mIHB1YmxpY2F0aW9ucyBhZGRyZXNzaW5nIENGVFIgdGFyZ2V0IGltcGxpZWQsIHRoYXQgdGhlIG11dGF0aW9uIG1pZ2h0IGJlIHBhcnRpY3VsYXJseSBoYXJkIHRvIGVkaXQuIEF0IGxvdyBlZGl0aW5nIGVmZmljaWVuY3ksIHN1Y2Nlc3NmdWwgZWRpdHMgYXJlIGhhcmQsIGlmIG5vdCBpbXBvc3NpYmxlIHRvIGRpc3Rpbmd1aXNoIGZyb20gdGhlIGJhY2tncm91bmQgbm9pc2UgdXNpbmcgY29udmVudGlvbmFsIG1ldGhvZHMgbGlrZSBzYW5nZXIgc2VxdWVuY2luZyBvciBxUENSLiBBcyBhIGJhc2lzIHRvIGVmZmVjdGl2ZWx5IHRlc3Qgb3VyIGFwcHJvYWNoIGFuZCBzY3JlZW4gZm9yIHdvcmtpbmcgcGVnUk5Bcywgd2UgbmVlZGVkIGEgaGlnaGx5IHNlbnNpdGl2ZSBtZXRob2Qgb2YgZGV0ZWN0aW9uIHdpdGggYXMgbGl0dGxlIG5vaXNlIGFzIHBvc3NpYmxlIHRvIG9wdGltaXplIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGZvciBnZW5vbWljIENGVFIgdGFyZ2V0aW5nLjwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiQSBGbHVvcmVzY2VuY2UgUmVwb3J0ZXJcIiBpZD1cInJlcDFoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSByZWFzb25lZCB0aGF0IHRoZSBlYXNpZXN0IHdheSBvZiBkZXRlY3RpbmcgRE5BIGNoYW5nZXMgaW4gYSBjZWxsIHdvdWxkIGJlIGZsdW9yZXNjZW5jZS4gT3VyIGluaXRpYWwgaWRlYSB3YXMgdG8gY3JlYXRlIHBlZ1JOQXMgdGFyZ2V0aW5nIHRoZSBjb2Rpbmcgc2VxdWVuY2Ugb2YgYSBmbHVvcmVzY2VudCBwcm90ZWluLCB0aGF0IHdvdWxkIGludHJvZHVjZSBhIG11dGF0aW9uIHJlc3VsdGluZyBpbiBhIGRpZmZlcmVudCBlbWlzc2lvbiwgZ2l2aW5nIGVhc2lseSBkZXRlY3RhYmxlIGZlZWRiYWNrIG9mIGNvcnJlY3QgZWRpdGluZy4gVGhlIG9yaWdpbmFsIEFlcXVvcmVhIHZpY3RvcmlhIEdGUCBwcm90ZWluIGRpZmZlcnMgZnJvbSBhdkdGUChZNjZXKSwgZW1pdHRpbmcgbGlnaHQgaW4gYSB3YXZlbGVuZ3RoIG9mIGFyb3VuZCA1MDkgbm0gKGN5YW4pLCBhbmQgYXZHRlAoWTY2SCksIGVtaXR0aW5nIGxpZ2h0IGluIGEgd2F2ZWxlbmd0aCBvZiBhcm91bmQgNDQ4IG5tIChibHVlKSBieSBvbmx5IG9uZSBhbWlubyBhY2lkIHN1YnN0aXR1dGlvbiBlYWNoLjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1yZXBvcnRlclwiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4gUHJpbWUgZWRpdGluZyBjb3VsZCB0aGVyZWZvcmUgYmUgdmlzdWFsaXplZCBieSBmYWNpbGl0YXRpbmcgdGhlc2Ugc3Vic3RpdHV0aW9ucyB3aXRoIGEgcHJpbWUgZWRpdG9yLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVG8gdGhpcyBlbmQsIHRoZSB3aWxkLXR5cGUgYW5kIGVkaXRlZCB2ZXJzaW9ucyBvZiB0aGUgYXZHRlAgd2VyZSBwdXQgaW4gY29udHJhc3QgYW5kIHdlIHN0YXJ0ZWQgc2VhcmNoaW5nIGZvciBwb3RlbnRpYWwgcGVnUk5BcyBmb3IgZWRpdGluZyBvbmUgaW50byB0aGUgb3RoZXIuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9yZXAtaXQxLnN2Z1wiIGFsdD1cIklsbHVzdHJhdGlvbiBvZiBmbHVvcmVzY2VuY2Ugd2F2ZWxlbmd0aCBjaGFuZ2UgcmVwb3J0ZXJcIi8+ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSAxOiBJbGx1c3RyYXRpb24gb2YgYSByZXBvcnRlciBzeXN0ZW0gYmFzZWQgb24gdGhlIGludHJvZHVjdGlvbiBvZiBhIHNpbmdsZSBhbWlubyBhY2lkIHN1YnN0aXR1dGlvbiBpbnRvIEdGUCBwbGFzbWlkcyB0cmFuc2Zvcm1lZCBpbnRvIEhFSzI5MyBjZWxscyBjaGFuZ2luZyB0aGUgZW1pc3Npb24gc3BlY3RydW0gaW4gYSBkZXRlY3RhYmxlIHdheS48L2I+IDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdoZW4gdHJ5aW5nIHRvIGZpbmQgcHJvdG9zcGFjZXJzIGZvciBDYXM5IGFuZCBvdGhlciBwb3NzaWJsZSBuaWNrYXNlczxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ25pY2thc2UnLCAnL2VuZ2luZWVyaW5nJyl9PiBuaWNrYXNlcyA8L2E+ICwgd2Ugbm90aWNlZCwgdGhhdCB0aGUgbG9jdXMgb2YgdGhlIG11dGF0aW9ucyBpcyB0b28gZmFyIGF3YXkgZnJvbSBhbnkgU3B1RnoxIFRBTSBzZXF1ZW5jZXMuIEFkZGl0aW9uYWxseSwgdGhlIGFwcGxpY2FiaWxpdHkgb2YgaW5zaWdodHMgZ2FpbmVkIHRocm91Z2ggcGVnUk5BIG9wdGltaXphdGlvbiBpbiB0aGlzIGxvY3VzIHRvIENGVFIgZWRpdGluZyB3b3VsZCBhbHNvIGJlIHZlcnkgbGltaXRlZCBkdWUgdG8gdGhlIHZhc3QgZGlmZmVyZW5jZXMgaW4gdGhlIHNlcXVlbmNlIG9mIHByb3Rvc3BhY2VyW2xpbmtdIGFuZCBzdXJyb3VuZGluZyBnZW5vbWljIHJlZ2lvbi4gQWRkaXRpb25hbGx5LCB3ZSBsZWFybmVkIGZyb20gb3VyIGludGVydmlldyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanNpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTWF0dGlqcyBCdWxjYWVuIDwvYT4gdGhhdCB0aGUgdHlwZSBvZiBlZGl0IChpbnNlcnRpb24sIHN1YnN0aXR1dGlvbiBvciBkZWxldGlvbikgc2lnbmlmaWNhbnRseSBpbXBhY3RzIGVkaXRpbmcgZWZmaWNpZW5jeS4gQSBtdXRhdGlvbiBjaGFuZ2luZyBHRlAgdG8gQkZQIHdvdWxkIGhhdmUgdG8gYmUgYSBzdWJzdGl0dXRpb24gaW5zdGVhZCBvZiB0aGUgdGhyZWUtbnVjbGVvdGlkZSBpbnNlcnRpb24gbmVlZGVkIHRvIGNvcnJlY3QgQ0ZUUiBGNTA4ZGVsLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSBvdXIgb2JzZXJ2YXRpb25zIHdlIGxlYXJuZWQgdGhhdCBhIHJlcG9ydGVyIHN5c3RlbSBpcyBvbmx5IG9mIHVzZSwgaWYgaXQgY2FuIHJlYWxseSBtaW1pYyB0aGUgZ2Vub21pYyB0YXJnZXQgb2YgY2hvaWNlLiBUaGUgYWRqdXN0bWVudHMgdG8gYmUgbWFkZSB0byBjcmVhdGUgYSBwZWdSTkEgdGFyZ2V0aW5nIHRoZSBnZW5vbWljIHRhcmdldCBmcm9tIGEgcGVnUk5BIHRhcmdldGluZyB0aGUgcmVwb3J0ZXIgc2hvdWxkIGJlIGFzIG1pbm9yIGFzIHBvc3NpYmxlLiBUaGlzIGluY2x1ZGVzIGEgc2ltaWxhciBzcGFjZXIgYW5kIGEgc2ltaWxhciBlZGl0IHRvIGJlIG1hZGUuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJyZXAyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlByb29mIG9mIENvbmNlcHQgZm9yIFBFQVJcIiBpZD1cInJlcDJoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZnRlciBleHRlbnNpdmUgcmVzZWFyY2ggd2UgY2FtZSBhY3Jvc3MgdGhlIHByaW1lIGVkaXRvciBhY3Rpdml0eSByZXBvcnRlciAoUEVBUikgY3JlYXRlZCBieSBTaW1vbiBldCBhbC4gKDIwMjIpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXJlcG9ydGVyXCIgbnVtPVwiMlwiIHNjcm9sbElkPVwiZGVzYy0yXCIvPiwgd2hpY2ggaXMgdGhlIHRlbXBsYXRlIG91ciBtb2RpZmllZCByZXBvcnRlciBwbGFzbWlkIGlzIGJhc2VkIG9uLiBUaGUgUEVBUiBwbGFzbWlkIGNvbnRhaW5zIGFuIGVHRlAgY29kaW5nIHNlcXVlbmNlIHdpdGggYW4gaW50cm9uIGRlcml2ZWQgZnJvbSB0aGUgbW91c2UgVmltIGdlbmUuIElmIHRoZSBpbnRyb24gaXMgcmVtb3ZlZCBkdXJpbmcgUk5BIHNwbGljaW5nLCB0aGUgdHdvIGV4b25zIGZvcm0gYSBjb250aW51b3VzIG9wZW4gcmVhZGluZyBmcmFtZS4gQnkgbXV0YXRpbmcgdGhlIDVcdTIwMTkgc3BsaWNpbmcgc2lnbmFsLCBhIHRhcmdldCBpcyBjcmVhdGVkIHdoaWNoLCB1cG9uIGNvcnJlY3QgZWRpdGluZywgbGVhZHMgdG8gYSBnYWluLW9mLWZ1bmN0aW9uLiBUaGUgcmVzdWx0aW5nIGZsdW9yZXNjZW5jZSBjYW4gYmUgaW1hZ2VkIHVzaW5nIGNvbmZvY2FsIG1pY3Jvc2NvcHkgb3IgcXVhbnRpZmllZCBieSBtZWFucyBvZiBmbHVvcmVzY2VuY2UgYWN0aXZhdGVkIGNlbGwgc29ydGluZyAoRkFDUykuIE5vdGFibHksIHRoZSBhcmVhIGRvd25zdHJlYW0gb2YgdGhlIDVcdTIwMTkgc3BsaWNlIHNpZ25hbCBpcyBpbnRyb25pYywgYW5kIHRodXMgY2FuIGJlIGVkaXRlZCB3aXRob3V0IGFueSBpbXBhY3Qgb24gdGhlIGNvZGluZyBzZXF1ZW5jZS4gQWRkaXRpb25hbGx5LCBTaW1vbiBldCBhbC4gc2hvd2VkLCB0aGF0IFx1MjAxQ2VmZmljaWVuY3kgb2YgcHJpbWUgZWRpdGluZyB0byBtb2RpZnkgUEVBUiBwbGFzbWlkcyBpcyBnb3Zlcm5lZCBieSB0aGUgc2FtZSBmYWN0b3JzIGFzIHByaW1lIGVkaXRpbmcgaW4gZ2Vub21pYyBjb250ZXh0XHUyMDFELiBXZSByZWFzb25lZCB0aGF0IHRoaXMgc3lzdGVtIG1pZ2h0IGJlIGZsZXhpYmxlLCBhbmQgc2Vuc2l0aXZlIGVub3VnaCB0byBidWlsZCBvdXIgb3B0aW1pemF0aW9ucyBzdHJhdGVnaWVzIHVwb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBTaW5jZSBub25lIG9mIHVzIGhhZCBhbnkgZXhwZXJpZW5jZSBpbiBwcmltZSBlZGl0aW5nIGJlZm9yZSBvdXIgcHJvamVjdCwgd2Ugd2FudGVkIHRvIHRlc3Qgd2hldGhlciB3ZSBjYW4gZmFjaWxpdGF0ZSBwcmltZSBlZGl0aW5nIGluIHRoZSBmaXJzdCBwbGFjZS4gVG8gZG8gdGhpcyBhbmQgYWxzbyBhc3Nlc3MgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIFBFQVIgc3lzdGVtLCB3ZSBzZXQgdXAgYSBwcm9vZiBvZiBjb25jZXB0IHVzaW5nIHRoZSBQRUFSIDJpbjEgc3lzdGVtLiBUaGlzIHBsYXNtaWQgaW5jbHVkZXMgbm90IG9ubHkgdGhlIGVHRlAgd2l0aCBhbmQgaW50cm9uIGFuZCBkaXNydXB0ZWQgNVx1MjAxOSBzcGxpY2Ugc2l0ZSwgYnV0IGFsc28gYSBwZWdSTkEgZXhwcmVzc2lvbiBjYXNzZXR0ZS4gVGhlIHBlZ1JOQSBpcyBkZXNpZ25lZCBpbiBhIHdheSB0aGF0LCBpbiBjb21iaW5hdGlvbiB3aXRoIGEgcHJpbWUgZWRpdGluZyBwcm90ZWluIGNvbXBsZXgsIGNvcnJlY3RzIHRoZSBkaXNydXB0ZWQgc3BsaWNpbmcgc2lnbmFsLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBleHBlcmltZW50LCB3ZSB0cmFuc2ZlY3RlZCBIRUsyOTMgY2VsbHMgKGFzIHJlY29tbWVuZGVkIGJ5IDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanNpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTWF0dGlqcyBCdWxjYWVuIDwvYT4pIHdpdGggdGhlIHBDTVYtUEUyIHByaW1lIGVkaXRvcltsaW5rIFBFIHN5c3RlbXNdIHBsYXNtaWQgYW5kIHRoZSBwREFTMTI0ODlfUEVBUi1HRlBfMmluMV8yLjAgbWVudGlvbmVkIGFib3ZlLiBPdXIgZmlyc3QgcHJvb2Ygb2YgY29uY2VwdCBzdWNjZWVkZWQgYXMgd2UgY291bGQgc2VlIGZsdW9yZXNjZW50IGNlbGxzIDcyIGggYWZ0ZXIgdHJhbnNmZWN0aW9uLiBJbiBjb250cmFzdCwgbmVnYXRpdmUgY29udHJvbHMgd2l0aCBvbmx5IG9uZSBvZiB0aGUgcGxhc21pZHMgdHJhbnNmZWN0ZWQgZGlkIG5vdCBzaG93IGFueSBmbHVvcmVzY2VuY2UuIEhvd2V2ZXIsIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBpbiBvdXIgaW5pdGlhbCB0ZXN0IHJ1bnMgd2FzIHF1aXRlIGxvdywgYXMgaW5kaWNhdGVkIGJ5IGEgdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9yZXAtaXQyLnN2Z1wiIGFsdD1cIklsbHVzdHJhdGlvbiBvZiB0aGUgcHJvb2Ygb2YgY29uY2VwdCB1c2luZyB0aGUgUEVBUjJpbjEgc3lzdGVtXCIvPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUgMjo8L2I+IElsbHVzdHJhdGlvbiBvZiB0aGUgcHJvb2Ygb2YgY29uY2VwdCBleHBlcmltZW50LiBIRUsyOTMgY2VsbHMgdHJhbnNpZW50bHkgdHJhbnNmb3JtZWQgd2l0aCB0aGUgcERhczEyMTg5X1BFQVItR0ZQXzJpbjFfMi4wIHBsYXNtaWQgb24gdGhlIGxlZnQgc2lkZSBzaG93IGZsdW9yZXNjZW5jZSBhZnRlciB0cmFuc2Zvcm1hdGlvbiB3aXRoIGEgcHJpbWUgZWRpdG9yIGV4cHJlc3Npb24gcGxhc21pZC48L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgcHJvdmVkLCB0aGF0IG5vdCBvbmx5IHdlIHdlcmUgYWJsZSB0byB1c2UgcHJpbWUgZWRpdGluZyBpbiBvdXIgbW9kZWwsIGJ1dCBhbHNvIHRoYXQgdGhlIFBFQVIgcmVwb3J0ZXIgc3lzdGVtIGNhbiByZXBvcnQgc3VjY2Vzc2Z1bCBwcmltZSBlZGl0aW5nLiBUaG91Z2ggdGhpcyB3YXMgYSB2ZXJ5IHByb21pc2luZyBzdGFydCwgZnVydGhlciBzdGVwcyBoYWQgdG8gYmUgdGFrZW4gdG8gZW5hYmxlIGNvbnRleHQgc3BlY2lmaWMgdGVzdGluZyBvZiBwcmltZSBlZGl0aW5nLiBGaXJzdGx5LCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgaGFkIHRvIGJlIGltcHJvdmVkIChzZWUgVHJhbnNmZWN0aW9uIE9wdGltaXphdGlvbltsaW5rXSkuIFNlY29uZGx5LCB0aGUgcmVwb3J0ZXIgaGFkIHRvIGJlIG1vZGlmaWVkIGluIGEgd2F5IHRoYXQgcmVzZW1ibGVzIHRoZSBnZW5vbWljIENGVFIgdGFyZ2V0LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicmVwM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJDb250ZXh0dWFsaXphdGlvbiBvZiBQRUFSXCIgaWQ9XCJyZXAzaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG9yaWdpbmFsIFBFQVIgcGxhc21pZCBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHRoYXQgd2UgYm91Z2h0IGZyb20gQWRkR2VuZSByZXByZXNlbnRzLCBhcyB0aGUgbmFtZSBzdWdnZXN0cywgaG93IHRoZSByZXBvcnRlciBzaG91bGQgbG9vayBsaWtlIGFmdGVyIHN1Y2Nlc3NmdWwgZWRpdGluZyBhbmQgY2FuIHRodXMgYmUgdXNlZCBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgYW5kIGZvciBub3JtYWxpemF0aW9uLiBUbyBhbHRlciB0aGUgUEVBUiBwbGFzbWlkIHNvIHRoYXQgaXQgbWltaWNzIHRoZSBtdXRhdGVkIGdlbm9taWMgQ0ZUUiB0YXJnZXQsIHdlIGZpcnN0IGFuYWx5emVkIHRoZSByZWdpb24gc3Vycm91bmRpbmcgQ0ZUUiBGNTA4ZGVsIG11dGF0aW9uLiBBcyB0aGUgbXV0YXRpb24gaXMgYSB0aHJlZSBiYXNlIHBhaXIgZGVsZXRpb24sIHdlIGludHJvZHVjZWQgdGhlIHZlcnkgc2FtZSBhdCB0aGUgNVx1MjAxOSBzcGxpY2luZyBzaWduYWwuIEZvciB0aGlzIG1vZGlmaWNhdGlvbiB0byByZWxpYWJseSBkaXNydXB0IGludHJvbiBzcGxpY2luZyBhbmQgdGh1cyBlR0ZQIGV4cHJlc3Npb24sIHdlIGVmZmVjdGl2ZWx5IHJlbW92ZWQgdGhlIEdUIGJhc2VzIG9mIHRoZSBpbnRyb25pYyA1XHUyMDE5IHNwbGljZSBkb25vciBzaXRlIGFzIHdlbGwgYXMgdGhlIHByZWNlZGluZywgZXhvbmljIEcgYmFzZSBvZiB0aGUgNVx1MjAxOSBmbGFua2luZyBzZXF1ZW5jZS4gU2Vjb25kbHksIHdlIHJlcGxhY2VkIHRoZSBpbnRyb25pYyByZWdpb24gZG93bnN0cmVhbSBvZiB0aGUgZm91ciBiYXNlIHBhaXIgM1x1MjAxOSBmbGFua2luZyByZWdpb24gd2l0aCB0aGUgcmVzcGVjdGl2ZSBzZXF1ZW5jZSBmcm9tIHRoZSBDRlRSIGxvY3VzLiBUaGlzIDI3IGJwIHN1YnN0aXR1dGUgaW5jbHVkZWQgYSBQQU0gc2VxdWVuY2UsIGFuIGVudGlyZSBzcGFjZXIgYXMgd2VsbCBhcyBmb3VyIGFkZGl0aW9uYWwgYmFzZSBwYWlycyBpbiBiZXR3ZWVuIHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsIGdlbmUgc2VxdWVuY2UuIExhc3RseSwgd2UgaW50cm9kdWNlZCBzaWxlbnQgbXV0YXRpb25zIHVwc3RyZWFtIG9mIHRoZSA1XHUyMDE5IGZsYW5raW5nIHNlcXVlbmNlIHRoYXQgbG93ZXJlZCB0aGUgR0MgY29udGVudC4gVGhpcyB3YXMgdG8gbWltaWMgdGhlIEFULXJpY2ggcmVnaW9uIHByZWNlZGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiB0aGUgQ0ZUUiBnZW5lLiBUaGlzIHJldmVhbHMgb25lIG9mIHRoZSBuZWNlc3Nhcnkgc2hvcnRjb21pbmdzIG9mIHRoaXMgcmVwb3J0ZXI6IEVkaXRzIHVwc3RyZWFtIG9mIHRoZSA1XHUyMDE5IGRvbm9yIHNpdGUgYXJlIGhlYXZpbHkgcmVzdHJpY3RlZCBieSB0aGUgZUdGUCBjb2Rpbmcgc2VxdWVuY2UuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9yZXAtaXQzX3N0cmF0ZWd5LnN2Z1wiIGFsdD1cIk1vZGlmaWNhdGlvbiBzdHJhdGVneSBmb3IgY3JlYXRpb24gb2YgdGhlIHBQRUFSX0NGVFIgcGxhc21pZFwiLz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDM6PC9iPiBJbGx1c3RyYXRpb24gb2YgdGhlIG1vZGlmaWNhdGlvbiBzdHJhdGVneSBmb3IgdGhlIHBQRUFSX0NGVFIgcmVwb3J0ZXIuIFRoZSBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHBsYXNtaWQgd2FzIG1vZGlmaWVkIGJ5IGludHJvZHVjaW5nIGEgMyBicCBkZWxldGlvbiByZXNlbWJsaW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBpbnNlcnRpbmcgYSAyNyBicCBzZXF1ZW5jZSBmcm9tIHRoZSBnZW5vbWljIENGVFIgdGFyZ2V0IGluY2x1ZGluZyBQQU0gYW5kIHByb3Rvc3BhY2VyIHNlcXVlbmNlIGFzIHdlbGwgYXMgbWFraW5nIHNpbGVudCBlZGl0cyB0byBhY2NvdW50IGZvciB0aGUgQVQtcmljaCByZWdpb24gdXBzdHJlYW0gb2YgdGhlIG11dGF0aW9uLjwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgY29uc3RydWN0ZWQgdGhlIHJlcG9ydGVyIHN5c3RlbSBieSBmaXJzdCBhbmFseXppbmcgdGhlIG9yaWdpbmFsIHBsYXNtaWQgdG8gaWRlbnRpZnkgYXBwcm9wcmlhdGUgcmVzdHJpY3Rpb24gc2l0ZXMuIFdlIHRoZW4gZGlnZXN0ZWQgdGhlIHBsYXNtaWQgYmFja2JvbmUgYW5kIGNsb25lZCBpbiBhIGdlbmUgc3ludGhlc2lzIGZyYWdtZW50IG9yZGVyZWQgYXQgSURUIGNvbnRhaW5pbmcgdGhlIGVkaXRzIHZpYSBHaWJzb24gQXNzZW1ibHkgY2xvbmluZy4gVGhlIGNvcnJlY3QgY2xvbmluZyB3YXMgdmFsaWRhdGVkIGZpcnN0IGJ5IGNvbG9ueSBQQ1IgYW5kIHRoZW4gYnkgc2VxdWVuY2luZyB0aGUgcmVnaW9ucyBvZiB0aGUgcGxhc21pZCBjb250YWluaW5nIHRoZSBjbG9uaW5nIHNpdGVzIGFuZCBvdXIgbW9kaWZpY2F0aW9ucy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBldmFsdWF0ZWQgdGhlIGZ1bmN0aW9uYWxpdHkgb2Ygb3VyIHJlcG9ydGVyIHN5c3RlbSBieSBjby10cmFuc2ZlY3Rpbmcgb3VyIHJlcG9ydGVyIGNvbnN0cnVjdCB3aXRoIGEgcENNVi1QRTIgcHJpbWUgZWRpdG9yIHBsYXNtaWQgYXMgd2VsbCBhcyBhIHBsYXNtaWQgZXhwcmVzc2luZyBwZWdSTkEgdGhhdCB0YXJnZXRlZCBvdXIgcmVwb3J0ZXIgKHNlZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdwZWdybmEnLCAnL2VuZ2luZWVyaW5nJyl9PiBwZWdSTkEgZW5naW5lZXJpbmcgY3ljbGUgPC9hPikgaW50byBIRUsyOTMgY2VsbHMuIEFmdGVyIDcyIGggd2Ugc2F3IGEgc2lnbmlmaWNhbnQgbnVtYmVyIG9mIGNlbGxzIHNob3dpbmcgZmx1b3Jlc2NlbmNlLiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkaXRpb25hbGx5LCBmb3IgcG9zaXRpdmUgY29udHJvbHMgd2UgdHJhbnNmZWN0ZWQgYSB0ZWNobmljYWwgY29udHJvbCBwbGFzbWlkIGFzIHdlbGwgdGhlIHVubW9kaWZpZWQgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBwbGFzbWlkLCB3aGljaCBjb3VsZCBiZSB1c2VkIHRvIGRldGVybWluZSB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgYXMgd2VsbCBhcyBub3JtYWxpemUgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeS4gQXMgbmVnYXRpdmUgY29udHJvbHMsIG91ciBtb2RpZmllZCBwbGFzbWlkLCBwQ01WLVBFMiBhbmQgdGhlIHBlZ1JOQSBwbGFzbWlkIHdlcmUgdHJhbnNmZWN0ZWQuIFRoZSBwb3NpdGl2ZSBjb250cm9scyBzaG93ZWQgZmx1b3Jlc2NlbmNlLCB3aGlsZSB0aGUgbmVnYXRpdmUgY29udHJvbCBkaWQgbm90LiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3JlcC1pdDMuc3ZnXCIgYWx0PVwiSWxsdXN0cmF0aW9uIG9mIHBlZ1JOQSB0ZXN0aW5nIHVzaW5nIHRoZSBwUEVBUl9DRlRSIHN5c3RlbVwiLz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDQ6PC9iPiBJbGx1c3RyYXRpb24gb2YgdGhlIHBlZ1JOQSB0ZXN0aW5nIHVzaW5nIHRoZSBwUEVBUl9DRlRSIHN5c3RlbS4gSEVLMjkzIGNlbGxzIHRyYW5zaWVudGx5IHRyYW5zZm9ybWVkIHdpdGggdGhlIHBQRUFSX0NGVFIgcGxhc21pZCAoaW4gdGhlIG1pZGRsZSkgc2hvdyBmbHVvcmVzY2VuY2UgYWZ0ZXIgdHJhbnNmb3JtYXRpb24gd2l0aCBhIHByaW1lIGVkaXRvciBhbmQgYSByZXBvcnRlci1zcGVjaWZpYyBwZWdSTkEgZXhwcmVzc2lvbiBwbGFzbWlkLiBUaGUgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBpcyB1c2VkIGFzIGFuIGludGVybmFsIHBvc2l0aXZlIGNvbnRyb2wgYW5kIGZvciBub3JtYWxpemF0aW9uLjwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgT3VyIHJlc3VsdHMgZGVtb25zdHJhdGUgdGhyZWUgdGhpbmdzOiBGaXJzdGx5LCB0aGUgb3JpZ2luYWwgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBwbGFzbWlkIGxlYWRzIHRvIHVuZGlzcnVwdGVkIGV4cHJlc3Npb24gb2YgZUdGUCBpbiB0aGUgdHJhbnNmZWN0ZWQgY2VsbHMuIFNlY29uZGx5LCB0aGUgbW9kaWZpY2F0aW9ucyB0aGF0IHdlIG1hZGUgdG8gY3JlYXRlIG91ciBvd24sIGNvbnRleHQgc3BlY2lmaWMgUEVBUiBwbGFzbWlkIHByZXZlbnRlZCBwcm9wZXIgZXhwcmVzc2lvbiBvZiBlR0ZQIGluIHRyYW5zZmVjdGVkLCB1bmVkaXRlZCBjZWxscyBhcyBwbGFubmVkIGFuZCBub3RhYmx5IHdpdGggbm8gYXBwYXJlbnQgbm9pc2UuIFRoZSBsYXN0IGFuZCBtb3N0IGltcG9ydGFudCBpbnNpZ2h0IGdhaW5lZCB3YXMsIHRoYXQgZWRpdGluZyBvZiB0aGUgcmVwb3J0ZXIgcGxhc21pZCB1c2luZyByZXNwZWN0aXZlIHBlZ1JOQXMgc3VjY2Vzc2Z1bGx5IHJlc3RvcmVzIGVHRlAgZXhwcmVzc2lvbiwgcHJvdmluZyB0aGF0IG91ciByZXBvcnRlciB3b3JrcyBhcyBpbnRlbmRlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+VGhpcyBhY2hpZXZlbWVudCBmb3JtZWQgYSBjb252ZW5pZW50IGJhc2lzIGZvciB0aGUgZm9sbG93aW5nIG9wdGltaXphdGlvbiBvZiBwcmltZSBlZGl0aW5nIGluIHRoZSBDRlRSIEY1MDhkZWwgbG9jdXMgZm9yIHVzIGFzIHdlbGwgYXMgb3RoZXIgcmVzZWFyY2ggZ3JvdXBzLjwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiQXBwbGljYXRpb24gaW4gZXBpdGhlbGlhbCBDZWxsc1wiIGlkPVwicmVwNGhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsdGhvdWdoIHdlIGNvdWxkIHNob3cgdGhhdCBvdXIgUEVBUiByZXBvcnRlciBwbGFzbWlkIHdvcmtzIGluIGEgSEVLIGNlbGwgbW9kZWwsIGFjY29yZGluZyB0byA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdpZ25hdG92YScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBQcm9mLkRyLiBab3lhIElnbmF0b3ZhIDwvYT4gaW5zaWdodHMgZ2FpbmVkIGhlcmUgbWlnaHQgc3RpbGwgbm90IGVudGlyZWx5IHRyYW5zZmVyIHRvIGNlbGxzIGFjdGl2ZWx5IGV4cHJlc3NpbmcgQ0ZUUi4gQXMgcmVjb21tZW5kZWQsIHdlIGFwcGxpZWQgb3VyIHJlcG9ydGVyIHRvIGEgc3lzdGVtIGNsb3NlciB0byBhIHRoZXJhcGV1dGljIHRhcmdldCBDRkJFNDFvLVtsaW5rXS4gVGhlIGNlbGxzIGFyZSBkZXJpdmVkIGZyb20gYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbHMgb2YgYSBjeXN0aWMgZmlicm9zaXMgcGF0aWVudCBhbmQgYXJlIGhvbW96eWdvdXMgZm9yIENGVFIgRjUwOGRlbC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciBleHBlcmltZW50aW5nIGluIENGQkU0MW8tIGNlbGxzLCB0aGUgc2FtZSByZXBvcnRlciBjb25zdHJ1Y3Qgd2FzIHVzZWQgYXMgZm9yIHRoZSBIRUsyOTMgdGVzdC4gSG93ZXZlciwgd2UgdXNlZCBhIGRpZmZlcmVudCBwcmltZSBlZGl0b3IgKHBDTVYtUEU2Yywgc2VlIHByaW1lIGVkaXRpbmcgc3lzdGVtcyBlbmdpbmVlcmluZyBjeWNsZTxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlLXN5c3RlbXMnLCAnL2VuZ2luZWVyaW5nJyl9PiBwcmltZSBlZGl0aW5nIHN5c3RlbXMgY2lyY2xlIDwvYT4pLCBhbmQgb25seSBwZWdSTkFzIHdlcmUgdXNlZCwgdGhhdCBwcm92ZWQgdGhlIG1vc3QgZWZmaWNpZW50IGluIHByZWNlZGluZyBleHBlcmltZW50cyAoc2VlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlZ3JuYScsICcvZW5naW5lZXJpbmcnKX0+IHBlZ1JOQSBlbmdpbmVlcmluZyBjeWNsZSA8L2E+KS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBTaW1pbGFyIHRvIHRoZSBwcmV2aW91cyBjeWNsZSwgd2UgZXZhbHVhdGVkIHRoZSBmdW5jdGlvbmFsaXR5IG9mIG91ciByZXBvcnRlciBzeXN0ZW0gYnkgY28tdHJhbnNmZWN0aW5nIG91ciByZXBvcnRlciBjb25zdHJ1Y3Qgd2l0aCBhIHBDTVYtUEU2YyBwcmltZSBlZGl0b3IgcGxhc21pZCBhcyB3ZWxsIGFzIGEgcGxhc21pZCBleHByZXNzaW5nIHBlZ1JOQSB0aGF0IHRhcmdldGVkIG91ciByZXBvcnRlciB0aGlzIHRpbWUgaW50byBDRkJFNDFvLSBjZWxscy4gQWZ0ZXIgNzIgaCB3ZSBzYXcgYSBzaWduaWZpY2FudCBudW1iZXIgb2YgY2VsbHMgc2hvd2luZyBmbHVvcmVzY2VuY2UuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBMaWtlIHdpdGggdGhlIGV4cGVyaW1lbnRzIGluIEhFSyBjZWxscywgd2UgdHJhbnNmZWN0ZWQgYSB0ZWNobmljYWwgY29udHJvbCBwbGFzbWlkIGFzIHdlbGwgdGhlIHVubW9kaWZpZWQgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBwbGFzbWlkIGFzIHBvc2l0aXZlIGNvbnRyb2xzIGFuZCBvdXIgbW9kaWZpZWQgcGxhc21pZCwgcENNVi1QRTZjIGFuZCB0aGUgcGVnUk5BIHBsYXNtaWQgaW5kaXZpZHVhbGx5IGFzIG5lZ2F0aXZlIGNvbnRyb2xzLiBBZ2FpbiwgdGhlIHBvc2l0aXZlIGNvbnRyb2xzIHNob3dlZCBzb2xpZCBmbHVvcmVzY2VuY2UsIHdoaWxlIHRoZSBuZWdhdGl2ZSBjb250cm9sIGRpZCBub3QuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcmVwLWl0NS5zdmdcIiBhbHQ9XCJJbGx1c3RyYXRpb24gb2YgYXBwbHlpbmcgdGhlIHBQRUFSX0NGVFIgc3lzdGVtIHRvIGx1bmcgZXBpdGhlbGlhbCBjZWxsIGxpbmVzXCIvPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUgNTo8L2I+IElsbHVzdHJhdGlvbiBvZiB0aGUgcGVnUk5BIHRlc3RpbmcgdXNpbmcgdGhlIHBQRUFSX0NGVFIgc3lzdGVtLiBDRkJFNDFvLSBjZWxscyB0cmFuc2llbnRseSB0cmFuc2Zvcm1lZCB3aXRoIHRoZSBwUEVBUl9DRlRSIHBsYXNtaWQgKGluIHRoZSBtaWRkbGUpIHNob3cgZmx1b3Jlc2NlbmNlIGFmdGVyIHRyYW5zZm9ybWF0aW9uIHdpdGggYSBwcmltZSBlZGl0b3IgYW5kIGEgcmVwb3J0ZXItc3BlY2lmaWMgcGVnUk5BIGV4cHJlc3Npb24gcGxhc21pZC4gVGhlIHBEQVMxMjEyNF9QRUFSLUdGUC1wcmVlZGl0ZWQgaXMgdXNlZCBhcyBhbiBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIGFuZCBmb3Igbm9ybWFsaXphdGlvbi48L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgZXhwZXJpbWVudCBjb25maXJtcyB0aGF0IG91ciByZXBvcnRlciBjYW4gbm90IG9ubHkgYmUgdXNlZCBpbiBjZWxsIGxpbmVzIGRpc3RhbnRseSByZWxhdGVkIHRvIHBhdGllbnQgY2VsbHMgb2YgaW50ZXJlc3QsIGluIG91ciBjYXNlIEhFSzIwMyBjZWxscywgYnV0IGFsc28gd29ya3MgaW4gY2VsbHMgYWN0aXZlbHkgZXhwcmVzc2luZyBDRlRSIGFuZCBjYXJyeWluZyB0aGUgbXV0YXRpb24uIFRoZSByZXBvcnRlciBzdGlsbCBzaG93ZWQgbm8gbm9pc2UuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJyZXA1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkFwcGxpY2F0aW9uIGluIFByaW1hcnkgQ2VsbHNcIiBpZD1cInJlcDVoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgbW9kZWwgY2xvc2VzdCB0byBhcHBsaWNhdGlvbiBpbiBhY3R1YWwgcGF0aWVudCBjZWxscyBhcmUgaHVtYW4gZGVyaXZlZCBwcmltYXJ5IGNlbGxzLiBGb3Igb3VyIGxhc3QgdGVzdCBvZiBvdXIgbW9kaWZpZWQgUEVBUiByZXBvcnRlciwgd2UgdGh1cyBjaG9zZSB0byB1c2UgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxsc1tsaW5rXSBkZXJpdmVkIGZyb20gbWVtYmVycyBvZiBvdXIgdGVhbS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciB0ZXN0aW5nIG91ciByZXBvcnRlciBpbiB0aGUgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscywgdGhlIHNhbWUgY29uc3RydWN0cyBoYXZlIGJlZW4gdXNlZCBhcyBpbiB0aGUgcHJldmlvdXMgaXRlcmF0aW9uIHdpdGggQ0ZCRTQxby0gY2VsbHMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIGV4cGVyaW1lbnRhbCBzZXR1cCBmb3IgdGhpcyBleHBlcmltZW50IHdhcyBhIHNjYWxlZCBkb3duIHZlcnNpb24gb2YgdGhlIHByZXZpb3VzIGN5Y2xlIHdpdGggdGhlIG9ubHkgYWx0ZXJlZCB2YXJpYWJsZSBiZWluZyB0aGUgY2VsbHMgdHJhbnNmZWN0ZWQuIEluIHRoaXMgY2FzZSwgd2UgZGlkIG5vdCBvYnNlcnZlIGFueSBmbHVvcmVzY2VuY2UsIG5laXRoZXIgaW4gdGhlIHRlc3RlZCBjZWxscywgbm9yIHRoZSB0ZWNobmljYWwgb3IgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBwb3NpdGl2ZSBjb250cm9scy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoaXMgbGFzdCBleHBlcmltZW50LCB0aGUgbmVnYXRpdmUgdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wgaW1wbGllcyBhIGZhaWxlZCB0cmFuc2ZlY3Rpb24gb2YgdGhlIGNlbGxzLiBUaHVzLCB0aGlzIGF0dGVtcHQgZGlkIG5vdCBhbGxvdyB0byBkcmF3IGFueSBjb25jbHVzaW9uIHJlZ2FyZGluZyB0aGUgZnVuY3Rpb24gb2Ygb3VyIHJlcG9ydGVyIGluIHByaW1hcnkgY2VsbHMuIFRoZSBleHBlcmltZW50IGlzIHRvIGJlIHJlcGVhdGVkIGluIHRoZSBmdXR1cmUuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJyZXA2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIk91dGxvb2tcIiBpZD1cInJlcDZoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBPdXIgQ0ZUUiBjb250ZXh0dWFsaXplZCBQRUFSIHJlcG9ydGVyIHByb3ZlZCB0byBjb25zaXN0ZW50bHkgYWxsb3cgZGV0ZWN0aW9uIG9mIHByaW1lIGVkaXRpbmcgd2l0aG91dCBub3RhYmxlIG5vaXNlLCBsYXlpbmcgdGhlIGZvdW5kYXRpb24gZm9yIG9wdGltaXphdGlvbiBvZiBleGlzdGluZyBhbmQgdGVzdGluZyBvZiBuZXcgcHJpbWUgZWRpdGluZyBzeXN0ZW1zLiBBbHRob3VnaCB2ZXJ5IHZlcnNhdGlsZSBpbiB0aGUgY29udGV4dCBvZiB0YXJnZXRpbmcgQ0ZUUiBGNTA4ZGVsIHdpdGggdGhlIHNwYWNlciBvZiBvdXIgY2hvaWNlW2xpbmtdLCBhIHdpZGVyIGFwcGxpY2FiaWxpdHkgdG8gb3RoZXIgZ2Vub21pYyB0YXJnZXRzIGFuZCBvdGhlciBwb3NzaWJsZSBwcmltZSBlZGl0b3IgdmFyaWFudHMgd29ya2luZyBkaWZmZXJlbnRseSB0aGFuIENhczktYmFzZWQgc3lzdGVtcyB3b3VsZCBiZSBmYXZvcmFibGUuIEluIHRoZSBvcmlnaW5hbCBQRUFSIHBsYXNtaWQgaG93ZXZlciwgbW9kaWZpY2F0aW9uIG9mIHZhcmlhYmxlIHJlZ2lvbiBpcyBxdWl0ZSBpbXByYWN0aWNhbC4gQWxzbywgYXMgYSBwYXJ0IHRoZSBlR0ZQIGlzIFJDRlsxMDAwXSBidXQgbm90IFJDRlsxMF0gQmlvQnJpY2sgc3RhbmRhcmQgY29uZm9ybSBhbmQgaGFyZGx5IGNvbXBhdGlibGUgd2l0aCBvdGhlciBwYXJ0cyBsaWtlIG91ciBQcmVDeXNlIGNhc3NldHRlW2xpbmtdLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGlzIGlzIHdoeSwgYXMgYW4gb3V0bG9vayBhbmQgY29udHJpYnV0aW9uIGZvciBmdXR1cmUgaUdFTSB0ZWFtcywgd2UgYWltIHRvIGNyZWF0ZSBhIG1vcmUgbW9kdWxhciBhbmQgY29tcGF0aWJsZSBwYXJ0IHNpbWlsYXIgdG8gb3VyIFByZUN5c2UgQ2FzZXR0ZS4gRm9yIHRoaXMgd2UgbWFkZSB1c2Ugb2YgdGhlIGV4cGVyaWVuY2UgZ2FpbmVkIHdoZW4gY2xvbmluZyBwZWdSTkFzLiBBbiBvbGlnb251Y2xlb3RpZGUtYmFzZWQgZ29sZGVuIGdhdGUgY2xvbmluZyBzaXRlIGluIHRoZSByZWdpb24gb2YgaW50ZXJlc3Qgc3Vycm91bmRpbmcgdGhlIDVcdTIwMTkgc3BsaWNlIGRvbm9yIHNpdGUgYWxsb3dzIGZvciBjaGVhcCBhbmQgY29udmVuaWVudCBtb2RpZmljYXRpb24gb2YgdGhlIHNlcXVlbmNlLiBUaGUgYXJlYSBiZXR3ZWVuIHRoZSBUeXBlSUlTIHJlc3RyaWN0aW9uIHNpdGVzIGlzIGRlc2lnbmVkIGFzIGEgZHJvcG91dCBjYXNzZXR0ZSBjb2RpbmcgZm9yIGEgZmx1b3Jlc2NlbmNlIG1hcmtlciBleHByZXNzZWQgaW4gRS4gY29saSwgdGhhdCBlbmFibGVzIHJhcGlkIHNjcmVlbmluZyBmb3IgdHJhbnNmb3JtYW50cyBjb250YWluaW5nIGNvcnJlY3RseSBkaWdlc3RlZCBwbGFzbWlkIGJhY2tib25lcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPiAqL31cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJyZWZlcmVuY2VzXCI+XG4gICAgICAgICAgICAgICAgICAgICA8RW5nUmVwc291cmNlcy8+XG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgXCI+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsZWZ0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiUHJldmlvdXNcIiBvcGVuPVwib3VyLWN5Y2xlXCIgc2Nyb2xsVG9JZD1cIm91ci1jeWNsZS1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJ0cmFuc2ZlY3Rpb25cIiBzY3JvbGxUb0lkPVwidHJhbnNmZWN0aW9uLWhlYWRlclwiLz48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBpZD1cInRhYi10cmFuc2ZlY3Rpb25cIiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICA8c2VjdGlvbiAgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cInRyYW5zZmVjdGlvbi1oZWFkZXJcIiB0ZXh0PVwiT3B0aW1pemF0aW9uIG9mIFRyYW5zZmVjdGlvblwiPjwvSDI+XG4gICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFRvIHRlc3QgcHJpbWUgZWRpdG9ycywgYSByZWxpYWJsZSBtb2RlbCBzeXN0ZW0gaXMgcmVxdWlyZWQuIEhFSzI5MyBjZWxscyBhcmUgYSBodW1hbiBkZXJpdmVkIGNlbGwgbGluZSBhbmQgd2lkZWx5IHVzZWQgaW4gYSB2YXJpZXR5IG9mIGZpZWxkcyBpbiBiaW9sb2d5PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXRyYW5zZmVjdGlvblwiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4uIEFwYXJ0IGZyb20gZWFzeSBoYW5kbGluZyBhbmQgY29tcGFyYXRpdmVseSBlYXN5IHRyYW5zZmVjdGlvbiwgdGhleSBoYXZlLCBhcyB3ZSBmb3VuZCBvdXQgaW4gb3VyIGV4Y2hhbmdlIHdpdGggIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanNpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5NYXR0aWpzIEJ1bGNhZW48L2E+LCBvbmUgYWR2YW50YWdlIG92ZXIgb3RoZXIgbW9kZWxzOiBUaGV5IGFyZSBuYXR1cmFsbHkgaW1wYWlyZWQgaW4gRE5BIHJlcGFpciBtZWNoYW5pc21zIGFuZCB0aGVyZWZvcmUgZWFzaWVyIHRvIGVkaXQuIFRvIHByb3Blcmx5IGNvbXBhcmUgZWRpdGluZyBlZmZpY2llbmNpZXMsIGEgaGlnaCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBpcyBvZiB1dG1vc3QgaW1wb3J0YW5jZS4gVGhpcyBlbmdpbmVlcmluZyBjeWNsZSBmb2N1c2VzIG9uIG91ciB3b3JrIGluIHNpbXVsYXRpbmcgcHJpbWUgZWRpdGluZyB1c2luZyB0aGUgUEVBUiByZXBvcnRlciBzeXN0ZW08VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItdHJhbnNmZWN0aW9uXCIgbnVtPVwiMlwiIHNjcm9sbElkPVwiZGVzYy0yXCIvPiBhbmQgb3B0aW1pemluZyB0cmFuc2ZlY3Rpb24gcHJvdG9jb2xzLlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwidHJmMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJUZXN0IG9mIExpcG9mZWN0YW1pbmUgMjAwMFwiIGlkPVwidHJmMWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQmVmb3JlIHRlc3RpbmcgYW55IG9mIG91ciBtZWNoYW5pc3RpYyBhcHByb2FjaGVzLCB3ZSBoYWQgdG8gZXhhbWluZSB3aGV0aGVyIHdlIGNhbiBmYWNpbGl0YXRlIGFuZCBkZXRlY3QgcHJpbWUgZWRpdGluZyBpbiB0aGUgZmlyc3QgcGxhY2UuIER1cmluZyBvdXIgcmVzZWFyY2ggd2UgZXZlbnR1YWxseSBzdHVtYmxlZCB1cG9uIHRoZSBQRUFSIHJlcG9ydGVyIHN5c3RlbSAoc2VlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlZ3JuYScsICcvZW5naW5lZXJpbmcnKX0+IHBlZ1JOQSBlbmdpbmVlcmluZyBjeWNsZSA8L2E+KSkuIFRoZSBQRUFSIDJpbjEgcGxhc21pZCByZXBvcnRlciBpbmNsdWRlcyBhIEdGUCB0aGF0IGlzIHRvIGJlIGVkaXRlZCBmb3Igc2Vuc2l0aXZlIHByaW1lIGVkaXRpbmcgZGV0ZWN0aW9uLCBhbmQgYSBwZWdSTkEgZXhwcmVzc2lvbiBjYXNzZXR0ZSB3aXRoIGEgcGVnUk5BIHRhcmdldGluZyB0aGUgcGxhc21pZCBpdHNlbGYuIEhhdmluZyBmb3VuZCBhIHN5c3RlbSBjYXBhYmxlIG9mIGRldGVjdGluZyBldmVuIHNtYWxsLXNjYWxlIHByaW1lIGVkaXRpbmcsIHRoZSBuZXh0IHN0ZXAgd2FzIHRvIGZpbmQgdHJhbnNmZWN0aW9uIGNvbmRpdGlvbnMgdGhhdCB3b3VsZCB3b3JrLiBJbiB0aGUgbGl0ZXJhdHVyZSwgTGlwb2ZlY3RhbWluZSBpcyBkZXNjcmliZWQgYXMgYSBjb21tb24gdHJhbnNmZWN0aW9uIGFnZW50LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2ZlY3Rpb24gd2l0aCBMaXBvZmVjdGFtaW5lIDIwMDAgd2FzIHBlcmZvcm1lZCBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIEFuemFsb25lIHByb3RvY29sLiBIb3dldmVyLCB0aGUgcmVzdWx0IHdhcyBjaGFyYWN0ZXJpemVkIGJ5IGluc3VmZmljaWVudCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuemFsb25lIGV0IGFsLiAyMDE5PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXRyYW5zZmVjdGlvblwiIG51bT1cIjNcIiBzY3JvbGxJZD1cImRlc2MtM1wiLz4gZGVzY3JpYmUgYSB0cmFuc2ZlY3Rpb24gb2YgcHJpbWUtZWRpdGluZyBjb21wbGV4ZXMgd2l0aCBMaXBvZmVjdGFtaW5lIDIwMDAuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2ZlY3Rpb24gd2l0aCBMaXBvZmVjdGFtaW5lIDIwMDAgd2FzIHBlcmZvcm1lZCBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIEFuemFsb25lIHByb3RvY29sLiBIb3dldmVyLCB0aGUgcmVzdWx0IHdhcyBjaGFyYWN0ZXJpemVkIGJ5IGluc3VmZmljaWVudCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBsb3cgZWZmaWNpZW5jeSBvZiBMaXBvZmVjdGFtaW5lIDIwMDAgaW5kaWNhdGVzIHRoYXQgdGhlIHByb2R1Y3QgaXMgbm90IG9wdGltYWxseSBzdWl0ZWQgdG8gdGhlIHNwZWNpZmljIGNvbmRpdGlvbnMgdW5kZXIgY29uc2lkZXJhdGlvbi4gSW4gY29udHJhc3QsIExpcG9mZWN0YW1pbmUgMzAwMCBpcyBkZXNjcmliZWQgaW4gdGhlIGxpdGVyYXR1cmUgYXMgcG90ZW50aWFsbHkgbW9yZSBlZmZpY2llbnQuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInRyZjJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiSW5pdGlhbCBUZXN0IHdpdGggTGlwb2ZlY3RhbWluZSAzMDAwXCIgaWQ9XCJ0cmYyaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBsaWdodCBvZiB0aGUgYWZvcmVtZW50aW9uZWQgZmluZGluZ3MsIHRoZSBkZWNpc2lvbiB3YXMgdGFrZW4gdG8gdGVzdCBMaXBvZmVjdGFtaW5lIDMwMDAsIGdpdmVuIGl0cyByZXB1dGF0aW9uIGZvciBncmVhdGVyIGVmZmljaWVuY3kuIEEgbmV3IHRlc3QgZGVzaWduIHdhcyBkZXZpc2VkLCB1dGlsaXppbmcgTGlwb2ZlY3RhbWluZSAzMDAwIHdpdGggYW4gZXF1aXZhbGVudCBxdWFudGl0eSBvZiBETkEgYW5kIG1vZGlmaWVkIHRyYW5zZmVjdGlvbiBjb25kaXRpb25zLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBlc3RhYmxpc2hlZCBwcm90b2NvbCwgdGhlIHJlY29tbWVuZGVkIHJhdGlvIG9mIDEgXHUwMEI1ZyBETkEgdG8gMiBcdTAwQjVsIExpcG9mZWN0YW1pbmUgMzAwMCwgYXMgcHJvdmlkZWQgYnkgVGhlcm1vRmlzaGVyLCB3YXMgdG8gYmUgZW1wbG95ZWQuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBvYmplY3RpdmUgb2YgdGhlIGV4cGVyaW1lbnQgd2FzIHRvIGVuaGFuY2UgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IG9mIExpcG9mZWN0YW1pbmUgMzAwMC4gVGhlIHRyYW5zZmVjdGlvbiBwcm90b2NvbCB3YXMgY29uZHVjdGVkIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgbWFudWZhY3R1cmVyJ3MgaW5zdHJ1Y3Rpb25zICgxIFx1MDBCNWcgRE5BLCAyIFx1MDBCNWwgTGlwb2ZlY3RhbWluZSAzMDAwIHJlYWdlbnQpLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgb3V0Y29tZSByZXZlYWxlZCB0aGF0IGRlc3BpdGUgdGhlIG1vZGlmaWNhdGlvbiwgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IHJlbWFpbmVkIGluYWRlcXVhdGUsIGFsdGhvdWdoIGEgbWFyZ2luYWwgaW1wcm92ZW1lbnQgd2FzIGRpc2Nlcm5pYmxlLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWx0aG91Z2ggYSBzd2l0Y2ggdG8gTGlwb2ZlY3RhbWluZSAzMDAwIHJlc3VsdGVkIGluIGEgbWFyZ2luYWwgaW1wcm92ZW1lbnQsIHRoZSBlZmZpY2llbmN5IGZlbGwgc2hvcnQgb2YgZXhwZWN0YXRpb25zLiBUaGlzIGluZGljYXRlcyB0aGF0IGZ1cnRoZXIgb3B0aW1pemF0aW9uIGlzIHJlcXVpcmVkIGluIHRlcm1zIG9mIHRoZSBhbW91bnQgb2YgTGlwb2ZlY3RhbWluZSBhbmQgRE5BLCBhcyB3ZWxsIGFzIHRoZSBtZWRpdW0gdXNlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInRyZjNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiT3B0aW1pemF0aW9uIG9mIEROQSBhbmQgTGlwb2ZlY3RhbWluZSBWb2x1bWVzXCIgaWQ9XCJ0cmYzaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBJbiBvcmRlciB0byBvcHRpbWl6ZSB0aGUgdHJhbnNmZWN0aW9uIHByb2Nlc3MsIGEgbmV3IG9wdGltaXphdGlvbiB0ZXN0IHdhcyBkZXNpZ25lZCwgd2hpY2ggaW5jb3Jwb3JhdGVkIGEgdmFyaWFibGUgZGVzaWduIHdpdGggcmVnYXJkIHRvIHRoZSBxdWFudGl0eSBvZiBMaXBvZmVjdGFtaW5lIDMwMDAgYW5kIEROQS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBwcm90b2NvbCBlbnRhaWxlZCB0aGUgdXRpbGl6YXRpb24gb2YgdmFyeWluZyBjb25jZW50cmF0aW9ucyBvZiBMaXBvZmVjdGFtaW5lIDMwMDAsIHNwZWNpZmljYWxseSAxIFx1MDBCNWwgYW5kIDEuNSBcdTAwQjVsLCB3aXRoIGEgRE5BIHF1YW50aXR5IG9mIDEgXHUwMEI1ZyBvciAwLjUgXHUwMEI1Zy4gSW4gdGhpcyBwaGFzZSwgd2UgZGV2ZWxvcGVkIHRoZSB0cmFuc2ZlY3Rpb24gbWV0aG9kIHdpdGggY2FsY2l1bSBjaGxvcmlkZSAoQ2FDbDIpIGFzIGFuIGFsdGVybmF0aXZlIHRvIGNvbnZlbnRpb25hbCBsaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbi4gVGhlIGFpbSB3YXMgdG8gdGVzdCB3aGV0aGVyIHRoaXMgbW9yZSBjb3N0LWVmZmVjdGl2ZSBtZXRob2Qgb2ZmZXJzIGNvbXBhcmFibGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIFRocmVlIGRpZmZlcmVudCBETkEgY29uY2VudHJhdGlvbnMgd2VyZSB1c2VkIHRvIGludmVzdGlnYXRlIHRoZSBlZmZlY3Qgb24gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+ICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBUbyBlbmhhbmNlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LCBvcHRpbWl6YXRpb24gdGVzdHMgd2VyZSBjb25kdWN0ZWQsIGluIHdoaWNoIHRoZSBxdWFudGl0aWVzIG9mIExpcG9mZWN0YW1pbmUgYW5kIEROQSB3ZXJlIHZhcmllZC4gVGhlIG9iamVjdGl2ZSBvZiB0aGlzIGl0ZXJhdGlvbiB3YXMgdG8gZmluZCB0aGUgb3B0aW1hbCByYXRpbyBvZiBMaXBvZmVjdGFtaW5lIDMwMDAgdG8gRE5BLiBUbyB0aGlzIGVuZCwgMSBcdTAwQjVsIGFuZCAxLjUgXHUwMEI1bCBvZiBMaXBvZmVjdGFtaW5lIDMwMDAgYXQgYSBETkEgY29uY2VudHJhdGlvbiBvZiBlaXRoZXIgMSBcdTAwQjVnIG9yIDAuNSBcdTAwQjVnIHdlcmUgY29tcGFyZWQgd2l0aCBlYWNoIG90aGVyLiBJbiB0aGUgbmV4dCBzdGVwLCB0aGUgdGVzdHMgd2VyZSBjYXJyaWVkIG91dCB3aXRoIHRoZSBkaWZmZXJlbnQgRE5BIGNvbmNlbnRyYXRpb25zIHVzaW5nIHRoZSBDYUNsMiB0cmFuc2ZlY3Rpb24gbWV0aG9kLiBUaGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY2llcyB3ZXJlIGNvbXBhcmVkIHdpdGggdGhvc2UgZnJvbSB0aGUgTGlwb2ZlY3RhbWluZSB0cmFuc2ZlY3Rpb24gdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIG5ldyBtZXRob2QgcmVwcmVzZW50cyBhbiBpbXByb3ZlbWVudC4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBUaGUgZXhwZXJpbWVudCBkZW1vbnN0cmF0ZWQgdGhhdCBhIHF1YW50aXR5IG9mIDEgXHUwMEI1bCBMaXBvZmVjdGFtaW5lIDMwMDAgd2FzIHN1ZmZpY2llbnQgZm9yIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uLCBhbmQgdGhhdCBpbmNyZWFzaW5nIHRoZSBxdWFudGl0eSBkb2VzIG5vdCByZXN1bHQgaW4gYSBub3RhYmxlIGRpZmZlcmVuY2UuIEFkZGl0aW9uYWxseSwgdGhlIGZpbmRpbmdzIGluZGljYXRlZCB0aGF0IGFuIGFtb3VudCBvZiAxIFx1MDBCNWcgRE5BIGV4aGliaXRlZCBhIGhpZ2hlciBlZmZpY2llbmN5IHRoYW4gYW4gYW1vdW50IG9mIDAuNSBcdTAwQjVnIEROQS4gSXQgY2FuIGJlIHJlYXNvbmVkIHRoYXQgYWRkaXRpb25hbCBmYWN0b3JzIG1heSBoYXZlIGNvbnRyaWJ1dGVkIHRvIHRoZSBwcmV2aW91c2x5IG9ic2VydmVkIGRlY2xpbmUgaW4gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIE9uZSBwb3RlbnRpYWwgZXhwbGFuYXRpb24gaXMgdGhhdCB0aGUgY2VsbHMgbWF5IGhhdmUgYmVlbiBpbiBhbiBleGNlc3NpdmVseSBoaWdoIHBhc3NhZ2UgbGV2ZWwuIEl0IGJlY2FtZSBjbGVhciBmcm9tIHRoZSB0ZXN0cyB0aGF0IENhQ2wyIHRyYW5zZmVjdGlvbiBkaWQgbm90IGRlbGl2ZXIgYmV0dGVyIHJlc3VsdHMgdGhhbiBMaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbi4gT24gdGhlIGNvbnRyYXJ5LCB0aGUgZWZmaWNpZW5jeSB3YXMgc2lnbmlmaWNhbnRseSBsb3dlciwgYWx0aG91Z2ggdGhlIG1ldGhvZCBpcyBsZXNzIGV4cGVuc2l2ZS4gVGhpcyBsZWQgdG8gdGhlIHJlYWxpc2F0aW9uIHRoYXQgdGhlIENhQ2wyIHRlY2huaXF1ZSBpbiB0aGlzIGZvcm0gd2FzIG5vdCBhIHN1aXRhYmxlIGFsdGVybmF0aXZlIGZvciBvdXIgc3BlY2lmaWMgcmVxdWlyZW1lbnRzLiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSXQgY2FuIGJlIHJlYXNvbmFibHkgZGVkdWNlZCB0aGF0IHRoZSBhZm9yZW1lbnRpb25lZCBmYWN0b3JzIG1heSBoYXZlIGNvbnRyaWJ1dGVkIHRvIHRoZSBvYnNlcnZlZCBkZWNsaW5lIGluIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwidHJmNFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJWYWxpZGF0aW9uIG9mIG9wdGltaXplZCBQcm90b2NvbFwiIGlkPVwidHJmNGhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHJlc3VsdHMgb2J0YWluZWQgd2VyZSB1c2VkIHRvIGRldmVsb3AgYW4gb3B0aW1pemVkIHByb3RvY29sIHRoYXQgdGFrZXMgaW50byBhY2NvdW50IGJvdGggdGhlIGNvbmNlbnRyYXRpb24gb2YgTGlwb2ZlY3RhbWluZSBhbmQgdGhlIGFtb3VudCBvZiBETkEuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBzdWJzZXF1ZW50IHJlc2VhcmNoLCBhIEROQSBxdWFudGl0eSBvZiAxIFx1MDBCNWcgYW5kIGEgZGVmaW5lZCBxdWFudGl0eSBvZiAxIFx1MDBCNWwgb2YgTGlwb2ZlY3RhbWluZSAzMDAwIHdpbGwgYmUgdXRpbGl6ZWQuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvbGxvd2luZyBhIHNlcmllcyBvZiBvcHRpbWl6YXRpb25zLCB0aGUgcHJvb2Ygb2YgY29uY2VwdCB3YXMgY29uZHVjdGVkIG9uY2UgbW9yZSB0byBjb25maXJtIHRoZSBlZmZpY2FjeSBvZiB0aGUgb3B0aW1pemVkIHByb3RvY29sLiBUaGUgb2JqZWN0aXZlIHdhcyB0byBwZXJmb3JtIHRoZSB0cmFuc2ZlY3Rpb24gd2l0aCB0aGUgZmluYWwsIG9wdGltaXplZCBwcm90b2NvbC4gVGhpcyBwcm90b2NvbCBpbnZvbHZlZCB0aGUgdXRpbGl6YXRpb24gb2YgMSBcdTAwQjVsIExpcG9mZWN0YW1pbmUgMzAwMCwgMSBcdTAwQjVnIEROQSwgMiBcdTAwQjVsIFJlYWdlbnQgMzAwMCBhbmQgT3B0aS1NRU0gYXMgYSBtZWRpdW0uIFRoZSBvdXRjb21lcyB3ZXJlIGVuY291cmFnaW5nLCBhcyB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgd2FzIG1hcmtlZGx5IGVuaGFuY2VkLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHV0aWxpemF0aW9uIG9mIGFuIG9wdGltaXplZCBxdWFudGl0eSBvZiAxIFx1MDBCNWwgTGlwb2ZlY3RhbWluZSAzMDAwLCBhIGRlZmluZWQgcXVhbnRpdHkgb2YgRE5BIGFuZCB0aGUgc3VpdGFibGUgT3B0aS1NRU0gbWVkaXVtIHJlc3VsdGVkIGluIGEgbm90YWJsZSBlbmhhbmNlbWVudCBpbiB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gVGhpcyBzdWJzdGFudGlhdGVzIHRoZSBhc3NlcnRpb24gdGhhdCB0aGUgYWZvcmVtZW50aW9uZWQgY29uZGl0aW9ucyBjb25zdGl0dXRlIGFuIG9wdGltYWwgZm91bmRhdGlvbiBmb3IgdGhlIHRyYW5zZmVjdGlvbiBvZiBIRUsgY2VsbHMgd2l0aCB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cInJlZmVyZW5jZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxFbmdUcmZzb3VyY2VzLz5cbiAgICAgICAgICAgICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJyZXBvcnRlclwiIHNjcm9sbFRvSWQ9XCJyZXBvcnRlci1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJwZS1zeXN0ZW1zXCIgc2Nyb2xsVG9JZD1cInBlLXN5c3RlbXMtaGVhZGVyXCIvPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8ZGl2IGlkPVwidGFiLXBlLXN5c3RlbXNcIiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICA8c2VjdGlvbiBpZD1cIlBFIFN5c3RlbXMgc2VjXCIgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cInBlLXN5c3RlbXMtaGVhZGVyXCIgdGV4dD1cIlByaW1lIEVkaXRpbmcgU3lzdGVtc1wiPjwvSDI+XG4gICAgICAgICAgICAgICAgICAgICA8cD5EaWZmZXJlbnQgdmVyc2lvbnMgb2YgdGhlIG9yaWdpbmFsIHByaW1lIGVkaXRpbmcgc3lzdGVtIGhhdmUgYmVlbiBkZXZlbG9wZWQgc2luY2UgaXRzIGluaXRpYWwgaW50cm9kdWN0aW9uLiBEZWNpZGluZyBvbiB3aGF0IHN5c3RlbSB0byB1c2UgZm9yIHRoZSBhcHBsaWNhdGlvbiBpbiB0aGVyYXBldXRpYyBodW1hbiBnZW5lIGVkaXRpbmcsIGVzcGVjaWFsbHkgY29uY2VybmluZyB0aGUgY29ycmVjdGlvbiBvZiBGNTA4ZGVsLCB3YXMgdGhlIGdvYWwgb2YgdGhpcyBlbmdpbmVlcmluZyBjeWNsZS48L3A+XG4gICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFNpbmNlIHdlIGFpbSB0byBkZXZlbG9wIGEgdGhlcmFweSBkZWxpdmVyZWQgdG8gdGhlIGh1bWFuIGJvZHksIHdlIHdhbnRlZCB0byBvYnRhaW4gaGlnaCBlZGl0aW5nIGVmZmljaWVuY3kgd2hpbGUgcmlza2luZyBhcyBsaXR0bGUgb2ZmLXRhcmdldHMgYXMgcG9zc2libGUgYW5kIGFsc28gcmVkdWNpbmcgdGhlIHNpemUgZm9yIGltcHJvdmVkIHBhY2thYmlsaXR5LlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPEluZm9Cb3ggdGl0bGU9XCJFeGlzdGluZyBQcmltZSBFZGl0aW5nIFN5c3RlbXNcIiBpZD1cImN1cnJlbnQtcGUtc3lzdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPlBFMTwvYj48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4sIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoZSBQcmltZSBFZGl0b3IgZmVhdHVyZXMgYSBDYXM5KEg4NDBBKSwgYSBTdHJlcHRvY29jY3VzIHB5b2dlbmVzIENhczkgKFNwQ2FzOSwgaGVyZWFmdGVyIGp1c3QgcmVmZXJyZWQgdG8gYXMgQ2FzOSkgbXV0YW50IHRoYXQgb25seSBjdXRzIHRoZSBub24tdGFyZ2V0IHN0cmFuZCBvZiB0aGUgRE5BIHRlbXBsYXRlPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIyXCIgc2Nyb2xsSWQ9XCJkZXNjLTJcIi8+LCBhbmQgYSB3aWxkdHlwZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZnJvbSB0aGUgTW9sb25leSBNdXJpbmUgTGV1a2FlbWlhIFZpcnVzIChNLU1MViBSVCkgY29ubmVjdGVkIGJ5IGEgc2VyaW5lIGFuZCBnbHljaW5lIHJpY2ggZmxleGlibGUgbGlua2VyLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5QRTI8L2I+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIxXCIgc2Nyb2xsSWQ9XCJkZXNjLTFcIi8+IGltcHJvdmVzIG9uIHRoaXMgY29uY2VwdCBieSBpbmNvcnBvcmF0aW5nIGFuIGltcHJvdmVkIFJUIHdpdGggZml2ZSBtdXRhdGlvbnMgaW1wcm92aW5nIGFmZmluaXR5IHRvIHRoZSB0ZW1wbGF0ZSBSTkEsIGVuenltZSBwcm9jZXNzaXZpdHkgYW5kIHRoZXJtb3N0YWJpbGl0eSAoRDIwME4vTDYwM1cvVDMzMFAvVDMwNksvVzMxM0YpLiBUaGlzIHZlcnNpb24gb2YgdGhlIHByaW1lIGVkaXRvciBzaG93ZWQgdmFyeWluZyBpbXByb3ZlbWVudCBvZiBlZGl0aW5nIGVmZmljaWVuY3kgb3ZlciBhbGwgdGVzdGVkIGxvY2kgYW5kIGVkaXRzIHdpdGggbm8gYXBwYXJlbnQgZG93bnNpZGVzLiBCdWlsZGluZyBvbiB0aGUgUEUyIHN5c3RlbSwgYSBzbWFsbGVyIHZlcnNpb24gb2YgdGhlIE0tTUxWIFJUIHdhcyBpbnRyb2R1Y2VkIGJ5IEdhbyBldCBhbC4gKDIwMjIpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIzXCIgc2Nyb2xsSWQ9XCJkZXNjLTNcIi8+LiBUaGUgUlQgd2FzIHRydW5jYXRlZCBieSA2MjEgYnAgdGhyb3VnaCBkZWxldGlvbiBvZiB0aGUgUk5hc2VIIGRvbWFpbiwgd2hpY2ggb3JpZ2luYWxseSBkZWdyYWRlcyB0aGUgUk5BIHRlbXBsYXRlLCBidXQgaXMgbm90IG5lZWRlZCBmb3IgcHJpbWUgZWRpdGluZy4gVGhlIGNvZG9uIG9wdGltaXplZCB2ZXJzaW9uIG9mIHRoaXMgdHJ1bmNhdGVkIFJUIHByaW1lIGVkaXRvciAoaW4gbGl0ZXJhdHVyZSB1c3VhbGx5IGNhbGxlZCBQRTJcdTIyMDZSTmFzZUgpIHdhcyBuYW1lZCA8Yj5QRTxzdXA+Q088L3N1cD4tTWluaTwvYj4gaW4gdGhlIHBhcGVyIGFuZCB3aWxsIGJlIGFkZHJlc3NlZCBhcyBzdWNoIGhlcmUuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wtNCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTItb3Blbi5zdmdcIiBhbHQ9XCJQRTIgUHJpbWUgRWRpdG9yXCIvPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUgMTogSWxsdXN0cmF0aW9uIG9mIFBFMiBQcmltZSBFZGl0b3I8L2I+IDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgPGI+UEUzPC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPiBzeXN0ZW0sIGRlc2NyaWJlZCBpbiB0aGUgc2FtZSBwYXBlciBhcyBQRTEgYW5kIFBFMiwgaW50cm9kdWNlcyB0aGUgdXNlIG9mIGEgc2Vjb25kIHNpbmdsZSBndWlkZSBSTkEgYmVzaWRlcyB0aGUgcGVnUk5BIHdoaWNoIGxlYWRzIHRvIGEgbmljayBpbiB0aGUgc3RyYW5kIG9wcG9zaXRlIHRvIHRoZSBlZGl0ZWQgc3RyYW5kLiBUaGlzIGlzIHN1cHBvc2VkIHRvIGltcHJvdmUgaW50ZWdyYXRpb24gb2YgZWRpdHMgYnkgZGlyZWN0aW5nIGNlbGx1bGFyIEROQSByZXBhaXIgc3lzdGVtcyB0byB1c2UgdGhlIGVkaXRlZCBzdHJhbmQgYXMgYSB0ZW1wbGF0ZSBmb3IgcmVzb2x2aW5nIGJhc2UgbWlzbWF0Y2hlcy4gTmlja3MgcG9zaXRpb25lZCAzXHUyMDE4IG9mIHRoZSBlZGl0IGFib3V0IDQwXHUyMDEzOTAgYmFzZSBwYWlycyBmcm9tIHRoZSBwZWdSTkEtaW5kdWNlZCBuaWNrIHdlcmUgYWJsZSB0byBmdXJ0aGVyIGluY3JlYXNlIGVkaXRpbmcgZWZmaWNpZW5jaWVzIGFib3V0IHRocmVlZm9sZCB3aGVuIGNvbXBhcmVkIHRvIFBFMiwgYnV0IHdpdGggYSBoaWdoZXIgcmFuZ2Ugb2Ygb24tdGFyZ2V0IGluZGVscyAgLCBtZWFuaW5nIHJhbmRvbSBJbnNlcnRpb25zIGFuZC9vciBEZWxldGlvbnMgdGhhdCBhcHBlYXIgYWZ0ZXIgZmF1bHR5IHJlcGFpciBvZiBkb3VibGUgc3RyYW5kIGJyZWFrcyBpbiB0aGUgRE5BLiBQRTNiLCB3aGVyZSB0aGUgcHJvdG9zcGFjZXIgZm9yIHRoZSBuaWNraW5nIHNnUk5BIGxpZXMgd2l0aGluIHRoZSBlZGl0ZWQgcmVnaW9ucywgZGVjcmVhc2VkIHRoZSBpbmRlbCByYXRlIGdyZWF0bHkgY29tcGFyZWQgdG8gUEUzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sLTQnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTMtb3Blbi5zdmdcIiBhbHQ9XCJQRTMgUHJpbWUgRWRpdG9yXCIvPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPlBFNDwvYj4gYW5kIDxiPlBFNTwvYj48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjRcIiBzY3JvbGxJZD1cImRlc2MtNFwiLz4gZXhwYW5kIHRoZSBQRTIgYW5kIFBFMyBzeXN0ZW1zLCByZXNwZWN0aXZlbHksIGJ5IGNvLWV4cHJlc3NpbmcgYSBkb21pbmFudCBuZWdhdGl2ZSBNTEgxIHByb3RlaW4gKE1MSDEoXHUwMzk0NzU0XHUyMDEzNzU2KSwgaGVyZWFmdGVyIHJlZmVycmVkIHRvIGFzIE1MSDFkbikuIFRoZSBNTEgxIHByb3RlaW4gcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gdGhlIG1pc21hdGNoIHJlcGFpciAoTU1SKSBtZWNoYW5pc20gb2YgdGhlIGh1bWFuIGNlbGw8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjVcIiBzY3JvbGxJZD1cImRlc2MtNVwiLz4gYnkgcmVjcnVpdGluZyBvdGhlciByZXBhaXIgcHJvdGVpbnMgYW5kIGZhY2lsaXRhdGluZyBjYXRhbHl0aWMgZnVuY3Rpb24uIFRoZSBtdXRhbnQgc3RpbGwgcmVjcnVpdHMgb3RoZXIgZmFjdG9ycyBidXQgaXMgaW1wYWlyZWQgaW4gaXRzIGVuZG9udWNsZWFzZSBmdW5jdGlvbiwgZGlzcnVwdGluZyBmdW5jdGlvbiBvZiB0aGUgZW50aXJlIHJlcGFpciBtZWNoYW5pc20uIFRoaXMgbGVhZHMgdG8gYW4gYXZlcmFnZSA3LjctZm9sZCBhbmQgMi4wLWZvbGQgaW5jcmVhc2UgaW4gZWRpdGluZyBlZmZpY2llbmN5LCByZXNwZWN0aXZlbHksIGNvbXBhcmVkIHRvIFBFMiBhbmQgUEUzLiBUaGlzIGlzIHBvc3NpYmx5IGR1ZSB0byBzbG93ZXIgcmVwYWlyIG9mIG1pc21hdGNoZXMgYW5kIHRodXMgbW9yZSB0aW1lIGZvciB0aGUgcHJvdGVpbnMgZW5jb2RlZCBieSBMSUcxIGFuZCBGRU4xIGdlbmVzIHRvIGV4Y2lzZSB0aGUgbm9uLWVkaXRlZCA1XHUyMDE5IGZsYXAgYW5kIGxpZ2F0ZSB0aGUgbmljayBpbiB0aGUgZWRpdGVkIHN0cmFuZC4gQWRkaXRpb25hbGx5LCBNTEgxZG4gY28tZXhwcmVzc2lvbiBzbGlnaHRseSByZWR1Y2VkIG9uLXRhcmdldCBpbmRlbHMgYXMgd2VsbCBhcyB1bmludGVuZGVkIGVkaXRpbmcgb3V0Y29tZXMgaW4gUEUzIHN5c3RlbXMgYW5kIGRpZCBub3QgbGVhZCB0byBoaWdoZXIgb2ZmLXRhcmdldCBpbmRlbCByYXRlcyBvciBvdmVyYWxsIG11dGF0aW9uIHJhdGVzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaXRoIDxiPlBFbWF4PC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiNFwiIHNjcm9sbElkPVwiZGVzYy00XCIvPiwgdGhlIHN0cnVjdHVyZSBvZiBQRTIgaXMgZnVydGhlciBlbmhhbmNlZCBieSB1c2luZyBodW1hbiBjb2Rvbi1vcHRpbWl6ZWQgUlQsIGEgbmV3IGxpbmtlciBjb250YWluaW5nIGEgYmlwYXJ0aXRlIFNWNDAgbnVjbGVhciBsb2NhbGl6YXRpb24gc2VxdWVuY2UgKE5MUyk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjZcIiBzY3JvbGxJZD1cImRlc2MtNlwiLz4sIGFuIGFkZGl0aW9uYWwgQy10ZXJtaW5hbCBjLU15YyBOTFM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjdcIiBzY3JvbGxJZD1cImRlc2MtN1wiLz4gYW5kIFIyMjFLIE4zOTRLIG11dGF0aW9ucyBpbiBTcENhczkgcHJldmlvdXNseSBzaG93biB0byBpbXByb3ZlIENhczkgbnVjbGVhc2UgYWN0aXZpdHk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjhcIiBzY3JvbGxJZD1cImRlc2MtOFwiLz4uIFRoZXNlIGNoYW5nZXMgbGVkIHRvIG1vZGVyYXRlIGltcHJvdmVtZW50cyBpbiBlZGl0aW5nIGVmZmljaWVuY3kgY29tcGFyZWQgdG8gcHJldmlvdXMgZWRpdG9yIGFyY2hpdGVjdHVyZXMuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wtNCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3BlNC1vcGVuLW5ldy5zdmdcIiBhbHQ9XCJQRTQgUHJpbWUgRWRpdG9yXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTUtb3Blbi1uZXcuc3ZnXCIgYWx0PVwiUEU1IFByaW1lIEVkaXRvclwiLz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5QRTY8L2I+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCI5XCIgc2Nyb2xsSWQ9XCJkZXNjLTlcIi8+IHdhcyBtYWRlIGJ5IGltcHJvdmluZyB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGRvbWFpbiBvZiB0aGUgcHJpbWUgZWRpdG9yIHVzaW5nIFBoYWdlLUFzc2lzdGVkIENvbnRpbnVvdXMgRXZvbHV0aW9uIChQQUNFKS4gTXVsdGlwbGUgUlQgbXV0YW50cyAoUEU2YS1kKSwgZGVyaXZlZCBmcm9tIFJUcyBvZiBFc2NoZXJpY2hpYSBjb2xpIEVjNDggcmV0cm9uLCBTY2hpem9zYWNjaGFyb215Y2VzIHBvbWJlIFRmMSByZXRyb3RyYW5zcG9zb24gYW5kIE1vbG9uZXkgTXVyaW5lIExldWthZW1pYSBWaXJ1cywgICB3ZXJlIGlkZW50aWZpZWQgdG8gaW5jcmVhc2UgZWRpdGluZyBlZmZpY2llbmN5IG92ZXIgYW5kL29yIHdlcmUgc21hbGxlciB0aGFuIHRoZSBNLU1MViBSVCB1c2VkIGluIHByZXZpb3VzIFBFIHN5c3RlbXMuIEVzcGVjaWFsbHkgPGI+UEU2YzwvYj4gKGV2b2x2ZWQgVGYxIFJUKSBhbmQgPGI+UEU2ZDwvYj4gKGV2b2x2ZWQgTS1NTFYgUlQpIHNob3dlZCBzaWduaWZpY2FudGx5IGhpZ2hlciBlZGl0aW5nIGVmZmljaWVuY2llcyB0aGFuIGV2ZW4gUEVtYXggZGVwZW5kaW5nIG9uIHRoZSB0YXJnZXRlZCBsb2NpLCB3aXRoIFBFNmQgc2hvd2luZyBiZW5lZml0cyBlc3BlY2lhbGx5IGluIGxvY2kgZm9ybWluZyBtb3JlIGNvbXBsZXggc2Vjb25kYXJ5IHN0cnVjdHVyZXMuIFJlY2VudCBhZHZhbmNlbWVudHMgaW4gcHJpbWUgZWRpdGluZyB0YXJnZXRpbmcgdGhlIENGVFIgRjUwOFx1MDM5NCBtdXRhdGlvbiBzaG93ZWQgdGhhdCBQRTZjIHdhcyB0aGUgbW9zdCBwcm9taXNpbmcgZm9yIGVkaXRpbmcgaW4gdGhpcyBsb2NpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIxMFwiIHNjcm9sbElkPVwiZGVzYy0xMFwiLz4uIEltcHJvdmVtZW50cyBvZiBuQ2FzOSBvbiB0aGUgb3RoZXIgaGFuZCAoUEU2ZS1nKSB3ZXJlIG9ubHkgbWFyZ2luYWwgYW5kIGhpZ2hseSBzaXRlIHNwZWNpZmljLiBBbGwgUEU2IHN5c3RlbXMgdXNlIG5pY2tpbmcgZ1JOQXMgKFBFMykgYnkgZGVmYXVsdCwgYnV0IGRvIG5vdCBjby1leHByZXNzIE1MSDFkbi5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbC00Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcGU2Yy1vcGVuLnN2Z1wiIGFsdD1cIlBFNmMgUHJpbWUgRWRpdG9yXCIvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+UEU3PC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiMTFcIiBzY3JvbGxJZD1cImRlc2MtMTFcIi8+IGFkZHMgYW4gYWRkaXRpb25hbCBSTkEgYmluZGluZyBkb21haW4gdG8gdGhlIFByaW1lIEVkaXRvci4gVGhlIGRvbWFpbiBpcyBkZXJpdmVkIGZyb20gdGhlIExhIFByb3RlaW4gKExhKDEtMTk0KSksIGFuIGVuZG9nZW5vdXMgZXVrYXJ5b3RpYyBwcm90ZWluIGludm9sdmVkIFJOQSBtZXRhYm9saXNtIGFuZCBrbm93biBmb3IgaXRzIHJvbGUgaW4gYmluZGluZyBwb2x5dXJpZGluZSAocG9seVUpIHRhaWxzIGF0IHRoZSAzXHUyMDE5IGVuZHMgb2YgbmFzY2VudCB0cmFuc2NyaXB0cywgdGh1cyBwcm90ZWN0aW5nIHRoZW0gZnJvbSBleG9udWNsZWFzZSBhY3Rpdml0eS4gUEU3IHNob3dlZCBjb25zaWRlcmFibGUgaW1wcm92ZW1lbnRzIG92ZXIgUEVtYXggYXQgZGlmZmVyZW50IGxvY2kgYW5kIGRpZmZlcmVudCB0eXBlcyBvZiBlZGl0cyB3aGVuIHVzZWQgd2l0aCB0aGUgUEUyIHN0cmF0ZWd5IChubyBuaWNraW5nIGdSTkFzLCBubyBNTEgxZG4gY28tZXhwcmVzc2lvbikuIE5vdGFibHksIFBFNyBkaWQgcGVyZm9ybSB3b3JzZSB3aGVuIHVzZWQgd2l0aCBlbmdpbmVlcmVkIHBlZ1JOQXMgdGhhbiB3aXRoIHJlZ3VsYXIgb25lcyAoc2VlIHBlZ1JOQSBkZXNpZ24pLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sLTQnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTctb3Blbi5zdmdcIiBhbHQ9XCJQRTcgUHJpbWUgRWRpdG9yXCIvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2RldGFpbHM+XG4gICAgICAgICAgICAgICAgICAgICA8L0luZm9Cb3g+IFxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGUxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8UGhpbGlwSDMgaWQ9XCJwZTFoZWFkXCI+PHNwYW4+UEUyIGFuZCBQRTxzdXA+Q088L3N1cD4tTWluaTwvc3Bhbj48L1BoaWxpcEgzPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciBvdXIgaW5pdGlhbCBhcHByb2FjaCwgd2Ugd2FudGVkIHRvIHN0YXJ0IGZyb20gdGhlIGJlZ2lubmluZyBhbmQgdXNlIHRoZSBQRTIgcHJpbWUgZWRpdGluZyBzeXN0ZW0uIFNpbmNlIG91ciBnb2FsIG9mIHN0cmlwcGluZyB0aGUgc2l6ZSBvZiB0aGUgcHJpbWUgZWRpdG9yIHdhcyBhIGJpZyBmYWN0b3IgZnJvbSB0aGUgYmVnaW5uaW5nLCB3ZSBkaWQgYSByZXNlYXJjaGVkIGludG8gdGhhdCBkaXJlY3Rpb24gYW5kIGZvdW5kIGEgdHJ1bmNhdGVkIHZlcnNpb24gb2YgTS1NTFYgUlQsIFBFPHN1cD5DTzwvc3VwPi1NaW5pLiBXZSB0aGVuIG9yZGVyZWQgdGhlIHBsYXNtaWRzIGZvciBib3RoIFBFMiBhbmQgUEU8c3VwPkNPPC9zdXA+LU1pbmkuIFNpbmNlIHRoZSBQRTxzdXA+Q088L3N1cD4tTWluaSBwbGFzbWlkIGhhZCBhIGRpZmZlcmVudCBwcm9tb3RvciB0aGFuIHBDTVYtUEUyLCB3ZSBkZWNpZGVkIHRvIGNsb25lIHRoZSBQRTxzdXA+Q088L3N1cD4tTWluaSBSVCBpbnRvIHRoZSBwQ01WLVBFMiB2ZWN0b3IgdG8gYWxsb3cgZm9yIGRpcmVjdCBjb21wYXJpc29uLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVzaWduZWQgcHJpbWVycyBmb3IgdGhlIGFtcGxpZmljYXRpb24gb2YgUEU8c3VwPkNPPC9zdXA+LU1pbmkgUlQgYW5kIGNsb25lZCBpdCBpbnRvIHBDTVYtUEUyIHZpYSBkb3VibGUgZGlnZXN0aW9uIGFuZCBHaWJzb24gYXNzZW1ibHkuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIGNvbXBhcmUgdGhlIHByaW1lIGVkaXRpbmcgcGVyZm9ybWFuY2VzIG9mIE0tTUxWIFJUIChQRTIpIGFuZCBQRTxzdXA+Q088L3N1cD4tTWluaSBSVCwgYm90aCB3ZXJlIHRlc3RlZCB1c2luZyBhIDJpbjEgcHJpbWUgZWRpdGluZyByZXBvcnRlciBwbGFzbWlkIHN5c3RlbTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiMTJcIiBzY3JvbGxJZD1cImRlc2MtMTJcIi8+IChzZWUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtzY3JvbGxUb0lkOiAnUHJvb2Ygb2YgQ29uY2VwdCcsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCB0YWJJZDogJ3RhYi10cmFuc2ZlY3Rpb24nIH0pfT5Qcm9vZiBvZiBDb25jZXB0PC9hPikgaW4gSEVLMjkzIGNlbGxzLiBDb250cmFyeSB0byB0aGUgZmluZGluZ3Mgb2YgR2FvIGV0IGFsLiwgaGVyZSB0aGUgUEU8c3VwPkNPPC9zdXA+LU1pbmkgcHJpbWUgZWRpdG9yIHBlcmZvcm1lZCBhIGxvdCB3b3JzZSB0aGFuIHRoZSBQRTIgcHJpbWUgZWRpdG9yLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgU2luY2Ugd2Uga25ldywgdGhhdCBmb3IgYSBzdWNjZXNzZnVsIHRoZXJhcHkgdGFyZ2V0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGEgdmVyeSBoaWdoIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeSB3YXMgb2YgdXRtb3N0IGltcG9ydGFuY2UsIHdlIGRlY2lkZWQgYWdhaW5zdCB1c2luZyBQRTxzdXA+Q088L3N1cD4tTWluaSBhcyB0aGUgYmFzaXMgZm9yIG91ciBhcHByb2FjaCBhbmQgdGhhdCB3ZSBoYXZlIHRvIGxvb2sgZm9yIG90aGVyIGFsdGVybmF0aXZlcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInBlMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJQRTZjXCIgaWQ9XCJwZTJoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIER1cmluZyBvdXIgaW5pdGlhbCB0YWxrIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF0dGlqc2ludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9Pk1hdHRpanMgQnVsY2FlbjwvYT4sIGhlIHJlY29tbWVuZGVkIGEgdGFsayBvZiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdsaXUnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5EYXZpZCBMaXU8L2E+IGF0IGFuIG9ubGluZSBjb25mZXJlbmNlLCB3aGVyZSBoZSBwcmVzZW50ZWQgdW5wdWJsaXNoZWQgZGF0YSBhYm91dCBoaXMgbGFib3JhdG9yeSB3b3JraW5nIG9uIHByaW1lIGVkaXRpbmcgZm9yIEY1MDhkZWwgY29ycmVjdGlvbi4gV2UgaW52ZXN0aWdhdGVkIGl0IGFuZCB0aHJvdWdoIHRoaXMgY2FtZSBhY3Jvc3MgdGhlIFBFNiBnZW5lcmF0aW9uIG9mIHByaW1lIGVkaXRvcnMuIFNlZWluZyB0aGF0IHRoZSBMaXUgTGFib3JhdG9yeSBldmVudHVhbGx5IGRlY2lkZWQgb24gdXNpbmcgdGhlIFBFNmMgc3lzdGVtLCB3ZSBhZG9wdGVkIHRoZSBmaW5kaW5ncy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGdvdCB0aGUgcGxhc21pZCBjYXJyeWluZyB0aGUgUEU2YyBwcmltZSBlZGl0b3IuIEV4Y2VwdCBmb3IgdGhlIFJUIGFuZCBhIGZldyBpbXByb3ZpbmcgbXV0YXRpb25zIGluIHRoZSBDYXM5IGVuenltZSwgaXQgaGFzIHRoZSBzYW1lIGFyY2hpdGVjdHVyZSBhcyBQRTIsIHdoaWNoIG1hZGUgY29tcGFyaXNvbiBxdWl0ZSBlYXN5LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSB0ZXN0ZWQgUEU2YyBhZ2FpbnN0IFBFMiB1c2luZyB0aGUgc2FtZSByZXBvcnRlciBzeXN0ZW0gYXMgbWVudGlvbmVkIGFib3ZlIGZvciBQRTxzdXA+Q088L3N1cD4tTWluaS4gUEU2YywgYXMgZXhwZWN0ZWQgZnJvbSB0aGUgbGl0ZXJhdHVyZSwgcHJvdmVkIHdheSBtb3JlIGVmZmljaWVudCBpbiBwcmltZSBlZGl0aW5nLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIGRhdGEgZnJvbSBsaXRlcmF0dXJlIGFzIHdlbGwgYXMgb3VyIG93biBleHBlcmltZW50cyBjb25maXJtZWQgdGhhdCBQRTZjIGFyY2hpdGVjdHVyZSBpcyBzdXBlcmlvciB0byBQRTIgZXZlbiB3aXRob3V0IHVzaW5nIG5pY2tpbmcgZ1JOQXMgdGhhdCBoZWxwIHN1cHByZXNzIG1pc21hdGNoIHJlcGFpci4gVGhpcyBsZWQgdXMgdG8gdGhlIGRlY2lzaW9uIHRvIHVzZSB0aGUgUEU2YyByZXZlcnNlIHRyYW5zY3JpcHRhc2UgYW5kIHBhcnRzIG9mIHRoZSBvdmVyYWxsIGFyY2hpdGVjdHVyZSBmb3Igb3VyIHN1YnNlcXVlbnQgdGVzdHMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJwZTNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiUHJlQ3lzZSBDYXNldHRlXCIgaWQ9XCJwZTNoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBsYXRlciBzdGFnZXMgb2Ygb3VyIHByb2plY3QsIHRoZSBMaXUgbGFib3JhdG9yeSBwdWJsaXNoZWQgdGhlaXIgb3duIGZpbmRpbmdzIHJlZ2FyZGluZyBDRlRSIEY1MDhkZWwgdGFyZ2V0aW5nIHdpdGggcHJpbWUgZWRpdGluZzxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiMTBcIiBzY3JvbGxJZD1cImRlc2MtMTBcIi8+LiBUaGUgZGF0YSBzaG93ZWQgdGhhdCB0aGUgZWRpdGluZyBlZmZpY2llbmN5IG9mIFBFMiBiYXNlZCBzeXN0ZW1zLCBldmVuIHdoZW4gdXNpbmcgUEU2YyByZXZlcnNlIHRyYW5zY3JpcHRhc2UsIG1pZ2h0IG5vdCBiZSBzdWZmaWNpZW50IGZvciBhcHBsaWNhdGlvbiBpbiBhIHRoZXJhcHkuIEFsc28sIHRoZSBwbGFzbWlkcyBvZiBjdXJyZW50IHByaW1lIGVkaXRvcnMgZGlkIG5vdCBpbmNsdWRlIHJlc3RyaWN0aW9uIHNpdGVzIHRoYXQgd291bGQgaGF2ZSBhbGxvd2VkIHJlcGxhY2luZyBjb21wb25lbnRzIGxpa2UgdGhlIG5pY2thc2UgdG8gdGVzdCBhbHRlcm5hdGl2ZXMuIFRoaXMgaXMgd2h5LCBpbiBhIGNoZXJyeS1waWNraW5nIG1hbm5lciwgd2UgY29tYmluZWQgdGhlIFBFNmMgYXJjaGl0ZWN0dXJlIHByaW1lIGVkaXRvciB3aXRoIHRoZSBtb3N0IHByb21pc2luZyBhc3BlY3RzIG9mIG90aGVyIHByaW1lIGVkaXRvcnMsIGNyZWF0aW5nIHRoZSBQcmVDeXNlIGNhc3NldHRlLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBPdXIgZGVjaXNpb24gb24gd2hhdCBjb21wb25lbnRzIG9mIGV4aXN0aW5nIHByaW1lIGVkaXRvcnMgd2Ugd2FudGVkIHRvIHVzZSB3YXMgbWFpbmx5IGRyaXZlbiBieSB0d28gZmFjdG9yczogZWZmaWNpZW5jeSBhbmQgcHJlY2lzaW9uLiBJbiBwcmltZSBlZGl0aW5nLCB0aGVzZSB0d28gYXJlIG9mdGVuIG9wcG9zaW5nIGZvcmNlcywgd2hpY2ggbWVhbnMgYWR2YW5jZW1lbnRzIGltcHJvdmluZyBlZmZpY2llbmN5IG9mdGVuIGFsc28gaW5jcmVhc2UgdGhlIHJpc2sgb2Ygb2ZmLXRhcmdldHMgbXV0YXRpb25zIGFuZCBvbi10YXJnZXQgdW5kZXNpcmVkIGVkaXRpbmcuIEZvciB0aGlzIHJlYXNvbiwgd2UgZGVjaWRlZCBhZ2FpbnN0IHVzaW5nIG5pY2tpbmcgZ1JOQXMuIEFsdGhvdWdoIHRoZXkgaGF2ZSBiZWVuIHByb3ZlbiB0byByZWxpYWJseSBpbXByb3ZlIGVkaXRpbmcgZWZmaWNpZW5jeSwgdGhleSBpbmNyZWFzZSB0aGUgcmlzayBhbmQgcG9zc2libGUgc2NvcGUgb2Ygb2ZmLXRhcmdldCBjbGVhdmFnZSBhbmQgbXV0YXRpb25zLiBBZGRpdGlvbmFsbHksIGlmIDxiPlBFM2I8L2I+IGlzIG5vdCBhcHBsaWNhYmxlLCB0aGVyZSBpcyBhIGNoYW5jZSBmb3IgZG91YmxlIHN0cmFuZCBicmVha3MgdG8gb2NjdXIsIHdoaWNoIGRpbWluaXNoZXMgdGhlIHNhZmV0eSBhZHZhbnRhZ2Ugb2YgcHJpbWUgZWRpdGluZyBvdmVyIG90aGVyIGNvbW1vbiBDUklTUFItYmFzZWQgbWV0aG9kcy4gQ28tZXhwcmVzc2lvbiBvZiBNTEgxZG4gY2FuIGltcHJvdmUgZWRpdGluZyBlZmZpY2llbmN5IGluIHRoZSBzYW1lIHdheSBhcyBuaWNraW5nIGdSTkFzIGRvLCBieSBoZWxwaW5nIHRvIGV2YWRlIG9mIHRoZSBjZWxsdWxhciBtaXNtYXRjaCByZXBhaXIgbWVjaGFuaXNtcy4gVGhlIHVzZSBvZiBNTEgxZG4gaXMgZXNwZWNpYWxseSBpbXBhY3RmdWwsIHdoZW4gbmlja2luZyBnUk5BcyBhcmUgbm90IHVzZWQsIHdoaWNoIGlzIHBlcmZlY3QgaW4gb3VyIGNhc2UuIFJlY2VudGx5LCB0aGUgTGEgcG9seShVKS1iaW5kaW5nIG1vdGlmIGhhcyBiZWVuIHNob3duIHRvIGVuaGFuY2UgcHJpbWUgZWRpdGluZyBlZmZpY2llbmN5LCBwcmVzdW1hYmx5IHRocm91Z2ggcHJvdGVjdGlvbiBvZiB0aGUgM1x1MjAxOSBwb2x5KFUpIHRhaWwgb2YgdGhlIHBlZ1JOQSBmcm9tIFJOYXNlcy4gVGhlIG1vdGlmIGlzIGFsc28gY29tcGFyYXRpdmVseSBzbWFsbCwgd2hpY2ggYWxpZ25zIHdpdGggdGhlIG92ZXJhbGwgZ29hbCB0byBjcmVhdGUgYSBjb21wYWN0IHByaW1lIGVkaXRpbmcgdG9vbC4gVGhpcyBpcyB3aHkgUHJlQ3lzZSBDYXNldHRlcyBoYXZlIGJlZW4gZGVzaWduZWQgdG8gaW5jbHVkZSB0aGUgTGEgUk5BIGJpbmRpbmcgbW90aWYgZnVzaW9uIGFuZCB0aGUgZG9taW5hbnQgbmVnYXRpdmUgTUxIMSBwcm90ZWluLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIFByZUN5c2UgY2Fzc2V0dGUgY29tZXMgaW4gdGhyZWUgdmVyc2lvbnM6IFByZUN5c2VBLCB0aGUgbW9zdCBiYXNpYyB2ZXJzaW9uLCBjb21wcmlzZXMgb2YgYSBUNyBwcm9tb3RlciBhbmQgYW4gb3BlbiByZWFkaW5nIGZyYW1lLCB3aGljaCBpbmNsdWRlcyBOTFMgYW5kIG9uZSB0eXBlSUlTIHJlc3RyaWN0aW9uIGVuenltZSBjbG9uaW5nIHNpdGUgZm9yIGEgbmlja2FzZSBhbmQgYSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZWFjaC4gRm9yIHBvc3NpYmxlIGZ1dHVyZSBhZGRpdGlvbnMgbGlrZSBlLiBnLiBzZWxlY3Rpb24gbWFya2VycywgYSBCYW1ISSByZXN0cmljdGlvbiBzaXRlIGF0IHRoZSBlbmQgb2YgdGhlIGNvZGluZyBzZXF1ZW5jZSBhbGxvd3MgZm9yIGVhc3kgaW4tZnJhbWUgR2lic29uIGNsb25pbmcuIEJ1aWxkaW5nIG9uIHRoaXMgYmFzaXMsIFByZUN5c2VCIGV4cGFuZHMgUHJlQ3lzZUEgYnkgdGhlIExhIFBvbHkoVSktYmluZGluZyBtb3RpZi4gUHJlQ3lzZUMgYWRkaXRpb25hbGx5IGludHJvZHVjZXMgdGhlIGNvLWV4cHJlc3NlZCBNTEgxZG4uIFRoZSBjYXNzZXR0ZXMgd2VyZSBvcmRlcmVkIGluIHRocmVlIGluZGl2aWR1YWwgcGFydHMgdG8gYmUgcHV0IHRvZ2V0aGVyIHdpdGggYSBwQ01WLVBFNmMgYmFja2JvbmUgdmlhIEdpYnNvbiBDbG9uaW5nIGluIGRpZmZlcmVudCBjb25maWd1cmF0aW9ucyB0byBjcmVhdGUgdGhlIHRocmVlIHZhcmlhbnRzLiBJbiB0aGUgcGxhc21pZCB0aGUgY2Fzc2V0dGUgaXMgZXhwcmVzc2VkIHVuZGVyIGEgQ01WIHByb21vdGVyIGFuZCBmb2xsb3dlZCBieSBhIHBvbHlhZGVueWxhdGlvbiBzaWduYWwuIFRoZSBQcmVDeXNlIENhc2V0dGVzIHRoZW1zZWx2ZXMgY2FuIGJlIHVzZWQgYXMgYSBCaW9CcmljayBSRkNbMTBdIHN0YW5kYXJkIGNvbXBhdGlibGUgY29tcG9zaXRlIHBhcnQgY2FuIHRodXMgYmUgZnJlZWx5IGNvbWJpbmVkIHdpdGggb3RoZXIgcGFydHMuIFRoZSBuaWNrYXNlIGFuZCBSVCBzbG90cyBjYW4gYmUgdXNlZCBmb3IgaW5zZXJ0aW5nIGFueSBiYXNpYyBvciBjb21wb3NpdGUgcGFydCBjb21wYXRpYmxlIHdpdGggdGhlIFR5cGUgSUlTIFJDRlsxMDAwXSBzdGFuZGFyZCBmb3IgZnVzaW9uIHByb3RlaW5zLiBUaGUgUHJlQ3lzZSBDYXNldHRlIGlzIG1lYW50IHRvIGJlIGEgY29udHJpYnV0aW9uIHRvIHRoZSBpR0VNIGNvbW11bml0eSBhbmQgYSBiYXNlIGZvciBvdGhlciB0ZWFtcyB0byBqb2luIHVzIGFuZCByZXNlYXJjaGVycyBhcm91bmQgdGhlIHdvcmxkIHRvIGlubm92YXRlIGluIHRoZSBleGNpdGluZyBmaWVsZCBvZiBwcmltZSBlZGl0aW5nLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNhc2V0dGVib3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUHJlQ3lzZUFcIiBpZD1cIlBDQVwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWEtY2FzZXR0ZS5zdmdcIiBhbHQ9XCJpbWFnZSAxXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlYm94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUN5c2VCXCIgaWQ9XCJQQ0JcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3ByZWN5c2ViLWNhc2V0dGUuc3ZnXCIgYWx0PVwiaW1hZ2UgMlwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2FzZXR0ZWJveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQcmVDeXNlQ1wiIGlkPVwiUENDXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wcmVjeXNlYy1jYXNldHRlLnN2Z1wiIGFsdD1cImltYWdlIDNcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwgZGl2IGNsYXNzTmFtZT0nY29sIGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUN5c2VBXCIgaWQ9XCJQcmVDeXNlQVwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWEtY2FzZXR0ZS5zdmdcIiBhbHQ9XCJQcmVDeXNlQSBtb2R1bGFyIFBFIGNhc2V0dGVcIiBzdHlsZT17e2hlaWdodDogXCI4MHB0XCIsIHdpZHRoOiBcImF1dG9cIn19Lz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sIGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUN5c2VCXCIgaWQ9XCJQcmVDeXNlQlwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWItY2FzZXR0ZS5zdmdcIiBhbHQ9XCJQcmVDeXNlQiBtb2R1bGFyIFBFIGNhc2V0dGVyXCIgc3R5bGU9e3toZWlnaHQ6IFwiODBwdFwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUN5c2VDXCIgaWQ9XCJQcmVDeXNlQ1wiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWMtY2FzZXR0ZS5zdmdcIiBhbHQ9XCJQcmVDeXNlQyBtb2R1bGFyIFBFIGNhc2V0dGVcIiBzdHlsZT17e2hlaWdodDogXCI4MHB0XCIsIHdpZHRoOiBcImF1dG9cIn19Lz4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICovfVxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cInJlZmVyZW5jZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxFbmdQRXN5c3RlbXMvPlxuICAgICAgICAgICAgICAgICAgPC9TZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IFwiPlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGVmdFwiPjxCdXR0b25PbmVFbmdpbmVlcmluZyBsYWJlbD1cIlByZXZpb3VzXCIgb3Blbj1cInRyYW5zZmVjdGlvblwiIHNjcm9sbFRvSWQ9XCJ0cmFuc2ZlY3Rpb24taGVhZGVyXCIvPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyaWdodFwiPjxCdXR0b25PbmVFbmdpbmVlcmluZyBsYWJlbD1cIk5leHRcIiBvcGVuPVwicGVncm5hXCIgc2Nyb2xsVG9JZD1cInBlZ3JuYS1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5naW5uZWVyaW5ndGFiXCIgaWQ9XCJ0YWItcGVncm5hXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJwZWdSTkEgc2VjXCIgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cInBlZ3JuYS1oZWFkZXJcIiB0ZXh0PVwicGVnUk5BXCI+PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdwZWdybmEnLCAnL2VuZ2luZWVyaW5nJyl9PiBwZWdSTkEgPC9hPiBpcyBvZiBwYXJhbW91bnQgaW1wb3J0YW5jZSBmb3IgZnVuY3Rpb24gYW5kIGVmZmljaWVuY3kgb2YgcHJpbWUgZWRpdG9ycywgYXMgaXQgcGxheXMgYSByb2xlIGluIGV2ZXJ5IHN0ZXAgb2YgdGhlIHByaW1lIGVkaXRpbmcgbWVjaGFuaXNtLiBJdCBpcyB0aGVyZWZvcmUgZXF1YWxseSBpbXBvcnRhbnQgdG8gb3B0aW1pemUgdGhlIHBlZ1JOQSB0aGFuIGl0IGlzIHRvIGhhdmUgYW4gb3B0aW1pemVkIHByaW1lIGVkaXRvci4gSGVuY2UgdGhpcyBlbmdpbmVlcmluZyBjeWNsZSBleHBsYWlucyBvdXIgcHJvY2VzcyBvZiBvcHRpbWl6aW5nIHRoZSBwZWdSTkFzIGZvciBvdXIgZ2Vub21pYyB0YXJnZXQsIENGVFIgRjUwOGRlbC4gR2l2ZW4gdGhhdCBkaWZmZXJlbnQgYXJlYXMgb2YgdGhlIHBlZ1JOQSBoYXZlIGRpZmZlcmVudCBmdW5jdGlvbmFsaXRpZXMsIHRoZSBmb2xsb3dpbmcgaXRlcmF0aW9uIGN5Y2xlcyB3aWxsIGRlbW9uc3RyYXRlIGhvdyBpbXByb3ZlbWVudHMgYW5kIG9wdGltaXphdGlvbnMgaGF2ZSBiZWVuIG1hZGUgdG8gdGhlc2UgdmFyaW91cyBmdW5jdGlvbmFsIGRvbWFpbnMgaW4gcmVsYXRpb24gdG8gdGhlIENGVFIgY29udGV4dC4gVGhpcyB3YXMgYWNoaWV2ZWQgdGhyb3VnaCByZXNlYXJjaCwgdGhlIGNvcnJlc3BvbmRlbmNlIHdpdGggb2YgZXhwZXJ0cyBhbmQgZXhwZXJpbWVudHMuPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGVnMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJJbml0aWFsIHBlZ1JOQSBEZXNpZ24gYW5kIFNpbGVudCBFZGl0c1wiIGlkPVwicGVnMWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBmaXJzdCBpdGVyYXRpb24gb2Ygb3VyIGVuZ2luZWVyaW5nIGN5Y2xlLCB3ZSBkZXNpZ25lZCBvdXIgZmlyc3Qgc2V0IG9mIHBlZ1JOQXMgdGFyZ2V0aW5nIHRoZSBtb2RpZmllZCBQRUFSIHJlcG9ydGVyW2xpbmtdLiAgZm9jdXNlZCBvbiB0aGUgaW5jb3Jwb3JhdGlvbiBvZiBzaWxlbnQgZWRpdHMgaW50byB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRlbXBsYXRlLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGb2xsb3dpbmcgYW4gaW50ZXJ2aWV3IHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignSlBwZWdSTkEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gSmFuLVBoaWxsaXBwIEdlcmhhcmRzIDwvYT4sIHdlIGNhbWUgYWNyb3NzIHRoZSBjb25jZXB0IG9mIHNpbGVudCBlZGl0cy4gU2lsZW50IGVkaXRzIHJlZmVyIHRvIHNpbmdsZS1iYXNlIGFsdGVyYXRpb25zIG9mIHRoZSBudWNsZW90aWRlIHNlcXVlbmNlIHRoYXQgZG8gbm90IGNoYW5nZSB0aGUgZW5jb2RlZCBhbWlubyBhY2lkLiBKYW4tUGhpbGxpcHAgcG9pbnRlZCBvdXQgdGhhdCBpbnRyb2R1Y2luZyBzaWxlbnQgZWRpdHMgaW4gYWRkaXRpb24gdG8gdGhlIGludGVuZGVkIGVkaXQgb2ZmZXJzIHR3byBtYWpvciBhZHZhbnRhZ2VzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGaXJzdGx5LCBzaWxlbnQgZWRpdHMgY2FuIGluY3JlYXNlIHRoZSBsaWtlbGlob29kIG9mIGZsYXAgaW5jb3Jwb3JhdGlvbiBkdXJpbmcgdGhlIHByaW1lIGVkaXRpbmcgcHJvY2VzcywgZXNwZWNpYWxseSBpbiB0aGUgY29udGV4dCBvZiBNTVIgKE1pc21hdGNoIFJlcGFpcikgaW4gdGhlIGNlbGwuIFdpdGhvdXQgc2lsZW50IGVkaXRzLCB0aGUgY2VsbCBpcyBtb3JlIGxpa2VseSB0byBkZXRlY3QgdGhlIG1pc21hdGNoZXMgdGhhdCBvbmx5IG9jY3VyIGF0IHRoZSBkZXNpcmVkIG11dGF0aW9uIHNpdGUsIGxlYWRpbmcgdG8gYSBoaWdoZXIgY2hhbmNlIG9mIHRoZSB3aWxkLXR5cGUgZmxhcCBiZWluZyByZWluc2VydGVkLiBCeSBpbnRyb2R1Y2luZyBzaWxlbnQgZWRpdHMsIG11bHRpcGxlIG1pc21hdGNoZXMgYXJlIHByZXNlbnQgd2hpY2ggdGhpcyBpbmNyZWFzZXMgdGhlIHByb2JhYmlsaXR5IG9mIHRoZSBzeW50aGVzaXplZCBmbGFwIGJlaW5nIGluY29ycG9yYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgU2Vjb25kbHksIHNpbGVudCBlZGl0cyBjYW4gcHJldmVudCByZS1iaW5kaW5nIG9mIHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXggdG8gdGhlIHRhcmdldCByZWdpb24gYWZ0ZXIgc3VjY2Vzc2Z1bCBlZGl0aW5nLiBUaGlzIGlzIGJlIGFjaGlldmVkIGJ5IGludHJvZHVjaW5nIHNpbGVudCBlZGl0cyB0byB0aGUgcmVnaW9ucyBtYWtpbmcgdXAgUEFNIHNlcXVlbmNlIGFuZC9vciBwcm90b3NwYWNlci4gUEFNIG9yIHByb3Rvc3BhY2VyIGRpc3J1cHRpb24gbWFrZSB0aGUgZWRpdGluZyBwcm9jZXNzIG1vcmUgc2VjdXJlLiBUaGlzIGlzIGJlY2F1c2UgaXQgcmVkdWNlcyB0aGUgbGlrZWxpaG9vZCBvZiBlZGl0aW5nIHRoZSB0YXJnZXQgcmVnaW9uIHJlcGVhdGVkbHksIHdoaWNoIHdvdWxkIGluY3JlYXNlIHRoZSBwcm9iYWJpbGl0eSBvZiBvbi10YXJnZXQgdW5kZXNpcmVkIGVkaXRpbmcgb3V0Y29tZXMuIEhlIHN1Z2dlc3RlZCB0aGF0IHN3YXBwaW5nIGN5dG9zaW5lIG9yIGd1YW5pbmUgYmFzZXMgZm9yIHRoZXNlIHNpbGVudCBlZGl0cyBjYW4gYmUgcGFydGljdWxhcmx5IGVmZmVjdGl2ZSBpbiBpbXByb3ZpbmcgcHJpbWUgZWRpdGluZyBlZmZpY2llbmN5LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVzaWduZWQgc2V2ZXJhbCBwZWdSTkFzLCBib3RoIHdpdGggYW5kIHdpdGhvdXQgc2lsZW50IGVkaXRzLiBUbyBhc3Npc3Qgd2l0aCB0aGlzLCB3ZSB1c2VkIHRoZSBwZWdGaW5kZXIgc29mdHdhcmU8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPiwgd2hpY2ggZ2VuZXJhdGVkIHBvc3NpYmxlIHZhcmlhdGlvbnMgb2YgcGVnUk5BcyBiYXNlZCBvbiB0aGUgc2VxdWVuY2Ugb2YgdGhlIHJlcG9ydGVyIHBsYXNtaWQuIFdlIHNlbGVjdGVkIHRoZSBvcHRpbWFsIHBlZ1JOQSBhcyBzdWdnZXN0ZWQgYnkgdGhlIHNvZnR3YXJlLCBhbmQgdGhlbiB0ZXN0ZWQgaXQgaW4gdHdvIGZvcm1zOiBvbmUgdW5tb2RpZmllZCBhbmQgb25lIHdpdGggc2lsZW50IGVkaXRzLiBGb3IgdGhlIHVubW9kaWZpZWQgdmFyaWFudCwgd2UgaW5jbHVkZWQgYSBzaW5nbGUgc2lsZW50IGVkaXQgdGhhdCBpbnRyb2R1Y2VkIGEgUEFNIGRpc3J1cHQgaW4gdGVybXMgb2Ygb3VyIGJpb3NhZmV0eSBtZWFzdXJlcy4gRm9yIHRoZSBtb2RpZmllZCB2YXJpYW50LCB3ZSBpbnRyb2R1Y2VkIHRocmVlIHNpbGVudCBlZGl0cyBpbiB0b3RhbCwgYWRkaW5nIHR3byBtb3JlIHRvIHRoZSBpbml0aWFsIGVkaXQuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBPbmNlIHdlIGhhZCBkZXNpZ25lZCB0aGVzZSB2YXJpYW50cywgd2Ugb3JkZXJlZCB0aGVtIGluIHRoZWlyIGluZGl2aWR1YWwgY29tcG9uZW50cyBhbmQgY2xvbmVkIHRoZW0gaW50byBhIHBVNi1wZWctR0ctYWNjZXB0b3IgYmFja2JvbmUgdXNpbmcgR29sZGVuIEdhdGUgY2xvbmluZyBhY2NvcmRpbmcgdG8gdGhlIHByb3RvY29sIGZyb20gQW56YWxvbmUgZXQgYWwuIDIwMTk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMlwiIHNjcm9sbElkPVwiZGVzYy0yXCIvPi4gV2UgdGhlbiBzY3JlZW5lZCB0aGUgYXNzZW1ibGVkIHBlZ1JOQXMgdG8gZW5zdXJlIHRoYXQgdGhlIGluZGl2aWR1YWwgY29tcG9uZW50cyBoYWQgdGhlIGNvcnJlY3Qgb3JpZW50YXRpb24gYW5kIHRoZW4gY2xvbmVkIHRoZW0gaW50byB0aGUgcFU2LUdHLXBlZ1JOQS1hY2NlcHRvciBwbGFzbWlkIHNvIHRoYXQgdGhleSB3ZXJlIHJlYWR5IHRvIGJlIHRlc3RlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGVzZSB0d28gdmFyaWFudHMgd2VyZSB0aGVuIHRlc3RlZCBhZ2FpbnN0IGVhY2ggb3RoZXIgdXNpbmcgb3VyIHJlcG9ydGVyIHBsYXNtaWQgc3lzdGVtW2xpbmtdIGFuZCBhIFBFMiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdwZS1zeXN0ZW1zJywgJy9lbmdpbmVlcmluZycpfT4gcHJpbWUgZWRpdG9yPC9hPi4gVGhlIHRlc3Qgb2YgdGhlIHBlZ1JOQXMgd2FzIGNvbmR1Y3RlZCBieSBjby10cmFuc2ZlY3RpbmcgdGhlIHJlcG9ydGVyIHN5c3RlbSwgdGhlIHBlZ1JOQSBwbGFzbWlkcyBhbmQgdGhlIFBFMiBwbGFzbWlkcyBpbnRvIEhFSzI5MyBjZWxscy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSByZXN1bHRzIHNob3dlZCB0aGF0IHRoZSBlZGl0aW5nIGVmZmljaWVuY3kgb2YgdGhlIHZhcmlhbnQgd2l0aG91dCBzaWxlbnQgZWRpdHMgd2FzIHN1cGVyaW9yIHRvIHRoZSB2YXJpYW50IHdpdGggc2lsZW50IGVkaXRzLCB3aGljaCBjb25zaWRlcmluZyBvdXIgaW5wdXQgd2FzIG5vdCBleHBlY3RlZC4gQnV0IGFzIHdlIGhhdmUgbGVhcm5lZCBpbiB0aGUgaW50ZXJ2aWV3IHdpdGggSmFuLVBoaWxsaXBwIEdlcmhhcmQsIHRoZXNlIHNpbGVudCBlZGl0cyBhcmUgZXNwZWNpYWxseSBlZmZlY3RpdmUgaW4gYXZvaWRpbmcgbWlzbWF0Y2ggcmVwYWlyIChNTVIpIGluc2lkZSBodW1hbiBjZWxscy4gRm9ybSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXR0aWpzaW52JywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1hdHRpanMgQnVsY2FlbiA8L2E+IHdlIGxlYXJuZWQsIHRoYXQgSEVLMjkzIGNlbGxzIGFyZSBkZWZpY2llbnQgaW4gdGhpcyB2ZXJ5IG1lY2hhbmlzbS4gRnJvbSB0aGlzIHdlIGRlZHVjZWQgdGhhdCB3ZSBoYWQgdG8gdGVzdCB0aGUgc2lsZW50IGVkaXRzIGluIGx1bmcgZXBoaXRhbCBjZWxscyB0byBnZXQgYSB2YWxpZCByZXN1bHQuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJwZWcyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlNjcmVlbmluZyBvZiBwZWdSTkEgdmFyaWFudHNcIiBpZD1cInBlZzJoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGlzIHNlY29uZCBpdGVyYXRpb24sIHdlIGZvY3VzZWQgb24gZnVydGhlciBvcHRpbWl6aW5nIG91ciBwZWdSTkEgYnkgaW5jb3Jwb3JhdGluZyBhIHN0ZW0gbG9vcCBhbmQgZXhwZXJpbWVudGluZyB3aXRoIGRpZmZlcmVudCBsZW5ndGhzIG9mIHRoZSBQQlMgKFByaW1lciBCaW5kaW5nIFNpdGUpIGFuZCBSVFQgKFJldmVyc2UgVHJhbnNjcmlwdGFzZSBUZW1wbGF0ZSkuIFRoZXNlIG1vZGlmaWNhdGlvbnMgd2VyZSBpbnNwaXJlZCBieSBhIGNvbWJpbmF0aW9uIG9mIGxpdGVyYXR1cmUgcmVzZWFyY2ggYW5kIGV4cGVydCBpbnRlcnZpZXdzLiBBZnRlciBldmFsdWF0aW5nIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgcGVnUk5BcyB1c2luZyBGQUNTLCB3ZSBzZWxlY3RlZCB0aGUgdGhyZWUgbW9zdCBlZmZlY3RpdmUgY2FuZGlkYXRlcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFzZWQgb24gbGl0ZXJhdHVyZSByZXZpZXdzIGFuZCBvdXIgaW50ZXJ2aWV3IHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF0dGlqc2ludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBNYXR0aWpzIEJ1bGNhZW4gPC9hPiwgd2UgZGVjaWRlZCB0byBtb2RpZnkgb3VyIHBlZ1JOQSBieSBhZGRpbmcgYSBzdGVtIGxvb3AgdG8gZW5oYW5jZSBpdHMgc3RhYmlsaXR5LiBTcGVjaWZpY2FsbHksIE1hdHRpanMgcmVjb21tZW5kZWQgdXNpbmcgdGhlIHRldm9wcmVRMSBzdGVtIGxvb3AsIGEgc21hbGwgc3RydWN0dXJhbCBtb3RpZiB0aGF0IGluY3JlYXNlcyB0aGUgcGVnUk5BJ3MgcmVzaXN0YW5jZSB0byBSTmFzZXMuIFRoaXMgc3RlbSBsb29wIHdhcyBhZGRlZCB0byB0aGUgMycgZW5kIG9mIHRoZSBwZWdSTkEsIHBvc2l0aW9uZWQgYWZ0ZXIgdGhlIFBCUy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkaXRpb25hbGx5LCBkdXJpbmcgYSB3ZWJpbmFyIHdpdGggQi4gU2MuIEpvcmRhbiBEb21hbjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZWdybmFcIiBudW09XCIzXCIgc2Nyb2xsSWQ9XCJkZXNjLTNcIi8+LCB3ZSBsZWFybmVkIHRoYXQgaXQgaXMgaW1wb3J0YW50IHRvIHRlc3QgdmFyaW91cyBsZW5ndGhzIG9mIFBCUyBhbmQgUlRULCBhcyB0aGVyZSBpcyBubyB1bml2ZXJzYWxseSBvcHRpbWFsIGxlbmd0aCBmb3IgYWxsIGFwcGxpY2F0aW9ucy4gSW5zdGVhZCwgdGhlIGlkZWFsIGxlbmd0aHMgYXJlIGFwcGxpY2F0aW9uIHNwZWNpZmljLiBGb2xsb3dpbmcgdGhpcyBhZHZpY2UsIHdlIGRlc2lnbmVkIHNpeCBkaWZmZXJlbnQgcGVnUk5BIHZhcmlhbnRzIHdpdGggY29tYmluYXRpb25zIG9mIHR3byBkaWZmZXJlbnQgUEJTIGxlbmd0aHMgKDE2IGFuZCAxNyBudWNsZW90aWRlcykgYW5kIHRocmVlIGRpZmZlcmVudCBSVFQgbGVuZ3RocyAoMjcsIDMwLCBhbmQgMzMgbnVjbGVvdGlkZXMpLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBjaG9zZSB0aGUgUEJTIGxlbmd0aHMgb2YgMTYgYW5kIDE3IG51Y2xlb3RpZGVzIGJhc2VkIG9uIGFuIGVhcmxpZXIgcmVjb21tZW5kYXRpb24gZnJvbSBKYW4tUGhpbGxpcHAgR2VyaGFyZCwgd2hvIGVtcGhhc2lzZWQgdGhhdCB0aGUgYW5uZWFsaW5nIHRlbXBlcmF0dXJlIG9mIHRoZSBQQlMgc2hvdWxkIG1hdGNoIHRoZSBlbnZpcm9ubWVudGFsIGNvbmRpdGlvbnMgcmVsZXZhbnQgdG8gdGhlIGludGVuZGVkIGFwcGxpY2F0aW9uLiBJbiBvdXIgY2FzZSwgc2luY2Ugd2UgYXJlIGV4cGxvcmluZyBhIHBvdGVudGlhbCB0aGVyYXBldXRpYyBhcHByb2FjaCwgaXQgaXMgaW1wb3J0YW50IHRoYXQgdGhlIGFubmVhbGluZyB0ZW1wZXJhdHVyZSBvZiB0aGUgUEJTIGlzIGNsb3NlIHRvIHRoZSBib2R5IHRlbXBlcmF0dXJlIG9mIDM3IFx1MDBCMEMsIHdoaWNoIGlzIHRoZSBjYXNlIGZvciB0aGVzZSBsZW5ndGhzLiBUaGUgUlRUIGxlbmd0aHMgd2VyZSBzZWxlY3RlZCBiYXNlZCBvbiBzdWdnZXN0aW9ucyBmcm9tIHRoZSBwZWdGaW5kZXIgc29mdHdhcmUuIEFzIHdpdGggb3VyIHByZXZpb3VzIGluc2lnaHRzLCB3ZSBkZXNpZ25lZCBhbGwgc2l4IHZhcmlhbnRzIGJvdGggd2l0aCBhbmQgd2l0aG91dCBzaWxlbnQgZWRpdHMgZm9yIGEgd2lkZXIgY29tcGFyaXNvbiBvZiB0aGUgc2lsZW50IGVkaXRzLCBtYWtpbmcgaXQgMTIgdmFyaWFudHMgaW4gdG90YWwuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBPbmNlIHdlIGhhZCBkZXNpZ25lZCB0aGVzZSB2YXJpYW50cywgd2Ugb3JkZXJlZCB0aGVtIGluIHRoZWlyIGluZGl2aWR1YWwgY29tcG9uZW50cyBhbmQgY2xvbmVkIHRoZW0gdG9nZXRoZXIgdXNpbmcgR29sZGVuIEdhdGUgY2xvbmluZy4gVGhpcyB3YXMgYSBtdWNoIG1vcmUgcmVzb3VyY2UtZWZmaWNpZW50IGFuZCBzdXN0YWluYWJsZSBvcHRpb24sIGFzIG9ubHkgdGhlIFBCUyBhbmQvb3IgUlRUIGxlbmd0aHMgZGlmZmVyZWQuIFRodXMsIHRoZXJlIHdhcyBhIGNvbnN0YW50IHBlZ1JOQSBwYXJ0LCBjb25zaXN0aW5nIG9mIHNwYWNlciBhbmQgc2NhZmZvbGQsIGFuZCBhIHZhcmlhYmxlIHBhcnQsIGNvbnNpc3Rpbmcgb2YgUEJTLCBSVFQgYW5kIHN0ZW0gbG9vcC4gV2UgdGhlbiBjbG9uZWQgdGhlc2UgdmFyaWFudHMgaW50byB0aGUgcFU2LUdHLXBlZ1JOQS1hY2NlcHRvciBwbGFzbWlkIGFuZCBjb25maXJtZWQgdGhlIGNvcnJlY3Qgb3JpZW50YXRpb24gYW5kIHN1Y2Nlc3NmdWwgY2xvbmluZyBvZiBhbGwgY29uc3RydWN0cyB0aHJvdWdoIHNjcmVlbmluZy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBXZSB0ZXN0ZWQgdGhlc2UgdHdlbHZlIHBlZ1JOQSB2YXJpYW50cyBhZ2FpbnN0IGVhY2ggb3RoZXIgYW5kIHRoZSB0d28gcHJldmlvdXMgdmFyaWFudHMgd2l0aG91dCB0aGUgdHJldm9wcmVRMSBzdGVtIGxvb3AsIGFnYWluIHdpdGhpbiB0aGUgUEUyIHN5c3RlbSwgdXNpbmcgb3VyIHJlcG9ydGVyIHN5c3RlbSwgdG8gYXNzZXNzIHRoZWlyIGVkaXRpbmcgZWZmaWNpZW5jeS4gVGhlIGV4cGVyaW1lbnRhbCBzZXR1cCB3YXMgc2ltaWxhciB0byB0aGUgY3ljbGUgYmVmb3JlLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSB0aGlzIHJvdW5kIG9mIHRlc3RpbmcsIHdlIGZvdW5kIG91dCB0aGF0IG91ciBlbmdpbmVlcmVkIHBlZ1JOQSB2YXJpYW50cyBwZWdSTkEwNCwgMDUsIDA3IGFuZCAwOCBleGhpYml0ZWQgdGhlIGhpZ2hlc3QgbGV2ZWxzIG9mIGVmZmljaWVuY3kgYW5kIHN0YWJpbGl0eSwgd2hpbGUgdGhlIHBlZ1JOQTEyIHNob3dlZCB0aGUgbG93ZXN0IGxldmVsIG9mIGVkaXRpbmcgZWZmaWNpZW5jeS4gVGhlcmVmb3JlLCB3ZSByZWFzb25lZCB0byBnbyB3aXRoIHRoZXNlIGZvdXIgcGVnUk5BIHZhcmlhbnRzIGFzIHdlbGwgYXMgcGVnUk5BMTIgYXMgYSBuZWdhdGl2ZSBleGFtcGxlIGZvciBmb2xsb3ctdXAgZXhwZXJpbWVudHMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJwZWczXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkFwcGxpY2F0aW9uIGx1bmcgZXBpdGhlbGlhbCBjZWxsIGxpbmVzXCIgaWQ9XCJwZWczaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSEVLIGNlbGxzIGFyZSBhbiBlYXN5IHRvIGhhbmRsZSBhbmQgZWFzeSB0byBlZGl0IGNlbGwgbW9kZWwuIEhvd2V2ZXIsIHRoZXkgYXJlIG5vdCBwYXJ0aWN1bGFybHkgc2ltaWxhciB0byB0aGUgY2VsbHMgdGhhdCB3b3VsZCBhY3R1YWxseSBiZSB1c2VmdWwgdGFyZ2V0cyBmb3IgYSBnZW5lIHRoZXJhcHkuIEluIG91ciBjb250ZXh0LCB0d28ga2V5IGRpZmZlcmVuY2VzIGFyZSBlc3BlY2lhbGx5IGdyYXZlOiBIRUsgY2VsbHMsIGFzIG1lbnRpb25lZCBhYm92ZSwgYXJlIGltcGFpcmVkIGluIG1pc21hdGNoIHJlcGFpciwgbWFraW5nIHRoZW0gZWFzaWVyIHRvIGVkaXQsIGFuZCB0aGV5IGRvIG5vdCBuYXR1cmFsbHkgZXhwcmVzcyBDRlRSLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGlzIHRoaXJkIGl0ZXJhdGlvbiwgd2Ugd2FudGVkIHRvIGludmVzdGlnYXRlZSB0aGUgYXBwbGljYWJpbGl0eSBvZiBhIHBlZ1JOQSBvcHRpbWl6ZWQgaW4gYSBtb2RlbCBjbG9zZXIgdG8gdGhlcmFwZXV0aWMgYXBwbGljYXRpb24uIEluIG91ciBjYXNlIHdlIHVzZWQgaW4gQ0ZCRTQxby0gZXBpdGhlbGlhbCBjZWxscyBsaW5lc1tsaW5rXSBob21venlnb3VzIGZvciB0aGUgQ0ZUUiBGNTA4ZGVsIG11dGF0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9yIHRoaXMgdGVzdCwgd2UgdXNlZCBvbmUgb2YgdGhlIHBlZ1JOQXMgKHBlZ1JOQTA0KSB0aGF0IHNob3dlZCB0aGUgaGlnaGVzdCBlZmZpY2llbmNpZXMgaW4gcHJldmlvdXMgb3B0aW1pemF0aW9uIHN0ZXBzLiBTaW5jZSB3ZSBleHBlY3RlZCBvbmx5IGxvdyBlZGl0aW5nIGVmZmljaWVuY2llcyBjb21wYXJlZCB0byBIRUsgY2VsbHMgZm9yIHJlYXNvbnMgbWVudGlvbmVkIGFib3ZlLCB3ZSB1c2VkIHRoZSBQRTZjIHByaW1lIGVkaXRvcltsaW5rXS4gSXQgaGFkIHByb3ZlbiB0byBiZSBtb3N0IGVmZmVjdGl2ZSBpbiBIRUsgY2VsbHMgaW4gb3VyIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlLXN5c3RlbXMnLCAnL2VuZ2luZWVyaW5nJyl9PiBwZSBzeXN0ZW1zIGVuZ2luZWVyaW5nIGN5Y2xlIDwvYT4gYW5kIHNob3VsZCBlbnN1cmUgZGV0ZWN0YWJpbGl0eSBvZiBwb3NzaWJsZSBlZGl0aW5nLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGNvLXRyYW5zZmVjdGVkIHRoZSBDRkJFNDFvLSB3aXRoIG91ciBtb2RpZmllZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdyZXBvcnRlcicsICcvZW5naW5lZXJpbmcnKX0+IHJlcG9ydGVyIHN5c3RlbSA8L2E+LCB0aGUgcGxhc21pZCBleHByZXNzaW5nIHBlZ1JOQTA0IGFzIHdlbGwgYXMgcENNVi1QRTZjLiBBcyBhIHJlc3VsdCwgd2Ugb2JzZXJ2ZWQgZmx1b3Jlc2NlbmNlLCBpbmRpY2F0aW5nIHN1Y2Nlc3NmdWwgZWRpdGluZyBvZiB0aGUgcmVwb3J0ZXIgcGxhc21pZC4gVGhlIG5lZ2F0aXZlIGNvbnRyb2xzIHRyYW5zZmVjdGVkIHdpdGggb25seSBvbmUgb2YgdGhlIHBsYXNtaWRzIGVhY2ggc2hvd2VkIG5vIGZsdW9yZXNjZW5jZSwgcm91dGluZyBvdXQgb3RoZXIgZmFjdG9ycy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoYW5rcyB0byB0aGlzIGV4cGVyaW1lbnQgd2Uga25ldywgdGhhdCBvdXIgcGVnUk5BcyB3b3JrIG5vdCBvbmx5IGluIEhFSywgYnV0IGFsc28gaW4gZXBpdGhlbGlhbCBjZWxscyB0aGF0IGV4cHJlc3MgQ0ZUUiBGNTA4ZGVsLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGVnNFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJBcHBsaWNhdGlvbiB0byBnZW5vbWljIENGVFIgdGFyZ2V0aW5nXCIgaWQ9XCJwZWc0aGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhpcyBmb3VydGggaXRlcmF0aW9uLCB3ZSBhaW1lZCB0byB0cmFuc2ZlciBvdXIgZmluZGluZ3MgaW4gb3B0aW1pemluZyB0aGUgcGVnUk5BcywgZ2VuZXJhdGVkIGluIHByZXZpb3VzIGl0ZXJhdGlvbnMsIHRvIHRoZSBnZW5vbWljIENGVFIgY29udGV4dC4gVG8gdGhpcyBlbmQgd2UgbW9kaWZpZWQgb3VyIHBlZ1JOQXMgdG8gYmUgdXNlZCBpbiB0aGUgQ0ZUUiBnZW5lIGVkaXRpbmcgcHJvY2Vzcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVXNpbmcgdGhlIHBlZ0ZpbmRlciBzb2Z0d2FyZSBhbmQgb3VyIGFjcXVpcmVkIGV4cGVydGlzZSBpbiBjcmVhdGluZyBwZWdSTkFzLCB3ZSBkZXNpZ25lZCB0aGUgbmV3IHZhcmlhbnRzIHNwZWNpZmljYWxseSB0YWlsb3JlZCB0byB0aGUgZ2Vub21pYyBDRlRSIHJlZ2lvbi4gVGhlc2UgcGVnUk5BcyBpbmNsdWRlZCB0aGUgc2FtZSBjb21iaW5hdGlvbnMgb2YgUEJTIGFuZCBSVFQgbGVuZ3RocyBhcyB0aGUgb25lcyB3ZSBjcmVhdGVkIGZvciBvdXIgcmVwb3J0ZXIgcGxhc21pZC4gTm90YWJseSwgc2NhZmZvbGQsIHNwYWNlciwgUEJTIGFuZCBhIHBhcnQgb2YgdGhlIFJUVCBkaWQgbm90IGhhdmUgdG8gYmUgY2hhbmdlZCBmcm9tIHRoZSByZXBvcnRlciB0YXJnZXRpbmcgdG8gZ2Vub21lIHRhcmdldGluZyBwZWdSTkFzLiBPZiB0aGUgY3JlYXRlZCBwZWdSTkFzLCB3ZSB3YW50ZWQgdG8gZm9jdXMgb24gdGVzdGluZyB0aGUgbW9zdCBlZmZlY3RpdmUgZm91ciB2YXJpYW50cyBmb3VuZCBpbiB0aGUgcHJldmlvdXMgY3ljbGVzIGFuZCBhbHNvIGEgdmFyaWFudCBkZXNpZ25hdGVkIGNvbXBhcmF0aXZlbHkgaW5lZmZlY3RpdmUgdG8gdGVzdCBmb3IgY29uc2lzdGVuY3kgb2Ygb3VyIHJlcG9ydGVyIHN5c3RlbS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBuZXdseSBkZXNpZ25lZCBwZWdSTkFzIHdlcmUgb3JkZXJlZCBhcyBzZXBhcmF0ZSBjb21wb25lbnRzLCBpZGVudGljYWwgdG8gdGhlIHByb2Nlc3MgdXNlZCBmb3IgdGhlIHBlZ1JOQXMgdGFyZ2V0aW5nIHRoZSByZXBvcnRlciBzeXN0ZW0uIEVhY2ggUk5BIGhhZCBib3RoIGEgY29uc3RhbnQgYW5kIHZhcmlhYmxlIHJlZ2lvbiwgd2hpY2ggd2UgYXNzZW1ibGVkIHVzaW5nIEdvbGRlbiBHYXRlIGNsb25pbmcuIEFmdGVyd2FyZHMgd2UgY29uZmlybWVkIHRoZSBjb3JyZWN0bmVzcyBhbmQgY29tcGxldGVuZXNzIG9mIHRoZSBjbG9uaW5nIGludG8gdGhlIHBVNi1wZWctR0ctYWNjZXB0b3IgcGxhc21pZCB0aHJvdWdoIGNvbG9ueSBQQ1Igc2NyZWVuaW5nLiBVbmZvcnR1bmF0ZWx5IHRvIHRoaXMgcG9pbnQsIHdlIHdlcmUgbm90IGFibGUgdG8gcHJvZHVjZSBwb3NpdGl2ZSBjbG9uZXMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG5leHQgc3RlcCBpcyB0byB0ZXN0IHRoZSBjb3JyZWN0aW9uIG9mIENGVFIgRjUwOGRlbCB1c2luZyB0aGVzZSBwZWdSTkFzIGluIHRoZSBDRkJFNDFvLSBlcGl0aGVsaWFsIGNlbGxzLiBBZGRpdGlvbmFsbHksIHdlIGFsc28gd2FudCB0byB0ZXN0IHRoZSBwZWdSTkFzIGluIHByaW1hcnkgY2VsbHMgZGVyaXZlZCBmcm9tIGZyaWVuZCBvZiB0aGUgdGVhbSBhbmQgY3lzdGljIGZpYnJvc2lzIHBhdGllbnQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF4Zmlyc3QnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTWF4IDwvYT4sIHRlc3Rpbmcgd2hldGhlciBvdXIgYXBwcm9hY2hlcyBhcmUgYXBwbGljYWJsZSBub3Qgb25seSBpbiBtb2RlbCBzeXN0ZW1zLCBidXQgYWxzbyB3b3JrIGluIHBhdGllbnQgY2VsbHMuIFRvIHZhbGlkYXRlIHRoZSBlZGl0aW5nIGVmZmljaWVuY3kgb2Ygb3VyIGRlc2lnbmVkIHBlZ1JOQXMgd2VyZSBnb2luZyB0byBjby10cmFuc2ZlY3QgYSBwbGFzbWlkIGNhcnJ5aW5nIGFuIGVZRlAgdmFyaWFudCB3aGljaCBpcyBzZW5zaXRpdmUgdG8gY2hsb3JpZGUgYW5kIGlvZGlkZSBpb24gY29uY2VudHJhdGlvbnM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiNFwiIHNjcm9sbElkPVwiZGVzYy00XCIvPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZWdybmFcIiBudW09XCI1XCIgc2Nyb2xsSWQ9XCJkZXNjLTVcIi8+LiBUaGUgaW50ZW5zaXR5IG9mIHRoZSBmbHVvcmVzY2VuY2UgY29ycmVsYXRlcyB3aXRoIHRoZXNlIGlvbiBjb25jZW50cmF0aW9ucywgd2hpY2ggaW4gdHVybiByZWZsZWN0cyB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQ0ZUUiBjaGFubmVsLiBUaGlzIGVuYWJsZXMgdXMgdG8gZXZhbHVhdGUgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiB0aGUgZGlmZmVyZW50IHBlZ1JOQSB2YXJpYW50cyBvbiBhIHBoZW5vdHlwaWMgbGV2ZWwuIEFmdGVyIDcyIGhvdXJzLCB3ZSBhcmUgZ29pbmcgdG8gcGVyZm9ybSBhIGZpbmFsIGFuYWx5c2lzIHVzaW5nIEZBQ1MgdG8gcXVhbnRpZnkgdGhlIHJlc3VsdHMgYW5kIGRldGVybWluZSB0aGUgZWRpdGluZyBlZmZpY2llbmN5IG9mIGVhY2ggcGVnUk5BLiBTZWNvbmRseSwgd2Ugd2FudGVkIHRvIGRldGVjdCB0aGUgZWRpdGluZyBvbiBhIGdlbm9taWMgbGV2ZWwgYnkgZmFjaWxpdGF0aW5nIGEgcVBDUiB3aXRoIGEgcHJpbWVyIHNwZWNpZmljIG9ubHkgdG8gdGhlIGNvcnJlY3RlZCBGNTA4ZGVsIGxvY3VzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2l0aCB0aGlzIGV4cGVyaW1lbnQgd2UgaG9wZSB0byBhY2hpZXZlIHR3byB0aGluZ3M6IEZpcnN0bHksIHdlIHdhbnQgdG8gZXhhbWluZSB3aGV0aGVyIG9wdGltaXphdGlvbnMgb2YgcGVnUk5BcyBkZXNpZ25lZCBmb3Igb3VyIHJlcG9ydGVyIHN5c3RlbSBhY3R1YWxseSB0cmFuc2ZlciB0byB0aGUgZ2Vub21pYyBDRlRSIHRhcmdldGluZy4gU2Vjb25kbHkgYW5kIG1vc3QgaW1wb3J0YW50bHksIHdlIHdhbnQgdG8gZmluZCBvdXQgd2hldGhlciB3ZSBhY3R1YWxseSBjcmVhdGVkIGFuIGVmZmVjdGl2ZSBnZW5lIGVkaXRpbmcgc3RyYXRlZ3kgZm9yIHRoZSBnZW5vbWljIGNvbnRleHQgb2YgQ0ZUUiwgdGhlcmVieSBwcm92aWRpbmcgYSBmb3VuZGF0aW9uIGZvciBhIGZ1dHVyZSBnZW5lIHRoZXJhcHkgd2l0aCBoaWdoIGVmZmljaWVuY3kgYW5kIHByZWNpc2lvbiB3aGVuIHVzZWQgd2l0aCB0aGUgcmlnaHQgcHJpbWUgZWRpdG9yLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGVnNVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJPdXRsb29rXCIgaWQ9XCJwZWc1aGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhpcyBmaW5hbCBpdGVyYXRpb24sIHdlIGZvY3VzIG9uIHRoZSBvdXRsb29rIGZvciBmdXR1cmUgbW9kaWZpY2F0aW9ucyBhbmQgb3B0aW1pemF0aW9ucyBvZiBvdXIgcGVnUk5BIGRlc2lnbi4gVGhlc2UgY29uY2VwdHMgYXJlIG1lYW50IHRvIGZ1cnRoZXIgaW1wcm92ZSBib3RoIHRoZSBzdGFiaWxpdHkgYW5kIGVkaXRpbmcgZWZmaWNpZW5jeSB0aHJvdWdoIGFkZGl0aW9uYWwgcmVzZWFyY2ggYW5kIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBuZXcgZGVzaWduIHN0cmF0ZWdpZXMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFzIHdlIGNvbnRpbnVlZCB0byByZWZpbmUgb3VyIGFwcHJvYWNoLCBmdXJ0aGVyIGxpdGVyYXR1cmUgcmVzZWFyY2ggd2FzIGNvbmR1Y3RlZCwgYW5kIG5ldyBkZXNpZ24gaWRlYXMgY29uc2lkZXJlZC4gVGhlIG92ZXJhcmNoaW5nIGdvYWwgcmVtYWluZWQgdG8gZW5oYW5jZSBib3RoIHRoZSBzdGFiaWxpdHkgYW5kIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiB0aGUgcGVnUk5Bcy4gT25lIGNvbmNlcHQgd2UgYXJlIGFscmVhZHkgZXhwbG9yaW5nIGludm9sdmVzIHRoZSBpbmNvcnBvcmF0aW9uIG9mIDNcdTIwMTkgYW5kIDVcdTIwMTkgVVRScyAoVW50cmFuc2xhdGVkIFJlZ2lvbnMpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlZ3JuYVwiIG51bT1cIjZcIiBzY3JvbGxJZD1cImRlc2MtNlwiLz4uIFRoZXNlIGVsZW1lbnRzLCB0eXBpY2FsbHkgZm91bmQgaW4gbVJOQSwgY291bGQgYmUgYWRkZWQgdG8gdGhlIHBlZ1JOQSB0byBpbmNyZWFzZSBpdHMgc3RhYmlsaXR5LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD4gICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFub3RoZXIgcHJvbWlzaW5nIGlkZWEgaXMgdGhlIHVzZSBvZiBjaXJjdWxhciBSTkEgKGNpcmNSTkEpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlZ3JuYVwiIG51bT1cIjdcIiBzY3JvbGxJZD1cImRlc2MtN1wiLz4sIHdoaWNoIGNvdWxkIHByb3ZpZGUgYWRkaXRpb25hbCBzdGFiaWxpdHkgYnkgbWFpbnRhaW5pbmcgdGhlIGNsb3NlZC1sb29wIHN0cnVjdHVyZSBvZiB0aGUgcGVnUk5BLiBUaGlzIHdvdWxkIHByZXZlbnQgZGVncmFkYXRpb24gYW5kIGluY3JlYXNlIHRoZSBsb25nZXZpdHkgb2YgdGhlIHBlZ1JOQSBpbiB0aGUgY2VsbC4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZGl0aW9uYWxseSwgZnVydGhlciBudWNsZW90aWRlIG1vZGlmaWNhdGlvbnMgY291bGQgYmUgZXhwbG9yZWQsIHN1Y2ggYXMgZXhwZXJpbWVudGluZyB3aXRoIGFsdGVybmF0aXZlIHNpbGVudCBlZGl0cyB0byBzZWUgaWYgdGhpcyBsZWFkcyB0byBpbXByb3ZlZCBlZGl0aW5nIGVmZmljaWVuY3kuIFdlIGFsc28gbnVjbGVvdGlkZSBzdWJzdGl0dXRpb25zIGluIHRoZSBzY2FmZm9sZCByZWdpb24gdG8gZW5oYW5jZSBSTkEtYmluZGluZyBhZmZpbml0eSB0byB0aGUgcHJvdGVpbiBjb21wbGV4IGNvdWxkIGJlIG9mIHVzZS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIGltcGxlbWVudCB0aGVzZSBuZXcgZGVzaWduIGZlYXR1cmVzLCB0aGUgaW5kaXZpZHVhbCBjb21wb25lbnRzLCBzdWNoIGFzIFVUUnMsIHdvdWxkIG5lZWQgdG8gYmUgY2xvbmVkIGludG8gdGhlIGV4aXN0aW5nIHBlZ1JOQXMuIElmIHdlIHB1cnN1ZSBhbHRlcm5hdGl2ZSBzaWxlbnQgZWRpdHMsIHRoZSBwZWdSTkEgc2VxdWVuY2VzIHdvdWxkIG5lZWQgdG8gYmUgcmVkZXNpZ25lZCwgb3JkZXJlZCwgYW5kIHJlLWNsb25lZC4gVGhlIGNpcmN1bGFyIFJOQSB3b3VsZCBhbHNvIHJlcXVpcmUgYSBuZXcgYXNzZW1ibHkgbWV0aG9kIHRvIGFjaGlldmUgdGhlIGRlc2lyZWQgc3RydWN0dXJlLiBIb3dldmVyLCB0aGUgZnVuZGFtZW50YWwgd29ya2Zsb3cgd291bGQgcmVtYWluIGNvbnNpc3RlbnQgd2l0aCB0aGUgcHJvY2Vzc2VzIHVzZWQgaW4gcHJldmlvdXMgaXRlcmF0aW9ucy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUbyBtYWludGFpbiBjb25zaXN0ZW5jeSBhbmQgY29tcGFyYWJpbGl0eSwgdGhlIHNhbWUgdGVzdGluZyBwcm90b2NvbHMgdXNlZCBmb3IgdGhlIHByZXZpb3VzIHBlZ1JOQSBzY3JlZW5pbmcgd291bGQgYmUgYXBwbGllZC4gVGhpcyBpbmNsdWRlcyBjby10cmFuc2ZlY3Rpb24gaW4gdGhlIGFwcHJvcHJpYXRlIGNlbGwgbGluZXMsIGZsdW9yZXNjZW5jZS1iYXNlZCByZWFkb3V0cyBmb3IgZWRpdGluZyBlZmZpY2llbmN5LCBhbmQgRkFDUyBhbmFseXNpcy4gQnkga2VlcGluZyB0aGUgZXhwZXJpbWVudGFsIGNvbmRpdGlvbnMgdGhlIHNhbWUsIHdlIGNhbiBlbnN1cmUgdGhhdCB0aGUgZWZmZWN0cyBvZiB0aGUgbmV3IG1vZGlmaWNhdGlvbnMgY2FuIGJlIGFjY3VyYXRlbHkgYXNzZXNzZWQgYW5kIGNvbXBhcmVkIHRvIHByZXZpb3VzIHJlc3VsdHMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGcm9tIHRoZXNlIHRlc3RzLCB3ZSB3b3VsZCBhaW0gdG8gZGVyaXZlIG5ldyBpbnNpZ2h0cyBub3Qgb25seSBzcGVjaWZpYyB0byBvdXIgcGFydGljdWxhciBjb250ZXh0IGJ1dCBhbHNvIGZvciBwZWdSTkEgZGVzaWduIGFzIGEgd2hvbGUuIFRoZXNlIGZ1dHVyZSBtb2RpZmljYXRpb25zIGNvdWxkIGFsc28geWllbGQgdmFsdWFibGUgaW5mb3JtYXRpb24gb24gaG93IHRvIGZ1cnRoZXIgaW1wcm92ZSB0aGUgb3ZlcmFsbCBlZmZpY2llbmN5IGFuZCBzdGFiaWxpdHkgb2YgcGVnUk5BcywgY29udHJpYnV0aW5nIHRvIHRoZSBicm9hZGVyIGZpZWxkIG9mIGdlbmUgZWRpdGluZy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJyZWZlcmVuY2VzXCI+XG4gICAgICAgICAgICAgICAgICAgICA8RW5nUGVnc291cmNlcy8+XG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgXCI+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsZWZ0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiUHJldmlvdXNcIiBvcGVuPVwicGUtc3lzdGVtc1wiIHNjcm9sbFRvSWQ9XCJwZS1zeXN0ZW1zLWhlYWRlclwiLz48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgYnV0dG9uLWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicmlnaHRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJOZXh0XCIgb3Blbj1cIm5pY2thc2VcIiBzY3JvbGxUb0lkPVwibmlja2FzZS1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVuZ2lubmVlcmluZ3RhYlwiIGlkPVwidGFiLW5pY2thc2VcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICA8c2VjdGlvbiBpZD1cIk5pY2thc2Ugc2VjXCIgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cIm5pY2thc2UtaGVhZGVyXCIgdGV4dD1cIkFsdGVybmF0aXZlIE5pY2thc2VzXCI+PC9IMj5cbiAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBDYXM5IG5pY2thc2UgaXMgdGhlIGtleSBjb21wb25lbnQgb2YgbW9zdCBjdXJyZW50IHByaW1lIGVkaXRpbmcgc3lzdGVtLiBJdCBpcyBuZWVkZWQgZm9yIGxvY2FsaXppbmcgdGhlIGdlbm9taWMgdGFyZ2V0IGFuZCBjdXR0aW5nIGEgc2luZ2xlIEROQSBzdHJhbmQuIFRoZSBjb21wbGV4J3Mgc2l6ZSBhbmQgUk5BIHN0YWJpbGl0eSBpc3N1ZXMgbGltaXQgaXRzIGVmZmljaWVuY3kuIFRvIG92ZXJjb21lIHRoZXNlIGNoYWxsZW5nZXMsIHdlIGV4cGxvcmVkIHNtYWxsZXIgZW5kb251Y2xlYXNlcyBsaWtlIENhc1ggYW5kIEZhbnpvciwgd2hpY2ggbm90IG9ubHkgcmVkdWNlIHRoZSBzaXplIG9mIHRoZSBjb21wbGV4IGJ1dCBhbHNvIG9mZmVyIHN0cnVjdHVyYWwgYWR2YW50YWdlcyBzdWNoIGFzIGEgcmV2ZXJzZWQgZ3VpZGUgUk5BIGFyY2hpdGVjdHVyZS4gV2UgdGhlb3JpemUgdGhhdCB0aGlzIHVuaXF1ZSBjb25maWd1cmF0aW9uIHByb3RlY3RzIHRoZSBSTkEgZnJvbSBkZWdyYWRhdGlvbiBhbmQgaW1wcm92ZXMgZWRpdGluZyBwcmVjaXNpb24gYnkgcmVkdWNpbmcgdGhlIHJpc2sgb2YgdW53YW50ZWQgZ2Vub21pYyBhbHRlcmF0aW9ucyBieSBzY2FmZm9sZCByZWFkdGhyb3VnaCwgbWFraW5nIENhc1ggYW5kIFNwdUZ6MSBwcm9taXNpbmcgYWx0ZXJuYXRpdmVzIHRvIENhczktYmFzZWQgc3lzdGVtcyBmb3IgcHJpbWUgZWRpdGluZy48L3A+XG4gICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Zhbnpvci9tb3ZpZTQtZXpnaWYtY29tLXZpZGVvLXRvLWdpZi1jb252ZXJ0ZXIuZ2lmXCI+PC9pbWc+XG4gICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Zhbnpvci9tb3ZpZTUtZXpnaWYtY29tLXZpZGVvLXRvLWdpZi1jb252ZXJ0ZXItMi5naWZcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cIm5pYzFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiU3B1RnoxIFppbmsgRmluZ2VyIE11dGF0aW9uIFwiIGlkPVwibmljMWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gb3VyIHF1ZXN0IHRvIGlkZW50aWZ5IHNtYWxsZXIgZW5kb251Y2xlYXNlcyBzdWl0YWJsZSBmb3IgY3JlYXRpbmcgbmlja2FzZXMsIHdlIGZvY3VzZWQgb24gYSBuZXdseSBjaGFyYWN0ZXJpemVkIGZhbWlseSBvZiBldWthcnlvdGljIGVuZG9udWNsZWFzZXMga25vd24gYXMgRmFuem9yIHByb3RlaW5zIGZpcnN0IGRlc2NyaWJlZCBpbiBKdW5lIDIwMjM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4sIHdpdGggU3B1RnoxIChGaWcuIDEpIGJlaW5nIGEgc3RhbmRvdXQgY2FuZGlkYXRlIGR1ZSB0byBpdHMgc21hbGxlciBzaXplIGNvbXBhcmVkIHRvIENhczkgKFNwdUZ6MSBjb25zaXN0cyBvZiA2MzggYW1pbm8gYWNpZHM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4sIHdoZXJlYXMgQ2FzOSBoYXMgYSBzaXplIG9mIDEzNjggYW1pbm8gYWNpZHM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjJcIiBzY3JvbGxJZD1cImRlc2MtMlwiLz4pLiBXZSBzZWxlY3RlZCBTcHVGejEgbm90IG9ubHkgYmVjYXVzZSBvZiBpdHMgc21hbGxlciBzaXplLCBidXQgYWxzbyBkdWUgdG8gc3RydWN0dXJhbCBhZHZhbnRhZ2VzLCBzdWNoIGFzIHRoZSByZXZlcnNlZCBwb3NpdGlvbmluZyBvZiB0aGUgc3BhY2VyLCB3aGljaCBwcm92aWRlcyBiZXR0ZXIgcHJvdGVjdGlvbiBmcm9tIFJOYXNlIGRlZ3JhZGF0aW9uIGFuZCBpbXByb3ZlcyBlZGl0aW5nIHByZWNpc2lvbi5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIENhczkgZW5kb251Y2xlYXNlIGNvbnRhaW5zIHR3byBhY3RpdmUgZG9tYWlucywgZWFjaCByZXNwb25zaWJsZSBmb3IgY3V0dGluZyBvbmUgb2YgdGhlIHR3byBETkEgc3RyYW5kcy4gQ2FzOSB1c2VzIHRoZSBSdXZDIGFuZCBITkggZG9tYWlucywgd2l0aCBlYWNoIGRvbWFpbiBtYWtpbmcgYSBjdXQgb24gYSBkaWZmZXJlbnQgc3RyYW5kIG9mIHRoZSB0YXJnZXQgRE5BPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCIzXCIgc2Nyb2xsSWQ9XCJkZXNjLTNcIi8+LiBUbyBjcmVhdGUgYSBuaWNrYXNlIGZyb20gQ2FzOSwgc2NpZW50aXN0cyBkZWFjdGl2YXRlIG9uZSBvZiB0aGVzZSBhY3RpdmUgZG9tYWlucywgdHlwaWNhbGx5IHRoZSBITkggZG9tYWluLCBzbyB0aGF0IHRoZSBlbnp5bWUgb25seSBjdXRzIG9uZSBzdHJhbmQgaW5zdGVhZCBvZiBib3RoLCBwcm9kdWNpbmcgYSBzaW5nbGUtc3RyYW5kIGJyZWFrIHJhdGhlciB0aGFuIGEgZG91YmxlLXN0cmFuZCBicmVhazxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiNFwiIHNjcm9sbElkPVwiZGVzYy00XCIvPi5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFzZWQgb24gdGhlIGZ1bmN0aW9uIG9mIHRoaXMgcHJvdG90eXBpY2FsIENhczkgbmlja2FzZSwgd2UgYXNzdW1lZCB0aGF0IFNwdUZ6MSB3b3VsZCBvcGVyYXRlIHNpbWlsYXJseSwgd2l0aCB0d28gYWN0aXZlIGNlbnRlcnNcdTIwMTRSdXZDIGFuZCBUTkJcdTIwMTRlYWNoIGN1dHRpbmcgb25lIEROQSBzdHJhbmQuIEZvbGxvd2luZyB0aGlzIGxvZ2ljLCB3ZSBoeXBvdGhlc2l6ZWQgdGhhdCBieSBkZWFjdGl2YXRpbmcgdGhlIFROQiBkb21haW4sIHdoaWNoIGNvbnRhaW5zIGEgemluYyBmaW5nZXIgbW90aWYgKEZpZy4gMikgY3J1Y2lhbCBmb3IgRE5BIGNvb3JkaW5hdGlvbiwgd2UgY291bGQgY29udmVydCBTcHVGejEgaW50byBhIG5pY2thc2UuIFRvIHRlc3QgdGhpcywgd2UgYWltZWQgdG8gcmVwbGFjZSB0aGUgY3lzdGVpbmUgcmVzaWR1ZXMgaW52b2x2ZWQgaW4gemluYyBpb24gY29vcmRpbmF0aW9uIHdpdGhpbiB0aGUgVE5CIGRvbWFpbiB3aXRoIGFsYW5pbmUsIHRoZXJlYnkgaW1wYWlyaW5nIGl0cyBETkEtYmluZGluZyBhYmlsaXR5IGFuZCBwcm9kdWNpbmcgYSBTcHVGejEgbmlja2FzZSB0aGF0IGN1dHMgb25seSBvbmUgc3RyYW5kLiBBdCB0aGF0IHRpbWUsIHdlIGJlbGlldmVkIGJvdGggZG9tYWlucyBpbiBTcHVGejEgd2VyZSBkaXJlY3RseSByZXNwb25zaWJsZSBmb3IgRE5BIGNsZWF2YWdlLCBhbmQgb3VyIHN0cmF0ZWd5IHdhcyBiYXNlZCBvbiB0aGlzIGFzc3VtcHRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBVc2luZyB0aGUgcHJvdGVpbiB2aXN1YWxpemF0aW9uIHNvZnR3YXJlIENoaW1lcmFYLCB3ZSBjYXJlZnVsbHkgZXhhbWluZWQgdGhlIHN0cnVjdHVyZSBvZiBTcHVGejEgdG8gaWRlbnRpZnkgdGhlIGtleSBjeXN0ZWluZSByZXNpZHVlcyByZXNwb25zaWJsZSBmb3IgY29vcmRpbmF0aW5nIHRoZSB6aW5jIGlvbi4gV2l0aCB0aGlzIGluc2lnaHQsIHdlIGRlc2lnbmVkIG91ciBuaWNrYXNlIGNhbmRpZGF0ZXMgYnkgbW9kaWZ5aW5nIHRoZSB3aWxkLXR5cGUgc2VxdWVuY2UsIHNwZWNpZmljYWxseSBzdWJzdGl0dXRpbmcgdGhlc2UgY3lzdGVpbmVzIHdpdGggYWxhbmluZSwgdG8gZGlzcnVwdCB0aGUgemluYyBpb24gY29vcmRpbmF0aW9uIGFuZCBwb3RlbnRpYWxseSBhbHRlciB0aGUgcHJvdGVpbidzIGZ1bmN0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGaXJzdCwgd2UgZGlzY3Vzc2VkIG91ciBhcHByb2FjaCB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2hhbW1lcmthaScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBLYWkgU2NoXHUwMEZDbGtlIDwvYT4sIGEgUGhEIHN0dWRlbnQgZnJvbSB0aGUgSGFtbWVyIEdyb3VwIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3aGljaCBzcGVjaWFsaXplcyBpbiBlbnp5bWUgZW5naW5lZXJpbmcuIEhlIGNvbmZpcm1lZCB0aGF0IG91ciBwbGFuIHRvIGZvY3VzIG9uIHNwZWNpZmljIG11dGF0aW9uIGNhbmRpZGF0ZXMgd2FzIGFwcHJvcHJpYXRlIGdpdmVuIHRoZSBjb25zdHJhaW50cyBvZiBvdXIgcHJvamVjdC4gSGUgZW1waGFzaXplZCB0aGF0IHdlIGxhY2tlZCB0aGUgdGltZSBhbmQgcmVzb3VyY2VzIHRvIGNvbmR1Y3QgbGFyZ2Utc2NhbGUsIHF1YW50aXRhdGl2ZSBzdHVkaWVzIG9uIGEgd2lkZSByYW5nZSBvZiBtdXRhdGlvbnMuIEluc3RlYWQsIGhlIHN1cHBvcnRlZCBvdXIgZGVjaXNpb24gdG8gdGFyZ2V0IHNwZWNpZmljIGNhbmRpZGF0ZXMgdGhhdCBjb3VsZCBiZSB0aG9yb3VnaGx5IHRlc3RlZCB3aXRoaW4gdGhlIHNjb3BlIG9mIG91ciBwcm9qZWN0LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIHdlIGNhcmVmdWxseSBjb25zaWRlcmVkIHRoZSBwb3RlbnRpYWwgZWZmZWN0aXZlbmVzcyBvZiBvdXIgbW9kaWZpZWQgU3B1RnoxIG5pY2thc2UgaW4gYSBQcmltZSBFZGl0aW5nIHNjZW5hcmlvLCBzcGVjaWZpY2FsbHkgdGFyZ2V0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIGN5c3RpYyBmaWJyb3Npcy4gRHVyaW5nIHRoaXMgZGV0YWlsZWQgYW5hbHlzaXMsIHdlIGlkZW50aWZpZWQgYSBjcml0aWNhbCBjaGFsbGVuZ2U6IHRoZSBUQU0gc2VxdWVuY2UgcmVxdWlyZWQgZm9yIFNwdUZ6MSBiaW5kaW5nIHdhcyBsb2NhdGVkIHRvbyBmYXIgZnJvbSB0aGUgdGFyZ2V0IG11dGF0aW9uIHNpdGUuIFRoaXMgZGlzdGFuY2UgY291bGQgbGltaXQgdGhlIGVmZmljaWVuY3kgb2YgdGhlIFByaW1lIEVkaXRvciwgcmFpc2luZyBjb25jZXJucyBhYm91dCBpdHMgb3ZlcmFsbCBlZmZlY3RpdmVuZXNzIGZvciB0aGlzIHBhcnRpY3VsYXIgbXV0YXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SW5mb0JveCB0aXRsZT1cIlRBTSBzZXF1ZW5jZXNcIiBpZD1cImN1cnJlbnQtcGUtc3lzdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgVEFNIHNlcXVlbmNlIGlzIHRoZSBlcXVpdmFsZW50IHRvIGEgUEFNIHNlcXVlbmNlIGZvciBPTUVHQSBzeXN0ZW1zLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBIDxiPlRBTSBzZXF1ZW5jZTwvYj4gKFRhcmdldGVkIEFjdGl2aXR5IE1vZGlmaWNhdGlvbiBzZXF1ZW5jZSkgaXMgYSBzaG9ydCBETkEgc2VxdWVuY2UsIHR5cGljYWxseSBvbmx5IGEgZmV3IGJhc2VzIGxvbmcsIHRoYXQgcHJvdmlkZXMgYSBiaW5kaW5nIHNpdGUgZm9yIHRoZSBuaWNrYXNlIHdpdGhpbiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4LiBUaGlzIHNlcXVlbmNlIGlzIGNydWNpYWwgYmVjYXVzZSBpdCBhbGxvd3MgdGhlIG5pY2thc2UgdG8gYmluZCB0byB0aGUgRE5BIGFuZCBtYWtlIGEgcHJlY2lzZSBzaW5nbGUtc3RyYW5kIGN1dC4gRm9yIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggdG8gY29ycmVjdCBhIG11dGF0aW9uIGF0IGEgc3BlY2lmaWMgbG9jYXRpb24gZ3VpZGVkIGJ5IHRoZSBwZWdSTkEsIGEgVEFNIHNlcXVlbmNlIG11c3QgYmUgbG9jYXRlZCBuZWFyIHRoYXQgdGFyZ2V0IHNpdGUuIFdoaWxlIHRoZSBwZWdSTkEgZGlyZWN0cyB0aGUgZWRpdGluZyBtYWNoaW5lcnkgdG8gdGhlIHJlZ2lvbiB3aGVyZSB0aGUgY29ycmVjdGlvbiB3aWxsIG9jY3VyLCB0aGUgVEFNIHNlcXVlbmNlIGVuYWJsZXMgdGhlIG5pY2thc2UgdG8gcGh5c2ljYWxseSBpbnRlcmFjdCB3aXRoIHRoZSBETkEgYW5kIGluaXRpYXRlIHRoZSBjdXQuIFRoZXJlZm9yZSwgYm90aCB0aGUgcGVnUk5BIGFuZCB0aGUgVEFNIHNlcXVlbmNlIGFyZSBlc3NlbnRpYWwgZm9yIGVmZmljaWVudCBhbmQgYWNjdXJhdGUgZWRpdGluZzogdGhlIHBlZ1JOQSBzcGVjaWZpZXMgdGhlIHNpdGUgb2YgdGhlIGNvcnJlY3Rpb24sIGFuZCB0aGUgVEFNIHNlcXVlbmNlIGZhY2lsaXRhdGVzIHRoZSBuaWNrYXNlJ3MgYmluZGluZyBhbmQgYWN0aW9uLiBGb3IgaW5zdGFuY2UsIFNwdUZ6MSByZWNvZ25pemVzIHRoZSBUQU0gc2VxdWVuY2UgPGI+NSctQ0FUQS0zJzwvYj4sIGFuZCBDYXNYIGJpbmRzIHRvIDxiPjUnLVRUQ04tMyc8L2I+LiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGV0YWlscz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5mb0JveD4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJ0ZXh0XCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICBUaHJvdWdoIHRoaXMgaXRlcmF0aW9uLCB3ZSBsZWFybmVkIHRoYXQgdGFyZ2V0ZWQgbXV0YWdlbmVzaXMgaXMgYSBwcm9taXNpbmcgYXBwcm9hY2ggZm9yIGdlbmVyYXRpbmcgb3VyIG11dGFudCBuaWNrYXNlcy4gV2UgYWxzbyByZWNvZ25pemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNhcmVmdWxseSBzZWxlY3RpbmcgdGhlIGFwcHJvcHJpYXRlIFBBTSBvciBUQU0gc2VxdWVuY2VzIGZvciBvdXIgY2hvc2VuIGVuZG9udWNsZWFzZXMuIFNwZWNpZmljYWxseSwgd2UgcmVhbGl6ZWQgdGhhdCB0aGUgVEFNIHNlcXVlbmNlIGZvciBTcHVGejEgbWlnaHQgYmUgdG9vIGZhciBmcm9tIG91ciB0YXJnZXQgbXV0YXRpb24sIHByb21wdGluZyB1cyB0byBleHBsb3JlIG90aGVyIGVuZG9udWNsZWFzZXMgd2l0aGluIHRoZSBGYW56b3IgZmFtaWx5IHRoYXQgY291bGQgc2VydmUgYXMgYmV0dGVyIGNhbmRpZGF0ZXMgZm9yIG5pY2thc2UgZGV2ZWxvcG1lbnQuIEFkZGl0aW9uYWxseSwgdGhpcyBwcm9jZXNzIGhpZ2hsaWdodGVkIHRoZSBjcml0aWNhbCByb2xlIG9mIGV4cGVydCBjb25zdWx0YXRpb24gaW4gcmVmaW5pbmcgb3VyIHN0cmF0ZWdpZXMgYW5kIGVuc3VyaW5nIHRoZSBmZWFzaWJpbGl0eSBvZiBvdXIgYXBwcm9hY2guXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9zcHVmei13dC0zZC1tb2RlbC53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgMTo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTY2hlbWF0aWMgaWxsdXN0cmF0aW9uIG9mIFNwdUZ6MSAoUERCIGNvZGU6IDhHS0gpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LXd0LTNkLW1vZGVsLXppbmMtZmluZ2VyLndlYnBcIiBzdHlsZT17e2hlaWdodDpcIjcwJVwiLCB3aWR0aDpcIjgwJVwifX0vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgMjo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZSB1cCBvZiB0aGUgemluYyBmaW5nZXIgbW90aWYgb2YgU3B1RnoxIChQREIgY29kZTogOEdLSCkgdmlzdWFsaXplZCBpbiBDaGltZXJhWCAtIGluIHRoZSBtaWRkbGUgb2YgdGhlIGltYWdlIHRoZSB6aW5jIGlvbiBvZiB0aGUgbW90aWYgY2FuIGJlIHNlZW4sIHdoaWNoIGlzIGNvb3JkaW5hdGVkIGJ5IDQgc3Vycm91bmRpbmcgY3lzdGVpbmUgcmVzaWR1ZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cIm5pYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiRnVzaW9uIFByb3RlaW4gZnJvbSBHdEZ6MSAmIFNwdUZ6MVwiIGlkPVwibmljMmhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIG91ciBvbmdvaW5nIGV4cGxvcmF0aW9uIG9mIEZhbnpvciBwcm90ZWlucywgd2UgaWRlbnRpZmllZCBhbm90aGVyIHBvdGVudGlhbCBjYW5kaWRhdGUsIEd0RnoxLCB3aGljaCBoYWQgYSBzdWl0YWJsZSBUQU0gc2VxdWVuY2UgZm9yIG91ciB0YXJnZXQgYXBwbGljYXRpb24gb2YgY29ycmVjdGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBjeXN0aWMgZmlicm9zaXMuIEhvd2V2ZXIsIEd0RnoxIHNob3dlZCBsb3cgY3V0dGluZyBlZmZpY2llbmN5IGluIHRoZSB0ZXN0cyByZXBvcnRlZCBpbiB0aGUgbGl0ZXJhdHVyZTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPi4gVG8gYWRkcmVzcyB0aGlzLCB3ZSBkZXZpc2VkIGEgc3RyYXRlZ3kgdG8gY29tYmluZSB0aGUgZmF2b3JhYmxlIFRBTS1iaW5kaW5nIHByb3BlcnRpZXMgb2YgR3RGejEgd2l0aCB0aGUgaGlnaGVyIGN1dHRpbmcgZWZmaWNpZW5jeSBvZiBTcHVGejEuIFNwZWNpZmljYWxseSwgd2UgcGxhbm5lZCB0byBlbmdpbmVlciBhIGZ1c2lvbiBwcm90ZWluIGJ5IHJlcGxhY2luZyB0aGUgVEFNLWJpbmRpbmcgZG9tYWluIG9mIFNwdUZ6MSB3aXRoIHRoYXQgb2YgR3RGejEuIFRoaXMgYXBwcm9hY2ggYWltcyB0byBjcmVhdGUgYW4gZW5kb251Y2xlYXNlIHRoYXQgcmV0YWlucyB0aGUgc3Ryb25nIFRBTS1iaW5kaW5nIGFiaWxpdHkgb2YgR3RGejEgd2hpbGUgdXRpbGl6aW5nIHRoZSByb2J1c3QgY3V0dGluZyBlZmZpY2llbmN5IG9mIFNwdUZ6MSwgb3B0aW1pemluZyBpdCBmb3Igb3VyIFByaW1lIEVkaXRpbmcgYXBwbGljYXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEdpdmVuIHRoYXQgd2Ugd2VyZSBzd2FwcGluZyBlbnRpcmUgZG9tYWlucyByYXRoZXIgdGhhbiBqdXN0IHNpbmdsZSBhbWlubyBhY2lkcywgd2UgcmVhbGl6ZWQgdGhhdCB0aGUgZnVzaW9uIHByb3RlaW4gbWlnaHQgbm90IHJldGFpbiB0aGUgaWRlYWwgVEFNLWJpbmRpbmcgZWZmaWNpZW5jeSBvciBjdXR0aW5nIGVmZmljaWVuY3kgb2YgdGhlIG9yaWdpbmFsIHByb3RlaW5zLiBPdXIgc3RyYXRlZ3kgd2FzIHRvIGNyZWF0ZSBhIGZ1c2lvbiBwcm90ZWluIHRoYXQgY291bGQgYmluZCB0byB0aGUgVEFNIHNpdGUgYW5kIHBlcmZvcm0gRE5BIGN1dHRpbmcgdG8gYSBjZXJ0YWluIGV4dGVudCwgYWxiZWl0IHdlYWtseS4gV2UgcGxhbm5lZCB0byB1c2UgZGlyZWN0ZWQgZXZvbHV0aW9uIHRlY2huaXF1ZXMsIHN1Y2ggYXMgUGhhZ2UgQXNzaXN0ZWQgQ29udGludW91cyBFdm9sdXRpb24gKFBBQ0UpLCB0byBlbmhhbmNlIHRoZXNlIGZ1bmN0aW9uYWxpdGllcyBvdmVyIHRpbWUuIFRoaXMgYXBwcm9hY2ggcmVsaWVzIG9uIGhhdmluZyBhIHN0YXJ0aW5nIHBvaW50IHdpdGggc29tZSBkZWdyZWUgb2YgdGhlIGRlc2lyZWQgYWN0aXZpdHksIHdoaWNoIGNhbiB0aGVuIGJlIGluY3JlbWVudGFsbHkgaW1wcm92ZWQgdGhyb3VnaCBldm9sdXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgYnVpbGQgcGhhc2UgaW52b2x2ZWQgZGVzaWduaW5nIHRoaXMgZnVzaW9uIHByb3RlaW4gYnkgaW50ZWdyYXRpbmcgdGhlIFRBTS1iaW5kaW5nIHJlZ2lvbiBmcm9tIEd0RnoxIGludG8gdGhlIFNwdUZ6MSBwcm90ZWluIHN0cnVjdHVyZS4gV2UgZW5naW5lZXJlZCB0aGUgc2VxdWVuY2UgdG8gaW5jbHVkZSB0aGlzIGh5YnJpZCBjb25maWd1cmF0aW9uLCBpbnRlbmRpbmcgdG8gdGVzdCBpdHMgZnVuY3Rpb25hbGl0eSBhcyBhIG5pY2thc2UgYWZ0ZXIgaW50cm9kdWNpbmcgdGhlIHppbmMgZmluZ2VyIG11dGF0aW9uLCB3aGljaCB3ZSBoYWQgaHlwb3RoZXNpemVkIHdvdWxkIGluYWN0aXZhdGUgb25lIG9mIHRoZSBETkEtY3V0dGluZyBkb21haW5zLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIHZhbGlkYXRlIG91ciBhcHByb2FjaCwgd2UgY29uZHVjdGVkIHR3byBrZXkgaW50ZXJ2aWV3cy4gRmlyc3QsIHdlIGNvbnN1bHRlZCB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2hhbW1lcicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBQcm9mLiBEci4gSGFtbWVyIDwvYT4gZnJvbSBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2hvIGhpZ2hsaWdodGVkIHRoZSBwb3NzaWJpbGl0eSB0aGF0IHRoZSB6aW5jIGZpbmdlciBkb21haW4gbWlnaHQgYmUgc3RydWN0dXJhbGx5IHNpZ25pZmljYW50IGFuZCBjYXV0aW9uZWQgdGhhdCBtdXRhdGluZyBpdCBjb3VsZCBkZXN0YWJpbGl6ZSB0aGUgcHJvdGVpbi4gSGUgcmVjb21tZW5kZWQgdGhhdCB3ZSBleHBsb3JlIHdoZXRoZXIgdGhlcmUgd2VyZSBhbnkga25vd24gZW56eW1lcyB3aXRoIHNpbWlsYXIgbWVjaGFuaXNtcyB3aGVyZSBhbmFsb2dvdXMgbXV0YXRpb25zIGhhZCBzdWNjZXNzZnVsbHkgY29udmVydGVkIGVuZG9udWNsZWFzZXMgaW50byBuaWNrYXNlcy4gVGhpcyBhcHByb2FjaCwgaGUgc3VnZ2VzdGVkLCBtaWdodCBvZmZlciBhIG1vcmUgcmVsaWFibGUgcGF0aHdheS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV4dCwgd2Ugc3Bva2Ugd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdzdmVuamEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gU3ZlbmphIEZpbmtlIDwvYT4sIGEgUG9zdGRvY3RvcmFsIEZlbGxvdyBhdCB0aGUgSGFydmFyZCBJbnN0aXR1dGUgYW5kIGFuIGV4cGVydCBpbiBkaXJlY3RlZCBlbnp5bWUgZXZvbHV0aW9uLCBpbmNsdWRpbmcgUEFDRS4gV2UgcmVhY2hlZCBvdXQgdG8gaGVyIHNwZWNpZmljYWxseSBiZWNhdXNlIHdlIGFudGljaXBhdGVkIHRoYXQgb3VyIGZ1c2lvbiBwcm90ZWluIG1pZ2h0IHJlcXVpcmUgb3B0aW1pemF0aW9uIHRvIGFjaGlldmUgc3Ryb25nIFRBTS1iaW5kaW5nIGFuZCBjdXR0aW5nIGVmZmljaWVuY3kuIFN2ZW5qYSBpbmZvcm1lZCB1cyB0aGF0IHdoaWxlIFBBQ0UgY291bGQgdGhlb3JldGljYWxseSBvcHRpbWl6ZSBvdXIgZnVzaW9uIHByb3RlaW4sIHRoZSBwcm9jZXNzIHdhcyB0b28gY29tcGxleCBhbmQgdGltZS1jb25zdW1pbmcgZm9yIHRoZSBzY29wZSBvZiBvdXIgcHJvamVjdC4gQXMgYSByZXN1bHQsIHdlIGRlY2lkZWQgdG8gcmVjb25zaWRlciB0aGlzIG1ldGhvZCBhbmQgbG9vayBmb3Igc2ltcGxlciwgbW9yZSBmZWFzaWJsZSBhbHRlcm5hdGl2ZXMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGcm9tIHRoaXMgaXRlcmF0aW9uLCB3ZSBsZWFybmVkIHNldmVyYWwgaW1wb3J0YW50IGxlc3NvbnMuIEZpcnN0LCB3ZSBkZWNpZGVkIHRvIGFiYW5kb24gdGhlIGZ1c2lvbiBwcm90ZWluIGFwcHJvYWNoLiBGZWVkYmFjayBmcm9tIFN2ZW5qYVx1MjAxOXMgaW50ZXJ2aWV3IGhpZ2hsaWdodGVkIHRoYXQgdGhpcyBzdHJhdGVneSB3YXMgdG9vIGNvbXBsZXgsIHRpbWUtY29uc3VtaW5nLCBhbmQgaW52b2x2ZWQgc2lnbmlmaWNhbnQgdW5jZXJ0YWludHkgcmVnYXJkaW5nIGl0cyBlZmZlY3RpdmVuZXNzLiBHaXZlbiB0aGUgbG9uZyB0ZXN0aW5nIHRpbWVzIGFuZCB0aGUgaW5oZXJlbnQgcmlza3MsIHdlIGNvbmNsdWRlZCB0aGF0IHRoaXMgYXBwcm9hY2ggd2FzIG5vdCB2aWFibGUgd2l0aGluIG91ciBwcm9qZWN0XHUyMDE5cyBjb25zdHJhaW50cy4gSW5pdGlhbGx5LCB3ZSBjb25zaWRlcmVkIG1vdmluZyBhd2F5IGZyb20gU3B1RnoxIGR1ZSB0byB0aGUgVEFNIHNlcXVlbmNlIGJlaW5nIHRvbyBmYXIgZnJvbSB0aGUgXHUwMzk0RjUwOCBtdXRhdGlvbi4gSG93ZXZlciwgd2l0aCBvbmdvaW5nIGltcHJvdmVtZW50cyBpbiByZXZlcnNlIHRyYW5zY3JpcHRhc2VzIHdpdGhpbiBQcmltZSBFZGl0aW5nIHN5c3RlbXMsIHdoaWNoIGFsbG93IGZvciBncmVhdGVyIGRpc3RhbmNlcyBiZXR3ZWVuIHRoZSBtdXRhdGlvbiBzaXRlIGFuZCB0aGUgVEFNIHNlcXVlbmNlLCB3ZSByZWZvY3VzZWQgb3VyIGVmZm9ydHMgb24gU3B1RnoxLCBjb25zaWRlcmluZyBpdCBhIHZpYWJsZSBjYW5kaWRhdGUgZm9yIGZ1cnRoZXIgZGV2ZWxvcG1lbnQuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlY29uZGx5LCB3ZSByZWFsaXplZCB0aGUgaW1wb3J0YW5jZSBvZiB2ZXJpZnlpbmcgd2hldGhlciB0aGUgemluYyBmaW5nZXIgbXV0YXRpb24gd2UgcHJvcG9zZWQgaXMgc3RydWN0dXJhbGx5IGZlYXNpYmxlIGFuZCB3aGV0aGVyIGl0IG1pZ2h0IGNvbXByb21pc2UgcHJvdGVpbiBzdGFiaWxpdHkuIFRoaXMgaW5zaWdodCBmdXJ0aGVyIGVtcGhhc2l6ZWQgdGhlIG5lZWQgdG8gY2FyZWZ1bGx5IGFzc2VzcyBvdXIgZGVzaWduIGNob2ljZXMgYmVmb3JlIHByb2NlZWRpbmcgdG8gZXh0ZW5zaXZlIHRlc3RpbmcuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJNb2RlbGluZyBvZiBNdXRhbnQgU3RydWN0dXJhbCBJbnRlZ3JpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwibmljM1wiIGlkPVwibmljM2hlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBwcmV2aW91cyBpdGVyYXRpb24sIHdlIGNvbnN1bHRlZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdoYW1tZXInLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gUHJvZi4gRHIuIEhhbW1lciA8L2E+LCB3aG8gc3VnZ2VzdGVkIHRoYXQgdGhlIHppbmMgZmluZ2VyIGRvbWFpbiBpbiB0aGUgU3B1RnoxIHByb3RlaW4gbWlnaHQgcGxheSBhIGNyaXRpY2FsIHN0cnVjdHVyYWwgcm9sZS4gQmFzZWQgb24gdGhpcyBmZWVkYmFjaywgdGhlIGdvYWwgb2YgdGhpcyBpdGVyYXRpb24gd2FzIHRvIGludmVzdGlnYXRlIHdoZXRoZXIgbXV0YXRpbmcgdGhlIHppbmMgZmluZ2VyIHdvdWxkIGRlc3RhYmlsaXplIHRoZSBwcm90ZWluIGFuZCBjb21wcm9taXNlIGl0cyBmdW5jdGlvbi4gU3BlY2lmaWNhbGx5LCB3ZSBhaW1lZCB0byBkZXRlcm1pbmUgaWYgYWx0ZXJpbmcgdGhpcyBkb21haW4gd291bGQgc3RpbGwgYmUgYSB2aWFibGUgc3RyYXRlZ3kgZm9yIGdlbmVyYXRpbmcgYSBTcHVGejEtYmFzZWQgbmlja2FzZSB3aXRob3V0IGxvc2luZyBzdHJ1Y3R1cmFsIGludGVncml0eS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEJlZm9yZSwgd2UgaWRlbnRpZmllZCB0aGUgc3BlY2lmaWMgYW1pbm8gYWNpZHMgcmVzcG9uc2libGUgZm9yIGNvb3JkaW5hdGluZyB0aGUgemluYyBpb24gd2l0aGluIHRoZSB6aW5jIGZpbmdlciBkb21haW4uIFVzaW5nIHRoZSBzb2Z0d2FyZSBHZW5laW91cywgd2UgcHJvY2VlZGVkIHRvIGRlc2lnbiBETkEgc2VxdWVuY2VzIGJ5IHN1YnN0aXR1dGluZyB0aGVzZSBrZXkgYW1pbm8gYWNpZHMgd2l0aCBvbmVzIHRoYXQgd291bGQgaW1wYWlyIHRoZWlyIGFiaWxpdHkgdG8gY29vcmRpbmF0ZSB0aGUgemluYyBpb24uIFRoZXNlIGRlc2lnbmVkIHNlcXVlbmNlcyBjb3JyZXNwb25kZWQgdG8gb3VyIHBvdGVudGlhbCBtdXRhdGlvbiBjYW5kaWRhdGVzLCB3aGljaCB3ZSBwcmVwYXJlZCBmb3IgZnVydGhlciBzdHJ1Y3R1cmFsIGFuYWx5c2lzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHVzZWQgQWxwaGFGb2xkIHRvIG1vZGVsIHRoZSAzRCBzdHJ1Y3R1cmVzIG9mIG91ciB6aW5jIGZpbmdlciBtdXRhdGlvbiBjYW5kaWRhdGVzLiBBZnRlciBnZW5lcmF0aW5nIHRoZXNlIG1vZGVscywgd2UgdXNlZCBDaGltZXJhWCB0byBwZXJmb3JtIGEgc3RydWN0dXJhbCBvdmVybGF5IGNvbXBhcmlzb24gYmV0d2VlbiB0aGUgbmF0aXZlIFNwdUZ6MSBwcm90ZWluIGFuZCB0aGUgbXV0YXRlZCB2ZXJzaW9ucyAoRmlnLiBYKS4gVGhpcyBjb21wYXJpc29uIHJldmVhbGVkIHNpZ25pZmljYW50IGRpZmZlcmVuY2VzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIFROQiBkb21haW4sIGluZGljYXRpbmcgdGhhdCB0aGUgemluYyBmaW5nZXIgcGxheXMgYSBjcnVjaWFsIHN0cnVjdHVyYWwgcm9sZSAoRmlnLiAzKS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIEZyb20gdGhpcyBhbmFseXNpcywgd2UgY29uY2x1ZGVkIHRoYXQgdGhlIHppbmMgZmluZ2VyIG11dGF0aW9uIGlzIG5vdCBhIHN1aXRhYmxlIGNhbmRpZGF0ZSBmb3IgZ2VuZXJhdGluZyBhIG5pY2thc2UsIGFzIGFsdGVyaW5nIHRoaXMgZG9tYWluIHdvdWxkIGxpa2VseSBjb21wcm9taXNlIHRoZSBzdHJ1Y3R1cmFsIGludGVncml0eSBvZiBTcHVGejEuIFByb2YuIEhhbW1lciBzdWdnZXN0ZWQgdGhhdCBpbnN0ZWFkIG9mIGZvY3VzaW5nIG9uIFNwdUZ6MSwgd2UgZXhwbG9yZSBvdGhlciBlbmRvbnVjbGVhc2VzIHdpdGggc2ltaWxhciBtZWNoYW5pc21zLiBIaXMgcmVjb21tZW5kYXRpb24gd2FzIHRvIGlkZW50aWZ5IGVuZG9udWNsZWFzZXMgdGhhdCBhcmUgc3RydWN0dXJhbGx5IGNvbXBhcmFibGUgdG8gU3B1RnoxIGFuZCBhbmFseXplIHRoZSBzdHJhdGVnaWVzIHVzZWQgdG8gY29udmVydCB0aGVzZSBpbnRvIG5pY2thc2VzLiBXZSB3b3VsZCB0aGVuIGFwcGx5IHRoZXNlIHNhbWUgc3RyYXRlZ2llcyB0byBvdXIgc2VsZWN0ZWQgZW5kb251Y2xlYXNlcywgYWRhcHRpbmcgdGhlbSBmb3Igb3VyIHB1cnBvc2VzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvc3B1Znotd3QtdnMtemYtbmlrYXNlLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAxOjwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0cnVjdHVyYWwgb3ZlcmxheSBvZiB3aWxkdHlwZSBTcHVGejEgKGNvbG9yOiBMaWxhYykgKFBEQiBjb2RlOiA4R0tIKSBhbmQgbW9kZWxlZCB6aW5jLWZpbmdlciBtdXRhdGlvbiBjYW5kaWRhdGUgKGNvbG9yOiBvcmFuZ2UpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggXHUyMDEzIHRoZSB5ZWxsb3cgY2lyY2xlIHNob3dzIHRoZSBsb2NhdGlvbiBvZiB0aGUgemluYy1maW5nZXIuIEEgc3RydWN0dXJhbCBkZXZpYXRpb24gb2YgYm90aCBwcm90ZWlucyBsb2NhbGx5IGlzIGV2aWRlbnQuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LXd0LXZzLXpmLW5pa2FzZS16aW5jLWZpbmdlci53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgMjo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZS11cCBvZiB0aGUgemluYyBmaW5nZXIgbW90aWYgb2YgdGhlIHN0cnVjdHVyYWwgb3ZlcmxheSAtIHRoZSB6aW5jIGZpbmdlciBhcHBlYXJzIHRvIGJlIHN0cnVjdHVyYWxseSBzaWduaWZpY2FudDogdGhlcmUgYXJlIHN0cm9uZyBzdHJ1Y3R1cmFsIGRpZmZlcmVuY2VzIGxvY2FsbHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cIm5pYzRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwibkNhczEyIGFuYWxvZyBNdXRhdGlvbnNcIiBpZD1cIm5pYzRoZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZnRlciBjb25jbHVkaW5nIHRoYXQgdGhlIHppbmMgZmluZ2VyIG11dGF0aW9uIGFwcHJvYWNoIHdhcyBub3Qgc3VpdGFibGUgZm9yIGNvbnZlcnRpbmcgU3B1RnoxIGludG8gYSBuaWNrYXNlLCB3ZSByZXZpc2l0ZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgaXRzIGN1dHRpbmcgbWVjaGFuaXNtLiBJbml0aWFsbHksIHdlIGJlbGlldmVkIHRoYXQgU3B1RnoxLCBzaW1pbGFyIHRvIENhczksIGNvbnRhaW5lZCB0d28gYWN0aXZlIGNlbnRlcnMgdGhhdCBlYWNoIGN1dCBvbmUgb2YgdGhlIEROQSBzdHJhbmRzLCBhbmQgdGhhdCBieSBkZWFjdGl2YXRpbmcgb25lIG9mIHRoZXNlIGNlbnRlcnMsIHdlIGNvdWxkIGdlbmVyYXRlIGEgbmlja2FzZSB0aGF0IG9ubHkgY3V0cyBvbmUgc3RyYW5kLiBIb3dldmVyLCB0aHJvdWdoIGZ1cnRoZXIgcmVzZWFyY2gsIHdlIGRpc2NvdmVyZWQgdGhhdCB0aGlzIGFzc3VtcHRpb24gd2FzIGluY29ycmVjdC4gU3B1RnoxIGFjdHVhbGx5IGZ1bmN0aW9ucyB3aXRoIGEgZGlmZmVyZW50IGN1dHRpbmcgbWVjaGFuaXNtOiB0aGUgUnV2QyBkb21haW4gaXMgcmVzcG9uc2libGUgZm9yIGN1dHRpbmcgdGhlIG5vbi10YXJnZXQgc3RyYW5kLCB3aGlsZSB0aGUgVE5CIGRvbWFpbiBkb2VzIG5vdCBkaXJlY3RseSBjdXQgdGhlIEROQS4gSW5zdGVhZCwgaXQgYXNzaXN0cyB0aGUgcHJvY2VzcyBieSBndWlkaW5nIHRoZSB0YXJnZXQgc3RyYW5kIGludG8gdGhlIFJ1dkMgZG9tYWluIGZvciBzZXF1ZW50aWFsIGNsZWF2YWdlPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCI1XCIgc2Nyb2xsSWQ9XCJkZXNjLTVcIi8+LiBUaGlzIGRpc2NvdmVyeSBzaGlmdGVkIG91ciBmb2N1cyBmcm9tIHNpbXBseSBkZWFjdGl2YXRpbmcgYW4gYWN0aXZlIHNpdGUgdG8gYmV0dGVyIHVuZGVyc3RhbmRpbmcgaG93IHRoZSBzZXF1ZW50aWFsIGNsZWF2YWdlIHdvcmtzIGluIG9yZGVyIHRvIGluZm9ybSBmdXR1cmUgbXV0YXRpb24gc3RyYXRlZ2llcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gYWRkaXRpb24gdG8gdGhlc2UgaW5zaWdodHMsIHdlIG5vdGljZWQgYSBzaWduaWZpY2FudCBwaHlsb2dlbmV0aWMgcmVsYXRpb25zaGlwIGJldHdlZW4gRmFuem9yIGVuZG9udWNsZWFzZXMsIGxpa2UgU3B1RnoxLCBhbmQgQ2FzMTIgZW5kb251Y2xlYXNlczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPi4gVGhpcyBjb25uZWN0aW9uIHdhcyBjcnVjaWFsLCBhcyBDYXMxMiBwcm90ZWlucyBoYXZlIGEgc2ltaWxhciBjdXR0aW5nIG1lY2hhbmlzbSB0byBGYW56b3IgcHJvdGVpbnMsIHV0aWxpemluZyBhIHNpbmdsZSBhY3RpdmUgc2l0ZSBmb3IgY2xlYXZhZ2Ugd2hpbGUgY29vcmRpbmF0aW5nIGJvdGggRE5BIHN0cmFuZHMuIE1vcmUgaW1wb3J0YW50bHksIHdlIGlkZW50aWZpZWQgYSBwcmVjZWRlbnQgaW4gdGhlIGxpdGVyYXR1cmUgd2hlcmUgYSBDYXMxMmEgZW5kb251Y2xlYXNlIHdhcyBzdWNjZXNzZnVsbHkgY29udmVydGVkIGludG8gYSBuaWNrYXNlIGJ5IHN1YnN0aXR1dGluZyBhIHNpbmdsZSBhbWlubyBhY2lkIGluIHRoZSBUTkIgZG9tYWluPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCI2XCIgc2Nyb2xsSWQ9XCJkZXNjLTZcIi8+IChGaWcuIFgxIGFuZCBYMikuIFRoaXMgcHJvdmlkZWQgdXMgd2l0aCBhIGNsZWFyIG1vZGVsIHN0cmF0ZWd5IHRvIGZvbGxvdywgYXMgdGhpcyB0YXJnZXRlZCBtdXRhdGlvbiBhbGxvd2VkIHRoZSBlbmRvbnVjbGVhc2UgdG8gc2VsZWN0aXZlbHkgY3V0IG9ubHkgb25lIEROQSBzdHJhbmQsIGVmZmVjdGl2ZWx5IGNvbnZlcnRpbmcgaXQgaW50byBhIG5pY2thc2UuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhc2VkIG9uIHRoZXNlIGZpbmRpbmdzLCB0d28ga2V5IGRlY2lzaW9ucyBlbWVyZ2VkLiBGaXJzdCwgcmVjb2duaXppbmcgdGhlIHN0cnVjdHVyYWwgYW5kIG1lY2hhbmlzdGljIHNpbWlsYXJpdGllcyBiZXR3ZWVuIEZhbnpvciBhbmQgQ2FzMTIgZW5kb251Y2xlYXNlcywgd2UgZGVjaWRlZCB0byBleHBsb3JlIENhc1hcdTIwMTRhIHNtYWxsZXIgQ2FzMTItcmVsYXRlZCBlbmRvbnVjbGVhc2VcdTIwMTRhcyBhbiBhZGRpdGlvbmFsIGNhbmRpZGF0ZSBpbiBvdXIgcHJvamVjdC4gQ2FzWCBzaGFyZXMgbWFueSBvZiB0aGUgYWR2YW50YWdlcyBvZiBTcHVGejEsIHN1Y2ggYXMgYSBtb3JlIGNvbXBhY3Qgc3RydWN0dXJlIGNvbXBhcmVkIHRvIENhczksIG1ha2luZyBpdCBpZGVhbCBmb3IgYXBwbGljYXRpb25zIHJlcXVpcmluZyBzbWFsbGVyIGVkaXRpbmcgc3lzdGVtcy4gU2Vjb25kbHksIHdlIHJlc29sdmVkIHRvIGFkYXB0IHRoZSBtdXRhdGlvbiBzdHJhdGVneSB1c2VkIHRvIGNvbnZlcnQgQ2FzMTJhIGludG8gYSBuaWNrYXNlIGZvciBib3RoIENhc1ggYW5kIFNwdUZ6MS4gQnkgYXBwbHlpbmcgdGhlc2UgbGVhcm5pbmdzLCB3ZSBhaW1lZCB0byBnZW5lcmF0ZSBlZmZlY3RpdmUgbmlja2FzZXMgZnJvbSB0aGVzZSBlbmRvbnVjbGVhc2VzIHRvIGZ1cnRoZXIgb3B0aW1pemUgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxJbmZvQm94IHRpdGxlPVwiVGhlIHJhdGlvbmFsZSBiZWhpbmQgZGVzaWduaW5nIFNwdUZ6MSBhbmQgQ2FzWCBOaWNrYXNlc1wiIGlkPVwiaG93LXRvLWNyZWF0ZS1uaWNrYXNlcy1vbmxpbmUtZmFzdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBtdXRhdGlvbiBzdHJhdGVneSBhaW1lZCB0byBjb252ZXJ0IHRoZSBlbmRvbnVjbGVhc2VzIFNwdUZ6MSBhbmQgQ2FzWCBpbnRvIG5pY2thc2VzIGJ5IHRhcmdldGluZyBzcGVjaWZpYyBwb3NpdGl2ZWx5IGNoYXJnZWQgYW1pbm8gYWNpZHMsIHNpbWlsYXIgdG8gUjEyMjYgaW4gbXV0YXRlZCB0byBjcmVhdGUgYSBBc0NhczEyYSBuaWNrYXNlLCB0byBkaXNydXB0IHRoZWlyIGRvdWJsZS1zdHJhbmQgY2xlYXZhZ2UgZnVuY3Rpb24gd2hpbGUgcmV0YWluaW5nIHNpbmdsZS1zdHJhbmQgY3V0dGluZyBjYXBhYmlsaXR5LlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBvdXIgcHJvamVjdCwgd2Ugc2V0IG91dCB0byBlbmdpbmVlciB0aGUgZW5kb251Y2xlYXNlcyBTcHVGejEgYW5kIENhc1ggaW50byBuaWNrYXNlcywgYSBwcm9jZXNzIHRoYXQgcmVxdWlyZWQgYSBtb3JlIHRhcmdldGVkIGFwcHJvYWNoIHRoYW4gcmFuZG9tIG11dGFnZW5lc2lzIGR1ZSB0byB0aGUgdGltZSBhbmQgZmluYW5jaWFsIGNvbnN0cmFpbnRzIG9mIG91ciBwcm9qZWN0LiBSYW5kb20gbXV0YWdlbmVzaXMsIHdoaWxlIGEgcG9zc2libGUgc3RyYXRlZ3ksIHdvdWxkIGhhdmUgcmVxdWlyZWQgYW4gZXh0ZW5zaXZlIHNjb3BlLCBtYWtpbmcgaXQgZGlmZmljdWx0IHRvIGFjaGlldmUgbWVhbmluZ2Z1bCByZXN1bHRzIHdpdGhpbiBvdXIgdGltZWZyYW1lLiBBcyBhIHJlc3VsdCwgd2UgYWltZWQgdG8gaWRlbnRpZnkgc3BlY2lmaWMgbXV0YXRpb25hbCBjYW5kaWRhdGVzIHRoYXQgd291bGQgYWxsb3cgZm9yIGEgbW9yZSBmb2N1c2VkIGFuZCBlZmZpY2llbnQgYXBwcm9hY2guXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgIFx0ICAgICAgICAgT25lIHN0cmF0ZWd5IHdlIGV4cGxvcmVkIHdhcyBmaW5kaW5nIGFuIGVuZG9udWNsZWFzZSB3aXRoIHN0cnVjdHVyYWwgYW5kIG1lY2hhbmlzdGljIHNpbWlsYXJpdGllcyB0byBTcHVGejEgYW5kIENhc1gsIGZvciB3aGljaCBhIHN1Y2Nlc3NmdWwgcHJlY2VkZW50IGV4aXN0ZWQgaW4gY29udmVydGluZyBhbiBlbmRvbnVjbGVhc2UgaW50byBhIG5pY2thc2UuIEFmdGVyIHN0dWR5aW5nIHRoZSBwaHlsb2dlbmV0aWMgcmVsYXRpb25zaGlwcyBvZiBTcHVGejEgYW5kIENhc1gsIHdlIGlkZW50aWZpZWQgQXNDYXMxMmEsIGFuIGVuZG9udWNsZWFzZSB3aXRoIGEgc2ltaWxhciBzZXF1ZW50aWFsIEROQSBjbGVhdmFnZSBtZWNoYW5pc20uIEltcG9ydGFudGx5LCB0aGVyZSB3YXMgYWxyZWFkeSBhIGtub3duIGV4YW1wbGUgd2hlcmUgQXNDYXMxMmEgaGFkIGJlZW4gZW5naW5lZXJlZCBpbnRvIGEgbmlja2FzZSB0aHJvdWdoIGEgc2luZ2xlIG11dGF0aW9uXHUyMDE0c3BlY2lmaWNhbGx5LCB0aGUgbXV0YXRpb24gb2YgYXJnaW5pbmUgMTIyNi4gVGhpcyBwcm92aWRlZCBhIHN0cm9uZyBmb3VuZGF0aW9uIGZvciB1cyB0byBkZXZlbG9wIGEgc2ltaWxhciBzdHJhdGVneSBmb3IgU3B1RnoxIGFuZCBDYXNYLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBoeXBvdGhlc2l6ZWQgdGhhdCB0aGUgcm9sZSBvZiBhcmdpbmluZSAxMjI2IGluIHRoZSBzZXF1ZW50aWFsIGNsZWF2YWdlIG1lY2hhbmlzbSBvZiBBc0NhczEyYSB3YXMgdG8gY29vcmRpbmF0ZSB0aGUgRE5BIHN0cmFuZHMgZHVyaW5nIHRoZSBjdXR0aW5nIHByb2Nlc3MuIEFzQ2FzMTJhIHBlcmZvcm1zIGEgc2VxdWVudGlhbCBjdXQsIHdoZXJlIHRoZSBSdXZDIGRvbWFpbiBmaXJzdCBjbGVhdmVzIHRoZSBub24tdGFyZ2V0IHN0cmFuZCwgYW5kIHRoZSBUTkIgKE5VQykgZG9tYWluIGhlbHBzIGd1aWRlIHRoZSB0YXJnZXQgc3RyYW5kIGludG8gdGhlIFJ1dkMgZG9tYWluIGZvciBjbGVhdmFnZSAoRmlnLiBYNykuIFdlIHN1c3BlY3RlZCB0aGF0IGFyZ2luaW5lIDEyMjYgY291bGQgcGxheSBhIGtleSByb2xlIGluIHRoaXMgcHJvY2VzcyBieSBjb29yZGluYXRpbmcgdGhlIEROQSBkdWUgdG8gaXRzIGxvbmcsIHBvc2l0aXZlbHkgY2hhcmdlZCBzaWRlIGNoYWluLiBJZiByZW1vdmluZyBvciBtdXRhdGluZyB0aGlzIGFyZ2luaW5lIGRpc3J1cHRzIHRoZSBzZXF1ZW50aWFsIGN1dCwgaXQgd291bGQgc3VnZ2VzdCB0aGF0IHRoZSBhcmdpbmluZSBoZWxwcyBndWlkZSB0aGUgc2Vjb25kIHN0cmFuZCBpbnRvIHRoZSBSdXZDIGRvbWFpbi5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RydWN0dXJhbGx5LCB3ZSBvYnNlcnZlZCB0aGF0IGFyZ2luaW5lIDEyMjYgcHJvdHJ1ZGVzIGZyb20gdGhlIE5VQyBkb21haW4gb2YgQXNDYXMxMmEgYW5kIGlzIG9yaWVudGVkIHRvd2FyZCB0aGUgUnV2QyBkb21haW4gKEZpZy4gWDgpLiBUaGlzIHBvc2l0aW9uaW5nIGxlZCB1cyB0byBoeXBvdGhlc2l6ZSB0aGF0IHRoZSBhcmdpbmluZSBoZWxwcyBjb29yZGluYXRlIHRoZSBETkEgc3RyYW5kIGFzIGl0IG1vdmVzIGludG8gdGhlIFJ1dkMgZG9tYWluIGZvciBjdXR0aW5nLiBCYXNlZCBvbiB0aGlzIG9ic2VydmF0aW9uLCB3ZSBzcGVjdWxhdGVkIHRoYXQgdGhlIG11dGF0aW9uIG9mIGFyZ2luaW5lIDEyMjYgZGlzcnVwdHMgdGhpcyBjb29yZGluYXRpb24sIHByZXZlbnRpbmcgdGhlIGZ1bGwgZG91YmxlLXN0cmFuZCBjdXQgYW5kIGVmZmVjdGl2ZWx5IGNvbnZlcnRpbmcgQXNDYXMxMmEgaW50byBhIG5pY2thc2UuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHRoZW4gYXBwbGllZCB0aGlzIHN0cnVjdHVyYWwgaW5zaWdodCB0byBTcHVGejEgYW5kIENhc1gsIHNlYXJjaGluZyBmb3IgcG9zaXRpdmVseSBjaGFyZ2VkIGFtaW5vIGFjaWRzIHdpdGggbG9uZyBzaWRlIGNoYWlucywgc2ltaWxhciB0byBhcmdpbmluZSAxMjI2LCB0aGF0IHdlcmUgcG9zaXRpb25lZCBhdCB0aGUgaW50ZXJmYWNlIGJldHdlZW4gdGhlIE5VQyBhbmQgUnV2QyBkb21haW5zLiBXZSBzcGVjaWZpY2FsbHkgbG9va2VkIGZvciBhbWlubyBhY2lkcyB0aGF0IHByb3RydWRlZCBmcm9tIHRoZSBOVUMgZG9tYWluIGFuZCBvcmllbnRlZCB0b3dhcmQgdGhlIFJ1dkMgZG9tYWluLCBtaXJyb3JpbmcgdGhlIHN0cnVjdHVyYWwgcm9sZSBvZiBhcmdpbmluZSAxMjI2IGluIEFzQ2FzMTJhLiBUaGVzZSBhbWlubyBhY2lkcyBiZWNhbWUgb3VyIG11dGF0aW9uYWwgdGFyZ2V0cywgYWxsb3dpbmcgdXMgdG8gZGVzaWduIGEgc3RyYXRlZ3kgdG8gY29udmVydCBTcHVGejEgYW5kIENhc1ggaW50byBuaWNrYXNlcyBieSBkaXNydXB0aW5nIHRoZWlyIGFiaWxpdHkgdG8gbWFrZSBkb3VibGUtc3RyYW5kIGN1dHMsIHdoaWxlIHByZXNlcnZpbmcgdGhlaXIgZnVuY3Rpb25hbGl0eSBmb3Igc2luZ2xlLXN0cmFuZCBjdXRzLiBUaGUgYW1pbm8gYWNpZHMgd2UgaWRlbnRpZmllZCBpbiBTcHVGejEgYXJlIHRoZSA1NjR0aCBhbmQgdGhlIDU2OHRoIGFyZ2luaW5lIGxvY2F0ZWQgaW4gaXRzIE5VQyBkb21haW4uIEZvciBDYXNYIHdlIGlkZW50aWZpZWQgdGhlIDkwNHRoIGFyZ2luaW5lIGFzIGEgcHJvbWlzaW5nIGNhbmRpZGF0ZS5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGV0YWlscz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5mb0JveD4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBzdHJ1Y3R1cmFsbHkgYW5hbHl6ZWQgQ2FzWCBhbmQgU3B1RnoxLCBhcyB3ZWxsIGFzIHRoZSBrbm93biBBc0NhczEyYSBuaWNrYXNlLCB1c2luZyBDaGltZXJhLiBPdXIgb2JqZWN0aXZlIHdhcyB0byB1bmRlcnN0YW5kIHdoeSB0aGUgc3BlY2lmaWMgYW1pbm8gYWNpZCBzdWJzdGl0dXRpb24gY29udmVydGVkIEFzQ2FzMTJhIGludG8gYSBuaWNrYXNlLiBXZSB0aGVuIGlkZW50aWZpZWQgYW5hbG9nb3VzIGFtaW5vIGFjaWRzIGluIFNwdUZ6MSAoRmlnLiBYMyBhbmQgRmlnLiBYNCkgYW5kIENhc1ggKEZpZy4gWDUgYW5kIEZpZy4gWDYpIHRoYXQgbWlnaHQgcGxheSBhIHNpbWlsYXIgcm9sZSwgYWxsb3dpbmcgdXMgdG8gZGVzaWduIG5ldyBtdXRhdGlvbiBjYW5kaWRhdGVzIGZvciBvdXIgcHJvamVjdC4gQWZ0ZXIgZGVzaWduaW5nIHRoZXNlIG5ldyBtdXRhdGlvbiBjYW5kaWRhdGVzLCB3ZSBtb2RlbGVkIHRoZW0gdXNpbmcgQWxwaGFGb2xkIHRvIHByZWRpY3QgdGhlaXIgM0Qgc3RydWN0dXJlcyBhbmQgYXNzZXNzIHRoZWlyIHBvdGVudGlhbCBlZmZlY3RpdmVuZXNzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIHZhbGlkYXRlIG91ciBhcHByb2FjaCwgd2UgY29uZHVjdGVkIGFuIGludGVydmlldyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3NhaXRvJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1ha290byBTYWl0byA8L2E+LCB0aGUgbGVhZCBhdXRob3Igb2YgdGhlIG1haW4gRmFuem9yIHBhcGVyLiBHaXZlbiBoaXMgZXhwZXJ0aXNlLCB0aGVyZSB3YXMgbm8gYmV0dGVyIHBlcnNvbiB0byBjb25zdWx0IG9uIHRoaXMgdG9waWMuIFdlIHByZXNlbnRlZCBvdXIgcHJvamVjdCBhbmQgb3VyIHN0cmF0ZWd5IGZvciBjcmVhdGluZyBuaWNrYXNlcywgYW5kIGhlIGZvdW5kIG91ciBhcHByb2FjaCB0byBiZSB2ZXJ5IHBsYXVzaWJsZS4gSGUgY29uZmlybWVkIHRoYXQgdGhlIHppbmMgZmluZ2VyIG11dGF0aW9uIGlzIGxpa2VseSBzdHJ1Y3R1cmFsbHkgY3JpdGljYWwgYW5kIGFncmVlZCB0aGF0IG91ciBuZXcgc3RyYXRlZ3ksIGJhc2VkIG9uIHRoZSBwcmVjZWRlbnQgd2l0aCBBc0NhczEyYSwgd2FzIG1vcmUgcHJvbWlzaW5nLiBUaGlzIGNvbnZlcnNhdGlvbiBnYXZlIHVzIGNvbmZpZGVuY2UgdGhhdCB3ZSB3ZXJlIG9uIGEgZ29vZCB0cmFjay5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb20gdGhpcyBpdGVyYXRpb24sIHdlIGdhaW5lZCBzZXZlcmFsIGtleSBpbnNpZ2h0cy4gRmlyc3QsIG91ciBpbml0aWFsIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGN1dHRpbmcgbWVjaGFuaXNtIHVzZWQgYnkgU3B1RnoxXHUyMDE0YmFzZWQgb24gdGhlIGFzc3VtcHRpb24gdGhhdCBpdCBjb250YWluZWQgdHdvIGFjdGl2ZSBjZW50ZXJzLCBsaWtlIENhczksIGVhY2ggY3V0dGluZyBhIEROQSBzdHJhbmRcdTIwMTR3YXMgaW5jb3JyZWN0LiBXZSBkaXNjb3ZlcmVkIHRoYXQgU3B1RnoxIG9wZXJhdGVzIGRpZmZlcmVudGx5LCB3aXRoIHRoZSBSdXZDIGRvbWFpbiBjdXR0aW5nIHRoZSBub24tdGFyZ2V0IHN0cmFuZCBhbmQgdGhlIFROQiBkb21haW4gYXNzaXN0aW5nIGJ5IGd1aWRpbmcgdGhlIHRhcmdldCBzdHJhbmQgaW50byB0aGUgUnV2QyBkb21haW4gZm9yIHNlcXVlbnRpYWwgY2xlYXZhZ2UuIFRoaXMgc2hpZnQgaW4gdW5kZXJzdGFuZGluZyBhbGxvd2VkIHVzIHRvIHJlZmluZSBvdXIgYXBwcm9hY2gsIG1vdmluZyBhd2F5IGZyb20gZGVhY3RpdmF0aW5nIGFuIGFjdGl2ZSBzaXRlIHRvIGZvY3VzaW5nIG9uIHRoZSBzZXF1ZW50aWFsIGN1dHRpbmcgbWVjaGFuaXNtLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIHdlIGZvdW5kIHRoYXQgRmFuem9yIGVuZG9udWNsZWFzZXMsIGxpa2UgU3B1RnoxLCBzaGFyZSBhIHNpZ25pZmljYW50IHBoeWxvZ2VuZXRpYyByZWxhdGlvbnNoaXAgd2l0aCBDYXMxMiBlbmRvbnVjbGVhc2VzLCB3aGljaCBoYXZlIGEgc2ltaWxhciBzaW5nbGUtc2l0ZSBjdXR0aW5nIG1lY2hhbmlzbS4gVGhpcyBjb25uZWN0aW9uLCBhbG9uZyB3aXRoIHRoZSBwcmVjZWRlbnQgb2YgY29udmVydGluZyBDYXMxMmEgaW50byBhIG5pY2thc2UgdGhyb3VnaCB0aGUgc3Vic3RpdHV0aW9uIG9mIGEgc2luZ2xlIGFtaW5vIGFjaWQgaW4gdGhlIFROQiBkb21haW4sIHByb3ZpZGVkIHVzIHdpdGggYSBjbGVhciBzdHJhdGVneSBmb3IgY29udmVydGluZyBTcHVGejEgYW5kIENhc1ggaW50byBuaWNrYXNlcy4gVGhlIHNpbWlsYXJpdHkgaW4gY3V0dGluZyBtZWNoYW5pc21zIGJldHdlZW4gRmFuem9yIGFuZCBDYXMxMiBwcm90ZWlucyByZWluZm9yY2VkIHRoZSB2aWFiaWxpdHkgb2YgdGhpcyBhcHByb2FjaC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyBpdGVyYXRpb24gbGVkIHVzIHRvIGluY29ycG9yYXRlIENhc1gsIGEgc21hbGxlciBDYXMxMi1yZWxhdGVkIGVuZG9udWNsZWFzZSwgaW50byBvdXIgcHJvamVjdC4gQ2FzWCBvZmZlcnMgdGhlIHNhbWUgYWR2YW50YWdlcyBhcyBTcHVGejEsIHN1Y2ggYXMgYSBjb21wYWN0IHN0cnVjdHVyZSwgbWFraW5nIGl0IGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgdGhhdCByZXF1aXJlIHNtYWxsZXIgZWRpdGluZyBzeXN0ZW1zLiBBZGRpdGlvbmFsbHksIHdlIGFkYXB0ZWQgdGhlIG11dGF0aW9uIHN0cmF0ZWd5IHVzZWQgdG8gY29udmVydCBDYXMxMmEgaW50byBhIG5pY2thc2UgZm9yIGJvdGggQ2FzWCBhbmQgU3B1RnoxLCBndWlkaW5nIG91ciBmdXR1cmUgd29yayBpbiBvcHRpbWl6aW5nIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXguXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9jYXMxMi1uaWthc2Uud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDE6PC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2NoZW1hdGljIHJlcHJlc2VudGF0aW9uIG9mIENhczEyYSAoUERCIGNvZGU6IDhTRkgpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggLSB0aGUgeWVsbG93IGNpcmNsZSBoaWdobGlnaHRzIHRoZSBwb3NpdGlvbiBvZiBhcmdpbmluZSAoUikgKDEyMjZ0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgd2hpY2gsIHdoZW4gcmVwbGFjZWQgYnkgYW4gYWxhbmluZSAoQSksIGNvbnZlcnRzIHRoZSBDYXMxMmEgZW5kb251Y2xlYXNlIGludG8gYW4gbkNhczEyYSBuaWNrYXNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL2NhczEyLW5pa2FzZS1jbG9zZS11cC53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgMjo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZS11cCBvZiBQbG1DYXNYIChQREIgY29kZTogN1dBWikgLSBhcmdpbmluZSAoUikgKDEyMjZ0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgaXMgY29sb3JlZCBwdXJwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL2Nhc3gtbmlrYXNlLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAzOjwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNjaGVtYXRpYyByZXByZXNlbnRhdGlvbiBvZiBQbG1DYXNYIChQREIgY29kZTogN1dBWikgaW4gQ2hpbWVyYVggLSB0aGUgeWVsbG93IGNpcmNsZSBoaWdobGlnaHRzIHRoZSBwb3NpdGlvbiBvZiBhcmdpbmluZSAoUikgKDkwNHRoIGFtaW5vIGFjaWQgaW4gdGhlIHByaW1hcnkgc3RydWN0dXJlKSBhbmQgZ2x1dGFtaW5lIChRKSAoOTA3dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpLCB3aGljaCwgd2hlbiByZXBsYWNlZCBieSBhbiBhbGFuaW5lIChBKSwgY29udmVydCB0aGUgZW5kb251Y2xlYXNlIGludG8gYSBuaWNrYXNlLCBhY2NvcmRpbmcgdG8gb3VyIGh5cG90aGVzaXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvY2FzeC1uaWthc2UtY2xvc2UtdXAud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDQ6PC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UtdXAgb2YgUGxtQ2FzWCAoUERCIGNvZGU6IDdXQVopIC0gYXJnaW5pbmUgKFIpICg5MDR0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgYW5kIGdsdXRhbWluZSAoUSkgKDkwN3RoIGFtaW5vIGFjaWQgaW4gdGhlIHByaW1hcnkgc3RydWN0dXJlKSBhcmUgcHVycGxlIGluIGNvbG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9zcHVmei1uaWthc2Uud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDU6PC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2NoZW1hdGljIHJlcHJlc2VudGF0aW9uIG9mIFNwdUZ6MSAoUERCIGNvZGU6IDhHS0gpIGluIENoaW1lcmFYIC0gdGhlIHllbGxvdyBjaXJjbGUgaGlnaGxpZ2h0cyB0aGUgcG9zaXRpb24gb2YgdGhlIHR3byBhcmdpbmluZXMgKFIpICg1NjR0aCBhbmQgNTY4dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpLCB3aGljaCwgd2hlbiByZXBsYWNlZCBieSBhbiBhbGFuaW5lIChBKSwgdHJhbnNmb3JtIHRoZSBlbmRvbnVjbGVhc2UgaW50byBhIG5pY2thc2UgYWNjb3JkaW5nIHRvIG91ciBoeXBvdGhlc2lzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LW5pa2FzZS1jbG9zZS11cC53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgNjo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZS11cCBvZiBTcHVGejEgKFBEQiBjb2RlOiA4R0tIKSAtIHRoZSB0d28gYXJnaW5pbmVzIChSKSAoNTY0dGggYW5kIDU2OHRoIGFtaW5vIGFjaWQgaW4gdGhlIHByaW1hcnkgc3RydWN0dXJlKSBhcmUgcHVycGxlIGluIGNvbG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvYXNjYXMxMmEtbnVjLWRvbWFpbi53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL2FzY2FzMTJhLW51Yy1kb21haW4tY2xvc2UtdXAud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgNzo8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBc0NhczEyYSAoUERCIGNvZGU6IDhTRkgpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVguIFRoZSBOVUMgZG9tYWluIChUTkIpIGlzIGNvbG9yZWQgcHVycGxlIGFuZCBpcyBhdHRhY2hlZCB0byB0aGUgUnV2QyBkb21haW4uIFRoZSBETkEgc3RyYW5kIGlzIGNvbG9yZWQgb3JhbmdlLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDg6PC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UtdXAgb2YgTlVDIGRvbWFpbiAoY29sb3JlZCBwdXJwbGUpIG9mIEFzQ2FzMTJhKFBEQiBjb2RlOiA4U0ZIKSAtIHRoZSBhcmdpbmluZXMgKFIpICgxMjI2dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpIGlzIGNvbG9yZWQgeWVsbG93LiBJdHMgcG9zaXRpdmVseSBjaGFyZ2VkIHNpZGUgY2hhaW4gaXMgb3JpZW50ZWQgdG93YXJkcyB0aGUgUnV2QyBkb21haW4sIGFzIHdlbGwgYXMgdGhlIEROQSBzdHJhbmQgZml4YXRlZCBpbiB0aGUgUnV2QyBkb21haW4uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cIm5pYzVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiT25nb2luZzogSW4gVml0cm8gQ2xlYXZhZ2UgQXNzYXlzXCIgaWQ9XCJuaWM1aGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhpcyBpdGVyYXRpb24sIG91ciBmb2N1cyBzaGlmdGVkIHRvIHRlc3Rpbmcgd2hldGhlciBvdXIgbXV0YXRpb24gY2FuZGlkYXRlcyBoYWQgc3VjY2Vzc2Z1bGx5IGNvbnZlcnRlZCB0aGUgZW5kb251Y2xlYXNlcyBpbnRvIGZ1bmN0aW9uYWwgbmlja2FzZXMuIFRvIGRvIHRoaXMsIHdlIGFkYXB0ZWQgYW4gZXhpc3RpbmcgYXNzYXkgdGhhdCBoYWQgYmVlbiBvcmlnaW5hbGx5IGRlc2lnbmVkIHRvIGRldGVybWluZSB3aGV0aGVyIG11dGF0ZWQgZW5kb251Y2xlYXNlcyBleGhpYml0ZWQgbmlja2FzZSBhY3Rpdml0eTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPi4gV2UgdGFpbG9yZWQgdGhpcyBhc3NheSB0byBmaXQgb3VyIHNwZWNpZmljIG5lZWRzLCBhbGxvd2luZyB1cyB0byBhY2N1cmF0ZWx5IGFzc2VzcyB0aGUgcHJvcGVydGllcyBvZiBvdXIgbXV0YXRlZCBwcm90ZWlucyBpbiB0aGUgbGFiLiBUaGUga2V5IHF1ZXN0aW9uIHdhcyB3aGV0aGVyIHRoZSBtdXRhdGlvbnMgaGFkIHJlbmRlcmVkIHRoZSBwcm90ZWlucyBkeXNmdW5jdGlvbmFsLCBsZWZ0IHRoZW0gYXMgZW5kb251Y2xlYXNlcywgb3Igc3VjY2Vzc2Z1bGx5IGNvbnZlcnRlZCB0aGVtIGludG8gbmlja2FzZXMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBzdGFydGVkIG9mZiBieSBhbXBsaWZpY2F0aW9uIG9mIG91ciBuaWNrYXNlIGNhbmRpZGF0ZXMsIG9yZGVyZWQgYXMgZ2VuZSBzeW50aGVzZXMsIHRvIGFkZCByZXN0cmljdGlvbiBzaXRlcy4gV2UgdGhlbiBmYWNpbGl0YXRlZCByZXN0cmljdGlvbiBjbG9uaW5nIG9mIHRoZSBhbXBsaWZpY2F0ZXMgaW50byBhbiBFLiBjb2xpIHByb3RlaW4gZXhwcmVzc2lvbiB2ZWN0b3IgcHJvdmlkZWQgYnkgdGhlIGxhYm9yYXRvcnkgb2Ygb3IgUEkgS3Jpc3RpYW4gTVx1MDBGQ2xsZXIuIFdlIHN1YnNlcXVlbnRseSB0cmFuc2Zvcm1lZCBFLiBjb2xpIHdpdGggdGhlIGdlbmUgZnJhZ21lbnRzIG9mIG91ciBuaWNrYXNlIGNhbmRpZGF0ZXMgZm9yIENhc1ggYW5kIFNwdUZ6LiBIb3dldmVyLCB0aGUgdHJhbnNmb3JtYW50IGNlbGxzIGRpZCBub3QgZ3JvdywgbGVhZGluZyB1cyB0byBzdXNwZWN0IHRoYXQgdGhlIHBsYXNtaWQgYmFja2JvbmUgd2UgcmVjZWl2ZWQgbWF5YmUgaW1wYWlyZWQgaW4gc29tZSB3YXkuIEdpdmVuIHRoZSB0aW1lbGluZSwgd2Ugd2VyZSBub3QgYWJsZSB0byBjb21wbGV0ZSB0aGUgdGVzdGluZyBvZiBvdXIgbmlja2FzZSBjYW5kaWRhdGVzLiBPdXIgY3VycmVudCBzdGVwcyBpbnZvbHZlIHRyb3VibGVzaG9vdGluZyByZWdhcmRpbmcgdGhlIHJlc3RyaWN0aW9uIGNsb25pbmcgYW5kIGNvbnRpbnVpbmcgd2l0aCBwcm90ZWluIGV4cHJlc3Npb24gYW5kIHB1cmlmaWNhdGlvbiBvbmNlIHRoZSBpc3N1ZSBpcyByZXNvbHZlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgbmV4dCBwaGFzZSBvZiBvdXIgcGxhbiwgb25jZSB3ZSBvdmVyY29tZSB0aGUgY3VycmVudCBpc3N1ZXMgd2l0aCBjbG9uaW5nIGFuZCBzdWNjZXNzZnVsbHkgb3ZlcmV4cHJlc3Mgb3VyIG5pY2thc2UgY2FuZGlkYXRlcywgd291bGQgaW52b2x2ZSBjb25kdWN0aW5nIGFuIGluIHZpdHJvIHBsYXNtaWQgY2xlYXZhZ2UgYXNzYXkgKEZpZy5YKS4gSW4gdGhpcyBhc3NheSwgdGhlIHB1cmlmaWVkIG5pY2thc2VzIHdvdWxkIGJlIGNvbWJpbmVkIHdpdGggdGhlaXIgcmVzcGVjdGl2ZSBndWlkZSBSTkFzIGFuZCBhIHN1cGVyY29pbGVkIHRlc3QgcGxhc21pZC4gVGhlIGd1aWRlIFJOQXMgd291bGQgZGlyZWN0IHRoZSBuaWNrYXNlcyB0byB0aGUgdGFyZ2V0IHNlcXVlbmNlIG9uIHRoZSBwbGFzbWlkLiBEZXBlbmRpbmcgb24gdGhlIHJlc3VsdHMsIHRoZSBwbGFzbWlkIHdvdWxkIHJlbWFpbiBzdXBlcmNvaWxlZCBpZiB1bnRvdWNoZWQsIGJlY29tZSByZWxheGVkIGlmIG5pY2tlZCwgb3IgYmUgbGluZWFyaXplZCBpZiBjdXQgYnkgYW4gZW5kb251Y2xlYXNlLiBUbyBhbmFseXplIHRoZXNlIG91dGNvbWVzLCB3ZSB3b3VsZCBwZXJmb3JtIGdlbCBlbGVjdHJvcGhvcmVzaXMsIHdoZXJlIHRoZSBkaWZmZXJlbnQgY29uZm9ybWF0aW9ucyBvZiB0aGUgcGxhc21pZCAoc3VwZXJjb2lsZWQsIHJlbGF4ZWQsIG9yIGxpbmVhcml6ZWQpIHdvdWxkIG1pZ3JhdGUgZGlmZmVyZW50bHkgdGhyb3VnaCB0aGUgZ2VsLiBTdXBlcmNvaWxlZCBwbGFzbWlkcyB3b3VsZCBtaWdyYXRlIHRoZSBmdXJ0aGVzdCwgcmVsYXhlZCBwbGFzbWlkcyB3b3VsZCBtb3ZlIHRoZSBzbG93ZXN0LCBhbmQgbGluZWFyaXplZCBwbGFzbWlkcyB3b3VsZCBmYWxsIGJldHdlZW4gdGhlc2UgdHdvLiBBcyBjb250cm9scywgd2Ugd291bGQgaGF2ZSB1c2VkIHRoZSBwbGFzbWlkIGluIGl0cyB1bmN1dCBmb3JtLCBuaWNrZWQgYnkgbkNhczkgYW5kIGRpZ2VzdGVkIHVzaW5nIGEgcmVzdHJpY3Rpb24gZW56eW1lLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgd2UgY291bGQgaGF2ZSBwcm9jZWVkZWQgd2l0aCB0aGUgbmlja2FzZSBhc3NheXMsIHRoZSByZWFkb3V0IHdvdWxkIGFsbG93IHVzIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSB0ZXN0ZWQgcHJvdGVpbnMgZnVuY3Rpb24gYXMgbmlja2FzZXMsIGVuZG9udWNsZWFzZXMsIG9yIHJlbWFpbiBpbmFjdGl2ZS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL25pY2thc2UtYXNzYXkud2VicFwiIHN0eWxlPXt7aGVpZ2h0OlwiNzUlXCIsIHdpZHRoOlwiNzUlXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAxOjwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZW9yZXRpY2FsIGdlbCBlbGVjdHJvcGhvcmVzaXMgcmVzdWx0cyBmb3Igb3VyIG5pY2thc2UgYXNzYXkuIExhbmVzIDEgYW5kIDggcmVwcmVzZW50IG1vbGVjdWxhciB3ZWlnaHQgbGFkZGVycywgd2hpY2ggcHJvdmlkZSBzaXplIG1hcmtlcnMgZm9yIHRoZSBwbGFzbWlkIGZyYWdtZW50cy4gTGFuZSAyIGNvbnRhaW5zIHRoZSB1bnRyZWF0ZWQgcmVwb3J0ZXIgcGxhc21pZCwgd2hpY2ggcmVtYWlucyBzdXBlcmNvaWxlZCBhbmQgdHJhdmVscyB0aGUgZmFydGhlc3QgdGhyb3VnaCB0aGUgZ2VsLiBMYW5lIDMgc2VydmVzIGFzIGEgcG9zaXRpdmUgY29udHJvbCwgY29udGFpbmluZyBuQ2FzOSwgZ1JOQSwgYW5kIHRoZSByZXBvcnRlciBwbGFzbWlkLiBUaGUgbkNhczkgbmlja2FzZSBuaWNrcyB0aGUgcGxhc21pZCwgcmVsYXhpbmcgaXRzIHN0cnVjdHVyZSwgYW5kIGFzIGEgcmVzdWx0LCB0aGUgcmVsYXhlZCBjaXJjdWxhciBwbGFzbWlkIG1vdmVzIHNsb3dlciB0aGFuIHRoZSBzdXBlcmNvaWxlZCBmb3JtLiBMYW5lIDQgYWN0cyBhcyBhIG5lZ2F0aXZlIGNvbnRyb2wsIGNvbnRhaW5pbmcgYSByZXN0cmljdGlvbiBlbnp5bWUgYW5kIHRoZSByZXBvcnRlciBwbGFzbWlkLiBUaGUgZW56eW1lIGZ1bGx5IGN1dHMgdGhlIHBsYXNtaWQsIGxpbmVhcml6aW5nIGl0LCBhbmQgdGhpcyBsaW5lYXIgZm9ybSBtb3ZlcyBzbG93ZXIgdGhhbiB0aGUgc3VwZXJjb2lsZWQgcGxhc21pZCBidXQgZmFzdGVyIHRoYW4gdGhlIHJlbGF4ZWQgY2lyY3VsYXIgZm9ybS4gTGFuZSA1IGluY2x1ZGVzIENhc1ggYW5kIHRoZSByZXBvcnRlciBwbGFzbWlkIHdpdGhvdXQgZ1JOQSwgbWVhbmluZyBubyBjbGVhdmFnZSBvY2N1cnMsIGxlYXZpbmcgdGhlIHBsYXNtaWQgaW4gaXRzIHN1cGVyY29pbGVkIHN0YXRlLCB3aGljaCBtaWdyYXRlcyBzaW1pbGFybHkgdG8gdGhlIHVudHJlYXRlZCBwbGFzbWlkIGluIGxhbmUgMi4gTGFuZSA2IGNvbnRhaW5zIENhc1gsIGdSTkEsIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZCwgcmVzdWx0aW5nIGluIGZ1bGwgY2xlYXZhZ2UgYW5kIHBsYXNtaWQgbGluZWFyaXphdGlvbiwgY2F1c2luZyBpdCB0byBtaWdyYXRlIHNpbWlsYXJseSB0byB0aGUgbGluZWFyIHBsYXNtaWQgaW4gbGFuZSA0LiBGaW5hbGx5LCBsYW5lIDcgaW5jbHVkZXMgb3VyIG5pY2thc2UgY2FuZGlkYXRlIChlaXRoZXIgQ2FzWCBvciBTcHVGejEpLCBnUk5BLCBhbmQgdGhlIHJlcG9ydGVyIHBsYXNtaWQuIElkZWFsbHksIHRoZSBjYW5kaWRhdGUgd291bGQgbmljayB0aGUgcGxhc21pZCwgcmVzdWx0aW5nIGluIGEgcmVsYXhlZCBjaXJjdWxhciBmb3JtIHRoYXQgbW92ZXMgc2ltaWxhcmx5IHRvIHRoZSBuaWNrZWQgcGxhc21pZCBpbiBsYW5lIDMuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJuaWM2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIk9uZ29pbmc6IFNwdUZ6MSBleHByZXNzaW9uIGluIFllYXN0XCIgaWQ9XCJuaWM2aGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2hlbiB0YWxraW5nIHRvIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3NhaXRvJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1ha290byBTYWl0byA8L2E+LCBoZSB0b2xkIHVzIHRoYXQgZXhwcmVzc2luZyBTcHVGejEgaW4gRS4gY29saSBkaWQgbm90IHdvcmsgZm9yIGhpbS4gSGUgYWR2aXNlZCB1cyB0byBpbnN0ZWFkIGVzdGFibGlzaCBhIHllYXN0IGV4cHJlc3Npb24gc3lzdGVtLiBTaW5jZSBub25lIG9mIHVzIGhhZCBhbnkgZXhwZXJpZW5jZSB3aXRoIHVzaW5nIHllYXN0IGZvciBwcm90ZWluIHByb2R1Y3Rpb24sIHdlIHJlYWNoZWQgb3V0IHRvIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ25iZXJlbHNtYW5uJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE5pbHMgQmVyZWxzbWFubiA8L2E+IGF0IHRoZSBmYWN1bHR5IG9mIGNoZW1pc3RyeSBhdCBvdXIgdW5pdmVyc2l0eS4gSGUgd2FzIGFibGUgdG8gcHJvdmlkZSB1cyB3aXRoIGEgeWVhc3QgZXhwcmVzc2lvbiBzdHJhaW4gYXMgd2VsbCBhcyB0aGUgY29ycmVzcG9uZGluZyBleHByZXNzaW9uIHZlY3Rvci4gQmVjYXVzZSB3ZSB3ZXJlIHN0cm9uZ2x5IHJlc3RyaWN0ZWQgYnkgdGltZSBhdCB0aGF0IHBvaW50LCB3ZSB0aGVuIGFza2VkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2hha2FuJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IEhha2FuIFNveXRcdTAwRkNyayA8L2E+IGZyb20gdGhlIGJpb2xvZ2ljYWwgZmFjdWx0eSBmb3IgaGVscCBhbmQgaGUgb2ZmZXJlZCB0byBmYWNpbGl0YXRlIHRyYW5zZm9ybWF0aW9uIGFuZCBzZWxlY3Rpb24gb2YgcG9zaXRpdmUgWWVhc3QgdHJhbnNmb3JtYW50cyBmb3IgdXMuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgd29ya2Zsb3cgZm9yIGNsb25pbmcgU3B1RnoxIGFtcGxpZmljYXRlcyBpbnRvIHRoZSBwUElDOUsgeWVhc3QgdmVjdG9yIHdhcyBzaW1pbGFyIHRvIHRoZSBjbG9uaW5nIGludG8gdGhlIEUuIGNvbGkgZXhwcmVzc2lvbiB2ZWN0b3IuIEFmdGVyIG11bHRpcGxlIGF0dGVtcHRzIG9mIHRyYW5zZm9ybWF0aW9ucyBhbmQgY29sb255IFBDUnMgd2UgZm91bmQgcG9zaXRpdmUgY2xvbmVzIGZvciB0d28gb2YgdGhlIG5pY2thc2UgdmFyaWFudHMuIEhha2FuIHRyYW5zZm9ybWVkIHRoZW0gaW50byB0aGUgeWVhc3Qgc3RyYWluIGZvciB1cywgYnV0IG5vIGNvbG9uaWVzIGZvcm1lZCwgaW5kaWNhdGluZyB1bnN1Y2Nlc3NmdWwgdHJhbnNmb3JtYXRpb24uIER1ZSB0byB0aW1lIGNvbnN0cmFpbnRzLCB3ZSB3ZXJlIG5vdCBhYmxlIHRvIHJlcGVhdCB0aGUgY2xvbmluZy4gSG93ZXZlciwgdGVzdGluZyBvdXIgU3B1RnoxIGFuZCBhbHNvIENhc1ggbmlja2FzZSBjYW5kaWRhdGVzIGFuZCBldmVudHVhbGx5IHVzaW5nIHRoZW0gZm9yIHByaW1lIGVkaXRpbmcuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9jbG9uaW5nLXN0cmF0ZWd5LXNwdWZ6MS5wZGYnIG5hbWU9XCJjbG9uaW5nLXN0cmF0ZWd5LXNwdWZ6MS5wZGZcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdzZXBlcmF0b3ItMiBjb2wtMic+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9jbG9uaW5nLXN0cmF0ZWd5LXBsbWNhc3gucGRmJyBuYW1lPVwiY2xvbmluZy1zdHJhdGVneS1wbG1jYXN4LnBkZlwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9jbG9uaW5nLXN0cmF0ZWd5LWNhczkucGRmJyBuYW1lPVwiY2xvbmluZy1zdHJhdGVneS1jYXM5LnBkZidcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cInJlZmVyZW5jZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxFbmdOaWNrc291cmNlcy8+XG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgXCI+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsZWZ0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiUHJldmlvdXNcIiBvcGVuPVwicGVncm5hXCIgc2Nyb2xsVG9JZD1cInBlZ3JuYS1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJkZWxpdmVyeVwiIHNjcm9sbFRvSWQ9XCJkZWxpdmVyeS1oZWFkZXJcIi8+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5naW5uZWVyaW5ndGFiXCIgaWQ9XCJ0YWItZGVsaXZlcnlcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICA8c2VjdGlvbiBpZD1cIkRlbGl2ZXJ5IHNlY1wiID5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5nLWJveCBib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8SDIgaWQ9XCJkZWxpdmVyeS1oZWFkZXJcIiB0ZXh0PVwiRGVsaXZlcnlcIj48L0gyPlxuICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIGRlc2lnbiBwYXRoIG9mIG91ciBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZm9yIG1STkEgZGVsaXZlcnkgdW5kZXJ3ZW50IG11bHRpcGxlIGN5Y2xlcyBvZiByZXNlYXJjaCBhbmQgZGlzY3Vzc2lvbiwgbWFya2VkIGJ5IGltcG9ydGFudCBkZWNpc2lvbiBwb2ludHMgYW5kIGxlYXJuaW5ncyBhbG9uZyB0aGUgd2F5LiBCeSBvbmdvaW5nIGZ1cnRoZXIgaW1wcm92ZW1lbnQsIHdlIGRlc2lnbmVkIG91ciBsdW5ncy1zcGVjaWZpYyBMTlAgY2FsbGVkIEFpckJ1ZGR5IHdpdGggaW1wcm92ZWQgc3RhYmlsaXR5IGFzcGVjdHMsIGJlY29taW5nIG1vcmUgcHJlY2lzZSBpbiB0aGUgZGVsaXZlcnkgb2Ygb3VyIHRoZXJhcGV1dGljIGNhcmdvIExOUCBieSBMTlAuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYWlyYnVkZHkud2VicFwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHRcIn19Lz4gIFxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiZGVsMVwiPlxuICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJJdGVyYXRpb24gMSAtIEFWVnMgdnMgTE5Qc1wiIGlkPVwiZGVsMWhlYWRcIiAvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluaXRpYWxseSwgdGhpcyBwcm9qZWN0IHBhcnQgc3RhcnRlZCB3aXRoIGEgZGlzY3Vzc2lvbiB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2tyaXN0aWFuJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IFByb2YuIERyLiBLcmlzaXRhbiBNXHUwMEZDbGxlcjwvYT4sIFBJIG9mIG91ciB0ZWFtIHdpdGggZXhwZXJ0aXNlIGluIEFkZW5vLWFzc29jaWF0ZWQgdmlydXNlcyAoQUFWcyksIGZvY3VzaW5nIG9uIHdoZXRoZXIgdG8gcHVyc3VlIExOUHMgb3IgQUFWcyBmb3IgbVJOQSBkZWxpdmVyeS4gVGhlIGRlY2lkaW5nIGZhY3RvciBsZWFuZWQgdG93YXJkcyBMTlBzLCBhcyB0aGV5IG9mZmVyZWQgYSBzaWduaWZpY2FudCBhZHZhbnRhZ2VzIGluY2x1ZGluZyBsZXNzIGltbXVub2dlbmljIHBvdGVudGlhbDxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjFcIiBzY3JvbGxJZD1cImRlc2MtMVwiLz4gYW5kIGJpZ2dlciBsb2FkaW5nIGNhcGFjaXR5PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiMlwiIHNjcm9sbElkPVwiZGVzYy0yXCIvPi4gTE5QcyBsb2FkaW5nIGNhcGFjaXR5IGRlcGVuZHMgb24gdmFyaW91cyBmYWN0b3JzLCBidXQgaW4gZ2VuZXJhbCB0aGV5IG9mZmVyIGEgYmlnZ2VyIGNhcmdvIHNpemUgY29tcGFyZWQgdG8gNC43IGtiIGZvciBBVlZzPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiM1wiIHNjcm9sbElkPVwiZGVzYy0zXCIvPi4gVGhpcyBhbGxvd3MgdGhlIGRlbGl2ZXJ5IG9mIGJpZ2dlciBtUk5BIGNvbnN0cnVjdHMgY29tcGFyZWQgdG8gQUFWcywgd2hpY2ggaXMgbmVlZGVkIGZvciBvdXIgUHJpbWUgRWRpdGluZyBjb25zdHJ1Y3QuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignd2ViZXInLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBXb2xmLU1pY2hhZWwgV2ViZXIgYW5kIERyLiBKXHUwMEY2cmcgR3JvXHUwMERGZS1Pbm5lYnJpbms8L2E+IGZyb20gdGhlIFVLTSBpbiBNXHUwMEZDbnN0ZXIgd2VyZSBvdXIgZmlyc3QgcG9pbnQgb2YgY29udGFjdCBmb3IgdGhlIGRldmVsb3BtZW50IG9mIG91ciBMTlAgZm9yIENGVFIgdHJlYXRtZW50LiBNb3Jlb3ZlciwgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncmFkdWtpYycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBNYXJjbyBSYWR1a2ljIDwvYT5mb3JtIEJpZWxlZmVsZCBVbml2ZXJzaXR5IHByb3ZpZGVkIHVzIHdpdGggYSB2ZXJ5IHVzZWZ1bCBjYXJnbywgbmFtZWx5IG1pbmljaXJjbGUgRE5BIGNhcnJ5aW5nIHRoZSBFWUZQIGdlbmUgZnJvbSA8YSBocmVmPVwiaHR0cHM6Ly93d3cucGxhc21pZGZhY3RvcnkuY29tL2N1c3RvbS1kbmEvbWluaWNpcmNsZS1kbmEvXCIgdGl0bGU9XCJQbGFzbWlkRmFjdG9yeVwiID5QbGFzbWlkRmFjdG9yeTwvYT4gYXMgYSBwb3NpdGl2ZSBjb250cm9sIGZvciBvdXIgZXhwZXJpbWVudHMuIEhlIGFsc28gaGVscGVkIHVzIGVzdGFibGlzaCBwcm90b2NvbHMgZm9yIExOUCBzeW50aGVzaXMgYW5kIExOUCB0cmFuc2ZlY3Rpb24gaW4gb3VyIGxhYi48L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJkZWwyXCI+XG4gICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkludGVyYXRpb24gMiAtIENheW1hbiBMTlBcIiBpZD1cImRlbDJoZWFkXCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGUgZmlyc3QgZXhwZXJpbWVudGFsIHBoYXNlLCBMTlBzIGZyb20gPHN0cm9uZz5DYXltYW4gQ2hlbWljYWwgTE5QIEV4cGxvcmF0aW9uIEtpdCAoTE5QLTEwMik8L3N0cm9uZz4gY29uc2lzdGluZyBvZiBTTS0xMDIsIDEsMi1EU1BDLCBjaG9sZXN0ZXJvbCwgYW5kIERNRy1QRUcoMjAwMCk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItZGVsaXZlcnlcIiBudW09XCI0XCIgc2Nyb2xsSWQ9XCJkZXNjLTRcIi8+IHdlcmUgdGVzdGVkIHdpdGggbVJOQSBlbmNvZGluZyBmbHVvcmVzY2VudCBwcm90ZWluIHRvIGV2YWx1YXRlIHRoZWlyIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBIb3dldmVyLCB0aGUgcmVzdWx0cyBzaG93ZWQgbG93IHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LCBhbmQgdGhlIHBhcnRpY2xlcyBkaWQgbm90IHNob3cgc3BlY2lmaWNpdHkgZm9yIHRoZSBsdW5ncywgd2hpY2ggd2FzIGEgY3JpdGljYWwgcmVxdWlyZW1lbnQgZm9yIHRoZSBwcm9qZWN0LiBUaGlzIGxlZCB0aGUgdGVhbSB0byByZWNvbnNpZGVyIHRoZSBjaG9pY2Ugb2YgdGhlIExOUC5cbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvY2F5bWFuLWxucC1mcmVpZ2VzdGVsbHQud2VicFwiIGFsdD1cIkNheW1hbiBMTlBcIi8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDEuPC9iPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgU2NoZW1hdGljIHZpZXcgb2YgTE5QLTEwMiBmcm9tIENheW1hbiBDaGVtaWNhbFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImRlbDNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiSW50ZXJhdGlvbiAzIC0gQ29yZGVuIExOUFwiIGlkPVwiZGVsM2hlYWRcIiAvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBuZXh0IHBoYXNlLCB3ZSBjaG9zZSB0byB1c2UgYSBuZXcgTE5QIGZvcm11bGF0aW9uLCBuYW1lbHkgdGhlIDxzdHJvbmc+TE5QIFN0YXJ0ZXIgS2l0ICMyPC9zdHJvbmc+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiNVwiIHNjcm9sbElkPVwiZGVzYy01XCIvPiBvZiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdjb3JkZW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Db3JkZW4gUGhhcm1hPC9hPiwgYmVjYXVzZSBpdCBvZmZlcmVkIHNldmVyYWwgYWR2YW50YWdlcyBvdmVyIHRoZSBpbml0aWFsIG9wdGlvbi4gVGhlIGtleSBiZW5lZml0IG9mIHRoaXMgbmV3IExOUCBsaWVzIGluIHRoZSB1c2Ugb2YgRE9UQVAsIGEgY2F0aW9uaWMgbGlwaWQgdGhhdCBlbmhhbmNlcyBpbnRlcmFjdGlvbiB3aXRoIG5lZ2F0aXZlbHkgY2hhcmdlZCBjZWxsIG1lbWJyYW5lcyBpbiB0aGUgbHVuZ3MsIGltcHJvdmluZyBjZWxsdWxhciB1cHRha2UgZWZmaWNpZW5jeS4gV2hpbGUgU00tMTAyIGluIHRoZSBDYXltYW4gTE5QLTEwMiBpcyBlZmZlY3RpdmUgZm9yIHN5c3RlbWljIGRlbGl2ZXJ5LCBpdCBsYWNrcyB0aGUgc2FtZSBzcGVjaWZpY2l0eSBmb3IgbHVuZyB0aXNzdWUuIEFkZGl0aW9uYWxseSwgQ29yZGVuIFBoYXJtYVx1MjAxOXMgcGxhbnQtYmFzZWQgQm90YW5pQ2hvbFx1MDBBRSBwcmV2ZW50cyBhbmltYWwtc291cmNlZCBjb250YW1pbmF0aW9uIGFuZCBoZWxwcyBhZGRyZXNzIHRoZSBnbG9iYWwgbGlwaWQgc2hvcnRhZ2UgZm9yIHZhY2NpbmUgcHJvZHVjdGlvbi4gbVBFRy0yMDAwLURTUEUgcHJvdmlkZXMgc3VwZXJpb3Igc3RhYmlsaXR5IGFuZCByZWR1Y2VzIGltbXVuZSBzeXN0ZW0gYWN0aXZhdGlvbiBvdmVyIHRpbWUsIG1ha2luZyBpdCBwYXJ0aWN1bGFybHkgc3VpdGFibGUgZm9yIHB1bG1vbmFyeSBkZWxpdmVyeS4gIFRoaXMgbWFkZSB0aGUgbmV3IGZvcm11bGF0aW9uIGEgYmV0dGVyIGNob2ljZSBmb3Igc2FmZWx5IGFuZCBlZmZlY3RpdmVseSB0YXJnZXRpbmcgbHVuZyB0aXNzdWUsIGVzcGVjaWFsbHkgaW4gZGVsaXZlcmluZyB0aGVyYXBpZXMgZm9yIENGVFItcmVsYXRlZCBkaXNlYXNlcy4gRHVyaW5nIHRoaXMgdGltZSwgdGhlIHRlYW0gZW5jb3VudGVyZWQgYSBwYXBlciBvbiBjYXBzYWljaW4tY2hpdG9zYW4gbmFub3BhcnRpY2xlcywgd2hpY2ggZXhwbG9yZWQgaXRzIHVzZSBpbiB0YXJnZXRlZCBkZWxpdmVyeSBhbmQgaGlnaGVyIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBIb3dldmVyLCBhZnRlciBmdXJ0aGVyIGludmVzdGlnYXRpb24gYW5kIGNvbnN1bHRhdGlvbiBvZiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdrb2xvbmtvZmlyc3QnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gS2F0aGFyaW5hIEtvbG9ua288L2E+LCBpdCB3YXMgZGV0ZXJtaW5lZCB0aGF0IGNhcHNhaWNpbiB3YXMgbm90IHN1aXRhYmxlIGZvciBvdXIgcGxhbm5lZCBwdWxtb25hcnkgYXBwbGljYXRpb24uIFxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9jb3JkZW4tbG5wLWZyZWlnZXN0ZWxsdC53ZWJwXCIgYWx0PVwiQ29yZGVuIExOUFwiLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgMi48L2I+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICBTY2hlbWF0aWMgdmlldyBvZiBMTlAgIzIgZnJvbSBDb3JkZW4gUGhhcm1hIHdpdGggRE9UQVAgYXMgY2F0aW9uaWMgbGlwaWQsIERTUEMgYXMgcGhvc3Bob2xpcGlkIGFuZCBtUEVHLTIwMC1EU1BFIGFzIFBFRyBsaXBpZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJkZWw0XCI+XG4gICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkludGVyYXRpb24gNCAtIFNwcmF5LWRyaWVkIFNPUlQgTE5QIGNhbGxlZCBBaXJidWRkeVwiIGlkPVwiZGVsNGhlYWRcIiAvPiBcbiAgICAgICAgICAgICAgICAgICAgIFRoZSBuZXh0IGRlc2lnbiBpdGVyYXRpb24gaW5jb3Jwb3JhdGVkIHRoZSBpbnNpZ2h0cyBmcm9tIFdhbmcncyBMTlAgd29yayBmb3IgYnVpbGRpbmcgdXBvbiBTT1JUIHByaW5jaXBsZXMgdG8gbWFrZSB0aGUgbmFub3BhcnRpY2xlcyBsdW5nLXNwZWNpZmljPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiNlwiIHNjcm9sbElkPVwiZGVzYy02XCIvPi4gVGhlIG1haW4gY29tcG9uZW50cyBpbmNsdWRlIERNRy1QRUcgMjAwMCwgY2hvbGVzdGVyb2wsIERPUEUgYW5kIERPVEFQIGFzIHBob3NwaG9saXBpZHMgYW5kIGNhdGlvbmljIGxpcGlkcyBzdWNoIGFzIDRBMy1TQzguIEluIG91ciBMTlAgZGV2ZWxvcG1lbnQsIHdlIGNhcmVmdWxseSBjb25zaWRlcmVkIHRoZSB1c2Ugb2YgUEVHLiBXaGlsZSBQRUcgY2FuIGltcHJvdmUgc3RhYmlsaXR5LCBpdCBjYW4gYWxzbyByZWR1Y2UgY2VsbHVsYXIgdXB0YWtlIGFuZCBpbmR1Y2UgaW1tdW5lIHJlc3BvbnNlcywgbmVjZXNzaXRhdGluZyBhIGJhbGFuY2VkIGFwcHJvYWNoIHRvIGl0cyBpbmNsdXNpb248VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItZGVsaXZlcnlcIiBudW09XCI3XCIgc2Nyb2xsSWQ9XCJkZXNjLTdcIi8+LlxuICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiQ29sMVwiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkFtYml2YWxlbmNlIG9mIFBFRyBhbmQgb3VyIGltcGxlbWVudGF0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiV2hhdCBpcyBQRUcgYW5kIHdoeSBpcyBpdCBpbXBvcnRhbnQgZm9yIExOUHM/XCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICBQb2x5ZXRoeWxlbmUgZ2x5Y29sIChQRUcpIGlzIGFuIGVzc2VudGlhbCBjb21wb25lbnQgaW4gdGhlIGZvcm11bGF0aW9uIG9mIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCB3aGljaCBhcmUgd2lkZWx5IHVzZWQgaW4gZHJ1ZyBkZWxpdmVyeSBzeXN0ZW1zLCBwYXJ0aWN1bGFybHkgZm9yIG1STkEtYmFzZWQgdGhlcmFwaWVzIGxpa2UgdmFjY2luZXMuIFBFRy1saXBpZHMgYXJlIGh5YnJpZCBtb2xlY3VsZXMgY29uc2lzdGluZyBvZiBhIGh5ZHJvcGhpbGljIFBFRyBjaGFpbiBhdHRhY2hlZCB0byBhIGh5ZHJvcGhvYmljIGxpcGlkIGFuY2hvci4gVGhpcyB1bmlxdWUgc3RydWN0dXJlIGVuYWJsZXMgUEVHLWxpcGlkcyB0byBpbnRlcmFjdCBlZmZlY3RpdmVseSB3aXRoIGJvdGggYXF1ZW91cyBlbnZpcm9ubWVudHMgYW5kIGxpcGlkIHN0cnVjdHVyZXMsIHN1Y2ggYXMgY2VsbCBtZW1icmFuZXMgYW5kIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdGhlbXNlbHZlcy4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5QRUd5bGF0aW9uXHUyMDE0YXR0YWNoaW5nIFBFRyB0byBsaXBpZHNcdTIwMTRwcm92aWRlcyBudW1lcm91cyBiZW5lZml0cy4gSXQgaW5jcmVhc2VzIHRoZSBzdGFiaWxpdHkgb2YgTE5QcyBieSBmb3JtaW5nIGEgcHJvdGVjdGl2ZSBvdXRlciBsYXllciwgcHJldmVudGluZyBhZ2dyZWdhdGlvbiwgZXh0ZW5kaW5nIGNpcmN1bGF0aW9uIHRpbWUgaW4gdGhlIGJsb29kc3RyZWFtLCBhbmQgcmVkdWNpbmcgaW1tdW5lIHN5c3RlbSBkZXRlY3Rpb24uIFRoZXNlIGFkdmFudGFnZXMgYXJlIGNyaXRpY2FsIGluIGVuc3VyaW5nIHRoYXQgdGhlIExOUHMgcmVhY2ggdGhlaXIgdGFyZ2V0IGNlbGxzIGFuZCBkZWxpdmVyIHRoZSB0aGVyYXBldXRpYyBwYXlsb2FkIGVmZmVjdGl2ZWx5LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIldoeSBpcyBQRUcgcmVsZXZhbnQgZm9yIExOUHMgaW4gbVJOQSBkZWxpdmVyeT9cIiBpZD1cInRleHRcIiAvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFBFRyBpbXByb3ZlcyB0aGUgcGhhcm1hY29raW5ldGljcyBvZiBMTlBzIGJ5IGV4dGVuZGluZyB0aGVpciBzeXN0ZW1pYyBjaXJjdWxhdGlvbiB0aW1lLCB3aGljaCBpcyBjcnVjaWFsIGZvciB0aGVyYXBpZXMgbGlrZSBtUk5BIHZhY2NpbmVzLCB3aGVyZSB0aGUgbmFub3BhcnRpY2xlcyBtdXN0IHJlbWFpbiBpbiB0aGUgYmxvb2RzdHJlYW0gbG9uZyBlbm91Z2ggdG8gcmVhY2ggdGhlaXIgdGFyZ2V0IGNlbGxzLiBBZGRpdGlvbmFsbHksIFBFRy1saXBpZHMgY2FuIHJlZHVjZSB0aGUgc2l6ZSBvZiBMTlBzLCBlbmhhbmNpbmcgdGhlaXIgYWJpbGl0eSB0byBwZW5ldHJhdGUgY2VsbCBtZW1icmFuZXMgYW5kIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIG1hdGVyaWFsIGVmZmljaWVudGx5LiBIb3dldmVyLCBhIGJhbGFuY2UgbXVzdCBiZSBzdHJ1Y2suIEluY3JlYXNpbmcgUEVHIGNvbnRlbnQgY2FuIGxlYWQgdG8gc21hbGxlciwgbW9yZSBzdGFibGUgcGFydGljbGVzLCBidXQgaXQgbWF5IGFsc28gcmVkdWNlIGludHJhY2VsbHVsYXIgZGVsaXZlcnkgYW5kIHByb3RlaW4gZXhwcmVzc2lvbi4gVGhlcmVmb3JlLCB3aGlsZSBQRUcgYm9vc3RzIGNpcmN1bGF0aW9uIGFuZCBzdGFiaWxpdHksIHRvbyBtdWNoIGNhbiBoaW5kZXIgdGhlcmFwZXV0aWMgZWZmZWN0aXZlbmVzcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ3l0b3RveGljaXR5IGFuZCBtUEVHLTIwMDAtRFNQRVwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgT25lIGNoYWxsZW5nZSB3aXRoIFBFR3lsYXRpb24gaXMgdGhlIHBvdGVudGlhbCBmb3IgaW1tdW5lIHJlc3BvbnNlcywgc3VjaCBhcyB0aGUgPGk+YWNjZWxlcmF0ZWQgYmxvb2QgY2xlYXJhbmNlPC9pPiAoQUJDKSBwaGVub21lbm9uLCB3aGVyZSByZXBlYXRlZCBleHBvc3VyZSB0byBQRUd5bGF0ZWQgcGFydGljbGVzIGxlYWRzIHRvIGZhc3RlciBjbGVhcmFuY2UgYnkgdGhlIGltbXVuZSBzeXN0ZW0uIFRoZXJlIGFyZSBhbHNvIHJpc2tzIG9mIGh5cGVyc2Vuc2l0aXZpdHkgcmVhY3Rpb25zIGxpa2UgPGk+Y29tcGxlbWVudCBhY3RpdmF0aW9uLXJlbGF0ZWQgcHNldWRvYWxsZXJneTwvaT4gKENBUlBBKS4gVGh1cywgc2VsZWN0aW5nIHRoZSByaWdodCBQRUctbGlwaWQgdHlwZSBpcyBlc3NlbnRpYWwgdG8gbWl0aWdhdGUgdGhlc2Ugcmlza3MuXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5XZSBjb2xsYWJvcmF0ZWQgd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdjb3JkZW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Db3JkZW4gUGhhcm1hPC9hPiwgYSBzcGVjaWFsaXN0IGluIExOUCB0ZWNobm9sb2dpZXMsIHRvIGFkZHJlc3MgdGhlc2UgY29uY2VybnMuIEJhc2VkIG9uIHRoZWlyIHJlY29tbWVuZGF0aW9ucywgd2Ugb3B0ZWQgZm9yIDxzdHJvbmc+bVBFRy0yMDAwLURTUEU8L3N0cm9uZz4gYXMgb3VyIFBFRy1saXBpZCBvZiBjaG9pY2UuIFRoaXMgdmFyaWFudCBtaW5pbWl6ZXMgY3l0b3RveGljaXR5IHdoaWxlIHByb3ZpZGluZyBleGNlbGxlbnQgc3RhYmlsaXR5IGFuZCBjaXJjdWxhdGlvbiB0aW1lLiBJdCBoYXMgYWxzbyBwcm92ZW4gZWZmZWN0aXZlIGluIHJlZHVjaW5nIGltbXVuZS1yZWxhdGVkIHNpZGUgZWZmZWN0cyB3aGlsZSBwcmVzZXJ2aW5nIHRoZSBpbnRlZ3JpdHkgYW5kIHBlcmZvcm1hbmNlIG9mIG91ciBuYW5vcGFydGljbGVzLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRNRy1QRUcyMDAwIHZzIG1QRUctMjAwMC1EU1BFXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSBtUEVHLTIwMDAtRFNQRSBoYXMgdHJhZGl0aW9uYWxseSBiZWVuIHVzZWQgZm9yIHN0YWJpbGl6aW5nIExOUHMgYW5kIGVuaGFuY2luZyBkZWxpdmVyeSBlZmZpY2llbmN5LCB3ZSBkZWNpZGVkIHRvIGluY29ycG9yYXRlIERNRy1QRUcyMDAwIGludG8gb3VyIFNPUlQgTE5QLWJhc2VkIEFpckJ1ZGR5IGR1ZSB0byBpdHMgc3VwZXJpb3IgcHJvcGVydGllcy4gRE1HLVBFRzIwMDAgb2ZmZXJzIGJldHRlciBiaW9kZWdyYWRhYmlsaXR5IGFuZCBlbmhhbmNlZCBzdGFiaWxpdHkgaW4gcHVsbW9uYXJ5IGFwcGxpY2F0aW9ucy4gVW5saWtlIG1QRUctMjAwMC1EU1BFLCB3aGljaCB0ZW5kcyB0byBhY2N1bXVsYXRlIGluIHRoZSBib2R5IGFuZCBtYXkgbGVhZCB0byBpbW11bmUgYWN0aXZhdGlvbiBvdmVyIHRpbWUsIERNRy1QRUcyMDAwIGlzIGtub3duIGZvciBpdHMgZmFzdGVyIGNsZWFyYW5jZSBhbmQgcmVkdWNlZCBwb3RlbnRpYWwgZm9yIGxvbmctdGVybSB0b3hpY2l0eS4gRm9yIGx1bmctc3BlY2lmaWMgZGVsaXZlcnksIHdoZXJlIHN0YWJpbGl0eSBhbmQgc2FmZXR5IGFyZSBjcml0aWNhbCwgRE1HLVBFRzIwMDAgZW5zdXJlcyB0aGF0IHRoZSBuYW5vcGFydGljbGVzIHJlbWFpbiBzdGFibGUgbG9uZyBlbm91Z2ggdG8gZGVsaXZlciB0aGUgdGhlcmFwZXV0aWMgbWF0ZXJpYWwgZWZmZWN0aXZlbHksIGJ1dCBhbHNvIGRlZ3JhZGUgYXQgYSByYXRlIHRoYXQgbWluaW1pemVzIHVud2FudGVkIGltbXVuZSByZXNwb25zZXMuIFRoaXMgbWFrZXMgRE1HLVBFRzIwMDAgYSBtb3JlIHN1aXRhYmxlIGNob2ljZSBmb3IgdGhlcmFwaWVzIHRhcmdldGluZyBDRlRSLXJlbGF0ZWQgZGlzZWFzZXMsIHdoZXJlIHByZWNpc2UgYW5kIHNhZmUgZGVsaXZlcnkgdG8gdGhlIGx1bmdzIGlzIGVzc2VudGlhbCBmb3IgdHJlYXRtZW50IHN1Y2Nlc3MuIFxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+RGV0YWlscyBhYm91dCB0aGUgYmlvc2FmZXR5IGFzcGVjdHMgb2Ygb3VyIExOUCBjYW4gYmUgcmVhZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ3NvcnQtbG5wLWFuZC1jeXRvdG94aWNpdHknLCAnL3NhZmV0eScpfT4gaGVyZSA8L2E+LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ29uY2x1c2lvblwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgV2UgdXNlIERNRy1QRUcyMDAwIGluIG91ciBTT1JUIExOUC1iYXNlZCBBaXJCdWRkeSBiZWNhdXNlIG9mIGl0cyBzdXBlcmlvciBiaW9kZWdyYWRhYmlsaXR5LCBlbmhhbmNlZCBzdGFiaWxpdHksIGFuZCByZWR1Y2VkIHJpc2sgb2YgaW1tdW5lIHN5c3RlbSBhY3RpdmF0aW9uLiBCeSBidWlsZGluZyBvbiBpbnNpZ2h0cyBmcm9tIGV4cGVydHMgYW5kIGluY29ycG9yYXRpbmcgcHJpbmNpcGxlcyBmcm9tIFdhbmdcdTIwMTlzIExOUCB3b3JrLCB3ZVx1MjAxOXZlIHRhaWxvcmVkIG91ciBuYW5vcGFydGljbGVzIGZvciBsdW5nLXNwZWNpZmljIGRlbGl2ZXJ5LiBUaGlzIGNob2ljZSBlbnN1cmVzIHRoYXQgb3VyIGZvcm11bGF0aW9ucyByZW1haW4gc3RhYmxlIGxvbmcgZW5vdWdoIHRvIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIHBheWxvYWQgZWZmZWN0aXZlbHkgd2hpbGUgbWluaW1pemluZyBwb3RlbnRpYWwgbG9uZy10ZXJtIHRveGljaXR5LiBUaGlzIGJhbGFuY2UgaXMgY3J1Y2lhbCBmb3IgcHVsbW9uYXJ5IGFwcGxpY2F0aW9ucywgd2hlcmUgRE1HLVBFRzIwMDAgb3V0cGVyZm9ybXMgYWx0ZXJuYXRpdmVzIGxpa2UgbVBFRy0yMDAwLURTUEUsIG1ha2luZyBpdCB0aGUgaWRlYWwgY2hvaWNlIGZvciB0cmVhdGluZyBDRlRSLXJlbGF0ZWQgbHVuZyBkaXNlYXNlcy4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgICAgICAgPHA+RE1HLVBFRzIwMDAgb2YgdGhlIFNPUlQgTE5QIG9mZmVycyBiZXR0ZXIgYmlvZGVncmFkYWJpbGl0eSBhbmQgZW5oYW5jZWQgc3RhYmlsaXR5IGluIHB1bG1vbmFyeSBhcHBsaWNhdGlvbnMgLSBpdCBpcyBrbm93biBmb3IgaXRzIGZhc3RlciBjbGVhcmFuY2UgYW5kIHJlZHVjZWQgcG90ZW50aWFsIGZvciBsb25nLXRlcm0gdG94aWNpdHkuIFRvIGVuc3VyZSB3ZSBhZGRyZXNzZWQgdGhpcyBpc3N1ZSwgY3l0b3RveGljaXR5IHRlc3RzIHdlcmUgcGVyZm9ybWVkIGluIGFkZGl0aW9uIHRvIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHBoeXNpY2FsIHByb3BlcnRpZXMgaW4gY29vcGVyYXRpb24gd2l0aCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmlvcGh5c2lrJywgJy9odW1hbi1wcmFjdGljZXMnKX0+UGh5c2ljYWwgYW5kIEJpb3BoeXNpY2FsIENoZW1pc3RyeSB3b3JraW5nIGdyb3VwIG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5PC9hPiB0byBjaGFyYWN0ZXJpemUgdGhlIExOUHMuIE1vcmUgZGV0YWlscyBhYm91dCB0aGUgY29tcG9zaXRpb24gb2YgdGhlIFNPUlQgTE5QcyBhbmQgZnVuY3Rpb24gb2YgdGhlIGNvbXBvbmVudHMgY2FuIGJlIHJlYWQgYmVsb3cuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9zb3J0LWxucC1mcmVpZ2VzdGVsbHQud2VicFwiIGFsdD1cIkFpckJ1dWR5XCIvPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAzLjwvYj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFNjaGVtYXRpYyB2aWV3IG9mIG91ciBsdW5nLXNwZWNpZmljIFNPUlQgTE5QIGNhbGxlZCBBaXJCdWRkeS5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDb2wyXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ29tcG9zaXRpb24gb2Ygb3VyIFNPUlQgTE5QIGNhbGxlZCBBaXJidWRkeSAvLyBMTlAgSGFuZGJvb2sgQ29vcGVyYXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ29tcG9uZW50cyBvZiBBaXJCdWRkeVwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJJb25pemFibGUgTGlwaWRcIiBpZD1cInRleHRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByaW1hcnkgaW5ncmVkaWVudCwgNEEzLVNDOCBvciBNQzMsIGFyZSBpb25pemFibGUgY2F0aW9uaWMgbGlwaWRzIHRoYXQgZm9ybXMgdGhlIGNvcmUgb2YgdGhlIExOUC4gSW9uaXphYmxlIGNhdGlvbmljIGxpcGlkcyBiZWNvbWUgcG9zaXRpdmVseSBjaGFyZ2VkIGluIGFjaWRpYyBlbnZpcm9ubWVudHMsIHN1Y2ggYXMgd2hlbiBhIHBIIGNoYW5nZSBvY2N1cnMgZm9yIGV4YW1wbGUgaW4gYWNpZGljIGJ1ZmZlcnMgb3IgaW4gdGhlIGVuZG9zb21lLiBUaGlzIGFsbG93cyB0aGVtIHRvIGJpbmQgdG8gbmVnYXRpdmVseSBjaGFyZ2VkIG51Y2xlaWMgYWNpZHMgYW5kIGZvcm0gcHJvdGVjdGl2ZSBjYXBzdWxlcyBhcm91bmQgaXQuIEluIHRoZSBlbmRvc29tZSB0aGVzZSBsaXBpZHMgZmFjaWxpdGF0ZSBlbmRvc29tYWwgZXNjYXBlIHRocm91Z2ggZWxlY3Ryb3N0YXRpYyBpbnRlcmFjdGlvbnMgYmV0d2VlbiB0aGUgTE5QcyBhbmQgdGhlIGVuZG9zb21hbCBvciBjZWxsdWxhciBtZW1icmFuZXMuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJIZWxwZXIgTGlwaWRzXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5ET1RBUCAoRGlvbGVveWx0cmltZXRoeWwtYW1tb25pdW0gcHJvcGFuZSkgaXMgYSBjYXRpb25pYyBsaXBpZCB0aGF0IG1ha2VzIHVwIDUwICUgb2YgdGhlIHRvdGFsIG1vbGFyIGxpcGlkIHJhdGlvLiBJdCBwbGF5cyBhIGNydWNpYWwgcm9sZSBpbiBiaW5kaW5nIHRvIHRoZSBuZWdhdGl2ZWx5IGNoYXJnZWQgc3VyZmFjZSBvZiBsdW5nIGVwaXRoZWxpYWwgY2VsbHMuIFRoaXMgZW5oYW5jZXMgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgYW5kIGhlbHBzIG1ha2UgdGhlIExOUCBmb3JtdWxhdGlvbiBtb3JlIGx1bmctc3BlY2lmaWMsIGltcHJvdmluZyB0YXJnZXRlZCBkZWxpdmVyeS4gVGhlIG5ldXRyYWwgaGVscGVyIGxpcGlkIERPUEUgKERpb2xlb3lscGhvc3BoYXRpZHlsZXRoYW5vbGFtaW5lKSBlbmhhbmNlcyBlbmRvc29tYWwgZXNjYXBlIGJ5IGZ1c2luZyB3aXRoIHRoZSBlbmRvc29tYWwgbWVtYnJhbmUgYW5kIGltcHJvdmVzIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LjwvcD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlN0ZXJvbFwiIGlkPVwidGV4dFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5DaG9sZXN0ZXJvbCwgaXMgYW4gaW1wb3J0YW50IGNhdGlvbmljIGxpcGlkLCBwcm92aWRpbmcgc3RydWN0dXJhbCBzdGFiaWxpdHksIGZsdWlkaXR5IGFuZCBwZXJtZWFiaWxpdHkgdG8gdGhlIExOUHMsIHRoZXJlYnkgaW1wcm92aW5nIHRoZWlyIG92ZXJhbGwgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUEVHeWxhdGVkIExpcGlkc1wiIGlkPVwidGV4dFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5ETUctUEVHIChEaW15cmlzdG95bGdseWNlcmluLXBvbHlldGh5bGVuZWdseWNvbCkgaXMgYW4gaW1wb3J0YW50IGNvbXBvbmVudCBieSBpbXByb3ZpbmcgdGhlIExOUCBzdGFiaWxpdHkgYW5kIHByZXZlbnRpbmcgYWdncmVnYXRpb24gb2YgdGhlIExOUHMuICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlByb2R1Y3Rpb24gTWV0aG9kc1wiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJMTlAgQXNzZW1ibHlcIiBpZD1cInRleHRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk91ciBMTlAgY2FuIGJlIGZvcm11bGF0ZWQgdXNpbmcgdmFyaW91cyBtZXRob2RzIGRlcGVuZGluZyBvbiB0aGUgc2NhbGUgb2YgcHJvZHVjdGlvbiwgaW5jbHVkaW5nIHBpcGV0dGUgbWl4aW5nLCB2b3J0ZXggbWl4aW5nLCBvciBtaWNyb2ZsdWlkaWMgbWl4aW5nLiBGb3IgY2FyZ28gcHJvdGVjdGlvbiB0aGUgbVJOQSBjYW4gYmUgbWl4ZWQgd2l0aCBjaGl0b3NhbiBmb3Igc3RhYmlsaXR5IGltcHJvdmVtZW50IGJlZm9yZSBhZGRpbmcgd2l0aCB0aGUgTE5QIGNvbXBvbmVudHMuIEFmdGVyIG1peGluZyB0aGUgbGlwaWRzIHdpdGggbVJOQSBpbiBjYXJlZnVsbHkgY29udHJvbGxlZCByYXRpb3MsIHRoZSBtaXh0dXJlIGlzIHR5cGljYWxseSBkaWFseXplZCB0byByZW1vdmUgb3JnYW5pYyBzb2x2ZW50cyBsaWtlIGV0aGFub2wgYW5kIGNpdHJhdGUgYnVmZmVyLiBUaGUgY2hvaWNlIG9mIGxpcGlkIGNvbXBvc2l0aW9uIGFuZCBwcmVwYXJhdGlvbiBtZXRob2QgaW5mbHVlbmNlcyB0aGUgdGlzc3VlLXRhcmdldGluZyBjYXBhYmlsaXRpZXMgb2YgdGhlIExOUHMsIGFsbG93aW5nIGZvciBzZWxlY3RpdmUgZGVsaXZlcnkgdG8gb3JnYW5zIGxpa2UgdGhlIGxpdmVyLCBsdW5ncywgb3Igc3BsZWVuLiBGb3IgbW9yZSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBvbiBmb3JtdWxhdGlvbiBtZXRob2RzIGFuZCBsaXBpZCBzZWxlY3Rpb24sIHJlZmVyIHRvIG91ciBMTlAgSGFuZGJvb2sgZGVpZ25lZCBpbiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ2hhbmRib29rJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IGNvb3BlcmF0aW9uIHdpdGggaUdFTSBUZWFtIExpbmtcdTAwRjZwaW5nIDwvYT4gYW5kIG90aGVycy48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+Q2xpY2sgdGhpcyBCdXR0b24gdG8gZ2FpbiB0aGUgTE5QIEhhbmRib29rPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPERvd25sb2FkTGluayB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTM4Ny9saXBvc29tZXMtaGFuZGJvb2sucGRmXCIgZmlsZU5hbWU9XCJsaXBvc29tZXMtaGFuZGJvb2sucGRmXCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlNwcmF5IGRyeWluZyBQcm9jZWR1cmVcIiBpZD1cInRleHRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkJ5IGNvbWJpbmluZyB0aGVzZSBjb21wb25lbnRzIHdpdGggdGhlIHNwcmF5IGRyeWluZyBtZXRob2QgZnJvbSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ3JuaGFsZScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBSTmhhbGUgPC9hPiB3ZSBvZmZlciBhIHZlcnNhdGlsZSBhbmQgZWZmaWNpZW50IG1ldGhvZCBmb3IgZGVsaXZlcmluZyBtUk5BIHRoZXJhcGV1dGljcyB0byB0aGUgbHVuZywgcGF2aW5nIHRoZSB3YXkgZm9yIGdlbmUgdGhlcmFweSwgZXNwZWNpYWxseSBvdXIgUHJpbWUgR3VpZGUuIFRoZSBlZmZlY3RpdmUgZGVsaXZlcnkgb2YgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCBpcyBhIGNydWNpYWwgcG9pbnQgaW4gb3VyIHByb2plY3QuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiU3RvcmFnZVwiIGlkPVwidGV4dFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgZmluYWwgTE5QIHNvbHV0aW9uIGNhbiBiZSBzdG9yZWQgYXQgNCBcdTAwQjBDIGZvciBhIGZldyBkYXlzLiBJdCBpcyByZWNvbW1lbmRlZCB0byB1c2UgdGhlIGZvcm11bGF0ZWQgTE5QcyBhcyBzb29uIGFzIHBvc3NpYmxlIHRvIG1haW50YWluIGNvbnNpc3RlbnQgcmVzdWx0cy4gU3RvcmFnZSBhdCBSVCBpcyBub3QgcmVjb21tZW5kZWQuIFN0b3JhZ2UgYXQgZnJlZXppbmcgdGVtcGVyYXR1cmVzIGlzIGFsc28gbm90IHJlY29tbWVuZGVkIHVubGVzcyBvcHRpbWl6ZWQgY3J5b3Byb3RlY3RhbnRzIGFyZSB1c2VkLjwvcD5cblxuICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBmaW5hbCBpbm5vdmF0aW9uIGZvciBvdXIgTE5QIHRvIGJlY29tZSA8c3Ryb25nPkFpckJ1ZGR5PC9zdHJvbmc+IGNhbWUgdGhyb3VnaCBjb25zdWx0YXRpb24gd2l0aCBCZW5qYW1pbiBXaW5rZWxqYW5uIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncm5oYWxlJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IFJOaGFsZTwvYT4sIHdoZXJlIHRoZSB1c2Ugb2Ygc3ByYXktZHJ5aW5nIHRlY2huaXF1ZXMgd2FzIGRpc2N1c3NlZC4gU3ByYXktZHJ5aW5nIHRoZSBMTlBzLCBpbnN0ZWFkIG9mIHVzaW5nIHRyYWRpdGlvbmFsIG1ldGhvZHMsIGhlbHBzIGltcHJvdmUgc3RhYmlsaXR5IGFuZCBlY28tZnJpZW5kbGluZXNzIG9mIHRoZSBwcm9kdWN0PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiOFwiIHNjcm9sbElkPVwiZGVzYy04XCIvPi4gVW5mb3J0dW5hdGVseSwgd2Ugd2VyZSBub3QgaW4gdGltZSBmb3Igb3VyIHNhbXBsZXMgdG8gYmUgZGVsaXZlcmVkIHRvIFJOaGFsZSBmb3Igc3ByYXktZHJ5aW5nIGJlZm9yZSB0aGUgd2lraSBmcmVlemUsIGJ1dCB3ZSBoYXZlIGFscmVhZHkgc2NoZWR1bGVkIHRoZSB0cmFuc2Zlci4gSW5zdGVhZCwgdGhlIGRpc2N1c3Npb24gd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtb29ybGFjaCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkJlbmphbWluIE1vb3JsYWNoPC9hPiwgY2hpdG9zYW4gZXhwZXJ0IHdvcmtpbmcgYXQgRkggQmllbGVmZWxkLCBwcm92aWRlZCBuZXcgaWRlYXMgZm9yIGltcHJvdmVtZW50IGJ5IDxzdHJvbmc+Y29tcGxleGluZyB0aGUgbVJOQSB3aXRoIGNoaXRvc2FuPC9zdHJvbmc+IHRvIGltcHJvdmUgdGhlIHN0YWJpbGl0eSBvZiB0aGUgY2FyZ28gZHVyaW5nIHNwcmF5IGRyeWluZyBhbmQgbmVidWxpemF0aW9uLiBUaGUgcG9zaXRpdmUgZWZmZWN0IG9mIFJOQSBjaGl0b3NhbiBjb21wbGV4aW5nIGZvciBvcGltaXplZCBMTlAgZGVsaXZlcnkgY291bGQgYmUgY29uZmltZWQgaW4gb3VyIGxhYi4gSW4gY29uY2x1c2lvbiwgd2UgY3JlYXRlZCBhIHN0YWJsZSBMTlAgZm9yIGVmZmljaWVudCBkZWxpdmVyeSBvZiBtUk5BIHRoZXJhcGV1dGljcyB0byB0aGUgbHVuZ3Mgc2luY2UgdGhlIHN1Y2Nlc3NmdWwgZGVsaXZlcnkgb2YgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCB2aWEgaW5oYWxhdGlvbiBpcyBrZXkgdG8gb3VyIHByb2plY3QuICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYmlnLXBsYW4taW5oYWxhdGlvbi10ZWlsLWRlbC53ZWJwXCIgYWx0PVwiRmxvdyBERUxcIi8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDQuIDwvYj4gXG4gICAgICAgICAgICAgICAgICAgICAgICBBcHBsaWNhdGlvbiBzdGF0ZWd5IC0gQWlyQnVkZHkgaXMgaW5oYWxlZCBieSB0aGUgcGF0aWVudCwgZW5hYmxpbmcgdXB0YWtlIG9mIFByaW1lR3VpZGUgaW4gbHVuZyBlcGl0aGVsaWFsIGNlbGxzIHZpYSBlbmRvY3l0b3Npcy4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJkZWw1XCI+XG4gICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIk91dGxvb2tcIiBpZD1cImRlbDVoZWFkXCIgLz4gXG4gICAgICAgICAgICAgICAgICAgICBVbHRpbWF0ZWx5LCB0aHJvdWdoIGNvbnRpbnVvdXMgY3ljbGVzIG9mIGV4cGVyaW1lbnRhdGlvbiwgZmVlZGJhY2ssIGFuZCBvcHRpbWl6YXRpb24sIGEgTE5QIGZvcm11bGF0aW9uIGNhbGxlZCBBaXJCdWRkeSB3YXMgZGVzaWduZWQgdXNpbmcgU09SVCBMTlBzIGFuZCBhIHNwcmF5LWRyeWluZyBwcm9jZXNzLCBhY2hpZXZpbmcgbHVuZyBzcGVjaWZpY2l0eSBhbmQgaW1wcm92ZWQgc2FmZXR5LiBXZSBhbHNvIHdhbnQgdG8gc3RhdGUgdGhhdCBmb3Igb3VyIExOUCBpcyBmdXJ0aGVyIHJvb20gZm9yIGltcHJvdmVtZW50LiBJbnRlbnNpdmUgcmVzZWFyY2ggbGVkIHVzIHRvIHRoZSByZWFsaXphdGlvbiB0aGF0LCBhbW9uZyBvdGhlciBtb2RpZmljYXRpb25zLCA8c3Ryb25nPmFudGlib2R5IGNvbmp1Z2F0aW9uPC9zdHJvbmc+IGFzIGEgc3VyZmFjZSBtb2RpZmljYXRpb24gb2Ygb3VyIExOUCBmb3IgY2VsbCB0eXBlLXNwZWNpZmljIGFkbWluaXN0cmF0aW9uLCBtb3JlIHNwZWNpZmljYWxseSBjbHViIGNlbGxzPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiOVwiIHNjcm9sbElkPVwiZGVzYy05XCIvPiBhbmQgaW9ub2N5dGVzPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiMTBcIiBzY3JvbGxJZD1cImRlc2MtMTBcIi8+IGFzIG1vc3QgQ0ZUUi1leHByZXNzaW5nIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgd291bGQgcm91bmQgb2ZmIG91ciBtb3N0IGltcG9ydGFudCBhc3BlY3Qgb2YgcHJlY2lzaW9uLiBcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJyZWZlcmVuY2VzXCI+XG4gICAgICAgICAgICAgICAgICAgICA8RW5nRGVsc291cmNlcy8+XG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJuaWNrYXNlXCIgc2Nyb2xsVG9JZD1cIm5pY2thc2UtaGVhZGVyXCIvPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgXG4gICAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvPlxuICAgICk7XG4gIH0gXG5cbiAgXG5cbmV4cG9ydCBmdW5jdGlvbiBFbmdpbmVlcmluZ0N5Y2xlVGFiKCl7XG4gICAgcmV0dXJuKFxuIDxzdmcgY2xhc3NOYW1lPVwicm90YXRlLWxpbmVhci1pbmZpbml0ZVwiXG4gICAgd2lkdGg9XCIxMDAlXCJcbiAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICB2aWV3Qm94PVwiMCAwIDEzMyAxMzNcIlxuICAgIGlkPVwic3ZnMjVcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgIDxkZWZzXG4gICAgICBpZD1cImRlZnMxXCI+XG4gICAgIDwvZGVmcz5cbiAgIDxnXG4gICAgICBpZD1cIkxheWVyXzJcIlxuICAgICAgZGF0YS1uYW1lPVwiTGF5ZXIgMlwiXG4gICAgICBzdHlsZT17e3N0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIn19PlxuICAgICA8Z1xuICAgICAgICBpZD1cIlBsYXNtaWRcIlxuICAgICAgICBzdHlsZT17e3N0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIn19PlxuICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJnMjVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg3LjUwMDk3OCwzLjA1MDQ4OTgpXCI+XG4gICAgICAgICAgICA8YSAgdHlwZW9mPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwic3ZnLWJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcImRlc2lnbmluZ1wiLCBjbGFzc1RvSGlkZTogXCJjeWNsZXRhYlwifSl9PlxuICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImNscy03XCJcbiAgICAgICAgICAgIGQ9XCJtIDQyLjA1LDExNS41OSBjIDI3Ljc3LDkuMTkgNTcuODMsLTQuNzkgNjkuNzYsLTMyLjIzXCJcbiAgICAgICAgICAgICBpZD1cInBhdGgyMlwiXG4gICAgICAgICAgICBzdHlsZT17e3N0cm9rZTpcIiNmNGNjMWVcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHN0cm9rZU9wYWNpdHk6XCIxXCJ9fSAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgIDwvZz5cbiAgICAgICA8Z1xuICAgICAgICAgIGlkPVwiZzI2XCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOC4wMDE5Njk5LDIuODQxODIyMylcIlxuICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX0+ICBcbiAgICAgICAgIDxwb2x5Z29uXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJjbHMtMTNcIlxuICAgICAgICAgICAgcG9pbnRzPVwiMTEyLjA3LDgzLjM2IDExMC45NCw3Ni4yNyAxMTcuNjUsNzguODQgXCJcbiAgICAgICAgICAgICBpZD1cInBvbHlnb24yNVwiXG4gICAgICAgICAgICBzdHlsZT17e2ZpbGw6XCIjODUwZjc4XCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX1cbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyLjk4MDYyNTksMCwwLDIuOTgwNjI1OSwtMjI1LjQzNzIyLC0xNTYuNDUxMjMpXCIgLz5cbiAgICAgICAgICAgIDxhICB0eXBlb2Y9XCJidXR0b25cIiBjbGFzc05hbWU9XCJzdmctYnV0dG9uXCIgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwibGVhcm5pbmdcIiwgY2xhc3NUb0hpZGU6IFwiY3ljbGV0YWJcIn0pfT5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImNscy0xMlwiXG4gICAgICAgICAgICAgIGQ9XCJNIDExNCw3OC41NSBDIDEyMy40NSw1MC44NiAxMTAsMjAuNzUgODIuNjYsOC42XCJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjVcIlxuICAgICAgICAgICAgICBzdHlsZT17e3N0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsc3Ryb2tlOlwiIzg1MGY3OFwiLHN0cm9rZU9wYWNpdHk6XCIxXCJ9fSAvPiBcbiAgICAgICAgICAgXG4gICAgICAgICA8dGV4dFxuICAgICAgICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjE3LjMzMzNweFwiLGxpbmVIZWlnaHQ6XCIwXCIsZm9udEZhbWlseTpcIkFyaWFsXCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZTpcIm5vbmVcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2VPcGFjaXR5OlwiMVwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxuICAgICAgICAgICAgaWQ9XCJ0ZXh0MzFcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDUuNjkwMjE5NCwtMC4xMTU1MTg4MylcIj48dGV4dFBhdGhcbiAgICAgICAgICAgICB4bGlua0hyZWY9XCIjcGF0aDI1XCJcbiAgICAgICAgICAgICAgaWQ9XCJ0ZXh0UGF0aDMzXCI+TGVhcm48dHNwYW5cbiAgICAgICAgICBpZD1cInRzcGFuMzFcIiAvPjwvdGV4dFBhdGg+PC90ZXh0PiAgPC9hPlxuICAgICAgIDwvZz5cbiAgICAgICA8Z1xuICAgICAgICAgIGlkPVwiZzI3XCJcbiAgICAgICAgICBzdHlsZT17e3N0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIn19XG4gICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDguMDAxOTY5OSwyLjg0MTgyMjMpXCI+XG4gICAgICAgICA8cG9seWdvblxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLTEwXCJcbiAgICAgICAgICAgICBwb2ludHM9XCI2Mi41Myw3LjEyIDYzLjQ3LDAgNjkuMTcsNC4zNyBcIlxuICAgICAgICAgICAgaWQ9XCJwb2x5Z29uMjNcIlxuICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyLjc3MTIyNjMsMC41ODE0NzU0OCwtMC41ODE0NzU0OCwyLjc3MTIyNjMsLTk2LjU4NzgyOCwtMzkuNzQ4MDcxKVwiXG4gICAgICAgICAgICBzdHlsZT17e2ZpbGw6XCIjYTBhN2YzXCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX1cbiAgICAgICAgICAgIGlua3NjYXBlOnRyYW5zZm9ybS1jZW50ZXIteD1cIjMuNjE3Mzc1MVwiXG4gICAgICAgICAgICBpbmtzY2FwZTp0cmFuc2Zvcm0tY2VudGVyLXk9XCI1LjE5Nzg4NTJcIiAvPlxuICAgICAgICAgICAgPGEgIHR5cGVvZj1cImJ1dHRvblwiIGNsYXNzTmFtZT1cInN2Zy1idXR0b25cIiBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJ0ZXN0aW5nXCIsIGNsYXNzVG9IaWRlOiBcImN5Y2xldGFiXCJ9KX0+XG4gICAgICAgICA8cGF0aFxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLTlcIlxuICAgICAgICAgICAgZD1cIk0gNzguNTk5MTExLDcuNTQ2ODI2NCBDIDQzLjgyMDM0NiwtMi42MTc3NTg4IDEzLjk1Njc0NiwxNC4yODYwNDYgNC4yMTA2MjgxLDQ2LjM2ODc0OVwiXG4gICAgICAgICAgICBpZD1cInBhdGgyM1wiXG4gICAgICAgICAgICBzdHlsZT17e3N0cm9rZTpcIiNhMGE3ZjNcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHN0cm9rZU9wYWNpdHk6XCIxXCJ9fSAvPlxuICAgICAgICAgPHRleHRcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjE3LjMzMzNweFwiLGxpbmVIZWlnaHQ6XCIwXCIsZm9udEZhbWlseTpcIkFyaWFsXCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZTpcIm5vbmVcIixzdHJva2VXaWR0aDpcIjZcIixzdHJva2VMaW5lY2FwOlwicm91bmRcIixzdHJva2VMaW5lam9pbjpcInJvdW5kXCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHN0cm9rZU9wYWNpdHk6XCIxXCIscGFpbnRPcmRlcjpcImZpbGwgbWFya2VycyBzdHJva2VcIn19XG4gICAgICAgICAgICBpZD1cInRleHQyOFwiXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtMC4wMzAyMzUwNiwtNS45NjAyMzM2KVwiPjx0ZXh0UGF0aFxuICAgICAgICAgICAgeGxpbmtIcmVmPVwiI3BhdGgyM1wiXG4gICAgICAgICAgICAgaWQ9XCJ0ZXh0UGF0aDI4XCI+VGVzdDwvdGV4dFBhdGg+PC90ZXh0PiA8L2E+XG4gICAgICAgPC9nPlxuICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJnMjhcIlxuICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX1cbiAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOC4wMDE5Njk5LDIuODQxODIyMylcIj5cbiAgICAgICAgIDxwb2x5Z29uXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJjbHMtMTNcIlxuICAgICAgICAgICAgcG9pbnRzPVwiMTE3LjY1LDc4Ljg0IDExMi4wNyw4My4zNiAxMTAuOTQsNzYuMjcgXCJcbiAgICAgICAgICAgICBpZD1cInBvbHlnb24yNS02XCJcbiAgICAgICAgICAgIHN0eWxlPXt7ZmlsbDpcIiNmNTdkMjJcIixmaWxsT3BhY2l0eTpcIjFcIixzdHJva2VXaWR0aDpcIjZcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCJ9fVxuICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0yLjk2NTAzMTQsMC4zMDQ0OTg5MywtMC4zMDQ0OTg5MywtMi45NjUwMzE0LDM2NC44NDA2NywyNDkuMjgyNDkpXCIgLz5cbiAgICAgICAgICAgIDxhICB0eXBlb2Y9XCJidXR0b25cIiBjbGFzc05hbWU9XCJzdmctYnV0dG9uXCIgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwiYnVpbGRpbmdcIiwgY2xhc3NUb0hpZGU6IFwiY3ljbGV0YWJcIn0pfT5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLTExXCJcbiAgICAgICAgICAgIGQ9XCJNIDIuNjY1OTc1Myw1MC45NTM1MDUgQyAtMi4wOTU2Njk0LDcyLjcyNzkxNSAxMC45MzY4NjYsMTAyLjk0MjczIDM2LjY1NjIzNCwxMTMuNjI4MzRcIlxuICAgICAgICAgICAgIGlkPVwicGF0aDI0XCJcbiAgICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCIxNVwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2U6XCIjZjU3ZDIyXCIsc3Ryb2tlT3BhY2l0eTpcIjFcIn19IC8+XG4gICAgICAgICA8dGV4dFxuICAgICAgICAgICAgXG4gICAgICAgICAgICBzdHlsZT17e2ZvbnRTaXplOlwiMTcuMzMzM3B4XCIsbGluZUhlaWdodDpcIjBcIixmb250RmFtaWx5OlwiQXJpYWxcIixmaWxsOlwidmFyKC0tb2ZmYmxhY2spXCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlOlwibm9uZVwiLHN0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VMaW5lY2FwOlwicm91bmRcIixzdHJva2VMaW5lam9pbjpcInJvdW5kXCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHN0cm9rZU9wYWNpdHk6XCIxXCIscGFpbnRPcmRlcjpcImZpbGwgbWFya2VycyBzdHJva2VcIn19XG4gICAgICAgICAgICBpZD1cInRleHQzMlwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTUuNzExMDMxNSwxLjc0NTMyNDMpXCI+PHRleHRQYXRoXG4gICAgICAgICAgICAgeGxpbmtIcmVmPVwiI3BhdGgyNFwiXG4gICAgICAgICAgICAgIGlkPVwidGV4dFBhdGgzMlwiPkJ1aWxkPHRzcGFuXG4gICAgaWQ9XCJ0c3BhbjMyXCIgLz48L3RleHRQYXRoPjwvdGV4dD4gPC9hPlxuICAgICAgIDwvZz5cbiAgICAgICA8cG9seWdvblxuICAgICAgICAgIGNsYXNzTmFtZT1cImNscy04XCJcbiAgICAgICAgICBwb2ludHM9XCIzNy4yMiwxMTMuNzQgNDQuMywxMTIuNTYgNDEuNzgsMTE5LjI4IFwiXG4gICAgICAgICAgaWQ9XCJwb2x5Z29uMjJcIlxuICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLGZpbGw6XCIjZjRjYzFlXCIsZmlsbE9wYWNpdHk6XCIxXCJ9fVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyLjgyNDg1ODgsMCwwLDIuODI0ODU4OCwtNjcuNzk3NzgxLC0yMDcuOTY5NzcpXCIgLz5cbiAgICAgICAgICA8YSAgdHlwZW9mPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwic3ZnLWJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcImRlc2lnbmluZ1wiLCBjbGFzc1RvSGlkZTogXCJjeWNsZXRhYlwifSl9PlxuICAgICAgIDx0ZXh0XG4gICAgICAgICAgXG4gICAgICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjE3LjMzMzNweFwiLGxpbmVIZWlnaHQ6XCIwXCIsZm9udEZhbWlseTpcIkFyaWFsXCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZTpcIm5vbmVcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2VPcGFjaXR5OlwiMVwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxuICAgICAgICAgIGlkPVwidGV4dDI5XCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOC40MDUyOTIxLDguODU1MzMzNClcIj48dGV4dFBhdGhcbiAgICAgICAgICB4bGlua0hyZWY9XCIjcGF0aDIyXCJcbiAgICAgICAgICBpZD1cInRleHRQYXRoMzRcIj5EZXNpZ248dHNwYW5cbiAgICAgICAgICBpZD1cInRzcGFuMjlcIiAvPjwvdGV4dFBhdGg+PC90ZXh0PiA8L2E+XG4gICAgIDwvZz5cbiAgIDwvZz5cbiAgIDxhICB0eXBlb2Y9XCJidXR0b25cIiBjbGFzc05hbWU9XCJzdmctYnV0dG9uXCIgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwib3ZlcnZpZXdcIiwgY2xhc3NUb0hpZGU6IFwiY3ljbGV0YWJcIn0pfT5cbiAgIDxjaXJjbGVcbiAgICAgc3R5bGU9e3tvcGFjaXR5OlwiMC44NVwiLGZpbGw6XCIjZTJkYWQ3XCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlV2lkdGg6XCIxNVwiLHN0cm9rZUxpbmVjYXA6XCJyb3VuZFwiLHN0cm9rZUxpbmVqb2luOlwicm91bmRcIixwYWludE9yZGVyOlwiZmlsbCBtYXJrZXJzIHN0cm9rZVwifX1cbiAgICAgaWQ9XCJwYXRoMVwiXG4gICAgIGN4PVwiNjcuOTE2MjE0XCJcbiAgICAgY3k9XCI2My4yMTQwMDVcIlxuICAgICByPVwiMjBcIiAvPlxuICA8dGV4dFxuICAgICBzdHlsZT17e2ZvbnRTaXplOlwiOHB4XCIsbGluZUhlaWdodDpcIjBcIixmb250RmFtaWx5OlwiQXJpYWxcIixvcGFjaXR5OlwiMC44NVwiLGZpbGw6XCJ2YXIoLS1vZmZibGFjaylcIixmaWxsT3BhY2l0eTpcIjFcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixwYWludE9yZGVyOlwiZmlsbCBtYXJrZXJzIHN0cm9rZVwifX1cbiAgICAgeD1cIjUwLjkyOTgyNVwiXG4gICAgIHk9XCI2Ni42NzY2NzRcIlxuICAgICBpZD1cInRleHQxXCI+XG4gICAgICA8dHNwYW5cbiAgICAgICBpZD1cInRzcGFuMVwiXG4gICAgICAgeD1cIjUwLjkyOTgyNVwiXG4gICAgICAgeT1cIjY2LjY3NjY3NFwiXG4gICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjhweFwifX0+T3ZlcnZpZXc8L3RzcGFuPjwvdGV4dD4gXG4gICAgICAgPC9hPlxuXG4gPC9zdmc+XG4gXG4gICAgKVxuIH1cblxuXG4iLCAiXG5pbXBvcnQgeyBIMiB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEV4cGVyaW1lbnRzKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxIMiBpZD1cImhlYWRpbmdcIiB0ZXh0PVwiSGVhZGluZ1wiID48L0gyPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgbXQtNFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC1sZy04XCI+XG4gICAgICAgICAgXG4gICAgICAgIDwvZGl2PlxuXG4gICAgICA8L2Rpdj5cbiAgICA8Lz5cbiAgKTtcbn1cbiIsICJcblxuaW1wb3J0IHsgRG93bmxvYWRJbWFnZUJ1dHRvbiB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCBIMiBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBOb3RlYm9vaygpIHtcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xuICByZXR1cm4gKFxuICAgIDxkaXY+XG4gICAgICA8SDIgdGV4dD1cIkxhYiBKb3VybmFscyBhbmQgUHJvdG9jb2wgY29sbGVjdGlvblwiLz4gXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImVuZy1ib3ggYm94XCIgPlxuICAgICAgICAgICAgICAgICAgICAgPHA+SGVyZSB5b3UgY2FuIGhhdmUgYSBkZXRhaWxlZCBsb29rIGF0IG91ciBsYWIgd29yayAtIGp1c3Qga2xpY2sgdGhlIGZyb250IHBhZ2VzIG9mIHRoZSBMYWIgSm91cm5hbHMgYW5kIFByb3RvY29sIENvbGxlY3Rpb24gdG8gZG93bmxvYWQgdGhlbSEgXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgIDxwPjwvcD4gICAgICAgICAgICBcbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxEb3dubG9hZEltYWdlQnV0dG9uIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvbGFib3JhdG9yeS1ub3RlYm9vay0xLXByb29mLW9mLWNvbmNlcHQtZm9yLXBlLnBkZlwiIGZpbGVOYW1lPVwibGFib3JhdG9yeS1ub3RlYm9vay0xLXByb29mLW9mLWNvbmNlcHQtZm9yLXBlLnBkZlwiPlxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYWItam91cm5hbHMvdGl0ZWxzZWl0ZS1sYWItYm9vay0xLXByb29mLW9mLWNvbmNlcHQtcGUud2VicFwiIHN0eWxlPXt7aGVpZ2h0OiBcIjc1JVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XG4gICAgICAgICAgPC9Eb3dubG9hZEltYWdlQnV0dG9uPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8RG93bmxvYWRJbWFnZUJ1dHRvbiB1cmw9XCJcIiBmaWxlTmFtZT1cIlwiPlxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYWItam91cm5hbHMvdGl0ZWxzZWl0ZS1sYWItYm9vay0yLWVuZ2luZWVyaW5nLXBlLndlYnBcIiBzdHlsZT17e2hlaWdodDogXCI3NSVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxuICAgICAgICAgICAgPC9Eb3dubG9hZEltYWdlQnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxEb3dubG9hZEltYWdlQnV0dG9uIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvbGFiLWJvb2stMy1wcmltYXJ5LWN1bHR1cmVzLnBkZlwiIGZpbGVOYW1lPVwibGFiLWJvb2stMy1wcmltYXJ5LWN1bHR1cmVzLnBkZlwiPlxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYWItam91cm5hbHMvdGl0ZWxzZWl0ZS1sYWItYm9vay0zLXByaW1hcnktY2VsbC1jdWx0dXJlLndlYnBcIiBzdHlsZT17e2hlaWdodDogXCI3NSVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxuICAgICAgICAgICAgPC9Eb3dubG9hZEltYWdlQnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPERvd25sb2FkSW1hZ2VCdXR0b24gdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9sYWItYm9vay00LWxucC1kZXNpZ24tYWlyYnVkZHkucGRmXCIgZmlsZU5hbWU9XCJsYWItYm9vay00LWxucC1kZXNpZ24tYWlyYnVkZHkucGRmXCI+XG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhYi1qb3VybmFscy90aXRlbHNlaXRlLWxhYi1ib29rLTQtbG5wLndlYnBcIiBzdHlsZT17e2hlaWdodDogXCI3NSVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxuICAgICAgICAgICAgPC9Eb3dubG9hZEltYWdlQnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxEb3dubG9hZEltYWdlQnV0dG9uIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvbGFiLWJvb2stNS1kb3duc3RyZWFtLWV4cGVyaW1lbnRzLnBkZlwiIGZpbGVOYW1lPVwibGFiLWJvb2stNS1kb3duc3RyZWFtLWV4cGVyaW1lbnRzLnBkZlwiPlxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYWItam91cm5hbHMvdGl0ZWxzZWl0ZS1sYWItYm9vay01LWRvd25zdHJlYW0ud2VicFwiIHN0eWxlPXt7aGVpZ2h0OiBcIjc1JVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XG4gICAgICAgICAgICA8L0Rvd25sb2FkSW1hZ2VCdXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8RG93bmxvYWRJbWFnZUJ1dHRvbiB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Byb3RvY29sLWNvbGxlY3Rpb24taWdlbS0yMDI0LnBkZlwiIGZpbGVOYW1lPVwicHJvdG9jb2wtY29sbGVjdGlvbi1pZ2VtLTIwMjQucGRmXCI+XG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhYi1qb3VybmFscy90aXRlbHNlaXRlLWxhYi1ib29rLXNvcC53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6IFwiNzUlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cbiAgICAgICAgICAgIDwvRG93bmxvYWRJbWFnZUJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICApO1xufVxuIiwgImV4cG9ydCBmdW5jdGlvbiBMb3JlbU1lZGl1bSgpe1xuICAgIHJldHVybihcbiAgICAgICAgPHAgY2xhc3NOYW1lPVwibG9yZW1cIj5cbiAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZXRldHVyIHNhZGlwc2NpbmcgZWxpdHIsIHNlZCBkaWFtIG5vbnVteSBlaXJtb2QgdGVtcG9yIGludmlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXV5YW0gZXJhdCwgc2VkIGRpYW0gdm9sdXB0dWEuIEF0IHZlcm8gZW9zIGV0IGFjY3VzYW0gZXQganVzdG8gZHVvIGRvbG9yZXMgZXQgZWEgcmVidW0uIFN0ZXQgY2xpdGEga2FzZCBndWJlcmdyZW4sIG5vIHNlYSB0YWtpbWF0YSBzYW5jdHVzIGVzdCBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNldGV0dXIgc2FkaXBzY2luZyBlbGl0ciwgc2VkIGRpYW0gbm9udW15IGVpcm1vZCB0ZW1wb3IgaW52aWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0LCBzZWQgZGlhbSB2b2x1cHR1YS4gQXQgdmVybyBlb3MgZXQgYWNjdXNhbSBldCBqdXN0byBkdW8gZG9sb3JlcyBldCBlYSByZWJ1bS4gU3RldCBjbGl0YSBrYXNkIGd1YmVyZ3Jlbiwgbm8gc2VhIHRha2ltYXRhIHNhbmN0dXMgZXN0IExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXkgZWlybW9kIHRlbXBvciBpbnZpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1eWFtIGVyYXQsIHNlZCBkaWFtIHZvbHVwdHVhLiBBdCB2ZXJvIGVvcyBldCBhY2N1c2FtIGV0IGp1c3RvIGR1byBkb2xvcmVzIGV0IGVhIHJlYnVtLiBTdGV0IGNsaXRhIGthc2QgZ3ViZXJncmVuLCBubyBzZWEgdGFraW1hdGEgc2FuY3R1cyBlc3QgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuICAgXG5cbkR1aXMgYXV0ZW0gdmVsIGV1bSBpcml1cmUgZG9sb3IgaW4gaGVuZHJlcml0IGluIHZ1bHB1dGF0ZSB2ZWxpdCBlc3NlIG1vbGVzdGllIGNvbnNlcXVhdCwgdmVsIGlsbHVtIGRvbG9yZSBldSBmZXVnaWF0IG51bGxhIGZhY2lsaXNpcyBhdCB2ZXJvIGVyb3MgZXQgYWNjdW1zYW4gZXQgaXVzdG8gb2RpbyBkaWduaXNzaW0gcXVpIGJsYW5kaXQgcHJhZXNlbnQgbHVwdGF0dW0genpyaWwgZGVsZW5pdCBhdWd1ZSBkdWlzIGRvbG9yZSB0ZSBmZXVnYWl0IG51bGxhIGZhY2lsaXNpLiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpYW0gbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhb3JlZXQgZG9sb3JlIG1hZ25hIGFsaXF1YW0gZXJhdCB2b2x1dHBhdC4gICBcblxuVXQgd2lzaSBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0YXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LiBEdWlzIGF1dGVtIHZlbCBldW0gaXJpdXJlIGRvbG9yIGluIGhlbmRyZXJpdCBpbiB2dWxwdXRhdGUgdmVsaXQgZXNzZSBtb2xlc3RpZSBjb25zZXF1YXQsIHZlbCBpbGx1bSBkb2xvcmUgZXUgZmV1Z2lhdCBudWxsYSBmYWNpbGlzaXMgYXQgdmVybyBlcm9zIGV0IGFjY3Vtc2FuIGV0IGl1c3RvIG9kaW8gZGlnbmlzc2ltIHF1aSBibGFuZGl0IHByYWVzZW50IGx1cHRhdHVtIHp6cmlsIGRlbGVuaXQgYXVndWUgZHVpcyBkb2xvcmUgdGUgZmV1Z2FpdCBudWxsYSBmYWNpbGlzaS4gICBcblxuTmFtIGxpYmVyIHRlbXBvciBjdW0gc29sdXRhIG5vYmlzIGVsZWlmZW5kIG9wdGlvbiBjb25ndWUgbmloaWwgaW1wZXJkaWV0IGRvbWluZyBpZCBxdW9kIG1hemltIHBsYWNlcmF0IGZhY2VyXG48L3A+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gTG9yZW1TaG9ydCgpe1xuICAgIHJldHVybihcbiAgICAgICAgPHAgY2xhc3NOYW1lPVwibG9yZW1cIj5cbiAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNldGV0dXIgc2FkaXBzY2luZyBlbGl0ciwgc2VkIGRpYW0gbm9udW15IGVpcm1vZCB0ZW1wb3IgaW52aWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0LCBzZWQgZGlhbSB2b2x1cHR1YS4gQXQgdmVybyBlb3MgZXQgYWNjdXNhbSBldCBqdXN0byBkdW8gZG9sb3JlcyBldCBlYSByZWJ1bS4gU3RldCBjbGl0YSBrYXNkIGd1YmVyZ3Jlbiwgbm8gc2VhIHRha2ltYXRhIHNhbmN0dXMgZXN0IExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXkgZWlybW9kIHRlbXBvciBpbnZpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1eWFtIGVyYXQsIHNlZCBkaWFtIHZvbHVwdHVhLiBBdCB2ZXJvIGVvcyBldCBhY2N1c2FtIGV0IGp1c3RvIGR1byBkb2xvcmVzIGV0IGVhIHJlYnVtLiBTdGV0IGNsaXRhIGthc2QgZ3ViZXJncmVuLCBubyBzZWEgdGFraW1hdGEgc2FuY3R1cyBlc3QgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuXG4gICAgICAgIDwvcD5cbiAgICApXG59IiwgImludGVyZmFjZSBGaWd1cmVQcm9wc3tcbiAgICBwaWMxOiBzdHJpbmcsIFxuICAgIHBpYzI6IHN0cmluZywgXG4gICAgcGljMz86IHN0cmluZywgXG4gICAgcGljND86IHN0cmluZywgXG4gICAgcGljNT86IHN0cmluZywgXG4gICAgcGljNj86IHN0cmluZywgXG4gICAgZGVzY3JpcHRpb246IFJlYWN0LlJlYWN0Tm9kZSB8IHN0cmluZywgXG4gICAgbnVtOiBzdHJpbmcgfG51bWJlcjsgXG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFRocmVlVmVydGljYWwoe2Rlc2NyaXB0aW9uLCBudW0sIHBpYzEsIHBpYzIsIHBpYzN9OkZpZ3VyZVByb3BzKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMxfS8+XG4gICAgICAgICAgICA8aW1nIHNyYz17cGljMn0vPlxuICAgICAgICAgICAgPGltZyBzcmM9e3BpYzN9Lz5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB7bnVtfS48L2I+IDxzcGFuPntkZXNjcmlwdGlvbn08L3NwYW4+PC9maWdjYXB0aW9uPlxuICAgICAgICA8L2ZpZ3VyZT5cbiAgICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBUd29WZXJ0aWNhbCh7ZGVzY3JpcHRpb24sIG51bSwgcGljMSwgcGljMn06RmlndXJlUHJvcHMpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgPGltZyBzcmM9e3BpYzF9Lz5cbiAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMyfS8+XG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUge251bX0uPC9iPiA8c3Bhbj57ZGVzY3JpcHRpb259PC9zcGFuPjwvZmlnY2FwdGlvbj5cbiAgICAgICAgPC9maWd1cmU+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gVHdvSG9yaXpvbnRhbCh7ZGVzY3JpcHRpb24sIG51bSwgcGljMSwgcGljMn06RmlndXJlUHJvcHMpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzF9Lz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17cGljMn0vPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUge251bX0uPC9iPiA8c3Bhbj57ZGVzY3JpcHRpb259PC9zcGFuPjwvZmlnY2FwdGlvbj5cbiAgICAgICAgPC9maWd1cmU+XG4gICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gVGhyZWVIb3Jpem9udGFsKHtkZXNjcmlwdGlvbiwgbnVtLCBwaWMxLCBwaWMyLCBwaWMzfTpGaWd1cmVQcm9wcyl7XG5cbiAgICByZXR1cm4oXG4gICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17cGljMX0vPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMyfS8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzN9Lz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHtudW19LjwvYj4gPHNwYW4+e2Rlc2NyaXB0aW9ufTwvc3Bhbj48L2ZpZ2NhcHRpb24+XG4gICAgICAgIDwvZmlndXJlPlxuICAgIClcbn1cblxuIiwgIlxuaW1wb3J0IHsgIEg0IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IExvcmVtTWVkaXVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvTG9yZW1pcHN1bVwiO1xuaW1wb3J0IHsgU2VjdGlvbiwgU3ViZXNjdGlvbiB9IGZyb20gXCIuLi9jb21wb25lbnRzL3NlY3Rpb25zXCI7XG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcbmltcG9ydCB7IEg1IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcbmltcG9ydCB7IERvd25sb2FkTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IFRocmVlVmVydGljYWwsIFR3b0hvcml6b250YWwsIFR3b1ZlcnRpY2FsIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvRmlndXJlc1wiO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBSZXN1bHRzKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24gKCk7XG4gIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJBYnN0cmFjdFwiIGlkPVwiQWJzdHJhY3RcIj5cbiAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICA8L1NlY3Rpb24+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkV4cGVyaW1lbnRhbCBEZXNpZ25cIiBpZD1cIkV4cERlc1wiPlxuICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcm9vZiBvZiBDb25jZXB0XCIgaWQ9XCJSZXN1bHRzMVwiPlxuICAgICAgPGg0PmFjYy4gdG8gRGF2aWQgTGl1IChBbnphbG9uZSBldCBhbC4gMjAxOSk8L2g0PlxuICAgICAgICAgIDxINCB0ZXh0PVwiUHJvb2Ytb2YtY29uY2VwdFwiLz5cbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxuICAgICAgICAgIDxwPlRoZSBwcmVwYXJlZCBwREFTMTIxMjQtcHJlZWRpdGVkIHBsYXNtaWQgc2VydmVzIGFzIGEgcG9zaXRpdmUgY29udHJvbCB0byB2YWxpZGF0ZSB0aGUgc3VjY2VzcyBvZiB0aGUgZXhwZXJpbWVudC4gQSB0ZWNobmljYWwgY29udHJvbCB3aXRoIHRoZSBwWk1COTM4IHBsYXNtaWQgY29uZmlybXMgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gb2YgdGhlIGNlbGxzLiBJbiB0aGUgbWFpbiBwYXJ0IG9mIHRoZSBleHBlcmltZW50LCBwREFTMTI0ODktMmluMSBhbmQgcENNVi1QRTIgYXJlIGNvLXRyYW5zZmVjdGVkLiBTdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiBpcyB2aXN1YWxpc2VkIGJ5IEdGUCBzaWduYWxzLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPlRoZSBtaWNyb3Njb3B5IGRhdGEgdmFsaWRhdGVzIG91ciBwcm9vZiBvZiBjb25jZXB0LiBDb21wYXJlZCB0byBvdXIgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCwgcERBUzEyMTI0LXByZWVkaXRlZCAoc2VlIEZpZ3VyZSAxKSwgbGVzcyBjZWxscyBjby10cmFuc2ZlY3RlZCB3aXRoIHBEQVMxMjQ4OSBhbmQgcENNVi1QRTIgKHNlZSBGaWd1cmUgMSkgc2hvd2VkIGZsdW9yZXNjZW5jZS4gQ29udHJhcnkgdG8gb3VyIGV4cGVjdGF0aW9ucywgdGhlIHRlY2huaWNhbCB0cmFuc2ZlY3Rpb24gY29udHJvbCB3aXRoIHBaTUI5Mzggc2hvd2VkIGxvd2VyIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBBbGwgbmVnYXRpdmUgY29udHJvbHMgc2hvd2VkIG5vIGZsdW9yZXNjZW5jZS48L3A+XG4gICAgICAgICAgPFRocmVlVmVydGljYWxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAyMDAwLiBUcmFuc2ZlY3Rpb24gd2l0aCB0ZWNobmljYWwgcG9zaXRpdmUgY29udHJvbCBwWk1COTM4LCBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIHBEQVMxMjEyNC1wcmVlZGl0ZWQsIGNvLXRyYW5zZmVjdGlvbiBvZiBwREFTMTI0ODkgd2l0aCBwQ01WLVBFMiwgTlRDLCBQRTIgYXMgY29udHJvbCBhbmQgcERBUzEyNDg5IGFzIGNvbnRyb2wuIEFsbCBjb250cm9scyBhcmUgbmVnYXRpdmUgYW5kIGJvdGggcG9zaXR2ZSBjb250cm9scyBhcyB3ZWxsIGFzIHBEQVMxMjQ4OStwQ01WLVBFMiBzaG93IGZsdW9yZXNjZW5jZSBzaWduYWxzLlwiXG4gICAgICAgICAgICBudW09ezF9XG4gICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDEtMS5wbmdcIlxuICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQxLTIucG5nXCJcbiAgICAgICAgICAgIHBpYzM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMS0zLnBuZ1wiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8SDQgdGV4dD1cIlRyYW5zZmVjdGlvbiBvcHRpbWl6YXRpb25cIi8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5UbyBvcHRpbWlzZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSwgZGlmZmVyZW50IGRpbHV0aW9ucyBhbmQgY29uY2VudHJhdGlvbnMgb2YgRE5BIHdlcmUgdXNlZCB0byBmaW5kIHRoZSBiZXN0IHRyYW5zZmVjdGlvbiBjb25kaXRpb25zLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPkFsbCA0IGRpZmZlcmVudCB0cmFuc2ZlY3Rpb24gY29uZGl0aW9ucyB3ZXJlIGRvbmUgd2l0aCBwWk1COTM4IGFuZCBzaG93ZWQgZ29vZCByZXN1bHRzLCBidXQgYmVzdCByZXN1bHQgd2VyZSBkb25lIHdoZW4gbGlwb2ZlY3RhbWluZSAyMDAwIHdhcyBkaWx1dGVkIDE6MTAgYW5kIDEwMDAgbmcgRE5BIHdhcyB0cmFuc2ZlY3RlZC48L3A+IFxuICAgICAgICAgIDxUd29WZXJ0aWNhbFxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW4gMjAwMC4gVHJhbnNmZWN0aW9uIHdpdGggMToxMCBvciAxOjI1IGRpbHV0ZWQgbGlwb2ZlY3RhbWluZSBhbmQgODAwIG5nIG9yIDEwMDAgbmcgb2Ygb3V0IHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHBaTUI5MzguXCJcbiAgICAgICAgICAgIG51bT17Mn1cbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMi0xLnBuZ1wiXG4gICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDItMi5wbmdcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5UcmFuc2ZlY3Rpb24gd2l0aCBMaXBvZmVjdGFtaW5lIDMwMDAgd2FzIHBlcmZvcm1lZCBiZWNhdXNlIG9mIHRoZSBwcm9iYWJseSBiZXR0ZXIgcGVyZm9ybWFuY2UgYW5kIHRyYW5zZmVjdGlvbiByYXRlLiBUaGUgcHJlcGFyZWQgcERBUzEyMTI0LXByZWVkaXRlZCBwbGFzbWlkIHNlcnZlcyBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgdG8gdmFsaWRhdGUgdGhlIHN1Y2Nlc3Mgb2YgdGhlIGV4cGVyaW1lbnQuIEEgdGVjaG5pY2FsIGNvbnRyb2wgd2l0aCB0aGUgcFpNQjkzOCBwbGFzbWlkIGNvbmZpcm1lZCBzdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiBvZiB0aGUgY2VsbHMgYXMgYmVmb3JlLiBJbiB0aGUgbWFpbiBwYXJ0IG9mIHRoZSBleHBlcmltZW50LCBwREFTMTI0ODktMmluMSBhbmQgcENNVi1QRTIgd2VyZSBjby10cmFuc2ZlY3RlZC4gU3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gYW5kIHByaW1lIGVkaXRpbmcgd2FzIGRldGVjdGVkIGJ5IEdGUCBzaWduYWxzLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPkludGVybmFsIGNvbnRyb2wgYW5kIHRlY2huaWNhbCBjb250cm9sIHNob3dlZCBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgdGhlbiBpbiBwcmV2aW91cyBleHBlcmltZW50cywgdGhlcmVmb3JlIHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMzAwMCBzZWVtcyB0byBiZSBtb3JlIGVmZmljaWVudCB0aGFuIHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMjAwMC4gVGhlIGZsdW9yZXNjZW5jZSBvZiBwREFTMTIxODkrcENNVi1QRTIgd2FzIHN0aWxsIHF1aXRlIGxvdy4gQWxsIG5lZ2F0aXZlICBjb250cm9scyBhcmUgc2hvd2VkIG5vIGZsdW9yZXNjZW5jZS48L3A+XG4gICAgICAgICAgPFRocmVlVmVydGljYWxcbiAgICAgICAgICBkZXNjcmlwdGlvbj1cIk1pY3Jvc2NvcHkgb2YgSEVLMjkzIDcyaCBwb3N0IHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMjAwMC4gVHJhbnNmZWN0aW9uIHdpdGggdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wgcFpNQjkzOCwgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCBwREFTMTIxMjQtcHJlZWRpdGVkLCBjby10cmFuc2ZlY3Rpb24gb2YgcERBUzEyNDg5IHdpdGggcENNVi1QRTIsIE5UQywgUEUyIGFzIGNvbnRyb2wgYW5kIHBEQVMxMjQ4OSBhcyBjb250cm9sLiBBbGwgY29udHJvbHMgYXJlIG5lZ2F0aXZlIGFuZCBib3RoIHBvc2l0dmUgY29udHJvbHMgYXMgd2VsbCBhcyBwREFTMTI0ODkrcENNVi1QRTIgc2hvdyBmbHVvcmVzY2VuY2Ugc2lnbmFscy5cIlxuICAgICAgICAgIG51bT17M31cbiAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDMtMS5wbmdcIlxuICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMy0yLnBuZ1wiXG4gICAgICAgICAgcGljMz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQzLTMucG5nXCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XG4gICAgICAgICAgPHA+QWdhaW4gYSBwcmVsaW1pbmFyeSB0ZXN0IHdpdGggdGhlIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHdhcyBjb25kdWN0ZWQgcG90ZW50aWFsbHkgb3B0aW1pemUgb3VyIHRyYW5zZmVjdGlvbiBwcm90b2NvbCBhbmQgdG8gdHJhaW4gdGhlIGhhbmRsaW5nLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPlRoZSByZXN1bHRzIG9mIHRoZSB0ZXN0IHdlcmUgbm90IGFzIGdvb2QgYXMgZXhwZWN0ZWQuIE5lYXJseSBubyB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSB3YXMgdmlzaWJsZS4gVGhpcyBjb3VsZCBiZSBkdWUgdG8gdG9vIG9sZCBIRUsyOTMgY2VsbHM8L3A+IFxuICAgICAgICAgIDxUd29WZXJ0aWNhbFxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFpbmUgMzAwMC4gVHJhbnNmZWN0aW9uIG9mIDUwMCBuZyBvciAxMDAwIG5nIG9mIG91ciB0ZWNobmljYWwgcG9zaXRpdmUgY29udHJvbCBwWk1COTM4IHdpdGggMSBcdTAwQjVsIG9yIDEuNSBcdTAwQjVsIG9mIGxpcG9mZWN0YW1pbmUgMzAwMC5cIlxuICAgICAgICAgICAgbnVtPXs0fVxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ0LTEucG5nXCJcbiAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkNC0yLnBuZ1wiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxuICAgICAgICAgIDxwPkhFSyBjZWxscyB3ZXJlIHRoYXdlZCBhbmQgYW5vdGhlciBwcmVsaW1hcnkgdGVzdCB3YXMgY29uZHVjdGVkLiBJbiB0aGlzIHRlc3QgdHdvIGRpZmZlcmVudCB0cmFuc2ZlY3Rpb24gYWdlbnRzIHdlcmUgdXNlZCAoTGlwb2ZlY3RhbWluZSAzMDAwICYgQ2FDbDIpIHRvIGNoZWNrIHdoaWNoIG9uZSBpcyBiZXR0ZXIgc3VpdGVkIGZvciBvdXIgZXhwZXJpbWVudHMuIFRoZSBsaXRlcmF0dXJlIHVzZXMgbGlwb2ZlY3RhbWluZSAzMDAwIGJ1dCBDYUNsMiB0cmFuc2ZlY3Rpb24gaXMgbXVjaCBjaGVhcGVyLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPkJvdGggdHJhbnNmZWN0aW9ucyBhcmUgd29ya2luZyBvdXQgd2VsbCBidXQgdGhlIGVmZmljaWVuY3kgb2YgdGhlIGxpcG9mZWN0YW1pbmUgdHJhbnNmZWN0aW9uIHdhcyBtdWNoIGhpZ2hlci48L3A+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWd1cmUtd3JhcHBlclwiPlxuICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ1LnBuZ1wiIHN0eWxlPXt7aGVpZ2h0OiBcIjEwJVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgNS48L2I+TWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwIHdpdGggMTAwMCBuZyBvciAxNTAwIG5nIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHBaTUI5MzguIEJvdGggdHJhbnNmZWN0aW9ucyBzaG93IGZsdW9yZXNjZW5jZSBzaWduYWxzLjwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgPC9kaXY+ICAgICAgICAgIFxuICAgICAgICAgIDxUd29WZXJ0aWNhbFxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBDYUNsMiB3aXRoIDUwMCBuZywgMTAwMCBuZyBvciAxNTAwIG5nIHBaTUI5MzguIEFsbCB0cmFuc2ZlY3Rpb25zIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuXCJcbiAgICAgICAgICAgIG51bT17Nn1cbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkNi0xLnBuZ1wiXG4gICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDYtMi5wbmdcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5PbmUgbGFzdCB0aW1lIHRoZSB0cmFuc2ZlY3Rpb24gb2YgcERBUzEyMTg5K3BDTVYtUEUyIHdhcyBjb25kdWN0ZWQuIEFsdGhvdWdoIG91ciBwcm9vZi1vZi1jb25jZXB0IGFscmVhZHkgc2hvd2VkIHN1Y2Nlc3NmdWwgZWRpdGluZyB0aGUgZmlyc3QgdGltZSwgd2UgcmVwZWF0ZWQgdGhlIGV4cGVyaW1lbnQgdG8gZ2V0IGJldHRlciB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS48L3A+IFxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cbiAgICAgICAgICA8cD5UaGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgd2FzIG11Y2ggYmV0dGVyLiBPdXIgcHJvb2Ytb2YtY29uY2VwdCB3YXMgd29ya2luZyBjb3JyZWN0bHkuIFRoZSByZXBvcnRlciBzeXN0ZW0gcERBUzEyMTg5IG9ubHkgbGVkIHRvIHByb2R1Y3Rpb24gb2YgYSBmbHVvcmVzY2VudCBzaWduYWwgd2hlbiBjbyB0cmFuc2ZlY3RlZCB3aXRoIGEgcHJpbWUgZWRpdGluZyBjb21wbGV4IGFzIHBDTVYtUEUyLjwvcD4gXG4gICAgICAgICAgPFR3b1ZlcnRpY2FsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cIk1pY3Jvc2NvcHkgb2YgSEVLMjkzIDcyaCBwb3N0IHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMjAwMC4gVHJhbnNmZWN0aW9uIHdpdGggdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wgcFpNQjkzOCwgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCBwREFTMTIxMjQtcHJlZWRpdGVkLCBjby10cmFuc2ZlY3Rpb24gb2YgcERBUzEyNDg5IHdpdGggcENNVi1QRTIsIE5UQywgUEUyIGFzIGNvbnRyb2wgYW5kIHBEQVMxMjQ4OSBhcyBjb250cm9sLiBBbGwgY29udHJvbHMgYXJlIG5lZ2F0aXZlIGFuZCBib3RoIHBvc2l0dmUgY29udHJvbHMgYXMgd2VsbCBhcyBwREFTMTI0ODkrcENNVi1QRTIgc2hvdyBmbHVvcmVzY2VuY2Ugc2lnbmFscy5cIlxuICAgICAgICAgICAgbnVtPXs3fVxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ3LTEucG5nXCJcbiAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkNy0yLnBuZ1wiXG4gICAgICAgICAgLz5cbiAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiTWVjaGFuaXNtXCIgaWQ9XCJSZXN1bHRzMlwiPlxuICAgICAgICAgIDxINCB0ZXh0PVwiSW5pdGlhbCB0ZXN0aW5nIG9mIHBlZ1JOQXMgYW5kIEV2YWx1YXRpb24gb2Ygc2lsZW50IGVkaXRzXCIvPlxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XG4gICAgICAgICAgPHA+V2l0aCB0aGlzIGV4cGVyaW1lbnQgd2Ugd2FudGVkIHRvIGNvbXBhcmUgdGhlIGVmZmljaWVuY3kgb2YgcGVnUk5BcyB3aXRoIGFuZCB3aXRob3V0IHNpbGVudCBlZGl0cy48L3A+IFxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cbiAgICAgICAgICA8cD5UaGUgRkFDUyBhbmFseXNpcyBzaG93cyB0aGF0IHBlZ1JOQSB3aXRob3V0IHNpbGVudCBlZGl0cyAocGVnUk5BMSkgaGFkIGEgMi4wNSB0aW1lcyBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgdGhhbiBwZWdSTkEgd2l0aCBzaWxlbnQgZWRpdHMgKHBlZ1JOQTIpLjwvcD4gICAgICAgICBcbiAgICAgICAgICA8VHdvSG9yaXpvbnRhbCBcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiRkFDUyBhbmFseXNpcyBvZiBwZWdSTkFzIHdpdGggYW5kIHdpdGhvdXQgc2lsZW50IGVkaXRzLlwiXG4gICAgICAgICAgICBudW09ezh9XG4gICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vc2Utbm9zZS5wbmdcIlxuICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ4LnBuZ1wiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8SDQgdGV4dD1cIlNjcmVlbmluZyBvZiBwZWdSTkEgdmFyaWFuY2VzXCIvPlxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XG4gICAgICAgICAgPHA+Q290cmFuc2ZlY3Rpb24gb2YgcFBFQVJfQ0ZUUiBhbmQgUEUyIGFuZCBhbHNvIDEgb2YgdGhlIDE0IHBlZ1JOQXMgdG8gY29tcGFyZSB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgb2YgYWxsIG9mIG91ciBkZXNpZ25lZCBwZWdSTkFzLjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPlRoZSBwZWdSTkFzIGxlYWQgdG8gZGlmZmVyaW5nIGFtb3VudHMgb2YgY2VsbHMgc2hvd2luZyBmbHVvcmVzY2VuY2UsIHdoaWNoLCBhc3N1bWluZyBjb21wYXJhYmxlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmNpZXMsIGluZGljYXRlcyB2YXJ5aW5nIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeS4gVGhlIHBlZ1JOQTcgc2hvd2VkIHRoZSBoaWdoZXN0IHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IChzZWUgRmlndXJlIDkpLjwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDkucG5nXCIgc3R5bGU9e3toZWlnaHQ6IFwiMTAlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IDxiPkZpZ3VyZSA5LjwvYj5GQUNTIHJlc3VsdHMgb2YgYWxsIHNjcmVlbmVkIHBlZ1JOQXM8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxINCB0ZXh0PVwiQXBwbGljYXRpb24gbHVuZyBlcGl0aGVsaWFsIGNlbGwgbGluZXNcIi8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5XZSB0cmllZCB0byB0cmFuc2ZlY3QgQ0ZCRTQxby0gY2VsbHMgd2l0aCBwREFTMTIxMjQtcHJlZWRpdGVkLCBvdXIgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCwgdG8gY2hlY2sgaWYgYSB0cmFuc2ZlY3Rpb24gb2YgdGhpcyBjZWxsIGxpbmUgaXMgcG9zc2libGUuIEZ1cnRoZXJtb3JlIHdlIHRyaWVkIHRvIGNvIHRyYW5zZmVjdCB0aGUgQ0ZCRTQxby0gd2l0aCBwUEVBUl9DRlRSLCBQRTZjIGFuZCBwZWdSTkE0LjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPlRyYW5zZmVjdGlvbiBvZiBDRkJFNDFvLSB3aXRoIHBEQVMxMjEyNC1wcmVlZGl0ZWQgd2FzIHN1Y2Nlc3NmdWwgKHNlZSBGaWd1cmUgMTApLiBBZnRlciAyNCBob3VycyBhIHN1Y2Nlc3NmdWwgY28gdHJhbnNmZWN0aW9uIG9mIHBQRUFSX0NGVFIgd2l0aCBQRTZjIGFuZCBwZWdSTkE0IHdhcyB2aXNpYmxlLCBhbHRob3VnaCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgd2FzIHJlYWxseSBiYWQgKHNlZSBGaWd1cmUgMTApLjwvcD5cbiAgICAgICAgICA8VHdvVmVydGljYWxcbiAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IHJlc3VsdHMgYWZ0ZXIgMjRoIG9yIDQ4aC4gVHJhbnNmZWN0aW9uIG9mIHBEQVMxMjEyNC1wcmVlZGl0ZWQgd2l0aCBsaXBvZmVjdGFtaW5lIDMwMDAgd2FzIHN1Y2Nlc3NmdWxseSBkb25lIGluIENGQkU0MW8tIGNlbGwgbGluZSBhbmQgdmlzaWJsZSBhZnRlciA0OGguIENGQkU0MW8tIGNlbGwgbGluZSB3YXMgdHJhbnNmZWN0ZWQgd2l0aCBwREFTLUlEVCB3aXRoIExpcG9mZWN0YW1pbmUgMzAwMCBhbmQgYWZ0ZXJ3YXJkcyB3aXRoIExOUHMgaW5jbHVkaW5nIFBFNmMgYW5kIHBlZ1JOQTQgYW5kIHdhcyBhZnRlciAyNGggZmx1b3Jlc2NlbmNlIHZpc2libGUuXCJcbiAgICAgICAgICAgbnVtPXsxMH1cbiAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQxMC0xLnBuZ1wiXG4gICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTAtMi5wbmdcIlxuICAgICAgICAgICAvPlxuICAgICAgICAgIDxINCB0ZXh0PVwiQ29tcGFyaXNvbiBvZiBwcmltZSBlZGl0aW5nIGNvbXBsZXhlcyBQRTIgYW5kIFBFX0NPLU1pbmlcIi8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5wQ01WLVBFMiB3YXMgY28gdHJhbnNmZWN0ZWQgd2l0aCBwREFTMTI0ODkgYW5kIHBDTVYtUEVfQ08tTWluaSB3YXMgY28gdHJhbnNmZWN0ZWQgd2l0aCBwREFTMTI0ODkgaW4gSEVLMjkzIGNlbGwgbGluZS48L3A+IFxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cbiAgICAgICAgICA8cD5UaGUgRkFDUyByZXN1bHRzIHNob3cgdGhhdCB0cmFuc2ZlY3Rpb24gd2l0aCBwQ01WLVBFMiBhcyB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4IGhhZCBlZGl0aW5nIGVmZmljaWVuY3kgb2YgNTIuOTAlIHdoZW4gbm9ybWFsaXplZCBvbiBwREFTMTIxMjQtcHJlZWRpdGVkLiBXaGVuIHBDTVYtUEVfQ08tTWluaSB3YXMgdXNlZCBhcyBhIHByaW1lIGVkaXRpbmcgY29tcGxleCBpdCBoYWQgYSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBvZiAyLjU0JSAoc2VlIEZpZ3VyZSAxMSwgMTIpLjwvcD5cbiAgICAgICAgICA8VHdvVmVydGljYWxcbiAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW5lIDMwMDAuIENvLXRyYW5zZmVjdGlvbiBvZiBwREFTMTI0ODkgd2l0aCBwQ01WLVBFMiBvciBwREFTMTI0ODkgd2l0aCBMVi1QRV9DTy1NaW5pLiBCb3RoIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuXCJcbiAgICAgICAgICAgbnVtPXsxMX1cbiAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQxMS0xLnBuZ1wiXG4gICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTEtMi5wbmdcIlxuICAgICAgICAgICAvPlxuICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vcGUyLXBlLWNvLnBuZ1wiIHN0eWxlPXt7aGVpZ2h0OiBcIjEwJVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgMTI8L2I+RkFDUyBhbmFseXNpcyB0byBjb21wYXJlIHByaW1lIGVkaXRpbmcgY29tcGxleGVzIFBFMiBhbmQgUEVfQ08tTWluaTwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cbiAgICAgICAgICA8cD5XZSBjb21wYXJlZCB0aGUgMyBkaWZmZXJlbnQgUHJpbWUgRWRpdGluZyBjb21wbGV4ZXMgKHBDTVYtUEUyLCBwQ01WLVBFMl9DTy1NaW5pICYgcENNVi1QRTZjKSB0byBjaGVjayB3aGljaCBvbmUgaGFzIHRoZSBiZXN0IHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LjwvcD4gXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPlRoZSBGQUNTIG1lYXN1cmVtZW50IHNob3dzIHRoZSBmbHVvcmVzY2VuY2UgcmF0ZSBjZWxscyBjby10cmFuc2ZlY3RlZCB3aXRoIHBEQVMxMjQ4OSBhbmQgcENNVi1QRTZjIGFzIGEgcHJpbWUgZWRpdGluZyBjb21wbGV4LiBUaGUgZWRpdGluZyBlZmZpY2llbmN5IG9mZiBQRTZjIHdhcyBieSBmYXIgdGhlIGhpZ2hlc3QgKDgxLjg4JSkgKHNlZSBGaWd1cmUgMTMsIDE0KS4gVGhlIGVmZmljaWVuY3kgd2FzIDEuNTUgaGlnaGVyIHRoYW4gdGhlIGVmZmljaWVuY3kgd2hlbiBwQ01WLVBFMiB3YXMgdXNlZCBhcyBwcmltZSBlZGl0aW5nIGNvbXBsZXggKHNlZSBGaWd1cmUgMTMpLjwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDEzLnBuZ1wiIHN0eWxlPXt7aGVpZ2h0OiBcIjEwJVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgMTM8L2I+TWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwIGFuZCBjbyB0cmFuc2ZlY3Rpb24gd2l0aCBwQ01WLVBFNmMgYW5kIHBEQVMxMjQ4OS48L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxUd29Ib3Jpem9udGFsXG4gICAgICAgICAgZGVzY3JpcHRpb249XCJGQUNTIHJlc3VsdHMgZm9yIGV2YWx1YXRpb24gb2YgUEU2YyBwZXJmb3JtYW5jZS5cIlxuICAgICAgICAgIG51bT17MTR9XG4gICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL3BlMi1wZS1jby1wZTZjLnBuZ1wiXG4gICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQxMi5wbmdcIlxuICAgICAgICAgIC8+IFxuICAgICAgPC9TdWJlc2N0aW9uID5cbiAgICAgIDxTdWJlc2N0aW9uICB0aXRsZT1cIkRlbGl2ZXJ5XCIgaWQ9XCJSZXN1bHRzM1wiPlxuICAgICAgPEg0IHRleHQ9XCJSTkEgU3ludGhlc2lzXCIvPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9ybmEtZ2VsLWZpbmFsLnBuZ1wiLz5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICA8Yj5GaWd1cmUgMS4gPC9iPlxuICAgICAgICAgICAgICBHZWwgb2YgRGVuYXR1cmluZyBSTkEgR2VsIEVsZWN0cm9waG9yZXNpcyBmb3IgbVJOQSBzeW50aGVzaXplZCBmcm9tIHBjRE5BIDMuMSBlWUZQIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBSTkEgc3ludGhlc2lzLiBMYW5lIDE6IExvdyBSYW5nZSBSaWJvIFJ1bGVyLCBMYW5lIDI6IEZMdWMgQ29udHJvbCBUZW1wbGF0ZSwgTGFuZSAzOiBOZWdhdGl2ZSBDb250cm9sLCBMYW5lIDQtOSBtUk5BIGZyb20gcGNETkEgMy4xIGVZRlAuXG4gICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxwPldlIGJlZ2FuIGJ5IHN5bnRoZXNpemluZyBtUk5BIDxpPmluIHZpdHJvPC9pPiB1c2luZyBhIHBsYXNtaWQgd2l0aCBhIGVZRlAgcmVwb3J0ZXIgZnJvbSBBZGRnZW5lIChwY0ROQSAzLjEgZVlGUCkgYmVmb3JlIHByb2NlZWRpbmcgd2l0aCB0aGUgc3ludGhlc2lzIG9mIG91ciBhcHByb3hpbWF0ZWx5IDYwMDAgYnAgcHJpbWUgZWRpdGluZyBSTkEuIFRoaXMgd2FzIGRvbmUgdG8gdGVzdCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgYW5kIGNvbXBhdGliaWxpdHkgb2Ygb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLiBUaGUgc3ludGhlc2lzIHdhcyBzdWNjZXNzZnVsLCB5aWVsZGluZyBhbiBhdmVyYWdlIG9mIDE0MDAgbmcvXHUwMEI1bCBvZiBwdXJpZmllZCBtUk5BIGZyb20gMSBcdTAwQjVnIG9mIHBsYXNtaWQgRE5BIGRldGVybWluZWQgYnkgTmFub2Ryb3AgbWVhc3VyZW1lbnQgKGRhdGEgbm90IHNob3duKS4gVGhlIHNpemUgYW5kIGludGVncml0eSBvZiB0aGUgc3ludGhlc2l6ZWQgUk5BIHdlcmUgY29uZmlybWVkIHVzaW5nIGEgZGVuYXR1cmluZyBSTkEgZ2VsLCB3aGVyZSB3ZSBleHBlY3RlZCB0byBzZWUgYSBwcm9kdWN0IG9mIDkwMCBudWNsZW90aWRlcy4gQXMgYW50aWNpcGF0ZWQsIGEgc3Ryb25nIGFuZCBwcm9taW5lbnQgYmFuZCBjb3JyZXNwb25kaW5nIHRvIHRoaXMgc2l6ZSB3YXMgb2JzZXJ2ZWQgKEZpZ3VyZSBYKS4gVGhpcyBtUk5BIHdhcyBzdWJzZXF1ZW50bHkgdXNlZCBpbiBmdXJ0aGVyIExOUCBmb3JtdWxhdGlvbnMgd2l0aCBSTkEuPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPEg0IHRleHQ9XCJDYXltYW4gTE5QXCIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPHA+TmV4dCwgd2UgZm9ybXVsYXRlZCB0aGUgTE5QcyB1c2luZyB0aGUgQ2F5bWFuIExpcGlkTGF1bmNoXHUyMTIyIExOUC0xMDIgRXhwbG9yYXRpb24gS2l0IGFmdGVyIHRoZSBtYW51ZmFjdHVyZXJzIHByb3RvY29sLiBUaGUgaW5pdGlhbCBhc3NlbWJseSBhdHRlbXB0IHdhcyB1bnN1Y2Nlc3NmdWwsIGFzIG5vIGNsb3VkeSwgYmx1aXNoIHNvbHV0aW9uIGZvcm1lZCBhZnRlciBtaXhpbmcgdGhlIGxpcGlkcy4gQWRkaXRpb25hbGx5LCB0cmFuc2ZlY3Rpb24gb2YgSEVLMjkzIGNlbGxzIHdpdGggTE5QcyBjb250YWluaW5nIG51Y2xlaWMgYWNpZHMgZGlkIG5vdCBwcm9kdWNlIGFueSBmbHVvcmVzY2VuY2UuIEFmdGVyIGNvbnN1bHRpbmcgd2l0aCBleHBlcnQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncmFkdWtpYycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBNYXJjbyBSYWR1a2ljPC9hPiBhbmQgYWRqdXN0aW5nIG91ciBMTlAgZm9ybXVsYXRpb24gYW5kIHRyYW5zZmVjdGlvbiBwcm90b2NvbHMsIHNwZWNpZmljYWxseSBieSBwcmUtYWNpZGlmeWluZyB0aGUgT3B0aU1FTSBtZWRpdW0sIHdlIHdlcmUgYWJsZSB0byBzdWNjZXNzZnVsbHkgYXNzZW1ibGUgYW5kIHRyYW5zZmVjdCB0aGUgTE5Qcy4gV2UgYWxzbyBnb3QgZnJvbSBoaW0gTWluaWNpcmNsZSBETkEgZnJvbSA8YSBocmVmPVwiaHR0cHM6Ly93d3cucGxhc21pZGZhY3RvcnkuY29tL2N1c3RvbS1kbmEvbWluaWNpcmNsZS1kbmEvXCIgdGl0bGU9XCJQbGFzbWlkRmFjdG9yeVwiID5QbGFzbWlkRmFjdG9yeTwvYT4gYXMgYSBzbWFsbCBwbGFzbWlkIGNhcnJ5aW5nIGFuIGVZRlAgZ2VuZSBhbmQgZWFzeSB0byB0cmFuc2Zvcm0sIGJ5IHRoYXQgc2VydmluZyBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgaW4gb3VyIGV4cGVyaW1lbnRzLiBVcG9uIHBpcGV0dGluZyB0aGUgY29tcG9uZW50cyB0b2dldGhlciwgdGhlIHNvbHV0aW9uIGltbWVkaWF0ZWx5IHR1cm5lZCBjbG91ZHkgYW5kIGJsdWlzaCwgaW5kaWNhdGluZyBzdWNjZXNzZnVsIExOUCBmb3JtYXRpb24gKEZpZ3VyZSBYKS48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL2NheW1hbmxucGJsdWUud2VicFwiLz5cbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgWC4gPC9iPlxuICAgICAgICAgICAgICAgICAgQ2F5bWFuIExOUCBGb3JtYXRpb24gaW5kaWNhdGVkIGJ5IGJsdWUgY29sb3IgYW5kIHR1cmJpZGl0eS4gTWluaSBETkEgPSBNaW5pY2lyY2xlIEROQSBmcm9tIFBsYXNtaWRGYWN0b3J5LlxuICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxINSB0ZXh0PVwiVHJhbnNmZWN0aW9uXCIvPlxuICAgICAgICAgICAgPHA+VG8gZXZhbHVhdGUgdGhlIGVmZmljaWVuY3kgb2YgdHJhbnNmZWN0aW9uLCB3ZSBwZXJmb3JtZWQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHkgKExlaWNhIERNSTYwMDAgQiBhdCAyMHggbWFnbmlmaWNhdGlvbikgb24gSEVLMjkzIGNlbGxzIHRyYW5zZmVjdGVkIHdpdGggTE5QLWZvcm11bGF0ZWQgRE5BIGFuZCBtUk5BIG9mIHBjRE5BIDMuMSBlWUZQLCBNaW5pY2lyY2xlIEROQSBhcyB0ZWNobmljYWwgcG9zaXRpdmUgY29udHJvbCBhbmQgTE5QIHdpdGhvdXQgY2FyZ28uPC9wPlxuICAgICAgICAgICAgPHA+MjQgaCwgNDggaCBhbmQgNzIgaCBwb3N0LXRyYW5zZmVjdGlvbiwgd2Ugb2JzZXJ2ZWQgaW4gdGhlIGNvbmRpdGlvbnMgd2l0aCBMaXBvZmVjdGFtaW5lIGFsb25lLCBvciBjb21iaW5lZCB3aXRoIEROQSBvciBSTkEsIG5vIGZsdW9yZXNjZW5jZSwgaW5kaWNhdGluZyB1bnN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uLiBTaW1pbGFybHksIG5vIGZsdW9yZXNjZW5jZSB3YXMgc2VlbiBpbiBjZWxscyB0cmVhdGVkIHdpdGggTE5QcyBhbG9uZSBvciBpbiBjb21iaW5hdGlvbiB3aXRoIEROQSBvciBSTkEuIFdoZW4gTE5QcyB3ZXJlIGNvbWJpbmVkIHdpdGggTWluaWNpcmNsZSBETkEsIGNsZWFyIGZsdW9yZXNjZW5jZSB3YXMgb2JzZXJ2ZWQsIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gYW5kIGV4cHJlc3Npb24gb2Ygb3VyIGVZRlAgcmVwb3J0ZXIgdW5kZXIgdGhpcyBjb25kaXRpb24gKGZpZ3VyZSBYKS4gSG93ZXZlciwgYSBzdHJvbmcgYmFja2dyb3VuZCBmbHVvcmVzY2VuY2UgZnJvbSB0aGUgT3B0aU1FTSBtZWRpdW0gd2FzIG9ic2VydmVkLCBjb21wbGljYXRpbmcgdGhlIGFuYWx5c2lzLjwvcD5cbiAgICAgICAgICAgIDxwPk92ZXJhbGwsIGFtb25nIGFsbCB0aGUgdGVzdGVkIGNvbmRpdGlvbnMsIHRoZSBMTlAgZm9ybXVsYXRpb24gd2l0aCBNaW5pY2lyY2xlIEROQSB3YXMgdGhlIG9ubHkgY29tYmluYXRpb24gdGhhdCByZXN1bHRlZCBpbiBub3RpY2VhYmxlIGZsdW9yZXNjZW5jZSwgc3VnZ2VzdGluZyBpdCB0byBiZSB0aGUgbW9zdCBlZmZlY3RpdmUgdHJhbnNmZWN0aW9uIG1ldGhvZCBmb3IgSEVLMjkzIGNlbGxzIGluIHRoaXMgZXhwZXJpbWVudC48L3A+XG4gICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICA8aW1nIHNyYz1cIkluc2VydCBVUkwgaGVyZVwiLz5cbiAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICBGaWd1cmUgWCBGbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHRyYW5zZmVjdGVkIEhFSzI5MyBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiBhZnRlciA3MiBoIHBvc3QtdHJhbnNmZWN0aW9uIHdpdGggZGlmZmVyZW50IENheW1hbiBMTlAgZm9ybXVsYXRpb25zIHJlY29yZGVkIHdpdGggTGVpY2EgRE1JNjAwMCBCLlxuICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8SDUgdGV4dD1cIlNFTVwiLz5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxwPlNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSkgKFBoZW5vbSBQcm9YLCBUaGVybW8gRmlzaGVyKSB3YXMgZW1wbG95ZWQgYnkgdXMgdG8gZXhhbWluZSB0aGUgbW9ycGhvbG9neSBhbmQgc3VyZmFjZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgQ2F5bWFuIExOUHMuIFRoZSBTRU0gaW1hZ2VzIHJldmVhbGVkIHRoYXQgdGhlIExOUHMgZGlzcGxheWVkIGEgZ2VuZXJhbGx5IHNwaGVyaWNhbCBtb3JwaG9sb2d5IHdpdGggYSByZWxhdGl2ZWx5IHNtb290aCBzdXJmYWNlIChGaWd1cmUgWCkuIFRoZSBhdmVyYWdlIHBhcnRpY2xlIHNpemUgd2FzIGFwcHJveGltYXRlbHkgMjAwIG5tLiBIb3dldmVyLCBhIGhldGVyb2dlbmVvdXMgZGlzdHJpYnV0aW9uIG9mIHBhcnRpY2xlIHNpemVzIHdhcyBvYnNlcnZlZCwgd2l0aCBzb21lIGxhcmdlciwgcm91bmQgc3RydWN0dXJlcyBwcmVzZW50LiBUaGVzZSBsYXJnZXIgc3RydWN0dXJlcyBjb3VsZCBwb3RlbnRpYWxseSBpbmRpY2F0ZSBhZ2dyZWdhdGVkIExOUHMuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9zY3JlZW5zaG90LTIwMjQtMTAtMDEtMjAwNjI5LnBuZ1wiIGFsdD1cIkNheVJFTVwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjIwMHB0XCJ9fS8+IFxuICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIFguPC9iPlxuICAgICAgICAgICAgICAgICAgU0VNIGltYWdlIG9mIENheW1hbiBMTlBzICgxMCwwMDB4IG1hZ25pZmljYXRpb24pIHdpdGggVG9wb2dyYXBoeSBtb2RlLiAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHA+V2hpbGUgbWFueSBwYXJ0aWNsZXMgcmV0YWluZWQgdGhlaXIgc3RydWN0dXJhbCBpbnRlZ3JpdHksIHRoZSBwcmVzZW5jZSBvZiB0aGVzZSBhZ2dyZWdhdGVzIHN1Z2dlc3RzIHRoYXQsIHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucywgdGhlIExOUHMgbWF5IHRlbmQgdG8gY2x1c3Rlci4gSXQgaXMgaW1wb3J0YW50IHRvIG5vdGUgdGhhdCBmb3IgU0VNIGFuYWx5c2lzLCB0aGUgc2FtcGxlcyB3ZXJlIGRyaWVkIGFuZCBvYnNlcnZlZCB1bmRlciB2YWN1dW0sIHdoaWNoIHByb2JhYmx5IGhhdmUgYWZmZWN0ZWQgdGhlIHN0cnVjdHVyZSBhbmQgc2hhcGUgb2YgdGhlIExOUHMuIFRoaXMgcHJlcGFyYXRpb24gcHJvY2VzcyBjYW4gaW50cm9kdWNlIGFydGlmYWN0cyB0aGF0IHdvdWxkIG5vdCB0eXBpY2FsbHkgYmUgcHJlc2VudCBpbiBzb2x1dGlvbiBhbmQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgd2hlbiBpbnRlcnByZXRpbmcgdGhlIHJlc3VsdHMuIEFkZGl0aW9uYWxseSwgdGhlIGNvbnRyYXN0IHVuZGVyIHZhY3V1bSBjb25kaXRpb25zIHdhcyB0b28gbG93IHRvIHJlbGlhYmx5IGRpc3Rpbmd1aXNoIHRoZSBMTlBzIHdpdGggc3VmZmljaWVudCBkZXRhaWwuIEl0IHByb3ZpZGVkIGEgdXNlZnVsIGluaXRpYWwgZ2xpbXBzZSBpbnRvIHRoZSB3b3JsZCBvZiBuYW5vcGFydGljbGVzLiBGdXJ0aGVyIGNvbXBsZW1lbnRhcnkgdGVjaG5pcXVlcyB3aWxsIGJlIG5lZWRlZCBmb3IgYSBtb3JlIGFjY3VyYXRlIGFuZCBkZXRhaWxlZCBjaGFyYWN0ZXJpemF0aW9uLjwvcD5cbiAgICAgICAgICA8SDQgdGV4dD1cIkNvcmRlbiBMTlBcIi8+XG4gICAgICAgICAgPEg1IHRleHQ9XCJUcmFuc2ZlY3Rpb25cIi8+XG4gICAgICAgICAgPHA+Rmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHkgd2l0aCB0aGUgTGVpY2EgRE1JNjAwMCBCIG1pY3Jvc2NvcGUgYXQgMjB4IG1hZ25pZmljYXRpb24gd2FzICBieSB1cyBvbiBIRUsyOTMgY2VsbHMgdHJhbnNmZWN0ZWQgd2l0aCBMTlBzIGNvbnRhaW5pbmcgcGNETkEgMy4xIGVZRlAgRE5BIGFuZCBtUk5BLiBNaW5pY2lyY2xlIEROQSBzZXJ2ZWQgYXMgdGhlIHBvc2l0aXZlIGNvbnRyb2wsIHdoaWxlIExOUHMgd2l0aG91dCBjYXJnbyBhY3RlZCBhcyB0aGUgbmVnYXRpdmUgY29udHJvbC4gQ2VsbHMgd2VyZSBpbWFnZWQgYXQgMjQgaCwgNDggaCwgYW5kIDcyIGggcG9zdC10cmFuc2ZlY3Rpb24uPC9wPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvd2hhdHNhcHAtaW1hZ2UtMjAyNC0wOS0yNC1hdC0xMi01Ny01OS5qcGVnXCIvPlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDxiPkZpZ3VyZSBYLiA8L2I+XG4gICAgICAgICAgICAgIFR1cmJpZGl0eSBhZnRlciBjb21wb25lbnRzIG9mIHRoZSBDb3JkZW4gTE5QIGhhdmUgYmVlbiBwaXBldHRlZCB0b2dldGhlciBpbmRpY2F0ZXMgcGFydGljbGUgZm9ybWF0aW9uLiAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxwPkR1cmluZyB0aGUgcHJlcGFyYXRpb24gb2YgdGhlIExOUHMsIHRoZSBzb2x1dGlvbiBiZWNhbWUgdHVyYmlkIGFuZCBibHVpc2gsIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBuYW5vcGFydGljbGUgZm9ybWF0aW9uIChGaWd1cmUgWCkuIFRoaXMgd2FzIGZ1cnRoZXIgY29uZmlybWVkIGJ5IGNyeW8tRU0gYW5hbHlzaXMsIHdoaWNoIHJldmVhbGVkIHRoZSBwcmVzZW5jZSBvZiB3ZWxsLWZvcm1lZCBMTlBzLiBEZXNwaXRlIHRoZSBzdWNjZXNzZnVsIGZvcm1hdGlvbiBvZiBMTlBzLCBubyBkZXRlY3RhYmxlIGZsdW9yZXNjZW5jZSB3YXMgb2JzZXJ2ZWQgaW4gdGhlIGNlbGxzIHRyZWF0ZWQgd2l0aCBMTlBzIGNvbnRhaW5pbmcgcGNETkEgMy4xIGVZRlAgRE5BIG9yIG1STkEgYXQgYW55IG9mIHRoZSBtZWFzdXJlZCB0aW1lIHBvaW50cywgaW5kaWNhdGluZyB0aGF0IHRyYW5zZmVjdGlvbiBkaWQgbm90IG9jY3VyIHVuZGVyIHRoZXNlIGNvbmRpdGlvbnMuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cD5RdWFudGl0YXRpdmVseSwgbm9uZSBvZiB0aGUgTE5QLXRyZWF0ZWQgc2FtcGxlcyBzaG93ZWQgc2lnbmlmaWNhbnQgZmx1b3Jlc2NlbmNlLCBpbmRpY2F0aW5nIGEgZmFpbHVyZSBpbiB0cmFuc2ZlY3Rpb24uIFRoZSBsYWNrIG9mIGZsdW9yZXNjZW5jZSBpbiBhbGwgZXhwZXJpbWVudGFsIGdyb3VwcywgZXhjZXB0IHRoZSBwb3NpdGl2ZSBjb250cm9sLCBzdWdnZXN0cyBlaXRoZXIgaW5zdWZmaWNpZW50IHVwdGFrZSBvZiB0aGUgTE5QcyBieSB0aGUgY2VsbHMgb3IgYSBmYWlsdXJlIGluIGV4cHJlc3Npb24gb2YgdGhlIFlGUCByZXBvcnRlci4gPC9wPlxuICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICA8aW1nIHNyYz1cIkluc2VydCBVUkwgaGVyZVwiLz5cbiAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICBGbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHRyYW5zZmVjdGVkIEhFSzI5MyBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiBhZnRlciA0OCBoIHBvc3QtdHJhbnNmZWN0aW9uIHdpdGggZGlmZmVyZW50IENvcmRlbiBMTlAgZm9ybXVsYXRpb25zIHJlY29yZGVkIHdpdGggTGVpY2EgRE1JNjAwMCBCLlxuICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgIDxINSB0ZXh0PVwiQ3J5by1FTVwiLz5cbiAgICAgICAgPHA+Q3J5by1FTSAoY3J5b2dlbmljIGVsZWN0cm9uIG1pY3Jvc2NvcHkpIGFzIGEgZm9ybSBvZiB0cmFuc21pc3Npb24gZWxlY3Ryb24gbWljcm9zY29weSAoVEVNKSB3YXMgcGVyZm9ybWVkIGJ5IHVzIHVzaW5nIGEgSkVPTCBKRU0tMjIwMEZTIGVsZWN0cm9uIG1pY3Jvc2NvcGUgKEpFT0wsIEZyZWlzaW5nLCBHZXJtYW55KSBvcGVyYXRpbmcgYXQgMjAwa1YsIGVxdWlwcGVkIHdpdGggYSBjb2xkIGZpZWxkIGVtaXNzaW9uIGVsZWN0cm9uIGd1bi4gVGhlIHNhbXBsZSBwcmVwYXJhdGlvbiBhbmQgaW1hZ2luZyB3ZXJlIGNhcnJpZWQgb3V0IGF0IGNyeW9nZW5pYyB0ZW1wZXJhdHVyZXMsIHdoaWNoIGFsbG93ZWQgZm9yIHRoZSB2aXN1YWxpemF0aW9uIG9mIExOUHMgaW4gdGhlaXIgbmF0aXZlIGh5ZHJhdGVkIHN0YXRlLjwvcD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9jb3JkZW4tbG5wLmpwZ1wiLz5cbiAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICBDcnlvLUVNIGltYWdlIG9mIENvcmRlbiBMTlBzLlxuICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPHA+VGhlIGltYWdlcyByZXZlYWwgdGhlIHByZXNlbmNlIG9mIHNwaGVyaWNhbCBMTlAgc3RydWN0dXJlcyB3aXRoIGFuIGFwcHJveGltYXRlIHNpemUgb2YgMTAwIG5tIChGaWd1cmUgWCkuIFRoZSBMTlBzIGFwcGVhciB3ZWxsLWZvcm1lZCwgd2l0aCB1bmlmb3JtIG1vcnBob2xvZ3ksIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBuYW5vcGFydGljbGUgZm9ybWF0aW9uLiBJbiBhZGRpdGlvbiB0byBpbmRpdmlkdWFsIHBhcnRpY2xlcywgc29tZSBsYXJnZXIsIHJvdW5kIHN0cnVjdHVyZXMgd2VyZSBhbHNvIG9ic2VydmVkLCB3aGljaCBjb3VsZCByZXByZXNlbnQgYWdncmVnYXRlZCBMTlBzLiBUaGVzZSBhZ2dyZWdhdGlvbnMgYXJlIGEgY29tbW9uIHBoZW5vbWVub24gaW4gTE5QIHN5c3RlbXMgYW5kIGNvdWxkIGJlIGF0dHJpYnV0ZWQgdG8gaW50ZXJhY3Rpb25zIGJldHdlZW4gcGFydGljbGVzIHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucy48L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cD5XaGlsZSBDcnlvLUVNIHByb3ZpZGVzIHZhbHVhYmxlIGluc2lnaHRzIGludG8gdGhlIG1vcnBob2xvZ3kgYW5kIHNpemUgZGlzdHJpYnV0aW9uIG9mIHRoZSBMTlBzLCB0aGVyZSBhcmUgc29tZSBsaW1pdGF0aW9ucyB0byB0aGlzIHRlY2huaXF1ZS4gVGhlIGltYWdpbmcgcHJvY2VzcyBpbnZvbHZlcyBjcnlvZ2VuaWMgZnJlZXppbmcgYW5kIGV4cG9zdXJlIHRvIGhpZ2gtZW5lcmd5IGVsZWN0cm9uIGJlYW1zLCB3aGljaCBjYW4gcG90ZW50aWFsbHkgaW5kdWNlIG1pbm9yIHN0cnVjdHVyYWwgYXJ0aWZhY3RzLiBGdXJ0aGVybW9yZSwgdGhlIHRoaW5uZXNzIG9mIHRoZSBzYW1wbGUgbWF5IGxpbWl0IGNvbnRyYXN0LCBtYWtpbmcgaXQgZGlmZmljdWx0IHRvIGZ1bGx5IGRpc3Rpbmd1aXNoIGJldHdlZW4gZGlmZmVyZW50IExOUCBwb3B1bGF0aW9ucyBvciB0aGVpciBpbnRlcm5hbCBzdHJ1Y3R1cmVzLiBEZXNwaXRlIHRoZXNlIGxpbWl0YXRpb25zLCBDcnlvLUVNIHN0aWxsIG9mZmVycyBhIGhpZ2gtcmVzb2x1dGlvbiB2aWV3IG9mIHRoZSBMTlBzIGluIHRoZWlyIG5lYXItbmF0aXZlIHN0YXRlLCBwcm92aWRpbmcgZXNzZW50aWFsIGluZm9ybWF0aW9uIGFib3V0IHRoZWlyIHNpemUgYW5kIHNoYXBlLjwvcD5cbiAgICAgICAgPEg0IHRleHQ9XCJTb3J0IExOUFwiLz5cbiAgICAgICAgPEg1IHRleHQ9XCJUcmFuc2ZlY3Rpb25cIi8+XG4gICAgICAgICAgPHA+VGV4dCA6RDwvcD5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPVwiSW5zZXJ0IFVSTCBoZXJlXCIvPlxuICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgWC4gPC9iPlxuICAgICAgICAgICAgICAgIERlc2NyaXB0aW9uIGhlcmVcbiAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgIDxINSB0ZXh0PVwiRkFDU1wiLz5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICA8cD5XZSBwZXJmb3JtZWQgRkFDUyBhbmFseXNpcyA3MiBoIHBvc3QtdHJhbnNmZWN0aW9uIHRvIGV2YWx1YXRlIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBvZiB0aGUgU09SVCBMTlAgaW4gSEVLMjkzLiBUaGUgcmVsYXRpdmUgcGVyY2VudGFnZSBvZiBmbHVvcmVzY2VudCBjZWxscyB3YXMgZGV0ZXJtaW5lZCBieSBtZWFzdXJpbmcgdGhlIHBlcmNlbnRhZ2Ugb2YgRklUQy1BKyBjZWxscywgZm9sbG93ZWQgYnkgbm9ybWFsaXphdGlvbiB0byB0aGUgbmVnYXRpdmUgY29udHJvbCBhbmQgZm9sZCBjaGFuZ2UgY2FsY3VsYXRpb24uPC9wPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NvcnRsbnAtZmFjcy5wbmdcIiBhbHQ9XCJTT1JURkFDU1wiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjIwMHB0XCJ9fS8+IFxuICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgWC4gPC9iPlxuICAgICAgICAgICAgICAgICBQZXJjZW50YWdlIG9mIGZsdW9yZXNjZW50IGNlbGxzIChGSVRDLUErKSBwZXJmb3JtZWQgNzIgaCBwb3N0LXRyYW5zZmVjdGlvbiBvZiBTT1JUIExOUCBpbiBIRUsyOTMuIE1lYW4gKy8tIFNFTSBmb3Igbj0zLiBGb3Igc3RhdGlzdGljcyBvbmUtd2F5IEFOT1ZBIHdhcyBwZXJmb3JtZWQuIFxuICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxwPlRoZSBTT1JUIExOUC10cmFuc2ZlY3RlZCBzYW1wbGUgY2FycnlpbmcgTWluaWNpcmNsZSBETkEgZXhoaWJpdGVkIGEgc2lnbmlmaWNhbnQgaW5jcmVhc2UgaW4gZmx1b3Jlc2NlbmNlIGNvbXBhcmVkIHRvIHRoZSBsaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbiBvZiBNaW5pY2lyY2xlIEROQSwgd2l0aCBhcHByb3hpbWF0ZWx5IDE0IHRpbWVzIG1vcmUgZmx1b3Jlc2NlbnQgY2VsbHMgY29tcGFyZWQgdG8gdGhlIGxpcG9mZWN0YW1pbmUtdHJhbnNmZWN0ZWQgc2FtcGxlIChGaWd1cmUgYSkuIFRoaXMgc3Vic3RhbnRpYWwgZGlmZmVyZW5jZSBpbmRpY2F0ZXMgdGhhdCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgd2l0aCBMTlBzIGlzIG1hcmtlZGx5IGhpZ2hlciB0aGFuIHdpdGggbGlwb2ZlY3RhbWluZSwgZGVtb25zdHJhdGluZyB0aGUgc3VwZXJpb3IgcGVyZm9ybWFuY2Ugb2Ygb3VyIExOUCBmb3JtdWxhdGlvbiBpbiBkZWxpdmVyaW5nIG51Y2xlaWMgYWNpZHMgdG8gSEVLIGNlbGxzLjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxINSB0ZXh0PVwiWmV0YSBQb3RlbnRpYWxcIi8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8cD5XZSBtZWFzdXJlZCBib3RoIHRoZSBwYXJ0aWNsZSBzaXplIGRpc3RyaWJ1dGlvbiBhbmQgdGhlIFpldGEgcG90ZW50aWFsIHVzaW5nIHRoZSBOYW5vdHJhY2sgV2F2ZSBJSS4gV2UgY291bGQgYXNzdW1lIHRoYXQgdGhlIHBhcnRpY2xlcyBleGhpYml0IGEgcG9sYXJpemVkIFpldGEgcG90ZW50aWFsLCB3aGljaCBpcyBzdWZmaWNpZW50IHRvIHByb3ZpZGUgZWxlY3Ryb3N0YXRpYyBzdGFiaWxpemF0aW9uLCB0aGVyZWJ5IHByZXZlbnRpbmcgYWdncmVnYXRpb24gYW5kIG1haW50YWluaW5nIHBhcnRpY2xlIHN0YWJpbGl0eS4gRm9yIGVmZmVjdGl2ZSB0YXJnZXRpbmcgb2YgbHVuZyBjZWxscyB3aGljaCBoYXZlIG5lZ2F0aXZlbHkgY2hhcmdlZCBzdXJmYWNlcywgYSBuZWdhdGl2ZSBwb2xhcml0eSBpcyBkZXNpcmFibGUgbWVhbmluZyB0aGUgTE5QIGlzIHBvc2l0aXZlbHkgY2hhcmdlZCwgc28gdGhlcmUgY2FuIGJlIGVsZWN0cm9zdGF0aWMgYXR0cmFjdGlvbiB0byBsdW5nIGVwaXRoZWxpYWwgY2VsbHMuIFdlIHdlcmUgYWJsZSB0byBzaG93IHRoYXQgb3VyIFNPUlQgTE5QIGhhcyB0aGVzZSBwcm9wZXJ0aWVzIHJlZ2FyZGxlc3Mgb2YgdGhlIGxvYWQuIEZ1cnRoZXJtb3JlIHdlIGNvdWxkIDxhIGhyZWY9XCJodHRwczovL2NoZW0ubGlicmV0ZXh0cy5vcmcvQm9va3NoZWx2ZXMvQW5hbHl0aWNhbF9DaGVtaXN0cnkvUGh5c2ljYWxfTWV0aG9kc19pbl9DaGVtaXN0cnlfYW5kX05hbm9fU2NpZW5jZV8oQmFycm9uKS8wMiUzQV9QaHlzaWNhbF9hbmRfVGhlcm1hbF9BbmFseXNpcy8yLjA1JTNBX1pldGFfUG90ZW50aWFsX0FuYWx5c2lzXCIgdGl0bGU9XCJTdGFiWmV0YVwiID5kZXRlcm1pbmUgdGhlIHN0YWJpbGl0eSB2aWEgdGhlIFpldGEgcG90ZW50aWFsPC9hPi4gSW4gZGV0YWlsIHRoZSBtZWFuIG9mIHRoZSBaZXRhIHBvdGVudGlhbCBsYXlzIGF0IDE2LjIgbVYgZm9yIHRoZSBTT1JUIExOUCB3aXRoIE1pbmljaXJjbGUgRE5BIGFzIGNhcmdvLCBpbmRpY2F0aW5nIGluY2lwaWVudCBzdGFiaWxpdHksIGF0IDU5LjQ1IG1WIGZvciB0aGUgU09SVCBMTlAgd2l0aCBwY0ROQSAzLjEgZVlGUCBhcyBjYXJnbywgaW5kaWNhdGluZyBnb29kIHN0YWJpbGl0eSBhbmQgYXQgODguMjIgbVYgZm9yIHRoZSBTT1JUIExOUCB3aXRob3V0IGNhcmdvIGluZGljYXRpbmcgZXhjZWxsZW50IHN0YWJpbGl0eSAoRmlndXJlIHopLiBUaGUgZ29vZCBzdGFiaWxpdHkgb2YgdGhlIFNPUlQgTE5QIHdpdGggcGNETkEgMy4xIGVZRlAgaXMgY3J1Y2lhbCBmb3Igb3VyIHB1cnBvc2VzLCBhcyBpdCBlbnN1cmVzIGVmZmVjdGl2ZSBkZWxpdmVyeSBhbmQgcGVyZm9ybWFuY2UuIEluIGNvbnRyYXN0LCB0aGUgc3RhYmlsaXR5IG9mIHRoZSBMTlBzIHdpdGggTWluaWNpcmNsZSBETkEgY2FuIGJlIGNvbnNpZGVyZWQgc2Vjb25kYXJ5LCBhcyBpdCBwcmltYXJpbHkgc2VydmVzIGFzIGEgcG9zaXRpdmUgdHJhbnNmZWN0aW9uIGNvbnRyb2wgYW5kIGlzIG5vdCBjZW50cmFsIHRvIG91ciBtYWluIG9iamVjdGl2ZXMuPC9wPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NvcnQtemV0YS53ZWJwXCIvPlxuICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSBYLiA8L2I+XG4gICAgICAgICAgICAgICAgICAgIFpldGEgcG90ZW50aWFsIG9mIFNPUlQgTE5QIHdpdGggZGlmZmVyZW50IGNhcmdvcyBtZWFzdXJlZCB3aXRoIE5hbm90cmFjayBXYXZlIElJIGluZGljYXRpbmcgdmFyeWluZyBkZWdyZWVzIG9mIHN0YWJpbGl0eSBidXQgbW9zdCBpbXBvcnRhbnQgZ29vZCBzdGFiaWxpdHkgZm9yIHRoZSBTT1JUIExOUCBsb2FkZWQgd2l0aCBwY0ROQSAzLjEgZVlGUCAoTE5QIEROQSkuIE1lYW4gKy8tIFNFTSBmb3Igbj01LiBGb3Igc3RhdGlzdGljcyBvbmUtd2F5IEFOT1ZBIHdhcyBwZXJmb3JtZWQuICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9zY3JlZW5zaG90LTIwMjQtMTAtMDEtMjA0OTM4LnBuZ1wiLz5cbiAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICBTaXplIGRpc3RyaWJ1dGlvbiBmb3IgdGhlIFNPUlQgTE5QIHdpdGggZGlmZmVyZW50IGNhcmdvcyB3ZWlnaHRlZCBieSBzY2F0dGVyaW5nIGludGVuc2l0eSBtZWFzdXJlZCB3aXRoIE5hbm90cmFjayBXYXZlIElJLlxuICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPHA+VGhlIHNpemUgZGlzdHJpYnV0aW9uIGZvciBhbGwgdGhyZWUgc2FtcGxlcyBzaG93cyBhIHByZWRvbWluYW50bHkgbW9ub21vZGFsLCB5ZXQgYnJvYWQsIGRpc3RyaWJ1dGlvbiB3aXRoIGRpYW1ldGVycyByYW5naW5nIGJldHdlZW4gNTAgbm0gYW5kIDcwMCBubSwgd2l0aCB0aGUgcGVhayBvZiB0aGUgZGlzdHJpYnV0aW9uIGx5aW5nIGJldHdlZW4gMTUwIG5tIGFuZCAyMDAgbm0gKEZpZ3VyZSBkKS4gU09SVCBMTlBzIHdpdGhvdXQgRE5BIGV4aGliaXRlZCBsYXJnZXIgcmFkaWksIHdpdGggYSBwZWFrIGFyb3VuZCAzMDAgbm0uIFRoZSBTT1JUIExOUCBjb250YWluaW5nIE1pbmljaXJjbGUgRE5BIHN1Z2dlc3RzIHRoZSBwcmVzZW5jZSBvZiBsYXJnZXIgYWdncmVnYXRlcyB3aXRoIGRpYW1ldGVycyBleGNlZWRpbmcgMSBcdTAwQjVtLiBUaGUgbGlrZWx5IHJlYXNvbiBmb3IgdGhpcyB2YXJpYWJsZSBwYXJ0aWNsZSBzaXplIGRpc3RyaWJ1dGlvbiwgZGVzcGl0ZSBsb2FkaW5nIHdpdGggZGlmZmVyZW50IHR5cGVzIG9mIEROQSwgY291bGQgYmUgYXR0cmlidXRlZCB0byB0aGUgbWFudWZhY3R1cmluZyBtZXRob2QuIFNpbmNlIHRoZSBMTlBzIHdlcmUgbm90IHByb2R1Y2VkIHVzaW5nIGFuIGV4dHJ1ZGVyIGJ1dCByYXRoZXIgdmlhIGRpYWx5c2lzLCB0aGlzIGlzIGhpZ2hseSBwbGF1c2libGUuPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxINSB0ZXh0PVwiQ3J5by1FTVwiLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICA8cD5DcnlvLUVNIGFuYWx5c2lzIHdhcyBhbHNvIHBlcmZvcm1lZCBvZiBTT1JUIExOUHMgYnkgdXMgd2l0aCB0aGUgc2FtZSBKRU9MIEpFTS0yMjAwRlMgbWljcm9zY29wZSBhdCAyMDBrViwgYWxsb3dpbmcgdmlzdWFsaXphdGlvbiBvZiBMTlBzIGluIHRoZWlyIG5hdGl2ZSBoeWRyYXRlZCBzdGF0ZS4gVGhlIGltYWdlcyBzaG93IHNwaGVyaWNhbCBMTlAgc3RydWN0dXJlcyBhcm91bmQgMTAwIG5tLCB3aXRoIHNvbWUgbGFyZ2VyIGFnZ3JlZ2F0ZXMgYWxzbyBwcmVzZW50IChkYXRhIG5vdCBzaG93bikuIFRoZXNlIGFnZ3JlZ2F0ZXMgbGlrZWx5IHJlc3VsdCBmcm9tIGludGVyYWN0aW9ucyBiZXR3ZWVuIHBhcnRpY2xlcyBkdWUgdG8gdGhlIG5vbi1leHRydXNpb24tYmFzZWQgcHJlcGFyYXRpb24gbWV0aG9kLCB3aGljaCBtYXkgZXhwbGFpbiB0aGUgdmFyaWFiaWxpdHkgaW4gcGFydGljbGUgc2l6ZS4gQWRkaXRpb25hbGx5LCBwYXJ0aWNsZXMgcG90ZW50aWFsbHkgcmVwcmVzZW50aW5nIGRpZmZlcmVudCBMTlAgcG9wdWxhdGlvbnMgb3Igb3ZlcmxhcHBlZCBzdHJ1Y3R1cmVzIHdpdGggbG93IGNvbnRyYXN0IHdlcmUgb2JzZXJ2ZWQgKEZpZ3VyZSBYKS4gVGhlIGxvdyBzYW1wbGUgY29uY2VudHJhdGlvbiBsaWtlbHkgY29udHJpYnV0ZWQgdG8gdGhlIGxpbWl0ZWQgbnVtYmVyIG9mIHZpc2libGUgcGFydGljbGVzLjwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvc29ydGNyeW9lbS5wbmdcIi8+XG4gICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICAgICAgICBDcnlvLUVNIGltYWdlIG9mIFNPUlQgTE5Qcy4gVGhlIGRpZmZlcmVudCBjb2xvcmVkIG91dGxpbmVzIGluZGljYXRlIGRpZmZlcmVudCBzaXplIHBvcHVsYXRpb25zIG9mIExOUHMuXG4gICAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHA+T3ZlcmFsbCwgd2hpbGUgdGhlIENyeW8tRU0gZGF0YSBjb25maXJtIHRoZSBwcmVzZW5jZSBhbmQgZ2VuZXJhbCBtb3JwaG9sb2d5IG9mIExOUHMgdGhhdCBhbHNvIGZhbGwgd2l0aGluIHRoZSBkaWFtZXRlciByYW5nZSBzcGVjaWZpZWQgYnkgV2FuZyBldCBhbC4gZm9yIFNPUlQgTE5QcyBhdCBzbWFsbGVyIHRoYW4gMjAwIG5tIFtsaW5rXS4gVGhlIHZhcmlhYmlsaXR5IGluIHNpemUgYW5kIHRoZSBwcmVzZW5jZSBvZiBhZ2dyZWdhdGVzIGhpZ2hsaWdodCBwb3RlbnRpYWwgYXJlYXMgZm9yIG9wdGltaXphdGlvbiwgc3VjaCBhcyByZWZpbmluZyBzYW1wbGUgY29uY2VudHJhdGlvbiBhbmQgcHJlcGFyYXRpb24gbWV0aG9kcyB0byBhY2hpZXZlIG1vcmUgY29uc2lzdGVudCBwYXJ0aWNsZSBmb3JtYXRpb24uPC9wPlxuICAgICAgICAgICAgICA8SDUgdGV4dD1cIkRMU1wiLz5cbiAgICAgICAgICA8cD5XZSB1c2VkIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSB0byBhc3Nlc3MgdGhlIHNpemUgZGlzdHJpYnV0aW9uIG9mIG91ciBTT1JUIExOUHMgYnkgbWVhc3VyaW5nIHRoZSBmbHVjdHVhdGlvbnMgaW4gc2NhdHRlcmVkIGxpZ2h0IGR1ZSB0byBwYXJ0aWNsZSBtb3Rpb24uIFRoZSBoeWRyb2R5bmFtaWMgZGlhbWV0ZXIgd2FzIGNhbGN1bGF0ZWQgdXNpbmcgdGhlIFN0b2tlcy1FaW5zdGVpbiBlcXVhdGlvbiwgY29uc2lkZXJpbmcgdGhlIGRpZmZ1c2lvbiBjb2VmZmljaWVudCwgdGVtcGVyYXR1cmUsIGFuZCB2aXNjb3NpdHkgb2YgdGhlIG1lZGl1bS48L3A+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NvcnQtZGxzLndlYnBcIi8+XG4gICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICAgICAgUmVzdWx0cyBmb3IgaHlkcm9keW5hbWljIHJhZGl1cyBkZXRlcm1pbmF0aW9uIGJ5IERMUyBNZWFzdXJlbWVudHMgZm9yIG91ciBTT1JUIExOUCwgaW5kaWNhdGluZyBhIHJhZGl1cyBvZiBhcHByb3hpbWF0ZWx5IDEwMCBubS5cbiAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPHA+VGhlIHJlc3VsdHMgc2hvd2VkIGEgaHlkcm9keW5hbWljIGRpYW1ldGVyIG9mIFNPUlQgTE5QcyB5aWVsZGluZyBhbiBhdmVyYWdlIHJhZGl1cyBvZiBhcHByb3hpbWF0ZWx5IDEwMCBubSAoRmlndXJlIFgpLiBUaGVzZSBmaW5kaW5ncyBhcmUgY29uc2lzdGVudCB3aXRoIG91ciBwcmV2aW91cyBhcHBsaWVkIHNpemUgZGV0ZXJtaW5hdGlvbiBtZXRob2RzLCBzdWNoIGFzIFpldGEgcG90ZW50aWFsIGFuZCBDcnlvLUVNLCB3aGljaCBhbHNvIGluZGljYXRlZCBzaW1pbGFyIHBhcnRpY2xlIGRpbWVuc2lvbnMgaW4gYXBwcm9wcmlhdGUgcmFuZ2UgZm9yIG91ciByZXNlYXJjaCBhbmQgbWVkaWNhbCBhcHBsaWNhdGlvbnMuPC9wPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxINSB0ZXh0PVwiTVRUIEFzc2F5XCIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9mYW56b3Ivc29ydC1tdHQud2VicFwiLz5cbiAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIFguIDwvYj5cbiAgICAgICAgICAgICAgICAgIE1UVCBBc3NheSBvZiBMTlBzIGZyb20gYWxsIGl0ZXJhdGlvbnMgcGVyZm9ybWVkIG9uIEhFSzI5MyBpbmNsdWRpbmcgVHJpdG9uIGFzIG5lZ2F0aXZlIGNvbnRyb2wgYW5kIHVudHJlYXRlZCBjZWxscyBhcyBwb3NpdGl2ZSBjb250cm9sLiBNZWFuICsvLSBTRU0gZm9yIG49Ni4gRm9yIHN0YXRpc3RpY3Mgb25lLXdheSBBTk9WQSB3YXMgcGVyZm9ybWVkLiAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgey8qIDxwPkluIG9yZGVyIHRvIGV2YWx1YXRlIHRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ0Jpb3NhZmV0eTInLCAnL3NhZmV0eScpfT5iaW9zYWZldHk8L2E+IG9mIG91ciBsdW5nLXNwZWNpZmljIExOUHMsIHBhcnRpY3VsYXJseSBjb25jZXJuaW5nIHRoZSBjaG9pY2Ugb2YgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYih7Y29sbGFwc2VJZDogJ0NvbDEnLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgdGFiSWQ6ICdkZWxpdmVyeScgfSl9PlBFRzwvYT4gLSBrbm93biB0byBjYXVzZSBjeXRvdG94aWNpdHkgaXNzdWVzIC0gd2UgcGVyZm9ybWVkIE1UVCBhc3NheXMgdXNpbmcgSEVLMjkzIGNlbGxzIHdpdGggdmFyaW91cyBMTlAgZm9ybXVsYXRpb25zLiBUaGUgcmVzdWx0cyBkZW1vbnN0cmF0ZWQgdGhhdCB0aGUgQ2F5bWFuIExOUCBhY2hpZXZlZCA3NC45MCUgdmlhYmlsaXR5IGFuZCBTT1JUIExOUCBzaG93ZWQgNzUuMDElIHZpYWJpbGl0eSwgZXhoaWJpdGluZyBsb3dlciBjeXRvdG94aWNpdHkgZHVlIHRvIHRoZSBpbmNsdXNpb24gb2YgRE1HLVBFRywgYSBsZXNzIGN5dG90b3hpYyBQRUcgdmFyaWFudCBjb21wYXJlZCB0byBtUEVHLTIwMDAtRFNQRSwgd2hpY2ggcmVzdWx0ZWQgaW4gNjYuNjklIHZpYWJpbGl0eSBpbiB0aGUgQ29yZGVuIExOUCAoRmlndXJlIHQpLiBUaGVzZSBmaW5kaW5ncyBwcm92ZSB3ZSBtYWRlIHRoZSBiZXN0IGRlY2lzaW9uIGJ5IGNob29zaW5nIHRoZSBTT1JUIExOUCBhcyB0aGUgbGVhc3QgY3l0b3RveGljIExOUHMuPC9wPiAqL31cbiAgICAgICAgICAgICAgICA8cD5JbiBvcmRlciB0byBldmFsdWF0ZSB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdCaW9zYWZldHkyJywgJy9zYWZldHknKX0+Ymlvc2FmZXR5PC9hPiBvZiBvdXIgbHVuZy1zcGVjaWZpYyBMTlBzLCBwYXJ0aWN1bGFybHkgY29uY2VybmluZyB0aGUgY2hvaWNlIG9mIFBFRyAtIGtub3duIHRvIGNhdXNlIGN5dG90b3hpY2l0eSBpc3N1ZXMgLSB3ZSBwZXJmb3JtZWQgTVRUIGFzc2F5cyB1c2luZyBIRUsyOTMgY2VsbHMgd2l0aCB2YXJpb3VzIExOUCBmb3JtdWxhdGlvbnMuIFRoZSByZXN1bHRzIGRlbW9uc3RyYXRlZCB0aGF0IHRoZSBDYXltYW4gTE5QIGFjaGlldmVkIDc0LjkwJSB2aWFiaWxpdHkgYW5kIFNPUlQgTE5QIHNob3dlZCA3NS4wMSUgdmlhYmlsaXR5LCBleGhpYml0aW5nIGxvd2VyIGN5dG90b3hpY2l0eSBkdWUgdG8gdGhlIGluY2x1c2lvbiBvZiBETUctUEVHLCBhIGxlc3MgY3l0b3RveGljIFBFRyB2YXJpYW50IGNvbXBhcmVkIHRvIG1QRUctMjAwMC1EU1BFLCB3aGljaCByZXN1bHRlZCBpbiA2Ni42OSUgdmlhYmlsaXR5IGluIHRoZSBDb3JkZW4gTE5QIChGaWd1cmUgdCkuIFRoZXNlIGZpbmRpbmdzIHByb3ZlIHdlIG1hZGUgdGhlIGJlc3QgZGVjaXNpb24gYnkgY2hvb3NpbmcgdGhlIFNPUlQgTE5QIGFzIHRoZSBsZWFzdCBjeXRvdG94aWMgTE5Qcy48L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICA8L1N1YmVzY3Rpb24gPlxuICAgICAgPFN1YmVzY3Rpb24gIHRpdGxlPVwiUHJlQ3lzZVwiIGlkPVwiUmVzdWx0czRcIj5cbiAgICAgICAgICA8SDQgdGV4dD1cIkdvYWxzXCIvPlxuICAgICAgICAgIDxwPnRleHQ8L3A+IFxuICAgICAgICAgIDxINCB0ZXh0PVwiV29ya2Zsb3dcIi8+XG4gICAgICAgICAgPHA+dGV4dDwvcD4gXG4gICAgICAgICAgPEg0IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxuICAgICAgICAgIDxwPnRleHQ8L3A+IFxuICAgICAgPC9TdWJlc2N0aW9uID5cbiAgICAgIDxTdWJlc2N0aW9uICB0aXRsZT1cIlBhdGNoIENsYW1wXCIgaWQ9XCJSZXN1bHRzNVwiPlxuICAgICAgICAgIDxwPlRvIHZhbGlkYXRlIG91ciBnZW5lIGVkaXRpbmcgYXBwcm9hY2ggYnkgcHJpbWUgZWRpdGluZyBvZiBDRlRSIEY1MDhkZWwgZGVsaXZlcmVkIHRvIGx1bmcgY2VsbHMgdmlhIFNPUlQgTE5Qcywgd2UgcGxhbm5lZCB0byB1c2UgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdQYXRjaCBDbGFtcCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+UGF0Y2ggQ2xhbXA8L2E+IGFzIGEgZG93bnN0cmVhbSBtZXRob2QuIE91ciBnb2FsIHdhcyB0byBkZXRlY3QgdGhlIHJlc3RvcmVkIGNvbmR1Y3RhbmNlIG9mIHRoZSByZXBhaXJlZCBDRlRSIGJ5IHRoaXMgZWxlY3Ryb3BoeXNpb2xvZ2ljYWwgbWV0aG9kLiBUaGlzIHdhcyBtYWRlIHBvc3NpYmxlIHRocm91Z2ggdGhlIGFzc2lzdGFuY2Ugb2YgdGhlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BhdGNoY2xhbXAnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5DZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgcmVzZWFyY2ggZ3JvdXA8L2E+IGF0IG91ciB1bml2ZXJzaXR5LjwvcD5cbiAgICAgICAgICA8SDQgdGV4dD1cIkluaXRpYWwgTWVhc3VyZW1lbnRzXCIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3Jlc3VsdHMvcGF0Y2hjbGFtcC9wYzEud2VicFwiIGFsdD1cIlBDMVwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjMwMHB0XCJ9fS8+IFxuICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDEuIDwvYj4gXG4gICAgICAgICAgICAgICAgICBDdXJyZW50IGRlbnNpdHkgb2YgSEVLMjkzLCBIRUsyOTNUIENGVFIgV1QgYW5kIEhFSzI5M1QgQ0ZUUiBGNTA4ZGVsIHNob3dpbmcgc2lnbmlmaWNhbnQgZGlmZmVyZW5jZXMgb2YgYm90aCBIRUsyOTNUIGNlbGwgbGluZXMgY29tcGFyZWQgdG8gSEVLMjkzIGJ1dCBubyBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZW0uIEZvciBzdGF0aXN0aWNzIG9uZS13YXkgQU5PVkEgd2FzIHBlcmZvcm1lZC5cbiAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgPHA+SW4gb3VyIGZpcnN0IHNldCBvZiBleHBlcmltZW50cywgd2UgbWVhc3VyZWQgY3VycmVudCBkZW5zaXR5IGluIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT5IRUsyOTNUIENGVFIgd2lsZC10eXBlIChXVCkgYW5kIEhFSzI5M1QgRjUwOGRlbDwvYT4gY2VsbCBsaW5lcywgY29tcGFyaW5nIHRoZW0gd2l0aCByZWd1bGFyIEhFSzI5My4gVGhlIHJlc3VsdHMgZGVtb25zdHJhdGVkIHNpZ25pZmljYW50IGRpZmZlcmVuY2VzIGluIGNobG9yaWRlIGlvbiBjb25kdWN0YW5jZSwgd2l0aCB0aGUgQ0ZUUi1leHByZXNzaW5nIGNlbGwgbGluZXMgc2hvd2luZyBlbmhhbmNlZCBjb25kdWN0aXZpdHkgY29tcGFyZWQgdG8gSEVLMjkzIChGaWd1cmUgMSkuIEhvd2V2ZXIsIGEgZHJhd2JhY2sgd2FzIHRoYXQgd2UgZGlkIG5vdCBvYnNlcnZlIGFueSBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBIRUsyOTNUIENGVFIgV1QgYW5kIEY1MDhkZWwgY2VsbCBsaW5lLiBUaGlzIHdhcyB1bmV4cGVjdGVkLCBhcyB0aGUgRjUwOGRlbCBtdXRhdGlvbiB0eXBpY2FsbHkgbGVhZHMgdG8gYSBrbm9ja2Rvd24gb2YgdGhlIENGVFIgcHJvdGVpbiwgaW1wYWlyaW5nIGNobG9yaWRlIGlvbiB0cmFuc3BvcnQgdGhyb3VnaCB0aGUgQ0ZUUiBjaGFubmVsLjwvcD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiRnVydGhlciBWYWxpZGF0aW9uIGFuZCBDaGFsbGVuZ2VzXCIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgIDxwPkluIGxpZ2h0IG9mIHRoZXNlIHJlc3VsdHMsIHdlIGltcHJvdmVkIG91ciBleHBlcmltZW50YWwgc2V0dXAgYW5kIHBlcmZvcm1lZCBhZGRpdGlvbmFsIHZhbGlkYXRpb24gZXhwZXJpbWVudHMuIFVuZm9ydHVuYXRlbHksIHRoZSByZXBlYXRlZCBtZWFzdXJlbWVudHMgeWllbGRlZCBzaW1pbGFyIG91dGNvbWVzLCBjb25maXJtaW5nIHRoZSBhYnNlbmNlIG9mIGEgc2lnbmlmaWNhbnQgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB0d28gQ0ZUUi1leHByZXNzaW5nIGNlbGwgbGluZXMgKEZpZ3VyZSAyKS4gVGhpcyBmaW5kaW5nIGxlZCB1cyB0byBjb25zdWx0IHdpdGggdGhlIHJlc2VhcmNoIGdyb3VwIGF0IDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanN2aXNpdCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PktVIExldXZlbjwvYT4sIHdobyBlc3RhYmxpc2hlZCB0aGVzZSBjZWxscyBsaW5lcy4gQWx0aG91Z2ggdGhleSBoYWQgbm90IGNvbmR1Y3RlZCBzaW1pbGFyIFBhdGNoIENhbXAgbWVhc3VyZW1lbnRzLCB0aGV5IHN1Z2dlc3RlZCBhbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCB1c2luZyBVc3NpbmcgQ2hhbWJlciBtZWFzdXJlbWVudHMuIFRoaXMgdGVjaG5pcXVlLCB1bmxpa2UgUGF0Y2ggQ2FtcCwgZG9lcyBub3QgcmVseSBvbiBzaW5nbGUtY2VsbCBtZWFzdXJlbWVudHMgYnV0IHJhdGhlciBleGFtaW5lcyB0aGUgaW9uIGN1cnJlbnRzIGFjcm9zcyB0aGUgZW50aXJlIGNlbGwgbW9ub2xheWVyLCB3aGljaCBtYXkgcHJvdmlkZSBhIG1vcmUgY29tcHJlaGVuc2l2ZSB2aWV3IG9mIENGVFIgZnVuY3Rpb25hbGl0eS48L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3Jlc3VsdHMvcGF0Y2hjbGFtcC9wYzIud2VicFwiIGFsdD1cIlBDMVwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjMwMHB0XCJ9fS8+IFxuICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDIuIDwvYj4gXG4gICAgICAgICAgICAgICAgICBSZXBlYXRlZCB2YWxpZGF0aW9uIG9mIGN1cnJlbnQgZGVuc2l0eSBtZWFzdXJlbWVudHMgaW4gSEVLMjkzVCBDRlRSIFdUIGFuZCBIRUsyOTNUIENGVFItRjUwOGRlbCwgc2hvd2luZyBjb25zaXN0ZW50IHJlc3VsdHMgd2l0aCB0aGUgaW5pdGlhbCBleHBlcmltZW50LiBGb3Igc3RhdGlzdGljcyBvbmUtd2F5IEFOT1lBIHdhcyBwZXJmb3JtZWQuXG4gICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiTmV4dCBTdGVwc1wiLz5cbiAgICAgICAgICAgIDxwPkZvbGxvd2luZyB0aGUgcmVjb21tZW5kYXRpb25zIGZyb20gS1UgTGV1dmVuLCB3ZSBoYXZlIGFsc28gdGFrZW4gc3RlcHMgdG8gZXhwYW5kIG91ciBleHBlcmltZW50YWwgYXBwcm9hY2guIFRvIGZ1cnRoZXIgaW52ZXN0aWdhdGUgdGhlIENGVFIgZnVuY3Rpb25hbGl0eSwgd2UgaGF2ZSBvcmRlcmVkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT5DRkJFNDFvLTwvYT4gYXMgYSBuZXcgY2VsbCBsaW5lIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignaWduYXRvdmEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBEci4gSWduYXRvdmE8L2E+IGluIEhhbWJ1cmcuIE91ciBnb2FsIGlzIHRvIHVzZSB0aGVzZSBwYXRpZW50LWRlcml2ZWQgY2VsbHMgdG8gbWVhc3VyZSBpb24gY3VycmVudHMgYW5kIGZ1cnRoZXIgZWx1Y2lkYXRlIHRoZSBpbXBhY3Qgb2YgdGhlIG11dGF0aW9uIG9uIGNobG9yaWRlIGNvbmR1Y3RhbmNlLiBUaGlzIHdpbGwgbm90IG9ubHkgcHJvdmlkZSBhIG1vcmUgY2xpbmljYWxseSByZWxldmFudCBtb2RlbCBidXQgbWF5IGFsc28geWllbGQgbW9yZSBkaXN0aW5jdCByZXN1bHRzIGluIGNvbXBhcmlzb24gdG8gdGhlIHByZXZpb3VzIGV4cGVyaW1lbnRzIHdpdGggdGhlIGVuZ2luZWVyZWQgSEVLMjkzVCBjZWxscy48L3A+XG4gICAgICA8L1N1YmVzY3Rpb24gPlxuICAgICAgPC9TZWN0aW9uPlxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCIgaWQ9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCI+ICAgIFxuICAgICAgPHA+U3VwcGxlbWVudGFyeSBNYXRlcmlhbCBmb3IgUGF0Y2ggQ2xhbXA8L3A+XG4gICAgICA8cD48RG93bmxvYWRMaW5rIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvcmF3LWRhdGEtcGF0Y2gtY2xhbXAucGRmXCIgZmlsZU5hbWU9XCJyYXctZGF0YS1wYXRjaC1jbGFtcC5wZGZcIiAvPjwvcD5cbiAgICAgIDxwPlN1cHBsZW1lbnRhcnkgTWF0ZXJpYWwgZm9yIERlbGl2ZXJ5PC9wPlxuICAgICAgPERvd25sb2FkTGluayB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Jhdy1kYXRhLXBhdGNoLWNsYW1wLnBkZlwiIGZpbGVOYW1lPVwicmF3LWRhdGEtcGF0Y2gtY2xhbXAucGRmXCIgLz5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICA8Lz5cbiAgKTtcbn1cblxuIiwgIlxuaW1wb3J0IHsgSDQsIEg1IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IExvcmVtTWVkaXVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvTG9yZW1pcHN1bVwiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uL2NvbXBvbmVudHMvcHJlY3lzZVwiO1xuaW1wb3J0IHsgU3VwU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjsgXG5pbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCBDb2xsYXBzaWJsZSBmcm9tIFwiLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG4vLyBtZXNzYWdlIGZvciB0ZXN0IGNvbW1pdC5cblxuXG5leHBvcnQgY29uc3QgU2FmZXR5OiBSZWFjdC5GQyA9ICgpID0+e1xuICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGwsIGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCwgZ29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gIFxuICBcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSb2xlIGluIGlHRU1cIiBpZD1cIlJvbGVcIj5cbiAgICAgIDxwPlxuICAgICAgICBBcyBwYXJ0IG9mIG91ciBwcm9qZWN0IDxQcmVDeXNlLz4gdG8gZGV2ZWxvcCBhIHByaW1lLWVkaXRpbmcgY29tcGxleCB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIGN5c3RpYyBmaWJyb3Npcywgd2UgcGxhY2UgZ3JlYXQgZW1waGFzaXMgb24gc2FmZXR5IGF0IGFsbCBzdGFnZXMgb2YgcmVzZWFyY2guIE91ciBmaW5hbCBjb25zdHJ1Y3Qgd2lsbCBiZSB0ZXN0ZWQgaW4gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdDZWxsIEN1bHR1cmUzSCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+IHByaW1hcnkgY3VsdHVyZXMgb2YgbmFzYWwgZXBpdGhlbGlhbCBjZWxscyA8L2E+ICAgb2J0YWluZWQgZnJvbSBuYXNhbCBzd2FicywgaXNvbGF0ZWQgZnJvbSBib3RoIHBhdGllbnRzIGFuZCBoZWFsdGh5IGluZGl2aWR1YWxzLiBUbyBndWFyYW50ZWUgc2FmZXR5IGFuZCBlbnN1cmUgdGhlIGhpZ2hlc3QgbGV2ZWwgb2YgcHJlY2lzaW9uIGFuZCByZWxpYWJpbGl0eSBvZiBvdXIgcmVzdWx0cywgd2UgaGF2ZSBpbnRyb2R1Y2VkIGEgc2VyaWVzIG9mIGNhcmVmdWxseSBwbGFubmVkIGNoZWNrcG9pbnRzIGR1cmluZyB0aGUgZXhwZXJpbWVudHMuIFRoZXNlIG1pbGVzdG9uZXMgYWxsb3cgZm9yIGNvbnRpbnVvdXMgbW9uaXRvcmluZywgdGltZWx5IGFkanVzdG1lbnRzIGFuZCB2YWxpZGF0aW9uIGF0IGVhY2ggY3JpdGljYWwgc3RhZ2UuIFRoaXMgZW5zdXJlcyB0aGF0IHBvdGVudGlhbCBpc3N1ZXMgYXJlIGlkZW50aWZpZWQgYW5kIGFkZHJlc3NlZCBpbW1lZGlhdGVseSwgbWluaW1pemluZyByaXNrIGFuZCBpbXByb3ZpbmcgdGhlIG92ZXJhbGwgcXVhbGl0eSBvZiB0aGUgZXhwZXJpbWVudGFsIHJlc3VsdHMuXG4gICAgICAgIDwvcD5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIFxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCaW9zYWZldHlcIiBpZD1cIkJpb3NhZmV0eVwiPlxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlNhZmV0eSBhc3BlY3RzIG9mIG91ciBQcmltZUd1aWRlXCIgaWQ9XCJCaW9zYWZldHkxXCI+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgVGhlIGJpb3NhZmV0eSBvZiBvdXIgUHJpbWUgRWRpdGluZyBjb21wbGV4IGhhcyBiZWVuIGEgdG9wIHByaW9yaXR5IHRocm91Z2hvdXQgdGhlIGVudGlyZSBkZXZlbG9wbWVudCBwcm9jZXNzLiBXZSBoYXZlIHRoZXJlZm9yZSB0cmllZCB0byBvcHRpbWlzZSBhbGwgcGFydHMgdGhhdCBpbmZsdWVuY2UgdGhlIGJpb3NlY3VyaXR5IG9mIG91ciBzeXN0ZW0gYXMgbXVjaCBhcyBwb3NzaWJsZS4gVG8gZW5zdXJlIG1heGltdW0gYmlvc2VjdXJpdHksIHdlIGhhdmUgY3JlYXRlZCBhbmQgdGVzdGVkIG1hbnkgZGVzaWducywgYXMgd2VsbCBhcyBleHRlbnNpdmVseSByZXNlYXJjaGVkIGFsdGVybmF0aXZlcyBhbmQvb3IgYWRkaXRpb25hbCBlbGVtZW50cyB0aGF0IGNvbnRyaWJ1dGUgdG8gYmlvc2VjdXJpdHkuXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxINCB0ZXh0PVwiUEFNIGRpc3J1cHRcIiA+PC9IND5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBBIGtleSBzYWZldHkgbWVjaGFuaXNtIGluY29ycG9yYXRlZCBpbiBvdXIgZGVzaWduIG9mIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggaXMgdGhlIGRpc3J1cHRpb24gb2YgdGhlIFBBTSBzZXF1ZW5jZSBbTGluayBQQU0gdGV4dF0uIEZvciB0aGUgbmlja2FzZSBlbnp5bWUgdG8gZnVuY3Rpb24gcHJvcGVybHksIGl0IG11c3QgYmluZCBkaXJlY3RseSB0byB0aGUgRE5BIHN0cmFuZCwgYSBwcm9jZXNzIHRoYXQgaXMgZmFjaWxpdGF0ZWQgYnkgdGhlIHByZXNlbmNlIG9mIGEgc3BlY2lmaWMgc2VxdWVuY2UgY2FsbGVkIHRoZSBQQU0gKFByb3Rvc3BhY2VyIEFkamFjZW50IE1vdGlmKS4gVGhpcyBjcml0aWNhbCBpbnRlcmFjdGlvbiBvY2N1cnMgdGhyb3VnaCB0aGUgcmVjb2duaXRpb24gb2YgdGhlIFBBTSBzZXF1ZW5jZSBieSB0aGUgbmlja2FzZSBpdHNlbGYuIFRvIGFjaGlldmUgUEFNIGRpc3J1cHRpb24sIHRoZSBwZWdSTkEgKHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BKSBbTGluayBwZWdSTkFdIGlzIHNwZWNpZmljYWxseSBkZXNpZ25lZCBpbiBhIHdheSBzbyB0aGF0IHRoZSBQQU0gc2VxdWVuY2UgaXMgc2l0dWF0ZWQgd2l0aGluIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRpb24gdGVtcGxhdGUgKFJUVCkgb2YgdGhlIHBlZ1JOQS4gQnkgaW50cm9kdWNpbmcgYSBzaWxlbnQgbXV0YXRpb24gd2l0aGluIHRoZSBSVCB0ZW1wbGF0ZSBpbnRvIHRoZSBQQU0gc2VxdWVuY2UuIFRoZXJlZm9yZSB0aGUgUEFNIHNlcXVlbmNlIGlzIGVmZmVjdGl2ZWx5IGVsaW1pbmF0ZWQgYWZ0ZXIgdGhlIGdlbmUgZWRpdGluZyBwcm9jZXNzIGlzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPi4gQXMgYSByZXN1bHQgb2YgdGhhdCwgdGhlIFBBTSBzZXF1ZW5jZSBpcyBubyBsb25nZXIgcHJlc2VudCBvbiB0aGUgRE5BIHN0cmFuZCwgcHJldmVudGluZyB0aGUgbmlja2FzZSBmcm9tIGJpbmRpbmcgYWdhaW4gYXQgdGhlIHNhbWUgbG9jYXRpb24uIFRoaXMgcmVkdWN0aW9uIGluIHJlcGVhdGVkIG9yIHVuZGVzaXJlZCBiaW5kaW5nIG9mIHRoZSBuaWNrYXNlIGVuaGFuY2VzIHRoZSBzYWZldHkgb2Ygb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleCwgbWluaW1pemluZyB0aGUgcmlzayBvZiB1bmludGVuZGVkIGVkaXRzIG9yIG9mZi10YXJnZXQgZWZmZWN0cyBpbiBzdWJzZXF1ZW50IHN0ZXBzLiBVbHRpbWF0ZWx5LCB0aGlzIGZlYXR1cmUgY29udHJpYnV0ZXMgdmVyeSBtdWNoIHRvIHRoZSBvdmVyYWxsIHNhZmV0eSBhbmQgcmVsaWFiaWxpdHkgb2YgdGhlIHByaW1lIGVkaXRpbmcgcHJvY2Vzcy5cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPEg0IHRleHQ9XCJwZWdSTkEgZGVzaWduIC0gU3BhY2VyXCI+PC9IND5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBCaW9zYWZldHkgaXMgYWxzbyBndWFyYW50ZWVkIGJ5IHRoZSBjYXJlZnVsIHNlbGVjdGlvbiBvZiB0aGUgc3BhY2VyLCB3aGljaCBwbGF5cyBhIGNyaXRpY2FsIHJvbGUgaW4gZ3VpZGluZyB0aGUgY29tcGxleCB0byBpdHMgaW50ZW5kZWQgdGFyZ2V0IHNpdGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyXCIvPi4gVG8gZW5zdXJlIGJvdGggcHJlY2lzaW9uIGFuZCBzYWZldHksIHdlIG1ldGljdWxvdXNseSBjaG9zZSBhbmQgcmlnb3JvdXNseSBjaGVja2VkIHRoZSBzcGFjZXIgdXNpbmcgdGhlIDxhIGhyZWY9XCJodHRwczovL3d3dy5zeW50aGVnby5jb20vcHJvZHVjdHMvYmlvaW5mb3JtYXRpY3MvY3Jpc3ByLWRlc2lnbi10b29sXCI+Q1JJU1BpY2sgc29mdHdhcmU8L2E+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPi4gVGhpcyBhbGxvd2VkIHVzIHRvIGV2YWx1YXRlIHdoZXRoZXIgb3VyIFNwYWNlciB3b3VsZCBiZSBsaWtlbHkgdG8gdGFyZ2V0IG90aGVyIHJlZ2lvbnMgdGhhbiBvdXIgdGFyZ2V0IHNpdGUgYW5kIHRoZXJlZm9yZSBhbGxvd2luZyB1cyB0byBhbmFseXNlIGFuZCBwcmVkaWN0IHBvdGVudGlhbCBvZmYtdGFyZ2V0IGVmZmVjdHMsIGVuc3VyaW5nIHRoYXQgZXJyb25lb3VzIGVkaXRzIGFyZSBtaW5pbWlzZWQuIEJ5IG9wdGltaXNpbmcgdGhlIHNwYWNlciBzZWxlY3Rpb24sIHdlIGhhdmUgbm90IG9ubHkgc2lnbmlmaWNhbnRseSBlbmhhbmNlZCB0aGUgb3ZlcmFsbCBlZGl0aW5nIGVmZmljaWVuY3ksIHN0cmlraW5nIGEgYmFsYW5jZSBiZXR3ZWVuIHByZWNpc2lvbiBhbmQgcGVyZm9ybWFuY2UsIGJ1dCBlc3BlY2lhbGx5IGVuc3VyZWQgdGhlIHV0bW9zdCBhY2N1cmFjeSBpbiBkaXJlY3RpbmcgdGhlIFByaW1lIEVkaXRvciwgZnVydGhlciBjb250cmlidXRpbmcgdG8gdGhlIHNhZmV0eSBvZiB0aGUgZWRpdGluZyBwcm9jZXNzLlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Jpb3NhZmV0eS93aWtpL2JpbGQucG5nXCIgc3R5bGU9e3toZWlnaHQ6IFwiMTAlXCIsIHdpZHRoOlwiYXV0b1wifX0vPlxuICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDU8L2I+SWxsdXN0cmF0aW9uIG9mIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2lsZW50IG11dGF0aW9ucyBsZWFkaW5nIHRvIHRoZSBQQU0gZGlzcnVwdC4gPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8SDQgdGV4dD1cIlJpYm9zd2l0Y2hcIj48L0g0PlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFJpYm9zd2l0Y2hlcyBhcmUgc2VnbWVudHMgb2YgYW4gUk5BIHN0cmFuZCB0aGF0IGJpbmQgdG8gc21hbGwgbW9sZWN1bGVzLCBjYXVzaW5nIHRoZW0gdG8gY2hhbmdlIHRoZWlyIHNlY29uZGFyeSBzdHJ1Y3R1cmUgYnkgZm9ybWluZyBoYWlycGluIHN0cnVjdHVyZXMuIFRoaXMgcHJvY2VzcyByZWd1bGF0ZXMgZ2VuZSBleHByZXNzaW9uIGF0IHRoZSB0cmFuc2xhdGlvbiBsZXZlbCBieSBwcmV2ZW50aW5nIHJpYm9zb21lcyBmcm9tIGJpbmRpbmcgYXQgdGhlIFJCUyBhbmQgdHJhbnNsYXRpbmcgdGhlIGNvZGluZyByZWdpb24gb24gdGhlIFJOQSBzdHJhbmQuIDBGb3Igb3VyIHByb2plY3Qgd2UgYWxzbyBjb25zaWRlcmVkIGFuIGlvbi1zZW5zaXRpdmUgcmlib3N3aXRjaCwgc3BlY2lmaWNhbGx5IGRlcGVuZGVudCBvbiBzb2RpdW0gaW9ucyAoTmFcdTIwN0EpLCBhcyBhIHJlZ3VsYXRvcnkgbWVjaGFuaXNtLiBUaGUgc2Vjb25kYXJ5IHN0cnVjdHVyZSBvZiB0aGlzIHJpYm9zd2l0Y2ggcHJldmVudHMgdGhlIGJpbmRpbmcgb2Ygcmlib3NvbWVzIHRvIHRoZSByaWJvc29tZSBiaW5kaW5nIHNpdGUgKFJCUykgdW5kZXIgbm9ybWFsIGNvbmRpdGlvbnMsIHRodXMgaW5oaWJpdGluZyB0aGUgdHJhbnNsYXRpb24gb2YgdGhlIHN1YnNlcXVlbnQgbVJOQS4gV2hlbiBzb2RpdW0gaW9ucyBiaW5kIHRvIHRoZSByaWJvc3dpdGNoLCBhIHN0cnVjdHVyYWwgY2hhbmdlIG9jY3VycywgZXhwb3NpbmcgdGhlIFJCUywgd2hpY2ggYWxsb3dzIGZvciB0aGUgdHJhbnNsYXRpb24gb2YgdGhlIG1STkEgYW5kIHRoZSBwcm9kdWN0aW9uIG9mIG91ciBmdXNpb24gcHJvdGVpbiB3aGljaCBpcyB0aGUgbWFpbiBjb21wb25lbnQgb2Ygb3VyIHByaW1lIGVkaXRpbmcgc3lzdGVtIGFuZCB0aGVyZWZvcmUgb2YgZW5vcm1vdXMgaW1wb3J0YW5jZSBmb3IgaXQgdG8gd29yayA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjRcIi8+LiBJbiB0aGUgY29udGV4dCBvZiB0aGUgQ0ZUUiBtdXRhdGlvbiBhbmQgaXRzIGVmZmVjdHMgb24gdGhlIGNlbGwsIHRoZSBlbGV2YXRlZCBOYVx1MjA3QSBsZXZlbHMgcGxheSBhIGNydWNpYWwgcm9sZS4gRHVlIHRvIHRoZSBkeXNmdW5jdGlvbmFsIENGVFIgY2hhbm5lbCwgd2hpY2ggZmFpbHMgdG8gcHJvcGVybHkgZnVuY3Rpb24gYXMgYSBjaGxvcmlkZSBjaGFubmVsLCB0aGUgRU5hQyBjaGFubmVsIChlcGl0aGVsaWFsIHNvZGl1bSBjaGFubmVsKSBiZWNvbWVzIHVwcmVndWxhdGVkLiBUaGlzIHVwcmVndWxhdGlvbiByZXN1bHRzIGluIGFuIGluY3JlYXNlZCB0cmFuc3BvcnQgb2Ygc29kaXVtIGlvbnMgaW50byB0aGUgY2VsbCwgbGVhZGluZyB0byBhIGhpZ2hlciBpbnRyYWNlbGx1bGFyIHNvZGl1bSBjb25jZW50cmF0aW9uLiBUaGlzIGVsZXZhdGVkIE5hXHUyMDdBIGNvbmNlbnRyYXRpb24gY3JlYXRlcyBhIHNwZWNpZmljIGlvbmljIGVudmlyb25tZW50IHRoYXQgY291bGQgcG90ZW50aWFsbHkgYmUgdXRpbGl6ZWQgdG8gcmVndWxhdGUgb3VyIFByaW1lLUVkaXRpbmcgY29tcGxleCBpbiBhIHRhcmdldGVkIG1hbm5lci4gR2l2ZW4gdGhlc2Ugc3BlY2lmaWMgaW9uaWMgY2hhbmdlcyBpbiB0aGUgY2VsbCwgd2UgY291bGQgaGF2ZSBhIGRpc2Vhc2Utc3BlY2lmaWMgcmVndWxhdGlvbiBvZiBvdXIgUHJpbWUtRWRpdGluZyBzeXN0ZW0gYmFzZWQgb24gdGhlIGlvbmljIHNpdHVhdGlvbiB0eXBpY2FsIG9mIHRoaXMgY29uZGl0aW9uLiBIb3dldmVyLCBkZXNwaXRlIHRoZSBpbml0aWFsIHByb21pc2Ugb2YgdGhpcyBhcHByb2FjaCwgYWZ0ZXIgZnVydGhlciByZXNlYXJjaCwgd2UgY29uY2x1ZGVkIHRoYXQgdGhlIHJpYm9zd2l0Y2gsIGV2ZW4gY29uc2lkZXJpbmcgdGhlIGlvbiBsZXZlbHMgd2l0aGluIGVwaXRoZWxpYWwgY2VsbHMsIGlzIG92ZXJhbGwgdG9vIG5vbnNwZWNpZmljIGFuZCB0aGVyZWZvcmUgdG9vIHVucmVsaWFibGUgYXMgYSByZWd1bGF0b3J5IG1lY2hhbmlzbS4gQWx0aG91Z2ggdGhlIGlvbiBsZXZlbHMgaW4gQ0ZUUiBjZWxscyBhcmUgbXVjaCBsb3dlciwgdGhlcmUgYXJlIHN0aWxsIGxvdyBjb25jZW50cmF0aW9ucyBvZiBzb2RpdW0gaW9ucywgd2hpY2ggY2FuIGxlYWQgdG8gdGhlIHJpYm9zd2l0Y2ggbm90IGJlaW5nIGNvbXBsZXRlbHkgc3dpdGNoZWQgb2ZmLlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Jpb3NhZmV0eS93aWtpL2JpbGQtMi5wbmdcIiBzdHlsZT17e2hlaWdodDogXCIxMCVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxuICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDY8L2I+SWxsdXN0cmF0aW9uIG9mIHRoZSBtZWNoYW5pc20gb2YgYWN0aW9uIG9mIHRoZSByaWJvc3dpdGNoLiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIEFzIGEgZnVydGhlciBhcHByb2FjaCB0byBkZXZlbG9waW5nIGFsdGVybmF0aXZlIHJpYm9zd2l0Y2ggdmFyaWFudHMsIHdlIGNvbnNpZGVyZWQgdGhlIHBvc3NpYmlsaXR5IG9mIGFuIFJOQS1yZWd1bGF0ZWQgcmlib3N3aXRjaCB0YXJnZXRpbmcgdGhlIGRlZmVjdGl2ZSBtUk5BIHNlcXVlbmNlIG9mIHRoZSBnZW5ldGljYWxseSBkZWZlY3RpdmUgQ0ZUUiBnZW5lLiBUaGUgYmFzaWMgaWRlYSBiZWhpbmQgdGhpcyBjb25jZXB0IHdhcyB0aGF0IHRoZSByaWJvc3dpdGNoIHNwZWNpZmljYWxseSBiaW5kcyB0byBhIHJlZ2lvbiBvbiB0aGUgQ0ZUUiBtUk5BIGNvbnRhaW5pbmcgdGhlIEY1MDhcdTAzOTQgbXV0YXRpb24uIFRoaXMgYmluZGluZyBzaG91bGQgaW5kdWNlIGEgc3RydWN0dXJhbCBjaGFuZ2UgaW4gdGhlIHJpYm9zd2l0Y2ggb24gb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleFx1MjAxOXMgbVJOQSB0aGF0IHVsdGltYXRlbHkgbGVhZHMgdG8gZXhwb3N1cmUgb2YgdGhlIFJCUyB0byBhbGxvdyB0cmFuc2xhdGlvbiBvZiB0aGUgZG93bnN0cmVhbSBzZXF1ZW5jZS4gVGhpcyBtZWNoYW5pc20gd291bGQgYmUgZGVzaWduZWQgdG8gcmVhY3Qgc3BlY2lmaWNhbGx5IHRvIHRoZSBkZWZlY3RpdmUgQ0ZUUiBtUk5BIGFuZCBvbmx5IGNhdXNlIGEgY2hhbmdlIGluIHRoZSBzZWNvbmRhcnkgc3RydWN0dXJlIGluIHRoZSBwcmVzZW5jZSBvZiB0aGUgc3BlY2lmaWMgbXV0YXRpb24uIFRoZSByaWJvc3dpdGNoIGNvdWxkIHRodXMgZW5zdXJlIHNlbGVjdGl2ZSBhbmQgZGlzZWFzZS1zcGVjaWZpYyBhY3RpdmF0aW9uIG9mIG91ciBwcmltZSBlZGl0aW5nIGNvbXBsZXgsIHdoaWNoIHdvdWxkIGJlIG9mIHBhcnRpY3VsYXIgaW50ZXJlc3QgaW4gdGhlIGNvbnRleHQgb2YgZ2VuZXRpYyBkaXNlYXNlcyBzdWNoIGFzIGN5c3RpYyBmaWJyb3Npcy4gSG93ZXZlciwgd2UgZGlkIG5vdCBwdXJzdWUgdGhpcyBhcHByb2FjaCBhbnkgZnVydGhlci4gQSBtYWpvciByZWFzb24gZm9yIHRoaXMgd2FzIHRoZSBsYWNrIG9mIHN1ZmZpY2llbnQgbGl0ZXJhdHVyZSBwcm92aWRpbmcgYSBzb3VuZCBzY2llbnRpZmljIGJhc2lzIGZvciB0aGlzIHNwZWNpZmljIGFwcGxpY2F0aW9uIG9mIGEgcmlib3N3aXRjaC4gSW5cbiAgICAgICAgICBhZGRpdGlvbiwgb3VyIHJlc2VhcmNoIHN0ZWVyZWQgdXMgaW4gYSBkaWZmZXJlbnQgZGlyZWN0aW9uLCBwYXJ0aWN1bGFybHkgd2l0aCByZWdhcmQgdG8gdGhlIGFsdGVybmF0aXZlIG1lY2hhbmlzbSBpbnZvbHZpbmcgdGhlIFhCUDEgaW50cm9uIHRvIHJlZ3VsYXRlIHRoZSBwcmltZSBlZGl0aW5nIHN5c3RlbS4gVGhpcyBhbHRlcm5hdGl2ZSBzZWVtZWQgbW9yZSBwcm9taXNpbmcgYW5kIHdhcyBiYXNlZCBvbiBhbiBlc3RhYmxpc2hlZCByZWd1bGF0b3J5IG1lY2hhbmlzbSB0aGF0IGlzIHRyaWdnZXJlZCBieSBjZWxsdWxhciBzdHJlc3MgYW5kIHNwZWNpZmljYWxseSByZXNwb25kcyB0byBtaXNmb2xkaW5nIHByb2Nlc3Nlcy5cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPEg0IHRleHQ9XCJYQlAxIEludHJvblwiPjwvSDQ+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICBBZnRlciBleHRlbnNpdmUgcmVzZWFyY2gsIHdlIGRpc2NvdmVyZWQgYSByZWd1bGF0b3J5IHN5c3RlbSBpbiBldWthcnlvdGljIGNlbGxzLCB0aGUgWEJQMSBtZWNoYW5pc20uIFRoZSBhY3RpdmF0aW9uIG9mIFhCUDEgaXMgYW4gaW1wb3J0YW50IG1lY2hhbmlzbSB0aGF0IG9jY3VycyBhcyBwYXJ0IG9mIHRoZSBVbmZvbGRlZCBQcm90ZWluIFJlc3BvbnNlIChVUFIpLCBhIGNlbGx1bGFyIHN0cmVzcyByZXNwb25zZSB0cmlnZ2VyZWQgYnkgdGhlIGFjY3VtdWxhdGlvbiBvZiBtaXNmb2xkZWQgcHJvdGVpbnMgaW4gdGhlIGVuZG9wbGFzbWljIHJldGljdWx1bSAoRVIpLiBUaGUgRVIgaXMgYSBrZXkgY2VsbHVsYXIgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBwcm90ZWluIGZvbGRpbmcgYW5kIHRyYW5zcG9ydC4gV2hlbiBtYW55IG1pc2ZvbGRlZCBwcm90ZWlucyBhY2N1bXVsYXRlIGluIHRoZSBFUiwgYSBzcGVjaWZpYyByZWd1bGF0b3J5IG1lY2hhbmlzbSBpcyBhY3RpdmF0ZWQgdG8gcmVkdWNlIHRoZSBzdHJlc3Mgb24gdGhlIEVSLiBYQlAxIGFjdGl2YXRpb24gaXMgY29udHJvbGxlZCBieSBhIHByb3RlaW4gY2FsbGVkIElSRTFcdTAzQjEsIHdoaWNoIGlzIGVtYmVkZGVkIGluIHRoZSBFUiBtZW1icmFuZS4gSVJFMVx1MDNCMSBhY3RzIGFzIGEgc2Vuc29yIGZvciBwcm90ZWluIG1pc2ZvbGRpbmcgc3RyZXNzIGluIHRoZSBFUi4gT25jZSBJUkUxXHUwM0IxIGRldGVjdHMgbWlzZm9sZGVkIHByb3RlaW5zLCBpdCBkaW1lcml6ZXMgYW5kIGJlY29tZXMgYWN0aXZhdGVkIHRocm91Z2ggYXV0b3Bob3NwaG9yeWxhdGlvbi4gVGhpcyBhY3RpdmF0aW9uIHN3aXRjaGVzIG9uIHRoZSBlbmRvcmlib251Y2xlYXNlIGFjdGl2aXR5IG9mIElSRTFcdTAzQjEsIHdoaWNoIGlzIGEgY3J1Y2lhbCBzdGVwIGluIHRoZSBhY3RpdmF0aW9uIG9mIFhCUDEuIFRoZSBtUk5BIGZvciBYQlAxIGlzIGNvbnRpbnVvdXNseSB0cmFuc2NyaWJlZCBpbiB0aGUgbnVjbGV1cyBhbmQgdHJhbnNwb3J0ZWQgdG8gdGhlIGN5dG9wbGFzbSwgd2hlcmUgaXQgY29udGFpbnMgYW4gaW50cm9uIHRoYXQgaXMgbm90IG5vcm1hbGx5IHNwbGljZWQgb3V0LiBUaGlzIGludHJvbiBjb250YWlucyBhIHN0b3AgY29kb24sIHByZXZlbnRpbmcgdGhlIHRyYW5zbGF0aW9uIG9mIGEgZnVuY3Rpb25hbCBYQlAxIHByb3RlaW4uIEhvd2V2ZXIsIHdoZW4gRVIgc3RyZXNzIGFjdGl2YXRlcyBJUkUxXHUwM0IxLCB0aGUgZW5kb3JpYm9udWNsZWFzZSBkb21haW4gb2YgSVJFMVx1MDNCMSBzcGxpY2VzIHRoaXMgaW50cm9uIG91dCBvZiB0aGUgWEJQMSBtUk5BLiBUaGlzIGlzIGFuIHVuY29udmVudGlvbmFsIHNwbGljaW5nIGV2ZW50LCBhcyBpdCBvY2N1cnMgaW4gdGhlIGN5dG9wbGFzbSByYXRoZXIgdGhhbiBpbiB0aGUgbnVjbGV1cy4gT25jZSB0aGUgaW50cm9uIGlzIHJlbW92ZWQsIHRoZSBzcGxpY2VkIFhCUDEgbVJOQSBjYW4gYmUgdHJhbnNsYXRlZCBpbnRvIGEgZnVuY3Rpb25hbCBYQlAxIHByb3RlaW4uIFRoaXMgYWN0aXZhdGVkIFhCUDEgYWN0cyBhcyBhIHRyYW5zY3JpcHRpb24gZmFjdG9yLCB0dXJuaW5nIG9uIGdlbmVzIHRoYXQgaW5jcmVhc2UgdGhlIHByb3RlaW4tZm9sZGluZyBjYXBhY2l0eSBvZiB0aGUgRVIgYW5kIHByb21vdGUgdGhlIGRlZ3JhZGF0aW9uIG9mIG1pc2ZvbGRlZCBwcm90ZWlucy4gSW4gdGhpcyB3YXksIFhCUDEgaGVscHMgdGhlIGNlbGwgY29wZSB3aXRoIEVSIHN0cmVzcyBhbmQgcmVzdG9yZSBiYWxhbmNlIGluIHRoZSBwcm90ZWluLWZvbGRpbmcgcHJvY2Vzcy4gVGh1cywgdGhpcyBtZWNoYW5pc20gb3JpZ2luYWxseSBmdW5jdGlvbnMgd2l0aGluIHRoZSBjZWxsIGluIHRoZSBjb250ZXh0IG9mIEVSIHN0cmVzcyB0byBtYWludGFpbiBFUiBmdW5jdGlvbiB3aGVuIHByb3RlaW4gZm9sZGluZyBpcyBkaXNydXB0ZWQuIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNVwiLz48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjZcIi8+IE91ciBpZGVhIHdhcyB0aGVyZWZvcmUgdG8gaW50ZWdyYXRlIHRoaXMgaW50cm9uIGludG8gdGhlIG1STkEgZW5jb2Rpbmcgb3VyIHByaW1lLWVkaXRpbmcgY29tcGxleCBhbmQgdGh1cyB1c2UgdGhpcyBtZWNoYW5pc20gdG8gZW5zdXJlIHRoYXQgYSBmdW5jdGlvbmFsIHByaW1lIGVkaXRvciBpcyBvbmx5IHN5bnRoZXNpemVkIHdoZW4gdGhlcmUgaXMgYSBoaWdoIGFjY3VtdWxhdGlvbiBvZiBtaXNmb2xkZWQgcHJvdGVpbnMgaW4gdGhlIGNlbGwgKHNpbWlsYXIgdG8gRjUwOGRlbCkuIFRoaXMgd291bGQgdGhlcmVmb3JlIHJlcHJlc2VudCBhbiBvcHRpbWFsIHNhZmV0eSBhc3BlY3QsIGFzIG91ciBmdXNpb24gcHJvdGVpbiwgd2hpY2ggaXMgZXNzZW50aWFsIGZvciBwcmltZSBlZGl0aW5nLCBjYW5ub3QgYmUgZnVsbHkgc3ludGhlc2lzZWQgYXMgbG9uZyBhcyB0aGUgZ2VuZXRpYyBkZWZlY3QgaXMgbm90IHByZXNlbnQgaW4gdGhlIGNlbGwuIEFjY29yZGluZ2x5LCB0aGlzIHByb3ZpZGVzIHRoZSBzZWN1cml0eSB0aGF0IG5vIGhlYWx0aHkgY2VsbHMsIGFzIHdlbGwgYXMgY29ycmVjdGx5IGVkaXRlZCBjZWxscywgY2Fubm90IGJlIGVkaXRlZCwgd2hpY2ggaXMgYW4gZW5vcm1vdXMgY29udHJpYnV0aW9uIHRvIGJpb3NhZmV0eS4gSG93ZXZlciwgdGhlcmUgd2FzIHRvbyBtdWNoIHVuY2VydGFpbnR5IGFib3V0IHRoZSBleHRlbnQgdG8gd2hpY2ggb3RoZXIgZmFjdG9ycywgc3VjaCBhcyBtaXNmb2xkZWQgcHJvdGVpbnMgdGhhdCBhcmUgbm90IGFzc29jaWF0ZWQgd2l0aCB0aGUgQ0ZUUiBwcm90ZWluLCBwbGF5IGEgcm9sZSBpbiB0aGlzIG1lY2hhbmlzbS4gQW5kIHNpbmNlIHdlIGNvdWxkIG5vdCBhbmQgZGlkIG5vdCB3YW50IHRvIHRha2UgdGhlIHJpc2sgb2Ygc3VjaCBmYWN0b3JzIGluaXRpYXRpbmcgdGhlIHN5c3RlbSwgd2UgZGVjaWRlZCBhZ2FpbnN0IHVzaW5nIGl0LiBUbyBjbGFyaWZ5IHRoaXMgdW5rbm93biBjb3JyZWxhdGlvbiwgd2UgaGF2ZSBjb25zaWRlcmVkIGEgZnV0dXJlIGV4cGVyaW1lbnQgaW4gd2hpY2ggd2Ugd2FudCB0byBzd2l0Y2ggdGhpcyBpbnRyb24gaW4gZnJvbnQgb2YgYSBmbHVvcmVzY2VudCBtYXJrZXIgYW5kIGV4cHJlc3MgaXQgaW4gY2VsbHMgd2l0aCBkZWZlY3RpdmUgQ0ZUUiBpbiBvcmRlciB0byBjb25maXJtL2ludmVzdGlnYXRlIHRoZSBkZXBlbmRlbmNlIG9mIGludHJvbiBzcGxpY2luZyBhbmQgdGhlIHByZXNlbmNlIG9mIENGVFIgRjUwOGRlbC5cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJTYWZldHkgYXNwZWN0cyBvZiBvdXIgQWlyYnVkZHlcIiBpZD1cIkJpb3NhZmV0eTJcIj5cbiAgICAgICAgICA8SDQgdGV4dD1cIlNPUlQgTE5QIGFuZCBDeXRvdG94aWNpdHlcIj48L0g0PlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFdlIGhhdmUgY2FyZWZ1bGx5IGNvbnNpZGVyZWQgdGhlIGJpb3NhZmV0eSBhc3BlY3RzIG9mIG91ciBkZWxpdmVyeSBzeXN0ZW0sIHN0YXJ0aW5nIHdpdGggdGhlIGRlY2lzaW9uIGJldHdlZW4gQWRlbm8tYXNzb2NpYXRlZCB2aXJ1c2VzIChBQVYpIG9yIExOUHMgYXMgZGVsaXZlcnkgc3lzdGVtcy4gT3VyIGNvbXBhcmlzb24gcmV2ZWFsZWQgdGhhdCB0aGUgYmlvY29tcGF0aWJpbGl0eSBhbmQgc2FmZXR5IG9mIExOUHMgYXJlIHBhcmFtb3VudCBmb3Igb3VyIGFwcHJvYWNoLiBUaGF0IGlzIHdoeSB3ZSBjaG9zZSBzZWxlY3RpdmUgb3JnYW4tdGFyZ2V0aW5nIChTT1JUKSBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBbTGluayBMTlAgdGV4dF0gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3XCIvPiBpbiB0aGUgY29udGV4dCBvZiB0YXJnZXRlZCBwdWxtb25hcnkgbVJOQSBkZWxpdmVyeS4gT25lIG9mIG91ciBwcmltYXJ5IGNvbmNlcm5zIHdpdGggdGhlIExOUCB3YXMgdGhlIHBvdGVudGlhbCBjeXRvdG94aWNpdHkgb2YgcG9seWV0aHlsZW5lIGdseWNvbCAoUEVHKSwgYSBjb21tb24gc3RhYmlsaXppbmcgYWdlbnQgaW4gTE5QIGZvcm11bGF0aW9ucy4gQXdhcmUgb2YgdGhlIGltbXVuZSByZXNwb25zZXMgUEVHIGNhbiB0cmlnZ2VyLCBwb3RlbnRpYWxseSBsZWFkaW5nIHRvIGN5dG90b3hpY2l0eSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjhcIi8+LCB3ZSBhaW1lZCBhdCBvcHRpbWl6aW5nIGl0cyBjb25jZW50cmF0aW9uIGluIG91ciBTT1JUIExOUHMgdG8gbWluaW1pemUgc3VjaCByZWFjdGlvbnMgd2hpbGUgbWFpbnRhaW5pbmcgdGhlcmFwZXV0aWMgZWZmaWNhY3kuIEJ5IHRoZSB1c2Ugb2YgbG93IG1vbGVjdWxhciB3ZWlnaHQgUEVHLCB3ZSBhZGRyZXNzZWQgdGhpcyBwcm9ibGVtLiBUbyB0ZXN0IHdlYXRoZXIgb3VyIGFwcHJvYWNoIHN1Y2NlZWRlZCwgd2UgY29uZHVjdGVkIE1UVCBhbmQgcHJvbGlmZXJhdGlvbiBhc3NheXMgdG8gZW5zdXJlIHRoYXQgb3VyIExOUCBwb3NlZCBubyBjeXRvdG94aWNpdHkgcmlza3MuXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxINCB0ZXh0PVwiUHJlY2lzaW9uIG9mIG91ciBTT1JUIExOUFwiPjwvSDQ+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgVG8gZnVydGhlciBpbXByb3ZlIHNhZmV0eSwgd2UgZm9jdXNlZCBvbiByZWR1Y2luZyBvZmYtdGFyZ2V0IGVmZmVjdHMuIEJ5IGluY29ycG9yYXRpbmcgc3BlY2lmaWMgU09SVCBtb2xlY3VsZXMsIHN1Y2ggYXMgcGVybWFuZW50bHkgY2F0aW9uaWMgbGlwaWRzIGxpa2UgRE9UQVAgW0xpbmsgTE5QIGRlc2lnbl0sIHdlIGVuc3VyZWQgdGhhdCB0aGUgbmFub3BhcnRpY2xlcyBhcmUgc3lzdGVtYXRpY2FsbHkgZGlyZWN0ZWQgdG8gdGhlIGx1bmdzLiBUaGlzIHByZWNpc2UgdGFyZ2V0aW5nIGlzIHBhcnRpY3VsYXJseSBiZW5lZmljaWFsIGZvciByZXNwaXJhdG9yeSBkaXNlYXNlcywgYXMgaXQgZW5oYW5jZXMgdGhlcmFwZXV0aWMgZWZmZWN0aXZlbmVzcyB3aGlsZSBsaW1pdGluZyB0aGUgaW1wYWN0IG9uIG5vbi10YXJnZXQgb3JnYW5zLiBPdXIgb3V0bG9vayBvZiBhbnRpYm9keSBjb25qdWdhdGlvbiBhcyBzdXJmYWNlIG1vZGlmaWNhdGlvbiBvZiBvdXIgTE5QIGZvciBjZWxsIHR5cGUtc3BlY2lmaWMgZGVsaXZlcnksIG1vcmUgZXhhY3RseSBjbHViIGNlbGxzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOVwiLz4gYW5kIGlvbm9jeXRlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjEwXCIvPiBhcyBDRlRSLWV4cHJlc3NpbmcgbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3b3VsZCByb3VuZCBvZmYgdGhpcyBhc3BlY3QuXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIEluIHN1bW1hcnksIG91ciBkZXNpZ24gc3RyYXRlZ3kgZW1waGFzaXplcyBib3RoIHNhZmV0eSBhbmQgZWZmaWNhY3kuIFRoZSBjYXJlZnVsIG9wdGltaXphdGlvbiBvZiBjb21wb25lbnRzIGxpa2UgUEVHIDIwMDAgYW5kIHRoZSB1c2Ugb2YgdGFyZ2V0ZWQgZGVsaXZlcnkgbW9sZWN1bGVzIGFsbG93IFNPUlQgTE5QcyB0byBkZWxpdmVyIHRoZXJhcGV1dGljIGFnZW50cyBkaXJlY3RseSB0byB0aGUgbHVuZ3MsIHJlZHVjaW5nIHN5c3RlbWljIGV4cG9zdXJlIGFuZCBtaW5pbWl6aW5nIHNpZGUgZWZmZWN0cy4gVGhpcyB0YXJnZXRlZCBhcHByb2FjaCBlbnN1cmVzIG1vcmUgZWZmZWN0aXZlIHRyZWF0bWVudHMsIGVzcGVjaWFsbHkgZm9yIGNvbmRpdGlvbnMgcmVxdWlyaW5nIGxvY2FsaXplZCBpbnRlcnZlbnRpb24uXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICA8L1NlY3Rpb24+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkJpb3NlY3VyaXR5XCIgaWQ9XCJCaW9zZWN1cml0eVwiPlxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkFib3V0IE91ciBQcm9qZWN0XCIgaWQ9XCJCaW9zZWN1cml0eTFcIj5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBPdXIgcHJvamVjdCBmb2N1c2VzIG9uIHRoZSBnZW5ldGljIGRpc2Vhc2UgY3lzdGljIGZpYnJvc2lzLCBzcGVjaWZpY2FsbHkgdGFyZ2V0aW5nIHRoZSBEZWx0YS01MDggbXV0YXRpb24uIFRoZSBhaW0gaXMgdG8gY29ycmVjdCB0aGlzIG11dGF0aW9uIHVzaW5nIFByaW1lIEVkaXRpbmcsIGEgcHJlY2lzZSBnZW5vbWUtZWRpdGluZyB0ZWNobmlxdWUuIFdlIGhhdmUgZXhwbG9yZWQgZGlmZmVyZW50IHN0cmF0ZWdpZXMgdG8gb3B0aW1pemUgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBmb3IgdGhpcyBzcGVjaWZpYyBhcHBsaWNhdGlvbi4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggY29uc2lzdHMgb2YgYSBuaWNrYXNlLCBhIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgYSBwZWdSTkEuIFRoZSBwZWdSTkEgZ3VpZGVzIHRoZSBlZGl0aW5nIHByb2Nlc3MgYnkgZGlyZWN0aW5nIHRoZSBjb21wbGV4IHRvIHRoZSB0YXJnZXQgRE5BIHNlcXVlbmNlLCBhbGxvd2luZyBmb3IgcHJlY2lzZSBnZW5ldGljIG1vZGlmaWNhdGlvbnMuIEZvciB0YXJnZXRlZCBkZWxpdmVyeSwgd2Ugc2VsZWN0ZWQgTE5QcyB0byBpbnRyb2R1Y2UgdGhlIG1STkEgZW5jb2RpbmcgdGhlIFByaW1lIEVkaXRpbmcgY29tcG9uZW50cyBzcGVjaWZpY2FsbHkgaW50byBsdW5nIGVwaXRoZWxpYWwgY2VsbHMsIHdoZXJlIHRoZSBDRlRSIHByb3RlaW4gaXMgaGlnaGx5IGV4cHJlc3NlZC4gQWRkaXRpb25hbGx5LCB3ZSBpbnZlc3RpZ2F0ZWQgYWx0ZXJuYXRpdmVzIHRvIHRoZSBjb252ZW50aW9uYWwgQ2FzOSBuaWNrYXNlLCBzdWNoIGFzIHRoZSBzbWFsbGVyIENhc1ggYW5kIEZhbnpvciwgYWltaW5nIHRvIHJlZHVjZSB0aGUgb3ZlcmFsbCBzaXplIG9mIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXguIEluIG91ciBvcHRpbWl6YXRpb24gZWZmb3J0cywgd2UgYWxzbyBleHBsb3JlZCBzbWFsbGVyIHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgdG8gZW5oYW5jZSB0aGUgZWZmaWNpZW5jeSBvZiB0aGUgc3lzdGVtIGluIGh1bWFuIGNlbGxzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgRnVydGhlcm1vcmUsIHdlIGhhdmUgZGV2ZWxvcGVkIGEgbW9kdWxhciBwbGFzbWlkIHRoYXQgY29udGFpbnMgdGhlIGJhY2tib25lIG9mIG91ciBQcmltZSBFZGl0aW5nIGNvbXBsZXguIFRoZSBpbmRpdmlkdWFsIGNvbXBvbmVudHMgY2FuIGJlIGNsb25lZCBpbmRpdmlkdWFsbHkgaW50byB0aGUgYmFja2JvbmUuIFRoaXMgcGxhc21pZCBhbGxvd3MgdXMgdG8gZWl0aGVyIGRlbGl2ZXIgdGhlIGNvbnN0cnVjdCBkaXJlY3RseSBpbnRvIHRhcmdldCBjZWxscyBvciB0cmFuc2NyaWJlIHRoZSBwbGFzbWlkIGludG8gUk5BLCBlbmFibGluZyB0aGUgZGVsaXZlcnkgb2YgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBpbiB0aGUgZm9ybSBvZiBtUk5BLiBUaGUgbW9kdWxhcml0eSBvZiB0aGUgcGxhc21pZCBpcyBhIGtleSBmZWF0dXJlOyBzcGVjaWZpYyByZXN0cmljdGlvbiBzaXRlcyBhcmUgaW5jbHVkZWQgdG8gZmFjaWxpdGF0ZSB0aGUgZWFzeSBleGNoYW5nZSBvZiB0aGUgY29tcGxleCdzIGNvbXBvbmVudHMuIFRoaXMgZGVzaWduIG1ha2VzIGl0IHN0cmFpZ2h0Zm9yd2FyZCB0byBhZGFwdCB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IGZvciB2YXJpb3VzIHVzZSBjYXNlcyBhbmQgdGhlcmFwZXV0aWMgcmVxdWlyZW1lbnRzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgV2UgaGF2ZSBpbnZlc3RpZ2F0ZWQgc2FmZXR5IG1lY2hhbmlzbXMgdG8gY29udHJvbCB0aGUgcHJpbWUtZWRpdGluZyBjb21wbGV4LCBpbmNsdWRpbmcgYSByaWJvc3dpdGNoIHRoYXQgcmVzcG9uZHMgdG8gc29kaXVtIGlvbiBjb25jZW50cmF0aW9ucywgYnV0IGhhdmUgZGlzY2FyZGVkIGl0IGR1ZSB0byBzdXNwZWN0ZWQgaW5zdWZmaWNpZW50IHNlbnNpdGl2aXR5LiBXZSBhcmUgY3VycmVudGx5IGludmVzdGlnYXRpbmcgdGhlIHVzZSBvZiB0aGUgRVIgc3RyZXNzIHJlc3BvbnNlIHRvIGFjdGl2YXRlIHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXggb25seSBpbiBjZWxscyB3aXRoIGhpZ2ggRVIgc3RyZXNzLCBhcyBpcyB0eXBpY2FsIGZvciBjeXN0aWMgZmlicm9zaXMuIEZ1cnRoZXIgZGV0YWlscyBjYW4gYmUgZm91bmQgaW4gdGhlIEJpb3NhZmV0eSBzZWN0aW9uLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBc3Nlc3NpbmcgUHJvamVjdCBSaXNrc1wiIGlkPVwiQmlvc2VjdXJpdHkyXCI+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgR2l2ZW4gdGhlIHNlbnNpdGl2ZSBuYXR1cmUgb2YgZ2Vub21lIGVkaXRpbmcsIG91ciBwcm9qZWN0IHByZXNlbnRzIHNwZWNpZmljIGJpb3NlY3VyaXR5IGNvbmNlcm5zIHRoYXQgbmVlZCB0byBiZSBhc3Nlc3NlZCBhbmQgbWl0aWdhdGVkLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICA8c3Ryb25nPkR1YWwtVXNlIFBvdGVudGlhbDo8L3N0cm9uZz4gT25lIG9mIHRoZSBtYWluIGJpb3NlY3VyaXR5IHJpc2tzIGlzIHRoZSBwb3RlbnRpYWwgZm9yIGR1YWwtdXNlIG9mIHRoZSBQcmltZSBFZGl0aW5nIHRlY2hub2xvZ3kuIFRoZSBzeXN0ZW0gd2UgYXJlIGRldmVsb3BpbmcsIHdoaWxlIGludGVuZGVkIGZvciB0aGVyYXBldXRpYyB1c2UsIGNvdWxkIGJlIG1pc3VzZWQgdG8gdGFyZ2V0IG90aGVyIGdlbmVzIG9yIGdlbm9tZXMgZm9yIG1hbGljaW91cyBwdXJwb3Nlcy4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxMVwiLz4gVGhpcyBpbmNsdWRlcyB0aGUgcG9zc2liaWxpdHkgb2Ygd2VhcG9uaXppbmcgdGhlIHRlY2hub2xvZ3kgdG8gaW5kdWNlIGhhcm1mdWwgZ2VuZXRpYyBjaGFuZ2VzIGluIGNyb3BzLCBhbmltYWxzLCBvciBldmVuIGh1bWFucy4gVGhlIG1vZHVsYXIgZGVzaWduIG9mIG91ciBwbGFzbWlkIHN5c3RlbSwgYWx0aG91Z2ggaW50ZW5kZWQgdG8gZmFjaWxpdGF0ZSBvcHRpbWl6YXRpb24sIGNvdWxkIGJlIGV4cGxvaXRlZCB0byBleGNoYW5nZSBjb21wb25lbnRzIGZvciBoYXJtZnVsIGFwcGxpY2F0aW9ucywgdGhlcmVieSBpbmNyZWFzaW5nIHRoZSByaXNrIG9mIG1pc3VzZS4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPHN0cm9uZz5VbmludGVuZGVuZCBEaXNzZW1pbmF0aW9uOjwvc3Ryb25nPiBTaW5jZSBvdXIgYXBwcm9hY2ggdXNlcyBtUk5BIGRlbGl2ZXJlZCB2aWEgTE5QcywgdGhlcmUgaXMgYSByaXNrIG9mIHVuaW50ZW5kZWQgZGlzc2VtaW5hdGlvbiBpbnRvIHRoZSBlbnZpcm9ubWVudC4gSWYgdGhlIExOUHMgYXJlIG5vdCBhZGVxdWF0ZWx5IGNvbnRhaW5lZCBvciBkaXNwb3NlZCBvZiwgdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IHRoZXkgY291bGQgYmUgYWJzb3JiZWQgYnkgbm9uLXRhcmdldCBvcmdhbmlzbXMsIHBvdGVudGlhbGx5IGxlYWRpbmcgdG8gb2ZmLXRhcmdldCBnZW5ldGljIG1vZGlmaWNhdGlvbnMuPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxMlwiLz4gSW4gYWRkaXRpb24sIHRoZSBtUk5BIGl0c2VsZiBjb3VsZCB0aGVvcmV0aWNhbGx5IGJlIHRyYW5zZmVycmVkIGJldHdlZW4gY2VsbHMsIGVzcGVjaWFsbHkgaWYgdGFrZW4gdXAgYnkgdW5pbnRlbmRlZCBob3N0cywgcmFpc2luZyBjb25jZXJucyBhYm91dCB1bmludGVudGlvbmFsIHNwcmVhZCBpbiB0aGUgZW52aXJvbm1lbnQuIFxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICAgIDxzdHJvbmc+VW5hdXRob3JpemVkIEFjY2Vzczo8L3N0cm9uZz4gVGhlIGdlbmV0aWMgY29uc3RydWN0cyBhbmQgdGhlIGRldGFpbGVkIG1ldGhvZG9sb2d5IG9mIG91ciBQcmltZSBFZGl0aW5nIHN5c3RlbSBtdXN0IGJlIHNlY3VyZWx5IHN0b3JlZCBhbmQgcHJvdGVjdGVkLjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTNcIi8+IElmIHVuYXV0aG9yaXplZCBpbmRpdmlkdWFscyB3ZXJlIHRvIGdhaW4gYWNjZXNzIHRvIHRoZSBwbGFzbWlkcywgTE5QIGZvcm11bGF0aW9ucywgb3IgZWRpdGluZyBwcm90b2NvbHMsIHRoZXJlIGlzIGEgcmlzayBvZiB0aGUgdGVjaG5vbG9neSBiZWluZyByZXBsaWNhdGVkIG9yIGFkYXB0ZWQgZm9yIHVuaW50ZW5kZWQsIHBvdGVudGlhbGx5IGhhcm1mdWwgdXNlcy4gVGhpcyBoaWdobGlnaHRzIHRoZSBpbXBvcnRhbmNlIG9mIHByb3BlciBiaW9zZWN1cml0eSBwcm90b2NvbHMgaW4gYm90aCBwaHlzaWNhbCBhbmQgZGlnaXRhbCBzdG9yYWdlIG9mIG91ciBwcm9qZWN0IG1hdGVyaWFscy4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPHN0cm9uZz5TeW50aGV0aWMgQmlvbG9neSBhbmQgaW5mb3JtYXRpb24gU2hhcmluZzo8L3N0cm9uZz4gVGhlIGVhc2Ugb2Ygc3ludGhlc2l6aW5nIGdlbmV0aWMgbWF0ZXJpYWwgbWVhbnMgdGhhdCBvdXIgcHJvamVjdCBpbmZvcm1hdGlvbiBjb3VsZCBwb3RlbnRpYWxseSBiZSB1c2VkIHRvIG9yZGVyIHNpbWlsYXIgY29uc3RydWN0cyBmcm9tIGNvbW1lcmNpYWwgc3ludGhlc2lzIHByb3ZpZGVycy48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE0XCIvPiBXaGlsZSB0aGVzZSBwcm92aWRlcnMgZm9sbG93IGJpb3NlY3VyaXR5IGd1aWRlbGluZXMsIHRoZSBpbmNyZWFzaW5nIGFjY2Vzc2liaWxpdHkgb2Ygc3ludGhldGljIGJpb2xvZ3kgcmFpc2VzIHRoZSBjb25jZXJuIG9mIG91ciBQcmltZSBFZGl0aW5nIHN5c3RlbSBiZWluZyByZXByb2R1Y2VkIG9yIG1vZGlmaWVkIHdpdGhvdXQgb3VyIGtub3dsZWRnZS4gVGhpcyBpbmNsdWRlcyBwb3RlbnRpYWwgYXR0ZW1wdHMgdG8gYnlwYXNzIHNhZmV0eSBtZWNoYW5pc21zIG9yIGNyZWF0ZSB2YXJpYW50cyB0aGF0IGV2YWRlIGN1cnJlbnQgcmVndWxhdG9yeSBmcmFtZXdvcmtzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICA8c3Ryb25nPlB1YmxpYyBQZXJjZXB0aW9uIGFuZCBNaXNjb21tdW5pY2F0aW9uOjwvc3Ryb25nPiBUaGVyZSBpcyBhIGJpb3NlY3VyaXR5IHJpc2sgaW4gaG93IG91ciBwcm9qZWN0J3MgdGVjaG5vbG9neSBpcyBjb21tdW5pY2F0ZWQgdG8gdGhlIHB1YmxpYy48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE1XCIvPiBNaXNjb21tdW5pY2F0aW9uIG9yIG1pc3VuZGVyc3RhbmRpbmcgb2YgdGhlIHByb2plY3RcdTIwMTlzIGludGVudCBhbmQgY2FwYWJpbGl0aWVzIGNvdWxkIGxlYWQgdG8gbWlzaW5mb3JtYXRpb24sIGZlYXIsIG9yIGV2ZW4gYXR0ZW1wdHMgdG8gcmVwbGljYXRlIHRoZSB0ZWNobm9sb2d5IG91dHNpZGUgb2YgY29udHJvbGxlZCBhbmQgcmVndWxhdGVkIGVudmlyb25tZW50cy4gVGhpcyBjb3VsZCB1bmRlcm1pbmUgcHVibGljIHRydXN0IGluIGxlZ2l0aW1hdGUgdGhlcmFwZXV0aWMgdXNlcyBvZiBnZW5vbWUtZWRpdGluZyB0ZWNobm9sb2dpZXMgYW5kIHBvdGVudGlhbGx5IGZhY2lsaXRhdGUgbWlzdXNlLiAgXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiTWFuYWdpbmcgUmlza3NcIiBpZD1cIkJpb3NlY3VyaXR5M1wiPlxuICAgICAgICAgIDxINSB0ZXh0PVwiRHVhbC1Vc2UgUG90ZW50aWFsXCI+PC9INT5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBUbyBtaXRpZ2F0ZSB0aGUgcmlzayBvZiBkdWFsLXVzZSwgd2hlcmUgb3VyIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neSBjb3VsZCBiZSBleHBsb2l0ZWQgZm9yIHVuaW50ZW5kZWQgYW5kIHBvdGVudGlhbGx5IGhhcm1mdWwgcHVycG9zZXMsIHdlIGhhdmUgaW1wbGVtZW50ZWQgc2V2ZXJhbCBzdHJhdGVnaWVzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgRmlyc3RseSwgd2Ugc3RyaWN0bHkgY29udHJvbCBhY2Nlc3MgdG8gYWxsIG91ciBwcm9qZWN0IGRhdGEsIGluY2x1ZGluZyBnZW5ldGljIHNlcXVlbmNlcywgcGxhc21pZCBkZXNpZ25zLCBhbmQgcHJvdG9jb2xzLiBBY2Nlc3MgaXMgbGltaXRlZCB0byBhdXRob3JpemVkIHRlYW0gbWVtYmVycyBhbmQgY29sbGFib3JhdG9ycyB3aG8gZm9sbG93IHN0cmljdCBiaW9zZWN1cml0eSBndWlkZWxpbmVzLiBGdXJ0aGVyIGVsYWJvcmF0aW9uIG9uIHRoZXNlIGFjY2VzcyBjb250cm9scyB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBcIlVuYXV0aG9yaXplZCBBY2Nlc3NcIiBzZWN0aW9uLlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBTZWNvbmRseSwgd2UgaW50ZW5kIHRvIGluY29ycG9yYXRlIGEgc2FmZXR5IG1lY2hhbmlzbSBpbnRvIG91ciBQcmltZSBFZGl0aW5nIGNvbXBsZXggdGhhdCBzaWduaWZpY2FudGx5IGxpbWl0cyBpdHMgcG90ZW50aWFsIG1pc3VzZS4gQnkgdXRpbGl6aW5nIHRoZSBFUiBzdHJlc3MgcmVzcG9uc2UgcGF0aHdheSwgd2Ugd291bGQgZGVzaWduIG91ciB0aGVyYXBldXRpYyBtUk5BIHRvIHVuZGVyZ28gdW5jb252ZW50aW9uYWwgc3BsaWNpbmcgb25seSBpbiBjZWxscyBleHBlcmllbmNpbmcgaGlnaCBsZXZlbHMgb2YgcHJvdGVpbiBzdHJlc3MuIE9ubHkgdGhpcyB1bmNvbnZlbnRpb25hbCBzcGxpY2luZyB3b3VsZCBjb252ZXJ0IHRoZSBtUk5BIGludG8gYSBmb3JtIHRoYXQgY2FuIGJlIHRyYW5zbGF0ZWQgaW50byB0aGUgZmluYWwgUEUgY29tcGxleC4gVGhpcyBtZWNoYW5pc20gZW5zdXJlcyB0aGF0IHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggYmVjb21lcyBhY3RpdmUgcHJpbWFyaWx5IGluIGNlbGxzIHVuZGVyIHN1Y2ggc3RyZXNzIGNvbmRpdGlvbnMuIFdoaWxlIHRoaXMgZG9lcyBub3QgZXhjbHVzaXZlbHkgbGltaXQgdGhlIGNvbXBsZXggdG8gY3lzdGljIGZpYnJvc2lzLWFmZmVjdGVkIGNlbGxzLCBpdCBjb25zaWRlcmFibHkgbmFycm93cyB0aGUgcmFuZ2Ugb2YgY2VsbHMgd2hlcmUgYWN0aXZhdGlvbiBjYW4gb2NjdXIsIHRodXMgcHJldmVudGluZyBhcmJpdHJhcnkgYXBwbGljYXRpb24gb2YgdGhlIGVkaXRpbmcgc3lzdGVtIGFuZCByZWR1Y2luZyB0aGUgcmlzayBvZiB0YXJnZXRpbmcgdW5pbnRlbmRlZCBjZWxscy4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFRvZ2V0aGVyLCB0aGVzZSBtZWFzdXJlcyBwcm92aWRlIGEgbGF5ZXIgb2YgcHJvdGVjdGlvbiBhZ2FpbnN0IGR1YWwtdXNlIHJpc2tzLCBtYWtpbmcgaXQgbW9yZSBkaWZmaWN1bHQgZm9yIHRoZSB0ZWNobm9sb2d5IHRvIGJlIGVtcGxveWVkIG91dHNpZGUgb2YgaXRzIGludGVuZGVkIHRoZXJhcGV1dGljIGNvbnRleHQuICBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIlVuaXRlbmRlZCBEaXNzZW1pbmF0aW9uXCI+PC9INT5cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgVG8gbWluaW1pemUgdGhlIHJpc2sgb2Ygb3VyIGNvbnN0cnVjdCBiZWluZyBpbmFkdmVydGVudGx5IHJlbGVhc2VkIGludG8gdGhlIGVudmlyb25tZW50LCB3ZSBhZGhlcmUgdG8gc3RyaWN0IHN0YW5kYXJkIG9wZXJhdGluZyBwcm9jZWR1cmVzIChTT1BzKSBpbiB0aGUgbGFib3JhdG9yeS4gVGhlc2UgU09QcyBhcmUgZGVzaWduZWQgdG8gZW5zdXJlIHRoYXQgYWxsIHNhZmV0eSBzdGFuZGFyZHMgYXJlIG1haW50YWluZWQsIHBhcnRpY3VsYXJseSB3aGVuIGhhbmRsaW5nIExOUHMpIGFuZCBnZW5ldGljIG1hdGVyaWFscy4gVGhpcyBpbmNsdWRlcyByaWdvcm91cyBwcm90b2NvbHMgZm9yIHN0b3JhZ2UsIGRpc3Bvc2FsLCBhbmQgZGVjb250YW1pbmF0aW9uLCByZWR1Y2luZyB0aGUgY2hhbmNlIG9mIGFjY2lkZW50YWwgZGlzc2VtaW5hdGlvbiBvZiB0aGUgbWF0ZXJpYWxzIHdlIHdvcmsgd2l0aC4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIEluIGFkZGl0aW9uIHRvIG91ciBsYWJvcmF0b3J5IHByYWN0aWNlcywgd2UgaGF2ZSBmb3JtdWxhdGVkIG91ciBMTlBzIHdpdGggc3BlY2lmaWMgY2hlbWljYWwgY29tcG9uZW50cyB0aGF0IGVuYWJsZSB0aGVtIHRvIHNlbGVjdGl2ZWx5IGZ1c2Ugd2l0aCBsdW5nIGVwaXRoZWxpYWwgY2VsbHMsIHN1Y2ggYXMgaW9ub2N5dGVzIGFuZCBjbHViIGNlbGxzLCB3aGljaCBleHByZXNzIENGVFIuIFRoaXMgc2VsZWN0aXZlIGZ1c2lvbiBlbnN1cmVzIHRoYXQgZXZlbiBpZiB0aGUgTE5QcyB3ZXJlIHRvIGFjY2lkZW50YWxseSBlbnRlciB0aGUgZW52aXJvbm1lbnQsIHRoZXkgd291bGQgb25seSBpbnRlcmFjdCB3aXRoIHRoZSBpbnRlbmRlZCBjZWxscy4gVGhpcyBhcHByb2FjaCBzaWduaWZpY2FudGx5IGVuaGFuY2VzIHRoZSBzcGVjaWZpY2l0eSBvZiB0aGUgTE5QcyBhbmQgcHJvdmlkZXMgYW4gYWRkaXRpb25hbCBsYXllciBvZiBjb250YWlubWVudCwgdGhlcmVieSByZWR1Y2luZyB0aGUgcmlzayBvZiB1bmludGVuZGVkIGRpc3NlbWluYXRpb24gb3IgZW52aXJvbm1lbnRhbCBjb250YW1pbmF0aW9uLiAgXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIExvb2tpbmcgYWhlYWQsIHdlIHBsYW4gdG8gZnVydGhlciBlbmhhbmNlIHRoZSBzcGVjaWZpY2l0eSBvZiBvdXIgTE5QcyBieSBpbmNvcnBvcmF0aW5nIGFudGlib2RpZXMgb24gdGhlaXIgc3VyZmFjZS4gVGhlc2UgYW50aWJvZGllcyB3b3VsZCBiZSBlbmdpbmVlcmVkIHRvIGJpbmQgZXhjbHVzaXZlbHkgdG8gc3VyZmFjZSBwcm90ZWlucyBwcmVzZW50IG9uIENGVFItZXhwcmVzc2luZyBsdW5nIGVwaXRoZWxpYWwgY2VsbHMsIGFkZGluZyBhbiBleHRyYSBsYXllciBvZiBjb250cm9sLiBXaGlsZSB0aGlzIGFudGlib2R5LWJhc2VkIHRhcmdldGluZyBoYXMgbm90IHlldCBiZWVuIGltcGxlbWVudGVkLCBpdCByZXByZXNlbnRzIGEgY3J1Y2lhbCBuZXh0IHN0ZXAgaW4gb3VyIGRldmVsb3BtZW50IHByb2Nlc3MsIHJlaW5mb3JjaW5nIG91ciBjb21taXRtZW50IHRvIGJpb3NlY3VyaXR5IGJ5IGxpbWl0aW5nIHRoZSBwb3RlbnRpYWwgZm9yIHVuaW50ZW5kZWQgZGlzc2VtaW5hdGlvbi4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFRvZ2V0aGVyLCB0aGVzZSBwcmFjdGljZXMgYW5kIGRlc2lnbiBzdHJhdGVnaWVzIGhlbHAgdG8gZW5zdXJlIHRoYXQgdGhlIHJpc2sgb2Ygb3VyIGNvbnN0cnVjdHMgaW5hZHZlcnRlbnRseSBhZmZlY3Rpbmcgbm9uLXRhcmdldCBvcmdhbmlzbXMgb3IgZW52aXJvbm1lbnRzIGlzIG1pbmltaXplZC4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJVbmF1dGhvcml6ZWQgQWNjZXNzXCI+PC9INT5cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgVG8gcHJldmVudCB1bmF1dGhvcml6ZWQgYWNjZXNzIHRvIG91ciBnZW5ldGljIHNlcXVlbmNlcywgcGxhc21pZCBjb25zdHJ1Y3RzLCBhbmQgb3RoZXIgc2Vuc2l0aXZlIGluZm9ybWF0aW9uLCB3ZSBoYXZlIGltcGxlbWVudGVkIHN0cmljdCBpbnRlcm5hbCBiaW9zZWN1cml0eSBwb2xpY2llcy4gVGhlc2UgcG9saWNpZXMgZW5zdXJlIHRoYXQgd2UgY2FyZWZ1bGx5IG1hbmFnZSB3aGljaCBtYXRlcmlhbHMgZXhpc3QgaW4gcGh5c2ljYWwgZm9ybSBhbmQgdGhlaXIgZXhhY3Qgc3RvcmFnZSBsb2NhdGlvbnMuIFxuICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICBJbiB0ZXJtcyBvZiBkaWdpdGFsIHNlY3VyaXR5LCB3ZSBzdHJpY3RseSByZWd1bGF0ZSBhY2Nlc3MgdG8gb3VyIGRhdGEgc3RvcmFnZSBzeXN0ZW1zIHRocm91Z2ggYSBjb21iaW5hdGlvbiBvZiBtZWFzdXJlcy4gV2UgdXNlIGEgc2VjdXJlLCBwYXNzd29yZC1wcm90ZWN0ZWQgY2xvdWQgc3lzdGVtLCBlbnN1cmluZyBvbmx5IGF1dGhvcml6ZWQgdGVhbSBtZW1iZXJzIGNhbiBhY2Nlc3Mgc2Vuc2l0aXZlIHByb2plY3QgaW5mb3JtYXRpb24uIEFjY2VzcyB0byB0aGUgbGFiIGlzIGxpbWl0ZWQgdG8gdGVhbSBtZW1iZXJzIHdpdGggaW50ZXJuYWwga2V5cywgYW5kIG91ciBzZXJ2ZXIgc2VjdXJpdHkgaW5jbHVkZXMgc3RyaW5nZW50IGFjY2VzcyByaWdodHMgbWFuYWdlbWVudCwgYWxsb3dpbmcgb25seSBhcHByb3ZlZCBpbmRpdmlkdWFscyB0byB2aWV3LCBtb2RpZnksIG9yIHNoYXJlIHRoZSBkYXRhLiBUaGVzZSBzYWZlZ3VhcmRzIGVuc3VyZSB0aGF0IHByb2plY3QgaW5mb3JtYXRpb24gcmVtYWlucyBwcm90ZWN0ZWQgYWdhaW5zdCB1bmF1dGhvcml6ZWQgYWNjZXNzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgRnVydGhlcm1vcmUsIHdlIGVuc3VyZSB0aGF0IGFueSBzZW5zaXRpdmUgZGF0YSBnZW5lcmF0ZWQgZHVyaW5nIG91ciBwcm9qZWN0IGlzIG9ubHkgcHVibGlzaGVkIGluIHRoZSBzdXBwbGVtZW50YXJ5IG1hdGVyaWFscyBzZWN0aW9uLCB3aGljaCBpcyBhY2Nlc3NpYmxlIGV4Y2x1c2l2ZWx5IHRvIHRob3NlIHdpdGggYW4gb2ZmaWNpYWwgaUdFTSBhY2NvdW50LiBCeSB0YWtpbmcgdGhpcyBhcHByb2FjaCwgd2UgY2FuIGxpbWl0IHRoZSBhdmFpbGFiaWxpdHkgb2Ygc2Vuc2l0aXZlIGluZm9ybWF0aW9uIGFuZCByZWR1Y2UgdGhlIHJpc2sgb2YgaXQgYmVpbmcgbWlzdXNlZC4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJTeW50aGV0aWMgQmlvbG9neSBhbmQgSW5mb3JtYXRpb24gU2hhcmluZ1wiPjwvSDU+XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIE1hbmFnaW5nIHRoZSByaXNrcyBhc3NvY2lhdGVkIHdpdGggc3ludGhldGljIGJpb2xvZ3kgYW5kIGluZm9ybWF0aW9uIHNoYXJpbmcgaXMgYSBjb21wbGV4IGNoYWxsZW5nZS4gTWFueSBvZiB0aGUgc3RyYXRlZ2llcyB3ZSB1c2UgdG8gYWRkcmVzcyBvdGhlciByaXNrcywgc3VjaCBhcyBcIlVuYXV0aG9yaXplZCBBY2Nlc3NcIiBhbmQgXCJEdWFsLVVzZSBQb3RlbnRpYWwsXCIgYXJlIGVxdWFsbHkgcmVsZXZhbnQgaW4gdGhpcyBjb250ZXh0LiBGb3IgaW5zdGFuY2UsIG91ciBzdHJpY3QgY29udHJvbCBvdmVyIGFjY2VzcyB0byBzZW5zaXRpdmUgaW5mb3JtYXRpb24gYW5kIG91ciBzYWZldHkgbWVjaGFuaXNtcyBib3RoIGhlbHAgbWl0aWdhdGUgdGhlIHJpc2tzIHBvc2VkIGJ5IHRoZSBhY2Nlc3NpYmlsaXR5IG9mIHN5bnRoZXRpYyBiaW9sb2d5IHRvb2xzLiBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgSG93ZXZlciwgaXQgaXMgaW1wb3J0YW50IHRvIGFja25vd2xlZGdlIHRoYXQgdGhpcyByaXNrIGlzIGluaGVyZW50IHRvIHRoZSBmaWVsZCBvZiBzeW50aGV0aWMgYmlvbG9neS4gVGhlIGVhc2Ugb2Ygb2J0YWluaW5nIGluZm9ybWF0aW9uIGFuZCwgd2l0aCB0aGUgcmlnaHQgZXhwZXJ0aXNlLCBjb21iaW5pbmcgdmFyaW91cyBjb21wb25lbnRzIHRvIGNyZWF0ZSBwb3dlcmZ1bCBhbmQgcG90ZW50aWFsbHkgaGF6YXJkb3VzIHRvb2xzIGlzIGEgZnVuZGFtZW50YWwgY29uY2Vybi4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFRvIGFkZHJlc3MgdGhpcywgd2UgYWRoZXJlIHN0cmljdGx5IHRvIGFsbCBwb2xpY2llcyBhbmQgcmVndWxhdGlvbnMgc2V0IGZvcnRoIGJ5IGlHRU0sIG91ciB1bml2ZXJzaXR5LCB0aGUgR2VybWFuIGdvdmVybm1lbnQsIGFuZCB0aGUgRXVyb3BlYW4gVW5pb24uIEJ5IGFsaWduaW5nIG91ciBwcmFjdGljZXMgd2l0aCBleGlzdGluZyByZWd1bGF0aW9ucyBvbiBzeW50aGV0aWMgYmlvbG9neSwgd2UgYWltIHRvIGNvbmR1Y3Qgb3VyIHdvcmsgcmVzcG9uc2libHkgYW5kIHJlZHVjZSB0aGUgcmlza3MgYXNzb2NpYXRlZCB3aXRoIHRoZSBmaWVsZC4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJQdWJsaWMgUGVyY2VwdGlvbiBhbmQgTWlzY29tbXVuaWNhdGlvblwiPjwvSDU+XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIE9uZSBvZiB0aGUgY2hhbGxlbmdlcyBpbiBzY2llbnRpZmljIHJlc2VhcmNoLCBlc3BlY2lhbGx5IGluIGZpZWxkcyBsaWtlIHN5bnRoZXRpYyBiaW9sb2d5LCBpcyB0aGF0IGFkdmFuY2VtZW50cyBjYW4gb2Z0ZW4gb3V0cGFjZSBwdWJsaWMgdW5kZXJzdGFuZGluZyBhbmQgZGlzY291cnNlLiBUaGlzIGNhbiBsZWFkIHRvIGNvbmZ1c2lvbiwgZmVhciwgb3IgbWlzdHJ1c3QgaWYgdGhlIHJlc2VhcmNoIGlzIG5vdCBjb21tdW5pY2F0ZWQgZWZmZWN0aXZlbHkuIFRvIGFkZHJlc3MgdGhpcyBpc3N1ZSwgd2UgYmVsaWV2ZSB0aGF0IHNjaWVudGlmaWMgcHJvZ3Jlc3Mgc2hvdWxkIG9jY3VyIGluIGNvbnN0YW50IGRpYWxvZ3VlIHdpdGggdGhlIHB1YmxpYy4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgIFdlIGhhdmUgYWRvcHRlZCBhIHN0cm9uZyBIdW1hbiBQcmFjdGljZXMgYXBwcm9hY2ggdG8gZW5zdXJlIHRyYW5zcGFyZW5jeSBhbmQgZm9zdGVyIHB1YmxpYyBlbmdhZ2VtZW50LiBPdXIgZWZmb3J0cyBpbmNsdWRlIGluaXRpYXRpdmVzIGxpa2UgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsICh7c2Nyb2xsVG9JZDogJ2NmLW1vbnRoJywgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnLCB0YWJJZDogJ211a29tb3ZlJyB9KX0+IE1VS09tb3ZlIDwvYT4gIGFuZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgKHtzY3JvbGxUb0lkOiAnRGVyIFRldXRvIHJ1ZnQhJywgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnLCB0YWJJZDogJ3RldXRvcnVmdCcgfSl9PiBcIkRlciBUZXV0byBydWZ0IVwiIDwvYT4gICwgd2hlcmUgd2UgaGF2ZSB3b3JrZWQgZGlyZWN0bHkgd2l0aCBzdHVkZW50cywgZWR1Y2F0aW9uYWwgaW5zdGl0dXRpb25zLCBhbmQgcHVibGljIG9yZ2FuaXphdGlvbnMuIFRocm91Z2ggdGhlc2UgaW5pdGlhdGl2ZXMsIHdlIGFpbSB0byBleHBsYWluIG91ciBwcm9qZWN0LCBkaXNjdXNzIGl0cyBpbXBsaWNhdGlvbnMsIGFuZCBhbnN3ZXIgYW55IHF1ZXN0aW9ucywgdGh1cyBtYWludGFpbmluZyBhbiBvcGVuIGxpbmUgb2YgY29tbXVuaWNhdGlvbi4gQnkgY29sbGFib3JhdGluZyB3aXRoIGEgdmFyaWV0eSBvZiBwdWJsaWMgZW50aXRpZXMsIGluY2x1ZGluZyBwYXRpZW50IGFzc29jaWF0aW9ucywgZWR1Y2F0aW9uYWwgcHJvZ3JhbXMsIGFuZCBjb21tdW5pdHkgZ3JvdXBzLCB3ZSBlbnN1cmUgdGhhdCBvdXIgcmVzZWFyY2ggcmVtYWlucyBhY2Nlc3NpYmxlIGFuZCB1bmRlcnN0YW5kYWJsZSB0byBhIGJyb2FkZXIgYXVkaWVuY2UuICBcbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgVGhpcyBwcm9hY3RpdmUgYXBwcm9hY2ggaGVscHMgdXMgYWRkcmVzcyBwb3RlbnRpYWwgY29uY2VybnMsIGRlbXlzdGlmeSBvdXIgcmVzZWFyY2gsIGFuZCBjb250cmlidXRlIHRvIGEgbW9yZSBpbmZvcm1lZCBwdWJsaWMgcGVyY2VwdGlvbiBvZiBzeW50aGV0aWMgYmlvbG9neS4gXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQmlvZXRoaWNzXCIgaWQ9XCJCaW9ldGhpY3NcIj5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIEJpb2V0aGljcyBpcyBhbiBpbnRlcmRpc2NpcGxpbmFyeSBmaWVsZCBvZiByZXNlYXJjaCB0aGF0IGFkZHJlc3NlcyBldGhpY2FsIGlzc3VlcyBwZXJ0YWluaW5nIHRvIHRoZSBsaWZlIHNjaWVuY2VzIGFuZCBtZWRpY2FsIHJlc2VhcmNoLiBJdCBwbGF5cyBhIHBpdm90YWwgcm9sZSBpbiBjb250ZW1wb3JhcnkgcmVzZWFyY2gsIHBhcnRpY3VsYXJseSBpbiBwcm9qZWN0cyB0aGF0IGVtcGxveSBodW1hbiBzYW1wbGVzIG9yIGRhdGEuIFRoaXMgaXMgZHVlIHRvIHRoZSBmYWN0IHRoYXQgaW4gdGhlc2UgY2FzZXMsIHRoZSBwcm90ZWN0aW9uIG9mIHRoZSByaWdodHMgYW5kIGRpZ25pdHkgb2YgdGhlIHBlb3BsZSBpbnZvbHZlZCBpcyBvZiB0aGUgdXRtb3N0IGltcG9ydGFuY2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNlwiLz4uIEluIG9yZGVyIHRvIGFzY2VydGFpbiB0aGUgbmVjZXNzaXR5IGZvciBhbiBldGhpY3MgYXBwbGljYXRpb24sIGFuIGludGVydmlldyB3YXMgY29uZHVjdGVkIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmVyZW5zJywgJy9odW1hbi1wcmFjdGljZXMnKX0+RXZhLU1hcmlhIEJlcmVuczwvYT4sIHRoZSBzY2llbnRpZmljIGRpcmVjdG9yIG9mIHRoZSBvZmZpY2Ugb2YgdGhlIEV0aGljcyBDb21taXR0ZWUgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIGFzIHBhcnQgb2YgdGhlIGN1cnJlbnQgcmVzZWFyY2ggcHJvamVjdC4gRm9sbG93aW5nIGEgY29tcHJlaGVuc2l2ZSByZXZpZXcsIGl0IHdhcyBjb25jbHVkZWQgdGhhdCBhbiBldGhpY3MgYXBwbGljYXRpb24gd2FzIG5vdCBuZWNlc3NhcnkgZm9yIHRoZSBzcGVjaWZpYyByZXNlYXJjaCBwcm9qZWN0LiBOZXZlcnRoZWxlc3MsIGEgY29tcHJlaGVuc2l2ZSBwYXRpZW50IGNvbnNlbnQgZm9ybSB3YXMgZGV2ZWxvcGVkIGluIGNvbmp1bmN0aW9uIHdpdGggRXZhLU1hcmlhIEJlcmVucyB0byBndWFyYW50ZWUgdGhhdCB0aGUgZG9ub3JzIG9mIHRoZWlyIHNhbXBsZXMgYXJlIGFkZXF1YXRlbHkgaW5mb3JtZWQgYW5kIHByb3ZpZGUgdGhlaXIgY29uc2VudCBvZiB0aGVpciBvd24gdm9saXRpb24uIFRoZSBkb2N1bWVudCBndWFyYW50ZWVzIHRoYXQgYWxsIHBlcnRpbmVudCBpbmZvcm1hdGlvbiByZWdhcmRpbmcgc2FtcGxlIGNvbGxlY3Rpb24sIHV0aWxpc2F0aW9uIGFuZCBzdG9yYWdlIGlzIHByb3ZpZGVkIGluIGFuIGludGVsbGlnaWJsZSBmb3JtYXQuIEZ1cnRoZXJtb3JlLCBhbiBpbnRlcnZpZXcgd2FzIGNvbmR1Y3RlZCB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3RpbW0nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gVGltbSBXZWJlcjwvYT4sIGEgcmVwcmVzZW50YXRpdmUgb2YgdGhlIGJpb2JhbmssIHRvIGRpc2N1c3MgdGhlIHRvcGljIG9mIGJpb2V0aGljcyBpbiBncmVhdGVyIGRlcHRoLiBEdXJpbmcgdGhlIGNvdXJzZSBvZiB0aGUgaW50ZXJ2aWV3cywgdGhlIGV0aGljYWwgYXNwZWN0cyBvZiBzYW1wbGUgc3RvcmFnZSBhbmQgdXRpbGlzYXRpb24gd2l0aGluIHRoZSBiaW9iYW5rIHdlcmUgZGlzY3Vzc2VkIGluIGRldGFpbC4gUGFydGljdWxhciBhdHRlbnRpb24gd2FzIHBhaWQgdG8gdGhlIHJlc3BvbnNpYmxlIGhhbmRsaW5nIGFuZCBwcm90ZWN0aW9uIG9mIHRoZSByaWdodHMgb2YgdGhlIHRlc3Qgc3ViamVjdHMuIFRoZSBkaXNjdXNzaW9uIG9mIGJpb2V0aGljcyBpbiBib3RoIGludGVydmlld3MgZW1waGFzaXNlcyB0aGUgcmVsZXZhbmNlIG9mIGV0aGljYWwgcHJpbmNpcGxlcyBmb3IgcmVzZWFyY2ggYW5kIGVuc3VyZXMgdGhhdCBpdCBpcyBjb25kdWN0ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBoaWdoZXN0IGV0aGljYWwgc3RhbmRhcmRzLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkdlbmUgVGhlcmFweVwiIGlkPVwiQmlvZXRoaWNzMVwiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgVGhlIHBvdGVudGlhbCBvZiBnZW5lIHRoZXJhcHkgdG8gdHJlYXQgZ2VuZXRpYyBkaXNlYXNlcyBpcyBwcm9taXNpbmcsIGJ1dCBpdCBpcyBhbHNvIGFzc29jaWF0ZWQgd2l0aCBzaWduaWZpY2FudCBldGhpY2FsIGlzc3Vlcy4gT25lIG9mIHRoZSBwcmluY2lwYWwgY2hhbGxlbmdlcyBpcyBlbnN1cmluZyB0aGUgc2FmZXR5IG9mIHRoZSBwcm9jZWR1cmUgYW5kIHRoZSBwb3RlbnRpYWwgZm9yIHVuZm9yZXNlZW4gbG9uZy10ZXJtIGNvbnNlcXVlbmNlcy4gU3VjaCBjb25zZXF1ZW5jZXMgbWF5IG9ubHkgYmVjb21lIGFwcGFyZW50IHllYXJzIGFmdGVyIHRoZSBnZW5ldGljIGludGVydmVudGlvbiBoYXMgdGFrZW4gcGxhY2UuIFRoZSBtb2RpZmljYXRpb24gb2YgdGhlIGdlcm1saW5lLCB3aGljaCBhZmZlY3RzIG5vdCBvbmx5IHRoZSBpbmRpdmlkdWFsIGJ1dCBhbHNvIGZ1dHVyZSBnZW5lcmF0aW9ucywgaXMgYSBwYXJ0aWN1bGFybHkgc2Vuc2l0aXZlIGlzc3VlLiBUaGlzIGdpdmVzIHJpc2UgdG8gdGhlIHF1ZXN0aW9uIG9mIHRoZSBleHRlbnQgdG8gd2hpY2ggdGhlIGRlY2lzaW9ucyBtYWRlIHRvZGF5IHdpbGwgaW5mbHVlbmNlIGZ1dHVyZSBnZW5lcmF0aW9ucyB3aXRob3V0IHRoZWlyIGNvbnNlbnQsIHRoZXJlYnkgamVvcGFyZGlzaW5nIGludGVyZ2VuZXJhdGlvbmFsIGp1c3RpY2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxN1wiLz4uIEFub3RoZXIgZXRoaWNhbCBpc3N1ZSBpcyB0aGUgcG90ZW50aWFsIGZvciBtaXN1c2UgZm9yIGV1Z2VuaWMgcHVycG9zZXMuIFdoaWxlIHRoZSBjdXJyZW50IGZvY3VzIGlzIG9uIGNvbWJhdGluZyBkaXNlYXNlLCBmdXR1cmUgYXBwbGljYXRpb25zIGNvdWxkIGJlIGFpbWVkIGF0ICdvcHRpbWlzaW5nJyBodW1hbiB0cmFpdHMsIHdoaWNoIGNvdWxkIHJlc3VsdCBpbiBhIHdvcnNlbmluZyBvZiBzb2NpYWwgaW5lcXVhbGl0aWVzLiBBY2Nlc3MgdG8gZ2VuZSB0aGVyYXB5IGlzIGFsc28gYSBzaWduaWZpY2FudCBpc3N1ZS4gSGlnaCBjb3N0cyBjb3VsZCBsaW1pdCBhY2Nlc3MgdG8gd2VhbHRoeSBwb3B1bGF0aW9uIGdyb3Vwcywgd2hpY2ggd291bGQgcmVpbmZvcmNlIGV4aXN0aW5nIGluZXF1YWxpdGllcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE4XCIvPi4gVGhlIGlzc3VlIG9mIGluZm9ybWVkIGNvbnNlbnQgaXMgYWxzbyBhIGtleSBhc3BlY3QuIE1hbnkgcGF0aWVudHMgZG8gbm90IGhhdmUgdGhlIG5lY2Vzc2FyeSBrbm93bGVkZ2UgdG8gZnVsbHkgdW5kZXJzdGFuZCB0aGUgY29tcGxleCByaXNrcywgd2hpY2ggcmFpc2VzIGV0aGljYWwgcXVlc3Rpb25zIGFib3V0IHRoZWlyIGRlY2lzaW9uLW1ha2luZyBjYXBhY2l0eS4gT3ZlcmFsbCwgdGhlIGRlYmF0ZSBhcm91bmQgZ2VuZSB0aGVyYXB5IGhpZ2hsaWdodHMgdGhhdCBldGhpY2FsIGNvbnNpZGVyYXRpb25zIHN1Y2ggYXMgc2FmZXR5LCBqdXN0aWNlIGFuZCBwYXRpZW50IHJpZ2h0cyBuZWVkIHRvIGJlIGNvbnNpZGVyZWQgYWxvbmdzaWRlIHNjaWVudGlmaWMgcHJvZ3Jlc3MgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOVwiLz4uICBcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcmltYXJ5IENlbGxzXCIgaWQ9XCJCaW9ldGhpY3MyXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiSW50cm9kdWN0aW9uIG9mIHByaW1hcnkgY3VsdHVyZXNcIj48L0g0PlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICBBIHByaW1hcnkgY3VsdHVyZSBpcyBkZWZpbmVkIGFzIGEgY2VsbCBjdWx0dXJlIHRoYXQgaXMgaXNvbGF0ZWQgZGlyZWN0bHkgZnJvbSB0aGUgdGlzc3VlIG9mIGFuIG9yZ2FuaXNtLiBJbiBvdXIgY2FzZSwgdGhlIG9yZ2FuaXNtIGlzIGh1bWFuLiBUaGUgY2VsbHMgYXJlIHRoZW4gY3VsdGl2YXRlZCBpbiBhIGNvbnRyb2xsZWQgZW52aXJvbm1lbnQsIG5hbWVseSBhbiBTMiBsYWJvcmF0b3J5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjBcIi8+LiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBhIGZ1bmRhbWVudGFsIGJpb21lZGljYWwgcmVzZWFyY2ggdG9vbCwgd2lkZWx5IHJlZ2FyZGVkIGFzIGluZGlzcGVuc2FibGUgZHVlIHRvIHRoZWlyIGNhcGFjaXR5IGZvciByZWFsaXN0aWMgbW9kZWxsaW5nIG9mIGNvbXBsZXggY2VsbCBpbnRlcmFjdGlvbnMuIFByaW1hcnkgY2VsbHMgYXJlIGRlcml2ZWQgZGlyZWN0bHkgZnJvbSB0aGUgdGlzc3VlIG9mIGFuIG9yZ2FuaXNtIGFuZCwgYXMgYSBjb25zZXF1ZW5jZSwgdGhleSBlc3NlbnRpYWxseSByZXRhaW4gdGhlaXIgb3JpZ2luYWwgcHJvcGVydGllcy4gQ29uc2VxdWVudGx5LCB0aGV5IG1pcnJvciB0aGUgYXV0aGVudGljIGNvbmRpdGlvbnMgb2YgdGhlIHRhcmdldCB0aXNzdWUsIHdoaWNoIGlzIHZpdGFsIGZvciBhY2N1cmF0ZWx5IGFzc2Vzc2luZyB0aGUgaW1wYWN0IG9mIGEgdGhlcmFwZXV0aWMgYWdlbnQuIEluIGNvbnRyYXN0LCBIRUsgY2VsbHMgcmVwcmVzZW50IHRyYW5zZm9ybWVkIGNlbGwgbGluZXMgdGhhdCBleGhpYml0IHBoeXNpb2xvZ2ljYWwgcHJvcGVydGllcyBkaXN0aW5jdCBmcm9tIHRob3NlIG9mIHRhcmdldCBjZWxscyBpbiB0aGUgaHVtYW4gYm9keS4gVGhlIGVmZmVjdCBvZiBhIHRoZXJhcGV1dGljIGFnZW50IGlzIHR5cGljYWxseSBsaW1pdGVkIHRvIGEgc3BlY2lmaWMgY2VsbCB0eXBlLiBUaGUgaW52ZXN0aWdhdGlvbiBvZiBjZWxsLXNwZWNpZmljIGVmZmVjdHMgYW5kIHJlYWN0aW9ucyBvZiBhbiBhY3RpdmUgc3Vic3RhbmNlIGlzIGZlYXNpYmxlIHdpdGggdGhlIHVzZSBvZiBwcmltYXJ5IGNlbGxzLCBhcyB0aGVzZSBwb3NzZXNzIHRoZSBmdW5jdGlvbmFsIGNoYXJhY3RlcmlzdGljcyBpbmhlcmVudCB0byB0aGUgY2VsbCB0eXBlIHVuZGVyIGNvbnNpZGVyYXRpb24uIEFsdGhvdWdoIEhFSyBjZWxscyBhcmUgcmVsYXRpdmVseSBzdHJhaWdodGZvcndhcmQgdG8gY3VsdGl2YXRlLCB0aGV5IGFyZSBsZXNzIHJlcHJlc2VudGF0aXZlIG9mIGEgbnVtYmVyIG9mIHRpc3N1ZSB0eXBlcyBhbmQgbWF5IGFjdGl2YXRlIG90aGVyIHNpZ25hbGxpbmcgcGF0aHdheXMuIFRoZSBhdXRoZW50aWNpdHkgb2YgdGhlIHJlY2VwdG9ycyBhbmQgc2lnbmFsbGluZyBwYXRod2F5cyBpcyBndWFyYW50ZWVkLCBhcyBwcmltYXJ5IGNlbGxzIHNob3cgdGhlIG5hdHVyYWwgZXhwcmVzc2lvbiBvZiByZWNlcHRvcnMsIGlvbiBjaGFubmVscyBhbmQgb3RoZXIgY2VsbHVsYXIgbWVjaGFuaXNtcy4gSEVLIGNlbGxzIGFyZSBvZnRlbiBnZW5ldGljYWxseSBtb2RpZmllZCB0byBleHByZXNzIHNwZWNpZmljIHJlY2VwdG9ycywgd2hpY2ggY2FuIGJlIHVzZWZ1bCBmb3Igc2ltcGxlIHRlc3Qgc3lzdGVtcy4gSG93ZXZlciwgdGhpcyBkb2VzIG5vdCByZWZsZWN0IHRoZSBjb21wbGV4IGVudmlyb25tZW50IG9mIGEgcmVhbCB0aXNzdWUuIEdpdmVuIHRoZSBzZW5zaXRpdml0eSBvZiBwcmltYXJ5IGN1bHR1cmVzIHRvIGVudmlyb25tZW50YWwgaW5mbHVlbmNlcywgdGh1cyByZXN1bHRpbmcgaW4gaGlnaGVyIHJpc2sgb2YgYSBjb250YW1pbmF0aW9uLCBpdCBpcyBpbXBlcmF0aXZlIHRoYXQgcmVzZWFyY2hlcnMgZW1wbG95IHNwZWNpYWwgc2FmZXR5IG1lYXN1cmVzIHRvIGVuc3VyZSB0aGUgc2FmZXR5IG9mIHRoZW1zZWx2ZXMgYW5kIHRoZSBpbnRlZ3JpdHkgb2YgdGhlIGNlbGxzLiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBlbXBsb3llZCBleHRlbnNpdmVseSBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgdmFjY2luZXMsIGNhbmNlciByZXNlYXJjaCBhbmQgdGhlIGludmVzdGlnYXRpb24gb2YgYmFzaWMgY2VsbCBwcm9jZXNzZXMuIFxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPEg0IHRleHQ9XCJFdGhpY3MgaW4gd29yayB3aXRoIHByaW1hcnkgY3VsdHVyZXNcIj48L0g0PlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgVGhlIHRlcm0gJ2V0aGljcycgaXMgdXNlZCB0byBkZXNjcmliZSB0aGUgZXhhbWluYXRpb24gb2YgbW9yYWwgcHJpbmNpcGxlcyB0aGF0IGRldGVybWluZSB0aGUgYmVoYXZpb3VyIG9mIGluZGl2aWR1YWxzIG9yIGdyb3VwcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPi4gSW4gYSBzY2llbnRpZmljIGNvbnRleHQsIHRoZSB0ZXJtICdldGhpY3MnIGVuY29tcGFzc2VzIHRoZSBleGFtaW5hdGlvbiBvZiB0aGUgbW9yYWwganVzdGlmaWFiaWxpdHkgb2YgYWN0aW9ucyBhbmQgZGVjaXNpb25zLCBwYXJ0aWN1bGFybHkgd2l0aCByZWdhcmQgdG8gdGhlIHdlbGZhcmUgb2YgbGl2aW5nIGJlaW5ncyBhbmQgdGhlIHJlc3BvbnNpYmxlIHVzZSBvZiByZXNvdXJjZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMlwiLz4uIFRoZSBpc29sYXRpb24gb2YgcHJpbWFyeSBjZWxscyBmcm9tIGxpdmluZyBvcmdhbmlzbXMgcmFpc2VzIGV0aGljYWwgcXVlc3Rpb25zLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGNhc2Ugb2YgaHVtYW4gb3IgYW5pbWFsIHRpc3N1ZS4gSW4gdGhlIGNvbnRleHQgb2YgcmVzZWFyY2ggd2l0aCBhbmltYWwgcHJpbWFyeSBjZWxscywgY2FyZWZ1bCBjb25zaWRlcmF0aW9uIG11c3QgYmUgZ2l2ZW4gdG8gdGhlIG5lZWQgZm9yIGFuaW1hbCBzdWZmZXJpbmcgYW5kIHRoZSBwb3RlbnRpYWwgYmVuZWZpdHMgb2YgdGhlIHJlc2VhcmNoIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjNcIi8+LiBBbiBldGhpY2FsIGRpbGVtbWEgZnJlcXVlbnRseSBhcmlzZXMgZnJvbSB0aGUgZmFjdCB0aGF0IHByaW1hcnkgY2VsbHMgb2ZmZXIgdGhlIG1vc3QgbWVhbmluZ2Z1bCBkYXRhIGZyb20gYSBiaW9sb2dpY2FsIHN0YW5kcG9pbnQsIHlldCB0aGVpciBwcm9kdWN0aW9uIGlzIGFzc29jaWF0ZWQgd2l0aCBjaGFsbGVuZ2VzLiBJbiB0aGlzIGNvbnRleHQsIHRoZSBuZWNlc3NpdHkgb2YgcHJpbWFyeSBjZWxsIGN1bHR1cmVzIGlzIGNhbGxlZCBpbnRvIHF1ZXN0aW9uLCBhbmQgdGhlIHByb21vdGlvbiBvZiBhbHRlcm5hdGl2ZSBtZXRob2RzLCBzdWNoIGFzIGFydGlmaWNpYWxseSBwcm9kdWNlZCB0aXNzdWVzIG9yIG9yZ2Fub2lkcywgaXMgYWR2b2NhdGVkIHdoZXJlIGZlYXNpYmxlLiBJdCBpcyBvZiBjcnVjaWFsIGltcG9ydGFuY2UgdG8gZW1waGFzaXplIHRoZSBuZWNlc3NpdHkgb2YgZXRoaWNhbCByZXNwb25zaWJpbGl0eSBpbiB0aGUgY29sbGVjdGlvbiBvZiBwcmltYXJ5IGN1bHR1cmVzLiBJdCBpcyBvZiB0aGUgdXRtb3N0IGltcG9ydGFuY2UgdGhhdCB0aGUgcHJvY2VkdXJlIGlzIGNhcnJpZWQgb3V0IHdpdGggY29uc2lkZXJhdGlvbiBmb3IgdGhlIHJpZ2h0cywgYW5kIHBhcnRpY3VsYXJseSB0aGUgd2VsbC1iZWluZyBvZiB0aGUgZG9ub3IuIFRoZSByZW1vdmFsIG9mIGNlbGxzIG9yIHRpc3N1ZSBtdXN0IGJlIG1lZGljYWxseSBqdXN0aWZpYWJsZSBhbmQsIG1vcmVvdmVyLCBldGhpY2FsbHkganVzdGlmaWFibGUgaW4gZXZlcnkgY2FzZS4gVG8gdGhpcyBlbmQsIHRoZSBwb3RlbnRpYWwgZm9yIHJlc2VhcmNoIHVzZSBhbmQgdGhlIHBvc3NpYmxlIHJpc2tzIGFuZCBidXJkZW5zIGZvciB0aGUgZG9ub3IgbXVzdCBiZSB3ZWlnaGVkIGFnYWluc3QgZWFjaCBvdGhlciB0byBlbnN1cmUgY2FyZWZ1bCBjb25zaWRlcmF0aW9uLiBIb3dldmVyLCBpdCBpcyBhbHNvIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgdG8gZW5zdXJlIHRoYXQgdGhlIGRvbm9yIGlzIGludm9sdmVkIGluIHRoZSBlbnRpcmUgcHJvY2VzcyBhbmQgaXMgYWJsZSB0byBtYWtlIGFuIGluZm9ybWVkIGRlY2lzaW9uLiBUaGUgcHVycG9zZSBvZiB0aGUgcmVzZWFyY2gsIHRoZSB1c2Ugb2YgdGhlIGNlbGxzIGFuZCBwb3NzaWJsZSBjb25zZXF1ZW5jZXMgbXVzdCBhbHNvIGJlIG1hZGUgdHJhbnNwYXJlbnQgYXQgYWxsIHRpbWVzLiBcbiAgICAgICAgICAgICAgICBUaGUgb2J0YWluaW5nIG9mIGluZm9ybWVkIGNvbnNlbnQgcmVwcmVzZW50cyBhIGZ1bmRhbWVudGFsIGFzcGVjdCBvZiBldGhpY2FsIHByYWN0aWNlIGluIHRoZSBjb2xsZWN0aW9uIG9mIHByaW1hcnkgY2VsbHMuIFRoaXMgcHJvY2VzcyBtdXN0IGVuY29tcGFzcyBub3Qgb25seSBhIGZvcm1hbCBjb25zZW50IHByb2NlZHVyZSwgYnV0IGFsc28gdGhlIHByb3Zpc2lvbiBvZiBjb21wcmVoZW5zaXZlIGluZm9ybWF0aW9uIHRvIGRvbm9ycyByZWdhcmRpbmcgdGhlIGNvbGxlY3Rpb24sIHV0aWxpc2F0aW9uIGFuZCBwcm9zcGVjdGl2ZSBmdXR1cmUgYXBwbGljYXRpb25zIG9mIHRoZSBjZWxscy4gVGhlIGFjdCBvZiBjb25zZW50IG11c3QgYmUgZ2l2ZW4gZnJlZWx5IGFuZCB3aXRob3V0IHVuZHVlIGluZmx1ZW5jZSwgYW5kIGRvbm9ycyBtdXN0IGJlIGZ1bGx5IGF3YXJlIG9mIHRoZSBjb25zZXF1ZW5jZXMgb2YgdGhlaXIgcGFydGljaXBhdGlvbi4gRnVydGhlcm1vcmUsIGRvbm9ycyBtdXN0IGJlIGdyYW50ZWQgdGhlIHJpZ2h0IHRvIHJldm9rZSB0aGVpciBjb25zZW50IGF0IGFueSB0aW1lIHdpdGhvdXQgY29uc2VxdWVuY2UuIFByaW9yIHRvIHRoZSBjb2xsZWN0aW9uIG9mIGNlbGxzLCBhIGNvbXByZWhlbnNpdmUgZGlzY3Vzc2lvbiBpcyBoZWxkIHdpdGggdGhlIGRvbm9yLCBkdXJpbmcgd2hpY2ggYWxsIHBlcnRpbmVudCBkZXRhaWxzIGFyZSBlbHVjaWRhdGVkIGFuZCBhbnkgcXVlcmllcyBvciBjb25jZXJucyB0aGV5IG1heSBoYXZlLCBhcmUgYWRkcmVzc2VkLiBUaGlzIGd1YXJhbnRlZXMgdGhhdCB0aGUgZG9ub3IgaXMgYWRlcXVhdGVseSBpbmZvcm1lZCBhbmQgaXMgdGh1cyBhYmxlIHRvIG1ha2UgYW4gYXV0b25vbW91cyBkZWNpc2lvbiBiYXNlZCBvbiBhIGNvbXByZWhlbnNpdmUgdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJvY2VkdXJlLiBcbiAgICAgICAgICAgICAgICBUaGUgcHJvdGVjdGlvbiBvZiBwcml2YWN5IGFuZCBjb25maWRlbnRpYWxpdHkgaXMgb2YgcGFyYW1vdW50IGltcG9ydGFuY2Ugd2hlbiB3b3JraW5nIHdpdGggcHJpbWFyeSBjdWx0dXJlcy4gR2l2ZW4gdGhhdCBwcmltYXJ5IGN1bHR1cmVzIGFyZSBwcmVkb21pbmFudGx5IGh1bWFuIHRpc3N1ZSwgdGhleSBjb250YWluIGdlbmV0aWMgaW5mb3JtYXRpb24gYW5kIG90aGVyIHBlcnNvbmFsIGRhdGEgdGhhdCBpcyBzZW5zaXRpdmUgYW5kIGRlc2VydmluZyBvZiBwcm90ZWN0aW9uLiBJdCBpcyB0aGVyZWZvcmUgb2YgZ3JlYXQgaW1wb3J0YW5jZSB0aGF0IHRoZSBkYXRhIGlzIGFub255bWl6ZWQgYW5kIGtlcHQgc3RyaWN0bHkgY29uZmlkZW50aWFsIGluIG9yZGVyIHRvIHByb3RlY3QgdGhlIGlkZW50aXR5IG9mIHRoZSBkb25vci4gXG4gICAgICAgICAgICAgICAgRXZlcnkgcGVyc29uIHdobyBoYXMgYWNjZXNzIHRvIHRoZSBkYXRhIG9yIHNhbXBsZXMgbXVzdCBiZSBvYmxpZ2VkIHRvIGNvbXBseSB3aXRoIGNvbmZpZGVudGlhbGl0eSBzdGFuZGFyZHMuIEl0IG11c3QgYmUgZW5zdXJlZCB0aGF0IGFsbCBsZWdhbCByZXF1aXJlbWVudHMgZm9yIGRhdGEgcHJvdGVjdGlvbiBhcmUgbWV0LCBpbmNsdWRpbmcgY29tcGxpYW5jZSB3aXRoIGRhdGEgcHJvdGVjdGlvbiBsYXdzIHN1Y2ggYXMgdGhlIDxhIGhyZWY9XCJodHRwczovL2dkcHItaW5mby5ldS9cIj5HRFBSPC9hPiBpbiB0aGUgRVUuIFxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPEg0IHRleHQ9XCJTYWZldHkgYXNwZWN0cyB3aGVuIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzIFwiPjwvSDQ+XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgIFdoZW4gd29ya2luZyB3aXRoIHByaW1hcnkgY3VsdHVyZXMsIHRoZXJlIGlzIGEgcmlzayB0aGF0IHRoZSBjZWxscyBtYXkgYmUgcG90ZW50aWFsbHkgaW5mZWN0aW91cyBzYW1wbGVzIG9yIGNvbnRhbWluYXRlZC4gVGhlcmVmb3JlLCBpdCBpcyBvZiB0aGUgdXRtb3N0IGltcG9ydGFuY2UgdG8gYWRoZXJlIHRvIHN0cmljdCBiaW9sb2dpY2FsIHNhZmV0eSBtZWFzdXJlcyBpbiBvcmRlciB0byBtaW5pbWl6ZSB0aGUgcmlzayBvZiBleHBvc3VyZSB0byBkYW5nZXJvdXMgcGF0aG9nZW5zLiBUaGlzIGluY2x1ZGVzIHRoZSB1c2Ugb2YgcGVyc29uYWwgcHJvdGVjdGl2ZSBlcXVpcG1lbnQsIHdvcmtpbmcgaW4gYSBiaW9zYWZldHkgY2FiaW5ldCBhbmQgYWRoZXJpbmcgdG8gZGVjb250YW1pbmF0aW9uIHByb3RvY29scy5cbiAgICAgICAgICAgIFRoZSBvdmVyYXJjaGluZyBvYmplY3RpdmUgaXMgdGhlIHNhZmVndWFyZGluZyBvZiBsYWJvcmF0b3J5IHN0YWZmLiBUaGlzIGlzIGFjaGlldmVkIHRocm91Z2ggdGhlIHV0aWxpemF0aW9uIG9mIHBlcnNvbmFsIHByb3RlY3RpdmUgZXF1aXBtZW50LCBlbmNvbXBhc3NpbmcgZ2xvdmVzLCBsYWIgY29hdHMgYW5kIHNhZmV0eSBnb2dnbGVzLCBpbiBhZGRpdGlvbiB0byB0aGUgcHJvdmlzaW9uIG9mIHRyYWluaW5nIGluIHBlcnRpbmVudCBzYWZldHkgcHJvdG9jb2xzLiBcbiAgICAgICAgICAgIEluIG9yZGVyIHRvIHByZXZlbnQgdGhlIHJlbGVhc2Ugb2YgcG90ZW50aWFsbHkgaGF6YXJkb3VzIG1hdGVyaWFsLCBpdCBpcyBpbXBlcmF0aXZlIHRoYXQgYmlvbG9naWNhbCB3YXN0ZSBpcyBkaXNwb3NlZCBvZiBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIGVzdGFibGlzaGVkIHJlZ3VsYXRvcnkgZnJhbWV3b3JrLiBUaGUgd2FzdGUgaXMgc3ViamVjdGVkIHRvIHJpZ29yb3VzIHN0ZXJpbGlzYXRpb24gYnkgYXV0b2NsYXZpbmcgYW5kIHN1YnNlcXVlbnRseSByZW5kZXJlZCBzYWZlIGZvciBkaXNwb3NhbCBpbiB0aGUgZGVzaWduYXRlZCBhbmQgbGFiZWxsZWQgY29udGFpbmVycy4gXG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8SDQgdGV4dD1cIlJlZ3VsYXRvcnkgZnJhbWV3b3JrXCI+PC9IND5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgVGhlIGZpZWxkIG9mIHByaW1hcnkgY3VsdHVyZSByZXNlYXJjaCBpcyBzdWJqZWN0IHRvIGEgcGxldGhvcmEgb2YgbGVnYWwgcmVndWxhdGlvbnMgYW5kIGd1aWRlbGluZXMgYXQgYm90aCB0aGUgbmF0aW9uYWwgYW5kIGludGVybmF0aW9uYWwgbGV2ZWxzLiBUaGVzZSByZWd1bGF0aW9ucyBkaWN0YXRlIHRoZSBtYW5uZXIgaW4gd2hpY2ggcHJpbWFyeSBjdWx0dXJlcyBtYXkgYmUgb2J0YWluZWQsIHVzZWQsIGFuZCBkaXNwb3NlZCBvZi4gVGhleSBlbmNvbXBhc3MgcmVndWxhdGlvbnMgcGVydGFpbmluZyB0byB0aGUgcHJvdGVjdGlvbiBvZiBkb25vcnMsIHRoZSBzZWN1cmUgaGFuZGxpbmcgb2YgYmlvbG9naWNhbCBtYXRlcmlhbCwgYW5kIHRoZSBldGhpY2FsIHJlc3BvbnNpYmlsaXR5IHRvd2FyZHMgdGhlIGNlbGxzIGFuZCB0aGVpciBvcmlnaW4uIEl0IGlzIG9mIHBhcmFtb3VudCBpbXBvcnRhbmNlIHRoYXQgYWxsIGxhYm9yYXRvcnkgcHJhY3RpY2VzIGFsaWduIHdpdGggdGhlc2UgcmVndWxhdGlvbnMuIFxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uc2VudCBhbmQgR3VpZGVsaW5lc1wiIGlkPVwiQmlvZXRoaWNzM1wiPlxuICAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQ2hlY2stSW5zXCIgaWQ9XCJDaGVjay1JbnNcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgaUdFTSBwbGFjZXMgZ3JlYXQgZW1waGFzaXMgb24gYmlvc2FmZXR5LCBlbnN1cmluZyB0aGF0IGFsbCBwcm9qZWN0cyBhZGhlcmUgdG8gc3RyaWN0IHNhZmV0eSBzdGFuZGFyZHMuIE9uZSBvZiB0aGVzZSBtZWFzdXJlcyBpcyB0aGUgaUdFTSBXaGl0ZSBMaXN0LCB3aGljaCBpbmNsdWRlcyBvcmdhbmlzbXMgYW5kIHBhcnRzIHRoYXQgYXJlIHByZS1hcHByb3ZlZCBmb3IgdXNlIGJhc2VkIG9uIHRoZWlyIHNhZmV0eSBwcm9maWxlLiBBbnkgY29tcG9uZW50cyBvciBvcmdhbmlzbXMgbm90IGNvdmVyZWQgYnkgdGhpcyBXaGl0ZSBMaXN0IG11c3QgYmUgc3VibWl0dGVkIGFzICdDaGVjay1JbnMnIHRvIHRoZSBpR0VNIFNhZmV0eSBDb21taXR0ZWUgZm9yIGFwcHJvdmFsLiBDaGVjay1JbnMgYXJlIGZvcm1hbCBzYWZldHkgZXZhbHVhdGlvbnMgdGhhdCBhbGxvdyB0aGUgY29tbWl0dGVlIHRvIGFzc2VzcyB0aGUgcG90ZW50aWFsIHJpc2tzIGFuZCBlbnN1cmUgcHJvcGVyIGNvbnRhaW5tZW50IGFuZCBoYW5kbGluZyBwcm9jZWR1cmVzIGFyZSBpbiBwbGFjZS4gQWx0aG91Z2ggd2UgdXNlZCBzb21lIHBhcnRzIGFuZCBvcmdhbmlzbXMgdGhhdCB3ZXJlIG5vdCBpbmNsdWRlZCBvbiB0aGUgV2hpdGUgTGlzdCwgdGhlc2Ugd2VyZSBhc3Nlc3NlZCBhcyBjcml0aWNhbCBmb3Igb3VyIHByb2plY3QgYW5kIHN1Ym1pdHRlZCBhcyBDaGVjay1JbnMgdG8gdGhlIGlHRU0gU2FmZXR5IENvbW1pdHRlZS4gRnVydGhlcm1vcmUsIHdlIHdlcmUgaW4gYWN0aXZlIGV4Y2hhbmdlIHdpdGggdGhlIGNvbW1pdHRlZSB0aHJvdWdob3V0IHRoZSBwcm9jZXNzLiBUaGUgQ2hlY2stSW5zIHByb3ZpZGUgYSBjbGVhciBwaWN0dXJlIG9mIHRoZSBiaW9zYWZldHkgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCwgcmVmbGVjdGluZyBvdXIgY29tbWl0bWVudCB0byBzYWZldHkgYW5kIGNvbXBsaWFuY2Ugd2l0aCBpR0VNIHN0YW5kYXJkcy5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgV2UgYWRoZXJlIHRvIGdvb2QgbGFib3JhdG9yeSBwcmFjdGljZXMgYnkgZW5zdXJpbmcgcHJvcGVyIGhhbmRsaW5nIG9mIG1hdGVyaWFscywgZWZmZWN0aXZlIGVtZXJnZW5jeSBwcm9jZWR1cmVzLCBhbmQgY29ycmVjdCB3YXN0ZSBkaXNwb3NhbCBtZXRob2RzLiBUaGlzIGNvbW1pdG1lbnQgZ3VhcmFudGVlcyBhIHNhZmUgYW5kIGNvbXBsaWFudCByZXNlYXJjaCBlbnZpcm9ubWVudC4gT3VyIHByb2plY3QsIHdoaWNoIGludm9sdmVkIGEgd2lkZSByYW5nZSBvZiB0ZWNobmlxdWVzIHdhcyBjb25kdWN0ZWQgaW4gc3RyaWN0IGNvbXBsaWFuY2Ugd2l0aCBzYWZldHkgcmVndWxhdGlvbnMuIEFsbCBleHBlcmltZW50cyB3ZXJlIGNhcnJpZWQgb3V0IGluIFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlclx1MjAxOXMgbGFib3JhdG9yeSBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgZm9sbG93aW5nIEJTTC0xIHN0YW5kYXJkIG9wZXJhdGluZyBwcm9jZWR1cmVzLiBQcm9wZXJseSBlcXVpcHBlZCBmYWNpbGl0aWVzIGFyZSBjcnVjaWFsIHRvIHByZXZlbnQgY29udGFtaW5hdGlvbiwgZXhwb3N1cmUsIG9yIGFjY2lkZW50YWwgcmVsZWFzZSBvZiBtb2RpZmllZCBvcmdhbmlzbXMsIGVuc3VyaW5nIHRoZSBoaWdoZXN0IGxldmVsIG9mIHNhZmV0eSBpbiBvdXIgbGFib3JhdG9yaWVzLiAgXG4gICAgICAgICAgICBCZWZvcmUgY29tbWVuY2luZyBsYWJvcmF0b3J5IHdvcmssIGFsbCBwYXJ0aWNpcGFudHMgd2VyZSByZXF1aXJlZCB0byBhdHRlbmQgYSBtYW5kYXRvcnkgc2FmZXR5IGJyaWVmaW5nLiBJbiBjb21wbGlhbmNlIHdpdGggR2VybWFuIHJlZ3VsYXRpb25zLCBlYWNoIHRlYW0gbWVtYmVyJ3MgcGFydGljaXBhdGlvbiBoYWQgdG8gYmUgY29uZmlybWVkIHdpdGggYSBwZXJzb25hbCBzaWduYXR1cmUuIFRoZSBicmllZmluZywgY29uZHVjdGVkIGJ5IFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlciBtdXN0IGJlIHJlbmV3ZWQgYW5udWFsbHkgaW4gYWNjb3JkYW5jZSB3aXRoIFx1MDBBNzEyIEFyYlNjaEcuIEl0IGNvdmVyZWQgdGhlIGZvbGxvd2luZyBhcmVhczogXG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgPGxpPkdlbmVyYWwgbGFib3JhdG9yeSBzYWZldHk8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5SZWd1bGF0aW9ucyByZWdhcmRpbmcgaGF6YXJkb3VzIGFuZCB0b3hpYyBzdWJzdGFuY2VzPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+UmVndWxhdGlvbnMgY29uY2VybmluZyBiaW9sb2dpY2FsIG1hdGVyaWFsczwvbGk+XG4gICAgICAgICAgICAgICAgPGxpPlJlZ3VsYXRpb25zIG9uIGdlbmV0aWMgZW5naW5lZXJpbmc8L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICBJbiBhZGRpdGlvbiB0byB0aGUgZ2VuZXJhbCBzYWZldHkgYnJpZWZpbmcsIHNwZWNpZmljIGluc3RydWN0aW9ucyBmb3IgdGhlIHNhZmUgb3BlcmF0aW9uIG9mIGVhY2ggZGV2aWNlIHdlcmUgcHJvdmlkZWQuIFRoZSBTYWZldHkgYW5kIFNlY3VyaXR5IE9mZmljZXIgd2l0aGluIHRoZSBsYWJvcmF0b3J5IGhpZ2hsaWdodGVkIHRoZSBwb3RlbnRpYWwgaGF6YXJkcyBhbmQgbmVjZXNzYXJ5IHByZWNhdXRpb25hcnkgbWVhc3VyZXMuIFdlIGhhdmUgZm9jdXNlZCBvbiBwbGFubmluZyBvdXIgbGFib3JhdG9yeSBhY3Rpdml0aWVzIHRvIG1pbmltaXplIHJpc2sgZm9yIHNhZmVyIHByYWN0aWNlcy4gVGhpcyBlbnN1cmVzIG5vdCBvbmx5IHRoZSBzYWZlIGFuZCBwcm9wZXIgdXNlIG9mIGVxdWlwbWVudCBidXQgYWxzbyB0aGUgZ2VuZXJhdGlvbiBvZiByZWxpYWJsZSBkYXRhLiBUbyBtZWV0IGFsbCBzYWZldHkgcmVxdWlyZW1lbnRzLCBhZGRpdGlvbmFsIHNhZmV0eSBwcm90b2NvbHMgaGF2ZSBiZWVuIHB1dCBpbiBwbGFjZSBmb3IgYWxsIHRhcmdldGVkIGFyZWFzIG9mIHRoZSBsYWJvcmF0b3J5IGVxdWlwbWVudC4gXG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8SDQgdGV4dD1cIkxhYm9yYXRvcnkgYW5kIHNhZmV0eSBwcmFjdGljZXNcIj48L0g0PlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICBBcyBwYXJ0IG9mIG91ciBwcm9qZWN0IHRvIGRldmVsb3AgYSBwcmltZS1lZGl0aW5nIGNvbXBsZXggdG8gY29ycmVjdCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBjeXN0aWMgZmlicm9zaXMsIHdlIHBsYWNlIGdyZWF0IGVtcGhhc2lzIG9uIHNhZmV0eSBhdCBhbGwgc3RhZ2VzIG9mIHJlc2VhcmNoLiBPdXIgZmluYWwgY29uc3RydWN0IHdpbGwgYmUgdGVzdGVkIGluIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlM0gnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PiBwcmltYXJ5IGN1bHR1cmVzIG9mIGVwaXRoZWxpYWwgY2VsbHMgPC9hPiBvYnRhaW5lZCBmcm9tIG5hc2FsIHN3YWJzLCBpc29sYXRlZCBmcm9tIGJvdGggcGF0aWVudHMgYW5kIGhlYWx0aHkgaW5kaXZpZHVhbHMuIFRvIGd1YXJhbnRlZSBzYWZldHkgYW5kIGVuc3VyZSB0aGUgaGlnaGVzdCBsZXZlbCBvZiBwcmVjaXNpb24gYW5kIHJlbGlhYmlsaXR5IG9mIG91ciByZXN1bHRzLCB3ZSBoYXZlIGludHJvZHVjZWQgYSBzZXJpZXMgb2YgY2FyZWZ1bGx5IHBsYW5uZWQgY2hlY2twb2ludHMgZHVyaW5nIHRoZSBleHBlcmltZW50cy4gVGhlc2UgbWlsZXN0b25lcyBhbGxvdyBmb3IgY29udGludW91cyBtb25pdG9yaW5nLCB0aW1lbHkgYWRqdXN0bWVudHMgYW5kIHZhbGlkYXRpb24gYXQgZWFjaCBjcml0aWNhbCBzdGFnZS4gVGhpcyBlbnN1cmVzIHRoYXQgcG90ZW50aWFsIGlzc3VlcyBhcmUgaWRlbnRpZmllZCBhbmQgYWRkcmVzc2VkIGltbWVkaWF0ZWx5LCBtaW5pbWl6aW5nIHJpc2sgYW5kIGltcHJvdmluZyB0aGUgb3ZlcmFsbCBxdWFsaXR5IG9mIHRoZSBleHBlcmltZW50YWwgcmVzdWx0cy4gW2xpbmsgenUgZGVuIEV4cGVyaW1lbnRlbl0gLiBpR0VNIHBsYWNlcyBncmVhdCBlbXBoYXNpcyBvbiBiaW9zYWZldHksIGVuc3VyaW5nIHRoYXQgYWxsIHByb2plY3RzIGFkaGVyZSB0byBzdHJpY3Qgc2FmZXR5IHN0YW5kYXJkcy4gT25lIG9mIHRoZXNlIG1lYXN1cmVzIGlzIHRoZSBpR0VNIFdoaXRlIExpc3QsIHdoaWNoIGluY2x1ZGVzIG9yZ2FuaXNtcyBhbmQgcGFydHMgdGhhdCBhcmUgcHJlLWFwcHJvdmVkIGZvciB1c2UgYmFzZWQgb24gdGhlaXIgc2FmZXR5IHByb2ZpbGUuIEFueSBjb21wb25lbnRzIG9yIG9yZ2FuaXNtcyBub3QgY292ZXJlZCBieSB0aGlzIFdoaXRlIExpc3QgbXVzdCBiZSBzdWJtaXR0ZWQgYXMgJ0NoZWNrLUlucycgdG8gdGhlIGlHRU0gU2FmZXR5IENvbW1pdHRlZSBmb3IgYXBwcm92YWwuIENoZWNrLUlucyBhcmUgZm9ybWFsIHNhZmV0eSBldmFsdWF0aW9ucyB0aGF0IGFsbG93IHRoZSBjb21taXR0ZWUgdG8gYXNzZXNzIHRoZSBwb3RlbnRpYWwgcmlza3MgYW5kIGVuc3VyZSBwcm9wZXIgY29udGFpbm1lbnQgYW5kIGhhbmRsaW5nIHByb2NlZHVyZXMgYXJlIGluIHBsYWNlLiBBbHRob3VnaCB3ZSB1c2VkIHNvbWUgcGFydHMgYW5kIG9yZ2FuaXNtcyB0aGF0IHdlcmUgbm90IGluY2x1ZGVkIG9uIHRoZSBXaGl0ZSBMaXN0LCB0aGVzZSB3ZXJlIGFzc2Vzc2VkIGFzIGNyaXRpY2FsIGZvciBvdXIgcHJvamVjdCBhbmQgc3VibWl0dGVkIGFzIENoZWNrLUlucyB0byB0aGUgaUdFTSBTYWZldHkgQ29tbWl0dGVlLiBGdXJ0aGVybW9yZSwgd2Ugd2VyZSBpbiBhY3RpdmUgZXhjaGFuZ2Ugd2l0aCB0aGUgY29tbWl0dGVlIHRocm91Z2hvdXQgdGhlIHByb2Nlc3MuIFRoZSBDaGVjay1pbnMgcHJvdmlkZSBhIGNsZWFyIHBpY3R1cmUgb2YgdGhlIGJpb3NhZmV0eSBhc3BlY3RzIG9mIG91ciBwcm9qZWN0LCByZWZsZWN0aW5nIG91ciBjb21taXRtZW50IHRvIHNhZmV0eSBhbmQgY29tcGxpYW5jZSB3aXRoIGlHRU0gc3RhbmRhcmRzLiBcbiAgICAgICAgICAgIFRoZSBtYWluIHNhZmV0eSBtZWFzdXJlcyB3ZSBoYXZlIGltcGxlbWVudGVkIGluY2x1ZGU6XG4gICAgICAgICAgICA8L3A+IFxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICA8c3Ryb25nPkNvbXBsaWFuY2Ugd2l0aCBTMSBjb25kaXRpb25zOjwvc3Ryb25nPiBXb3JraW5nIGluIFMxIGxhYm9yYXRvcmllcyBlbnN1cmVzIHRoYXQgb25seSBvcmdhbmlzbXMgaW4gdGhlIGxvd2VzdCByaXNrIGdyb3VwIGFyZSB1c2VkLCBtaW5pbWl6aW5nIHRoZSByaXNrIHRvIGh1bWFucyBhbmQgdGhlIGVudmlyb25tZW50LiBcbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPHN0cm9uZz5TdGVyaWxlIHdvcmtpbmcgcHJhY3RpY2VzOjwvc3Ryb25nPiBUbyBhdm9pZCBjb250YW1pbmF0aW9uLCB3ZSBoYXZlIGltcGxlbWVudGVkIHN0cmljdCBoeWdpZW5lIG1lYXN1cmVzLCBpbmNsdWRpbmcgdGhlIGRpc2luZmVjdGlvbiBvZiB3b3JrIHN1cmZhY2VzIGFuZCB0aGUgY29ycmVjdCBkaXNwb3NhbCBvZiBiaW9sb2dpY2FsIHdhc3RlLiBcbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPHN0cm9uZz5Db250cm9sbGVkIGFjY2Vzczo8L3N0cm9uZz4gQWNjZXNzIHRvIGxhYm9yYXRvcmllcyB3YXMgc3RyaWN0bHkgcmVndWxhdGVkIHRvIGVuc3VyZSB0aGF0IG9ubHkgdHJhaW5lZCBwZXJzb25uZWwgd29ya2VkIHdpdGggdGhlIGdlbmV0aWNhbGx5IG1vZGlmaWVkIG9yZ2FuaXNtcyBhbmQgY2VsbCBsaW5lcy4gXG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgIDxzdHJvbmc+RG9jdW1lbnRhdGlvbjo8L3N0cm9uZz4gQWxsIHdvcmsgc3RlcHMsIG1hdGVyaWFscyB1c2VkIGFuZCBjZWxsIGxpbmVzIHdlcmUgY2FyZWZ1bGx5IGRvY3VtZW50ZWQgdG8gZW5zdXJlIHRyYWNlYWJpbGl0eSBhbmQgc2FmZXR5LiBcbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPHN0cm9uZz5TYWZlIGhhbmRsaW5nIG9mIGNlbGwgbGluZXM6PC9zdHJvbmc+IFRoZSBjZWxsIGxpbmVzIHVzZWQgZm9yIGV4cGVyaW1lbnRzIHdlcmUgaGFuZGxlZCBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIGFwcGxpY2FibGUgc2FmZXR5IHJlZ3VsYXRpb25zLiBUaGlzIGluY2x1ZGVkIHJlZ3VsYXIgY2hlY2tzIGZvciBjb250YW1pbmF0aW9uIGFuZCB0aGUgc2FmZSBzdG9yYWdlIGFuZCBkaXNwb3NhbCBvZiBjZWxsIGN1bHR1cmVzLiBcbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNoZWNrcGVrXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ2hlY2staW4gZm9yIHRoZSBQcmltZS1FZGl0aW5nIEtvbXBsZXggXCI+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICA8c3Ryb25nPlJldmVyc2UgdHJhbnNjcmlwdGFzZTo8L3N0cm9uZz4gUmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHBsYXlzIGEgY2VudHJhbCByb2xlIGluIHByaW1lIGVkaXRpbmcgYnkgc3BlY2lmaWNhbGx5IGluc2VydGluZyB0aGUgY29ycmVjdGlvbiBhcyBETkEgYXQgdGhlIGluc2VydGVkIG5pY2sgdXNpbmcgYW4gUk5BIHRlbXBsYXRlIHByb3ZpZGVkIGJ5IHBlZ1JOQS4gVGhlIGNvcnJlY3Rpb24gb2YgdGhlIGNvbXBsZW1lbnRhcnkgRE5BIHN0cmFuZCB0aGVuIHRha2VzIHBsYWNlIHZpYSB0aGUgbmF0dXJhbCBjZWxsIHJlcGFpciBtZWNoYW5pc21zLiAgVGhpcyBlbnN1cmVzIGFuIGV4YWN0IGNvcnJlY3Rpb24gb2YgdGhlIHRhcmdldCBzZXF1ZW5jZS4gV2UgY2hlY2tlZCB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRvIGVuc3VyZSBpdCBjb3VsZCBwZXJmb3JtIHByZWNpc2UgZ2Vub21lIGVkaXRpbmcgd2l0aG91dCBpbnRyb2R1Y2luZyB1bmludGVuZGVkIG11dGF0aW9ucy4gVGhpcyB3YXMgaW1wb3J0YW50IHRvIG1pbmltaXplIHRoZSByaXNrIG9mIG9mZi10YXJnZXQgZWZmZWN0cyB0aGF0IGNvdWxkIGxlYWQgdG8gdW5leHBlY3RlZCBvciBoYXJtZnVsIGNvbnNlcXVlbmNlcy5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgPHN0cm9uZz5wZWdSTkEgKFByaW1lIEVkaXRpbmcgR3VpZGUgUk5BKTo8L3N0cm9uZz4gVGhlIHBlZ1JOQSBpcyBhIG11bHRpZnVuY3Rpb25hbCBSTkEgbW9sZWN1bGUgdGhhdCBmdWxmaWxzIHR3byBlc3NlbnRpYWwgdGFza3MuIEZpcnN0bHksIGl0IHNlcnZlcyBhcyBhIHN0YW5kYXJkIGd1aWRlIFJOQSAoZ1JOQSkgdGhhdCBiaW5kcyBzcGVjaWZpY2FsbHkgdG8gdGhlIHRhcmdldCBETkEgYW5kIHRodXMgbWFya3MgdGhlIHNpdGUgb2YgZWRpdGluZy4gU2Vjb25kbHksIGl0IGNvbnRhaW5zIGFuIFJOQSB0ZW1wbGF0ZSB0aGF0IGVuY29kZXMgdGhlIGRlc2lyZWQgRE5BIG1vZGlmaWNhdGlvbi4gVGhpcyBlbmFibGVzIHRoZSBwcmVjaXNlIGludGVncmF0aW9uIG9mIHRoZSBnZW5ldGljIG1vZGlmaWNhdGlvbnMgYXQgdGhlIHRhcmdldCBzaXRlLiBXZSBldmFsdWF0ZWQgcGVnUk5BIGZvciBpdHMgYWJpbGl0eSB0byBzcGVjaWZpY2FsbHkgdGFyZ2V0IGFuZCBtb2RpZmllZCB0aGUgaW50ZW5kZWQgRE5BIHNlcXVlbmNlLiBFbnN1cmluZyBpdHMgc3BlY2lmaWNpdHkgd2FzIGNydWNpYWwgdG8gYXZvaWQgdGhlIHBvdGVudGlhbCBkaXNydXB0aW9uIG9mIG90aGVyIGdlbmVzLlxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICA8c3Ryb25nPk5pY2thc2UgbkNhczksIENhc1gsIEZhbnpvciAoU3B1RnoxKTo8L3N0cm9uZz4gVGhlc2UgbW9kaWZpZWQgbnVjbGVhc2VzIGFyZSBkZXNpZ25lZCB0byBjdXQgb25seSBvbmUgc3RyYW5kIG9mIEROQS4gVGhpcyBsZWFkcyB0byBjb250cm9sbGVkIGFuZCBwcmVjaXNlIGVkaXRpbmcgb2YgdGhlIGdlbm9tZSwgYXMgY3V0dGluZyBvbmx5IG9uZSBzdHJhbmQgbWluaW1pemVzIHRoZSByaXNrIG9mIHVud2FudGVkIGRvdWJsZS1zdHJhbmQgYnJlYWtzLiBDYXNYIGFuZCBGYW56b3Igb2ZmZXIgc21hbGxlciBhbHRlcm5hdGl2ZXMgdG8gQ2FzOSwgd2hpY2ggaXMgcGFydGljdWxhcmx5IGFkdmFudGFnZW91cyBmb3IgdXNlIGluIGNlbGxzIG9yIG9yZ2FuaXNtcyB3aGVyZSBzcGFjZSBhbmQgZWZmaWNpZW5jeSByZXF1aXJlbWVudHMgaW4gdGVybXMgb2YgdGhlIHRyYW5zcG9ydCBzeXN0ZW0gYXJlIGFuIGlzc3VlLiBGYW56b3IsIGJlaW5nIGEgbmV3bHkgaW50cm9kdWNlZCBlbmRvbnVjbGVhc2UsIHdhcyBwYXJ0aWN1bGFybHkgc2NydXRpbml6ZWQgaW4gb3VyIHByb2plY3QgdG8gZW5zdXJlIGl0cyBzYWZldHkgYW5kIGVmZmVjdGl2ZW5lc3MgaW4gZGlmZmVyZW50IGNlbGx1bGFyIGNvbnRleHRzLiBcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBUaGlzIHByaW1lLWVkaXRpbmcgY29tcGxleCB0aHVzIHJlcHJlc2VudHMgYSBwcmVjaXNlIGFuZCBlZmZpY2llbnQgbWV0aG9kIGZvciBnZW5lIGVkaXRpbmcuIEJ5IGNvbWJpbmluZyB0aGVzZSBjb21wb25lbnRzLCBnZW5ldGljIG1vZGlmaWNhdGlvbnMgY2FuIGJlIHBlcmZvcm1lZCB3aXRoIG1pbmltYWwgc2lkZSBlZmZlY3RzXG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNoZWNrY2xvbmluZ1wiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkNoZWNrLWluIGZvciBDbG9uaW5nXCI+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICBGb3Igb3VyICBjbG9uaW5nIGV4cGVyaW1lbnRzIGFuZCB0aGUgZGV2ZWxvcG1lbnQgb2Ygb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleGVzLCB3ZSBoYXZlIGFtcGxpZmllZCB2YXJpb3VzIHBsYXNtaWRzIGluIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucyAoREg1XHUwM0IxLDEwLUJldGEpLiBXaGVuIHdvcmtpbmcgd2l0aCBtaWNyb2JpYWwgc3RyYWlucyBzdWNoIGFzIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucywgaXQncyBpbXBvcnRhbnQgdG8gY29uc2lkZXIgcG90ZW50aWFsIHJpc2tzIGFzc29jaWF0ZWQgd2l0aCB0aGVpciB1c2UsIGV2ZW4gdGhvdWdoIHRoZXkgYXJlIGdlbmVyYWxseSByZWdhcmRlZCBhcyBzYWZlIGluIGxhYm9yYXRvcnkgc2V0dGluZ3MuIEFsbCBleHBlcmltZW50cyB3ZXJlIHBlcmZvcm1lZCB1bmRlciBzdHJpY3QgUzEgY29uZGl0aW9ucywgZm9sbG93aW5nIGFsbCByZWxldmFudCBzYWZldHkgcHJvdG9jb2xzLiBCZWxvdyB5b3Ugd2lsbCBmaW5kIGFuIG92ZXJ2aWV3IG9mIHRoZSA8aT5FLiBjb2xpPC9pPiBLLTEyIHN0cmFpbnMgZm9yIG91ciBjbG9uaW5nIGV4cGVyaW1lbnRzLCBzdWJtaXR0ZWQgYnkgdXMgYXMgYSBjaGVjay1JbiBhbmQgdGhlIHNwZWNpZmljIHNhZmV0eSBtZWFzdXJlczpcbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgPHN0cm9uZz48aT5FLiBjb2xpIEstMTI8L2k+IHN0cmFpbnMgKERINVx1MDNCMSwgMTAtQmV0YSk6PC9zdHJvbmc+IEFsdGhvdWdoIHRoZXNlIHN0cmFpbnMgYXJlIG5vbi1wYXRob2dlbmljIGFuZCBoYXZlIGJlZW4gbW9kaWZpZWQgdG8gbWluaW1pemUgdGhlIHJpc2sgb2Ygc3ByZWFkaW5nIGFudGliaW90aWMgcmVzaXN0YW5jZSwgdGhlcmUgcmVtYWlucyBhIGxvdyByaXNrIG9mIGhvcml6b250YWwgZ2VuZSB0cmFuc2Zlciwgd2hlcmUgZ2VuZXRpYyBtYXRlcmlhbCBjb3VsZCBiZSB0cmFuc2ZlcnJlZCB0byBvdGhlciBtaWNyb29yZ2FuaXNtcywgcG90ZW50aWFsbHkgbGVhZGluZyB0byB0aGUgc3ByZWFkIG9mIHJlc2lzdGFuY2UgZ2VuZXMgb3Igb3RoZXIgdHJhaXRzLiBJZiBhY2NpZGVudGFsbHkgcmVsZWFzZWQgaW50byB0aGUgZW52aXJvbm1lbnQsIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucyBjb3VsZCBwb3RlbnRpYWxseSBpbnRlcmFjdCB3aXRoIG5hdGl2ZSBtaWNyb2JpYWwgY29tbXVuaXRpZXMuIFdoaWxlIHRoZXkgYXJlIHR5cGljYWxseSBvdXRjb21wZXRlZCBpbiBuYXR1cmFsIGVudmlyb25tZW50cywgdGhlcmUncyBhIHJlbW90ZSBwb3NzaWJpbGl0eSBvZiBlY29sb2dpY2FsIGRpc3J1cHRpb24sIHBhcnRpY3VsYXJseSBpbiBtaWNyb2Vudmlyb25tZW50cyB3aGVyZSB0aGV5IGNvdWxkIGZpbmQgYSBuaWNoZS5XaGlsZSB0aGVzZSBzdHJhaW5zIGFyZSBub24tdmlydWxlbnQsIHRoZXkgc3RpbGwgcG9zZSBhIG1pbmltYWwgcmlzayB0byBodW1hbnMsIHBhcnRpY3VsYXJseSBpbW11bm9jb21wcm9taXNlZCBpbmRpdmlkdWFscywgdGhyb3VnaCBhY2NpZGVudGFsIGluZ2VzdGlvbiBvciBpbmhhbGF0aW9uIGluIGEgbGFib3JhdG9yeSBzZXR0aW5nLiBcbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgV2Ugc3VibWl0dGVkICB0aGUgeWVhc3Qgc3RyYWluIDxpPlBpY2hpYSBwYXN0b3JpczwvaT4gKFNNRDExNjMpIGZvciB0aGUgcHJvdGVpbiBleHByZXNzaW9uIG9mIEZhbnpvci5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgPHN0cm9uZz48aT5QaWNoaWEgcGFzdG9yaXM8L2k+IChTTUQxMTYzKTo8L3N0cm9uZz4gPGk+UGljaGlhIHBhc3RvcmlzPC9pPiAoU01EMTE2MykgaXMgYSB3aWRlbHkgdXNlZCB5ZWFzdCBzdHJhaW4gZm9yIHRoZSBleHByZXNzaW9uIG9mIHJlY29tYmluYW50IHByb3RlaW5zLiBJdCBpcyBjaGFyYWN0ZXJpemVkIGJ5IGEgbWV0aGFub2wtaW5kdWNpYmxlIGV4cHJlc3Npb24gc3lzdGVtIChBT1gxIHByb21vdGVyKSBhbmQgaGlnaCBjZWxsIGdyb3d0aCByYXRlcywgd2hpY2ggbWFrZXMgaXQgaWRlYWwgZm9yIGluZHVzdHJpYWwgYXBwbGljYXRpb25zLiBUaGUgc3RyYWluIGNhbiBiZSBlYXNpbHkgZ2VuZXRpY2FsbHkgbWFuaXB1bGF0ZWQgYW5kIGNhbiBwZXJmb3JtIHBvc3QtdHJhbnNsYXRpb25hbCBtb2RpZmljYXRpb25zLCB3aGljaCBzdXBwb3J0cyBjb3JyZWN0IHByb3RlaW4gcHJvZHVjdGlvbi5cbiAgICAgICAgICAgICAgV2hlbiB3b3JraW5nIHdpdGggPGk+UGljaGlhIHBhc3RvcmlzPC9pPiAoU01EMTE2MyksIHZhcmlvdXMgc2FmZXR5LXJlbGV2YW50IGFzcGVjdHMgbXVzdCBiZSBvYnNlcnZlZC4gQWx0aG91Z2ggdGhlIG9yZ2FuaXNtIGlzIGNvbnNpZGVyZWQgbm9uLXBhdGhvZ2VuaWMgYW5kIGJpb2xvZ2ljYWxseSBzYWZlIChTMSksIHNraW4gY29udGFjdCBhbmQgYWVyb3NvbCBmb3JtYXRpb24gc2hvdWxkIGJlIGF2b2lkZWQgdG8gbWluaW1pemUgdGhlIHJpc2sgb2YgaW5mZWN0aW9uIG9yIGFsbGVyZ2ljIHJlYWN0aW9ucy4gV2hlbiB1c2luZyBnZW5ldGljYWxseSBtb2RpZmllZCBzdHJhaW5zLCBpdCBpcyBpbXBvcnRhbnQgdG8gZm9sbG93IHRoZSByZWxldmFudCBHTU8gZ3VpZGVsaW5lcyB0byBwcmV2ZW50IHVuY29udHJvbGxlZCByZWxlYXNlLiBJbiBhZGRpdGlvbiwgaGFuZGxpbmcgY2hlbWljYWxzIHN1Y2ggYXMgbWV0aGFub2wgcmVxdWlyZXMgc3BlY2lhbCBwcmVjYXV0aW9ucyBhcyB0aGV5IGFyZSB0b3hpYyBhbmQgaGlnaGx5IGZsYW1tYWJsZS4gVGhlIGRpc3Bvc2FsIG9mIGNlbGwgY3VsdHVyZXMgYW5kIHdhc3RlIG11c3QgYWxzbyBiZSBjYXJyaWVkIG91dCBpbiBhY2NvcmRhbmNlIHdpdGggYmlvc2FmZXR5IHJlZ3VsYXRpb25zLCBlc3BlY2lhbGx5IGluIHRoZSBjYXNlIG9mIGdlbmV0aWNhbGx5IG1vZGlmaWVkIG9yZ2FuaXNtcy4gXG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNoZWNrY2VsbExpbmVzXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ2hlY2staW4gZm9yIFRlc3RpbmcgaW4gY2VsbCBsaW5lc1wiPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgSW4gb3VyIHByb2plY3QsIHdlIHBhaWQgYXR0ZW50aW9uIHRvIHNhZmV0eSBhdCBldmVyeSBzdGVwLCBlc3BlY2lhbGx5IHdoZW4gd29ya2luZyB3aXRoIHNwZWNpZmljIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnY2VsbC1jdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT4gY2VsbCBsaW5lcyA8L2E+IC4gQWxsIGV4cGVyaW1lbnRzIHdlcmUgcGVyZm9ybWVkIHVuZGVyIHN0cmljdCBTMSBjb25kaXRpb25zLCBmb2xsb3dpbmcgYWxsIHJlbGV2YW50IHNhZmV0eSBwcm90b2NvbHMuIEdpdmVuIHRoZSBzZW5zaXRpdml0eSBvZiB0aGUgaHVtYW4gY2VsbCBsaW5lcyB3ZSB1c2VkLCB3ZSBwbGFjZWQgZ3JlYXQgZW1waGFzaXMgb24gY29udHJvbGxlZCBhbmQgd2VsbC1kZXNpZ25lZCB3b3JrZmxvd3MuIEFsbCB0cmFuc2ZlY3Rpb25zIHdlcmUgcGVyZm9ybWVkIGluIG91ciBvd24gdHJhbnNmZWN0aW9uIGxhYm9yYXRvcnkgdG8gZW5zdXJlIGEgaGlnaCBsZXZlbCBvZiBzYWZldHkgYW5kIGNvbXBsaWFuY2UuICBCZWxvdyB5b3Ugd2lsbCBmaW5kIGFuIG92ZXJ2aWV3IG9mIHRoZSBjZWxsIGxpbmVzIHN1Ym1pdHRlZCBieSB1cyBhcyBhIGNoZWNraW4gYW5kIHRoZSBzcGVjaWZpYyBzYWZldHkgbWVhc3VyZXM6XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIDxzdHJvbmc+SEVLMjkzIGNlbGwgbGluZTogPC9zdHJvbmc+SEVLIDI5MyAoSHVtYW4gRW1icnlvbmljIEtpZG5leSAyOTMpIGNlbGxzIGFyZSBhbiBpbW1vcnRhbCBjZWxsIGxpbmUgb3JpZ2luYWxseSBkZXJpdmVkIGZyb20gdGhlIGtpZG5leSBjZWxscyBvZiBhIGh1bWFuIGVtYnJ5by4gVGhleSBhcmUgY2hhcmFjdGVyaXplZCBieSB0aGVpciBmYXN0IGRpdmlzaW9uIHJhdGUgYW5kIGhpZ2ggdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIHdoaWNoIG1ha2VzIHRoZW0gYSBwb3B1bGFyIG1vZGVsIGluIGJpb21lZGljYWwgcmVzZWFyY2guIEZvciBvdXIgc3R1ZGllcywgdGhlIGJhc2ljIEhFSzI5MyBjZWxscyB3ZXJlIHByb3ZpZGVkIHRvIHVzIGJ5IHRoZSBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3kgR3JvdXAgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIGhlYWRlZCBieSBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIuIFByb2YuIERyLiBNXHUwMEZDbGxlciBpcyBhbHNvIG9uZSBvZiB0aGUgUHJpbmNpcGFsIEludmVzdGlnYXRvcnMgb2Ygb3VyIHRlYW0uIFdlIHVzZSB0aGlzIGNlbGwgbGluZSBpbiBvdXIgcHJvb2Ytb2YtY29uY2VwdCBzdHVkaWVzIGFuZCBmb3IgdGVzdGluZyB0aGUgUHJpbWUgRWRpdGluZyBHdWlkZSBwZWdSTkEgKHBlZ1JOQSkgdG8gZXZhbHVhdGUgdGhlIGVmZmljaWVuY3kgYW5kIGZ1bmN0aW9uYWxpdHkgb2Ygb3VyIGNvbnN0cnVjdHMuIFxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICA8c3Ryb25nPkhFSzI5M1QtM0hBLUNGVFIgY2VsbCBsaW5lOiA8L3N0cm9uZz5UaGUgSEVLMjkzVC0zSEEtQ0ZUUiBjZWxsIGxpbmUgaXMgYmFzZWQgb24gSEVLMjkzVCBjZWxscyBleHByZXNzaW5nIGFuIGFkZGl0aW9uYWwgdHNBMTYwOSBhbGxlbGUgb2YgdGhlIFNWNDAgbGFyZ2UgVCBhbnRpZ2VuLiBUaGlzIGFsbGVsZSBlbmFibGVzIHRoZSByZXBsaWNhdGlvbiBvZiB2ZWN0b3JzIGNvbnRhaW5pbmcgdGhlIFNWNDAgb3JpZ2luIG9mIHJlcGxpY2F0aW9uLiBJbiBhZGRpdGlvbiB0byB0aGUgbmF0aXZlIENGVFIgZ2VuZSwgd2hpY2ggaXMgbm90IGV4cHJlc3NlZCBpbiBIRUsgY2VsbHMsIHRoZSBIRUsyOTNULTNIQS1DRlRSIGNlbGwgbGluZSBjYXJyaWVzIGFub3RoZXIgY29weSBvZiB0aGUgQ0ZUUiBnZW5lIGVtYmVkZGVkIGluIGFuIGV4cHJlc3Npb24gY2Fzc2V0dGUuIFRoaXMgY2Fzc2V0dGUgY29udGFpbnMgYSBDTVYgcHJvbW90ZXIsIHdoaWNoIGlzIGRlcml2ZWQgZnJvbSB0aGUgaHVtYW4gY3l0b21lZ2Fsb3ZpcnVzIGFuZCBpcyBmcmVxdWVudGx5IHVzZWQgZm9yIHRoZSBvdmVyZXhwcmVzc2lvbiBvZiBnZW5lcyBpbiBodW1hbiBjZWxscy4gSW4gYWRkaXRpb24sIHRoZSBjYXNzZXR0ZSBjb250YWlucyBhIHB1cm9teWNpbiByZXNpc3RhbmNlIGdlbmUgdGhhdCBpcyBjby1leHByZXNzZWQgd2l0aCBDRlRSLCBhbGxvd2luZyBjb250aW51b3VzIHNlbGVjdGlvbiBvZiBDRlRSLWV4cHJlc3NpbmcgY2VsbHMuIFxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICA8c3Ryb25nPkhFSzI5M1QtM0hBLUY1MDhkZWwtQ0ZUUiBjZWxsIGxpbmU6PC9zdHJvbmc+IFRoZSBIRUsyOTNULTNIQS1GNTA4ZGVsLUNGVFIgY2VsbCBsaW5lIGlzIGEgbW9kaWZpZWQgSEVLMjkzVCBjZWxsIGxpbmUgdGhhdCBjYXJyaWVzIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIHRoZSBDRlRSIGdlbmUsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgbW9zdCBjb21tb24gbXV0YXRpb24gaW4gY3lzdGljIGZpYnJvc2lzLiBUaGlzIG11dGF0aW9uIGxlYWRzIHRvIGEgZGVmZWN0aXZlIENGVFIgcHJvdGVpbiB0aGF0IGltcGFpcnMgdGhlIG5vcm1hbCBmdW5jdGlvbiBvZiB0aGUgY2hsb3JpZGUgY2hhbm5lbC4gVGhlIGNlbGwgbGluZSBpcyB0aGVyZWZvcmUgaWRlYWwgZm9yIHN0dWR5aW5nIHRoZSBlZmZlY3RzIG9mIHRoaXMgbXV0YXRpb24gYW5kIGZvciBldmFsdWF0aW5nIHBvdGVudGlhbCB0aGVyYXBpZXMgZm9yIGN5c3RpYyBmaWJyb3Npcy4gXG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIDxzdHJvbmc+Q0ZCRTQxby0gY2VsbCBsaW5lOjwvc3Ryb25nPiBUaGUgQ0ZCRTQxby0gY2VsbCBsaW5lLCBkZXJpdmVkIGZyb20gdGhlIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIG9mIGEgY3lzdGljIGZpYnJvc2lzIHBhdGllbnQsIGlzIGhvbW96eWdvdXMgZm9yIHRoZSBGNTA4ZGVsLUNGVFIgbXV0YXRpb24gYW5kIHdhcyBlc3NlbnRpYWwgZm9yIG91ciBjeXN0aWMgZmlicm9zaXMgcmVzZWFyY2guIEEgcmVkdWNlZCBDRlRSIGV4cHJlc3Npb24gbGV2ZWwgaXMgcHJlc2VudC4gVGhlIGNlbGwgbGluZSBjYXJyaWVzIHRoZSBDRlRSIGRlZmVjdCBhbmQgY2FuIHRoZXJlZm9yZSByZXByZXNlbnQgYSBwYXRpZW50IHdpdGggQ0YuIFRoZSBjZWxsIGxpbmUgaXMgdXNlZCB0byB0ZXN0IG91ciBtZWNoYW5pc20uIFRoZXNlIGNlbGxzIHdlcmUgaW1tb3J0YWxpemVkIHdpdGggYSByZXBsaWNhdGlvbi1kZWZlY3RpdmUgcGxhc21pZCB0aGF0IHJldGFpbnMgdGhlaXIgcGh5c2lvbG9naWNhbCBwcm9wZXJ0aWVzLlxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgIFdoZW4gd29ya2luZyB3aXRoIHRoZSBIRUsyOTNUIGFuZCBDRkJFNDFvLSBjZWxsIGxpbmVzLCBpdFx1MjAxOXMgaW1wb3J0YW50IHRvIGNvbnNpZGVyIHRoZSBtaW5pbWFsIHJpc2tzIGFzc29jaWF0ZWQgd2l0aCB0aGVpciB1c2UuIFdoaWxlIG5vdCBoYXJtZnVsIG9uIHRoZWlyIG93biwgdGhlIGdlbmV0aWMgbW9kaWZpY2F0aW9ucyBpbiBIRUsyOTNUIGNlbGxzIHJlcXVpcmUgY2FyZWZ1bCBoYW5kbGluZyB0byBwcmV2ZW50IGFjY2lkZW50YWwgcmVsZWFzZSBvciBleHBvc3VyZS4gVGhlc2UgY2VsbHMsIGVuZ2luZWVyZWQgdG8gb3ZlcmV4cHJlc3MgQ0ZUUiwgaW5jbHVkaW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBuZWNlc3NpdGF0ZSBzdHJpY3Qgc2FmZXR5IG1lYXN1cmVzIGxpa2UgcmVndWxhciBtb25pdG9yaW5nIGFuZCBwcm9wZXIgd2FzdGUgZGlzcG9zYWwgdG8gY29tcGx5IHdpdGggUzEgbGFib3JhdG9yeSBzdGFuZGFyZHMuIFNpbWlsYXJseSwgQ0ZCRTQxby0gY2VsbHMsIGR1ZSB0byB0aGVpciBnZW5ldGljIG1vZGlmaWNhdGlvbnMgYW5kIGRpc2Vhc2UgcmVsZXZhbmNlLCByZXF1aXJlIGNhcmVmdWwgaGFuZGxpbmcgdG8gYXZvaWQgY3Jvc3MtY29udGFtaW5hdGlvbiBhbmQgZW5zdXJlIGJpb3NhZmV0eS5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgPHN0cm9uZz5IdW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIChoTkVDcyk6PC9zdHJvbmc+IEh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKSB3ZXJlIGhhcnZlc3RlZCB1c2luZyBhIG5hc2FsIGJydXNoLCBhIG1pbmltYWxseSBpbnZhc2l2ZSBwcm9jZWR1cmUsIGFuZCBjdWx0dXJlZCBpbiBhaXItbGlxdWlkIGludGVyZmFjZSAoQUxJKSBjdWx0dXJlcyB0byBtb2RlbCB0aGUgYWlyd2F5IGVwaXRoZWxpdW0uIEh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKSB3ZXJlIG9idGFpbmVkIHVzaW5nIGEgbmFzYWwgYnJ1c2gsIGEgbWluaW1hbGx5IGludmFzaXZlIHRlY2huaXF1ZSwgYW5kIHRoZW4gY3VsdHVyZWQgaW4gYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMgdG8gbW9kZWwgdGhlIGFpcndheSBlcGl0aGVsaXVtLiBVc2luZyB0aGVzZSBwcmltYXJ5IGN1bHR1cmVzLCBkZXJpdmVkIGZyb20gZG9ub3JzIHdpdGggYWlyd2F5IGRpc2Vhc2VzIHN1Y2ggYXMgY3lzdGljIGZpYnJvc2lzLCB3ZSB3ZXJlIGFibGUgdG8gc2ltdWxhdGUgdGhlIGluIHZpdm8gY29uZGl0aW9ucyBvZiBzdWNoIGRpc2Vhc2VzLiAgXG4gICAgICAgICAgICAgIER1ZSB0byB0aGUgc2Vuc2l0aXZlIG5hdHVyZSBvZiB0aGVzZSBwcmltYXJ5IGh1bWFuIGNlbGxzLCB3ZSBwZXJmb3JtZWQgYWxsIGV4cGVyaW1lbnRzIHdpdGggaE5FQ3MgaW4gb3VyIFMyIGxhYm9yYXRvcnksIHdoZXJlIGluY3JlYXNlZCBzYWZldHkgcHJlY2F1dGlvbnMgd2VyZSB0YWtlbi4gVGhpcyBpbmNsdWRlZCBzdHJpY3Qgc2FmZXR5IGNvbnRyb2xzLCBzYWZlIGhhbmRsaW5nIG9mIHNhbXBsZXMgYW5kIHByb3BlciBkaXNwb3NhbCBvZiBtYXRlcmlhbHMgYWZ0ZXIgdGVzdGluZy4gSW4gcGFydGljdWxhciwgdGhlIGhORUNzIHVuZGVyd2VudCBISEggKFRyaXBsZSBIOiBISVYsIEhDViBhbmQgSEJWKSB0ZXN0aW5nIHRvIGVuc3VyZSB0aGF0IG5vIGNvbnRhbWluYXRpb24gb2NjdXJyZWQgZHVyaW5nIHNhbXBsZSBjb2xsZWN0aW9uIG9yIGV4cGVyaW1lbnRhdGlvbi4gVGhlc2UgdGVzdHMgaW5jbHVkZWQgc3RlcmlsaXR5IHRlc3RpbmcsIHZpYWJpbGl0eSBhc3Nlc3NtZW50cyBhbmQgY29udGFtaW5hdGlvbiB0ZXN0aW5nIHRvIGVuc3VyZSB0aGUgc2FmZXR5IGFuZCBpbnRlZ3JpdHkgb2YgYm90aCB0aGUgc2FtcGxlcyBhbmQgdGhlIGxhYm9yYXRvcnkgZW52aXJvbm1lbnQuIEFmdGVyIGEgbmVnYXRpdmUgSEhIIHRlc3QsIHRoZSBwcmltYXJ5IGN1bHR1cmVzIGNhbiBiZSB0cmVhdGVkIGFzIFMxLiBJbiBhZGRpdGlvbiwgdGhlIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgd2VyZSBoYW5kbGVkIHdpdGggdGhlIHV0bW9zdCBjYXJlIGR1cmluZyBjb2xsZWN0aW9uLCBlbnN1cmluZyB0aGF0IGFsbCBwcm9jZWR1cmVzIHdlcmUgcGVyZm9ybWVkIHVuZGVyIHN0ZXJpbGUgY29uZGl0aW9ucyB0byBhdm9pZCBhbnkgcmlzayBvZiBjb250YW1pbmF0aW9uRm9yIHRoaXMgcHVycG9zZSwgdGhlIGludGVuc2l2ZSBleGFtaW5hdGlvbiBvZiBldGhpY2FsIHF1ZXN0aW9ucyB3YXMgZnVuZGFtZW50YWwgYW5kIGEgY29uc3RhbnQgY29tcGFuaW9uIG9mIG91ciBwcm9qZWN0LiBUaGUgbnVtZXJvdXMgcmVzdWx0cyBmcm9tIHRoZSBpbnRlcnZpZXdzIGluIHRoZSBhcmVhcyBvZjogRXRoaWNzLCBzdG9yYWdlIGFuZCB0cmFpbmluZyBpbiB0aGUgaGFuZGxpbmcgb2Ygc2FtcGxlcyBoYXZlIGJlZW4gc3VtbWFyaXplZCBpbiBhIGd1aWRlbGluZSBmb3IgcGF0aWVudCBjb25zZW50IGZvciBHZXJtYW55IGFuZCBhcmUgaW50ZW5kZWQgdG8gcHJvdmlkZSBpR0VNIHRlYW1zIHdpdGggdGhlIHNjb3BlLCBjcml0aWNhbCBleGFtaW5hdGlvbiBhbmQgb2JzZXJ2YW5jZSBvZiBpR0VNIHJ1bGVzLCBpbnRlcm5hdGlvbmFsIGFuZCBuYXRpb25hbCBndWlkZWxpbmVzLlx1MjAyRiBcbiAgICAgICAgICAgICAgPC9wPiBcbiAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG5cbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNoZWNrRGVsaXZlcnlcIiBvcGVuPXtmYWxzZX0gdGl0bGU9XCJDaGVjay1pbiBmb3IgRGVsaXZlcnlcIj5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIE91ciBmaW5pc2hlZCBjb25zdHJ1Y3QgaXMgZGVzaWduZWQgdG8gYmUgZGVsaXZlcmVkIGludG8gdGhlIGx1bmcgdmlhIGFuIGluaGFsZXIgdXNpbmcgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykuIFRvIGJlIG1vcmUgc3BlemlmaWMgYSBzZWxlY3RpdmUgb3JnYW4tdGFyZ2V0aW5nIChTT1JUKS0gTE5QcyB3ZXJlIGRldmVsb3BlZCB0byBkZWxpdmVyIG1STkEgc3BlY2lmaWNhbGx5IHRvIHRoZSBsdW5nLCB3aXRoIHNwZWNpYWwgbWVhc3VyZXMgdGFrZW4gdG8gaW5jcmVhc2UgYmlvY29tcGF0aWJpbGl0eSBhbmQgc2FmZXR5LiBTaW5jZSB0aGUgTE5QIGNvbXBvc2l0aW9uIGlzIHZlcnkgc3BlY2lmaWMgYW5kIGFsc28gZGlmZmVycyBmcm9tIG90aGVyIGZvcm11bGFzLCB3ZSBzdWJtaXR0ZWQgdGhlIExOUCBhcyBhIGNoZWNraW46XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIDxzdHJvbmc+TE5QOjwvc3Ryb25nPiBUaGVzZSBMTlBzIGFyZSB0aGVuIHRha2VuIHVwIGJ5IGVwaXRoZWxpYWwgY2VsbHMgdGhyb3VnaCBlbmRvY3l0b3NpcywgcmVsZWFzaW5nIHRoZSBjb25zdHJ1Y3QgaW50byB0aGUgY3l0b3NvbC4gV2UgY2FyZWZ1bGx5IGV2YWx1YXRlZCB0aGUgcG90ZW50aWFsIHJpc2tzLCBpbmNsdWRpbmcgdW5pbnRlbmRlZCBpbW11bmUgcmVzcG9uc2VzIGFuZCB0aGUgbmVlZCBmb3IgcHJlY2lzZSBkb3NpbmcgdG8gbWluaW1pemUgc2lkZSBlZmZlY3RzLiBJbiBhZGRpdGlvbiwgd2UgaGF2ZSBjb25kdWN0ZWQgYW4gaW4tZGVwdGggYW5hbHlzaXMgb2YgdGhlIGR1YWwtdXNlIHBvdGVudGlhbCBvZiBvdXIgdGVjaG5vbG9neS4gRHVhbC11c2UgcmVmZXJzIHRvIHRoZSBwb3NzaWJpbGl0eSB0aGF0IHNjaWVudGlmaWMgYWR2YW5jZXMgY2FuIGJlIHVzZWQgZm9yIGJvdGggY2l2aWxpYW4gYW5kIG1pbGl0YXJ5IHB1cnBvc2VzLiBUaGVyZWZvcmUsIHdlIGhhdmUgaW1wbGVtZW50ZWQgc3RyaWN0IHNhZmV0eSBwcm90b2NvbHMgYW5kIGV0aGljYWwgZ3VpZGVsaW5lcyB0byBlbnN1cmUgdGhhdCBvdXIgdGVjaG5vbG9neSBpcyB1c2VkIGV4Y2x1c2l2ZWx5IGZvciBwZWFjZWZ1bCBhbmQgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiBcbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1NlY3Rpb24+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBMYWJcIiBpZD1cIk91ciBMYWJcIj5cbiAgICAgICAgPHA+XG4gICAgICAgIEFzIHBhcnQgb2Ygb3VyIGxhYm9yYXRvcnkgYWN0aXZpdGllcyBmb3Igb3VyIDxQcmVDeXNlLz4gcHJvamVjdCwgd2Ugd29ya2VkIGluIHZhcmlvdXMgbGFib3JhdG9yaWVzLiBGb3IgZ2VuZXJhbCBsYWIgd29yayBhbmQgY2xvbmluZyBleHBlcmltZW50cywgeW91IGNhbiBmaW5kIHNvbWUgcGljdHVyZXMgb2Ygb3VyIGxhYm9yYXRvcmllcyBiZWxvdzogIFxuICAgICAgICA8L3A+XG4gICAgICAgIDxINCB0ZXh0PVwiT3VyIENsb25pbmcgTGFiXCI+PC9IND5cbiAgICAgICAgPHA+XG4gICAgICAgIE91ciBDbG9uaW5nLWxhYm9yYXRvcnkgaXMgZGl2aWRlZCBpbnRvIGRpZmZlcmVudCB3b3JrIGFyZWFzIHRvIGVuc3VyZSB0aGF0IHRoZSBleHBlcmltZW50cyBydW4gc21vb3RobHkgYW5kIGVmZmljaWVudGx5LiBUaGVzZSBpbmNsdWRlIHRoZSBnZWwgc3RhdGlvbiwgdGhlIFBDUiBzdGF0aW9uLCB0aGUgdHJhbnNmb3JtYXRpb24gc2VjdGlvbiBhbmQgdGhlIG1lYXN1cmVtZW50IGFyZWEuIEVhY2ggYXJlYSBpcyBzcGVjaWFsbHkgZXF1aXBwZWQgZm9yIHRoZSByZXNwZWN0aXZlIG1ldGhvZCwgYW5kIHRoZSBjb3JyZXNwb25kaW5nIGV4cGVyaW1lbnRzIHdlcmUgY2FycmllZCBvdXQgZXhjbHVzaXZlbHkgaW4gdGhlIGRlc2lnbmF0ZWQgc3RhdGlvbnMuIEluIHRoaXMgd2F5LCB3ZSBlbnN1cmUgdGhhdCBvdXIgd29yayBpcyBjYXJyaWVkIG91dCB1bmRlciBvcHRpbWFsIGNvbmRpdGlvbnMgYW5kIHdpdGggdGhlIGdyZWF0ZXN0IHBvc3NpYmxlIHByZWNpc2lvbi4gXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlndXJlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvYmlvc2FmZXR5L2tvbGxhZ2UvbmV3L2ltZy0yMDQxLmpwZWdcIiBzdHlsZT17e2hlaWdodDogXCIxMCVcIiwgd2lkdGg6XCJhdXRvXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgMTwvYj4gUGhvdG8tZ2FsbGVyeSBvZiBsYWJvcmF0b3J5LiBBOiBLZXkgbG9jay4gQjogS2V5LWxvY2tlZCBkb29yLiBDOiBBbGFybSBwbGFuLiBEOiBFbWVyZ2VueSBidXR0b24gZm9yIGVsZWN0cmlvdGlvbiBzdG9wLiBFOiBFbWVyZ2VuY3kgdGVsZXBob25lLiBGOiBGaXJzdCBhaWQga2l0LCBjYXJkaWFjIGRlZmlicmlsbGF0b24gYW5kIGVtZXJnZW5jeSBleGl0IGFuZCBmaXJlIGFsYXJtIHBsYW4uIEc6IFdhc2ggYmluIHdpdGggZW1lcmdlbmN5IGV5ZSB3YXNoLiBIOiBFbWVyZ2VuY3kgc2hvd2VyLiBJOiBMb2NrYWJsZSBjYWJpbmV0cyBmb3IgY2hlbWljYWwgc3RvcmFnZS4gPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Jpb3NhZmV0eS9rb2xsYWdlL25ldy9pbWctMjAzNy5qcGVnXCIgc3R5bGU9e3toZWlnaHQ6IFwiMTAlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IDxiPkZpZ3VyZSAyPC9iPiBQaG90by1nYWxsZXJ5IG9mIFMxIGxhYm9yYXRvcnkuIEE6IEF1dG9jbGF2ZS4gQjogUmVmcmlnZXJhdG9yIHdpdGggY2hlbWljYWxzLiBDOiBXZWlnaGluZyByb29tIHdpdGggY2hlbWljYWwgc3RvcmFnZS4gRDogQ2xlYW4gYmVuY2ggd29yayBzcGFjZSB3aXRoIHZvcnRleCwgcGlwZXR0ZXMsIGhlYXQgYmxvY2sgYW5kIGJlbmNoIHRvcCBjZW50cmlmdWdlLiBFOiBwSCBlbGVjdHJvZGUgaW4gZnVtZSBob29kLiBGOiBJY2UgbWFjaGluZS4gRzogRmlyZSBkaXN0aW5ndWlzaGVyIGFuZCBTMSB3YXN0ZS4gSDogRnVtZSBob29kIHdpdGggbGlxdWlkIHdhc3RlLjwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvcD5cbiAgICAgICAgPEg0IHRleHQ9XCJPdXIgQ2VsbCBDdWx0dXJlIExhYiBcIj48L0g0PlxuICAgICAgICA8cD5cbiAgICAgICAgSW4gb3VyIGNlbGwgY3VsdHVyZSBsYWJvcmF0b3J5LCB3ZSB3b3JrIHVuZGVyIHN0ZXJpbGUgY29uZGl0aW9ucyB0byBlbnN1cmUgb3B0aW1hbCBncm93dGggY29uZGl0aW9ucyBmb3IgaHVtYW4gY2VsbCBsaW5lcy4gQW1vbmcgb3RoZXIgdGhpbmdzLCB3ZSBjYXJyeSBvdXQgdHJhbnNmZWN0aW9ucyBpbiBvcmRlciB0byBpbnRyb2R1Y2UgZ2VuZXRpYyBtYXRlcmlhbCBpbnRvIGNlbGxzIGFuZCBpbnZlc3RpZ2F0ZSB0aGVpciBiZWhhdmlvci4gU3RyaWN0IHByb3RvY29scyBhbmQgc3RhdGUtb2YtdGhlLWFydCB0ZWNobm9sb2d5IGVuc3VyZSB0aGUgcHJlY2lzaW9uIGFuZCByZXByb2R1Y2liaWxpdHkgb2Ygb3VyIGV4cGVyaW1lbnRzLiBcbiAgICAgICAgPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Jpb3NhZmV0eS9rb2xsYWdlL25ldy9pbWctMjA0MC5qcGVnXCIgc3R5bGU9e3toZWlnaHQ6IFwiMTAlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+IDxiPkZpZ3VyZSAzPC9iPiBQaG90by1nYWxsZXJ5IG9mIGxhYm9yYXRvcnkgYW5kIGNoZW1pY2FsIHN0b3JhZ2UuIEE6IFNhZmV0eSBjYWJpbmV0cy4gQjogSW5jdWJhdG9yLiBDOiBTYWZldHkgY2FiaW5ldC48L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8cD5cbiAgICAgICAgSW4gb3VyIFMyIGxhYm9yYXRvcnksIHRoZSBoYXJ2ZXN0ZWQgbmFzYWwgZXBpdGhlbGlhbCBjZWxscyB0aGF0IHNlcnZlIGFzIHByaW1hcnkgY3VsdHVyZXMgdW5kZXJnbyBhIGNvbXByZWhlbnNpdmUgSEhIIHRlc3QgdG8gZW5zdXJlIHRoZWlyIHNhZmV0eSBhbmQgc3VpdGFiaWxpdHkgZm9yIGZ1cnRoZXIgZXhwZXJpbWVudHMuIFRoaXMgdGVzdCBpcyBjcnVjaWFsIHRvIGVuc3VyZSB0aGF0IHdlIGNhbiBzdWJzZXF1ZW50bHkgd29yayBzYWZlbHkgd2l0aCB0aGVzZSBjZWxscyBpbiB0aGUgUzEgcmFuZ2Ugd2l0aG91dCB0aGUgcmlzayBvZiBjb250YW1pbmF0aW9uIG9yIHVud2FudGVkIHJlbGVhc2Ugb2YgYmlvbG9naWNhbCBtYXRlcmlhbC4gXG4gICAgICAgIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWd1cmUtd3JhcHBlclwiPlxuICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9iaW9zYWZldHkva29sbGFnZS9uZXcvaW1nLTIwNDIuanBlZ1wiIHN0eWxlPXt7aGVpZ2h0OiBcIjEwJVwifX0vPlxuICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDQ8L2I+UGhvdG8tZ2FsbGVyeSBvZiBTMiBsYWJvcmF0b3J5LiBBOiBEb29yIG9mIFMyIGxhYiB3aXRoIFMyIHNpZ24uIEI6IEVtZXJnZW5jeSBzaG93ZXIgYW5kIGZpcmUgZGlzdGluZ3Vpc2hlci4gQzogQ2xlYW4gYmVuY2ggd2l0aCBjZW50cmlmdWdlLiBEOiBJbmN1YmF0b3IuIEU6IFNhZmV0eSBjYWJpbmV0LiBGOiBFbWVyZ2VueSB0ZWxlcGhvbmUuIEc6IFMyIGxhYiBjb2F0IHdpdGggUzIgc2lnbi4gSDogTWljcm9zY29wZS4gSTogQXV0b2NsYXZlLiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9TZWN0aW9uPlxuICAgICBcbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwiUmVmZXJlbmNlc1wiPlxuICAgICAgPG9sPnsvKjwhLS0gQ2l0YXRpb24gbnVtIDEtLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xXCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENsb2FyZWMtVW5nLCBGLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEJlYXVsaWV1LCBKLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFN1dGhhbmFudGhhbiwgQS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBMZWhuZXJ0eiwgQi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTYXV2YWdlYXUsIEcuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU2hlcHBhcmQsIEguIE0uPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gS25hcHAsIEQuIEouIEguIEYuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcbk5lYXItcGVyZmVjdCBwcmVjaXNlIG9uLXRhcmdldCBlZGl0aW5nIG9mIGh1bWFuIGhlbWF0b3BvaWV0aWMgc3RlbSBhbmRcbnByb2dlbml0b3IgY2VsbHNcbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IGVMaWZlPC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxMiw8L2I+XG5cdCZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDI0XCI+MjAyNDwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjc1NTQvZUxpZmUuOTEyODhcIj4gZG9pOiAxMC43NTU0L2VMaWZlLjkxMjg4PC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMi0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTJcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTmVsc29uLCBKLiBXLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFJhbmRvbHBoLCBQLiBCLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNoZW4sIFMuIFAuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRXZlcmV0dGUsIEsuIEEuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2hlbiwgUC4gSi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbnphbG9uZSwgQS4gVi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbiwgTS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBldCBhbC48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0VuZ2luZWVyZWQgcGVnUk5BcyBpbXByb3ZlIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeTwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IE5hdHVyZSBCaW90ZWNobm9sb2d5PC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiA0MDwvYj5cblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiA0MDI8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj40MTA8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIyXCI+MjAyMjwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMzgvczQxNTg3LTAyMS0wMTAzOS03XCI+IGRvaTogMTAuMTAzOC9zNDE1ODctMDIxLTAxMDM5LTc8L2E+XG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAzLS0+ICovfVxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtM1wiPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBEb2VuY2gsIEouIEcuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRnVzaSwgTi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTdWxsZW5kZXIsIE0uPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSGVnZGUsIE0uPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gVmFpbWJlcmcsIEUuIFcuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRG9ub3ZhbiwgSy4gRi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTbWl0aCwgSS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBldCBhbC48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuT3B0aW1pemVkIHNnUk5BIGRlc2lnbiB0byBtYXhpbWl6ZSBhY3Rpdml0eSBhbmQgbWluaW1pemUgb2ZmLXRhcmdldCBlZmZlY3RzXG5vZiBDUklTUFItQ2FzOVxuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIEJpb3RlY2hub2xvZ3k8L2k+XG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDM0PC9iPlxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDE4NDwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE5MTwvc3Bhbj4mbmJzcDtcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMTZcIj4yMDE2PC90aW1lPikuXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTAzOC9uYnQuMzQzN1wiPiBkb2k6IDEwLjEwMzgvbmJ0LjM0Mzc8L2E+XG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSA0LS0+ICovfVxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtNFwiPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBXaGl0ZSwgTi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTYWRlZXNoa3VtYXIsIEguPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU3VuLCBBLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFN1ZGFyc2FuLCBOLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEJyZWFrZXIsIFIuIFIuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcbk5hKyByaWJvc3dpdGNoZXMgcmVndWxhdGUgZ2VuZXMgZm9yIGRpdmVyc2UgcGh5c2lvbG9naWNhbCBwcm9jZXNzZXMgaW5cbmJhY3RlcmlhXG48L3NwYW4+LiBcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBOYXR1cmUgQ2hlbWljYWwgQmlvbG9neTwvaT5cblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTg8L2I+XG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gODc4PC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+ODg1PC9zcGFuPiZuYnNwO1xuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyMlwiPjIwMjI8L3RpbWU+KS5cblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTU4OS0wMjItMDEwODYtNFwiPiBkb2k6IDEwLjEwMzgvczQxNTg5LTAyMi0wMTA4Ni00PC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gNS0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTVcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSXdhd2FraSwgVC48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBa2FpLCBSLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XG5BbmFseXNpcyBvZiB0aGUgWEJQMSBzcGxpY2luZyBtZWNoYW5pc20gdXNpbmcgZW5kb3BsYXNtaWMgcmV0aWN1bHVtXG5zdHJlc3MtaW5kaWNhdG9yc1xuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gQmlvY2hlbWljYWwgYW5kIEJpb3BoeXNpY2FsIFJlc2VhcmNoIENvbW11bmljYXRpb25zPC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAzNTA8L2I+XG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gNzA5PC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+NzE1PC9zcGFuPiZuYnNwO1xuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAwNlwiPjIwMDY8L3RpbWU+KS5cblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L2ouYmJyYy4yMDA2LjA5LjEwMFwiPiBkb2k6IDEwLjEwMTYvai5iYnJjLjIwMDYuMDkuMTAwPC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gNi0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTZcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gWmhhbmcsIFkuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTGluLCBTLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFlhbywgSi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDYWksIFcuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2hlbiwgSC48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBaWVya2VuLCBBLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFdhbmcsIFouPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcblhCUDEgc3BsaWNpbmcgY29udHJpYnV0ZXMgdG8gZW5kb3BsYXNtaWMgcmV0aWN1bHVtIHN0cmVzcy1pbmR1Y2VkIGh1bWFuIGlzbGV0XG5hbXlsb2lkIHBvbHlwZXB0aWRlIHVwLXJlZ3VsYXRpb25cbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEdlbmVzICYgRGlzZWFzZXM8L2k+XG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDExPC9iPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4xMDExNDg8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIzXCI+MjAyMzwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMTYvai5nZW5kaXMuMjAyMy4xMDExNDhcIj4gZG9pOiAxMC4xMDE2L2ouZ2VuZGlzLjIwMjMuMTAxMTQ4PC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gNy0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTdcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gV2VpLCBULjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFN1biwgWS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDaGVuZywgUS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDaGF0dGVyamVlLCBTLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFRyYXlsb3IsIFouPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSm9obnNvbiwgTC4gVC48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDb3F1ZWxpbiwgTS4gTC48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBldCBhbC48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuTHVuZyBTT1JUIExOUHMgZW5hYmxlIHByZWNpc2UgaG9tb2xvZ3ktZGlyZWN0ZWQgcmVwYWlyIG1lZGlhdGVkXG5DUklTUFIvQ2FzIGdlbm9tZSBjb3JyZWN0aW9uIGluIGN5c3RpYyBmaWJyb3NpcyBtb2RlbHNcbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IE5hdHVyZSBDb21tdW5pY2F0aW9uczwvaT5cblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTQsPC9iPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4mbmJzcDs3MzIyPC9zcGFuPiZuYnNwO1xuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyM1wiPjIwMjM8L3RpbWU+KS5cblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTQ2Ny0wMjMtNDI5NDgtMlwiPiBkb2k6IDEwLjEwMzgvczQxNDY3LTAyMy00Mjk0OC0yPC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gOC0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLThcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSWJyYWhpbSwgTS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBSYW1hZGFuLCBFLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEVsc2FkZWssIE4uIEUuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRW1hbSwgUy4gRS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTaGltaXp1LCBULjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEFuZG8sIEguPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSXNoaW1hLCBZLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IGV0IGFsLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XG5Qb2x5ZXRoeWxlbmUgZ2x5Y29sIChQRUcpOiBUaGUgbmF0dXJlLCBpbW11bm9nZW5pY2l0eSwgYW5kIHJvbGUgaW4gdGhlXG5oeXBlcnNlbnNpdGl2aXR5IG9mIFBFR3lsYXRlZCBwcm9kdWN0c1xuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gSm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2U8L2k+XG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDM1MTwvYj5cblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAyMTU8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4yMzA8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIyXCI+MjAyMjwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnL2h0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L2ouamNvbnJlbC4yMDIyLjA5LjAzMVwiPiBkb2k6IGh0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L2ouamNvbnJlbC4yMDIyLjA5LjAzMTwvYT5cbjwvbGk+XG5cbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDktLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy05XCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEppYW5nLCBBLiBZLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFdpdHRlbiwgSi48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBSYWppLCBJLiBPLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEV3ZWplLCBGLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1hY0lzYWFjLCBDLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1lbmcsIFMuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gT2xhZGltZWppLCBGLiBBLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IGV0IGFsLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XG5Db21iaW5hdG9yaWFsIGRldmVsb3BtZW50IG9mIG5lYnVsaXplZCBtUk5BIGRlbGl2ZXJ5IGZvcm11bGF0aW9ucyBmb3IgdGhlXG5sdW5nc1xuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIE5hbm90ZWNobm9sb2d5PC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxOTwvYj5cblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAzNjQ8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4zNzU8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDI0XCI+MjAyNDwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMzgvczQxNTY1LTAyMy0wMTU0OC0zXCI+IGRvaTogMTAuMTAzOC9zNDE1NjUtMDIzLTAxNTQ4LTM8L2E+XG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxMC0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTEwXCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFZpbFx1MDBFMC1Hb256XHUwMEUxbGV6LCBNLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFBpbnRlLCBMLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEZyYWRpcXVlLCBSLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENhdXNhLCBFLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEtvb2wsIEguPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gUm9kcmF0LCBNLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1vcmVsbCwgQy4gTS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBldCBhbC48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuSW4gdml0cm8gcGxhdGZvcm0gdG8gbW9kZWwgdGhlIGZ1bmN0aW9uIG9mIGlvbm9jeXRlcyBpbiB0aGUgaHVtYW4gYWlyd2F5XG5lcGl0aGVsaXVtXG48L3NwYW4+LiBcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBSZXNwaXJhdG9yeSBSZXNlYXJjaDwvaT5cblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMjU8L2I+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiZuYnNwOzE4MDwvc3Bhbj4mbmJzcDtcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjRcIj4yMDI0PC90aW1lPikuXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTE4Ni9zMTI5MzEtMDI0LTAyODAwLTdcIj4gZG9pOiAxMC4xMTg2L3MxMjkzMS0wMjQtMDI4MDAtNzwvYT5cbjwvbGk+XG5cbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDExLS0+ICovfVxuPGxpIHR5cGVvZj1cInNjaGVtYTpCb29rXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTExXCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFBhcmlzLCBLLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7R2Vub21lIEVkaXRpbmcgYW5kIEJpb2xvZ2ljYWwgV2VhcG9uczogQXNzZXNzaW5nIHRoZSBSaXNrIG9mIE1pc3VzZS48L3NwYW4+XG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtTcHJpbmdlciBOYXR1cmUgU3dpdHplcmxhbmQgQUc8L2k+XG5cdCZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIjIwMjNcIj4yMDIzPC90aW1lPikuXG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxMi0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTEyXCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFdpY2tpc2VyLCBKLiBLLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XG5UaGUgZGVtb2NyYXRpemF0aW9uIG9mIGJpb2xvZ3k6IGhvdyBDUklTUFIgYW5kIHN5bnRoZXRpYyBiaW9sb2d5IHVzaGVyIGluIG5ld1xuYmlvc2VjdXJpdHkgdGhyZWF0c1xuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gRGVmZW5zZSBIb3Jpem9uczwvaT5cblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gODU8L2I+XG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gMTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE2PC9zcGFuPiZuYnNwO1xuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyMFwiPjIwMjA8L3RpbWU+KS5cbjwvbGk+XG5cbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDEzLS0+ICovfVxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMTNcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ29oZW4sIEouPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRGVzYWksIFQuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcblNlY3VyaXR5IGltcGxpY2F0aW9ucyBvZiBDUklTUFItZW5hYmxlZCBnZW5vbWUgZWRpdGluZzogTmV3IHdlYXBvbnMgb2YgbWFzc1xuZGlzcnVwdGlvbj9cbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEpvdXJuYWwgb2YgQmlvZXRoaWNhbCBJbnF1aXJ5PC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxNjwvYj5cblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAyMTk8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4yMjg8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDE5XCI+MjAxOTwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvczExNjczLTAxOS0wOTkxNC01XCI+IGRvaTogMTAuMTAwNy9zMTE2NzMtMDE5LTA5OTE0LTU8L2E+XG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxNC0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE0XCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IERvdWRuYSwgSi4gQS48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDaGFycGVudGllciwgRS48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuVGhlIHJpc2Ugb2Ygc3ludGhldGljIGJpb2xvZ3k6IE5ldyBiaW9zZWN1cml0eSByaXNrcyBhbmQgcmVndWxhdG9yeVxuY2hhbGxlbmdlc1xuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIFJldmlld3MgR2VuZXRpY3M8L2k+XG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDIxPC9iPlxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDE0NDwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE1Njwvc3Bhbj4mbmJzcDtcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjBcIj4yMDIwPC90aW1lPikuXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTAzOC9zNDE1NzYtMDE5LTAxODItN1wiPiBkb2k6IDEwLjEwMzgvczQxNTc2LTAxOS0wMTgyLTc8L2E+XG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxNS0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE1XCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNod2FydHosIE0uPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ29ua2xpbiwgQi48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuUHVibGljIHBlcmNlcHRpb24gb2YgQ1JJU1BSIGFuZCBnZW5vbWUgZWRpdGluZzogTWlzY29uY2VwdGlvbnMgYW5kIG1lZGlhXG5wb3J0cmF5YWxcbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEpvdXJuYWwgb2YgU2NpZW5jZSBDb21tdW5pY2F0aW9uPC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxOCw8L2I+XG5cdCZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDE5XCI+MjAxOTwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjIyMzIzLzIuMTgwNDAyMDJcIj4gZG9pOiAxMC4yMjMyMy8yLjE4MDQwMjAyPC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTYtLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOkJvb2tcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMTZcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2hhZHdpY2ssIFIuIEYuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtFbmN5Y2xvcGVkaWEgb2YgYXBwbGllZCBldGhpY3MuPC9zcGFuPlxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+Jm5ic3A7QWNhZGVtaWMgUHJlc3M8L2k+XG5cdCZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIjIwMTJcIj4yMDEyPC90aW1lPikuXG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxNy0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE3XCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFJ1YmVpcywgRy48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTdGVnZXIsIEYuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtSaXNrcyBhbmQgYmVuZWZpdHMgb2YgaHVtYW4gZ2VybWxpbmUgZ2Vub21lIGVkaXRpbmc6IEFuIGV0aGljYWwgYW5hbHlzaXM8L3NwYW4+LiBcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBBc2lhbiBCaW9ldGhpY3MgUmV2aWV3PC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxMDwvYj5cblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAxMzM8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4xNDE8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDE4XCI+MjAxODwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvczQxNjQ5LTAxOC0wMDU2LXhcIj4gZG9pOiAxMC4xMDA3L3M0MTY0OS0wMTgtMDA1Ni14PC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTgtLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xOFwiPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbnNhaCwgRS4gTy48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xuRXRoaWNhbCBDaGFsbGVuZ2VzIGFuZCBDb250cm92ZXJzaWVzIGluIHRoZSBQcmFjdGljZSBhbmQgQWR2YW5jZW1lbnQgb2YgR2VuZVxuVGhlcmFweVxuPC9zcGFuPi4gXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gQWR2YW5jZXMgaW4gQ2VsbCBhbmQgR2VuZSBUaGVyYXB5PC9pPlxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAyMDIyPC9iPlxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDE8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj41PC9zcGFuPiZuYnNwO1xuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyMlwiPjIwMjI8L3RpbWU+KS5cblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMTU1LzIwMjIvMTAxNTk5NlwiPiBkb2k6IDEwLjExNTUvMjAyMi8xMDE1OTk2PC9hPlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTktLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOkJvb2tcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMTlcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gUHVnaCwgSi48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0F1dG9ub215LCBSYXRpb25hbGl0eSwgYW5kIENvbnRlbXBvcmFyeSBCaW9ldGhpY3MuPC9zcGFuPlxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+Jm5ic3A7T3hmb3JkIFVuaXZlcnNpdHkgUHJlc3NPeGZvcmQ8L2k+XG5cdCZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIjIwMjBcIj4yMDIwPC90aW1lPikuXG48L2xpPlxuXG57Lyo8IS0tIENpdGF0aW9uIG51bSAyMC0tPiAqL31cbjxsaSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0yMFwiPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBHc3RyYXVudGhhbGVyLCBHLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IExpbmRsLCBULjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7QWxsZ2VtZWluZSBBc3Bla3RlIGRlciBQcmltXHUwMEU0cmt1bHR1ci48L3NwYW4+XG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtTcHJpbmdlcjwvaT5cblx0Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiMjAxM1wiPjIwMTM8L3RpbWU+KS5cbjwvbGk+XG5cbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDIxLS0+ICovfVxuPGxpIHR5cGVvZj1cInNjaGVtYTpCb29rXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTIxXCI+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFRoaWVsZSwgRi48L3NwYW4+XG5cdDwvc3Bhbj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0ludGVybmF0aW9uYWwgRW5jeWNsb3BlZGlhIG9mIHRoZSBTb2NpYWwgJiBCZWhhdmlvcmFsIFNjaWVuY2VzLjwvc3Bhbj5cblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiZuYnNwO0Vsc2V2aWVyPC9pPlxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIyMDAxXCI+MjAwMTwvdGltZT4pLlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMjItLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOkJvb2tcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMjJcIj5cblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gR2V0aG1hbm4sIEMuPC9zcGFuPlxuXHQ8L3NwYW4+XG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtSZXNlYXJjaDogRXRoaWNhbCBBc3BlY3RzIG9mIExvbmctdGVybSBSZXNwb25zaWJpbGl0aWVzLjwvc3Bhbj5cblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiZuYnNwO0Vsc2V2aWVyPC9pPlxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIyMDAxXCI+MjAwMTwvdGltZT4pLlxuPC9saT5cblxuey8qPCEtLSBDaXRhdGlvbiBudW0gMjMtLT4gKi99XG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0yM1wiPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBLaWFuaSwgQS4gSy48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBQaGVieSwgRC48L3NwYW4+XG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBIZW5laGFuLCBHLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEJyb3duLCBSLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNpZXZpbmcsIFAuPC9zcGFuPlxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU3lrb3JhLCBQLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1hcmtzLCBSLjwvc3Bhbj5cblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IGV0IGFsLjwvc3Bhbj5cblx0PC9zcGFuPlxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7RXRoaWNhbCBjb25zaWRlcmF0aW9ucyByZWdhcmRpbmcgYW5pbWFsIGV4cGVyaW1lbnRhdGlvbjwvc3Bhbj4uIFxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEpvdXJuYWwgb2YgUHJldmVudGl2ZSBNZWRpY2luZSBhbmQgSHlnaWVuZTwvaT5cblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gNjM8L2I+XG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gRTI1NTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPkUyNjY8L3NwYW4+Jm5ic3A7XG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIyXCI+MjAyMjwvdGltZT4pLlxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjE1MTY3LzI0MjEtNDI0OC9qcG1oMjAyMi42My4yUzMuMjc2OFwiPiBkb2k6IDEwLjE1MTY3LzI0MjEtNDI0OC9qcG1oMjAyMi42My4yUzMuMjc2ODwvYT5cbjwvbGk+XG5cbjwvb2w+XG4gICAgICA8L1NlY3Rpb24+XG4gICAgPC8+XG4gICk7XG59XG4iLCAiaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9RdW90ZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhQT3ZlcnZpZXcoKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxzZWN0aW9uIGlkPVwiT3ZlcnZpZXdIXCI+XG4gICAgICAgICAgICAgICAgPGgyIGlkPVwiT3ZlcnZpZXdcIj48L2gyPlxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiaHAtcXVvdGVcIj48QmxvY2tRdW90ZUJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiSHVtYW4gUHJhY3RpY2VzIGlzIHRoZSBzdHVkeSBvZiBob3cgeW91ciB3b3JrIGFmZmVjdHMgdGhlIHdvcmxkLCBhbmQgaG93IHRoZSB3b3JsZCBhZmZlY3RzIHlvdXIgd29yay5cIlxuICAgICAgICAgICAgICAgIGNpdGU9XCItIFBldGVyIENhcnIsIERpcmVjdG9yIG9mIEp1ZGdpbmdcIlxuICAgICAgICAgICAgICAgIC8+IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9vdmVydmlldy1maW5hbC0yLXNtYWxsLndlYnBcIiBhbHQ9XCJTdGFrZWhvbGRlciBPdmVydmlld1wiPjwvaW1nPlxuXG4gICAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgIClcbn0iLCAiaW1wb3J0IHsgQnV0dG9uT25lIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xuaW1wb3J0IHsgSDUgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvcHJlY3lzZVwiO1xuaW1wb3J0IHsgIEJsb2NrUXVvdGVCIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvUXVvdGVzXCI7XG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gSFBJbnRyb2R1Y3Rpb24oKXtcbiAgICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgICByZXR1cm4oXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiSW50cm9kdWN0aW9uXCIgaWQ9XCJJbnRyb2R1Y3Rpb25cIj5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiLSBDb25uZWN0aW5nIG91ciBwcm9qZWN0IHRvIHJlYWwgbGlmZVwiLz5cbiAgICAgICAgICAgIDxCbG9ja1F1b3RlQiB0ZXh0PVwiU2NpZW5jZSBhbmQgZXZlcnlkYXkgbGlmZSBjYW5ub3QgYW5kIHNob3VsZCBub3QgYmUgc2VwYXJhdGVkLlwiIGNpdGU9XCJSb3NhbGluZCBGcmFua2xpblwiLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPXt7bWFyZ2luVG9wOiBcIjV2aFwiLCBtYXJnaW5Cb3R0b206IFwiMXZoXCJ9fT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSBvcGVuY2xhc3M9XCJpbnRyby1jeWNsZXRhYlwiIHRleHQ9XCJPdXIgVW5kZXJzdGFuZGluZyBvZiBIUFwiIG9wZW49XCJ1bmRlcnN0YW5kaW5nXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImludHJvLWN5Y2xldGFiXCIgdGV4dD1cIk91ciBNaXNzaW9uICYgVmlzaW9uXCIgb3Blbj1cIm1pc3Npb25cIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwiaW50cm8tY3ljbGV0YWJcIiB0ZXh0PVwiT3VyIEFwcHJvYWNoXCIgb3Blbj1cImFwcHJvYWNoXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImludHJvLWN5Y2xldGFiXCIgdGV4dD1cIk91ciBUYXJnZXQgR3JvdXBzXCIgb3Blbj1cInRhcmdldHNcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGludHJvLWN5Y2xldGFiXCIgaWQ9XCJ1bmRlcnN0YW5kaW5nXCIgc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cbiAgICAgICAgICAgICAgICAgPHA+VGhpcyB5ZWFyLCB3ZSBhdCBpR0VNIEJpZWxlZmVsZC1DZUJpVGVjIGhhdmUgY29uc2Npb3VzbHkgY2hvc2VuIGEgPGI+aHVtYW4tY2VudGVyZWQgcHJvamVjdCBkZXNpZ248L2I+LiBBdCB0aGUgaGVhcnQgb2Ygb3VyIGlHRU0gcHJvamVjdCBpcyBcbiAgICAgICAgICAgICAgICAgICAgb25lIGtleSBwaWxsYXI6IDxiPkh1bWFuIFByYWN0aWNlPC9iPi4gT3VyIGdvYWwgaXMgdG8gdW5kZXJzdGFuZCB0aGUgaW1wYWN0IG9mIG91ciBwcm9qZWN0IG9uIHNvY2lldHksIHRoZSBzY2llbnRpZmljIGNvbW11bml0eSBhbmQgdGhlIHdvcmxkIFxuICAgICAgICAgICAgICAgICAgICBhcyB3aG9sZS4gVGhpcyBpcyBub3QganVzdCBhYm91dCB0aGUgdGVjaG5pY2FsIGVmZmVjdGl2ZW5lc3Mgb2Ygb3VyIHBhcnRzLCBidXQgYWxzbyBhYm91dCBob3cgdGhlIHNvbHV0aW9uIGlzIGVtYnJhY2VkIGluIGV2ZXJ5ZGF5IFxuICAgICAgICAgICAgICAgICAgICBwcmFjdGljZSwgYW5kIHRoZSBwb3RlbnRpYWwgbG9uZy10ZXJtIGltcGFjdCBpdCBjb3VsZCBoYXZlIGZvciBjeXN0aWMgZmlicm9zaXMgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIGFsbCBvdmVyIHRoZSB3b3JsZC5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPldpdGggb3VyIGh1bWFuLWNlbnRlcmVkIGFwcHJvYWNoLCB3ZSBhaW0gdG8gYWRkcmVzcyBmdW5kYW1lbnRhbCBpR0VNIEh1bWFuIFByYWN0aWNlIHF1ZXN0aW9ucyBhbmQgYmV5b25kOlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT4gPGI+SG93IGRvZXMgb3VyIHByb2plY3QgYWZmZWN0IHRoZSB3b3JsZCBhcm91bmQgdXM/PC9iPjwvcD5cbiAgICAgICAgICAgIDxwIHN0eWxlPXt7dGV4dEFsaWduOiBcImNlbnRlclwifX0+IDxiPkhvdyBkb2VzIHRoZSB3b3JsZCBhcm91bmQgdXMgaW5mbHVlbmNlIG91ciBwcm9qZWN0PyAgICAgICAgICAgIDwvYj48L3A+XG4gICAgICAgICAgICA8cD5Gcm9tIHRoZSB2ZXJ5IGJlZ2lubmluZywgaXQgd2FzIG91ciBwcmlvcml0eSB0byBpZGVudGlmeSB2YXJpb3VzIHN0YWtlaG9sZGVycyBhbmQgbWVldCBwZW9wbGUgYWZmZWN0ZWQgYnkgY3lzdGljIGZpYnJvc2lzIGVhcmx5IG9uIHRvIDxiPmFjdGl2ZWx5IGludm9sdmU8L2I+IHRoZW0gdGhyb3VnaG91dCB0aGUgcGxhbm5pbmcgYW5kIGRldmVsb3BtZW50IHByb2Nlc3MuIFRoaXMgY29sbGFib3JhdGl2ZSBhcHByb2FjaCBhbGxvd2VkIHVzIHRvIGVuc3VyZSB0aGF0IG91ciBwcm9qZWN0IFxuICAgICAgICAgICAgICAgIGFkZHJlc3NlcyByZWFsIG5lZWRzIGFuZCBjb250cmlidXRlcyB0byBzb2x1dGlvbnMgZm9yIGFzIG1hbnkgZGlmZmVyZW50IHBlb3BsZSBhcyBwb3NzaWJsZS4gV2l0aG91dCB0aGUgY3JpdGljYWwgYWR2aWNlLCB2YXJpZWQgcGVyc3BlY3RpdmVzIFxuICAgICAgICAgICAgICAgIGFuZCBpbnB1dCBmcm9tIG91ciBzdGFrZWhvbGRlcnMsIGl0IHdvdWxkIGhhdmUgYmVlbiBpbXBvc3NpYmxlIHRvIGlkZW50aWZ5IGFuZCByZWZsZWN0IG9uIGFsbCBhc3BlY3RzIG9mIG91ciBwcm9qZWN0LiBXZSBtYWRlIGV2ZXJ5IFxuICAgICAgICAgICAgICAgIGVmZm9ydCB0byA8Yj5kZWVwbHkgdW5kZXJzdGFuZDwvYj4gdGhlaXIgdmFsdWVzIGFuZCBiYWNrZ3JvdW5kcywgYWxsb3dpbmcgdXMgdG8gaW50ZWdyYXRlIHRoZWlyIGZlZWRiYWNrIGludG8gb3VyIHNvbHV0aW9ucy5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaW50cm8tY3ljbGV0YWJcIiBpZD1cIm1pc3Npb25cIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPHA+V2UgdmlldyBIdW1hbiBQcmFjdGljZSBhcyBhbiBvcHBvcnR1bml0eSB0byA8Yj5nbyBiZXlvbmQgcHJhY3RpY2FsIGxhYiB3b3JrIGFuZCB0cmFkaXRpb25hbCBzY2llbmNlPC9iPiBhbmQgdG8gbGVhcm4gYWJvdXQgXG4gICAgICAgICAgICAgICAgICAgIHRoZSBuZWVkcyBvZiBwZW9wbGUgYWZmZWN0ZWQgYnkgY3lzdGljIGZpYnJvc2lzLiBJdFx1MjAxOXMgYSBjaGFuY2UgZm9yIHVzIHRvIGNyZWF0aXZlbHkgZW5nYWdlIHdpdGggZGlmZmVyZW50IGFzcGVjdHMgb2Ygb3VyIHByb2plY3QgXG4gICAgICAgICAgICAgICAgICAgIHdoaWxlIGRldmVsb3BpbmcgYW4gYXdhcmVuZXNzIG9mIHRoZSByZXNwb25zaWJpbGl0aWVzIHRoYXQgY29tZSB3aXRoIGl0LiBcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgQXMgcGFydCBvZiBvdXIgPFByZUN5c2UvPiBwcm9qZWN0LCB3ZSBwZXJmb3JtZWQgaW50ZW5zaXZlIGJyYWluc3Rvcm1pbmcgc2Vzc2lvbnMgYW5kIGV4cGVydCBjb25zdWx0YXRpb25zLiBXZSBjb25kdWN0ZWQgY29tcHJlaGVuc2l2ZSAgXG4gICAgICAgICAgICAgICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJvdXItc3VydmV5cy1vbi1jeXN0aWMtZmlicm9zaXMtYW5kLWdlbmUtdGhlcmFweVwiLCBcIi9odW1hbi1wcmFjdGljZXNcIil9PnN1cnZleXM8L2E+IGFtb25nIHRoZSBwdWJsaWMgYW5kIHBlb3BsZSB3aXRoIGN5c3RpYyBmaWJyb3NpcyBhbmQgdGhlaXIgcmVsYXRpdmVzLiBXZSBmb2N1c2VkIG9uIGNyaXRpY2FsIGFzcGVjdHMgc3VjaCBhcyB0aGUgPGI+bmVlZHMgb2Ygb3VyIFxuICAgICAgICAgICAgICAgIHRhcmdldCBncm91cHMsIHNhZmV0eSwgZXRoaWNzLCBkZXNpZ24sIGltcGxlbWVudGF0aW9uLCBhbmQgYnVzaW5lc3M8L2I+IFx1MjAxNCBlYWNoIGd1aWRlZCBieSB0aGUgY29yZSB2YWx1ZXMgb2Ygb3VyIHRlYW0uIEJhc2VkIG9uIHRoZXNlIGludGVyYWN0aW9ucyBcbiAgICAgICAgICAgICAgICBhbmQgdGhlIHJlY29tbWVuZGF0aW9ucyBvZiB0aGUgSHVtYW4gUHJhY3RpY2UgY29tbWl0dGVlLCB3ZSBoYXZlIGRldmVsb3BlZCBhbiBvcHRpbWFsIHN0cmF0ZWd5IGZvciBvdXIgcHJvamVjdCwgZW5zdXJpbmcgdGhhdCBvdXIgd29yayBpcyBub3QgXG4gICAgICAgICAgICAgICAgb25seSBpbm5vdmF0aXZlIGJ1dCBhbHNvIG1pbmRmdWwgb2YgaXRzIGJyb2FkZXIgaW1wYWN0IG9uIHNvY2lldHkuXG4gICAgICAgICAgICAgICAgey8qICAqL31cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaW50cm8tY3ljbGV0YWJcIiBpZD1cImFwcHJvYWNoXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgIDxwPkl0IHdhcyBpbXBvcnRhbnQgdG8gdXMgYXMgYSB0ZWFtIHRvIG5vdCBvbmx5IG9mZmVyIHRlY2huaWNhbCBzb2x1dGlvbnMsIGJ1dCB0byBzaG93IHRoYXQgb3VyIHByb2plY3QgY2FuIGNvbnRyaWJ1dGUgdG8gdGhlIGxhcmdlciBjb250ZXh0IG9mIG9uZ29pbmcgaW5pdGlhdGl2ZXMgYW5kIG1vdmVtZW50cyB0byBvcHRpbWl6ZSBoZWFsdGggY2FyZS4gV2Ugd2FudGVkIHRvIHJlYWxseSB1bmRlcnN0YW5kIHRoZSBmZWVkYmFjayBhbmQgaW5zaWdodHMgb2YgdGhlIHN0YWtlaG9sZGVycyB0byBnYWluIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgaG93IG91ciBwcm9qZWN0IGZpdHMgaW50byB0aGUgb3ZlcmFsbCBwaWN0dXJlIG9mIGxpdmluZyB3aXRoIGN5c3RpYyBmaWJyb3NpcywgdGhlIGN1cnJlbnQgc3RhdGUgb2YgcmVzZWFyY2ggYW5kIGhvdyBpdCBjYW4gYmUgdXNlZCB0byByZWR1Y2UgdGhlIGhlYWx0aCBjYXJlIGdhcC5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+T3VyIHN0cmF0ZWd5IGluY2x1ZGVzOjwvcD5cbiAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgPGxpPklkZW50aWZ5aW5nIGtleSB0YXJnZXQgZ3JvdXBzPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+RXN0YWJsaXNoaW5nIG1lYW5pbmdmdWwgYW5kIGxhc3RpbmcgY29tbXVuaWNhdGlvbiB3aXRoIHN0YWtlaG9sZGVyczwvbGk+XG4gICAgICAgICAgICAgICAgPGxpPkVmZmVjdGl2ZWx5IGVuZ2FnaW5nIHdpdGggdGhlIGRpdmVyc2UgYmFja2dyb3VuZHMgb2YgdGhvc2UgaW52b2x2ZWQ8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5VbmRlcnN0YW5kIHRoZSBldGhpY2FsLCBzb2NpYWwgYW5kIHNjaWVudGlmaWMgdmFsdWVzIHRoYXQgaW5zcGlyZWQgb3VyIHByb2plY3Q8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5JbnRlZ3JhdGluZyBmZWVkYmFjayBhbmQgYWRhcHRpbmcgb3VyIGFwcHJvYWNoIHRvIGFsaWduIHdpdGggc3Rha2Vob2xkZXIgZ29hbHM8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5EZXNpZ25pbmcgYW5kIGluY29ycG9yYXRpbmcgcmVwcmVzZW50YXRpdmUgc3VydmV5czwvbGk+XG4gICAgICAgICAgICAgICAgPGxpPlJlZmxlY3Qgb24gaG93IHRoZXNlIHZhbHVlcyBoYXZlIGJlZW4gaW5jb3Jwb3JhdGVkIGludG8gb3VyIHByb2plY3Q8L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgPHA+V2l0aCB0aGlzIGFwcHJvYWNoIGFuZCB0aGUgc3VwcG9ydCBvZiBvdXIgc3Rha2Vob2xkZXJzLCBvdXIgdWx0aW1hdGUgZ29hbHMgYXJlIHRvOjwvcD5cbiAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgPGxpPkltcHJvdmUgY2FyZSBmb3IgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+T3B0aW1pemUgdGhlIGF2YWlsYWJpbGl0eSBvZiBlc3NlbnRpYWwgbWVkaWNhdGlvbnM8L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaW50cm8tY3ljbGV0YWJcIiBpZD1cInRhcmdldHNcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPHA+T3VyIHRhcmdldCBncm91cHMgYXJlIGNvbXBvc2VkIG9mIDxiPmFjYWRlbWljIGFuZCBjbGluaWNhbCBleHBlcnRzPC9iPiB0byBidWlsZCBhIGJyaWRnZSBiZXR3ZWVuIHJlc2VhcmNoIGFuZCBwcmFjdGljYWwgYXBwbGljYXRpb24uIFxuICAgICAgICAgICAgICAgICAgICBJbiBhZGRpdGlvbiwgZW5nYWdpbmcgd2l0aCBDRiA8Yj5wYXRpZW50czwvYj4gYWNyb3NzIGRpZmZlcmVudCBhZ2UgZ3JvdXBzIGFuZCBjb3VudHJpZXMgYW5kIHRoZWlyIHJlbGF0aXZlcyBsZWFkcyB0byBhbiBhd2FyZW5lc3Mgb2YgXG4gICAgICAgICAgICAgICAgICAgIHRoZSBzcGVjaWFsIG5lZWRzIGFuZCBkZW1hbmRzIG9mIG91ciBwcm9qZWN0IGFuZCB0byBhbiB1bmRlcnN0YW5kaW5nIG9mIHRoZSBsaW1pdGF0aW9ucyBhbmQgY2hhbGxlbmdlcyBpbiBldmVyeWRheSBDRiBsaWZlLiBUaGUgXG4gICAgICAgICAgICAgICAgICAgIGludGVncmF0aW9uIG9mIHJlZ3VsYXRvcnkgZXRoaWNzIHNlcnZlcyB0byBldmFsdWF0ZSBob3cgb3VyIHByb2plY3QgbWlnaHQgYmUgaW1wbGVtZW50ZWQgaW4gR2VybWFuIGFuZCBpbnRlcm5hdGlvbmFsIDxiPmdvdmVybm1lbnQ8L2I+IFxuICAgICAgICAgICAgICAgICAgICByZWd1bGF0aW9ucyBmb3IgZ2VuZSB0aGVyYXBldXRpY3MuIFRoZSBleGNoYW5nZSB3aXRoIDxiPmNvbXBhbmllczwvYj4gY29udHJpYnV0ZXMgdG8gdW5kZXJzdGFuZGluZyB0aGUgY2hhbmNlcyBhbmQgY2hhbGxlbmdlcyBpbiBidXNpbmVzcyBvZiBcbiAgICAgICAgICAgICAgICAgICAgZXN0YWJsaXNoaW5nIGEgc3RhcnQtdXAgYW5kIHdoYXQgaXQgdGFrZXMgdG8gZ2V0IG91ciBpZGVhIG9uIHRoZSBtYXJrZXQgZm9yIHJlYWwgbGlmZSBhcHBsaWNhdGlvbi4gVGhlIGNvbnRpbnVvdXMgZXhjaGFuZ2UgYmV0d2VlbiB0aGUgXG4gICAgICAgICAgICAgICAgICAgIGRpZmZlcmVudCBncm91cHMgY29udHJpYnV0ZXMgc2lnbmlmaWNhbnRseSB0byB0aGUgc3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHJvamVjdC4gRmlyc3QtaGFuZCBpbmZvcm1hdGlvbiBmcm9tIG91ciB0YXJnZXQgZ3JvdXBzIFxuICAgICAgICAgICAgICAgICAgICBhbmQgdGhlIG1hdGNoaW5nIGFuZCBtZXJnaW5nIG9mIHRoZSBpbmZvcm1hdGlvbiBpcyB0aGVyZWZvcmUgZXNzZW50aWFsIGZvciBkZWZpbmluZyBhbmQgYWNoaWV2aW5nIG91ciBnb2Fscy5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgKVxufSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpvc2h1YUludGVydmlld1NvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG5gIFxuXG5AYXJ0aWNsZXtlaW5zLCBcblxudGl0bGUgPSB7UHJpbWUgZWRpdGluZyBmdW5jdGlvbmFsbHkgY29ycmVjdHMgY3lzdGljIGZpYnJvc2lzLWNhdXNpbmcgQ0ZUUiBtdXRhdGlvbnMgaW4gaHVtYW4gb3JnYW5vaWRzIGFuZCBhaXJ3YXkgZXBpdGhlbGlhbCBjZWxsc30sIFxuXG5qb3VybmFsID0ge0NlbGwgUmVwb3J0cyBNZWRpY2luZX0sIFxuXG52b2x1bWUgPSB7NX0sIFxuXG5udW1iZXIgPSB7NX0sIFxuXG5wYWdlcyA9IHsxMDE1NDR9LCBcblxueWVhciA9IHsyMDI0fSwgXG5cbmlzc24gPSB7MjY2Ni0zNzkxfSwgXG5cbmRvaSA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLnhjcm0uMjAyNC4xMDE1NDR9LCBcblxudXJsID0ge2h0dHBzOi8vd3d3LnNjaWVuY2VkaXJlY3QuY29tL3NjaWVuY2UvYXJ0aWNsZS9waWkvUzI2NjYzNzkxMjQwMDIzNDl9LCBcblxuYXV0aG9yID0ge01hdHRpanMgQnVsY2FlbiBhbmQgUGhcdTAwRTlsaW5lIEtvcnRsZXZlbiBhbmQgUm9uYWxkIEIuIExpdSBhbmQgR2l1bGlhIE1hdWxlIGFuZCBFbGlzZSBEcmVhbm8gYW5kIE1haXJlYWQgS2VsbHkgYW5kIE1hcmpvbGVpbiBNLiBFbnNpbmNrIGFuZCBTYW0gVGhpZXJpZSBhbmQgTWF4aW1lIFNtaXRzIGFuZCBNYXR0ZW8gQ2ljaWFuaSBhbmQgQXVyZWxpZSBIYXR0b24gYW5kIEJlbm9pdCBDaGV2YWxpZXIgYW5kIEFuYWJlbGEgUy4gUmFtYWxobyBhbmQgWGF2aWVyIHtDYXNhZGV2YWxsIGkgU29sdmFzfSBhbmQgWmVnZXIgRGVieXNlciBhbmQgRnJhblx1MDBFN29pcyBWZXJtZXVsZW4gYW5kIFJpayBHaWpzYmVycyBhbmQgSXNhYmVsbGUgU2VybWV0LUdhdWRlbHVzIGFuZCBBbm5hIENlcmVzZXRvIGFuZCBNYXJpYW5uZSBTLiBDYXJsb259LFxuXG59YCxgXG5AYXJ0aWNsZXt6ZXdpLCBcblxuYXV0aG9yID0ge1RlZXJhdGFrdWxwaXNhcm4sIEphbWFyZWUgYW5kIEtvc3V3b24sIFBlbnNyaSBhbmQgU3JpbmFrYXJpbiwgSmlyYXBvcm4gYW5kIFBhbnRob25ndmlyaXlha3VsLCBDaGFybmNoYWkgYW5kIFN1dHJhLCBTdW1pdHJ9LCBcblxueWVhciA9IHsyMDA2fSwgXG5cbm1vbnRoID0gezExfSwgXG5cbnBhZ2VzID0gezE3NTYtNjF9LCBcblxudGl0bGUgPSB7Q3lzdGljIGZpYnJvc2lzIGluIHRocmVlIG5vcnRoZWFzdCBUaGFpIGluZmFudHMgaXMgQ0YgcmVhbGx5IGEgcmFyZSBkaXNlYXNlIGluIHRoZSBUaGFpIHBvcHVsYXRpb24/fSwgXG5cbnZvbHVtZSA9IHs4OX0sIFxuXG5qb3VybmFsID0ge0pvdXJuYWwgb2YgdGhlIE1lZGljYWwgQXNzb2NpYXRpb24gb2YgVGhhaWxhbmQgPSBDaG90bWFpaGV0IHRoYW5ncGhhZXR9IFxuXG59IGAsYFxuXG5AYXJ0aWNsZXtkcmVpLCBcblxuYXV0aG9yID0ge0FobWVkLCBTaGFraWwgYW5kIENoZW9rLCBHYXJ5IGFuZCBHb2gsIEFubmVFIGFuZCBIYW4sIEF5ZSBhbmQgSG9uZywgU0ogYW5kIEluZGF3YXRpLCBXYWh5dW5pIGFuZCBLYWJpciwgQVIgYW5kIEthYnJhLCBTdXNoaWwgYW5kIEthbWFsYXBvcm4sIEhhcnV0YWkgYW5kIEtpbSwgSHl1bmdZb3VuZyBhbmQgS3VubGluZywgU2hlbiBhbmQgTG9jaGluZGFyYXQsIFNvcmFzYWsgYW5kIE1vc2xlaGksIE1vaGFtbWFkQXNoa2FuIGFuZCBOYXRoYW4sIEFubmFNYXJpZSBhbmQgTmcsIERhbmllbCBhbmQgUGh1bmcsIE5ndXllbk5nIGFuZCBTaW5naCwgViBhbmQgVGFrYXNlLCBNYXNhdG8gYW5kIFRyaWFzaWgsIFJpbmEgYW5kIERhaSwgWmVuLUtvbmd9LCBcblxueWVhciA9IHsyMDIwfSwgXG5cbm1vbnRoID0gezAxfSwgXG5cbnBhZ2VzID0gezh9LCBcblxudGl0bGUgPSB7Q3lzdGljIGZpYnJvc2lzIGluIGFzaWF9LCBcblxudm9sdW1lID0gezR9LCBcblxuam91cm5hbCA9IHtQZWRpYXRyaWMgUmVzcGlyb2xvZ3kgYW5kIENyaXRpY2FsIENhcmUgTWVkaWNpbmV9LCBcblxuZG9pID0gezEwLjQxMDMvcHJjbS5wcmNtXzVfMjB9IFxuXG59IGAsYFxuXG5AYXJ0aWNsZXt2aWVyLCBcblxuYXV0aG9yID0ge0JvYmJvLCBLaGFkaWphdGFidWJha2FyIGFuZCBBaG1hZCwgVW1hciBhbmQgQ2hhdSwgRGUtTWluZyBhbmQgTm9yZGluLCBOb3JzaGFyaXphIGFuZCBBYmR1bGxhaCwgU3lhaHJpbH0sIFxuXG55ZWFyID0gezIwMjN9LCBcblxubW9udGggPSB7MDV9LCBcblxucGFnZXMgPSB7MTAzNjg1fSwgXG5cbnRpdGxlID0ge0EgY29tcHJlaGVuc2l2ZSByZXZpZXcgb2YgQ3lzdGljIEZpYnJvc2lzIGluIEFmcmljYSBhbmQgQXNpYX0sIFxuXG52b2x1bWUgPSB7MzB9LCBcblxuam91cm5hbCA9IHtTYXVkaSBKb3VybmFsIG9mIEJpb2xvZ2ljYWwgU2NpZW5jZXN9LCBcblxuZG9pID0gezEwLjEwMTYvai5zamJzLjIwMjMuMTAzNjg1fSBcblxufSBgXG5dIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTWF0dGlqc0ludGVydmlld1NvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG4gICAgYFxuICAgIEBhcnRpY2xle0J1bGNhZW5fS29ydGxldmVuX0xpdV9NYXVsZV9EcmVhbm9fS2VsbHlfRW5zaW5ja19UaGllcmllX1NtaXRzX0NpY2lhbmlfZXQsXG5cdHRpdGxlICAgICAgICA9IHtcblx0XHRQcmltZSBlZGl0aW5nIGZ1bmN0aW9uYWxseSBjb3JyZWN0cyBjeXN0aWMgZmlicm9zaXMtY2F1c2luZyBDRlRSIG11dGF0aW9ucyBpblxuXHRcdGh1bWFuIG9yZ2Fub2lkcyBhbmQgYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHNcblx0fSxcblx0YXV0aG9yICAgICAgID0ge1xuXHRcdEJ1bGNhZW4sIE1hdHRpanMgYW5kIEtvcnRsZXZlbiwgUGhcdTAwRTlsaW5lIGFuZCBMaXUsIFJvbmFsZCBCLiBhbmQgTWF1bGUsIEdpdWxpYVxuXHRcdGFuZCBEcmVhbm8sIEVsaXNlIGFuZCBLZWxseSwgTWFpcmVhZCBhbmQgRW5zaW5jaywgTWFyam9sZWluIE0uIGFuZCBUaGllcmllLFxuXHRcdFNhbSBhbmQgU21pdHMsIE1heGltZSBhbmQgQ2ljaWFuaSwgTWF0dGVvIGFuZCBIYXR0b24sIEF1cmVsaWUgYW5kIENoZXZhbGllcixcblx0XHRCZW5vaXQgYW5kIFJhbWFsaG8sIEFuYWJlbGEgUy4gYW5kIENhc2FkZXZhbGwgaSBTb2x2YXMsIFhhdmllciBhbmQgRGVieXNlcixcblx0XHRaZWdlciBhbmQgVmVybWV1bGVuLCBGcmFuXHUwMEU3b2lzIGFuZCBHaWpzYmVycywgUmlrIGFuZCBTZXJtZXQtR2F1ZGVsdXMsIElzYWJlbGxlXG5cdFx0YW5kIENlcmVzZXRvLCBBbm5hIGFuZCBDYXJsb24sIE1hcmlhbm5lIFMuXG5cdH0sXG5cdHllYXIgICAgICAgICA9IDIwMjQsXG5cdG1vbnRoICAgICAgICA9IG1heSxcblx0am91cm5hbCAgICAgID0ge0NlbGwgUmVwb3J0cyBNZWRpY2luZX0sXG5cdHBhZ2VzICAgICAgICA9IDEwMTU0NCxcblx0ZG9pICAgICAgICAgID0gezEwLjEwMTYvai54Y3JtLjIwMjQuMTAxNTQ0fSxcblx0aXNzbiAgICAgICAgID0gezI2NjYtMzc5MX0sXG5cdGFic3RyYWN0bm90ZSA9IHtcblx0XHRQcmltZSBlZGl0aW5nIGlzIGEgcmVjZW50LCBDUklTUFItZGVyaXZlZCBnZW5vbWUgZWRpdGluZyB0ZWNobm9sb2d5IGNhcGFibGVcblx0XHRvZiBpbnRyb2R1Y2luZyBwcmVjaXNlIG51Y2xlb3RpZGUgc3Vic3RpdHV0aW9ucywgaW5zZXJ0aW9ucywgYW5kIGRlbGV0aW9ucy5cblx0XHRIZXJlLCB3ZSBwcmVzZW50IHByaW1lIGVkaXRpbmcgYXBwcm9hY2hlcyB0byBjb3JyZWN0IEwyMjdSLSBhbmQgTjEzMDNLLUNGVFIsXG5cdFx0dHdvIG11dGF0aW9ucyB0aGF0IGNhdXNlIGN5c3RpYyBmaWJyb3NpcyBhbmQgYXJlIG5vdCBlbGlnaWJsZSBmb3IgY3VycmVudFxuXHRcdG1hcmtldC1hcHByb3ZlZCBtb2R1bGF0b3IgdGhlcmFwaWVzLiBXZSBzaG93IHRoYXQsIHVwb24gRE5BIGNvcnJlY3Rpb24gb2YgdGhlXG5cdFx0Q0ZUUiBnZW5lLCB0aGUgY29tcGxleCBnbHljb3N5bGF0aW9uLCBsb2NhbGl6YXRpb24sIGFuZCwgbW9zdCBpbXBvcnRhbnRseSxcblx0XHRmdW5jdGlvbiBvZiB0aGUgQ0ZUUiBwcm90ZWluIGFyZSByZXN0b3JlZCBpbiBIRUsyOTNUIGFuZCAxNkhCRSBjZWxsIGxpbmVzLlxuXHRcdFRoZXNlIGZpbmRpbmdzIHdlcmUgc3Vic2VxdWVudGx5IHZhbGlkYXRlZCBpbiBwYXRpZW50LWRlcml2ZWQgcmVjdGFsXG5cdFx0b3JnYW5vaWRzIGFuZCBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzLiBUaHJvdWdoIGFuYWx5c2lzIG9mIHByZWRpY3RlZCBhbmRcblx0XHRleHBlcmltZW50YWxseSBpZGVudGlmaWVkIGNhbmRpZGF0ZSBvZmYtdGFyZ2V0IHNpdGVzIGluIHByaW1hcnkgc3RlbSBjZWxscyxcblx0XHR3ZSBjb25maXJtIHByZXZpb3VzIHJlcG9ydHMgb24gdGhlIGhpZ2ggcHJpbWUgZWRpdG9yIChQRSkgc3BlY2lmaWNpdHkgYW5kIGl0c1xuXHRcdHBvdGVudGlhbCBmb3IgYSBjdXJhdGl2ZSBDRiBnZW5lIGVkaXRpbmcgdGhlcmFweS4gVG8gZmFjaWxpdGF0ZSBmdXR1cmVcblx0XHRzY3JlZW5pbmcgb2YgZ2VuZXRpYyBzdHJhdGVnaWVzIGluIGEgdHJhbnNsYXRpb25hbCBDRiBtb2RlbCwgYSBtYWNoaW5lXG5cdFx0bGVhcm5pbmcgYWxnb3JpdGhtIHdhcyBkZXZlbG9wZWQgZm9yIGR5bmFtaWMgcXVhbnRpZmljYXRpb24gb2YgQ0ZUUiBmdW5jdGlvblxuXHRcdGluIG9yZ2Fub2lkcyAoREVURUNUT1I6IFx1MjAxQ2RldGVjdGlvbiBvZiB0YXJnZXRlZCBlZGl0aW5nIG9mIENGVFIgaW5cblx0XHRvcmdhbm9pZHNcdTIwMUQpLlxuXHR9XG59XG5cbiAgICBgXG5cbl0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBMaXVJbnRlcnZpZXdTb3VyY2VzKCl7XG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbn1cblxuXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xuYCBcbkBhcnRpY2xle2VpbnMsXG50aXRsZSA9IHtTZWFyY2gtYW5kLXJlcGxhY2UgZ2Vub21lIGVkaXRpbmcgd2l0aG91dCBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkF9LCBcbnZvbHVtZSA9IHs1NzZ9LCBcbnJpZ2h0cyA9IHsyMDE5IFRoZSBBdXRob3IocyksIHVuZGVyIGV4Y2x1c2l2ZSBsaWNlbmNlIHRvIFNwcmluZ2VyIE5hdHVyZSBMaW1pdGVkfSwgXG5JU1NOID0gezE0NzYtNDY4N30sIFxuRE9JID0gezEwLjEwMzgvczQxNTg2LTAxOS0xNzExLTR9LCBcbmFic3RyYWN0Tm90ZSA9IHtNb3N0IGdlbmV0aWMgdmFyaWFudHMgdGhhdCBjb250cmlidXRlIHRvIGRpc2Vhc2UgYXJlIGNoYWxsZW5naW5nIHRvIGNvcnJlY3QgZWZmaWNpZW50bHkgYW5kIHdpdGhvdXQgZXhjZXNzIGJ5cHJvZHVjdHMuIEhlcmUgd2UgZGVzY3JpYmUgcHJpbWUgZWRpdGluZywgYSB2ZXJzYXRpbGUgYW5kIHByZWNpc2UgZ2Vub21lIGVkaXRpbmcgbWV0aG9kIHRoYXQgZGlyZWN0bHkgd3JpdGVzIG5ldyBnZW5ldGljIGluZm9ybWF0aW9uIGludG8gYSBzcGVjaWZpZWQgRE5BIHNpdGUgdXNpbmcgYSBjYXRhbHl0aWNhbGx5IGltcGFpcmVkIENhczkgZW5kb251Y2xlYXNlIGZ1c2VkIHRvIGFuIGVuZ2luZWVyZWQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBwcm9ncmFtbWVkIHdpdGggYSBwcmltZSBlZGl0aW5nIGd1aWRlIFJOQSAocGVnUk5BKSB0aGF0IGJvdGggc3BlY2lmaWVzIHRoZSB0YXJnZXQgc2l0ZSBhbmQgZW5jb2RlcyB0aGUgZGVzaXJlZCBlZGl0LiBXZSBwZXJmb3JtZWQgbW9yZSB0aGFuIDE3NSBlZGl0cyBpbiBodW1hbiBjZWxscywgaW5jbHVkaW5nIHRhcmdldGVkIGluc2VydGlvbnMsIGRlbGV0aW9ucywgYW5kIGFsbCAxMiB0eXBlcyBvZiBwb2ludCBtdXRhdGlvbiwgd2l0aG91dCByZXF1aXJpbmcgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BIHRlbXBsYXRlcy4gV2UgdXNlZCBwcmltZSBlZGl0aW5nIGluIGh1bWFuIGNlbGxzIHRvIGNvcnJlY3QsIGVmZmljaWVudGx5IGFuZCB3aXRoIGZldyBieXByb2R1Y3RzLCB0aGUgcHJpbWFyeSBnZW5ldGljIGNhdXNlcyBvZiBzaWNrbGUgY2VsbCBkaXNlYXNlIGFuZCBUYXlcdTIwMTNTYWNocyBkaXNlYXNlOyB0byBpbnN0YWxsIGEgcHJvdGVjdGl2ZSB0cmFuc3ZlcnNpb24gaW4gUFJOUDsgYW5kIHRvIGluc2VydCB2YXJpb3VzIHRhZ3MgYW5kIGVwaXRvcGVzIHByZWNpc2VseSBpbnRvIHRhcmdldCBsb2NpLiBGb3VyIGh1bWFuIGNlbGwgbGluZXMgYW5kIHByaW1hcnkgcG9zdC1taXRvdGljIG1vdXNlIGNvcnRpY2FsIG5ldXJvbnMgc3VwcG9ydCBwcmltZSBlZGl0aW5nIHdpdGggdmFyeWluZyBlZmZpY2llbmNpZXMuIFByaW1lIGVkaXRpbmcgc2hvd3MgaGlnaGVyIG9yIHNpbWlsYXIgZWZmaWNpZW5jeSBhbmQgZmV3ZXIgYnlwcm9kdWN0cyB0aGFuIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgaGFzIGNvbXBsZW1lbnRhcnkgc3RyZW5ndGhzIGFuZCB3ZWFrbmVzc2VzIGNvbXBhcmVkIHRvIGJhc2UgZWRpdGluZywgYW5kIGluZHVjZXMgbXVjaCBsb3dlciBvZmYtdGFyZ2V0IGVkaXRpbmcgdGhhbiBDYXM5IG51Y2xlYXNlIGF0IGtub3duIENhczkgb2ZmLXRhcmdldCBzaXRlcy4gUHJpbWUgZWRpdGluZyBzdWJzdGFudGlhbGx5IGV4cGFuZHMgdGhlIHNjb3BlIGFuZCBjYXBhYmlsaXRpZXMgb2YgZ2Vub21lIGVkaXRpbmcsIGFuZCBpbiBwcmluY2lwbGUgY291bGQgY29ycmVjdCB1cCB0byA4OSUgb2Yga25vd24gZ2VuZXRpYyB2YXJpYW50cyBhc3NvY2lhdGVkIHdpdGggaHVtYW4gZGlzZWFzZXMufSwgXG5udW1iZXIgPSB7Nzc4NX0sIFxuam91cm5hbCA9IHtOYXR1cmV9LCBcbnB1Ymxpc2hlciA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sIFxuYXV0aG9yID0ge0FuemFsb25lLCBBbmRyZXcgVi4gYW5kIFJhbmRvbHBoLCBQZXl0b24gQi4gYW5kIERhdmlzLCBKZXNzaWUgUi4gYW5kIFNvdXNhLCBBbGV4YW5kZXIgQS4gYW5kIEtvYmxhbiwgTHVrZSBXLiBhbmQgTGV2eSwgSm9uYXRoYW4gTS4gYW5kIENoZW4sIFBldGVyIEouIGFuZCBXaWxzb24sIENocmlzdG9waGVyIGFuZCBOZXdieSwgR3JlZ29yeSBBLiBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBMaXUsIERhdmlkIFIufSwgXG55ZWFyID0gezIwMTl9LCBcbm1vbnRoID0ge2RlY30sIFxucGFnZXMgPSB7MTQ5XHUyMDEzMTU3fSwgXG5sYW5ndWFnZSA9IHtlbn1cbn1gLGBcblxuQGFydGljbGV7endlaSxcbnRpdGxlID0ge1BoYWdlLWFzc2lzdGVkIGV2b2x1dGlvbiBhbmQgcHJvdGVpbiBlbmdpbmVlcmluZyB5aWVsZCBjb21wYWN0LCBlZmZpY2llbnQgcHJpbWUgZWRpdG9yc30sIFxudm9sdW1lID0gezE4Nn0sIFxuSVNTTiA9IHswMDkyLTg2NzQsIDEwOTctNDE3Mn0sIFxuRE9JID0gezEwLjEwMTYvai5jZWxsLjIwMjMuMDcuMDM5fSwgXG5udW1iZXIgPSB7MTh9LCBcbmpvdXJuYWwgPSB7Q2VsbH0sIFxucHVibGlzaGVyID0ge0Vsc2V2aWVyfSwgXG5hdXRob3IgPSB7RG9tYW4sIEpvcmRhbiBMLiBhbmQgUGFuZGV5LCBTbXJpdGkgYW5kIE5ldWdlYmF1ZXIsIE1vbmljYSBFLiBhbmQgQW4sIE1laXJ1aSBhbmQgRGF2aXMsIEplc3NpZSBSLiBhbmQgUmFuZG9scGgsIFBleXRvbiBCLiBhbmQgTWNFbHJveSwgQW1iZXIgYW5kIEdhbywgWGluIEQuIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIFJpY2h0ZXIsIE1pY2hlbGxlIEYuIGFuZCBFdmVyZXR0ZSwgS2VsY2VlIEEuIGFuZCBCYW5za290YSwgU2FtYWd5YSBhbmQgVGlhbiwgS2F0aHJ5biBhbmQgVGFvLCBZLiBBbGxlbiBhbmQgVG9sYXIsIEpha3ViIGFuZCBPc2Jvcm4sIE1hcmsgSi4gYW5kIExpdSwgRGF2aWQgUi59LCBcbnllYXIgPSB7MjAyM30sIFxubW9udGggPSB7YXVnfSwgXG5wYWdlcyA9IHszOTgzLTQwMDIuZTI2fSwgXG5sYW5ndWFnZSA9IHtFbmdsaXNofVxufWAsYFxuXG5AYXJ0aWNsZXtkcmVpLCBcbnRpdGxlID0ge1BoYWdlLWFzc2lzdGVkIGNvbnRpbnVvdXMgYW5kIG5vbi1jb250aW51b3VzIGV2b2x1dGlvbn0sIFxudm9sdW1lID0gezE1fSwgXG5yaWdodHMgPSB7MjAyMCBUaGUgQXV0aG9yKHMpLCB1bmRlciBleGNsdXNpdmUgbGljZW5jZSB0byBTcHJpbmdlciBOYXR1cmUgTGltaXRlZH0sIFxuSVNTTiA9IHsxNzUwLTI3OTl9LCBcbkRPSSA9IHsxMC4xMDM4L3M0MTU5Ni0wMjAtMDA0MTAtM30sIFxuYWJzdHJhY3ROb3RlID0ge0RpcmVjdGVkIGV2b2x1dGlvbiwgd2hpY2ggYXBwbGllcyB0aGUgcHJpbmNpcGxlcyBvZiBEYXJ3aW5pYW4gZXZvbHV0aW9uIHRvIGEgbGFib3JhdG9yeSBzZXR0aW5nLCBpcyBhIHBvd2VyZnVsIHN0cmF0ZWd5IGZvciBnZW5lcmF0aW5nIGJpb21vbGVjdWxlcyB3aXRoIGRpdmVyc2UgYW5kIHRhaWxvcmVkIHByb3BlcnRpZXMuIFRoaXMgdGVjaG5pcXVlIGNhbiBiZSBpbXBsZW1lbnRlZCBpbiBhIGhpZ2hseSBlZmZpY2llbnQgbWFubmVyIHVzaW5nIGNvbnRpbnVvdXMgZXZvbHV0aW9uLCB3aGljaCBlbmFibGVzIHRoZSBzdGVwcyBvZiBkaXJlY3RlZCBldm9sdXRpb24gdG8gcHJvY2VlZCBzZWFtbGVzc2x5IG92ZXIgbWFueSBzdWNjZXNzaXZlIGdlbmVyYXRpb25zIHdpdGggbWluaW1hbCByZXNlYXJjaGVyIGludGVydmVudGlvbi4gUGhhZ2UtYXNzaXN0ZWQgY29udGludW91cyBldm9sdXRpb24gKFBBQ0UpIGVuYWJsZXMgY29udGludW91cyBkaXJlY3RlZCBldm9sdXRpb24gaW4gYmFjdGVyaWEgYnkgbWFwcGluZyB0aGUgc3RlcHMgb2YgRGFyd2luaWFuIGV2b2x1dGlvbiBvbnRvIHRoZSBiYWN0ZXJpb3BoYWdlIGxpZmUgY3ljbGUgYW5kIGFsbG93cyBkaXJlY3RlZCBldm9sdXRpb24gdG8gb2NjdXIgb24gbXVjaCBmYXN0ZXIgdGltZXNjYWxlcyBjb21wYXJlZCB0byBjb252ZW50aW9uYWwgbWV0aG9kcy4gVGhpcyBwcm90b2NvbCBwcm92aWRlcyBkZXRhaWxlZCBpbnN0cnVjdGlvbnMgb24gZXZvbHZpbmcgcHJvdGVpbnMgdXNpbmcgUEFDRSBhbmQgcGhhZ2UtYXNzaXN0ZWQgbm9uLWNvbnRpbnVvdXMgZXZvbHV0aW9uIChQQU5DRSkgYW5kIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIHRoZSBwcmVwYXJhdGlvbiBvZiBzZWxlY3Rpb24gcGhhZ2UgYW5kIGhvc3QgY2VsbHMsIHRoZSBhc3NlbWJseSBvZiBhIGNvbnRpbnVvdXMgZmxvdyBhcHBhcmF0dXMgYW5kIHRoZSBwZXJmb3JtYW5jZSBhbmQgYW5hbHlzaXMgb2YgZXZvbHV0aW9uIGV4cGVyaW1lbnRzLiBUaGlzIHByb3RvY29sIGNhbiBiZSBwZXJmb3JtZWQgaW4gYXMgbGl0dGxlIGFzIDIgd2Vla3MgdG8gY29tcGxldGUgbW9yZSB0aGFuIDEwMCByb3VuZHMgb2YgZXZvbHV0aW9uIChjb21wbGV0ZSBjeWNsZXMgb2YgbXV0YXRpb24sIHNlbGVjdGlvbiBhbmQgcmVwbGljYXRpb24pIGluIGEgc2luZ2xlIFBBQ0UgZXhwZXJpbWVudC59LCBcbm51bWJlciA9IHsxMn0sIFxuam91cm5hbCA9IHtOYXR1cmUgUHJvdG9jb2xzfSwgXG5wdWJsaXNoZXIgPSB7TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LCBcbmF1dGhvciA9IHtNaWxsZXIsIFNoYW5ub24gTS4gYW5kIFdhbmcsIFRpbmEgYW5kIExpdSwgRGF2aWQgUi59LCBcbnllYXIgPSB7MjAyMH0sIFxubW9udGggPSB7ZGVjfSwgXG5wYWdlcyA9IHs0MTAxXHUyMDEzNDEyN30sIFxubGFuZ3VhZ2UgPSB7ZW59XG59YCxgXG5AYXJ0aWNsZXt2aWVyLCBcbnRpdGxlID0ge1N5c3RlbWF0aWMgb3B0aW1pemF0aW9uIG9mIHByaW1lIGVkaXRpbmcgZm9yIHRoZSBlZmZpY2llbnQgZnVuY3Rpb25hbCBjb3JyZWN0aW9uIG9mIENGVFIgRjUwOGRlbCBpbiBodW1hbiBhaXJ3YXkgZXBpdGhlbGlhbCBjZWxsc30sIFxucmlnaHRzID0gezIwMjQgVGhlIEF1dGhvcihzKX0sIFxuSVNTTiA9IHsyMTU3LTg0Nlh9LCBcbkRPSSA9IHsxMC4xMDM4L3M0MTU1MS0wMjQtMDEyMzMtM30sIFxuYWJzdHJhY3ROb3RlID0ge1ByaW1lIGVkaXRpbmcgKFBFKSBlbmFibGVzIHByZWNpc2UgYW5kIHZlcnNhdGlsZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IHJlcXVpcmluZyBkb3VibGUtc3RyYW5kZWQgRE5BIGJyZWFrcy4gSGVyZSB3ZSBkZXNjcmliZSB0aGUgc3lzdGVtYXRpYyBvcHRpbWl6YXRpb24gb2YgUEUgc3lzdGVtcyB0byBlZmZpY2llbnRseSBjb3JyZWN0IGh1bWFuIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHRyYW5zbWVtYnJhbmUgY29uZHVjdGFuY2UgcmVndWxhdG9yIChDRlRSKSBGNTA4ZGVsLCBhIHRocmVlLW51Y2xlb3RpZGUgZGVsZXRpb24gdGhhdCBpcyB0aGUgcHJlZG9taW5hbnQgY2F1c2Ugb2YgQ0YuIEJ5IGNvbWJpbmluZyBzaXggZWZmaWNpZW5jeSBvcHRpbWl6YXRpb25zIGZvciBQRVx1MjAxNGVuZ2luZWVyZWQgUEUgZ3VpZGUgUk5BcywgdGhlIFBFbWF4IGFyY2hpdGVjdHVyZSwgdGhlIHRyYW5zaWVudCBleHByZXNzaW9uIG9mIGEgZG9taW5hbnQtbmVnYXRpdmUgbWlzbWF0Y2ggcmVwYWlyIHByb3RlaW4sIHN0cmF0ZWdpYyBzaWxlbnQgZWRpdHMsIFBFNiB2YXJpYW50cyBhbmQgcHJveGltYWwgXHUyMDE4ZGVhZFx1MjAxOSBzaW5nbGUtZ3VpZGUgUk5Bc1x1MjAxNHdlIGluY3JlYXNlZCBjb3JyZWN0aW9uIGVmZmljaWVuY2llcyBmb3IgQ0ZUUiBGNTA4ZGVsIGZyb20gbGVzcyB0aGFuIDAuNSUgaW4gSEVLMjkzVCBjZWxscyB0byA1OCUgaW4gaW1tb3J0YWxpemVkIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIChhIDE0MC1mb2xkIGltcHJvdmVtZW50KSBhbmQgdG8gMjUlIGluIHBhdGllbnQtZGVyaXZlZCBhaXJ3YXkgZXBpdGhlbGlhbCBjZWxscy4gVGhlIG9wdGltaXphdGlvbnMgYWxzbyByZXN1bHRlZCBpbiBtaW5pbWFsIG9mZi10YXJnZXQgZWRpdGluZywgaW4gZWRpdC10by1pbmRlbCByYXRpb3MgMy41LWZvbGQgZ3JlYXRlciB0aGFuIHRob3NlIGFjaGlldmVkIGJ5IG51Y2xlYXNlLW1lZGlhdGVkIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgYW5kIGluIHRoZSBmdW5jdGlvbmFsIHJlc3RvcmF0aW9uIG9mIENGVFIgaW9uIGNoYW5uZWxzIHRvIG92ZXIgNTAlIG9mIHdpbGQtdHlwZSBsZXZlbHMgKHNpbWlsYXIgdG8gdGhvc2UgYWNoaWV2ZWQgdmlhIGNvbWJpbmF0aW9uIHRyZWF0bWVudCB3aXRoIGVsZXhhY2FmdG9yLCB0ZXphY2FmdG9yIGFuZCBpdmFjYWZ0b3IpIGluIHByaW1hcnkgYWlyd2F5IGNlbGxzLiBPdXIgZmluZGluZ3Mgc3VwcG9ydCB0aGUgZmVhc2liaWxpdHkgb2YgYSBkdXJhYmxlIG9uZS10aW1lIHRyZWF0bWVudCBmb3IgQ0YufSwgXG5qb3VybmFsID0ge05hdHVyZSBCaW9tZWRpY2FsIEVuZ2luZWVyaW5nfSwgXG5wdWJsaXNoZXIgPSB7TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LCBcbmF1dGhvciA9IHtTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBIZW1leiwgQ29saW4gYW5kIExlaSwgTGVpIGFuZCBUcmFvcmUsIFNvdW1iYSBhbmQgS3VsaGFua292YSwgS2F0YXJpbmEgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBEb21hbiwgSm9yZGFuIEwuIGFuZCBPeWUsIEtleWVkZSBhbmQgUGFuZGV5LCBTbXJpdGkgYW5kIEthcnAsIFBoaWxpcCBILiBhbmQgTWNDcmF5LCBQYXVsIEIuIGFuZCBMaXUsIERhdmlkIFIufSwgXG55ZWFyID0gezIwMjR9LCBcbm1vbnRoID0ge2p1bH0sIFxucGFnZXMgPSB7MVx1MjAxMzE1fSwgXG5sYW5ndWFnZSA9IHtlbn1cbn1gXG5dIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm5oYWxlU291cmNlcygpe1xuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG59XG5cblxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcbmBcbiBcbkBhcnRpY2xle2FydGljbGUsIFxuXG5hdXRob3I9e1JvdGgsIEYuIEMuLCBOdW1iZXJnZXIsIE0uLCBhbmQgRHJhZ3VobiwgQS59LCBcblxueWVhcj17MjAyM30sIFxuXG5tb250aD17fSwgXG5cbnBhZ2VzPXsxLTE0fSwgXG5cbnRpdGxlPXtEaWUgRW50d2lja2x1bmcgZGVyIFBhdGNoLUNsYW1wLVRlY2huaWt9LCBcblxudm9sdW1lPXt9LCBcblxuam91cm5hbD17U3ByaW5nZXIgZUJvb2tzfSwgXG5cbmRvaT17MTAuMTAwNy85NzgtMy02NjItNjYwNTMtOV8xfSBcblxufSBcblxuYCxgIFxuXG5AYXJ0aWNsZXthcnRpY2xlLCBcblxuYXV0aG9yPXtNZXRlLCBWLn0sIFxuXG55ZWFyPXsyMDIzfSwgXG5cbm1vbnRoPXsgfSwgXG5cbnBhZ2VzPXsgfSwgXG5cbnRpdGxlPXtFbnR3aWNrbHVuZyB1bmQgVmFsaWRpZXJ1bmcgbmV1ZXIgbmljaHQtaW52YXNpdmVyIERpYWdub3Nlc3lzdGVtZSBmXHUwMEZDciBNdWNvY2lsaWFyeSBDbGVhcmFuY2UgRGlzb3JkZXJzIChNQ0NEKX0sIFxuXG52b2x1bWU9eyB9LCBcblxuam91cm5hbD17RGlzc2VydGF0aW9uLCBXZXN0Zlx1MDBFNGxpc2NoZSBXaWxoZWxtcy1Vbml2ZXJzaXRcdTAwRTR0IE1cdTAwRkNuc3Rlcn0sIFxuXG5kb2k9ezEwLjE3ODc5Lzk4OTU4NDQxOTA1fSBcblxufSBcblxuYCxgXG5cbkBhcnRpY2xle2FydGljbGUsIFxuXG5hdXRob3I9e0dpYWV2ZXIsIEkuIGFuZCBLZWVzZSwgQy4gfSwgXG5cbnllYXI9ezE5OTN9LCBcblxubW9udGg9eyB9LCBcblxucGFnZXM9ezU5MS01OTJ9LCBcblxudGl0bGU9e0EgbW9ycGhvbG9naWNhbCBiaW9zZW5zb3IgZm9yIG1hbW1hbGlhbiBjZWxsc30sIFxuXG52b2x1bWU9ezM2Nn0sIFxuXG5qb3VybmFsPXtOYXR1cmV9LCBcblxuZG9pPXsxMC4xMDM4LzM2NjU5MWEwfSBcblxufSBcbmBcbl0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBXaXNjaG1leWVyU291cmNlcygpe1xuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG59XG5cblxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcbiAgICBgXG4gICAgIFxuQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17Um90aCwgRi4gQy4sIE51bWJlcmdlciwgTS4sIGFuZCBEcmFndWhuLCBBLn0sIFxuXG55ZWFyPXsyMDIzfSwgXG5cbm1vbnRoPXt9LCBcblxucGFnZXM9ezEtMTR9LCBcblxudGl0bGU9e0RpZSBFbnR3aWNrbHVuZyBkZXIgUGF0Y2gtQ2xhbXAtVGVjaG5pa30sIFxuXG52b2x1bWU9e30sIFxuXG5qb3VybmFsPXtTcHJpbmdlciBlQm9va3N9LCBcblxuZG9pPXsxMC4xMDA3Lzk3OC0zLTY2Mi02NjA1My05XzF9IFxuXG59IFxuXG5gLGBcblxuQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17TWV0ZSwgVi59LCBcblxueWVhcj17MjAyM30sIFxuXG5tb250aD17IH0sIFxuXG5wYWdlcz17IH0sIFxuXG50aXRsZT17RW50d2lja2x1bmcgdW5kIFZhbGlkaWVydW5nIG5ldWVyIG5pY2h0LWludmFzaXZlciBEaWFnbm9zZXN5c3RlbWUgZlx1MDBGQ3IgTXVjb2NpbGlhcnkgQ2xlYXJhbmNlIERpc29yZGVycyAoTUNDRCl9LCBcblxudm9sdW1lPXsgfSwgXG5cbmpvdXJuYWw9e0Rpc3NlcnRhdGlvbiwgV2VzdGZcdTAwRTRsaXNjaGUgV2lsaGVsbXMtVW5pdmVyc2l0XHUwMEU0dCBNXHUwMEZDbnN0ZXJ9LCBcblxuZG9pPXsxMC4xNzg3OS85ODk1ODQ0MTkwNX0gXG5cbn0gXG5gLGBcblxuQGFydGljbGV7YXJ0aWNsZSwgXG5cbmF1dGhvcj17R2lhZXZlciwgSS4gYW5kIEtlZXNlLCBDLiB9LCBcblxueWVhcj17MTk5M30sIFxuXG5tb250aD17IH0sIFxuXG5wYWdlcz17NTkxLTU5Mn0sIFxuXG50aXRsZT17QSBtb3JwaG9sb2dpY2FsIGJpb3NlbnNvciBmb3IgbWFtbWFsaWFuIGNlbGxzfSwgXG5cbnZvbHVtZT17MzY2fSwgXG5cbmpvdXJuYWw9e05hdHVyZX0sIFxuXG5kb2k9ezEwLjEwMzgvMzY2NTkxYTB9IFxuXG59IFxuICAgIGBcbl0iLCAiaW1wb3J0IHsgUWFCb3ggfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Cb3hlc1wiO1xuaW1wb3J0IHsgVGFiU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL0xpbmtcIjtcbmltcG9ydCB7IFNjcm9sbExpbmtXaXRoQ2hpbGQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9TY3JvbGxMaW5rXCI7XG5pbXBvcnQgSm9zaHVhSW50ZXJ2aWV3U291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9qb3NodWEtaW52LXNvdXJjZXNcIjtcbmltcG9ydCBNYXR0aWpzSW50ZXJ2aWV3U291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9tYXR0aWotaW52LXNvdXJjZXNcIjtcbmltcG9ydCBMaXVJbnRlcnZpZXdTb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2xpdS1pbnYtc291cmNlc1wiO1xuaW1wb3J0IFJuaGFsZVNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvcm5oYWxlLXNvdXJjZXNcIjtcbmltcG9ydCBXaXNjaG1leWVyU291cmNlcyBmcm9tIFwiLi4vc291cmNlcy93aW1zY2hleWVyLXNvdXJjZXNcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZnVuY3Rpb24gSFBMaW5rdG9PdGhlckhQVGFiKHt0YWIsIHRleHR9Ont0YWI6IHN0cmluZywgdGV4dDogc3RyaW5nfSl7XG4gIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXG4gIHJldHVybihcbiAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKHRhYiwgXCJcIil9PiB7dGV4dH0gPC9hPlxuICApXG59XG5mdW5jdGlvbiBIUGdvVG9QYWdlQW5kU2Nyb2xsKHtpZCwgdGV4dCwgcGF0aH06e2lkOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgcGF0aDogc3RyaW5nfSl7XG4gIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxuICByZXR1cm4oXG4gICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoaWQsIHBhdGgpfT4ge3RleHR9IDwvYT5cbiAgKVxufVxuXG4vKmZ1bmN0aW9uIEhQZ29Ub1BhZ2VBbmRPcGVuVGFiKHtpZCwgdGV4dCwgcGF0aH06e2lkOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgcGF0aDogc3RyaW5nfSl7XG4gIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXG4gIHJldHVybihcbiAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKGlkLCBwYXRoKX0+IHt0ZXh0fSA8L2E+XG4gIClcbn1cbmZ1bmN0aW9uIEhQZ29Ub1BhZ2VBbmRPcGVuVGFiQW5kU2Nyb2xsKHt0YWIsIHRleHQsIHBhdGgsIHNjcm9sbElkfTp7dGFiOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgcGF0aDogc3RyaW5nLCBzY3JvbGxJZDogc3RyaW5nfSl7XG4gIGNvbnN0IHtnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgcmV0dXJuKFxuICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6IHRhYiwgcGF0aDogcGF0aCwgc2Nyb2xsVG9JZDogc2Nyb2xsSWR9KX0+IHt0ZXh0fSA8L2E+XG4gIClcbn0qL1xuXG5leHBvcnQgaW50ZXJmYWNlIFRpbWVsaW5lRGF0ZW5wdW5rdCB7XG4gIHRpdGxlPzogc3RyaW5nOyAvKiBQcm9mLiAsIERyLiwgLi4uICovXG4gIHZvcm5hbWU6IHN0cmluZzsgXG4gIG5hY2hubmFtZTogc3RyaW5nOyBcbiAgcGljdHVyZXVybDogc3RyaW5nOyBcbiAgdGFnOiBTdGFrZWhvbGRlclRhZzsgXG4gIGhlYWRpbmc6IHN0cmluZzsgXG4gIGludGVydmlld3RhYmlkOiBzdHJpbmc7IFxuICB0eXBlPzogVHlwZVRhZzsgLyogbnVyIGZhbGxzIGVzIGVpbiBtZXRhIHRhZyBpc3QgICovXG4gIGFmZmlsaWF0aW9uPzogc3RyaW5nOyBcbiAgam9iPzogc3RyaW5nOyBcbiAgY2FyZHRleHQ6IHN0cmluZzsgXG4gIGxhbmd1YWdlPzogTGFuZ3VhZ2U7IFxuICBxdW90ZT86IHN0cmluZzsgXG4gIHF1b3RlVm9ybmFtZT86IHN0cmluZzsgLyogV2VubiBkaWUgcXVvdGUgbmljaHQgdm9uIGRlciBQZXJzb24gaXN0IFx1MDBGQ2JlciBkaWUgZGVyIFRleHQgaXN0ICAqL1xuICBxdW90ZU5hY2huYW1lPzogc3RyaW5nOyBcbiAgYWltb2Zjb250YWN0Pzogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB8IEFycmF5PFJlYWN0LlJlYWN0Tm9kZT47IC8qIFNvYmFsZCBaaXRpZXJ1bmdlbiBkcmluIHNpbmQgb2RlciBMaW5rcyBtdXNzIGVzIEhUTUwgQ29kZSBzZWluLCBhbnNvbnN0ZW4gZ2VoZW4gc3RyaW5ncyAqL1xuICBpbnNpZ2h0cz86IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+OyAvKiBTb2JhbGQgWml0aWVydW5nZW4gZHJpbiBzaW5kIG9kZXIgTGlua3MgbXVzcyBlcyBIVE1MIENvZGUgc2VpbiwgYW5zb25zdGVuIGdlaGVuIHN0cmluZ3MgKi9cbiAgY2xhcmlmaWNhdGlvbj86IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+OyAvKiBTb2JhbGQgWml0aWVydW5nZW4gZHJpbiBzaW5kIG9kZXIgTGlua3MgbXVzcyBlcyBIVE1MIENvZGUgc2VpbiwgYW5zb25zdGVuIGdlaGVuIHN0cmluZ3MgKi9cbiAgaW1wbGVtZW50YXRpb24/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IHwgQXJyYXk8UmVhY3QuUmVhY3ROb2RlPjsgLyogU29iYWxkIFppdGllcnVuZ2VuIGRyaW4gc2luZCBvZGVyIExpbmtzIG11c3MgZXMgSFRNTCBDb2RlIHNlaW4sIGFuc29uc3RlbiBnZWhlbiBzdHJpbmdzICovXG4gIHBpY3R1cmV1cmxfaW50ZXJ2aWV3Pzogc3RyaW5nOyAgLyogUGljdHVyZSB0aGF0IGdvZXMgaW50byB0aGUgcGFyYWdyYXBoIFwiSW5zaWdodHNcIiAgKi9cbiAgcGljdHVyZXVybF9haW0/OiBzdHJpbmc7ICAvKiBQaWN0dXJlIHRoYXQgZ29lcyBpbnRvIHRoZSBwYXJhZ3JhcGggXCJBaW0gb2YgY29udGFjdFwiICAqL1xuICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uPzogc3RyaW5nOyAgLyogUGljdHVyZSB0aGF0IGdvZXMgaW50byB0aGUgcGFyYWdyYXBoIFwiSW1wbGVtZW50YXRpb25cIiAgKi9cbiAgbW9yZV9waWN0dXJlcz86IEFycmF5PHN0cmluZz4gO1xuICByZWZlcmVuY2VzPzogUmVhY3QuUmVhY3ROb2RlOyAgLyogTXVzcyBIVE1MIENvZGUgc2VpbiAtIExpbGlhbmEgZXJzdGVsbHQgZGVuIGF1cyBCaWIgZGF0ZWllbiAqL1xuICBpbnRlcnZpZXc/OiBSZWFjdC5SZWFjdE5vZGU7IFxuICB0ZXh0Pzogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB8IEFycmF5PFJlYWN0LlJlYWN0Tm9kZT4gfFJlYWN0LlJlYWN0Tm9kZSA7IC8qIEV4dHJhIFRleHQgKi9cbiAgZXhwZXJ0b24/OiBzdHJpbmc7ICBcbiAgc3VtbWFyeTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB8IEFycmF5PFJlYWN0LlJlYWN0Tm9kZT47IC8qIFNvYmFsZCBaaXRpZXJ1bmdlbiBkcmluIHNpbmQgb2RlciBMaW5rcyBtdXNzIGVzIEhUTUwgQ29kZSBzZWluLCBhbnNvbnN0ZW4gZ2VoZW4gc3RyaW5ncyAqLyBcbiAgbW9udGhzOiBzdHJpbmcsIFxufVxuXG50eXBlIFN0YWtlaG9sZGVyVGFnID0gJ0luZHVzdHJ5JyB8ICdBY2FkZW1pYScgfCAnUGF0aWVudCcgfCAnTWVkaWNhbCBQcm9mZXNzaW9uYWwnIHwgJ01pbGVzdG9uZScgfCAnRWR1Y2F0aW9uJ3wgJ091dHJlYWNoJ3wgJ090aGVyJzsgXG50eXBlIFR5cGVUYWcgPSAnbWV0YScgfCAna2F5YScgOyBcbnR5cGUgTGFuZ3VhZ2UgPSAnZW4nIHwgJ2RlJzsgXG5cbiBcblxuY29uc3QgcGljczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgcGxhY2Vob2xkZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGxhY2Vob2xkZXJzL3BsYWNlaGlsZGVycGVyc29uLmpwZWdcIixcbiAgbWF4OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1tYXgtcG9ydHJhaXQuanBnXCIsXG4gIGtyaXN0aWFuOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9rcmlzdGlhbi1pbnRlcnZpZXcud2VicFwiLFxuICBvbGFyaXU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL29sYXJpdS1jcmlzdGlhbi5qcGdcIixcbiAgd2VzdGhvZmY6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLWthdHJpbi1wb3J0cmFpdC5qcGdcIixcbiAgbWF0dGlqczogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbWF0dGlqcy5qcGdcIixcbiAganVsaWE6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2p1bGlhLmpwZ1wiLFxuICBrb2xvbmtvOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9rb2xvbmtvLW5ldS5qcGdcIixcbiAgc3ZlbmphOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3N2ZW5qYS12aW5rZS53ZWJwXCIsXG4gIGJlcmVuczogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVyZW5zLmpwZ1wiLFxuICBkcmFlZ2VyOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9vbGl2ZXItZHJhZWdlci1wYXRjaC1jbGFtcC5qcGVnXCIsXG4gIHdpbmtlbGphbm46IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3JuaGFsZS13aW5rZWxqYW5uLmpwZ1wiLFxuICBrdWVobmVsOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1waGlsaXBway1obmVsLmpwZWcgXCIsXG4gIHdpc2NobWV5ZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3dpc2NobWV5ZXItZXJoYXJkLndlYnBcIixcbiAgbmljb2xlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1mcmllZGxlaW4tbmljb2xlLmpwZ1wiLFxuICBqb3NodWE6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2pvc2h1YS5qcGdcIixcbiAgaGFtbWVyOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1oYW1tZXIud2VicFwiLFxuICBqb2hhbm5mdW5rZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAtbWljaGFlbGpvaGFubmZ1bmtlLndlYnBcIixcbiAga1x1MDBGQ2huZWw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLXBoaWxpcHBrLWhuZWwuanBlZyBcIixcbiAgbW9vcmxhY2g6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvbW9vcmxhY2gud2VicCBcIixcbiAgY29yZGVuOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2NvcmRlbi1ocC53ZWJwXCIsXG4gIG1hcmNvOiBcIiBodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbWFyY28tcmF1a2ljLndlYnAgXCIsXG4gIHdlYmVyOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3dlYmVyLndlYnBcIixcbiAgem95YTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC96b3lhLWlnbmF0b3ZhLndlYnBcIixcbiAga2FpaGFtbWVyOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2ludGVyd2lldi1rYWkuanBlZ1wiLCBcbiAgbmlsc2hlZmU6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbmlsc2hlZmUtaHAud2VicFwiLFxuICBneHBleHBlcnQ6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvZ3hwZXhwZXJ0LndlYnBcIixcbiAgZ3hwY291cnNlOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2theWFneHBleHBlcnQud2VicFwiLFxuICBsaW5rXHUwMEY2cGluZzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9saXUyMDI0LXJ1bmQud2VicFwiLFxuICBiaW9iYW5rOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2Jpb2Jhbmsud2VicFwiLFxuICBiZXRoZWw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2xvZ28tZXZhbmdlbGlzY2hlcy1rbGluaWt1bS1iZXRoZWwud2VicFwiLFxuICBzYWl0bzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1tYWtvdG8tc2FpdG8uanBnXCIsXG4gIHBoeXNpazpcIiBodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9ocC11bmktbG9nby53ZWJwXCIsXG4gIGhhbm5vdmVybWVzc2U6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hhbm5vdmVyLW1lc3NlLXN2Zy53ZWJwXCIsXG4gIGZyYW5rZnVydG1lc3NlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9hY2hlbWEud2VicFwiLFxuICBkYXZpZDpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9saXUtdGFsay53ZWJwXCIsXG4gIHRldXRvOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9lZGNhdGlvbi1hbmQtb3V0cmVhY2gvdGV1dG9ydWZ0LWV4cGVybWluZXQuanBlZ1wiLFxuICBtaW50OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9taW50c29tbWVybG9nby5wbmdcIixcbiAgc2NodWVsZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC9zY2hpZWxlcmFrYWRlbWllLWxpc2EtZ3J1cHBlLmpwZ1wiLFxuICBtdWtvbW92ZTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9wby1tdWtvbW92ZS93aXItcGxha2F0LW11a29tb3ZlLmpwZWdcIixcbiAgaGFrYW46XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaGFrYW4ud2VicFwiLFxuICBzdGVtY2VsbDogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvc3RlbWNlbGxxdWFkcmF0LndlYnBcIixcbiAgbXVrb2Rpbm86IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL211a29kaW5vLndlYnBcIixcbiAgYnVpbGRpbmc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2J1aWxkaW5ndGhldGVhbS53ZWJwXCIsXG4gIGlkZWFzOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9waXRjaGluZ2lkZWFzLndlYnBcIixcbiAgbGFic3VwcGx5OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9sYWJzdXBwbHktaW5mby53ZWJwXCIsXG4gIGhhbWJ1cmc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2dydXBwZW5iaWxkLWhhbWJ1cmcud2VicFwiLFxuICBzcmlyYW06IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3NyaXJhbS5zdmdcIixcbiAgXG59O1xuXG4vKiB7XG4gICAgdm9ybmFtZTogXCJcIixcbiAgICBuYWNobm5hbWU6IFwiXCIsICBcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwbGFjZWhvbGRlciddLFxuICAgIHRhZzogXCJcIixcbiAgICBoZWFkaW5nOiBcIlwiLFxuICAgIGludGVydmlld3RhYmlkOiBcIlwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcIlwiLFxuICAgIHF1b3RlOiBcIlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJcIixcbiAgICBpbnNpZ2h0czogXCJcIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJcIixcbiAgfSAqL1xuXG5cbiAgICAvKiBXSUNIVElHIVxuICAgICAgRmVobGVuZGUgSW5mb3MgZWluZmFjaCBsZWVyIGxhc3NlbiB1bmQga2VpbmUgRHVtbXktVGV4dGUgZWluZlx1MDBGQ2dlbiEgXG4gICAgKi9cblxuZXhwb3J0IGNvbnN0IHRpbWVsaW5lZGF0YTogQXJyYXk8VGltZWxpbmVEYXRlbnB1bmt0PiAgPSBbXG4gIHtcbiAgICB2b3JuYW1lOiBcIkJ1aWxkaW5nIHRoZSB0ZWFtXCIsXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2J1aWxkaW5nJ10sXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcbiAgICBoZWFkaW5nOiBcIkRldmVsb3BtZW50IG9mIGEgbXVsdGlkaXNjaXBsaW5hcnkgdGVhbSBzdHJ1Y3R1cmVcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJyZWNydWl0aW5nXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGVOYWNobmFtZTpcIlppbW1lcm1hbm4sIEludHJ1Y3RvclwiLFxuICAgIHF1b3RlVm9ybmFtZTpcIlNpbmFuXCIsXG4gICAgcXVvdGU6IFwiTXkgZmlyc3QgY2hhbGxlbmdlIHdhcyBzZWxlY3RpbmcgdGhlIGlHRU0gdGVhbS4gSSBmb2N1c2VkIG9uIGNob29zaW5nIGNhbmRpZGF0ZXMgd2l0aCBzdHJvbmcgdGVjaG5pY2FsIHNraWxscyBhbmQgdGhlIGFiaWxpdHkgdG8gd29yayB3ZWxsIGluIGFuIGludGVyZGlzY2lwbGluYXJ5IHNldHRpbmcsIGFpbWluZyB0byBjcmVhdGUgYSBkaXZlcnNlIHRlYW0gd2l0aCBjb21wbGVtZW50YXJ5IHN0cmVuZ3Rocy5cIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBbPHA+XG4gICAgICBCdWlsZGluZyBhIHN1Y2Nlc3NmdWwgaW50ZXJkaXNjaXBsaW5hcnkgdGVhbSwgbGlrZSB0aGUgb25lIGludm9sdmVkIGluIHRoaXMgaUdFTSBwcm9qZWN0LCByZXF1aXJlcyBjYXJlZnVsIGNvb3JkaW5hdGlvbiBhbmQgYSBzaGFyZWQgdmlzaW9uIGZvciBhZGRyZXNzaW5nIGNvbXBsZXggc2NpZW50aWZpYyBjaGFsbGVuZ2VzLiBUaGlzIHRlYW0gaXMgYW4gZXhjZWxsZW50IGV4YW1wbGUgb2YgaG93IGJyaW5naW5nIHRvZ2V0aGVyIGluZGl2aWR1YWxzIGZyb20gdmFyaW91cyBhY2FkZW1pYyBiYWNrZ3JvdW5kcyBmb3N0ZXJzIGlubm92YXRpb24gYW5kIGZhY2lsaXRhdGVzIHByb2JsZW0tc29sdmluZyBpbiB0aGUgZmllbGRzIG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCBiaW90ZWNobm9sb2d5LjwvcD4sXG4gICAgICA8cD48c3Ryb25nPlRoZSB0ZWFtIG1lbWJlcnMgY29tZSBmcm9tIGRpdmVyc2UgZmllbGRzIG9mIHN0dWR5LCBpbmNsdWRpbmcgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3ksIEJpb2luZm9ybWF0aWNzLCBNb2xlY3VsYXIgQ2VsbCBCaW9sb2d5LCBHZW5vbWUtQmFzZWQgU3lzdGVtIEJpb2xvZ3ksIEludGVyZGlzY2lwbGluYXJ5IEJpb21lZGljaW5lLCBhbmQgZXZlbiBNZWRpYSBQcm9kdWN0aW9uLjwvc3Ryb25nPjwvcD4sIDxwPlRoaXMgdmFyaWV0eSBvZiBleHBlcnRpc2UgYWxsb3dzIHRoZW0gdG8gYXBwcm9hY2ggcHJvYmxlbXMgZnJvbSBtdWx0aXBsZSBwZXJzcGVjdGl2ZXMsIGVuc3VyaW5nIHRoYXQgdGhlIHByb2plY3QgaXMgd2VsbC1yb3VuZGVkIGFuZCBjYXBhYmxlIG9mIGFkZHJlc3NpbmcgYm90aCBcbiAgICAgIGV4cGVyaW1lbnRhbCBhbmQgY29tcHV0YXRpb25hbCBjaGFsbGVuZ2VzLiBGb3IgaW5zdGFuY2UsIHdoaWxlIHRoZSBiaW90ZWNobm9sb2dpc3RzIGFuZCBtb2xlY3VsYXIgYmlvbG9naXN0cyBmb2N1cyBvbiBkZXNpZ25pbmcgYW5kIGNvbmR1Y3RpbmcgbGFiIGV4cGVyaW1lbnRzLCB0aGUgYmlvaW5mb3JtYXRpY2lhbnMgY29udHJpYnV0ZSBjcnVjaWFsIGluc2lnaHRzIGZvciBkYXRhIGFuYWx5c2lzIGFuZCBnZW5vbWUgc2VxdWVuY2luZy4gVGhlIGluY2x1c2lvbiBvZiBhIG1lZGlhIHByb2R1Y3Rpb24gZXhwZXJ0IGFkZHMgYW5vdGhlciBsYXllciB0byB0aGUgdGVhbVx1MjAxOXMgY2FwYWJpbGl0aWVzLCBlbnN1cmluZyB0aGF0IHNjaWVuY2UgY29tbXVuaWNhdGlvbiBhbmQgXG4gICAgICBwcm9qZWN0IGRvY3VtZW50YXRpb24gYXJlIGhhbmRsZWQgcHJvZmVzc2lvbmFsbHksIHdoaWNoIGlzIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgZm9yIHByZXNlbnRpbmcgdGhlaXIgd29yayBhdCBjb25mZXJlbmNlcyBhbmQgY29tcGV0aXRpb25zLlxuICAgICAgVGhlIG11bHRpZGlzY2lwbGluYXJ5IHN0cnVjdHVyZSBvZiB0aGlzIHRlYW0gZXZvbHZlZCBuYXR1cmFsbHkgYXMgdGhleSBpZGVudGlmaWVkIHRoZSBwcm9qZWN0XHUyMDE5cyBuZWVkcyBhbmQgcmVjcnVpdGVkIG1lbWJlcnMgd2hvIGNvdWxkIGZpbGwgc3BlY2lmaWMgcm9sZXMuIE92ZXIgdGltZSwgdGhpcyBtdWx0aWRpc2NpcGxpbmFyeSBzdHJ1Y3R1cmUgaGFzIGNvbnRpbnVlZCB0byBkZXZlbG9wIGFzIHRoZSB0ZWFtXHUyMDE5cyBwcm9qZWN0IGV2b2x2ZWQuIFJvbGVzIGJlY2FtZSBtb3JlIGRlZmluZWQgYXMgdGVhbSBtZW1iZXJzIHRvb2sgb24gc3BlY2lmaWMgcmVzcG9uc2liaWxpdGllcywgd2hldGhlciBpdCB3YXMgcmVmaW5pbmcgcHJpbWUgZWRpdGluZyBzeXN0ZW1zIG9yIGNyYWZ0aW5nIFxuICAgICAgY29tbXVuaWNhdGlvbiBzdHJhdGVnaWVzIGZvciBpR0VNLiBUaGUgcmFuZ2Ugb2YgZXhwZXJpZW5jZSBhY3Jvc3MgdGhlIHRlYW0sIGZyb20geW91bmdlciBzdHVkZW50cyBsaWtlIFZpbmNlbnQgQ2FybCBTdFx1MDBGNmNrbCBpbiB0aGUgZWFybHkgc3RhZ2VzIG9mIHRoZWlyIGFjYWRlbWljIGNhcmVlcnMgdG8gbW9yZSBhZHZhbmNlZCBzdHVkZW50cyBpbiBsYXRlciBzZW1lc3RlcnMsIGFsbG93cyBmb3IgYSBibGVuZCBvZiBmcmVzaCBwZXJzcGVjdGl2ZXMgYW5kIHNlYXNvbmVkIGV4cGVydGlzZS4gVGhpcyBiYWxhbmNlIGhlbHBzIGVuc3VyZSBib3RoIHRoZSBpbW1lZGlhdGUgc3VjY2VzcyBvZiB0aGUgcHJvamVjdCBhbmQgdGhlIGNvbnRpbnVpdHkgb2YgaXRzIHByb2dyZXNzIGluIHRoZSBmdXR1cmUuXG4gICAgICBJbiBzdW1tYXJ5LCB0aGlzIGludGVyZGlzY2lwbGluYXJ5IGlHRU0gdGVhbSBkZW1vbnN0cmF0ZXMgaG93IGEgZGl2ZXJzZSBncm91cCBvZiBpbmRpdmlkdWFscyB3aXRoIHNwZWNpYWxpemVkIHNraWxscyBjYW4gY29tZSB0b2dldGhlciB0byB0YWNrbGUgYSBjb21wbGV4IGJpb2xvZ2ljYWwgcHJvamVjdC4gQnkgY29tYmluaW5nIHRoZWlyIGV4cGVydGlzZSBpbiBtb2xlY3VsYXIgYmlvbG9neSwgYmlvaW5mb3JtYXRpY3MsIGNlbGwgYmlvbG9neSwgYW5kIG1lZGlhIHByb2R1Y3Rpb24sIHRoZSB0ZWFtIGlzIGFibGUgdG8gZXhlY3V0ZSB0aGVpciBwcm9qZWN0IGhvbGlzdGljYWxseSwgZW5zdXJpbmcgdGhhdCBlYWNoIGFzcGVjdCwgZnJvbSBleHBlcmltZW50YWwgZGVzaWduIHRvIHB1YmxpYyBvdXRyZWFjaCwgaXMgaGFuZGxlZCB3aXRoIHByZWNpc2lvbiBhbmQgY3JlYXRpdml0eS48L3A+XSxcbiAgICBtb250aHM6IFwiRmVicnVhcnlcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJQaXRjaGluZyBpZGVhc1wiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydpZGVhcyddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXG4gICAgaGVhZGluZzogXCJHZXR0aW5nIEFjcXVhaW50ZWQgd2l0aCBDeXN0aWMgRmlicm9zaXNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmaXJzdHByZXNpXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJLXHUwMEY2aGxlciwgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJWZXJhXCIsXG4gICAgcXVvdGU6IFwiRmlyc3RseSwgd2UgZGlzY3Vzc2VkIHZhcmlvdXMgcHJvamVjdCBpZGVhcywgaW5jbHVkaW5nIHRoZSB1c2Ugb2YgbWFnbmV0aWMgbWljcm9zd2ltbWVycyBmb3IgdGFyZ2V0ZWQgbWVkaWNhbCBhcHBsaWNhdGlvbnMsIGdlbmUgZWRpdGluZyBhcHByb2FjaGVzIGZvciBjeXN0aWMgZmlicm9zaXMsIHRyZWF0bWVudHMgZm9yIG11c2N1bGFyIGR5c3Ryb3BoeSBhbmQgY29tYmF0aW5nIGN5YW5vYmFjdGVyaWEgd2l0aCBhbGdhZS5cIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBbPHA+RHVyaW5nIG91ciBpbml0aWFsIGRpc2N1c3Npb25zIGFib3V0IHByb2plY3QgaWRlYXMsIHRoZSB0ZWFtIGV4cGxvcmVkIHNldmVyYWwgaW5ub3ZhdGl2ZSBjb25jZXB0cyBiZWZvcmUgaG9uaW5nIGluIG9uIDxzdHJvbmc+Y3lzdGljIGZpYnJvc2lzPC9zdHJvbmc+LiBFYWNoIHByb2plY3QgcHJlc2VudGVkIHVuaXF1ZSBzY2llbnRpZmljIGNoYWxsZW5nZXMgYW5kIHBvdGVudGlhbCBpbXBhY3RzLjwvcD4sXG4gICAgICA8cD5PbmUgaWRlYSBpbnZvbHZlZCB0aGUgZGV2ZWxvcG1lbnQgb2YgPHN0cm9uZz5tYWduZXRpYyBtaWNyb3N3aW1tZXJzPC9zdHJvbmc+IGRlc2lnbmVkIGZvciB0YXJnZXRlZCBjYW5jZXIgdGhlcmFweSwgcGFydGljdWxhcmx5IGZvciBvdmFyaWFuIGNhbmNlci4gVGhlIHByb3Bvc2FsIGFpbWVkIHRvIG92ZXJjb21lIHRoZSBsaW1pdGF0aW9ucyBvZiB0cmFkaXRpb25hbCB0cmVhdG1lbnRzLCBzdWNoIGFzIHJhZGlvdGhlcmFweSBhbmQgY2lzcGxhdGluLCB3aGljaCBvZnRlbiBkYW1hZ2UgaGVhbHRoeSBjZWxscyBhbmQgcmVzdWx0IGluIG51bWVyb3VzIHNpZGUgZWZmZWN0cy4gVGhlIG1pY3Jvc3dpbW1lcnMgd291bGQgYmUgYmlvZGVncmFkYWJsZSBhbGdhZS1iYXNlZCB2ZWhpY2xlcywgbWFnbmV0aWNhbGx5IGd1aWRlZCB0byBkZWxpdmVyIGRydWdzIGRpcmVjdGx5IHRvIGNhbmNlcm91cyBjZWxscyB3aGlsZSBtaW5pbWl6aW5nIGRhbWFnZSB0byBzdXJyb3VuZGluZyB0aXNzdWUuIFRoaXMgYXBwcm9hY2ggb2ZmZXJlZCBhIG5vdmVsLCBub24taW52YXNpdmUgdGFyZ2V0aW5nIG1lY2hhbmlzbSwgbGV2ZXJhZ2luZyB0aGUgcG90ZW50aWFsIG9mIG1hZ25ldGljIGZpZWxkcyB0byBkaXJlY3QgdGhlIHN3aW1tZXJzIHByZWNpc2VseSB0byB0aGUgYWZmZWN0ZWQgYXJlYXMuPC9wPixcbiAgICAgIDxwPkFub3RoZXIgY29tcGVsbGluZyBwcm9qZWN0IHdhcyBmb2N1c2VkIG9uIDxzdHJvbmc+RHVjaGVubmUgbXVzY3VsYXIgZHlzdHJvcGh5IChETUQpPC9zdHJvbmc+LiBUaGlzIGdlbmV0aWMgZGlzb3JkZXIgbGVhZHMgdG8gbXVzY2xlIGRlZ2VuZXJhdGlvbiBhcyBtdXNjbGUgdGlzc3VlIGlzIGdyYWR1YWxseSByZXBsYWNlZCBieSBmaWJyb3RpYyB0aXNzdWUuIFRoZSB0ZWFtIHByb3Bvc2VkIHNldmVyYWwgdHJlYXRtZW50IGFwcHJvYWNoZXMsIGluY2x1ZGluZyBleG9uIHNraXBwaW5nIGFuZCBnZW5lIHRoZXJhcHkgdXNpbmcgdmlyYWwgdmVjdG9ycy4gS2V5IHN0cmF0ZWdpZXMgaW5jbHVkZWQgZW5oYW5jaW5nIENhcyBwcm90ZWluIGVmZmljaWVuY3kgdGhyb3VnaCBlbmdpbmVlcmluZywgdXNpbmcgbGlwb3NvbWFsIHZlY3RvcnMgZm9yIGdlbmUgZGVsaXZlcnksIGFuZCBjb21iaW5pbmcgQ1JJU1BSIHRlY2hub2xvZ3kgd2l0aCBpbnRlZ3Jhc2UgZnVzaW9uIHByb3RlaW5zLiBUaGUgdGVhbSBhbHNvIGRpc2N1c3NlZCBwcmV2aW91cyBpR0VNIHByb2plY3RzIHRoYXQgaGFkIGV4cGxvcmVkIHNpbWlsYXIgbWV0aG9kb2xvZ2llcywgZW1waGFzaXppbmcgdGhlIG5lZWQgZm9yIHNwZWNpZmljaXR5IGFuZCBlZmZpY2FjeSBpbiBkZWxpdmVyaW5nIHRoZXJhcGV1dGljIGdlbmVzLjwvcD4sXG4gICAgICA8cD5XZSBhbHNvIGNvbnNpZGVyZWQgYSBwcm9qZWN0IGFpbWVkIGF0IHByZXZlbnRpbmcgPHN0cm9uZz5jeWFub2JhY3RlcmlhIGJsb29tczwvc3Ryb25nPiB1c2luZyBwZXB0aWRlcyBvciBwcm90ZWlucyBkZXJpdmVkIGZyb20gYWxnYWUuIEN5YW5vYmFjdGVyaWEgY2FuIHByb2R1Y2UgaGFybWZ1bCB0b3hpbnMgdGhhdCBkZWdyYWRlIHdhdGVyIHF1YWxpdHkgYW5kIHRocmVhdGVuIGVjb3N5c3RlbXMuIFRoZSBwcm9wb3NlZCBhcHByb2FjaCBmb2N1c2VkIG9uIHV0aWxpemluZyBuYXR1cmFsIGFsZ2FlIHRvIGRldmVsb3AgbWVjaGFuaXNtcyB0aGF0IGluaGliaXQgdGhlIGdyb3d0aCBvZiBoYXJtZnVsIGN5YW5vYmFjdGVyaWEgd2l0aG91dCBkaXNydXB0aW5nIHRoZSBlY29zeXN0ZW0uIFRoaXMgcHJvamVjdCBlbXBoYXNpemVkIGNvbnNlcnZhdGlvbiBhbmQgYmlvZGl2ZXJzaXR5IHdoaWxlIGFkZHJlc3NpbmcgYSBzaWduaWZpY2FudCBlbnZpcm9ubWVudGFsIGlzc3VlIGxpbmtlZCB0byB0aGUgY2xpbWF0ZSBjcmlzaXMuPC9wPixcbiAgICAgIDxwPlRocm91Z2hvdXQgb3VyIGRpc2N1c3Npb25zLCB3ZSByZWNvZ25pemVkIHRoYXQgd2hpbGUgZWFjaCBwcm9qZWN0IGhhZCBtZXJpdCwgdGhlIDxzdHJvbmc+Y3lzdGljIGZpYnJvc2lzPC9zdHJvbmc+IGluaXRpYXRpdmUgb2ZmZXJlZCB0aGUgbW9zdCBwcm9taXNlIGZvciBhIHRhcmdldGVkIGFwcHJvYWNoIHRvIGEgd2VsbC1kZWZpbmVkIHByb2JsZW0uIENGLCBhZmZlY3RpbmcgYSBzdWJzdGFudGlhbCBudW1iZXIgb2YgaW5kaXZpZHVhbHMsIHByb3ZpZGVkIGEgY2xlYXIgb3Bwb3J0dW5pdHkgZm9yIG1lYW5pbmdmdWwgaW1wYWN0IHRocm91Z2ggZ2VuZSB0aGVyYXB5LiBUaGUgaW5zaWdodHMgZ2FpbmVkIGZyb20gb3VyIGV4YW1pbmF0aW9uIG9mIG90aGVyIHByb2plY3RzIGluZm9ybWVkIG91ciBhcHByb2FjaCB0byBDRiwgYWxsb3dpbmcgdXMgdG8gaW50ZWdyYXRlIGtub3dsZWRnZSBmcm9tIGRpdmVyc2UgZmllbGRzIGFuZCBtZXRob2RvbG9naWVzLCB1bHRpbWF0ZWx5IHNoYXBpbmcgYSBjb21wcmVoZW5zaXZlIGFuZCBpbm5vdmF0aXZlIHByb2plY3QgZGlyZWN0aW9uLjwvcD5cbiAgICAgIF0sXG4gICAgbW9udGhzOiBcIk1hcmNoXCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiSWRlYXRpb24gaW4gSGFtYnVyZ1wiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydoYW1idXJnJ10sXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcbiAgICBoZWFkaW5nOiBcIkJyYWluc3Rvcm1pbmcgYW5kIHNlbGVjdGlvbiBvZiBpZGVhcyBhbmQgY29uY2VwdHMgYXQgdGVhbSB3ZWVrZW5kIGluIEhhbWJ1cmdcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJpZGVhc1wiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIlRoYW5rcyB0byBvdXIgaW4tZGVwdGggcmVzZWFyY2ggcGhhc2UsIHdlIHdlcmUgYWJsZSB0byBnYXRoZXIgbWFueSBpbnNpZ2h0ZnVsIGlkZWFzLiBUaGUgd29ya3Nob3Agd2FzIGhpZ2hseSBwcm9kdWN0aXZlIGFuZCBtb3ZlZCB1cyBzaWduaWZpY2FudGx5IGZvcndhcmQsIGFsbG93aW5nIHVzIHRvIGdhaW4gYSBjbGVhciB2aXNpb24gb2Ygb3VyIHByb2plY3QgYnkgdGhlIGVuZCBvZiB0aGUgZGF5LlwiLFxuICAgIHF1b3RlVm9ybmFtZTpcIkthdGhsZWVuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJTdXNhdCwgVGVhbW1lbWJlclwiLFxuICAgIHR5cGU6IFwibWV0YVwiLFxuICAgIHN1bW1hcnk6IFs8cD5Gcm9tIEFwcmlsIDV0aCB0byA3dGgsIHdlIGVtYmFya2VkIG9uIGFuIGVucmljaGluZyBleGN1cnNpb24gZGVkaWNhdGVkIHRvIHByb2plY3Qgd29yayBhbmQgdGVhbSBidWlsZGluZy4gT3VyIHByaW1hcnkgZ29hbCB3YXMgdG8gZW5nYWdlIGluIG1lYW5pbmdmdWwgYnJhaW5zdG9ybWluZyBzZXNzaW9ucyBmb2N1c2VkIG9uIG91ciBpR0VNIHByb2plY3QgYW5kIHRvIGV4cGxvcmUgaHVtYW4gcHJhY3RpY2VzIHRob3JvdWdobHkuIFdlIGtpY2tlZCBvZmYgb3VyIHdlZWtlbmQgd2l0aCBhIHNlcmllcyBvZiBkaXNjdXNzaW9ucyB0aGF0IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29uc2lkZXJpbmcgdGhlIGltcGFjdCBvZiBvdXIgd29yayBvbiB0aGUgd29ybGQuXG4gICAgICBUaHJvdWdob3V0IG91ciB0aW1lIGluIEhhbWJ1cmcsIHdlIGRlZGljYXRlZCBzZXZlcmFsIGhvdXJzIHRvIHJlYWRpbmcgcmVsZXZhbnQgbGl0ZXJhdHVyZSBhbmQgcmVzZWFyY2ggcGFwZXJzLCBib3RoIGluZGl2aWR1YWxseSBhbmQgaW4gZ3JvdXBzLiBUaGlzIGNvbGxhYm9yYXRpdmUgZWZmb3J0IGFsbG93ZWQgdXMgdG8gZGVlcGVuIG91ciB1bmRlcnN0YW5kaW5nIG9mIGV4aXN0aW5nIHByb2plY3RzIGFuZCBpbm5vdmF0aW9ucyBpbiBvdXIgZmllbGQuIFdlIGNyaXRpY2FsbHkgYW5hbHl6ZWQgcHJldmlvdXMgaUdFTSBwcm9qZWN0cyBhbmQgZXhwbG9yZWQgd2hvIGhhZCB3b3JrZWQgb24gc2ltaWxhciBpZGVhcywgd2hpY2ggaGVscGVkIHVzIGlkZW50aWZ5IGdhcHMgaW4gdGhlIHJlc2VhcmNoIGFuZCBwb3RlbnRpYWwgYXZlbnVlcyBmb3Igb3VyIG93biBwcm9qZWN0LlxuICAgICAgT3VyIGRpc2N1c3Npb25zIG5hdHVyYWxseSBmbG93ZWQgaW50byBicmFpbnN0b3JtaW5nIHNlc3Npb25zIHdoZXJlIHdlIHJlZmxlY3RlZCBvbiB0aGUgaW1wYWN0cyB3ZSB3YW50ZWQgdG8gYWNoaWV2ZS4gV2UgZXhwbG9yZWQgZXNzZW50aWFsIHF1ZXN0aW9uczogV2hhdCBlZmZlY3RzIGRvIHdlIGFpbSB0byBoYXZlIG9uIHNvY2lldHk/IFdoYXQgYWN0aXZpdGllcyBjYW4gd2UgcGxhbiB0byBnYXRoZXIgZXZpZGVuY2UgYWJvdXQgaG93IG91ciB3b3JrIHdpbGwgcmVzb25hdGUgd2l0aCB0aGUgY29tbXVuaXR5PyBIb3cgY2FuIHdlIGVmZmVjdGl2ZWx5IGVuZ2FnZSB3aXRoIHN0YWtlaG9sZGVycyBhbmQgc2hhcmUgb3VyIGZpbmRpbmdzP1xuICAgICAgSW4gYWRkaXRpb24gdG8gc3RydWN0dXJlZCBicmFpbnN0b3JtaW5nLCB3ZSBleGNoYW5nZWQgaWRlYXMgaW5mb3JtYWxseSBkdXJpbmcgYnJlYWtzIGFuZCBtZWFscywgZm9zdGVyaW5nIGEgY3JlYXRpdmUgYXRtb3NwaGVyZS4gQnkgdGhlIGVuZCBvZiB0aGUgd2Vla2VuZCwgd2UgaGFkIG5vdCBvbmx5IHN0cmVuZ3RoZW5lZCBvdXIgdGVhbSBib25kcyBidXQgYWxzbyBjbGFyaWZpZWQgb3VyIHZpc2lvbiBmb3IgdGhlIHByb2plY3QgYWhlYWQuIFRoZSBpbnNpZ2h0cyBnYWluZWQgZnJvbSBvdXIgZGlzY3Vzc2lvbnMgYW5kIHJlYWRpbmdzIGxhaWQgYSBzb2xpZCBmb3VuZGF0aW9uIGZvciBvdXIgZnV0dXJlIHdvcmssIGFsbG93aW5nIHVzIHRvIGFwcHJvYWNoIG91ciBwcm9qZWN0IHdpdGggcmVuZXdlZCBmb2N1cyBhbmQgcHVycG9zZS48L3A+XSxcbiAgICBtb250aHM6IFwiTWFyY2hcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJNYXhcIixcbiAgICBuYWNobm5hbWU6IFwiQmVja21hbm5cIixcbiAgICBqb2I6IFwiUGF0aWVudCBhbmQgU3R1ZGVudFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXG4gICAgcGljdHVyZXVybDogcGljc1snbWF4J10sXG4gICAgdGFnOiBcIlBhdGllbnRcIixcbiAgICBoZWFkaW5nOiBcIkdhdGhlcmluZyB2YWx1YWJsZSBpbnNpZ2h0cyBmcm9tIHRoZSBwYXRpZW50XHUyMDE5cyBwZXJzcGVjdGl2ZVwiLFxuICAgIGludGVydmlld3RhYmlkOiBcIm1heGZpcnN0XCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZU5hY2huYW1lOlwiQmVja21hbm4sIFBhdGllbnRcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiTWF4XCIsXG4gICAgcXVvdGU6IFwiQSBmcmllbmQgb2YgbWluZSB3aXRoIGN5c3RpYyBmaWJyb3NpcyByZWNlbnRseSBnb3QgYSBmdW5nYWwgaW5mZWN0aW9uIHRoYXQgaGUgY2FuJ3QgZ2V0IHJpZCBvZi4gSGlzIHNpdHVhdGlvbiByZWFsbHkgc3RydWNrIG1lOyBpdCBzaG93ZWQgaG93IHF1aWNrbHkgYSBzZWVtaW5nbHkgbWlub3IgaXNzdWUgY2FuIHdvcnNlbiBhIHBlcnNvbidzIGxpZmUsIGVzcGVjaWFsbHkgZm9yIHNvbWVvbmUgbGlrZSB1cy4gSXRcdTIwMTlzIGEgc3Ryb25nIHJlbWluZGVyIG9mIGhvdyBmcmFnaWxlIG91ciBoZWFsdGggaXMgYW5kIGhvdyBmYXN0IHRoaW5ncyBjYW4gY2hhbmdlIHdpdGhvdXQgd2FybmluZy5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5XaGVuIENGIGNhbWUgdXAgYXMgYSBwb3NzaWJsZSB0b3BpYywgd2UgcmVhY2hlZCBvdXQgdG8gYSB0ZWFtbWF0ZSdzIGZyaWVuZCBNYXggaW4gdGhlIGhvcGVzIG9mIGdldHRpbmcgaW5zaWdodHMgaW50byB0aGUgbmVlZHMgb2YgQ0YgcGF0aWVudHMgYW5kIGN1cnJlbnQgdHJlYXRtZW50cyB0byB2ZXJpZnkgdGhlIG5lZWQgZm9yIGZ1cnRoZXIgdHJlYXRtZW50IG9wdGlvbnMuXG4gICAgICBTaW5jZSBoZSB3YXMgbXVjaCBtb3JlIGVudGh1c2lhc3RpYyBhbmQgb3BlbiBmb3IgZGlzY3Vzc2lvbiB0aGFuIHdlIGRhcmVkIHRvIGhvcGUsIHdlIGV4dGVuZGVkIG91ciBleGNoYW5nZXMgaW50byB0aGUgcmVhbG1zIG9mIHRoZSByZWFsaXR5IG9mIGxpZmUgZm9yIENGIHBhdGllbnRzLCBwb3NzaWJsZSBwcm9ncmVzc2lvbnMsIG9yZ2FuaXphdGlvbnMgYW5kIGRvY3RvcnMgaW4gb3VyIGFyZWEgYW5kIGhpcyBwZXJzb25hbCBwZXJzcGVjdGl2ZXMgYW5kIHZhbHVlcy5cbiAgICAgIFRoZSBpbnRlcmVzdCBpbiBtZWV0aW5nIGhpbSBncmV3IGluIHRoZSB3aG9sZSB0ZWFtIGFuZCB3ZSBpbnZpdGVkIGhpbSB0byBvbmUgb2Ygb3VyIG1lZXRpbmdzLiAgIDwvcD5dLFxuICAgIGluc2lnaHRzOiBbPD48cD5IaXMgaG9uZXN0IGFuZCBvcGVuIGFuc3dlcnMgdG8gdXMsIG1vc3RseSBub3RoaW5nIG1vcmUgdGhhbiBzdHJhbmdlcnMgdG8gaGltLCB3ZXJlIHRvdWNoaW5nIGFuZCBsZXQgdGhlIHNlcmlvdXNuZXNzIG9mIENGIHNldCBpbi5cbiAgICAgIExlYXJuaW5nIGFib3V0IHRoZSBjaGFsbGVuZ2VzIGhlIGZhY2VkIGZlbHQgaGVhdnksIGJlc2lkZXMgaGltIGJlaW5nIGluIHJlbGF0aXZlbHkgZ29vZCBoZWFsdGggYW5kIGhhdmluZyBhIGdvb2QgbGlmZSBxdWFsaXR5IGZvciBhIENGIHBhdGllbnQuXG4gICAgPC9wPlxuICAgICAgPHA+QWRkaXRpb25hbCB0byB0aGUgaW50ZXJwZXJzb25hbCBlZmZlY3RzIG9mIG91ciBkaXNjdXNzaW9uLCBNYXggZ2F2ZSB1cyB0aGUgcmVhc29ucyB0byBjb250aW51ZSB3aXRoIGdlbmUgdGhlcmFweSBhcHByb2FjaCB3aGlsZSBmb2N1c2luZyBvbiB0aGUgbHVuZzpcbiAgICAgICAgTW9kdWxhdG9ycyBkbyBub3QgZXJhc2UgYWxsIHN5bXB0b21zLlxuICAgICAgICBUaGVyZSBpcyBhIGtlZW4gaW50ZXJlc3QgZm9yIG5ldyB0cmVhdG1lbnRzIGluIHRoZSBDRiBjb21tdW5pdHkuXG4gICAgICAgIFRoZSB0aGUgZGVjcmVhc2luZyBsdW5nIGZ1bmN0aW9uYWxpdHkgaXQgdGhlIG1vc3QgbGltaXRpbmcuXG4gICAgICAgIFRoZSBpbW1lbnNlIGltcGFjdCBvZiB0cmVhdG1lbnRzIG9uIHRoZSBsaWZlIHF1YWxpdHkuICA8L3A+XG4gICAgICA8cD5XZSBnb3QgbmV3IGluc2lnaHRzIHRoYXQgbW90aXZhdGVkIHVzIHRvIGRldmVsb3AgYSBuZXcgdHJlYXRtZW50LCB0byB0cmVhdCB0aGUgc2V2ZXJlIHN5bXB0b21lc1xuICAgICAgICBUaGUgbmVlZCBmb3IgYSBjYWxvcmllIHJpY2ggZGlldCBhbmQgZGlnZXN0aXZlIHByb2JsZW1zLlxuICAgICAgICBUaGUgZnJlcXVlbmN5IG9mIGNoZWNrdXBzIG5lZWRlZC5cbiAgICAgICAgSG93IHZhc3RseSBkaWZmZXJlbnQgdGhlIHByb2dyZXNzaW9ucyBjYW4gYmUuXG4gICAgICAgIFRoZSBpbmNyZWFzZWQgbmVlZCBmb3IgaHlnaWVuZSB0byBwcmV2ZW50IGluZmVjdGlvbnMuXG4gICAgICAgIFRoZSBoaWdoIHByaWNlIG9mIG1lZGljaW5lcyBhbmQgaW5kdXZpYWwgdGhlcmFwZXV0aWNzLiA8L3A+XG4gICAgICA8cD5BZnRlcndhcmRzLCB3ZSByZWZsZWN0ZWQgb24gdGhlIGRpc2N1c3Npb24gYW5kIGFza2VkIG91ciB0ZWFtIG1lbWJlcnMgd2hhdCBzdHVjayB3aXRoIHRoZW06XG4gICAgICAgIFx1MjAxQ0hvdyBtdWNoIGF0dGVudGlvbiBoYXMgdG8gYmUgcGFpZCB0byBldmVyeXRoaW5nIGluIGV2ZXJ5ZGF5IGxpZmUsIEkgaGFkbid0IGV2ZW4gdGhvdWdodCBhYm91dCBwcm9ibGVtcyBhdCB0aGUgaGFpcmRyZXNzZXIuXHUyMDFEXG4gICAgICAgIFx1MjAxQ1NpbXBseSB0aGF0IGhlIHdhcyB0aGVyZSBhbmQgcmVwb3J0ZWQgZXZlcnl0aGluZyBpbiBzdWNoIGRldGFpbC4gRnJvbSBtaW51dGUgMSwgSSBoYWQgcGVybWFuZW50IGdvb3NlYnVtcHMgYmVjYXVzZSBJIHdhcyBzbyBtb3ZlZCBieSB0aGlzIHN0b3J5LiBJIHRoaW5rIGl0J3MgZ3JlYXQgaG93IGhlIHN0YW5kcyBoaXMgZ3JvdW5kIGluIGxpZmUsIGRvZXMgd2hhdCBoZSB3YW50cyB0byBkbyBhbmQgd2hhdCBkZWZpbmVzIGhpbSBhcyBhIHBlcnNvbi4gSXQgZGlkbid0IHNlZW0gYXMgaWYgaGlzIGxpZmUgd2FzIGRldGVybWluZWQgYnkgQ0YuIEkgc29tZWhvdyBleHBlY3RlZCBpdCB0byBiZSBkaWZmZXJlbnQsIGV2ZW4gaWYgdGhhdCBzb3VuZHMgYSBiaXQgc2lsbHkuXHUyMDFEXG4gICAgICAgIFx1MjAxQ1RoZSBhbW91bnQgb2YgbWVkaWNhdGlvbiBhbmQgaG93IGV4cGVuc2l2ZSBpdCBpcy5cdTIwMURcbiAgICAgICAgXCJUaGUgc3RhdGVtZW50IHRoYXQgbGVmdCB0aGUgYmlnZ2VzdCBpbXByZXNzaW9uIGZvciBtZSB3YXMgd2hlbiBNYXggd2FzIHRlbGxpbmcgYWJvdXQgYSBmcmllbmQgb2YgaGlzIGFuZCBmZWxsb3cgQ0YgcGF0aWVudCB3aG8gY2F1Z2h0IGEgZnVuZ2kgaW5mZWN0aW9uIHdoaWNoIGhlIG5vdyBjYW5ub3QgZ2V0IHJpZCBvZiBhbnltb3JlLCBzaG93aW5nIGhvdyBmYXN0IGEgc2VlbWluZ2x5IGxpdHRsZSBpbmZlY3Rpb24gY2FuIGNoYW5nZSB0aGUgbGlmZSBvZiBhIENGIHBhdGllbnQgZm9yIHRoZSB3b3JzZSB3aXRob3V0IGFueSBraW5kIG9mIHdhcm5pbmcuXHUyMDFEXG4gICAgICAgIFx1MjAxQ1RoZSB2YXJpYW5jZSBpbiB0aGUgZXh0ZW50IG9mIHRoZSBsaW1pdGF0aW9ucyBvZiB0aGUgZGlzZWFzZSBpbiBkaWZmZXJlbnQgcGF0aWVudHMsIGluY2x1ZGluZyBob3cgdGhlIGRpc2Vhc2UgZGlmZmVycyBpbiBpdHMgc2V2ZXJpdHksIGV2ZW4gaW4gcGF0aWVudHMgb2YgdGhlIHNhbWUgYWdlLlx1MjAxRFxuICAgICAgICBcdTIwMUNIb3cgcG9zaXRpdmVseSBhbmQgY2FsbWx5IE1heCBkZWFscyB3aXRoIGhpcyBpbGxuZXNzIGJ1dCBoYXMgYWxzbyBwb2ludGVkIG91dCB0aGF0IGhlIGlzIGx1Y2t5LCBhbmQgdGhhdCBvdGhlciBwZW9wbGUgYXJlIG11Y2ggd29yc2Ugb2ZmIC0gaG93IG11Y2ggeW91IGhhdmUgdG8gcGF5IGF0dGVudGlvbiB0byBsaXR0bGUgdGhpbmdzIHRoYXQgeW91IHdvdWxkbid0IGhhdmUgZXhwZWN0ZWQgYXMgYSBoZWFsdGh5IHBlcnNvbi5cdTIwMUQgPC9wPlxuICAgIDwvPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8PiA8cD5UaGlzIG1vc3QgaW1wb3J0YW50IGFzcGVjdCBvZiB0aGlzIG1lZXRpbmcgd2FzIGxlc3MgYW4gaW5zaWdodCwgYnV0IHRoZSBmYWN0IE1heCBoZWxwZWQgdXMgdG8gcHV0IGEgZmFjZSB0byBhbiBhYnN0cmFjdCBpZGVhLiBNYW55IG9mIG91ciBpZGVhcyB0byB0cmVhdCBDRiB3ZXJlIGludGVyZXN0aW5nIGFuZCBhZHZlbnR1cm91cyBidXQgbWVldGluZyBoaW0gcHV0IGEgbG90IGludG8gcGVyc3BlY3RpdmUuIDwvcD5cbiAgICAgIDxwPk1heCBwbGF5ZWQgYSBzaWduaWZpY2FudCByb2xlIGluIHNoYXBpbmcgb3VyIHByb2plY3QgZnJvbSB0aGUgb3V0c2V0LCBwYXJ0aWN1bGFybHkgaW4gZ3VpZGluZyBvdXIgZm9jdXMgb24gSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMgW0xpbmsgQmVzdCBIUF0gYW5kIFNhZmV0eSAmIFNlY3VyaXR5IFtMaW5rIEJlc3QgQmlvc2FmZXR5XSBhcyBzcGVjaWFsIHByaXplcy4gVGhyb3VnaCBvdXIgZGlzY3Vzc2lvbnMsIHdlIHJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgdGhlc2UgYXNwZWN0cyBpbiBkZXZlbG9waW5nIHRoZSBiZXN0IHBvc3NpYmxlIGN1cmUuIFRoaXMgY29sbGFib3JhdGl2ZSBlZmZvcnQgbGVkIHVzIHRvIHBpdm90IG91ciB0YXJnZXQgZnJvbSB0aGUgcGFuY3JlYXMgdG8gdGhlIGx1bmcgYW5kIG1vdmUgYXdheSBmcm9tIGEgZGlhZ25vc3RpYyBhcHByb2FjaC4gSGlzIGNvbnRyaWJ1dGlvbnMgbm90IG9ubHkgcHJvdmlkZWQgdmFsdWFibGUgaW5zaWdodHMgYnV0IGFsc28gZm9zdGVyZWQgYSBzdHJvbmcgcGVyc29uYWwgaW52ZXN0bWVudCBpbiBvdXIgcHJvamVjdC48L3A+PC8+XSxcbiAgICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uOiBcIlwiLFxuICAgIGludGVydmlldzogPD48UWFCb3ggcT1cIkhvdyBhbmQgd2hlbiB3ZXJlIHlvdSBmaXJzdCBkaWFnbm9zZWQ/IFwiIGE9XCJXaGVuIEkgd2FzIGFib3V0IG9uZSB5ZWFyIG9sZC4gTXkgbW90aGVyIGRpZCBub3QgZG8gYW55IHNjcmVlbmluZ3Mgb3IgcHJlbmF0YWwgdGVzdGluZy4gSSB3YXMgaW4gcGFpbiBidXQgYXMgYW4gaW5mYW50IHlvdSBjYW5ub3Qgc2F5IHRoYXQsIHNvIEkgc2NyZWFtZWQgYSBsb3QuIE1hbnkgZG9jdG9ycyBzaHJ1ZyB0aGF0IG9mZiBpbiBzbWFsbCBjaGlsZHJlbiBidXQgYWZ0ZXIgc29tZSB0aW1lIGEgc3dlYXQgdGVzdCB3YXMgZG9uZSBhdCB0aGUgY2hpbGRyZW4ncyBjbGluaWMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgdGhpbmsgYWJvdXQgZGlhZ25vc2luZyB2aWEgc3dlYXQgdGVzdHM/XCIgYT1cIkkgYW0gYSBjbGVhciBvcHBvbmVudCBvZiBkaWFnbm9zaW5nIHZpYSBzd2VhdCB0ZXN0cywgZXNwZWNpYWxseSBpZiBpdCBpcyB1c2VkIHRvIHJ1bGUgb3V0IENGIGFuZCBwZW9wbGUgaGF2ZSBhdHlwaWNhbCBDRiwgYmVjYXVzZSBvZiB3aGljaCB0aGV5IGRvIG5vdCBnZXQgZGlhZ25vc2VkIGJlY2F1c2Ugb2YgdGhhdC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHN5bXB0b21zIGRvIHlvdSBoYXZlP1wiIGE9XCJCZWZvcmUgdGFraW5nIG1vZHVsYXRvcnMsIEkgd2FzIHVuZGVyd2VpZ2h0IGFuZCBkaWQgbm90IGZlZWwgaHVuZ2VyLiBJIGFsc28gaGFkIG5vIHNlbnNlIG9mIHRhc3RlLiBOb3csIEkgaGF2ZSBhIGhlYWx0aHkgd2VpZ2h0IGFuZCBzdGlsbCBoYXZlIHJlc3BpcmF0b3J5IHN5bXB0b21zIHN1Y2ggYXMgdmVyeSBzdGlja3kgbXVjdXMgYW5kIGRpZ2VzdGl2ZSBpc3N1ZXMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiWW91IGFyZSB0YWtpbmcgaW5kaXZpZHVhbCBtZWRzLCBjb3JyZWN0PyBUaGV5IGFyZSBpbmRpdmlkdWFsIGluIHJlc3BlY3QgdG8gdGhlIG11dGF0aW9uLCBub3QgdGhlIHBlcnNvbiwgcmlnaHQ/XCIgYT1cIlllcywgYW5kIHllcywgSSBhbS4gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBvdGhlciBtZWRpY2F0aW9ucyBhcmUgeW91IHRha2luZz8gXCIgYT1cIk5hc2FsIHNwcmF5LCBwYW5jcmVhdGljIGVuenltZXMsIHNhbGluZSBzb2x1dGlvbiBmb3IgaW5oYWxhdGlvbiBhbmQgcGFudG9wcmF6b2xlLCB1c2VkIHRvIHJlZHVjZSBzdG9tYWNoIGFjaWQgcHJvZHVjdGlvbi4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBrbm93IGhvdyBleGFjdGx5IHRoZXkgd29yaz9cIiBhPVwiWWVzLCBJIHdyb3RlIGEgcmVwb3J0IG9uIHRoYXQgZHVyaW5nIHNjaG9vbC4gSW4gdGhlIGNoaWxkcmVuJ3MgY2xpbmljIHRoZXkgZXhwbGFpbmVkIGl0IGxpa2UgdGhpczogVGhlIENGVFIgY2hhbm5lbCBpcyBsaWtlIGEgZG9vciBhbmQgcGVvcGxlIHdpdGggQ0YgZG9uXHUyMDE5dCBoYXZlIHRoYXQgbWFueSBkb29ycyBhbmQgc29tZSBvZiB0aGUgZG9vcnMgYXJlIGJyb2tlbi4gVGhlIG1lZGljYXRpb24gbWFrZXMgbW9yZSBkb29ycyB0aGF0IGZ1bmN0aW9uLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgY2hhbmdlZCB3aGVuIHlvdSBzdGFydGVkIHRha2luZyB0aGUgbW9kdWxhdG9ycz8gXCIgYT1cIkV2ZXJ5dGhpbmcuIE1vc3Qgb2Ygc3ltcHRvbXMgYXJlIG1pbm9yIG5vdyBhbmQgSSBoYXZlIGEgYmV0dGVyIGx1bmcgZnVuY3Rpb24gYW5kIHF1YWxpdHkgb2YgbGlmZS4gSSBldmVuIGdyZXcgdGFsbGVyLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRpZCB5b3UgZm9ybWVybHkgdGFrZSBvdGhlciBtZWRpY2F0aW9uP1wiIGE9XCJJIGRvblx1MjAxOXQgcmVtZW1iZXIgYW55dGhpbmcgbGlrZSB0aGF0LCBidXQgSSBhbHNvIGFsd2F5cyBoYWQgZ29vZCBtZWRpY2FsIGNhcmUuICBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJEbyB5b3UgZXhwZXJpZW5jZSBhbnkgc2lkZSBlZmZlY3RzIGZyb20geW91ciBtZWRpY2F0aW9ucz9cIiBhPVwiQXQgZmlyc3QgeWVzLCBhIGxvdC4gU3RvbWFjaCBjcmFtcHMgYW5kIGRpZmZpY3VsdHkgYnJlYXRoaW5nIGZvciBleGFtcGxlLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIklzIGRpYWJldGVzIGEgY29uY2VybiBvZiB5b3Vycz9cIiBhPVwiWWVzLCBpdCBpcyBjb21tb24uIEkgaGF2ZSB0byBnbyB0byBhIGRpYWJldGVzIGNoZWNrdXAgb25jZSBhIHllYXIuIFRoYXQgaGFwcGVucyB0b2dldGhlciB3aXRoIGFsbCB0aGUgb3RoZXIgY2hlY2t1cHMgbGlrZSBzb25vZ3JhcGhpZXMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGtub3cgZmVsbG93IHBhdGllbnRzIHRoYXQgdG9vayBwYXJ0IGluIGNsaW5pY2FsIHN0dWR5IGZvciBnZW5lIHRoZXJhcHkgb3IgYXQgbGVhc3QgdGhvdWdodCBhYm91dCBkb2luZyBzbz9cIiBhPVwiSSBrbm93IG5vIG9uZSB0aGF0IHRvb2sgcGFydCBpbiBvbmUgYnV0IGRlZmluaXRlbHkgcGVvcGxlIHdobyB3b3VsZCBsaWtlIHRvIGRvIHNvLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBrbm93IG90aGVyIHBhdGllbnRzIHRoYXQgd291bGQgd2FudCB0byB1c2UgZ2VuZSB0aGVyYXB5P1wiIGE9XCJZZXMsIG1vc3QgZGVmaW5pdGVseS5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJTaW5jZSB5b3VyIHN3ZWF0IGlzIGRpZmZlcmVudCwgZG8geW91IGhhdmUgdHJvdWJsZSB3aXRoIHlvdXIgdGVtcGVyYXR1cmUgcmVndWxhdGlvbj9cIiBhPVwiTm8gYW5kIEkgZG8gbm90IGtub3cgYW55IHBhdGllbnRzIHdpdGggYW4gaXNzdWUgbGlrZSB0aGF0LiBCdXQgaXQgc3RpbGwgaXMgdW5jb21mb3J0YWJsZSBpbiB0aGUgc3VtbWVyLCBiZWNhdXNlIHRoZSBzd2VhdCBpcyB0aGljaywgYW5kIGl0IGNhbiBzbWVsbCBzdHJvbmdlciwgdG9vLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyBtYW55IGhvdXJzIGEgZGF5IGFyZSBkZXZvdGVkIHRvIHlvdXIgaWxsbmVzcz9cIiBhPVwiR29vZCBxdWVzdGlvbiwgYnV0IHdyb25nIHBhdGllbnQuIEkgYW0gYmxlc3NlZCB3aXRoIGdvb2QgaGVhbHRoIHdoaWxlIG90aGVyIHBlb3BsZSBteSBhZ2UgbWF5IGhhdmUgdG8gYmUgb24gYSB2ZW50aWxhdG9yLiBJIGN1cnJlbnRseSBvbmx5IGhhdmUgdG8gaW5oYWxlIGZvciAyMCBtaW51dGVzIGV2ZXJ5IGRheSwgdGFrZSBteSBtZWRpY2F0aW9uIGFuZCBiZSBjb25zY2lvdXMgYWJvdXQgaHlnaWVuZS4gSSB3b3VsZCBzYXkgMzAgbWludXRlcyBhIGRheS4gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiVGhhdCBtZWFucyB5b3UgZG8gbm90IGhhdmUgbWFueSBsaW1pdGF0aW9ucyBkdWUgdG8gQ0YsIGlzIHRoYXQgcmlnaHQ/XCIgYT1cIlllcy4gVGhlcmUgYXJlIG1hbnkgdGhpbmdzIEkgYW0gY29uY2VybmVkIGFib3V0IGJ1dCBvZnRlbiB0aGVyZSBpcyBub3QgYSBkaWZmZXJlbnQgd2F5LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHNvbWUgb2YgdGhlIGxpbWl0YXRpb25zIHlvdSBkbyBoYXZlP1wiIGE9XCJPZiBjb3Vyc2UsIEkgYW0gc3RpbGwgY29uY2VybmVkIGFib3V0IG15IGhlYWx0aCBhbmQgdXNpbmcgcHVibGljIGJhdGhyb29tcyBmb3IgZXhhbXBsZS4gQW5kIEkgc3RpbGwgZG8gbm90IGdvIHN3aW1taW5nIGluIGxha2VzIGFuZCB0aGluZ3MgbGlrZSB0aGF0LiBCdXQgYWxsIGluIGFsbCwgSSBmZWVsIGxpa2UgSSBjYW4gbGl2ZSBhIHZlcnkgbm9ybWFsIGxpZmUuICBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJPbmUgY29uY2VybiBpcyBoeWdpZW5lLiBPdXIgdW5pdmVyc2l0eSBmb3IgZXhhbXBsZSBkb2VzIG5vdCBoYXZlIHRvaWxldCBzZWF0cyBpbiBtb3N0IGJhdGhyb29tcy4gRG8geW91IHRoaW5rIHRoZXJlIHNob3VsZCBiZT9cIiBhPVwiVGhhdCBkb2VzIG5vdCBjb25jZXJuIGhlYWx0aHkgcGVvcGxlLCB3aG8gYXJlIHRoZSBtYWpvcml0eS4gQnV0IHNwZWNpZmljYWxseSBmb3IgQ0YtcGVvcGxlPyBObywgdGhlcmUgYXJlIHRvbyBmZXcgYXQgdGhlIHVuaXZlcnNpdHkuIEl0IHdvdWxkIGJlIG1vcmUgaHlnaWVuaWMgb3ZlcmFsbCwgdGhvdWdoLiBBIFx1MjAxQ0NGLXRvaWxldFx1MjAxRCB3b3VsZCBiZSBuaWNlIGFzIGEgZm9ybSBvZiBhIGRpc2FibGVkIGJhdGhyb29tLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyB3YXMgeW91ciBjaGlsZGhvb2QgYXMgYSBzaWNrIGNoaWxkIGFuZCBob3cgZGlkIHlvdXIgcGFyZW50cyBhY3Qgd2l0aCB5b3U/ICBcIiBhPVwiTXkgbW90aGVyIGlzIGFjdGl2ZSBpbiB0aGUgTXVrbyBlLlYuIGFuZCBoYXMgYmVlbiBmb3Igc29tZSB0aW1lLiBNeSBwYXJlbnRzIGFsd2F5cyBsZWFkIGJ5IGV4YW1wbGUgYWJvdXQgd2hhdCB0byBkbyBhbmQgbm90IHRvIGRvIGFuZCBkZWFsdCB3aXRoIGl0IGluIGEgZ29vZCB3YXkuIE15IG1vdGhlciB3YXMgYWx3YXlzIHZlcnkgY29tbWl0dGVkIGFuZCBpbnZvbHZlZCBpbiBnaXZpbmcgbWUgZ29vZCBjYXJlLiBJIGFsd2F5cyBrbmV3IGFib3V0IG15IGlsbG5lc3MgYnV0IGZlbHQgaXQgd2FzIG5vdCB0aGF0IGJhZCwgYmVjYXVzZSBJIHJlY2VpdmVkIGdvb2QgY2FyZSBhbmQgZWR1Y2F0aW9uIGFib3V0IG15IGlsbG5lc3MuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBpcyBhIHR5cGljYWwgYWdlIGZvciBhIGRpYWdub3NpcyBpbiB5b3VyIGV4cGVyaWVuY2U/XCIgYT1cIlNvbWV3aGVyZSBiZXR3ZWVuIHRoZSBwcmVnbmFuY3kgYW5kIG9uZSB5ZWFyLiBJdCBpcyBvYnZpb3VzIGlmIHRoZSBjaGlsZHJlbiBkbyBub3QgZ2FpbiB3ZWlnaHQgYW5kIHRoZXJlIGFyZSBnZW5ldGljIHNjcmVlbmluZ3Mgb25lIGNhbiBkbyBwcmVuYXRhbGx5IG9yIGFmdGVyIGJpcnRoLiAgXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSWYgYSBkaWFnbm9zaXMgaXMgcG9zc2libGUgZHVyaW5nIHByZWduYW5jeSwgZG8geW91IGtub3cgb2YgYW55IHRyZWF0bWVudHMgZHVyaW5nIHByZWduYW5jeT9cIiBhPVwiTm8sIEkgdGhpbmsgdGhlIHlvdW5nZXN0IGFnZSBmb3IgbW9kdWxhdG9ycyBpcyAzIHllYXJzLiBCdXQgcGVvcGxlIGNhbiBkbyBnZW5ldGljIHRlc3RpbmcgYW5kIGNvdW5zZWxsaW5nIGJlZm9yZSBwcmVnbmFuY3kuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkb2VzIGEgaGlnaC1mYXQgZGlldCBlbnRhaWw/XCIgYT1cIkZvciBtZSwgaXQgd2FzIGEgbG90IG9mIG9pbCBhbmQgYnV0dGVyIGFuZCBoaWdoLWNhbG9yeSBkcmlua3MuICBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHdvdWxkIGhhcHBlbiBpZiB5b3Ugc3RvcHBlZCB0YWtpbmcgeW91ciBtZWRpY2F0aW9ucz9cIiBhPVwiVGhlIGZpcnN0IHRoaW5nIHRvIGhhcHBlbiB3b3VsZCBiZSBoZWF2eSBhbmQgZHJ5IGNvdWdoaW5nLCBiZWNhdXNlIHRoZSBtdWN1cyB3b3VsZCBub3QgYmUgcmVtb3ZlZCBwcm9wZXJseSBhbnltb3JlLiBUaHVzLCBiYWN0ZXJpYSB3b3VsZCBub3QgYmUgcHJvcGVybHkgcmVtb3ZlZCBmcm9tIHRoZSBsdW5ncyBhbnltb3JlIGVpdGhlciBhbmQgYW4gaW5mZWN0aW9uIHdvdWxkIGJlY29tZSBtb3JlIGxpa2VseS4gQW5kIEkgd291bGQgbm90IGJlIGFibGUgdG8gcmVhbGx5IHByb2Nlc3MgZm9vZCBhbnltb3JlLCBzbyBubyBudXRyaWVudHMsIGZlZWxpbmcgd2VhayBhbmQgc3RvbWFjaCBwcm9ibGVtcy4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIlBoeXNpY2FsIHRoZXJhcHkgaXMgYSBwYXJ0IG9mIHlvdXIgdHJlYXRtZW50IFx1MjAxMyB3aGF0IGV4YWN0bHkgZG8geW91IGRvIHRoZXJlPyAgXCIgYT1cIkJyZWF0aGluZyBleGVyY2lzZXMgYW5kIHRyYWluaW5nIG15IGx1bmcgdm9sdW1lIHRvIGtlZXAgaXQgb24gdGhlIHNhbWUgbGV2ZWwuXHUwMEEwXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGhhdmUgZnVydGhlciB3aXNoZWQgZm9yIHlvdXIgdGhlcmFweT9cIiBhPVwiTm90IHJlYWxseS4gSSBhbSB2ZXJ5IGx1Y2t5IGFuZCBhbSBmcmVlIG9mIGhlYXZ5IHN5bXB0b21zIG9uIG1vc3QgZGF5cy4gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSXMgdGhhdCB0aGUgbm9ybSBvciBkbyB5b3Uga25vdyBwZW9wbGUgd2hvIGRvIHdhbnQgbmV3IHRoZXJhcGllcz9cIiBhPVwiTm8sIHRoZXJlIGlzIGEgbmVlZCBmb3IgbmV3IHRoZXJhcGllcy4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkFyZSB0aGVzZSBwZW9wbGUgd2l0aCBkaWZmZXJlbnQgbXV0YXRpb25zIG9yIHdvcnNlIGhlYWx0aD8gXCIgYT1cIkkgZG9uXHUyMDE5dCBrbm93LCB0aGUgcHJvZ3Jlc3Npb24gaXMgc28gaW5kaXZpZHVhbCwgYW5kIGluZmVjdGlvbnMgY2FuIGNyZWF0ZSBiaWcgY2hhbmdlcy4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkEgdGhlcmFweSBmb3Igd2hpY2ggb3JnYW4gd291bGQgYmVuZWZpdCBtb3N0IHBlb3BsZSB0aGF0IGhhdmUgd29yc2UgaGVhbHRoIHRoYW4geW91IGRvP1wiIGE9XCJQcm9iYWJseSB0aGUgbHVuZy4gVGhlIHBhbmNyZWFzIGlzIGltcG9ydGFudCB0b28sIGJ1dCBzdG9tYWNoIHByb2JsZW1zIGFyZSB1c3VhbGx5IGxlc3MgcHJlc3NpbmcgdGhhbiBkaWZmaWN1bHR5IGluIGJyZWF0aGluZy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJZb3UgbWVudGlvbmVkIHRoYXQgZG9pbmcgc3BvcnQgaXMgZGlmZmljdWx0IHdpdGggQ0YsIHdoeT9cIiBhPVwiSHlnaWVuZS4gSW4gdGhlIGxvY2tlcnMgYW5kIHRoZSBzaG93ZXJzIGJ1dCBhbHNvIHdpdGggdGhlIGVxdWlwbWVudC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJEbyB5b3UgZmVlbCByZXN0cmljdGVkIGluIHlvdXIgZnJlZSB0aW1lIGFjdGl2aXRpZXM/XCIgYT1cIk5vLCBJIGFsd2F5cyBoYWQgZ29vZCBhbHRlcm5hdGl2ZXMuIEZvciBleGFtcGxlLCBnb2luZyBzd2ltbWluZyBhdCBhbiBvcGVuLWFpciBzd2ltbWluZyBwb29sIGluc3RlYWQgb2YgYSBsYWtlLiAgXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV291bGQgeW91IGhhdmUgbW9yZSBmcmVlZG9tIHdoZW4geW91IGFyZSBiZXR0ZXIgcHJvdGVjdGVkIGZyb20gUHNldWRvbW9uYXMgc3BjYy4gYW5kIG90aGVyIHBvdGVudGlhbCBpbmZlY3Rpb25zPyAgXCJhPVwiRGVmaW5pdGVseS4gVGhhdCBpcyBhIGJpZyBpbmNyZWFzZSBpbiB0aGUgcXVhbGl0eSBvZiBsaWZlIGFuZCB0aGF0IGlzIGEgd2luLiBJdCBhbHNvIGNoYW5nZXMgdGhlIHBpY3R1cmUgcGVvcGxlIGhhdmUgb2YgdGhlIGlsbG5lc3MuIE9mIGNvdXJzZSBiZWluZyBwcm90ZWN0ZWQgYnkgcHJldmVudGlvbiBpcyBnb29kIGFscmVhZHkgYnV0IGVmZmVjdGl2ZSB0aGVyYXBpZXMgZm9yIGluZmVjdGlvbnMgaW5jcmVhc2UgdGhlIHNlbnNlIG9mIGZyZWVkb20gZXZlbiBtb3JlLiBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJZb3Ugc2FpZCB5b3UgYXJlIGFmcmFpZCBldmVyeSB0aW1lIHlvdSBtdXN0IGdvIGZvciBhIHN3YWIsIHdoeSBpcyB0aGF0PyBcIiBhPVwiSSBhbSBhZnJhaWQgb2YgZ2V0dGluZyBhbiBpbmZlY3Rpb24uIFRoYXQgc3RpbGwgY291bGQgYmUgYSBkZWF0aCBzZW50ZW5jZS4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkFyZSByb29tcyB3aXRoIGFpciBjb25kaXRpb25pbmcgYSBwcm9ibGVtIGR1ZSB0byB0aGUgcG9zc2libGUgZ2VybXMgaW4gdGhlIGFpciBjb25kaXRpb25lcnM/ICBcIiBhPVwiTm8sIHRoZXJlIGlzIHVzdWFsbHkgZW5vdWdoIG1vdmVtZW50LiBCdXQgaHVtaWRpZmllcnMgYXJlIGJhZCBiZWNhdXNlIG9mIHRoZSBwb25kIHdhdGVyLiAgXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiWW91IG1lbnRpb25lZCBnb2luZyB0byB0aGUgaGFpcmRyZXNzZXIgaXMgcHJvYmxlbWF0aWMuIENvdWxkIHlvdSBlbGFib3JhdGU/IFwiIGE9XCJUaGVyZSBhcmUgbWFueSBwb3NzaWJsZSBzb3VyY2VzIG9mIHBvbmRpbmcgd2F0ZXIgYW5kIHdpdGggdGhhdCwgaW5mZWN0aW9ucy4gVGhhdCBhbmQgdGhlIGh5Z2llbmUgYXNwZWN0IGluIGdlbmVyYWwuIEkgYW0gdmlzaXRlZCBieSBteSBoYWlyZHJlc3NlciwgYW5kIGhlIG9ubHkgdXNlcyBhIHNwZWNpZmljIHNwcmF5IGJvdHRsZSB0byB3ZXQgbXkgaGFpciB0aGF0IEkga2VlcCBhbmQgZHJ5IHRob3JvdWdobHkgYmV0d2VlbiB1c2VzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkFyZSB5b3UgdGhlIGZpcnN0IHBlcnNvbiBpbiB5b3VyIGZhbWlseSB0aGF0IGhhcyBDRj8gIFwiIGE9XCJZZXMuIEJ1dCBJIHN1c3BlY3QgbXkgZmF0aGVyIGhhcyBhIGxpZ2h0IG9yIGF0eXBpY2FsIGZvcm0gYmVjYXVzZSBoZSBoYXMgc3VzcGljaW91cyBtdWN1cy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaXRoIGxpZmUgZXhwZWN0YW5jaWVzIGxvb2tpbmcgYmV0dGVyLCBkbyBtYW55IHBhdGllbnRzIHdhbnQgdG8gaGF2ZSBiaW9sb2dpY2FsIGNoaWxkcmVuP1wiIGE9XCJOb3QgYWxsIGJ1dCBzb21lLiBJIHRoaW5rIHNvbWUgd291bGQgYmUgaW50ZXJlc3RlZCBpbiBhIHRoZXJhcHkgdGhhdCBjYW4gYmUgZG9uZSBvbiB0aGUgZmVydGlsaXplZCBlZ2cgdG8gaGF2ZSBhIGhlYWx0aHkgY2hpbGQuICBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJEbyB5b3Uga25vdyB0aGUgZmlsbSBcdTIwMUNGaXZlIGZlZXQgYXBhcnRcdTIwMUQ/IElmIHNvLCB3aGF0IGRvIHRoaW5rIGFib3V0IGl0LCBpcyBpdCBhY2N1cmF0ZT8gIFwiIGE9XCJZZXMuIEl0IGRvZXMgbm90IHBhaW50IGEgd3JvbmcgcGljdHVyZTsgdGhlaXIgcHJvZ3Jlc3Npb24gaXMgcG9zc2libGUuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8geW91IHRoaW5rIHRoZXJlIGhhcyB0byBiZSBtb3JlIGVmZm9ydCBjb25jZXJuaW5nIGRpYWdub3N0aWNzP1wiIGE9XCJFYXJseSBkaWFnbm9zaXMgaXMgY292ZXJlZCBieSB0aGUgc2NyZWVuaW5ncy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJTaW5jZSB5b3UgYWxtb3N0IGhhZCB0byBzdWUgZm9yIHlvdXIgbWVkaWNhdGlvbiwgZG8geW91IGtub3cgaWYgdGhlcmUgYXJlIGFueSBsYXd5ZXJzIHNwZWNpYWxpemluZyBpbiBjYXNlcyBsaWtlIHRoaXM/ICBcIiBhPVwiTm8sIEkgZG9uXHUyMDE5dC4gIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkFyZSBtb3N0IG9mIHRoZSBvdGhlciBwYXRpZW50cyB5b3Uga25vdyBpbiBnb29kIGhlYWx0aCBsaWtlIHlvdT9cIiBhPVwiTm8uIEFub3RoZXIgYm95IG15IGFnZSBnb3QgYSBmdW5nYWwgaW5mZWN0aW9uIGFuZCBkb2VzIG5vdCBoYXZlIGxvbmcgdGltZSBsZWZ0IHRvIGxpdmUuICBcIiAvPlxuICAgIDwvPixcbiAgICBzdW1tYXJ5OiBcIldlIHJlYWNoZWQgb3V0IHRvIE1heCwgYSBmcmllbmQgb2YgYSB0ZWFtbWF0ZSwgdG8gZ2FpbiBpbnNpZ2h0cyBpbnRvIHRoZSBuZWVkcyBhbmQgZXhwZXJpZW5jZXMgb2YgQ0YgcGF0aWVudHMuIE91ciBkaXNjdXNzaW9ucyByZXZlYWxlZCB0aGUgY2hhbGxlbmdlcyBmYWNlZCBieSBDRiBwYXRpZW50cywgZXZlbiB0aG9zZSBpbiByZWxhdGl2ZWx5IGdvb2QgaGVhbHRoLCBhbmQgZW1waGFzaXplZCB0aGUgb25nb2luZyBuZWVkIGZvciBuZXcgdHJlYXRtZW50IG9wdGlvbnMuIE1heCdzIGNhbmRpZCBzaGFyaW5nIG9mIGhpcyBleHBlcmllbmNlcyBoaWdobGlnaHRlZCB0aGUgbGltaXRhdGlvbnMgb2YgY3VycmVudCBtb2R1bGF0b3JzLCB0aGUgaW1wb3J0YW5jZSBvZiBsdW5nIGZ1bmN0aW9uLCBhbmQgdGhlIGltcGFjdCBvZiB0cmVhdG1lbnRzIG9uIHF1YWxpdHkgb2YgbGlmZS4gVGhpcyBtZWV0aW5nIHRyYW5zZm9ybWVkIG91ciBwcm9qZWN0IHBlcnNwZWN0aXZlLCB1cmdpbmcgdXMgdG8gcHJpb3JpdGl6ZSBzYWZldHkgYW5kIHJlYWwtd29ybGQgYmVuZWZpdHMgaW4gb3VyIGRlc2lnbi4gVWx0aW1hdGVseSwgTWF4J3MgaW5mbHVlbmNlIGxlZCB1cyB0byBmb2N1cyBvbiBsdW5nLXRhcmdldGVkIGdlbmUgdGhlcmFweSBpbnN0ZWFkIG9mIGEgZGlhZ25vc3RpYyBhcHByb2FjaCwgcmVpbmZvcmNpbmcgb3VyIGNvbW1pdG1lbnQgdG8gSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMuXCIsXG4gICAgbW9udGhzOiBcIkFwcmlsXCIsXG4gICAgLyppbnRlcnZpZXc6PGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRlcnZpZXcgd2l0aCBNYXggQmVja21hbm4gKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMTY1MDE4NjctYTY4Ny00MjA1LTk0OWEtNTFlYWQ4NzZlMTA5XCIgZnJhbWVib3JkZXI9XCIwXCIgYWxsb3dmdWxsc2NyZWVuPVwiXCIgc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+LCovXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIlZpc2l0aW5nIFwiLFxuICAgIG5hY2hubmFtZTogXCJ0aGUgSGFubm92ZXIgTWVzc2VcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydoYW5ub3Zlcm1lc3NlJ10sXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxuICAgIGhlYWRpbmc6IFwiVHdvIHRlYW1tZW1iZXJzIHZpc2l0ZWQgdGhlIGZhaXIgdG8gdGFsayB3aXRoIHBvdGVudGlhbCBzdGFrZWhvbGRlciBhbmQgc3BvbnNvcnNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJoYW5ub3Zlcm1lc3NlXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGU6IFwiVmlzaXRpbmcgSGFubm92ZXIgTWVzc2Ugd2FzIGluc3BpcmluZyEgV2UgY29ubmVjdGVkIHdpdGggaW5kdXN0cnkgbGVhZGVycyBhbmQgZGlzY292ZXJlZCBleGNpdGluZyBpbm5vdmF0aW9ucyBpbiBzeW50aGV0aWMgYmlvbG9neSB0aGF0IGNvdWxkIHNoYXBlIG91ciBmdXR1cmUgcHJvamVjdHMuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJTdFx1MDBGNmNrbCwgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJWaW5jZW50XCIsXG4gICAgc3VtbWFyeTogXCJPdXIgdGVhbSBtZW1iZXJzIExpbGlhbmEgU2FuZmlsaXBwbyBhbmQgVmluY2VudCBTdFx1MDBGNmNrbCBoYWQgYSBwcm9kdWN0aXZlIHZpc2l0IHRvIHRoZSBIYW5ub3ZlciBNZXNzZSwgZm9jdXNpbmcgb24gc3ludGhldGljIGJpb2xvZ3kgYW5kIHJlc2VhcmNoIGFkdmFuY2VtZW50cy4gVGhleSBleHBsb3JlZCBpbm5vdmF0aXZlIHRlY2hub2xvZ2llcyBhbmQgbmV0d29ya2VkIHdpdGggcG90ZW50aWFsIHNwb25zb3JzLCBnYWluaW5nIHZhbHVhYmxlIGluc2lnaHRzIHRvIGhlbHAgZW5oYW5jZSBvdXIgcHJvamVjdCBhbmQgZHJpdmUgZnV0dXJlIGRldmVsb3BtZW50cy4gVGhlIGV2ZW50IHdhcyBhIGdyZWF0IG9wcG9ydHVuaXR5IHRvIGNvbm5lY3Qgd2l0aCBpbmR1c3RyeSBsZWFkZXJzIGFuZCBsZWFybiBhYm91dCBjdXR0aW5nLWVkZ2Ugc29sdXRpb25zIGluIHRoZSBmaWVsZC5cIixcbiAgICBtb250aHM6IFwiQXByaWxcIixcbiAgICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9oYW5ub3Zlci53ZWJwXCIsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJQcm9mLiBEci5cIixcbiAgICB2b3JuYW1lOiBcIktyaXN0aWFuXCIsXG4gICAgbmFjaG5uYW1lOiBcIk1cdTAwRkNsbGVyXCIsXG4gICAgam9iOiBcIlJlc2VhcmNoIEdyb3VwIENlbGx1bGFyIGFuZCBNb2xlY3VsYXIgQmlvdGVjaG5vbG9neVwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlRlY2huaWNhbCBGYWN1bHR5IG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXG4gICAgcGljdHVyZXVybDogcGljc1sna3Jpc3RpYW4nXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gYWJvdXQgdGhlIGRlbGl2ZXJ5IG1ldGhvZC0gQVZWIHZzLiBMTlBzIGFuZCBwcmltZSBlZGl0aW5nIGFuZCBnZW5lIHRoZXJhcHkgaW5ub3ZhdGlvbnNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJrcmlzdGlhblwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCIgTVx1MDBGQ2xsZXIsIFJlYXNlYXJjaCBFeHBlcnQgZm9yIEdlbmUgVGhlcmFweSBcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiUHJvZi4gRHIuIEtyaXN0aWFublwiLFxuICAgIHF1b3RlOiBcIkFBVnMgaGF2ZSBiZWVuIHdpZGVseSB1c2VkIGluIGdlbmUgdGhlcmFweSwgYnV0IHRoZWlyIHNjYWxhYmlsaXR5IGFuZCBpbW11bm9nZW5pY2l0eSBwb3NlIGNoYWxsZW5nZXMsIHBhcnRpY3VsYXJseSB3aGVuIHJlLWRvc2luZyBpcyByZXF1aXJlZC4gSW4gY29udHJhc3QsIExOUHMgb2ZmZXIgYSBwcm9taXNpbmcgYWx0ZXJuYXRpdmUsIHdpdGggYSBoaWdoZXIgcGFja2FnaW5nIGNhcGFjaXR5IGFuZCBsb3dlciBpbW11bm9nZW5pY2l0eS4gV2hpbGUgQUFWcyBleGNlbCBpbiB0YXJnZXRlZCBkZWxpdmVyeSwgTE5QcyBjb3VsZCBiZWNvbWUgYSBtb3JlIHNjYWxhYmxlIGFuZCBjb3N0LWVmZmVjdGl2ZSBzb2x1dGlvbiBmb3IgZGVsaXZlcmluZyBnZW5lLWVkaXRpbmcgdG9vbHMgaW4gdGhlIGZ1dHVyZS5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIgd2FzIHRvIGdhaW4gZXhwZXJ0IGluc2lnaHRzIGludG8gdGhlIHBvdGVudGlhbCBvZiBwcmltZSBlZGl0aW5nIHRlY2hub2xvZ3kgYW5kIGl0cyBhcHBsaWNhdGlvbiBpbiBnZW5lIHRoZXJhcHksIHBhcnRpY3VsYXJseSBmb3IgdHJlYXRpbmcgQ0YuIFdlIHNvdWdodCB0byB1bmRlcnN0YW5kIGhvdyBpbm5vdmF0aW9ucyBpbiBwcmltZSBlZGl0aW5nLCBjb21iaW5lZCB3aXRoIG9wdGltaXplZCBkZWxpdmVyeSBzeXN0ZW1zLCBjb3VsZCBlbmhhbmNlIHRoZXJhcGV1dGljIG91dGNvbWVzLiBQcm9mLiBNXHUwMEZDbGxlclx1MjAxOXMgZXhwZXJ0aXNlIGluIG1vbGVjdWxhciBiaW9sb2d5IGFuZCBnZW5lIGVkaXRpbmcgcHJvdmlkZWQgdmFsdWFibGUgcGVyc3BlY3RpdmVzIG9uIHRoZSBvcHBvcnR1bml0aWVzIGFuZCBjaGFsbGVuZ2VzIGluIGRldmVsb3BpbmcgcHJlY2lzZSwgZWZmaWNpZW50LCBhbmQgc2FmZSB0cmVhdG1lbnQgc3RyYXRlZ2llcyBmb3IgZ2VuZXRpYyBkaXNvcmRlcnMuPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5EdXJpbmcgdGhlIGludGVydmlldywgUHJvZi4gRHIuIE1cdTAwRkNsbGVyIGhpZ2hsaWdodGVkIHRoZSBncm93aW5nIGltcG9ydGFuY2Ugb2YgcHJpbWUgZWRpdGluZyBhcyBhIHBvd2VyZnVsIHRvb2wgZm9yIGdlbmUgdGhlcmFweS4gVW5saWtlIHRyYWRpdGlvbmFsIENSSVNQUi1DYXMgc3lzdGVtcywgd2hpY2ggb2Z0ZW4gcmVzdWx0IGluIGRvdWJsZS1zdHJhbmQgRE5BIGJyZWFrcywgcHJpbWUgZWRpdGluZyBhbGxvd3MgZm9yIHByZWNpc2Ugc2luZ2xlLXN0cmFuZCBjdXRzLCBtaW5pbWl6aW5nIG9mZi10YXJnZXQgZWZmZWN0cyBhbmQgZW5hYmxpbmcgbW9yZSBzcGVjaWZpYyBnZW5ldGljIGNvcnJlY3Rpb25zLiBUaGlzIHRlY2hub2xvZ3kgb3BlbnMgdXAgbmV3IHBvc3NpYmlsaXRpZXMgZm9yIHRyZWF0aW5nIGRpc2Vhc2VzIHdpdGgga25vd24gbXV0YXRpb25zLCBzdWNoIGFzIGN5c3RpYyBmaWJyb3Npcy4gXG4gICAgICBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIgZW1waGFzaXplZCB0aGUgY3JpdGljYWwgcm9sZSBvZiBkZWxpdmVyeSBzeXN0ZW1zIGluIHRoZSBzdWNjZXNzIG9mIGdlbmUgdGhlcmFwaWVzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGNvbnRleHQgb2YgQ0YgdHJlYXRtZW50LiBUd28gcHJpbWFyeSBkZWxpdmVyeSBtZWNoYW5pc21zIHdlcmUgZGlzY3Vzc2VkOiBBQVZzIChBZGVuby1hc3NvY2lhdGVkIHZpcnVzZXMpIGFuZCBMTlBzIChMaXBpZCBuYW5vcGFydGljbGVzKSwgZWFjaCB3aXRoIGRpc3RpbmN0IGFkdmFudGFnZXMgYW5kIGxpbWl0YXRpb25zLlxuICAgICAgQUFWcyBhcmUgYSB3ZWxsLWVzdGFibGlzaGVkIHZlaGljbGUgaW4gZ2VuZSB0aGVyYXB5LCBoYXZpbmcgYmVlbiB1c2VkIHN1Y2Nlc3NmdWxseSBpbiB2YXJpb3VzIGFwcHJvdmVkIHRyZWF0bWVudHMuIFRoZXkgYXJlIGhpZ2hseSBlZmZpY2llbnQgYXQgZGVsaXZlcmluZyBnZW5ldGljIG1hdGVyaWFsIHRvIHRhcmdldCBjZWxscywgZXNwZWNpYWxseSBpbiB3ZWxsLWNoYXJhY3Rlcml6ZWQgZGlzZWFzZXMgbGlrZSBDRi4gT25lIG9mIHRoZWlyIGtleSBzdHJlbmd0aHMgaXMgdGhlaXIgYWJpbGl0eSB0byBwcmVjaXNlbHkgdGFyZ2V0IHNwZWNpZmljIHRpc3N1ZXMsIG1ha2luZyB0aGVtIHBhcnRpY3VsYXJseSB2YWx1YWJsZSBmb3IgbHVuZyBkZWxpdmVyeSBpbiBjeXN0aWMgZmlicm9zaXMuIEhvd2V2ZXIsIEFBVnMgY29tZSB3aXRoIG5vdGFibGUgY2hhbGxlbmdlcywgcHJpbWFyaWx5IHRoZWlyIGxpbWl0ZWQgcGFja2FnaW5nIGNhcGFjaXR5IChhcHByb3hpbWF0ZWx5IDQuNSBraWxvYmFzZXMpLCB3aGljaCBjb25zdHJhaW5zIHRoZSBzaXplIG9mIHRoZSBnZW5ldGljIHBheWxvYWQgdGhleSBjYW4gY2FycnkuIEFkZGl0aW9uYWxseSwgQUFWcyBjYW4gZWxpY2l0IGltbXVuZSByZXNwb25zZXMsIHBhcnRpY3VsYXJseSB3aGVuIG11bHRpcGxlIGRvc2VzIGFyZSByZXF1aXJlZCwgcG9zaW5nIGEgYmFycmllciB0byB0aGVpciBsb25nLXRlcm0gdXNlLlxuICAgICAgT24gdGhlIG90aGVyIGhhbmQsIExOUHMgb2ZmZXIgYSBzY2FsYWJsZSBhbmQgcmUtZG9zYWJsZSBhbHRlcm5hdGl2ZS4gTE5QcyBoYXZlIHRoZSBhZHZhbnRhZ2Ugb2YgYSBsYXJnZXIgcGFja2FnaW5nIGNhcGFjaXR5LCBhbGxvd2luZyB0aGVtIHRvIGNhcnJ5IG1vcmUgY29tcGxleCBnZW5ldGljIGluc3RydWN0aW9ucyBvciBsYXJnZXIgZ2VuZS1lZGl0aW5nIHRvb2xzLCBzdWNoIGFzIHByaW1lIGVkaXRvcnMuIFRoZXkgYXJlIGFsc28gZWFzaWVyIGFuZCBjaGVhcGVyIHRvIHByb2R1Y2Ugb24gYSBsYXJnZSBzY2FsZSwgbWFraW5nIHRoZW0gYW4gYXR0cmFjdGl2ZSBvcHRpb24gZm9yIHdpZGVzcHJlYWQgY2xpbmljYWwgYXBwbGljYXRpb25zLiBBIHNpZ25pZmljYW50IGJlbmVmaXQgb2YgTE5QcyBpcyB0aGVpciBsb3dlciBpbW11bm9nZW5pY2l0eSwgd2hpY2ggcmVkdWNlcyB0aGUgcmlzayBvZiBhZHZlcnNlIGltbXVuZSByZWFjdGlvbnMgdXBvbiByZXBlYXRlZCBkb3NpbmcuIEhvd2V2ZXIsIExOUHMgY3VycmVudGx5IGZhY2UgY2hhbGxlbmdlcyBpbiBzcGVjaWZpYyB0YXJnZXRpbmcgY29tcGFyZWQgdG8gQUFWcy4gQUFWcyBoYXZlIGEgaGlnaGVyIHByZWNpc2lvbiBpbiB0YXJnZXRpbmcgc3BlY2lmaWMgdGlzc3Vlcywgd2hpbGUgTE5QcyBzdGlsbCBuZWVkIG9wdGltaXphdGlvbiBmb3IgdGFyZ2V0ZWQgZGVsaXZlcnkgdG8gYXJlYXMgbGlrZSB0aGUgbHVuZ3MuPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5Qcm9mLiBNXHUwMEZDbGxlclx1MjAxOXMgaW5zaWdodHMgZGlyZWN0bHkgaW5mb3JtIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBvdXIgaUdFTSBwcm9qZWN0LCB3aGVyZSB3ZSBhaW0gdG8gZGVzaWduIG5vdmVsIHByaW1lIGVkaXRvcnMgdGhhdCBhcmUgc21hbGwgZW5vdWdoIHRvIGJlIGRlbGl2ZXJlZCBlZmZpY2llbnRseSwgd2hpbGUgYWxzbyBleHBsb3JpbmcgTE5Qc1tMSU5LIEN5Y2xlIERlbGl2ZXJ5XSBhcyBhIHNjYWxhYmxlIGFuZCByZS1kb3NhYmxlIGFsdGVybmF0aXZlIHRvIEFBVnMuIEJ5IHRhaWxvcmluZyBvdXIgYXBwcm9hY2ggdG8gYWRkcmVzcyB0aGUgc3BlY2lmaWMgY2hhbGxlbmdlcyBvZiBDRiwgc3VjaCBhcyBtdWN1cyBwZW5ldHJhdGlvbiBhbmQgbHVuZyBjZWxsIHRhcmdldGluZywgd2UgY2FuIGVuaGFuY2UgdGhlIHByZWNpc2lvbiBhbmQgZWZmaWNhY3kgb2YgZ2VuZSB0aGVyYXB5LiBUaGVzZSBpbm5vdmF0aW9ucyBoYXZlIHRoZSBwb3RlbnRpYWwgdG8gc2V0IG5ldyBzdGFuZGFyZHMgaW4gdGhlIGZpZWxkIGFuZCBjb250cmlidXRlIHRvIGJyb2FkZXIgcmVzZWFyY2ggb24gZ2VuZXRpYyBkaXNlYXNlIHRyZWF0bWVudC48L3A+XSxcbiAgICBzdW1tYXJ5OiBcIkluIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIsIHdlIGV4cGxvcmVkIHRoZSByZXZvbHV0aW9uYXJ5IHBvdGVudGlhbCBvZiBwcmltZSBlZGl0aW5nIGFzIGEgbmV4dC1nZW5lcmF0aW9uIGdlbmUgZWRpdGluZyB0ZWNobm9sb2d5LiBQcm9mLiBNXHUwMEZDbGxlciBoaWdobGlnaHRlZCB0aGUgYWR2YW50YWdlcyBvZiBwcmltZSBlZGl0aW5nIG92ZXIgdHJhZGl0aW9uYWwgQ1JJU1BSLUNhcyBzeXN0ZW1zLCBwYXJ0aWN1bGFybHkgaXRzIGFiaWxpdHkgdG8gbWFrZSBwcmVjaXNlIGdlbmV0aWMgbW9kaWZpY2F0aW9ucyB3aXRob3V0IGRvdWJsZS1zdHJhbmQgYnJlYWtzLCB0aHVzIHJlZHVjaW5nIG9mZi10YXJnZXQgZWZmZWN0cy4gSGUgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBvcHRpbWl6aW5nIGRlbGl2ZXJ5IHN5c3RlbXMsIHN1Y2ggYXMgQUFWIGFuZCBMTlBzLCBhbmQgZGlzY3Vzc2VkIHRoZSBldGhpY2FsIGNvbnNpZGVyYXRpb25zIGFuZCBiaW9zYWZldHkgbWVhc3VyZXMgY3J1Y2lhbCBmb3IgYWR2YW5jaW5nIGdlbmUgdGhlcmFweS4gVGhlIGludGVydmlldyB1bmRlcnNjb3JlZCB0aGUgc2lnbmlmaWNhbmNlIG9mIGN5c3RpYyBmaWJyb3NpcyBhcyBhIG1vZGVsIGRpc2Vhc2UsIGdpdmVuIGl0cyBwcmV2YWxlbmNlIGFuZCB0aGUgcG90ZW50aWFsIGZvciBpbXBhY3RmdWwgdHJlYXRtZW50cyB0aHJvdWdoIHRhcmdldGVkIGdlbmV0aWMgY29ycmVjdGlvbnMuXCIsXG4gICAgbW9udGhzOiBcIkFwcmlsXCIsXG4gICAgaW50ZXJ2aWV3Ojw+PGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRlcnZpZXcgTVx1MDBGQ2xsZXIgQUFWIHZzIExOUCAoMjAyNCkgW0VuZ2xpc2hdXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8wNjEzYjZiOC03NzU1LTQzNzMtOWQ4Ni05OTEwZmUzMDc4MWZcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPjxwPlRoaXMgaW50ZXJ2aWV3IHdhcyByZWNvcmRlZCBvbiB2aWRlbyBhdCBhIGxhdGVyIGRhdGUuPC9wPjwvPixcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiTG9va2luZyBmb3IgZXhwZXJ0aXNlXCIsXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3BsYWNlaG9sZGVyJ10sXG4gICAgdGFnOiBcIk1pbGVzdG9uZVwiLFxuICAgIGhlYWRpbmc6IFwiSWRlbnRpZnlpbmcga2V5IGV4cGVydHMgaW4gY3lzdGljIGZpYnJvc2lzIGFuZCBwcmltZSBlZGl0aW5nXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiZXhwZXJ0c1wiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJcIixcbiAgICBpbnNpZ2h0czogXCJcIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBcIlwiLFxuICAgIG1vbnRoczogXCJBcHJpbFwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIlZpc2l0aW5nIFwiLFxuICAgIG5hY2hubmFtZTogXCJ0aGUgTGFic3VwcGx5IGluIE1cdTAwRkNuc3RlclwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2xhYnN1cHBseSddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcbiAgICBoZWFkaW5nOiBcIlR3byB0ZWFtIG1lbWJlcnMgY29ubmVjdGVkIHdpdGggcHJvc3BlY3RpdmUgc3Rha2Vob2xkZXJzIGFuZCBzcG9uc29ycy5cIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJsYWJzdXBwbHlcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJMYWJTdXBwbHkgaW4gTVx1MDBGQ25zdGVyIHdhcyBhIGZhbnRhc3RpYyBvcHBvcnR1bml0eSB0byBjb25uZWN0IHdpdGggcGFzc2lvbmF0ZSBwcm9mZXNzaW9uYWxzIGFuZCBleHBsb3JlIGN1dHRpbmctZWRnZSByZXNlYXJjaCB0b29scy4gV2UncmUgZXhjaXRlZCBhYm91dCB0aGUgcG90ZW50aWFsIGNvbGxhYm9yYXRpb25zIGFoZWFkIVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU2FuZmlsaXBwbywgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJMaWxpYW5hXCIsXG4gICAgc3VtbWFyeTogXCJJbiBBcHJpbCBvdXIgdGVhbSB2aXNpdGVkIExhYlN1cHBseSBpbiBNXHUwMEZDbnN0ZXIsIHdoZXJlIHdlIGhhZCB0aGUgY2hhbmNlIHRvIGNvbm5lY3Qgd2l0aCBtYW55IHdlbGNvbWluZyBhbmQga25vd2xlZGdlYWJsZSBwcm9mZXNzaW9uYWxzIGluIHRoZSBsYWIgZXF1aXBtZW50IGZpZWxkLiBJdCB3YXMgYW4gZXhjZWxsZW50IG9wcG9ydHVuaXR5IHRvIGV4cGxvcmUgdGhlIGxhdGVzdCBhZHZhbmNlbWVudHMgaW4gbGFib3JhdG9yeSBzdXBwbGllcyBhbmQgdG9vbHMgdGhhdCBjYW4gZW5oYW5jZSBvdXIgcmVzZWFyY2guXCIsXG4gICAgbW9udGhzOiBcIkFwcmlsXCIsXG4gICAgcGljdHVyZXVybF9haW06IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2xhYnN1cHBseS53ZWJwXCIsXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIlByb2YuIERyLiBXb2xmLU1pY2hhZWwgV2ViZXJcIixcbiAgICBuYWNobm5hbWU6IFwidW5kIERyLiBKXHUwMEY2cmcgR3JvXHUwMERGZS1Pbm5lYnJpbmtcIixcbiAgICBqb2I6IFwiUHJvZmVzc29yIFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlc2l0eSBNXHUwMEZDbnN0ZXJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd3ZWJlciddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiRmVlZGJhY2sgU2Vzc2lvbiB3aXRoIEV4cGVydHMgZm9yIEN5c3RpYyBGaWJyb3NpcyBUcmVhdG1lbnRcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJ3ZWJlclwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImVuXCIsXG4gICAgcXVvdGU6IFwiVGhpcyBpcyBhbHNvIGFuIGlubm92YXRpdmUgc3RlcCB0aGF0IHlvdSBoYXZlIGRldmVsb3BlZCB5b3Vyc2VsdmVzLiBUaGF0J3MgdGhlIHBhcnQgdGhhdCdzIHJlYWxseSBuZXcgYW5kIHNpZ25pZmljYW50LiBBIGNsZXZlciBhbmQgZXhjaXRpbmcgYXBwcm9hY2ggd2l0aCBncmVhdCBwb3RlbnRpYWwuXCIsXG4gICAgYWltb2Zjb250YWN0OiBbPHA+VGhlIGFpbSBvZiB0aGUgaW50ZXJ2aWV3IHdhcyB0byBnYWluIGV4cGVydCBpbnNpZ2h0cyBvbiBvcHRpbWl6aW5nIHRoZSBkZWxpdmVyeSBvZiBDRlRSLW1STkEgdmlhIGx1bmctdGFyZ2V0ZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgZm9yIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHRyZWF0bWVudC5cbiAgICAgIFNwZWNpZmljYWxseSwgdGhlIGdvYWwgd2FzIHRvIGV4cGxvcmUgcG90ZW50aWFsIGNlbGwgdGFyZ2V0cywgY2hhbGxlbmdlcyBpbiBkZWxpdmVyeSBtZWNoYW5pc21zLCBhbmQgdGVjaG5pY2FsIHRvb2xzIGZvciBhc3Nlc3NpbmcgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgbVJOQSB0aGVyYXBpZXMgbGlrZSB0aGUgVXNzaW5nIGNoYW1iZXIgc3lzdGVtLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlRoZSBleHBlcnRzIGhpZ2hsaWdodGVkIHRoZSBwb3RlbnRpYWwgb2YgdGFyZ2V0aW5nIGlvbm9jeXRlcywgZ2l2ZW4gdGhlaXIga2V5IHJvbGUgaW4gQ0ZUUiBleHByZXNzaW9uLCBidXQgZW1waGFzaXplZCB0aGUgZGlmZmljdWx0eSBpbiBhY2Nlc3NpbmcgdGhlbSBkdWUgdG8gdGhlaXIgYmFzYWwgcG9zaXRpb24gaW4gdGhlIHJlc3BpcmF0b3J5IGVwaXRoZWxpdW0uXG4gICAgICBXaGlsZSBQcm9mLiBXZWJlciBmb3VuZCBpb25vY3l0ZXMgdG8gYmUgYW4gaW50cmlndWluZyB0YXJnZXQsIERyLiBHcm9cdTAwREZlLU9ubmVicmluayBwb2ludGVkIG91dCB0aGF0IHRoZXJlIGlzIHN0aWxsIGxpbWl0ZWQgdW5kZXJzdGFuZGluZyBvZiB0aGVpciBleGFjdCByb2xlIGluIENGIHBhdGhvbG9neS4gQm90aCBzdHJlc3NlZCB0aGUgY2hhbGxlbmdlIG9mIHBlbmV0cmF0aW5nIHRoZVxuICAgICAgbXVjdXMgYmFycmllciBpbiB2aXZvLCBwYXJ0aWN1bGFybHkgd2hlbiB1c2luZyBhaXItbGlxdWlkIGludGVyZmFjZSBjdWx0dXJlcywgYW5kIHVuZGVyc2NvcmVkIHRoZSBpbXBvcnRhbmNlIG9mIG9wdGltaXppbmcgcGFydGljbGUgc2l6ZSB0byBlbnN1cmUgZWZmZWN0aXZlIGRlbGl2ZXJ5IHRvIHRoZSBkZWVwZXIgcmVnaW9ucyBvZiB0aGUgbHVuZ3MuXG4gICAgICBQcm9mLiBXZWJlciBhbHNvIGVtcGhhc2l6ZWQgdGhlIG5lZWQgdG8gdGVzdCB3aGV0aGVyIHRoZSBzeXN0ZW0gY2FuIHN0aWxsIHRyYW5zZmVjdCBjZWxscyBpbiB0aGUgcHJlc2VuY2Ugb2YgbXVjdXMuIDwvcD4sXG4gICAgPHA+SXQgd2FzIHN1Z2dlc3RlZCB0byB1c2UgdGhlIFVzc2luZyBjaGFtYmVyIHRvIGFzc2VzcyB0aGUgZWZmZWN0aXZlbmVzcyBvZiB0aGUgZGVsaXZlcnkgc3lzdGVtIGFuZCB0aGVyYXBldXRpYyBtUk5BLCB0aG91Z2ggdGhleSBub3RlZCBjZXJ0YWluIGNoYWxsZW5nZXMgd2l0aCB0aGlzIHRlY2huaXF1ZS4gV2UgYWxzbyBkaXNjdXNzZWQgYWx0ZXJuYXRpdmVzIGxpa2Ugb3JnYW5vaWRzLFxuICAgICAgd2hpY2ggb2ZmZXIgb25seSBpbmRpcmVjdCBtZWFzdXJlbWVudHMgb2YgQ0ZUUiBmdW5jdGlvbiwgYW5kIHBhdGNoIGNsYW1waW5nLCB3aGljaCwgdGhvdWdoIG1vcmUgcHJlY2lzZSwgaXMgYSBtb3JlIGNvbXBsZXggYW5kIGV4cGVuc2l2ZSBtZXRob2QuIEFkZGl0aW9uYWxseSwgUHJvZi4gV2ViZXIgcmVjb21tZW5kZWQgZXhwbG9yaW5nIGNoaXRvc2FuLWJhc2VkIGRlbGl2ZXJ5XG4gICAgICBzeXN0ZW1zIGR1ZSB0byB0aGVpciBzdWNjZXNzIGluIGhpcyBwcmV2aW91cyB3b3JrLCBzdWdnZXN0aW5nIHRoZXkgY291bGQgYmUgYSBzYWZlciBhbHRlcm5hdGl2ZSB0byBQRUctbGlwaWQgc3lzdGVtcywgd2hpY2ggaGFkIHNob3duIGlzc3VlcyB3aXRoIGN5dG90b3hpY2l0eS4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5UaGVzZSBpbnNpZ2h0cyBoZWxwZWQgcmVmaW5lIG91ciBpR0VNIHByb2plY3QgaW4gc2V2ZXJhbCBrZXkgd2F5czpcbiAgICAgIDx1bD5cbiAgICAgICAgPGxpPkNlbGwgVGFyZ2V0aW5nOiBXZSBkZWNpZGVkIHRvIGNvbnRpbnVlIGV4cGxvcmluZyBpb25vY3l0ZXMgYXMgYSB0YXJnZXQgYnV0IGFja25vd2xlZGdlZCB0aGUgdGVjaG5pY2FsIGh1cmRsZXMgaW52b2x2ZWQuIFdlIGFsc28gZXhwYW5kZWQgb3VyIGZvY3VzIHRvIGluY2x1ZGUgbXVsdGlwbGUgY2VsbCB0eXBlcyB0byB0ZXN0IGRpZmZlcmVudCBkZWxpdmVyeSBzeXN0ZW1zLiA8L2xpPlxuICAgICAgICA8bGk+RGVsaXZlcnkgU3lzdGVtczogV2UgYmVnYW4gaW52ZXN0aWdhdGluZyBjaGl0b3Nhbi1iYXNlZCBuYW5vcGFydGljbGVzIGFzIGEgc2FmZXIgYWx0ZXJuYXRpdmUgdG8gUEVHLWxpcGlkIHN5c3RlbXMuIFRoZSBzdWdnZXN0aW9uIHRvIG9wdGltaXplIHBhcnRpY2xlIHNpemUgYW5kIGRlbGl2ZXJ5IGZvciBpbmhhbGF0aW9uIHdhcyBhbHNvIGludGVncmF0ZWQgaW50byBvdXIgZGVzaWduLiA8L2xpPlxuICAgICAgICA8bGk+RXhwZXJpbWVudGFsIFRvb2xzOiBCYXNlZCBvbiB0aGUgZGlzY3Vzc2lvbiwgd2UgcGxhbiB0byB1c2UgYW4gVXNzaW5nIGNoYW1iZXIgdG8gbWVhc3VyZSBvdmVyYWxsIENGVFIgZnVuY3Rpb24gaW4gZGlmZmVyZW50IGNlbGwgdHlwZXMgYnV0IHdpbGwgYWxzbyBleHBsb3JlIG9yZ2Fub2lkLWJhc2VkIGFwcHJvYWNoZXMgZm9yIHByZWxpbWluYXJ5IHRlc3RpbmcuIEFkZGl0aW9uYWxseSwgd2UgY29uc3VsdGVkIHRoZSBtZWRpY2FsIGZhY3VsdHkgb24gdGhlIHBvc3NpYmlsaXR5IG9mIHVzaW5nIHBhdGNoIGNsYW1waW5nIGZvciBtb3JlIGRldGFpbGVkIG1lYXN1cmVtZW50cyBvZiBzdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiBhbmQgcmVzdG9yZWQgQ0ZUUiBmdW5jdGlvbi4gPC9saT5cbiAgICAgIDwvdWw+LFxuICAgIDwvcD5dLFxuICAgIHN1bW1hcnk6IFwiVGhlIGludGVydmlldyBwcm92aWRlZCBrZXkgaW5zaWdodHMgaW50byB0YXJnZXRpbmcgaW9ub2N5dGVzIGZvciBDRlRSLW1STkEgZGVsaXZlcnksIG92ZXJjb21pbmcgbXVjdXMgYmFycmllcnMsIGFuZCB0ZXN0aW5nIGRlbGl2ZXJ5IGVmZmVjdGl2ZW5lc3MgdXNpbmcgVXNzaW5nIGNoYW1iZXJzLCBvcmdhbm9pZHMsIGFuZCBwYXRjaCBjbGFtcGluZywgd2hpbGUgYWxzbyBzdWdnZXN0aW5nIGNoaXRvc2FuLWJhc2VkIG5hbm9wYXJ0aWNsZXMgYXMgYSBzYWZlciBhbHRlcm5hdGl2ZSB0byBQRUctbGlwaWQgc3lzdGVtcy5cIixcbiAgICBtb250aHM6IFwibWF5XCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiQ3Jpc3RpYW4tR2FicmllbFwiLFxuICAgIG5hY2hubmFtZTogXCJPbGFyaXVcIixcbiAgICBqb2I6IFwicGVkaWF0cmljaWFuXCIsXG4gICAgYWZmaWxpYXRpb246IFwiT1dMIFVuaXZlcnNpdHkgSG9zcGl0YWxcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydvbGFyaXUnXSxcbiAgICB0YWc6IFwiTWVkaWNhbCBQcm9mZXNzaW9uYWxcIixcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gd2l0aCBhIHBlZGlhdHJpY2lhbiBhbmQgaGlzIGZvcm1lciBwYXRpZW50IGFib3V0IHRyZWF0bWVudCBjaGFsbGVuZ2VzIGFuZCBwZXJzcGVjdGl2ZXNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJvbGFyaXVcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiT2xhcml1LCBDbGluaWNhbCBQaHlzaWNpYW4gYW5kIENGIEV4cGVydFwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJEci4gQ3Jpc3RpYW4tR2FicmllbFwiLFxuICAgIHF1b3RlOiBcIkZvciBtb3N0IGZhbWlsaWVzLCBpdFx1MjAxOXMgYSBzaG9jay4gQ3lzdGljIGZpYnJvc2lzIHN0aWxsIGhhcyBhIHN0cm9uZyBhc3NvY2lhdGlvbiB3aXRoIGJlaW5nIGEgbGlmZS10aHJlYXRlbmluZyBkaXNlYXNlLCBkZXNwaXRlIHRoZSBmYWN0IHRoYXQgd2Ugbm93IGhhdmUgZ29vZCB0cmVhdG1lbnRzLCBhbmQgbWFueSBwYXRpZW50cyBjYW4gbGl2ZSBoZWFsdGh5IGxpdmVzLiBUaGUgZGlhZ25vc2lzIHB1dHMgYSBodWdlIHBzeWNob2xvZ2ljYWwgc3RyYWluIG9uIHRoZSBmYW1pbHksIGVzcGVjaWFsbHkgd2hlbiBkZWFsaW5nIHdpdGggdmVyeSB5b3VuZyBjaGlsZHJlbi5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiVG8gZ2FpbiBhIGRlZXBlciBpbnNpZ2h0IGludG8gdGhlIHBhdGggdG8gZGlhZ25vc2lzLCB3ZSBpbnZpdGVkIHBlZGlhdHJpY2lhbiBEci4gQ3Jpc3RpYW4tR2FicmllbCBPbGFyaXUgZnJvbSB0aGUgVW5pdmVyc2l0eSBEZXBhcnRtZW50IG9mIFBlZGlhdHJpY3MgYW5kIEFkb2xlc2NlbnQgTWVkaWNpbmUgdG8gc2hhcmUgaGlzIGV4cGVyaWVuY2VzIHdpdGggQ0YgcGF0aWVudHMgd2l0aCB1cy4gV2UgaW50ZXJ2aWV3ZWQgaGltIGJlY2F1c2Ugb2YgaGlzIGV4cGVydGlzZSBpbiB0aGUgZWZmZWN0cyBvZiBkaWFnbm9zaXMgb24gdGhlIHBhdGllbnQgYW5kIHRoZSBmYW1pbHkgbWVtYmVycywgYnV0IGFsc28gb24gZGFpbHkgbGlmZS4gQWRkaXRpb25hbGx5LCB3ZSB3YW50IHRvIGNsb3NlIHRoZSBnYXAgYW5kIGNyZWF0ZSBhIGJyaWRnZSBiZXR3ZWVuIGFjYWRlbWljIHJlc2VhcmNoIGFuZCBjbGluaWNhbCBhcHBsaWNhdGlvbnMuIFRoZXJlZm9yZSwgRHIuIE9sYXJpdSBnYXZlIHVzIGluc2lnaHRzIGFib3V0IHRoZSBjbGluaWNhbCBwZXJzcGVjdGl2ZXMgb24gQ0YgcGF0aWVudHMuXCIsXG4gICAgaW5zaWdodHM6IFs8cD5XZSBpbnZpdGVkIE1heCwgb3VyIENGIHBhdGllbnQgY29udGFjdCwgdG8gam9pbiBEci4gT2xhcml1IGluIGRpc2N1c3NpbmcgdGhlIGludGVyc2VjdGlvbiBvZiBhY2FkZW1pYyByZXNlYXJjaCwgY2xpbmljYWwgYXBwbGljYXRpb24sIGFuZCBwYXRpZW50IG5lZWRzLiBUaHJvdWdoIG91ciBjb25uZWN0aW9uIHdpdGggPGEgaHJlZj1cImh0dHBzOi8vd3d3LmNmdnd3Lm9yZ1wiID5DRiBWZXN0cyBXb3JsZHdpZGU8L2E+LCBhbiBvcmdhbml6YXRpb24gZGVkaWNhdGVkIHRvIHByb3ZpZGluZyBsaWZlLXNhdmluZyB0aGVyYXB5IHZlc3RzIHRvIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cyBnbG9iYWxseSwgd2UgZ2FpbmVkIGluc2lnaHRzIGludG8gdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMsIHBhcnRpY3VsYXJseSBpbiByZWdpb25zIGxpa2UgVGhhaWxhbmQsIHdoZXJlIGFjY2VzcyB0byBhZHZhbmNlZCB0cmVhdG1lbnRzIGFuZCBtZWRpY2FsIGRldmljZXMgaXMgbGltaXRlZC4gVGhlIGNvbnZlcnNhdGlvbiBoaWdobGlnaHRlZCB0aGUgY3JpdGljYWwgcm9sZSBvZiBlYXJseSBkaWFnbm9zaXMgYW5kIGludGVydmVudGlvbiwgYXMgd2VsbCBhcyB0aGUgcXVhbGl0eS1vZi1saWZlIGNoYWxsZW5nZXMgbWFueSBwYXRpZW50cyBlbmR1cmUgZHVlIHRvIGNvbnZlbnRpb25hbCB0cmVhdG1lbnRzIHRoYXQgbWF5IG5vdCBiZSBlZmZlY3RpdmUgZm9yIGV2ZXJ5b25lLiBJbm5vdmF0aXZlIGFwcHJvYWNoZXMsIHN1Y2ggYXMgb3VyIFNPUlQgTE5QIChsaXBpZCBuYW5vcGFydGljbGUpIGRlbGl2ZXJ5IHN5c3RlbSwgcHJlc2VudCBwcm9taXNpbmcgYWx0ZXJuYXRpdmVzIGZvciBDRiB0aGVyYXB5LiBUaGlzIHN5c3RlbSwgd2hpY2ggYWxsb3dzIGZvciBSTkEgZW5jYXBzdWxhdGlvbiBhbmQgYWRtaW5pc3RyYXRpb24gdmlhIGRyeSBzcHJheSBpbmhhbGF0aW9uLCBjb3VsZCByZXZvbHV0aW9uaXplIHRyZWF0bWVudCBieSB0YXJnZXRpbmcgbHVuZyBjZWxscyBtb3JlIGVmZmVjdGl2ZWx5LCBwYXJ0aWN1bGFybHkgaW4gcmVzb3VyY2UtbGltaXRlZCBzZXR0aW5ncy4gRHIuIE9sYXJpdSB1bmRlcnNjb3JlZCB0aGUgbmVlZCBmb3IgcHN5Y2hvbG9naWNhbCBzdXBwb3J0IGFuZCBjb29yZGluYXRlZCBjYXJlIGZvciBDRiBwYXRpZW50cywgZW1waGFzaXppbmcgdGhhdCBub3ZlbCB0aGVyYXBpZXMgbGlrZSBMTlAtYmFzZWQgZ2VuZSB0cmVhdG1lbnRzIGhhdmUgdGhlIHBvdGVudGlhbCB0byBpbXByb3ZlIHRyZWF0bWVudCBlZmZpY2FjeSBhbmQgYWNjZXNzaWJpbGl0eSwgdWx0aW1hdGVseSByZWR1Y2luZyB0aGUgbGlmZWxvbmcgYnVyZGVuIG9mIGNhcmUgZm9yIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gPC9wPixcbiAgICAsXG4gICAgPHA+V2UgaGF2ZSBjb25zaWRlcmVkIHRoZSBleHRlbnQgdG8gd2hpY2ggYW4gZWFybHkgZGlhZ25vc2lzIGlzIGFsd2F5cyBhbiBhZHZhbnRhZ2UsIGFzIHNvbWUgcGFyZW50cyBwZXJjZWl2ZSBhbiBlYXJseSBkaWFnbm9zaXMgYXMgYW4gYWRkaXRpb25hbCBidXJkZW4gYW5kIHdvdWxkIHByZWZlciB0byBleHBlcmllbmNlIHRoZSBmaXJzdCB5ZWFycyBvZiB0aGVpciBjaGlsZCdzIGxpZmUgd2l0aG91dCBjb25zdGFudCBtZWRpY2FsIGludGVydmVudGlvbi4gRXNwZWNpYWxseSB3aGVuIHRoZXJlIGFyZSBjYXNlcyBpbiB3aGljaCBwYXRpZW50cyBvbmx5IHNob3cgYSBjbGVhciBjbGluaWNhbCBwaWN0dXJlIGF0IGFuIGFkdmFuY2VkIGFnZS4gVGhlIHBzeWNob2xvZ2ljYWwgYnVyZGVuIGFsc28gbGllcyB3aXRoIHRoZSBjaGlsZHJlbiwgd2hvIG9mdGVuIGV4cGVyaWVuY2UgbWVkaWNhbCB0cmF1bWEgYmVjYXVzZSB0aGV5IGFyZSBpbnZvbHZlZCBpbiBzdWNoIGludGVuc2l2ZSBtZWRpY2FsIGNhcmUgZnJvbSBiaXJ0aC4gQWRkaXRpb25hbGx5LCB0aGUgdHJlYXRtZW50IG9mIGN5c3RpYyBmaWJyb3NpcyBpcyB2ZXJ5IGV4cGVuc2l2ZSwgYW5kIHRoZSBjb3N0cyBhcmUgY292ZXJlZCBieSBoZWFsdGggaW5zdXJhbmNlIGNvbXBhbmllcyB0byB2YXJ5aW5nIGRlZ3JlZXMuIEluIHNvbWUgY291bnRyaWVzLCBzdWNoIGFzIHRoZSBVU0EsIFVrcmFpbmUgb3IgRGV2ZWxvcGluZyBjb3VudHJpZXMsIG1hbnkgZmFtaWxpZXMgY2Fubm90IGFmZm9yZCB0aGUgbmVjZXNzYXJ5IHRyZWF0bWVudHMuIEJ1dCBEci4gT2xhcml1IGFsc28gZHJldyBvdXIgYXR0ZW50aW9uIHRvIGFub3RoZXIgcHJvYmxlbSBpbiB0aGUgdHJlYXRtZW50IG9mIGN5c3RpYyBmaWJyb3Npcy4gSW5mZWN0aW9ucywgZXNwZWNpYWxseSB3aXRoIGJhY3RlcmlhIHN1Y2ggYXMgUHNldWRvbW9uYXMgc3BjYy4sIGFyZSBkaWZmaWN1bHQgdG8gdHJlYXQgYW5kIG9mdGVuIGxlYWQgdG8gbG9uZyBob3NwaXRhbCBzdGF5cy4gTWF4LCBvdXIgcGF0aWVudHNcdTIwMTkgcmVwcmVzZW50YXRpdmUsIHdobyBrbm93cyBEci4gT2xhcml1IHRocm91Z2ggaGlzIHRyZWF0bWVudCwgc2hhcmVkICBoaXMgZXhwZXJpZW5jZSB3aXRoIFBzZXVkb21vbmFzIHNwY2MgaW5mZWN0aW9ucywgaWxsdXN0cmF0aW5nIHRoZSByZWFsaXR5IG9mIGFuIGludmlzaWJsZSBkYW5nZXIgdGhhdCBkZXRlcm1pbmVzIGEgcGF0aWVudCdzIGV2ZXJ5ZGF5IGxpZmUuIFN0cmljdCBoeWdpZW5lIG1lYXN1cmVzIGFyZSByZXF1aXJlZCB0byBwcmV2ZW50IGluZmVjdGlvbnMsIHN1Y2ggYXMgd2VhcmluZyBmYWNlIG1hc2tzIGluIGhvc3BpdGFsIGFuZCBjYXJlZnVsIGhhbmRsaW5nIG9mIHBvdGVudGlhbCBzb3VyY2VzIG9mIGluZmVjdGlvbi4gVGhlIGNsaW5pY3Mgd2hlcmUgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzIGFyZSB0cmVhdGVkIHdvcmsgY2xvc2VseSB3aXRoIGEgbXVsdGlkaXNjaXBsaW5hcnkgdGVhbSBvZiBkb2N0b3JzLCBwc3ljaG9sb2dpc3RzLCBwaHlzaW90aGVyYXBpc3RzIGFuZCBudXRyaXRpb25pc3RzIHRvIGVuc3VyZSB0aGF0IHBhdGllbnRzIHJlY2VpdmUgaG9saXN0aWMgY2FyZS4gPC9wPixcbiAgICA8cD5Qcm9zIG9mIEVhcmx5IERpYWdub3NpcyBhbmQgVHJlYXRtZW50PC9wPixcbiAgICA8b2w+XG4gICAgICA8bGk+VGltZWx5IEludGVydmVudGlvbjogUHJldmVudHMgc2V2ZXJlIG9yZ2FuIGRhbWFnZSBhbmQgaW1wcm92ZXMgbG9uZy10ZXJtIG91dGNvbWVzLjwvbGk+XG4gICAgICA8bGk+SG9saXN0aWMgQ2FyZTogSW52b2x2ZXMgYSBtdWx0aWRpc2NpcGxpbmFyeSB0ZWFtIGZvciBjb21wcmVoZW5zaXZlIHBhdGllbnQgc3VwcG9ydC48L2xpPlxuICAgICAgPGxpPkFjY2VzcyB0byBJbm5vdmF0aW9uczogQWxsb3dzIHBhdGllbnRzIHRvIGJlbmVmaXQgZnJvbSBhZHZhbmNlbWVudHMgbGlrZSBuYW5vcGFydGljbGUgZHJ1ZyBkZWxpdmVyeS48L2xpPlxuICAgICAgPGxpPkZhbWlseSBTdXBwb3J0OiBQcm92aWRlcyBlZHVjYXRpb24gYW5kIHJlc291cmNlcyBmb3IgZWZmZWN0aXZlIG1hbmFnZW1lbnQgZnJvbSB0aGUgc3RhcnQuPC9saT5cbiAgICA8L29sPixcblxuICAgIDxwPkNvbnMgb2YgRWFybHkgRGlhZ25vc2lzIGFuZCBUcmVhdG1lbnQ8L3A+LFxuICAgIDxvbD5cbiAgICAgIDxsaT5Qc3ljaG9sb2dpY2FsIEJ1cmRlbjogTWF5IGNhdXNlIHN0cmVzcyBmb3IgcGFyZW50cyBhbmQgY2hpbGRyZW4gZHVlIHRvIGNvbnN0YW50IG1lZGljYWwgaW50ZXJ2ZW50aW9ucy48L2xpPlxuICAgICAgPGxpPkNvc3QgSW1wbGljYXRpb25zOiBUcmVhdG1lbnRzIGNhbiBiZSBleHBlbnNpdmUsIHdpdGggdmFyeWluZyBpbnN1cmFuY2UgY292ZXJhZ2UsIGxlYXZpbmcgbWFueSBmYW1pbGllcyB1bmFibGUgdG8gYWZmb3JkIGNhcmUuPC9saT5cbiAgICAgIDxsaT5JbmZlY3Rpb24gUmlza3M6IFBhdGllbnRzIHN0aWxsIGZhY2Ugcmlza3MgZnJvbSBpbmZlY3Rpb25zIGxpa2UgUHNldWRvbW9uYXMgc3BwLiwgbGVhZGluZyB0byBwb3RlbnRpYWwgaG9zcGl0YWxpemF0aW9ucy48L2xpPlxuICAgICAgPGxpPk92ZXItbWVkaWNhbGl6YXRpb246IENvbnRpbnVvdXMgZm9jdXMgb24gdHJlYXRtZW50IGNhbiBvdmVyd2hlbG0gZmFtaWxpZXMsIGFmZmVjdGluZyB0aGUgcXVhbGl0eSBvZiBlYXJseSBjaGlsZGhvb2QgZXhwZXJpZW5jZXMuPC9saT5cbiAgICA8L29sPixcbiAgICBdLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+SW4gc3VtbWFyeSwgb3VyIHByb2plY3QgZ3JlYXRseSBiZW5lZml0ZWQgZnJvbSB0aGUgY29udmVyc2F0aW9uIHdpdGggRHIuIE9sYXJpdS4gSGlzIGluc2lnaHRzIGludG8gdGhlIGNvbXBsZXhpdGllcyBvZiBjeXN0aWMgZmlicm9zaXMgdHJlYXRtZW50LCBwYXJ0aWN1bGFybHkgdGhlIHNpZ25pZmljYW5jZSBvZiBlYXJseSBkaWFnbm9zaXMsIHdlcmUgaW52YWx1YWJsZSBhbmQgd2UgY29uc2lkZXJlZCBlYXJseSB0cmVhdG1lbnQgbWV0aG9kcy4gTWF4XHUyMDE5cyBwZXJzb25hbCBleHBlcmllbmNlcyBhZGRlZCBhIGh1bWFuIHBlcnNwZWN0aXZlLCBpbGx1c3RyYXRpbmcgdGhlIG1lZGljYWwgYW5kIHBzeWNob2xvZ2ljYWwgY2hhbGxlbmdlcyBoZSBmYWNlcywgaW5jbHVkaW5nIGluZmVjdGlvbnMgd2l0aCA8aT5Qc2V1ZG9tb25hcyBzcHAuPC9pPiBEci4gT2xhcml1IGhpZ2hsaWdodGVuZCB0aGUgaW1wb3J0YW5jZSBvZiBhIG11bHRpZGlzY2lwbGluYXJ5IGFwcHJvYWNoLCBpbnZvbHZpbmcgbm90IGp1c3QgbWVkaWNhbCBwcm9mZXNzaW9uYWxzIGJ1dCBhbHNvIHBzeWNob2xvZ2lzdHMsIHBoeXNpb3RoZXJhcGlzdHMsIGFuZCBudXRyaXRpb25pc3RzIGZvciBob2xpc3RpYyBjYXJlLiBUaGlzIGRpc2N1c3Npb24gaGVscGVkIHVzIGFwcHJlY2lhdGUgdGhlIGJhbGFuY2UgYmV0d2VlbiB0aW1lbHkgaW50ZXJ2ZW50aW9ucyBhbmQgdGhlIGVtb3Rpb25hbCBidXJkZW4gb24gcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLCBndWlkaW5nIHVzIHRvIGRldmVsb3AgYSBtb3JlIGVtcGF0aGV0aWMgdW5kZXJzdGFuZGluZyBvZiBsaXZpbmcgd2l0aCBjeXN0aWMgZmlicm9zaXMuPC9wPl0sXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgICAgPFFhQm94IHE9XCJDb3VsZCB5b3UgcGxlYXNlIHRlbGwgdXMgYWJvdXQgdGhlIGpvdXJuZXkgdGhhdCBwYXJlbnRzIGdvIHRocm91Z2ggd2l0aCB0aGVpciBDRi1zaWNrIGNoaWxkcmVuIGZyb20gdGhlIGZpcnN0IHZpc2l0IHRvIGRpYWdub3NpcyBhbmQgdHJlYXRtZW50P1wiIGE9XCJTaW5jZSAyMDE2LCBjeXN0aWMgZmlicm9zaXMgKENGKSBkaWFnbm9zaXMgaGFzIGJlZW4gcGFydCBvZiBuZXdib3JuIHNjcmVlbmluZy4gVGhpcyBtZWFucyB0aGF0IHdlIHJlY2VpdmUgbWFueSBjaGlsZHJlbiByaWdodCBhZnRlciBiaXJ0aCB3aG9zZSBzY3JlZW5pbmcgcmVzdWx0cyB3ZXJlIGFibm9ybWFsLiBUaGVzZSBjaGlsZHJlbiBhcmUgdGhlbiBzZW50IHRvIHVzIGZvciBmdXJ0aGVyIGNsYXJpZmljYXRpb24uIE5vdCBldmVyeSBjaGlsZCB3aXRoIGFuIGFibm9ybWFsIHNjcmVlbmluZyByZXN1bHQgaXMgc2ljaywgc28gd2UgcGVyZm9ybSBhIHN3ZWF0IHRlc3QsIGFuZCBhYm91dCBvbmUtdGhpcmQgb2YgdGhlIGNoaWxkcmVuIGFyZSBkaWFnbm9zZWQgd2l0aCB0aGUgZGlzZWFzZS4gVGhlIGFkdmFudGFnZSBvZiBlYXJseSBkaWFnbm9zaXMgaXMgdGhhdCB3ZSBjYW4gaW50ZXJ2ZW5lIGFuZCBzdGFydCB0cmVhdG1lbnQgZWFybHkgdG8gcHJldmVudCBvcmdhbiBkYW1hZ2UuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhbHNvIHJhcmUgbXV0YXRpb25zIHdoZXJlIHRoZSBjb3Vyc2Ugb2YgdGhlIGRpc2Vhc2UgaXMgZGlmZmljdWx0IHRvIHByZWRpY3QuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgdGhlIHByb3MgYW5kIGNvbnMgb2YgbmV3Ym9ybiBzY3JlZW5pbmcgZm9yIGN5c3RpYyBmaWJyb3Npcz9cIiBhPVwiRnJvbSBhIG1lZGljYWwgcG9pbnQgb2YgdmlldywgaXRcdTIwMTlzIGJlbmVmaWNpYWwgdGhhdCB3ZSBjYW4gY2F0Y2ggbWFueSBvZiB0aGVzZSBjYXNlcyBlYXJseSwgYWxsb3dpbmcgdXMgdG8gYWN0IHN3aWZ0bHkuIFRoZXJlIGFyZSBldmVuIG1lZGljYXRpb25zIGZvciBzbWFsbCBiYWJpZXMsIGFuZCBlYXJseSBpbnRlcnZlbnRpb24gY2FuIHByb3RlY3Qgb3JnYW5zLCBwcmV2ZW50aW5nIGNvbmRpdGlvbnMgdGhhdCB3b3VsZCByZXF1aXJlIHRyYW5zcGxhbnRzIGxhdGVyIG9uLiBPbiB0aGUgZG93bnNpZGUsIGJlY2F1c2Ugb2YgdGhlIHdpZGUgdmFyaWV0eSBvZiBnZW5ldGljIG11dGF0aW9ucywgc29tZSBjYXNlcyB3ZSBpZGVudGlmeSBtYXkgbm90IHNob3cgc2lnbmlmaWNhbnQgc3ltcHRvbXMgdW50aWwgYWR1bHRob29kLiBUaGlzIGNyZWF0ZXMgYSBkaWxlbW1hLCBhcyB3ZSBjYW5cdTIwMTl0IHByZWRpY3QgaG93IHRoZWlyIGNvbmRpdGlvbiB3aWxsIHByb2dyZXNzLCBidXQgd2Ugc3RpbGwgc3RhcnQgdHJlYXRtZW50cyBlYXJseSwgd2hpY2ggY2FuIGJlIHN0cmVzc2Z1bCBmb3IgZmFtaWxpZXMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiQ2FuIHlvdSBnaXZlIHVzIGFuIGV4YW1wbGUgb2YgaG93IHRoaXMgc3RyZXNzIGltcGFjdHMgZmFtaWxpZXM/XCIgYT1cIlllcywgSVx1MjAxOXZlIGJlZW4gY2FyaW5nIGZvciBhIHBhdGllbnQgZnJvbSBiaXJ0aCB3aG8gaXMgbm93IGZpdmUgeWVhcnMgb2xkIGFuZCBkb2luZyB2ZXJ5IHdlbGwuIEhvd2V2ZXIsIGZyb20gdGhlIGJlZ2lubmluZywgc2hlIGhhZCB0byB1bmRlcmdvIHBoeXNpb3RoZXJhcHksIHJlZ3VsYXIgY2hlY2stdXBzLCBhbmQgYmxvb2QgdGVzdHMsIGV2ZW4gdGhvdWdoIHNoZSBoYXNuXHUyMDE5dCBzaG93biBhbnkgbWFqb3Igc3ltcHRvbXMuIEhlciBtb3RoZXIgb25jZSB0b2xkIG1lIHNoZSB3YXNuJ3Qgc3VyZSBpZiBzaGUgd291bGQgbWFrZSB0aGUgc2FtZSBkZWNpc2lvbiBhZ2FpbiwgYXMgdGhlIGVhcmx5IGludGVydmVudGlvbiBjYXVzZWQgYSBsb3Qgb2Ygc3RyZXNzLiBTaGUgd29uZGVyZWQgaWYgc2hlIG1pZ2h0IGhhdmUgZW5qb3llZCB0aGUgZmlyc3QgeWVhciBvZiBoZXIgY2hpbGRcdTIwMTlzIGxpZmUgbW9yZSBpZiB0aGluZ3MgaGFkIGJlZW4gbW9yZSByZWxheGVkLiBOb3csIGF0IGFnZSBmaXZlLCBub3RoaW5nIHNpZ25pZmljYW50IGhhcyBjaGFuZ2VkIGluIGhlciBjb25kaXRpb24sIGFuZCB0aGV5XHUyMDE5dmUgZGVjaWRlZCBhZ2FpbnN0IHN0YXJ0aW5nIG1vZHVsYXRvciB0aGVyYXB5IGZvciB0aGUgdGltZSBiZWluZy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgZG8gZmFtaWxpZXMgdHlwaWNhbGx5IHJlYWN0IHdoZW4gYSBDRiBkaWFnbm9zaXMgaXMgY29uZmlybWVkP1wiIGE9XCJGb3IgbW9zdCBmYW1pbGllcywgaXRcdTIwMTlzIGEgc2hvY2suIEN5c3RpYyBmaWJyb3NpcyBzdGlsbCBoYXMgYSBzdHJvbmcgYXNzb2NpYXRpb24gd2l0aCBiZWluZyBhIGxpZmUtdGhyZWF0ZW5pbmcgZGlzZWFzZSwgZGVzcGl0ZSB0aGUgZmFjdCB0aGF0IHdlIG5vdyBoYXZlIGdvb2QgdHJlYXRtZW50cyBhbmQgbWFueSBwYXRpZW50cyBjYW4gbGl2ZSBoZWFsdGh5IGxpdmVzLiBUaGUgZGlhZ25vc2lzIHB1dHMgYSBodWdlIHBzeWNob2xvZ2ljYWwgc3RyYWluIG9uIHRoZSBmYW1pbHksIGVzcGVjaWFsbHkgd2hlbiBkZWFsaW5nIHdpdGggdmVyeSB5b3VuZyBjaGlsZHJlbi4gVGhlIG1vc3QgaW1wb3J0YW50IGZhY3RvciBpbiBtYW5hZ2luZyB0aGlzLCBhc2lkZSBmcm9tIG1lZGljYWwgdHJlYXRtZW50cywgaXMgdGhlIHN1cHBvcnQgZnJvbSB0aGUgbWVkaWNhbCB0ZWFtLiBJdFx1MjAxOXMgY3JpdGljYWwgdG8gaGF2ZSBhIHRlYW0gdGhhdCB3b3JrcyB3ZWxsIHRvZ2V0aGVyLCBub3QganVzdCBhIHNpbmdsZSBkb2N0b3IgY2FsbGluZyBhbGwgdGhlIHNob3RzLiBGYW1pbGllcyBvZnRlbiBuZWVkIG11Y2ggbW9yZSBwc3ljaG9sb2dpY2FsIGFuZCBudXRyaXRpb25hbCBzdXBwb3J0IGVhcmx5IG9uIHRoYW4gbWVkaWNhbCBpbnRlcnZlbnRpb24sIGFuZCB0aGlzIGlzIHdoZXJlIGhhdmluZyBhIG11bHRpZGlzY2lwbGluYXJ5IHRlYW0gYmVjb21lcyBlc3NlbnRpYWwuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBpcyB0aGUgcHJvY2VzcyBmb3IgZGlhZ25vc2luZyBhbmQgdHJlYXRpbmcgb2xkZXIgcGF0aWVudHMgd2hvIGhhdmVuXHUyMDE5dCBiZWVuIHRocm91Z2ggbmV3Ym9ybiBzY3JlZW5pbmc/XCIgYT1cIk9sZGVyIHBhdGllbnRzIHdobyBjb21lIHRvIHVzIHdpdGggY29tcGxhaW50cyBtYXkgbm90IGhhdmUgdW5kZXJnb25lIG5ld2Jvcm4gc2NyZWVuaW5nLCBzbyB0aGV5IGFyZSBkaWFnbm9zZWQgYmFzZWQgb24gdGhlaXIgc3ltcHRvbXMuIFRoZXNlIGNvbXBsYWludHMgY2FuIHJhbmdlIGZyb20gbWlsZCB0byBzZXZlcmUgYW5kIGFyZSBvZnRlbiBub24tc3BlY2lmaWMsIGxpa2UgY2hyb25pYyBjb3VnaCBvciBmYWlsdXJlIHRvIHRocml2ZS4gV2hlbiB0aGUgY2F1c2Ugb2YgdGhlc2Ugc3ltcHRvbXMgaXNuXHUyMDE5dCBpbW1lZGlhdGVseSBjbGVhciwgd2UgZG8gYSBzd2VhdCB0ZXN0LiBPbmNlIGRpYWdub3NlZCwgd2UgY2FuIHN0YXJ0IHRyZWF0bWVudCwgd2hpY2ggb2Z0ZW4gaW52b2x2ZXMgd29ya2luZyB3aXRoIGEgcHN5Y2hvbG9naXN0IHRvIGhlbHAgdGhlIGZhbWlseSBwcm9jZXNzIHRoZSBuZXdzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3Ugc3VwcG9ydCBmYW1pbGllcyBkdXJpbmcgdGhlIGluaXRpYWwgc2hvY2sgb2YgZGlhZ25vc2lzP1wiIGE9XCJXaGVuIHRoZSBkaWFnbm9zaXMgaXMgcGFydGljdWxhcmx5IGRpZmZpY3VsdCBmb3IgZmFtaWxpZXMgdG8gcHJvY2Vzcywgd2Ugc29tZXRpbWVzIGhhdmUgdGhlIHBhdGllbnRzIHN0YXkgaW4gdGhlIGhvc3BpdGFsIGZvciB1cCB0byBhIHdlZWsuIFRoaXMgZ2l2ZXMgdXMgdGltZSB0byBtZWV0IHdpdGggdGhlbSBkYWlseSwgYW5zd2VyIHF1ZXN0aW9ucywgYW5kIHByb3ZpZGUgZ3VpZGFuY2UuIER1cmluZyB0aGUgZmlyc3QgY29uc3VsdGF0aW9uLCBmYW1pbGllcyBvZnRlbiBmYWxsIGludG8gYSBzdGF0ZSBvZiBzaG9jaywgYW5kIG5vIG1hdHRlciBob3cgY2FyZWZ1bGx5IHRoZSBkb2N0b3IgZXhwbGFpbnMgdGhpbmdzLCBpdFx1MjAxOXMgaGFyZCBmb3IgdGhlbSB0byBhYnNvcmIgYWxsIHRoZSBpbmZvcm1hdGlvbi4gTWVldGluZyB3aXRoIHRoZW0gYWdhaW4gb3ZlciB0aGUgZm9sbG93aW5nIGRheXMgaGVscHMsIGFuZCB3ZSBoYXZlIHNwZWNpYWxpc3RzIGluIGh5Z2llbmUsIHBoeXNpb3RoZXJhcHksIGFuZCBzb2NpYWwgY291bnNlbGluZyBvbiB0aGUgdGVhbSB0byBvZmZlciBob2xpc3RpYyBzdXBwb3J0LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgaGFwcGVucyBpZiBhIGNoaWxkIGdldHMgaW5mZWN0ZWQgd2l0aCBQc2V1ZG9tb25hcyBvciBhbm90aGVyIGJhY3RlcmlhbCBjdWx0dXJlIGluIHRoZSBsdW5ncz9cIiBhPVwiUHNldWRvbW9uYXMgaXMgb25lIG9mIHRoZSBtb3N0IGZlYXJlZCBpbmZlY3Rpb25zIGZvciBDRiBwYXRpZW50cy4gSXRcdTIwMTlzIGEgY29tbW9uIGVudmlyb25tZW50YWwgYmFjdGVyaXVtIHRoYXQgaXMgZGlmZmljdWx0IGZvciBDRiBwYXRpZW50cyB0byBjbGVhciBmcm9tIHRoZWlyIGx1bmdzLiBPbmNlIHdlIGRldGVjdCBpdCwgd2UgdHJlYXQgdGhlIHBhdGllbnQgd2l0aCBzcGVjaWZpYyBhbnRpYmlvdGljcywgb2Z0ZW4gdGhyb3VnaCBpbnRyYXZlbm91cyBkZWxpdmVyeSBvdmVyIHR3byB3ZWVrcyBpbiB0aGUgaG9zcGl0YWwuIEFmdGVyIHRoZSBpbml0aWFsIHRyZWF0bWVudCwgcGF0aWVudHMgbWF5IGNvbnRpbnVlIHdpdGggaW5oYWxlZCBhbnRpYmlvdGljcyBmb3Igc2V2ZXJhbCBtb250aHMgdG8gcHJldmVudCBmdXJ0aGVyIGluZmVjdGlvbi4gSXRcdTIwMTlzIGEgdmVyeSBpbnRlbnNpdmUgcHJvY2VzcywgdGFraW5nIGEgbG90IG9mIHRpbWUgYW5kIGVuZXJneSwgYW5kIGV2ZW4gdGhvdWdoIHdlIG1heSBnZXQgcmlkIG9mIHRoZSBpbmZlY3Rpb24gYSBmZXcgdGltZXMsIGV2ZW50dWFsbHkgdGhlIGdlcm0gY2FuIGJlY29tZSByZXNpc3RhbnQgYW5kIHN0YXkgaW4gdGhlIGJvZHkuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSBwcmV2ZW50YXRpdmUgbWVhc3VyZXMgdG8gYXZvaWQgUHNldWRvbW9uYXMgaW5mZWN0aW9uP1wiIGE9XCJZZXMsIHRoZXJlIGFyZSBoeWdpZW5lIG1lYXN1cmVzLiBGb3IgZXhhbXBsZSwgQ0YgcGF0aWVudHMgYWx3YXlzIHdlYXIgbWFza3MgaW4gdGhlIGhvc3BpdGFsIHRvIGF2b2lkIGluZmVjdGlvbiBmcm9tIG90aGVyIHBhdGllbnRzLiBCdXQgaXRcdTIwMTlzIGRpZmZpY3VsdCB0byBhdm9pZCBQc2V1ZG9tb25hcyBlbnRpcmVseSBzaW5jZSBpdFx1MjAxOXMgZm91bmQgaW4gc3RhZ25hbnQgd2F0ZXIgYW5kIG90aGVyIHBsYWNlcyBpbiB0aGUgZW52aXJvbm1lbnQuIFdlIGFkdmlzZSBwYXRpZW50cyB0byBiZSBjYXV0aW91cyB3aXRoIHdhdGVyIHNvdXJjZXMgbGlrZSBzaW5rcyBvciBwb25kcy4gSG93ZXZlciwgd2UgbmVlZCB0byBiYWxhbmNlIHN0cmljdCBoeWdpZW5lIHdpdGggcXVhbGl0eSBvZiBsaWZlLCBlc3BlY2lhbGx5IGZvciBjaGlsZHJlbiwgYXMgYmVpbmcgb3Zlcmx5IHN0cmljdCBjYW4gbGVhZCB0byBvYnNlc3NpdmUtY29tcHVsc2l2ZSBiZWhhdmlvcnMgd2l0aG91dCBuZWNlc3NhcmlseSByZWR1Y2luZyB0aGUgcmlzayBvZiBpbmZlY3Rpb24uXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8gc29tZSBmYW1pbGllcyByZXNpc3QgdGhlIG1lZGljYWwgYWR2aWNlIG9uIHByZXZlbnRpbmcgaW5mZWN0aW9ucz9cIiBhPVwiT24gYW4gZW1vdGlvbmFsIGxldmVsLCBJIGZlZWwgdGhhdCBmYW1pbGllcyB3aG8gdGFrZSBjYWxjdWxhdGVkIHJpc2tzIHRvIGltcHJvdmUgdGhlaXIgcXVhbGl0eSBvZiBsaWZlIHRlbmQgdG8gY29wZSBiZXR0ZXIuIE92ZXJwcm90ZWN0aW9uIGNhbiBsZWFkIHRvIGdyZWF0ZXIgcHN5Y2hvbG9naWNhbCBzdHJlc3MuIEhvd2V2ZXIsIEkgZG9uJ3QgaGF2ZSBlbm91Z2ggZXhwZXJpZW5jZSB0byBzYXkgZm9yIHN1cmUgd2hldGhlciB0aG9zZSB3aG8gZG9uXHUyMDE5dCBwcm90ZWN0IHRoZW1zZWx2ZXMgYXMgc3RyaWN0bHkgZ2V0IGluZmVjdGVkIGVhcmxpZXIgb3Igc3VmZmVyIHdvcnNlIG91dGNvbWVzLiBJdFx1MjAxOXMgYWxzbyB3b3J0aCBub3RpbmcgdGhhdCBuZXcgdGhlcmFwaWVzIGFyZSBub3cgYXZhaWxhYmxlIHRoYXQgaGVscCByZWR1Y2UgaW5mZWN0aW9uIHJpc2tzLCBhbGxvd2luZyBmb3IgYSBiaXQgbW9yZSBmcmVlZG9tLCBlc3BlY2lhbGx5IGZvciBjaGlsZHJlbi5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgb2Z0ZW4gZG8gcGF0aWVudHMgbmVlZCB0byBiZSB0ZXN0ZWQgZm9yIGluZmVjdGlvbnMgbGlrZSBQc2V1ZG9tb25hcz9cIiBhPVwiVGhlIG9mZmljaWFsIGd1aWRlbGluZSBpcyBldmVyeSB0d28gbW9udGhzLCBidXQgcmVhbGlzdGljYWxseSB3ZSBhaW0gZm9yIGV2ZXJ5IDMtNCBtb250aHMuIFJlZ3VsYXIgdGVzdGluZyBpcyBpbXBvcnRhbnQgYmVjYXVzZSBQc2V1ZG9tb25hcyBjYW4gYmUgcHJlc2VudCB3aXRob3V0IHN5bXB0b21zLiBJZiB0b28gbXVjaCB0aW1lIHBhc3NlcyBiZWZvcmUgZGV0ZWN0aW9uLCBpdCBiZWNvbWVzIGhhcmRlciB0byByZW1vdmUgdGhlIGluZmVjdGlvbi5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgZG8geW91IG1hbmFnZSBjaHJvbmljYWxseSBpbmZlY3RlZCBwYXRpZW50cz9cIiBhPVwiUGF0aWVudHMgd2hvIGFyZSBjaHJvbmljYWxseSBpbmZlY3RlZCB3aXRoIFBzZXVkb21vbmFzIGRvbid0IHN0YXkgaW4gdGhlIGhvc3BpdGFsIGluZGVmaW5pdGVseS4gVGhleSB1c3VhbGx5IHJlbWFpbiBhdCBob21lLCBpbmhhbGluZyBhbnRpYmlvdGljcyBkYWlseSBhbmQgdGFraW5nIHBoeXNpb3RoZXJhcHkgdG8gaGVscCBjbGVhciBtdWN1cyBmcm9tIHRoZWlyIGx1bmdzLiBJbnRyYXZlbm91cyBhbnRpYmlvdGljIHRoZXJhcHkgaXMgcmVzZXJ2ZWQgZm9yIG1vcmUgc2V2ZXJlIGNhc2VzIG9yIGR1cmluZyBjbGluaWNhbCBkZXRlcmlvcmF0aW9uLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkFyZSBjaHJvbmljYWxseSBpbmZlY3RlZCBwYXRpZW50cyBhbGxvd2VkIHRvIHZpc2l0IHlvdXIgcHJhY3RpY2U/XCIgYT1cIlllcywgY2hyb25pY2FsbHkgaW5mZWN0ZWQgcGF0aWVudHMgYXJlIGFsbG93ZWQgdG8gdmlzaXQgdGhlIHByYWN0aWNlLiBXZSB0cnkgdG8gc2NoZWR1bGUgdGhlbSBhdCBkaWZmZXJlbnQgdGltZXMgdG8gYXZvaWQgY29udGFjdCBiZXR3ZWVuIGluZmVjdGVkIGFuZCBub24taW5mZWN0ZWQgcGF0aWVudHMsIGFuZCB3ZSBvZnRlbiB1c2Ugc2VwYXJhdGUgcm9vbXMgdG8gbWluaW1pemUgcmlzay5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgb2Z0ZW4gZG8gY2hpbGRyZW4gYW5kIGFkdWx0cyBuZWVkIHRvIGhhdmUgbHVuZyBmdW5jdGlvbiB0ZXN0cz9cIiBhPVwiWW91IGNhblx1MjAxOXQgY29uZHVjdCBhIGdvb2QgbHVuZyBmdW5jdGlvbiB0ZXN0IHVudGlsIHRoZSBjaGlsZCBpcyBhcm91bmQgZml2ZSB5ZWFycyBvbGQuIEFmdGVyIHRoYXQsIGl0IGJlY29tZXMgcGFydCBvZiB0aGUgcm91dGluZSBjaGVjay11cCBiZWNhdXNlIGl0XHUyMDE5cyBub24taW52YXNpdmUgYW5kIHByb3ZpZGVzIGEgZ29vZCBpbmRpY2F0b3Igb2YgbHVuZyBoZWFsdGguIFdlIHNlZSBjaGlsZHJlbiBldmVyeSB0aHJlZSBtb250aHMsIGFuZCBJIGJlbGlldmUgdGhlIHByb3RvY29sIGlzIHRoZSBzYW1lIGZvciBhZHVsdHMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgdGhpbmsgYWJvdXQgc3VwcG9ydCBncm91cHMgb3IgaGVhbHRoIHJldHJlYXRzIGZvciBDRiBwYXRpZW50cz9cIiBhPVwiU3VwcG9ydCBncm91cHMgYXJlIGV4dHJlbWVseSBpbXBvcnRhbnQuIEFsdGhvdWdoIHdlIGFyZSBhIGdvb2QgbWVkaWNhbCB0ZWFtLCBhZHZpY2UgZnJvbSBwZWVycyBvZnRlbiByZXNvbmF0ZXMgbW9yZSB3aXRoIHBhdGllbnRzLiBXZVx1MjAxOXZlIG9yZ2FuaXplZCB0d28gcGFyZW50cycgZXZlbmluZ3MgcmVjZW50bHksIHdoZXJlIHBhcmVudHMgY2FuIGV4Y2hhbmdlIGV4cGVyaWVuY2VzIGFuZCBzdXBwb3J0IGVhY2ggb3RoZXIuIFVuZm9ydHVuYXRlbHksIHdlIGNhblx1MjAxOXQgaW52aXRlIHRoZSBjaGlsZHJlbiB0aGVtc2VsdmVzIGR1ZSB0byB0aGUgcmlzayBvZiBpbmZlY3Rpb24sIGJ1dCBpbiByZWhhYmlsaXRhdGlvbiBzZXR0aW5ncywgdGhleSBjYW4gbWVldCBpbiBnZXJtLXNwZWNpZmljIGdyb3VwcyBhbmQgYmVuZWZpdCBmcm9tIHNoYXJlZCBleHBlcmllbmNlcy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJJcyB0aGVyZSBhIHJpc2sgb2YgYW50aWJpb3RpYyByZXNpc3RhbmNlIHdpdGggcmVwZWF0ZWQgdHJlYXRtZW50cz9cIiBhPVwiWWVzLCByZXNpc3RhbmNlIGlzIGEgY29uY2VybiwgZXNwZWNpYWxseSB3aXRoIHJlcGVhdGVkIGFudGliaW90aWMgdHJlYXRtZW50cy4gSG93ZXZlciwgdGhlcmVcdTIwMTlzIG9mdGVuIGEgZGlzY3JlcGFuY3kgYmV0d2VlbiB3aGF0IHdlIHNlZSBpbiBsYWIgdGVzdHMgYW5kIHRoZSBjbGluaWNhbCBvdXRjb21lcy4gRXZlbiBpZiBhIGdlcm0gc2hvd3MgcmVzaXN0YW5jZSBvbiBwYXBlciwgbWFueSBwYXRpZW50cyBzdGlsbCByZXNwb25kIHdlbGwgdG8gdHJlYXRtZW50LiBXZSBiYXNlIG91ciBkZWNpc2lvbnMgbW9yZSBvbiBjbGluaWNhbCBvdXRjb21lcyB0aGFuIGxhYiByZXN1bHRzLCBjaGFuZ2luZyBhbnRpYmlvdGljcyBvbmx5IGlmIHRoZSBwYXRpZW50XHUyMDE5cyBjb25kaXRpb24gZG9lc25cdTIwMTl0IGltcHJvdmUuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSBzaWRlIGVmZmVjdHMgdG8gdGhlIG1lZGljYXRpb25zP1wiIGE9XCJZZXMsIGFsbCBtZWRpY2F0aW9ucyBoYXZlIHBvdGVudGlhbCBzaWRlIGVmZmVjdHMsIHRob3VnaCBtYW55IG9mIHRoZW0gYXJlIG1pbm9yLCBsaWtlIHJhc2hlcyBvciBzdG9tYWNoYWNoZXMuIE9uZSBzZXJpb3VzIHNpZGUgZWZmZWN0IG9mIHNvbWUgYW50aWJpb3RpY3MgaXMgaGVhcmluZyBkYW1hZ2UsIHdoaWNoIGNhbiBsZWFkIHRvIGxpZmVsb25nIGhlYXJpbmcgbG9zcy4gVGhpcyBpcyB3aHkgd2UgY2xvc2VseSBtb25pdG9yIHBhdGllbnRzIGluIHRoZSBob3NwaXRhbCB3aGVuIHN0YXJ0aW5nIHRyZWF0bWVudHMuIFRoZSBuZXdlciB0aGVyYXBpZXMsIGxpa2UgbW9kdWxhdG9ycywgY2FuIGNhdXNlIGxpdmVyIHN0cmVzcywgc28gd2UgcmVndWxhcmx5IGNoZWNrIGxpdmVyIGVuenltZXMgaW4gdGhlIGJsb29kLiBIb3dldmVyLCBzZXZlcmUgc2lkZSBlZmZlY3RzIGFyZSByYXJlLCBhbmQgdGhlIGRydWdzIGFyZSBnZW5lcmFsbHkgd2VsbCB0b2xlcmF0ZWQuXCIgLz5cbiAgICA8Lz4sXG4gICAgcGljdHVyZXVybF9haW06IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2ludGVydmlldy1vbGFyaXUuc3ZnXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL29sYXJpby1hYmJpbGR1bmcxLnN2Z1wiLFxuICAgIHN1bW1hcnk6IFwiV2UgaW50ZXJ2aWV3ZWQgRHIuIENyaXN0aWFuLUdhYnJpZWwgT2xhcml1IHRvIGdhaW4gaW5zaWdodHMgaW50byB0aGUgZGlhZ25vc2lzIGFuZCB0cmVhdG1lbnQgb2YgY3lzdGljIGZpYnJvc2lzIChDRikuIEhlIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGVhcmx5IGRpYWdub3NpcyB0aHJvdWdoIG5ld2Jvcm4gc2NyZWVuaW5nLCB3aGljaCBhbGxvd3MgZm9yIHRpbWVseSBpbnRlcnZlbnRpb24gYnV0IGNhbiBhbHNvIGJlIHBlcmNlaXZlZCBhcyBhIGJ1cmRlbiBieSBmYW1pbGllcywgZXNwZWNpYWxseSB3aGVuIHN5bXB0b21zIG1heSBub3QgbWFuaWZlc3QgdW50aWwgbGF0ZXIuIERyLiBPbGFyaXUgZW1waGFzaXplZCB0aGUgZW1vdGlvbmFsIGFuZCBmaW5hbmNpYWwgY2hhbGxlbmdlcyBmYW1pbGllcyBmYWNlLCBwYXJ0aWN1bGFybHkgcmVnYXJkaW5nIGNvc3RseSB0cmVhdG1lbnRzIGFuZCBpbnN1cmFuY2UgdmFyaWFiaWxpdHkuIFBhdGllbnQgY29udGFjdCBNYXggc2hhcmVkIGhpcyBleHBlcmllbmNlcyB3aXRoIGluZmVjdGlvbnMgbGlrZSBQc2V1ZG9tb25hcyBzcHAuLCB3aGljaCBjb21wbGljYXRlIGNhcmUgYW5kIG5lY2Vzc2l0YXRlIGEgbXVsdGlkaXNjaXBsaW5hcnkgYXBwcm9hY2ggaW52b2x2aW5nIG1lZGljYWwgcHJvZmVzc2lvbmFscywgcHN5Y2hvbG9naXN0cywgYW5kIG51dHJpdGlvbmlzdHMuIE92ZXJhbGwsIHRoZSBkaXNjdXNzaW9uIHVuZGVyc2NvcmVkIHRoZSBuZWVkIHRvIGJhbGFuY2UgbWVkaWNhbCBpbnRlcnZlbnRpb25zIHdpdGggdGhlIGVtb3Rpb25hbCB3ZWxsLWJlaW5nIG9mIHBhdGllbnRzIGFuZCBmYW1pbGllcywgZ3VpZGluZyB1cyB0b3dhcmQgYSBtb3JlIGNvbXBhc3Npb25hdGUgdW5kZXJzdGFuZGluZyBvZiBsaXZpbmcgd2l0aCBDRi5cIixcbiAgICBtb250aHM6IFwibWF5XCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiRXhwbG9yaW5nIG5ldyBpZGVhc1wiLFxuICAgIG5hY2hubmFtZTogXCJ4XCIsXG4gICAgcGljdHVyZXVybDogcGljc1sncGxhY2Vob2xkZXInXSxcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXG4gICAgYWZmaWxpYXRpb246IFwiXCIsXG4gICAgaGVhZGluZzogXCJGdXJ0aGVyIGJyYWluc3Rvcm1pbmcgb24gYXBwcm9hY2hlc1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImJyYWluc3Rvcm1pbmdcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJ4XCIsXG4gICAgcXVvdGVOYWNobmFtZTpcInhcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiZFwiLFxuICAgIGFpbW9mY29udGFjdDogXCJkXCIsXG4gICAgaW5zaWdodHM6IFwiZFwiLFxuICAgIGltcGxlbWVudGF0aW9uOiBcImRcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBcImRcIixcbiAgICBtb250aHM6IFwibWF5XCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiS2F0cmluXCIsXG4gICAgbmFjaG5uYW1lOiBcIldlc3Rob2ZmXCIsXG4gICAgam9iOiBcIlBoeXNpb3RoZXJhcGlzdFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkluZGVwZW5kZW50XCIsXG4gICAgcGljdHVyZXVybDogcGljc1snd2VzdGhvZmYnXSxcbiAgICB0YWc6IFwiTWVkaWNhbCBQcm9mZXNzaW9uYWxcIixcbiAgICBoZWFkaW5nOiBcIkludGVydmlldyB3aXRoIGEgc3BlY2lhbGl6ZWQgcGh5c2lvdGhlcmFwaXN0IHJlZ2FyZGluZyBicmVhdGhpbmcgdGhlcmFweSBmb3IgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwid2VzdGhvZmZpbnZcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6XCJXZXN0aG9mZiwgUGh5c2lvdGhlcmFwaXN0XCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkthdHJpblwiLFxuICAgIHF1b3RlOiBcIlRoZSBtb3JlIHdlIGtub3csIHRoZSBtb3JlIG9wcG9ydHVuaXRpZXMgd2UgaGF2ZS5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiVGhlIG9iamVjdGl2ZSBvZiB0aGUgY29udGFjdCB3YXMgdG8gZ2FpbiBpbi1kZXB0aCBpbnNpZ2h0cyBpbnRvIHRoZSB0cmVhdG1lbnQgYW5kIGNhcmUgb2YgY2hpbGRyZW4gd2l0aCBDRi4gVGhlIHRoZXJhcGlzdCdzIGV4cGVydGlzZSB3YXMgaW50ZW5kZWQgdG8gaGVscCBkZXZlbG9wIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGNoYWxsZW5nZXMgYW5kIG5lY2Vzc2FyeSBtZWFzdXJlcyBpbiB0aGUgdHJlYXRtZW50IG9mIHRoaXMgY2hyb25pYyBkaXNlYXNlLiBJbiBhZGRpdGlvbiwgdGhlIGFpbSB3YXMgdG8gYXNjZXJ0YWluIGhvdyB0aGUgdGhlcmFweSBpcyBpbXBsZW1lbnRlZCBpbiBldmVyeWRheSBsaWZlIGFuZCB3aGljaCBzcGVjaWZpYyBhcHByb2FjaGVzIGFuZCBtZXRob2RzIGFyZSBwYXJ0aWN1bGFybHkgZWZmZWN0aXZlLlwiLFxuICAgIGluc2lnaHRzOiBcIlRoZSBpbnRlcnZpZXcgeWllbGRlZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSByZWd1bGFyIGltcGxlbWVudGF0aW9uIG9mIHRoZSB0aGVyYXB5LCB0aGUgdXNlIG9mIGFpZHMgYW5kIHRoZSBhZGFwdGF0aW9uIG9mIGV4ZXJjaXNlcyB0byB0aGUgaW5kaXZpZHVhbCBuZWVkcyBvZiB0aGUgcGF0aWVudHMuIEl0IHdhcyBub3RhYmxlIHRoYXQgdGhlIHRoZXJhcHkgaGFzIGltcHJvdmVkIG92ZXIgdGhlIGxhc3QgeWVhcnMsIGNvbnNpZGVyYWJseSB0aGFua3MgdG8gYmV0dGVyIG1lZGljYXRpb24gYW5kIGFkYXB0ZWQgZXhlcmNpc2VzLCB3aXRoIGEgY29uY29taXRhbnQgaW5jcmVhc2UgaW4gbGlmZSBleHBlY3RhbmN5IGZvciBjaGlsZHJlbiBhZmZlY3RlZCBieSBDRi4gT2YgcGFydGljdWxhciBpbnRlcmVzdCB3YXMgdGhlIGVtcGhhc2lzIG9uIHRoZSBpbXBvcnRhbmNlIG9mIHNwb3J0IGFuZCBleGVyY2lzZSwgd2hpY2ggc2hvdWxkIG5vdCBvbmx5IGJlIHRoZXJhcGV1dGljYWxseSBlZmZlY3RpdmUsIGJ1dCBhbHNvIGluY3JlYXNlIHF1YWxpdHkgb2YgbGlmZS4gXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgYnkgS2F0cmluIFdlc3Rob2ZmIGhhZCBhIHBhcnRpY3VsYXIgaW1wYWN0IG9uIG91ciBwcm9qZWN0OiBcdTIwMThUaGUgbW9yZSB3ZSBrbm93LCB0aGUgbW9yZSBvcHRpb25zIHdlIGhhdmVcdTIwMTkuIFdlIGxlYXJudCBmcm9tIHRoZSBpbnRlcnZpZXcgdGhhdCB0aGUgY3VycmVudCBtZWRpY2F0aW9uIGlzIGFscmVhZHkgaGVscGluZyBtYW55IHBhdGllbnRzIHZlcnkgd2VsbCwgYnV0IHRoYXQgdGhlcmUgaXMgc3RpbGwgZ3JlYXQgcG90ZW50aWFsIGZvciBpbXByb3ZlbWVudC4gU3VjY2Vzc2Z1bCBnZW5lIHRoZXJhcHkgd291bGQgc2lnbmlmaWNhbnRseSBpbXByb3ZlIHRoZSBxdWFsaXR5IG9mIGxpZmUgb2YgQ0YgcGF0aWVudHMuIFdlIGltcGxlbWVudGVkIHRoZSBmaW5kaW5ncyBmcm9tIHRoaXMgaW50ZXJ2aWV3IGluIG91ciBwYXJ0aWNpcGF0aW9uIGluIE11a29Nb3ZlIC0gd2UgYWxzbyBhY3RpdmVseSB0b29rIHBhcnQgaW4gY3lzdGljIGZpYnJvc2lzIGF3YXJlbmVzcyBtb250aCBhbmQgbGVhcm50IGV2ZW4gbW9yZSBhYm91dCB0aGUgaW1wb3J0YW5jZSBvZiBwaHlzaW90aGVyYXB5LlwiLFxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9rYXRyaW4td2VzdGhvZmYtem9vbS53ZWJwXCIsXG4gICAgc3VtbWFyeTogWzxwPlRoZSBvYmplY3RpdmUgb2Ygb3VyIGRpc2N1c3Npb24gd2l0aCBhIHRoZXJhcGlzdCB3YXMgdG8gZ2FpbiBhIGNvbXByZWhlbnNpdmUgdW5kZXJzdGFuZGluZyBvZiB0aGUgdHJlYXRtZW50IGFuZCBjYXJlIG9mIGNoaWxkcmVuIHdpdGggY3lzdGljIGZpYnJvc2lzLiBUaGUgaW50ZXJ2aWV3IHByb3ZpZGVkIGludmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgdGhlcmFweSdzIGltcGxlbWVudGF0aW9uLCBoaWdobGlnaHRpbmcgdGhlIHNpZ25pZmljYW50IGFkdmFuY2VtZW50cyBpbiBtZWRpY2F0aW9uIGFuZCB0YWlsb3JlZCBleGVyY2lzZXMgdGhhdCBoYXZlIGxlZCB0byBpbXByb3ZlZCBwYXRpZW50IG91dGNvbWVzIGFuZCBpbmNyZWFzZWQgbGlmZSBleHBlY3RhbmN5LiBBIGtleSB0YWtlYXdheSB3YXMgdGhlIGVtcGhhc2lzIG9uIHRoZSByb2xlIG9mIHNwb3J0cyBhbmQgZXhlcmNpc2UsIG5vdCBqdXN0IGZvciB0aGVyYXBldXRpYyBlZmZpY2FjeSBidXQgYWxzbyBmb3IgZW5oYW5jaW5nIG92ZXJhbGwgcXVhbGl0eSBvZiBsaWZlLiBJdCBsZXQgdG8gb3VyIHBhcnRpY2lwYXRpb24gaW4gdGhlIENGIGF3YXJuZXNzIG1vbnRoIGFuZCB0aGUgb3V0cmVhY2ggcHJvamVjdCBtdWtvbW92ZSBbTGluayBtdWtvbW92ZV08L3A+XSxcbiAgICBtb250aHM6IFwiTWF5XCIsXG4gICAgaW50ZXJ2aWV3Ojw+XG4gICAgPFFhQm94IHE9XCJGcm9tIHdoYXQgYWdlIGRvIHRoZSBwYXRpZW50cyBjb21lIHRvIHlvdT8gSG93IGxvbmcgZG8gdGhleSBzdGF5PyBIb3cgbWFueSBwYXRpZW50cyBkbyB5b3UgdHJlYXQ/XCIgYT1cIlRoZSBwYXRpZW50cyBjb21lIHRvIHVzIGF0IGEgdmVyeSBlYXJseSBhZ2UuIEEgZGVmaW5pdGUgZGlhZ25vc2lzIGlzIG1hZGUgYWZ0ZXIgNiB3ZWVrcyBhdCB0aGUgbGF0ZXN0LiBPbmNlIGRpYWdub3NlZCwgdGhlIHdob2xlIGZhbWlseSBpcyBnZW5ldGljYWxseSB0ZXN0ZWQsIGFuZCBjaGlsZHJlbiBhcmUgc2VudCBmb3IgcGh5c2lvdGhlcmFweSwgb2Z0ZW4gc3RhcnRpbmcgaW4gdGhlIGhvc3BpdGFsLiBDdXJyZW50bHksIHdlIGhhdmUgOCBjaGlsZHJlbiB3aXRoIENGIGluIG91ciBwcmFjdGljZSwgd2hpY2ggaXMgcmVsYXRpdmVseSBzbWFsbCBjb21wYXJlZCB0byBvdGhlciBkaXNlYXNlcy4gV2UgaGF2ZSBzbGlnaHRseSBtb3JlIENGIHBhdGllbnRzIGJlY2F1c2Ugd2Ugc3BlY2lhbGl6ZSBpbiBpdC5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGF0IGtpbmQgb2YgZXhlcmNpc2VzIGRvIHlvdSBkbz9cIiBhPVwiV2UgZG8gYSBsb3Qgb2YgYnJlYXRoaW5nIHRoZXJhcHkgYW5kIGhhdmUgYXR0ZW5kZWQgc3BlY2lhbCB0cmFpbmluZyBjb3Vyc2VzIGZvciBDRiB0aGF0IGludHJvZHVjZWQgbmV3IHRlY2huaXF1ZXMuIFRoZSBjdXJyZW50IGdvbGQgc3RhbmRhcmQgaXMgYXV0b2dlbm91cyBkcmFpbmFnZSBhY2NvcmRpbmcgdG8gQ2hldmFsbGllciwgd2hpY2ggZWZmZWN0aXZlbHkgcmVtb3ZlcyBtdWN1cy4gV2UgZm9sbG93IGEgZ2VuZXJhbCByb3V0aW5lOiAxLiB3ZXQgaW5oYWxhdGlvbiB0byBiaW5kIG11Y3VzLCAyLiBkcmFpbmFnZSB0byBleHBlbCBtdWN1cywgYW5kIDMuIGFudGliaW90aWNzIHRvIHdvcmsgb3B0aW1hbGx5IG9uIGNsZWFuIGx1bmdzLiBXZSBhbHNvIHVzZSBzcGVjaWFsIGJlbHRzIGZvciBjb21wcmVzc2luZyAnbWFnaWMgcG9pbnRzJyB0byBlbmhhbmNlIGx1bmcgdmVudGlsYXRpb24uXCIvPlxuICAgIDxRYUJveCBxPVwiV2hlbiBkb2VzIGRyYWluYWdlIHN0YXJ0P1wiIGE9XCJXZSBzdGFydCBkcmFpbmFnZSBpbiBuZXdib3JucyB0byBwcmV2ZW50IG11Y3VzIGZyb20gc2V0dGxpbmcuXCIvPlxuICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIHNwZWNpYWwgZXhlcmNpc2VzIHRoYXQgY2FuIGFsc28gYmUgZG9uZSBhdCBob21lP1wiIGE9XCJZZXMsIHBhcmVudHMgYXJlIGluc3RydWN0ZWQgb24gZXhlcmNpc2VzIHRoYXQgY2FuIGFsc28gYmUgcGVyZm9ybWVkIGF0IGhvbWUuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IG9mdGVuIGRvZXMgdGhlIHRoZXJhcHkgdGFrZSBwbGFjZT9cIiBhPVwiVGhlcmFweSB1c3VhbGx5IG9jY3VycyBvbmNlIGEgd2VlayBvciBldmVyeSB0d28gd2Vla3MuIFRoYW5rcyB0byBpbXByb3ZlZCBtZWRpY2F0aW9uLCBjaGlsZHJlbiBhcmUgbm93IGJldHRlciBvZmYuIFRoZSB0aGVyYXB5IGhhcyBldm9sdmVkIHNpZ25pZmljYW50bHksIG1ha2luZyBpdCBlYXNpZXIgdG8gY291Z2ggdXAgbXVjdXMgYW5kIGltcHJvdmluZyBsaWZlIGV4cGVjdGFuY3kuIEV4ZXJjaXNlIHNob3VsZCBiZSBlbmpveWFibGUgYW5kIGEgcGFydCBvZiBkYWlseSBsaWZlIGZyb20gdGhlIGFnZSBvZiA4IG9yIDkuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCB3b3VsZCBoYXBwZW4gaWYgbm8gcGh5c2lvdGhlcmFweSB3YXMgcGVyZm9ybWVkP1wiIGE9XCJJdFx1MjAxOXMgZGlmZmljdWx0IHRvIHByZWRpY3QsIGJ1dCB3aXRob3V0IHRoZXJhcHksIGNoaWxkcmVuIG9mdGVuIGJlY29tZSBtb3JlIG11Y291c3ksIGxlYWRpbmcgdG8gd29yc2VuZWQgdmVudGlsYXRpb24uIFNwZWNpZmljIHRoZXJhcHkgaXMgY3J1Y2lhbCwgZXNwZWNpYWxseSBkdXJpbmcgaW5mZWN0aW9ucy5cIi8+XG4gICAgPFFhQm94IHE9XCJIb3cgZG8geW91IG1lYXN1cmUgc3VjY2VzcyAoaW4gdGVybXMgb2YgbHVuZyBmdW5jdGlvbiB0ZXN0LCBleGVyY2lzZSwgZXRjLik/XCIgYT1cIlN1Y2Nlc3MgaXMgbWVhc3VyZWQgc3ViamVjdGl2ZWx5IGJ5IGxpc3RlbmluZyB0byBicmVhdGhpbmcgYW5kIG9ic2VydmluZyBza2luIGNvbG9yLiBBIHdlbGwtdmVudGlsYXRlZCBsdW5nIHNob3dzIGEgJ2Z1bGwgYmFycmVsJyBhcHBlYXJhbmNlLCB3aGlsZSB3aGVlemluZyBpbmRpY2F0ZXMgcG9vciB2ZW50aWxhdGlvbi4gSW4gY2xpbmljcywgbHVuZyBmdW5jdGlvbiB0ZXN0cywgQ08yIG1lYXN1cmVtZW50cywgYW5kICdmaW5nZXIgY2xpcCcgdGVzdHMgYXJlIHVzZWQsIHRob3VnaCByZXN1bHRzIGNhbiBiZSBpbmZsdWVuY2VkIGJ5IHRoZSBjaGlsZC5cIi8+XG4gICAgPFFhQm94IHE9XCJEbyB0aGUgZXhlcmNpc2VzIGJyaW5nIHJlbGllZiBvciBhcmUgdGhleSBwcmV2ZW50YXRpdmUgZm9yIGZ1cnRoZXIgY29tcGxhaW50cz9cIiBhPVwiVGhlIGV4ZXJjaXNlcyBzZXJ2ZSBib3RoIHRvIHJlbGlldmUgYWN1dGUgaW5mZWN0aW9ucyBhbmQgdG8gcHJldmVudCBmdXJ0aGVyIGlzc3Vlcy4gRmV3ZXIgbHVuZyBpbmZlY3Rpb25zIHJlZHVjZSB0aGUgbGlrZWxpaG9vZCBvZiBtdWN1cyBhZGhlc2lvbnMuXCIvPlxuICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSB0b29scyB0byBwZXJmb3JtIHRoZXJhcHk/XCIgYT1cIlllcywgZGV2aWNlcyBsaWtlIHRoZSAnZmx1dHRlcicgb3IgJ2Nvcm5ldCcgaGVscCB3aXRoIGV4aGFsYXRpb24uIFRoZXkgY3JlYXRlIHZpYnJhdGlvbnMgdGhhdCBsb29zZW4gbXVjdXMgaW4gdGhlIGx1bmdzIGFuZCBzaG91bGQgYmUgdXNlZCBieSBhbGwgY2hpbGRyZW4gd2l0aCBsdW5nIGRpc2Vhc2VzLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgY29tcGxhaW50cyBkbyBwYXRpZW50cyBicmluZyB3aXRoIHRoZW0/XCIgYT1cIlBhdGllbnRzIHR5cGljYWxseSBoYXZlIGx1bmcgcHJvYmxlbXMsIGRyeSBsdW5nIG11Y29zYSwgYW5kIHBhbmNyZWF0aWMgaXNzdWVzIGxlYWRpbmcgdG8gcG9vciBtZXRhYm9saXNtLCByZXF1aXJpbmcgZW56eW1lIHRoZXJhcHkgYmVmb3JlIG1lYWxzLiBTb21lIGNoaWxkcmVuIGV4cGVyaWVuY2UgZ3Jvd3RoIGRpc29yZGVycyBhbmQgbGVzcyBjb21tb25seSwgZXhjZXNzaXZlIHBlcnNwaXJhdGlvbi5cIi8+XG4gICAgPFFhQm94IHE9XCJBcmUgcGFuY3JlYXRpYyBjb21wbGFpbnRzIGFsc28gdHJlYXRlZCBieSBwaHlzaW90aGVyYXBpc3RzP1wiIGE9XCJQYW5jcmVhdGljIGNvbXBsYWludHMgYXJlIHJhcmVseSB0cmVhdGVkIHdpdGggcGh5c2lvdGhlcmFweSwgZXhjZXB0IGluIGNhc2VzIG9mIGluZmxhbW1hdGlvbiwgd2hlcmUgcGF0aWVudHMgbWF5IGJlIGFkbWl0dGVkIHRvIHRoZSBob3NwaXRhbC4gVGVjaG5pcXVlcyBsaWtlIG1hc3NhZ2Ugb3Iga2luZXNpb2xvZ3kgdGFwZSBjYW4gaGVscCB3aXRoIGNvbnN0aXBhdGlvbi5cIi8+XG4gICAgPFFhQm94IHE9XCJBcmUgdGhlcmUgYW55IHNwZWNpYWwgaHlnaWVuZSBndWlkZWxpbmVzIGZvciB5b3Ugd2hlbiB3b3JraW5nIHdpdGggQ0YgcGF0aWVudHM/XCIgYT1cIkh5Z2llbmUgaXMgY3J1Y2lhbCB3aGVuIHRyZWF0aW5nIENGIHBhdGllbnRzLiBXZSBzZXBhcmF0ZSBjaGlsZHJlbiB3aXRoIGFuZCB3aXRob3V0IGluZmVjdGlvbnMgKGUuZy4sIFBzZXVkb21vbmFzKSBhbmQgZW5mb3JjZSBzdHJpY3QgZGlzaW5mZWN0aW9uIHByb3RvY29scy4gT25seSBjaGlsZHJlbiB3aXRoIHNpbWlsYXIgaW5mZWN0aW9uIHN0YXR1c2VzIGFyZSB0cmVhdGVkIG9uIHRoZSBzYW1lIGRheS5cIi8+XG4gICAgPFFhQm94IHE9XCJBcmUgdGhlIHNwZWNpZmljIGV4ZXJjaXNlcyBjdXN0b21pemVkPyBBbmQgaWYgc28sIGhvdyBkbyB5b3Uga25vdyB3aGljaCB0aGVyYXB5IGlzIHRoZSByaWdodCBvbmUgZm9yIHdoaWNoIHBhdGllbnQ/XCIgYT1cIkV4ZXJjaXNlcyBhcmUgdGFpbG9yZWQgdG8gZWFjaCBwYXRpZW50J3Mgc2l0dWF0aW9uLCBmb2N1c2luZyBvbiBtdWN1cyByZW1vdmFsIGFuZCBsdW5nIHZlbnRpbGF0aW9uLiBFYWNoIHRoZXJhcGlzdCBtYXkgaGF2ZSB0aGVpciBvd24gcHJlZmVycmVkIGV4ZXJjaXNlcyBhbmQgdGVjaG5pcXVlcy5cIi8+XG4gICAgPFFhQm94IHE9XCJEbyBwYXRpZW50cyBhbHdheXMgZ28gdG8gdGhlIHNhbWUgcGh5c2lvdGhlcmFwaXN0P1wiIGE9XCJZZXMsIGlmIHRoZXJhcHkgaXMgZWZmZWN0aXZlLCBwYXRpZW50cyB0ZW5kIHRvIHJlbWFpbiB3aXRoIHRoZSBzYW1lIHBoeXNpb3RoZXJhcGlzdC5cIi8+XG4gICAgPFFhQm94IHE9XCJIb3cgbWFueSBwaHlzaW90aGVyYXBpc3RzIG9mZmVyIG11Y28tdGhlcmFweT9cIiBhPVwiVGhlIGV4YWN0IG51bWJlciBpcyB1bmtub3duLCBidXQgc2V2ZXJhbCBjaGlsZCB0aGVyYXBpc3RzIGluIHRoZSByZWdpb24gcHJvdmlkZSBDRiB0aGVyYXB5LlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBhcmUgdGhlIHJlbGF0aXZlcyBlZHVjYXRlZD9cIiBhPVwiRWR1Y2F0aW9uIG9mdGVuIGJlZ2lucyBpbiB0aGUgbWF0ZXJuaXR5IHdhcmQgd2l0aCBhIHN3ZWF0IHRlc3QuIEluIEdcdTAwRkN0ZXJzbG9oLCBhbGwgY2hpbGRyZW4gYXJlIHJlZmVycmVkIHRvIEJldGhlbCBmb3IgaW1tZWRpYXRlIENGIGNhcmUuIFBhcmVudHMgb2Z0ZW4gZXhwZXJpZW5jZSB0cmF1bWEgYXMgY2hpbGRyZW4gY2FuIGJlIHNldmVyZWx5IGlsbCBkZXNwaXRlIGFwcGVhcmluZyBoZWFsdGh5LlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHRoZSBsaW1pdGF0aW9ucyBvZiBpbmRpdmlkdWFsIG1lZGljaW5lP1wiIGE9XCJEcnVnIGVmZmVjdGl2ZW5lc3MgY2FuIHZhcnksIGFuZCBzb21lIGFyZSBvbmx5IGFwcHJvdmVkIGZyb20gYSBjZXJ0YWluIGFnZS4gSW1wcm92ZWQgbWVkaWNhdGlvbnMgY2FuIHNpZ25pZmljYW50bHkgZW5oYW5jZSBxdWFsaXR5IG9mIGxpZmUgYW5kIGxpZmUgZXhwZWN0YW5jeS5cIi8+XG4gICAgPC8+XG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJEci5cIixcbiAgICB2b3JuYW1lOiBcIk1pY2hhZWxhXCIsXG4gICAgbmFjaG5uYW1lOiBcIkJpZW5lcnRcIixcbiAgICBqb2I6IFwiIFNjaWVudGlmaWMgU2FsZXMgUmVwcmVzZW50YXRpdmUgZm9yIENlbGwgQ3VsdHVyZSBQcm9kdWN0c1wiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlN0ZW1jZWxsXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snc3RlbWNlbGwnXSxcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcbiAgICBoZWFkaW5nOiBcIkxvbmdzdGFuZGluZyBTdXBwb3J0IGZyb20gU3RlbWNlbGwgRXhwZXJ0IGluIENlbGwgQ3VsdHVyZSBNZWRpYSBhbmQgUHJpbWFyeSBDZWxsIEN1bHRpdmF0aW9uXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWljaGFlbGFcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlOiBcInhcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiT3VyIHByaW1hcnkgZ29hbCBpbiByZWFjaGluZyBvdXQgdG8gaGVyIHdhcyB0byBnYWluIGluc2lnaHRzIGludG8gb3B0aW1pemluZyBjZWxsIGN1bHR1cmUgbWVkaWEsIGV4cGxvcmUgcG90ZW50aWFsIHNwb25zb3JzaGlwIG9wcG9ydHVuaXRpZXMgZm9yIG91ciBwcm9qZWN0LCBhbmQgc2VlayBleHBlcnQgYWR2aWNlIG9uIGhhbmRsaW5nIHByaW1hcnkgY2VsbHMgaW4gdGhlIGxhYi5cIixcbiAgICBpbnNpZ2h0czogXCJUaHJvdWdob3V0IG91ciBtdWx0aXBsZSBkaXNjdXNzaW9ucywgc2hlIG9mZmVyZWQgZGV0YWlsZWQgYWR2aWNlIG9uIHNlbGVjdGluZyBhbmQgb3B0aW1pemluZyBjZWxsIGN1bHR1cmUgbWVkaWEgZm9yIG91ciBzcGVjaWZpYyBuZWVkcywgd2hpbGUgYWxzbyBjb25uZWN0aW5nIHVzIHdpdGggb3Bwb3J0dW5pdGllcyBmb3Igc3BvbnNvcnNoaXAuIExhdGVyIGluIHRoZSBwcm9qZWN0LCBzaGUgcHJvdmlkZWQgdGVjaG5pY2FsIGd1aWRhbmNlIG9uIHRoZSBjdWx0aXZhdGlvbiBhbmQgaGFuZGxpbmcgb2YgcHJpbWFyeSBjZWxscywgZW5zdXJpbmcgdGhhdCB3ZSBmb2xsb3dlZCBiZXN0IHByYWN0aWNlcyBmb3IgY2VsbCBjdWx0dXJlLlwiLFxuICAgIGltcGxlbWVudGF0aW9uOiBcIkJhc2VkIG9uIGhlciBmZWVkYmFjaywgd2UgcmVmaW5lZCBvdXIgYXBwcm9hY2ggdG8gY2VsbCBjdWx0dXJlIG1lZGlhLCBlbmhhbmNpbmcgb3VyIGV4cGVyaW1lbnRhbCB3b3JrZmxvd3MuSGVyIHRlY2huaWNhbCBzdXBwb3J0LCBhcyB3ZWxsIGFzIHRoZSBzdXBwb3J0IG9mIEp1bGlhIFdhdHNvbiBoZWxwZWQgdXMgdG8gZXN0YWJsaXNoIG91ciBleHBlcmltZW50cyBpbiBjZWxsY3VsdHVyZS4gQWRkaXRpb25hbGx5LCBoZXIgYWR2aWNlIHdhcyBjcml0aWNhbCBkdXJpbmcgdGhlIHRyYW5zaXRpb24gdG8gcHJpbWFyeSBjZWxsIGN1bHR1cmUsIGhlbHBpbmcgdXMgc2VjdXJlIHRoZSBuZWNlc3NhcnkgcmVzb3VyY2VzIGFuZCBleHBlcnRpc2UgZm9yIG91ciBleHBlcmltZW50cy5cIixcbiAgICBzdW1tYXJ5OiBcIldlIGhhdmUgaGFkIHRoZSBwcml2aWxlZ2Ugb2YgY29sbGFib3JhdGluZyB3aXRoIGEgZGVkaWNhdGVkIGV4cGVydCBmcm9tIFN0ZW1jZWxsIFRlY2hub2xvZ2llcywgd2hvIGhhcyBjb25zaXN0ZW50bHkgc3VwcG9ydGVkIGlHRU0gQmllbGVmZWxkLiBTaGUgcHJvdmlkZWQgdmFsdWFibGUgZ3VpZGFuY2Ugb24gY2VsbCBjdWx0dXJlIG1lZGlhLCBzcG9uc29yc2hpcCBvcHBvcnR1bml0aWVzLCBhbmQgbGF0ZXIsIHByYWN0aWNhbCBhZHZpY2UgZm9yIGN1bHRpdmF0aW5nIHByaW1hcnkgY2VsbHMuIEhlciBjb250cmlidXRpb25zIGhhdmUgYmVlbiBpbnN0cnVtZW50YWwgaW4gYWR2YW5jaW5nIG91ciBwcm9qZWN0LlwiLFxuICAgIG1vbnRoczogXCJzZXZlcmFsIHRpbWVzXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2RhbmllbGEud2VicFwiLFxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJEb2N1bWVudGluZyBwcm9ncmVzc1wiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwbGFjZWhvbGRlciddLFxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcbiAgICBoZWFkaW5nOiBcIlRyYWNraW5nIHByb2dyZXNzIGluIGV4cGVydCBzZWFyY2ggYW5kIGlkZWEgZGV2ZWxvcG1lbnRcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJwcm9ncmVzc1wiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJcIixcbiAgICBpbnNpZ2h0czogXCJcIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBcIlwiLFxuICAgIG1vbnRoczogXCJtYXlcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJNdWtvTW92ZVwiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtdWtvbW92ZSddLFxuICAgIHRhZzogXCJPdXRyZWFjaFwiLFxuICAgIGhlYWRpbmc6IFwiTW92aW5nIHRvZ2V0aGVyIGZvciBoZWFsdGggYW5kIGhvcGUsIG91ciBwYXJ0aWNpcGF0aW9uIGluIENGIGF3YXJuZXNzIG1vbnRoXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibXVrb21vdmVocFwiLFxuICAgIHR5cGU6IFwibWV0YVwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU3VzYXQsIFRlYW1tZW1iZXJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F0aGxlZW5cIixcbiAgICBxdW90ZTogXCJJdCB3YXMgYW1hemluZyB0byBzZWUgaG93IG1vdmVtZW50IGNhbiBicmluZyBwZW9wbGUgdG9nZXRoZXIuIEkgaGFkIGEgZ3JlYXQgdGltZS5cIixcbiAgICBzdW1tYXJ5OiBbPHA+TVVLT21vdmVbTElOSyB1bnRlbiBtdWtvbW92ZV0gaXMgYSBzcG9ydHMgaW5pdGlhdGl2ZSBieSBNdWtvdmlzemlkb3NlIGUuVi4sIHRoZSBHZXJtYW4gQ3lzdGljIEZpYnJvc2lzIEFzc29jaWF0aW9uLCB0byByYWlzZSBhd2FyZW5lc3MgYW5kIGZ1bmRzIGZvciBjeXN0aWMgZmlicm9zaXMuIFRlYW0gaUdFTSBCaWVsZWZlbGQgcGFydGljaXBhdGVkIGZyb20gTWF5IDh0aCB0byBNYXkgMTJ0aCwgcHJvbW90aW5nIHRoZSBldmVudCBhdCB0aGVpciB1bml2ZXJzaXR5IGFuZCBjaXR5LCBlbmNvdXJhZ2luZyBvdGhlcnMgdG8gam9pbiBhbmQgY29sbGVjdCBzcG9ydCBob3Vycy4gVGhleSBvcmdhbml6ZWQgYSB0ZWFtIGV2ZW50IGF0IHRoZWlyIHVuaXZlcnNpdHksIGludm9sdmluZyBzcG9ydHMgZ2FtZXMgdG8gcHJvbW90ZSBjb21tdW5pdHkgZW5nYWdlbWVudC4gVGhlaXIgZWZmb3J0cyBoZWxwZWQgc3VycGFzcyB0aGVpciBnb2FsIG9mIDI0MCBob3Vycywgd2l0aCB0aGUgdGVhbSBhY2hpZXZpbmcgMzU4IHNwb3J0IGhvdXJzLCB3aGlsZSB0aGUgZW50aXJlIGV2ZW50IGdhdGhlcmVkIG92ZXIgMzYsMDAwIHNwb3J0IGhvdXJzLiBUaGUgaW5pdGlhdGl2ZSBzdWNjZXNzZnVsbHkgcmFpc2VkIGF3YXJlbmVzcyBhYm91dCBjeXN0aWMgZmlicm9zaXMgYW5kIHByb21vdGVkIHBoeXNpY2FsIGFjdGl2aXR5IGFzIGEgbWVhbnMgb2YgY29tbXVuaXR5IGJ1aWxkaW5nLjwvcD5dLFxuICAgIG1vbnRoczogXCJNYXlcIlxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiTS5TYy5cIixcbiAgICB2b3JuYW1lOiBcIkphbi1QaGlsbGlwcFwiLFxuICAgIG5hY2hubmFtZTogXCJHZXJoYXJkc1wiLFxuICAgIGpvYjogXCJJbnRlcm5cIixcbiAgICBhZmZpbGlhdGlvbjogXCIgSGFydmFyZC8gQm9zdG9uIENoaWxkcmVucyBIb3NwaXRhbFwiLFxuICAgIHBpY3R1cmV1cmw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLWpwZ2VyaGFyZHMtcG90cmF0cy53ZWJwXCIsXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJEaXNjdXNzaW9uIG9uIG9wdGltaXppbmcgb3VyIHBlZ1JOQSBEZXNpZ24gdG8gaW1wcm92ZSBwcmVjaXNpb24gaW4gcHJpbWUgZWRpdGluZ1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcIkpQcGVnUk5BXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIkxlbmdlciwgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJNYWx0ZVwiLFxuICAgIHF1b3RlOiBcIlRoZSBpbnRlcnZpZXcgcHJvdmVkIHRvIGJlIGludmFsdWFibGUgaW4gZ2FpbmluZyBhbiBpbml0aWFsIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHByaW5jaXBsZXMgb2YgcGVnUk5BIGRlc2lnbiBhbmQgb3B0aW1pc2F0aW9uLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGNvbnRleHQgb2Ygc2lsZW50IGVkaXRzLlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJUaGUgYWltIG9mIHRoZSBjb250YWN0IHdhcyB0byBlbmdhZ2UgaW4gYSBkaXNjdXNzaW9uIGFib3V0IHByaW1lIGVkaXRpbmcgYW5kIHBlZ1JOQXMsIGFzIHRoZSBKYW4tUGhpbGxpcCBHZXJoYXJkcyBoYWQgdXNlZCB0aGVzZSB0ZWNobm9sb2dpZXMgaW4gaGlzIGludGVybnNoaXAgYXQgdGhlIEJvc3RvbiBDaGlsZHJlbnMgSG9zcGl0YWwuIFdlIHNvdWdodCB0byBleGNoYW5nZSBpZGVhcywgZ2F0aGVyIGluc2lnaHRzLCBhbmQgZXhwbG9yZSBwb3RlbnRpYWwgaW1wcm92ZW1lbnRzIG9yIHN0cmF0ZWdpZXMgZm9yIG91ciBwcm9qZWN0LCBsZXZlcmFnaW5nIGhpcyBleHBlcmllbmNlIHdpdGggcHJpbWUgZWRpdGluZyB0b29scy4gSGlzIHByYWN0aWNhbCBrbm93bGVkZ2UgaW4gdGhpcyBmaWVsZCB3YXMgdmVyeSB2YWx1YWJsZSBmb3IgcmVmaW5pbmcgb3VyIGFwcHJvYWNoIGFuZCBlbnN1cmluZyB3ZSB3ZXJlIGFsaWduZWQgd2l0aCB0aGUgbGF0ZXN0IGFkdmFuY2VtZW50cyBhbmQgbWV0aG9kb2xvZ2llcyBpbiBwcmltZSBlZGl0aW5nLiBcIixcbiAgICBpbnNpZ2h0czogXCJEdXJpbmcgb3VyIGRpc2N1c3Npb24gd2UgZ2FpbmVkIHZhbHVhYmxlIGluc2lnaHRzIHRoYXQgaGFkIGEgc2lnbmlmaWNhbnQgaW1wYWN0IG9uIG91ciBwcm9qZWN0LiBPbmUgb2YgdGhlIG1vc3QgaW1wb3J0YW50IGZpbmRpbmdzIHdhcyB0aGUgZWZmZWN0aXZlbmVzcyBvZiBzaWxlbnQgZWRpdHMsIHdoaWNoIHdpbGwgZW5hYmxlIHVzIHRvIG1ha2Ugb3VyIFByaW1lR3VpZGUgc2FmZXIuIFNpbGVudCBlZGl0cyBjaGFuZ2UgdGhlIHNlcXVlbmNlIG9mIGJhc2VzIGluIHRoZSBETkEgaW4gc3VjaCBhIHdheSB0aGF0IHRoZSByZXN1bHRpbmcgcHJvdGVpbiByZW1haW5zIHVuY2hhbmdlZCwgYmVjYXVzZSB0aGUgZ2VuZXRpYyBjb2RlIGlzIHJlZHVuZGFudC4gVGhpcyBtZWFucyB0aGF0IGRpZmZlcmVudCBjb2RvbnMgY2FuIGNvZGUgZm9yIHRoZSBzYW1lIGFtaW5vIGFjaWQuIEJ5IG1ha2luZyBzaWxlbnQgZWRpdHMgaW4gYWRkaXRpb24gdG8gY29ycmVjdGluZyB0aGUgQ0ZUUiBnZW5lLCB3ZSBjYW4gcHJldmVudCB0aGUgcGVnUk5BIGZyb20gcmViaW5kaW5nLiAgV2UgaGF2ZSBhbHNvIGxlYXJuZWQgdGhhdCB0aGUgbGVuZ3RoIG9mIHRoZSBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIHBsYXlzIGEgY3J1Y2lhbCByb2xlIGluIGRldGVybWluaW5nIG9wdGltYWwgcmVzdWx0cyBhbmQgdGhhdCBpdCBpcyByZWNvbW1lbmRlZCB0byBrZWVwIHRoZSBQQlMgdGVtcGVyYXR1cmUgY2xvc2UgdG8gMzdcdTAwQjBDLiBTcGVjaWZpY2FsbHksIFBCUyBsZW5ndGhzIG9mIDE3bnQgKDM4LjNcdTAwQjBDKSBhbmQgMTZudCAoMzYuNFx1MDBCMEMpIHdlcmUgZm91bmQgdG8gYmUgaWRlYWwgb3B0aW9ucy4gRm9yIG91ciBwbGFubmVkIHNldCBvZiAxMiBzYW1wbGVzLCBpdCB3YXMgcmVjb21tZW5kZWQgdG8gdXNlIHRocmVlIGRpZmZlcmVudCBQQlMgbGVuZ3RocyAoZGlmZmVyaW5nIGJ5ICsvLSAxbnQgZnJvbSB0aGF0IGNsb3NlIHRvIDM3XHUwMEIwQykgaW4gY29tYmluYXRpb24gd2l0aCBmb3VyIHJldmVyc2UgdHJhbnNjcmlwdGFzZSB0ZW1wbGF0ZSAoUlRUcykgdG8gYWNoaWV2ZSB0aGUgYmVzdCByZXN1bHQuIEFub3RoZXIgaW1wb3J0YW50IGZpbmRpbmcgd2FzIHRoZSB1c2Ugb2Ygbm9uLWFubm90YXRlZCByZWdpb25zIHdpdGggb3ZlcmhhbmdzIGZvciBjbG9uaW5nLCB3aGljaCBjb3VsZCBnaXZlIGJldHRlciByZXN1bHRzIGluIG91ciBleHBlcmltZW50cy4gSG93ZXZlciwgd2UgYWxzbyBlbmNvdW50ZXJlZCBjb25jZXJucyB0aGF0IGNpcmNSTkEsIGEgY292YWxlbnRseSBjbG9zZWQgY2lyY3VsYXIgUk5BIG1vbGVjdWxlLCBtaWdodCBiZSBzdGVyaWNhbGx5IGhpbmRlcmVkIGJ5IENhczksIHdoaWNoIHdlIG5lZWQgdG8gaW52ZXN0aWdhdGUgZnVydGhlci4gV2hlbiBkaXNjdXNzaW5nIGNsb25pbmcgb3ZlcmhhbmdzLCB3ZSBsZWFybmVkIHRoYXQgYSBiYXNlLXBhaXIgbGVuZ3RoIGNsb3NlIHRvIDYwXHUwMEIwQyBpcyBvcHRpbWFsLiBIb3dldmVyLCB0aGUgdXNlIG9mIGEgMTVudCBQQlMgd2FzIG5vdCByZWNvbW1lbmRlZCBhcyBpdCBoYXMgYSBsb3dlciB0ZW1wZXJhdHVyZSByYW5nZSB3aGljaCBjb3VsZCBhZmZlY3QgcGVyZm9ybWFuY2UuIEFsdGhvdWdoIHdlIHN0aWxsIG5lZWQgdG8gY29uZmlybSB0aGUgb2xpZ29udWNsZW90aWRlIGRlbGl2ZXJ5IHRpbWUsIHRoZXNlIGZpbmRpbmdzIHdpbGwgaGVscCB1cyB0byByZWZpbmUgb3VyIGNsb25pbmcgc3RyYXRlZ3ksIG9wdGltaXplIFBCUyBzZWxlY3Rpb24gYW5kIGltcHJvdmUgb3VyIG92ZXJhbGwgYXBwcm9hY2ggdG8gcHJpbWVyIGVkaXRpbmcsIGVzcGVjaWFsbHkgaW4gdGVybXMgb2YgdGhlIHBlZ1JOQSBkZXNpZ24uXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiV2UgaW5jb3Jwb3JhdGVkIHRoZSBsZXNzb25zIGxlYXJuZWQgZnJvbSBvdXIgZGlzY3Vzc2lvbnMgb24gcHJpbWUgZWRpdGluZyBhbmQgc2lsZW50IGVkaXRpbmcgZGlyZWN0bHkgaW50byBvdXIgcHJvamVjdCBieSByZWZpbmluZyBvdXIgYXBwcm9hY2ggdG8gZ2VuZSBlZGl0aW5nLiBCYXNlZCBvbiBmZWVkYmFjayBhYm91dCB0aGUgb3B0aW1hbCBsZW5ndGggb2YgcHJpbWVyIGJpbmRpbmcgc2VxdWVuY2VzIChQQlMpIGFuZCBSVFRzLCB3ZSBhZGp1c3RlZCB0aGUgZGVzaWduIG9mIG91ciBwZWdSTkFzIHRvIGVuc3VyZSBncmVhdGVyIHByZWNpc2lvbiBhbmQgZWZmaWNpZW5jeSBpbiBvdXIgZXhwZXJpbWVudHMuIEluIHBhcnRpY3VsYXIsIHdlIGxlYXJuZWQgdGhhdCB1c2luZyBQQlMgbGVuZ3RocyBjbG9zZSB0byAzN1x1MDBCMEMgbWVsdGluZyB0ZW1wZXJhdHVyZXMgKGUuZy4gMTYtMTcgbnVjbGVvdGlkZXMpIGluY3JlYXNlZCBzdGFiaWxpdHksIHdoaWNoIGxlZCB1cyB0byBmaW5lLXR1bmUgdGhlc2Ugc2VxdWVuY2VzIGZvciBpbXByb3ZlZCBlZGl0aW5nIHJlc3VsdHMuIFRoZSBjb25jZXB0IG9mIHNpbGVudCBlZGl0aW5nIGJlY2FtZSBhbiBpbnRlZ3JhbCBwYXJ0IG9mIG91ciBzYWZldHkgc3RyYXRlZ3lbTGluayBCaW9zYWZldHldLCBhbGxvd2luZyB1cyB0byBtYWtlIGNoYW5nZXMgdG8gdGhlIEROQSBtb3JlIHByZWNpc2UuIFdlIGFsc28gcmV2aXNlZCBvdXIgY2xvbmluZyBzdHJhdGVnaWVzIGJ5IGNvbnNpZGVyaW5nIHRoZSBhcHByb3ByaWF0ZSBvdmVyaGFuZyBsZW5ndGgsIHRhcmdldGluZyBhIGJhc2UgcGFpciBsZW5ndGggbmVhciB0aGUgbWVsdGluZyB0ZW1wZXJhdHVyZSBvZiA2MFx1MDBCMEMgdG8gaW1wcm92ZSBjbG9uaW5nIGVmZmljaWVuY3kuIFdlIGFsc28gcmVhc3Nlc3NlZCB0aGUgcHJhY3RpY2FsaXR5IG9mIG9yZGVyaW5nIHNob3J0ZXIgUEJTIHNlcXVlbmNlcywgY29uY2x1ZGluZyB0aGF0IGxlbmd0aHMgc2hvcnRlciB0aGFuIDE1IG50IHdlcmUgbGVzcyBhZHZhbnRhZ2VvdXMgZHVlIHRvIHJlZHVjZWQgZWZmaWNpZW5jeS4gQnkgaW50ZWdyYXRpbmcgdGhlc2UgZmluZGluZ3MsIHdlIG9wdGltaXNlZCBvdXIgZXhwZXJpbWVudGFsIHdvcmtmbG93IGFuZCBtYWRlIGluZm9ybWVkIGRlY2lzaW9ucyBhYm91dCB0aGUgdG9vbHMgYW5kIG1ldGhvZHMgZm9yIG91ciBwcmltZSBlZGl0aW5nIGV4cGVyaW1lbnRzLiBcIixcbiAgICBzdW1tYXJ5OiBcIldlIGVuZ2FnZWQgaW4gYSB2YWx1YWJsZSBkaXNjdXNzaW9uIHdpdGggSmFuLVBoaWxsaXAgR2VyaGFyZHMgcmVnYXJkaW5nIHByaW1lIGVkaXRpbmcgYW5kIHBlZ1JOQXMsIGxldmVyYWdpbmcgaGlzIGludGVybnNoaXAgZXhwZXJpZW5jZSB3aXRoIHRoZXNlIHRlY2hub2xvZ2llcy4gS2V5IGluc2lnaHRzIGluY2x1ZGVkIHRoZSBlZmZlY3RpdmVuZXNzIG9mIHNpbGVudCBlZGl0cywgd2hpY2ggY2FuIGVuaGFuY2UgdGhlIHNhZmV0eSBvZiBvdXIgUHJpbWVHdWlkZSBieSBtb2RpZnlpbmcgRE5BIHNlcXVlbmNlcyB3aXRob3V0IGFsdGVyaW5nIHRoZSByZXN1bHRhbnQgcHJvdGVpbiwgdGhlcmVieSBwcmV2ZW50aW5nIHBlZ1JOQSByZWJpbmRpbmcuIFdlIGFsc28gbGVhcm5lZCB0aGUgaW1wb3J0YW5jZSBvZiBvcHRpbWl6aW5nIHRoZSBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIGxlbmd0aCB0byBhY2hpZXZlIGlkZWFsIHRlbXBlcmF0dXJlcyBjbG9zZSB0byAzN1x1MDBCMEMsIHJlY29tbWVuZGluZyBsZW5ndGhzIG9mIDE2LTE3IG51Y2xlb3RpZGVzLiBBZGRpdGlvbmFsbHksIHdlIGRpc2NvdmVyZWQgdGhlIHBvdGVudGlhbCBiZW5lZml0cyBvZiB1c2luZyBub24tYW5ub3RhdGVkIHJlZ2lvbnMgd2l0aCBvdmVyaGFuZ3MgZm9yIGNsb25pbmcsIHdoaWxlIGFsc28gcmVjb2duaXppbmcgY29uY2VybnMgYWJvdXQgY2lyY1JOQSBzdGVyaWMgaGluZHJhbmNlIGJ5IENhczkuIFRoZXNlIGluc2lnaHRzIGRpcmVjdGx5IGluZm9ybWVkIG91ciBwcm9qZWN0LCBhbGxvd2luZyB1cyB0byByZWZpbmUgb3VyIHBlZ1JOQSBkZXNpZ24gYW5kIGNsb25pbmcgc3RyYXRlZ2llcywgdWx0aW1hdGVseSBlbmhhbmNpbmcgdGhlIHByZWNpc2lvbiBhbmQgZWZmaWNpZW5jeSBvZiBvdXIgZ2VuZSBlZGl0aW5nIGFwcHJvYWNoLlwiLFxuICAgIG1vbnRoczogXCJNYXlcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJNYXR0aWpzXCIsXG4gICAgbmFjaG5uYW1lOiBcIkJ1bGNhZW5cIixcbiAgICBqb2I6IFwiUGhEIFJlc2VhcmNoZXIgYXQgTGFib3JhdG9yeSBmb3IgTW9sZWN1bGFyIFZpcm9sb2d5ICYgR2VuZSBUaGVyYXB5XCIsXG4gICAgYWZmaWxpYXRpb246IFwiS1UgTGV1dmVuXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snbWF0dGlqcyddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiRGlzY3Vzc2lvbiB3aXRoIGEgUHJpbWUgRWRpdGluZyBFeHBlcnQgb24gU2ltaWxhciBBcHByb2FjaGVzIGZvciBEaWZmZXJlbnQgTXV0YXRpb25zXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWF0dGlqc2ludlwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImVuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJCdWxjYWVuLCBDRiBSZXNlYXJjaCBFeHBlcnQgYW5kIEdlbmUgVGhlcmFweSBTcGVjaWFsaXN0XCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIk1hdHRpanNcIixcbiAgICBxdW90ZTogXCJbXHUyMDI2XSBQcmltZSBFZGl0aW5nIHN5c3RlbSBpcyBtb3JlIGNvbXBsZXggdGhhbiB0aGUgY2Fub25pY2FsIENSSVNQUiBzeXN0ZW1zLCB3aXRoIG1vcmUgdmFyaWFibGVzIHRoYXQgY2FuIGluZmx1ZW5jZSBzdWNjZXNzIG9yIGZhaWx1cmUuXCIsXG4gICAgYWltb2Zjb250YWN0OiBbPHA+U2hvcnRseSBhZnRlciB3ZSBkZWNpZGVkIHRvIHVzZSBwcmltZSBlZGl0aW5nIGFzIHRoZSBnZW5lIGVkaXRpbmcgbWV0aG9kIGZvciBvdXIgQ0YgdGhlcmFweSwgTWF0dGlqcyBCdWxjYWVuIGZyb20gdGhlIExhYm9yYXRvcnkgb2YgTW9sZWN1bGFyIFZpcm9sb2d5IGFuZCBHZW5lIFRoZXJhcHkgYXQgS1UgTGV1dmVuIGFuZCBoaXMgY29sbGVhZ3VlcyBwdWJsaXNoZWQgYSBwYXBlciBkaXJlY3RseSByZWxhdGVkIHRvIG91ciByZXNlYXJjaCA8VGFiU2Nyb2xsTGluayB0YWI9XCJtYXR0aWpzaW52XCIgc2Nyb2xsSWQ9XCJkZXNjLTFcIiBudW09XCIxXCIgLz4uIEluIGNvbnRyYXN0IHRvIG91ciBhcHByb2FjaCwgQnVsY2FlbiBldCBhbC4gMjAyNCB0YXJnZXRlZCBvdGhlciwgbGVzcyBjb21tb24gYnV0IGRydWctcmVmcmFjdG9yeSBDRlRSLXNwZWNpZmljIG11dGF0aW9ucyAoTDIyN1ItIGFuZCBOMTMwM0spLlx1MjAyRiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlRoZSBpbnNpZ2h0cyBnYWluZWQgZnJvbSB0aGlzIGludGVydmlldyBwcm92ZWQgZXh0cmVtZWx5IHZhbHVhYmxlIGluIHNoYXBpbmcgb3VyIHN1YnNlcXVlbnQgbWVjaGFuaXN0aWMgYXBwcm9hY2hlcy4gQXQgdGhhdCBwb2ludCBpbiB0aGUgcHJvamVjdCB3ZSB3ZXJlIHN0YXJ0aW5nIHRvIGRlc2lnbiB0aGUgY29tcG9uZW50cyBvZiBvdXIgcHJpbWUgZWRpdG9yLCBidXQgd2Ugd2VyZSBsYWNraW5nIGEgYnJvYWRlciBvdmVydmlldyBvdmVyIHRoZSBzdGF0ZSBvZiB0aGUgZmllbGQuIE1hdHRpanMgZ2F2ZSB1cyB0aGlzIGluc2lnaHQsIG1lbnRpb25pbmcgdGVjaG5pcXVlcyBsaWtlIFBFM2Igc3lzdGVtcywgZHNnUk5BcyBhbmQgYSB0YWxrIGdpdmVuIGJ5IDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwibGl1XCIgdGV4dD1cIkRhdmlkIExpdVwiIC8+LCB0aGUgcHJpbmNpcGFsIFxuICAgICAgaW52ZXN0aWdhdG9yIGJlaGluZCBwcmltZSBlZGl0aW5nIHRoYXQgaGVscGVkIHVzIHRvIGNvbnNpZGVyIGZ1cnRoZXIgbm92ZWwgYWR2YW5jZW1lbnRzIGluIGluIFByaW1lIEVkaXRpbmcgYW5kIGluY2x1ZGUgdGhlbSBpbnRvIG91ciBwcm9qZWN0LiBIZSBkaXNjdXNzZWQgd2l0aCB1cyB0aGUgZGlmZmljdWx0aWVzIHRoYXQgbWlnaHQgYXdhaXQgdXMgd2hlbiB0YXJnZXRpbmcgdGhlIENGVFIgRjUwOGRlbCBkZWxldGlvbiBhbmQgbWVudGlvbmVkIHRoYXQgaW5zZXJ0aW9ucyBvZiBhbGwgdGhlIGVkaXRzIHBvc3NpYmxlIHdpdGggcHJpbWUgZWRpdGluZyBhcmUgdGhlIGhhcmRlc3QgdG8gbWFrZSwgdGhlIHJlY29nbml0aW9uIG9mIGVkaXRzIGluIHRoZSByZWdpb24gbWlnaHQgYXR0cmFjdCBtaXNtYXRjaCByZXBhaXIgc3lzdGVtcyBhbmQgdGhlIGNocm9tYXRpbiBvcmdhbml6YXRpb24gbWlnaHQgbmVnYXRpdmVseSBpbXBhY3QgcHJpbWUgZWRpdGluZyBlZmZpY2llbmN5LiBBbHNvLCB3ZSBsZWFybmVkIGEgXG4gICAgbG90IGFib3V0IGhvdyB0byBkZXNpZ24gb3VyIHBlZ1JOQXMsIHdpdGggaW1wb3J0YW50IGlucHV0cyBiZWluZyB0aGUgM1x1MjAxOSBzdGVtIGxvb3AgbW90aWYgdHJldm9wcmVRMSB1c2VkIGJ5IE1hdHRpanMgaW4gaGlzIHB1YmxpY2F0aW9uIGFuZCB0aGUgc3VnZ2VzdGlvbiB0byB1c2UgcHJlZGljdGlvbiB0b29scyB0byBldmFsdWF0ZSBzZ1JOQSBzcGFjZXIgY3V0dGluZyBlZmZpY2llbmN5LiBXZSByZXZpZXdlZCBvdXIgYXBwcm9hY2ggb2YgdGVzdGluZyBwZWdSTkFzIHVzaW5nIHRoZSBQRUFSIHJlcG9ydGVyIHN5c3RlbSBhbmQgTWF0dGppcyByZWNvbW1lbmRlZCB0byB1c2UgSEVLIGNlbGwgbGluZXMgZm9yIHNjcmVlbmluZyBiZWNhdXNlIG9mIHRoZWlyIGVhc3kgaGFuZGxpbmcgYW5kIG5hdHVyYWxseSBpbXBhaXJlZCBtaXNtYXRjaCByZXBhaXIgc3lzdGVtLiA8L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPlRoZSBpbnB1dHMgZ2l2ZW4gYnkgTWF0dGlqcyBkaXJlY3RseSBpbXBhY3RlZCBvdXIgZGVzaWduIGNob2ljZXMgZm9yIG11bHRpcGxlIHBhcnRzIG9mIHRoZSBwcm9qZWN0LiBGb3IgdGhlIHBlZ1JOQSBkZXNpZ24sIHdlIGRlY2lkZWQgdG8gdXNlIHRoZSBzYW1lIDNcdTIwMTkgbW90aWYgYXMgTWF0dGlqcyBoYWQgdXNlZCBhbmQgYWxzbywgbGlrZSBoZSBzdWdnZXN0ZWQsIGNoZWNrZWQgb3VyIHNwYWNlciBjYW5kaWRhdGVzIGZvciBwcmVkaWN0ZWQgY2xlYXZhZ2UgZWZmaWNpZW5jeS4gQWxzbyB3ZSB1c2VkIEhFSyBjZWxscyBmb3Igc2NyZWVuaW5nIG91ciBwZWdSTkFzLiBXZSBsb29rZWQgZnVydGhlciBpbnRvIFBFIHN5c3RlbXMgdGhhdCBpbmZsdWVuY2UgY2VsbHVsYXIgbWlzbWF0Y2ggcmVwYWlyIChzdWNoIGFzIFBFNCkgYW5kIHRyaWVkIHRvIGluY2x1ZGUgdGhlc2UgaW50byBvdXIgZGVzaWduLjwvcD5dLFxuICAgIGludGVydmlldzogPD5cbiAgICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBwcmVwYXJlZCBzb21lIHF1ZXN0aW9ucyBmb3IgeW91LiBUaGUgZmlyc3QgcXVlc3Rpb24gaXM6IFlvdSBtZW50aW9uZWQgdGhhdCBpdCB3YXMgcXVpdGUgY2hhbGxlbmdpbmcgdG8gdGFyZ2V0IHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uLiBDb3VsZCB5b3UgcHJvdmlkZSBtb3JlIGRldGFpbGVkIHJlYXNvbnMgZm9yIHdoeSB0aGlzIGlzIHRoZSBjYXNlIG9yIGV4cGxhaW4gd2h5IHRoaXMgbXV0YXRpb24gaXMgcGFydGljdWxhcmx5IGRpZmZpY3VsdCB0byB0YXJnZXQgY29tcGFyZWQgdG8gb3RoZXJzP1wiIFxuICAgICAgICBhPVwiWWVzLCB0aGF0J3MgdGhlIG1pbGxpb24tZG9sbGFyIHF1ZXN0aW9uLiBGaXJzdCBvZiBhbGwsIGxldCBtZSBjbGFyaWZ5OiBvdXIgZ3JvdXAgaGFzIG5ldmVyIGRpcmVjdGx5IHdvcmtlZCBvbiB0aGF0IG11dGF0aW9uIGJlY2F1c2Ugd2UgaW1tZWRpYXRlbHkgZm9jdXNlZCBvbiB0aGUgZHJ1Zy1yZWZyYWN0b3J5IG11dGF0aW9ucywgc3VjaCBhcyBub25zZW5zZSBtdXRhdGlvbnMgd2hlcmUgdGhlIHByb3RlaW4gaXMgbm90IGZvcm1lZCwgaW5kZWwgbXV0YXRpb25zLCBvciBzZXZlcmUgbWlzc2Vuc2UgbXV0YXRpb25zIHRoYXQgZG8gbm90IHJlc3BvbmQgdG8gbW9kdWxhdG9yIHRoZXJhcGllcy4gT2YgY291cnNlLCB3ZSBrbm93IHNldmVyYWwgZ3JvdXBzIGluIHRoZSBmaWVsZCB3aG8gZWl0aGVyIHdvcmsgb24gZ2VuZSBlZGl0aW5nIG9yIGZvY3VzIG9uIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLiBXZSd2ZSBoZWFyZCBmcm9tIHNvbWUgb2YgdGhlbSB3aG8gYXR0ZW1wdGVkIHRvIHRhcmdldCB0aGUgRjUwOCBkZWx0YSBtdXRhdGlvbi4gRm9yIGV4YW1wbGUsIHNvbWUgY29sbGFib3JhdG9ycyByZWFsbHkgdHJpZWQgdG8gZGVzaWduIGRpZmZlcmVudCBndWlkZXMgYnV0IHdlcmUgdW5hYmxlIHRvIGZpbmQgYW55dGhpbmcgYWJvdmUgdGhlIGRldGVjdGlvbiBsaW1pdC4gXG4gICAgICAgIEY1MDhkZWwgaXMgcHJvYmFibHkgb25lIG9mIHRoZSBtb3N0IGxvZ2ljYWwgbXV0YXRpb25zIHRvIHRyeSB0byBjb3JyZWN0LCBub3QganVzdCBmb3IgQ0YgYnV0IGZvciB0aGUgZW50aXJlIGdlbmUtZWRpdGluZyBmaWVsZC4gSWYgeW91IGxvb2sgYXQgdGhlIGZyZXF1ZW5jaWVzIG9mIG11dGF0aW9ucyB0aGF0IGNhdXNlIGdlbmV0aWMgZGlzZWFzZXMsIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uIGlzIGJ5IGZhciB0aGUgbW9zdCBjb21tb24gZGVsZXRpb24gbXV0YXRpb24gY2F1c2luZyBhIHNldmVyZSBkaXNlYXNlLiBUaGlzIGlzIGJlY2F1c2UgQ0YsIGFsb25nIHdpdGggc2lja2xlIGNlbGwgZGlzZWFzZSwgaXMgb25lIG9mIHRoZSBtb3N0IGNvbW1vbiBkZWFkbHkgaW5oZXJpdGVkIGRpc2Vhc2VzLCBhbmQgaXQncyBvdmVycmVwcmVzZW50ZWQgd2l0aGluIENGLiBTbywgaXQgbWFrZXMgc2Vuc2UgdGhhdCB0aGV5IHdvdWxkIGhhdmUgYmVlbiB0cnlpbmcgdG8gdGFyZ2V0IGl0IGZyb20gdGhlIGJlZ2lubmluZy4gXG4gICAgICAgIEludGVyZXN0aW5nbHksIGlmIHlvdSByZWFkIHRoZSBQcmltZSBFZGl0aW5nIHBhcGVyIGJ5IEFuemFsb25lLCBGNTA4IGRlbHRhIGlzIG1lbnRpb25lZCBpbiB0aGUgaW50cm9kdWN0aW9uIGluIGNvbm5lY3Rpb24gd2l0aCBDRi4gU28sIGl0J3Mgc29tZXdoYXQgc3VycHJpc2luZyB0aGF0IGFmdGVyIGFsbCB0aGlzIHRpbWVcdTIwMTRpdCdzIGJlZW4gYWxtb3N0IGZpdmUgeWVhcnMgbm93XHUyMDE0dGhleSBoYXZlbid0IHB1Ymxpc2hlZCBvciByZWxlYXNlZCBhbnl0aGluZyBvbiBGNTA4IGRlbHRhLiBcbiAgICAgICAgSG93ZXZlciwgbGFzdCB3ZWVrZW5kLCB0aGVyZSB3YXMgYW4gb25saW5lIHNlbWluYXIgd2hlcmUgRGF2aWQgTGl1IGdhdmUgYSB0YWxrLCBhbmQgaGUgc2hvd2VkIHNvbWUgdW5wdWJsaXNoZWQgZGF0YSBpbmRpY2F0aW5nIHRoYXQgdGhleSBtYW5hZ2VkIHRvIGFjaGlldmUgcXVpdGUgZ29vZCBQcmltZSBFZGl0aW5nIGVmZmljaWVuY3kgb24gRjUwOCBkZWx0YS4gSXQncyB3b3J0aCBub3RpbmcgdGhhdCBEYXZpZCBMaXUgcmFyZWx5IHByZXNlbnRzIHVucHVibGlzaGVkIGRhdGEgdW5sZXNzIHRoZSBwdWJsaWNhdGlvbiBpcyBlaXRoZXIgYWNjZXB0ZWQgb3IgdmVyeSBjbG9zZSB0byBhY2NlcHRhbmNlLiBTbywgd2UgYWxsIGtpbmQgb2YgZXhwZWN0IHRoYXQgdGhlIHBhcGVyIHdpbGwgYmUgcHVibGlzaGVkIHNvb24sIHBlcmhhcHMgd2l0aGluIHRoZSBuZXh0IHdlZWsgb3IgYXQgbGVhc3Qgd2l0aGluIGEgbW9udGguIEZyb20gd2hhdCBJIHNhdywgaXQgYXBwZWFycyB0aGV5IGxldmVyYWdlZCBtYW55IG9mIHRoZSBhcHByb2FjaGVzIGF2YWlsYWJsZSB0b2RheSB0byBlbmhhbmNlIFByaW1lIEVkaXRpbmcuIFxuICAgICAgICBOb3csIHJlZ2FyZGluZyB5b3VyIHF1ZXN0aW9uIGFib3V0IHdoeSB0aGlzIG11dGF0aW9uIGlzIHNvIGRpZmZpY3VsdCB0byB0YXJnZXQgd2l0aCBQcmltZSBFZGl0aW5nLCBJIGNhbid0IHByb3ZpZGUgYW4gZXhhY3QgYW5zd2VyLiBIb3dldmVyLCBJIGNhbiBsaXN0IHNvbWUgcG90ZW50aWFsIGRpZmZpY3VsdGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIG11dGF0aW9uLCBhbmQgaXRcdTIwMTlzIGxpa2VseSB0aGF0IEY1MDggZGVsdGEgaXMgY2hhbGxlbmdpbmcgZm9yIHNldmVyYWwgb2YgdGhlc2UgcmVhc29ucy4gRm9yIGluc3RhbmNlLCBpdCBjb3VsZCBiZSByZWxhdGVkIHRvIHRoZSBnZW5vbWljIHJlZ2lvbiBpdHNlbGYuIFdyaXRpbmcgaW5zZXJ0aW9ucyBjYW4gYmUgbW9yZSBkaWZmaWN1bHQ7IHRoZSBlYXNpZXN0IGVkaXRzIGFyZSBzaW5nbGUtcG9pbnQgbXV0YXRpb25zLCBmb2xsb3dlZCBieSBkZWxldGlvbnMsIGFuZCB0aGUgbW9zdCBjaGFsbGVuZ2luZyBhcmUgaW5zZXJ0aW9ucy4gVGhpcyBkaWZmaWN1bHR5IGFyaXNlcyBiZWNhdXNlIGl0IGludm9sdmVzIHdyaXRpbmcgYSB0aGlyZCBzdHJhbmQgYW5kIHRoZW4gcmVseWluZyBvbiBETkEgZGFtYWdlIHJlcGFpciBtZWNoYW5pc21zIHRvIGZpeCBpdC4gIFxuICAgICAgICBJdCBjb3VsZCBhbHNvIGJlIHRoYXQgdGhlIHJlZ2lvbiBhcm91bmQgdGhlIEY1MDggZGVsdGEgbXV0YXRpb24gaXMgY2hhbGxlbmdpbmcgZHVlIHRvIGZsYXAgZXF1aWxpYnJhdGlvbiBvciB0aGF0IGl0IGF0dHJhY3RzIHBhdGh3YXlzIHN1Y2ggYXMgbWlzbWF0Y2ggcmVwYWlyIHRoYXQgbmVnYXRpdmVseSBpbXBhY3QgUHJpbWUgRWRpdGluZy4gQWRkaXRpb25hbGx5LCB0aGUgY2hyb21hdGluIG9yZ2FuaXphdGlvbiBhcm91bmQgdGhhdCByZWdpb24gY291bGQgcGxheSBhIHJvbGUuIE92ZXIgdGhlIHBhc3QgeWVhciwgd2VcdTIwMTl2ZSBnYXRoZXJlZCBjbHVlcyB0aGF0IGNocm9tYXRpbiBvcmdhbml6YXRpb24gc2lnbmlmaWNhbnRseSBhZmZlY3RzIFByaW1lIEVkaXRpbmcgY2FwYWJpbGl0eSwgd2hpbGUgdGhpcyBpcyBtdWNoIGxlc3Mgb2YgYW4gaXNzdWUgZm9yIENhczkgYW5kIGJhc2UgZWRpdG9ycy4gXG4gICAgICAgIFN0dWR5aW5nIHRoaXMgaXMgbm90IHN0cmFpZ2h0Zm9yd2FyZDsgeW91IHdvdWxkIG5lZWQgdG8gY29uZHVjdCBleHBlcmltZW50cyBsaWtlIEFUQUMtc2VxIHRvIGRldGVybWluZSB0aGUgY2hyb21hdGluIG9yZ2FuaXphdGlvbiBhcm91bmQgdGhlIG11dGF0aW9uIGFuZCBob3cgaXQgbWlnaHQgaW50ZXJmZXJlLiBJIGFsc28gbm90aWNlZCBvbiBhIHNsaWRlIHRoYXQgZHNnUk5BcyB3ZXJlIG1lbnRpb25lZCwgdGhvdWdoIERhdmlkIExpdSBkaWRuJ3QgZGlzY3VzcyB0aGVtIGluIGhpcyB0YWxrLiBBZnRlciBsb29raW5nIHRoZW0gdXAgb25saW5lLCBJIGZvdW5kIHRoYXQgdGhpcyB0ZWNobmlxdWUsIHB1Ymxpc2hlZCBhIGZldyB5ZWFycyBhZ28gYnkgb3RoZXIgcmVzZWFyY2hlcnMsIGlzIHNwZWNpZmljYWxseSBkZXNpZ25lZCB0byBvcGVuIHVwIGNocm9tYXRpbi4gSXQgc2VlbXMgdGhleSB1c2UgZGlmZmVyZW50IGd1aWRlcywgd2l0aG91dCB0aGUgdGhyZWUtcHJpbWUgZXh0ZW5zaW9uLCB0byBvcGVuIHVwIHRoZSBjaHJvbWF0aW4sIHdoaWNoIGNvdWxkIGJlIG9uZSB3YXkgdG8gb3ZlcmNvbWUgdGhlIGxpbWl0YXRpb25zIGluIFByaW1lIEVkaXRpbmcgZWZmaWNpZW5jeS4gXG4gICAgICAgIFRoZXJlIGNvdWxkIGJlIG90aGVyIGZhY3RvcnMgYXMgd2VsbCwgYW5kIGl0XHUyMDE5cyBvZnRlbiBkaWZmaWN1bHQgdG8gcHJlZGljdCB3aGF0IHdpbGwgd29yayBhbmQgd2hhdCB3b24ndC4gV2UgaGF2ZSBwcmVkaWN0aW9uIHRvb2xzIGZvciBQcmltZSBFZGl0aW5nIGd1aWRlcyB0aGF0IHdvcmsgdG8gc29tZSBleHRlbnQsIGJ1dCB0aGV5IGFyZSBub3QgYXMgZWZmZWN0aXZlIGFzIHRoZSBwcmVkaWN0aW9uIHRvb2xzIGF2YWlsYWJsZSBmb3IgcmVndWxhciBDUklTUFIgZ3VpZGUgUk5Bcy4gVGhpcyBzdWdnZXN0cyB0aGF0IHRoZSBQcmltZSBFZGl0aW5nIHN5c3RlbSBpcyBtb3JlIGNvbXBsZXggdGhhbiB0aGUgY2Fub25pY2FsIENSSVNQUiBzeXN0ZW1zLCB3aXRoIG1vcmUgdmFyaWFibGVzIHRoYXQgY2FuIGluZmx1ZW5jZSBzdWNjZXNzIG9yIGZhaWx1cmUuIEkgaG9wZSB0aGlzIGFuc3dlcnMgeW91ciBxdWVzdGlvbiBzb21ld2hhdC4gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiVGhhdCBoYXMgYWxyZWFkeSBiZWVuIHZlcnkgaGVscGZ1bCwgdGhhbmsgeW91IGZvciB0aGF0LiBXZSdsbCBjb25zaWRlciB0aGlzIGFuZCBtaWdodCBsb29rIGludG8gaXQgYSBiaXQgbW9yZS4gXG4gICAgICAgIFBlcmhhcHMgd2UgY291bGQgcXVpY2tseSBkaXNjdXNzIHdoaWNoIHBhcnQgb2YgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCB5b3UgdGhpbmsgcGxheXMgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgcm9sZSBpbiBtYWtpbmcgaW5zZXJ0aW9ucyBtdWNoIG1vcmUgY2hhbGxlbmdpbmcgY29tcGFyZWQgdG8gZGVsZXRpb25zLiBJcyBpdCB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIG9yIHRoZSBSTkE/IFwiIFxuICAgICAgICBhPVwiSSAgZG9uJ3QgdGhpbmsgaXQncyBwcmltYXJpbHkgdGhlIHJldmVyc2UgdHJhbnNjcmlwdGFzZSB0aGF0J3MgdGhlIGlzc3VlLiBQZW9wbGUgaGF2ZSBzaG93biB0aGF0IGxvbmdlciBpbnNlcnRpb25zIGFyZSBkZWZpbml0ZWx5IHBvc3NpYmxlLiBJIGJlbGlldmUgdGhlIGNoYWxsZW5nZSBsaWVzIGluIHRoZSBwcm9jZXNzIHdoZW4geW91ciBjZWxsIGhhcyB0byByZXBhaXIgdGhlIG5ldyBETkEgc3RyYW5kLCB3aGljaCBpcyBnZW5lcmF0ZWQgYW5kIGV4aXN0cyBhcyBhIHRocmVlLXN0cmFuZGVkIGludGVybWVkaWF0ZS4gV2UgZG9uXHUyMDE5dCBkaXJlY3RseSBpbnRlcnZlbmUgaW4gdGhpcyBwcm9jZXNzOyBpdCBlbnRpcmVseSBkZXBlbmRzIG9uIHRoZSBjZWxsIGFuZCB0aGUgRE5BIGRhbWFnZSByZXBhaXIgcGF0aHdheXMgYWN0aXZlIGluIHRob3NlIGNlbGxzLiBUaHJvdWdoIGV4cHJlc3Npb24gb2YgZG9taW5hbnQgbmVnYXRpdmUgRE5BIGRhbWFnZSByZXBhaXIgZWZmZWN0b3JzLCBvciBieSBuaWNraW5nIHRoZSBub24tZWRpdGVkIHN0cmFuZCwgdGhlIG91dGNvbWUgY2FuIGJlIHN0ZWVyZWQgdG8gc29tZSBleHRlbnQuIFxuICAgICAgICBXaGVuIHlvdSBwZXJmb3JtIGFuIGluc2VydGlvbiwgdGhlIG5ldyBzdHJhbmQgbXVzdCBoeWJyaWRpemUgd2l0aCB0aGUgYm90dG9tIHN0cmFuZCwgd2hpY2ggcmVtYWlucyBpbnRhY3QuIFRoaXMgY3JlYXRlcyBhIHNtYWxsIGxvb3AgdGhhdCBuZWVkcyB0byBiZSBpbmNvcnBvcmF0ZWQuIEF0IHRoaXMgcG9pbnQsIHRoZSBjZWxsIGZhY2VzIHR3byBvcHRpb25zOiBpdCBjYW4gZWl0aGVyIHJldmVydCB0byB0aGUgb3JpZ2luYWwgc3RhdGUgb3IgaW5jb3Jwb3JhdGUgdGhlIGVkaXQgeW91XHUyMDE5cmUgdHJ5aW5nIHRvIGludHJvZHVjZS4gSW4gY2VydGFpbiBjaXJjdW1zdGFuY2VzLCBwZXJoYXBzIGR1ZSB0byBob3cgdGhlIG5ldyBETkEgc3RyYW5kIGZvbGRzIG9yIHRoZSBzZXF1ZW5jZSBjb250ZXh0IG9mIHRoZSByZWdpb24gb2YgaW50ZXJlc3QsIHRoZSBjZWxsIG1pZ2h0IGhlYXZpbHkgZmF2b3IgcmV2ZXJ0aW5nIHRvIHRoZSBvcmlnaW5hbCBzdGF0ZSwgcmVzdWx0aW5nIGluIHRoZSBhYnNlbmNlIG9mIHRoZSBpbnRlbmRlZCBlZGl0LiBcbiAgICAgICAgVGhpcyBwcm9jZXNzIGlzIGV4dHJlbWVseSBkaWZmaWN1bHQgdG8gcHJlZGljdCwgYnV0IHRoZXJlIGFyZSBzZXZlcmFsIGluZGljYXRpb25zIHBvaW50aW5nIGluIHRoaXMgZGlyZWN0aW9uLiBGb3IgZXhhbXBsZSwgaW4gdGhlIGNhc2Ugb2YgcG9pbnQgbXV0YXRpb25zLCBpdCBoYXMgYmVlbiBzaG93biB0aGF0IGl0XHUyMDE5cyBlYXNpZXIgdG8gY29udmVydCBhIEMgdG8gYSBHIHJhdGhlciB0aGFuIHRoZSByZXZlcnNlLCBzaW1wbHkgZHVlIHRvIGhvdyB0aGVzZSBtaXNtYXRjaGVzIGFyZSByZWNvZ25pemVkIGJ5IHRoZSBETkEgZGFtYWdlIHJlcGFpciBtZWNoYW5pc21zLiBUaGlzIGFyZWEgaXMgdmVyeSBjb21wbGV4LCBhbmQgSSBkb25cdTIwMTl0IHRoaW5rIGFueW9uZSBmdWxseSB1bmRlcnN0YW5kcyBpdCB5ZXQuIEl0XHUyMDE5cyBhbHNvIGRpZmZpY3VsdCB0byBzdHVkeS4gXG4gICAgICAgIEkgZG9uJ3QgYmVsaWV2ZSB0aGUgcmF0ZSBvZiByZXZlcnNlIHRyYW5zY3JpcHRpb24gaXMgdGhlIGxpbWl0aW5nIGZhY3RvciBoZXJlLCBhbHRob3VnaCBpdCBjb3VsZCBwbGF5IGEgcm9sZSBmb3IgbG9uZyBvciBzdHJ1Y3R1cmVkIHBlZ1JOQXMuIFlvdSBtaWdodCBoYXZlIGFscmVhZHkgY29tZSBhY3Jvc3MgdGhpcywgYnV0IHRoZSBQRTYgZ2VuZXJhdGlvbiBvZiBQcmltZSBFZGl0b3JzLCB3aGljaCB3ZXJlIHJlbGVhc2VkIGFib3V0IGhhbGYgYSB5ZWFyIGFnbywgaW52b2x2ZSBlbmdpbmVlcmVkIG9yIGV2b2x2ZWQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlcyB0aGF0IGFyZSBtb3JlIHByb2Nlc3NpdmUgYW5kIGNhbiBtb3JlIGVhc2lseSBzeW50aGVzaXplIGxvbmdlciB0cmFuc2NyaXB0cy4gXG4gICAgICAgIEFub3RoZXIgZmFjdG9yIHRoYXQgY291bGQgcGxheSBhIHJvbGUgaXMgdGhlIHNlY29uZGFyeSBzdHJ1Y3R1cmUgb2YgdGhlIGd1aWRlIFJOQS4gRWFjaCBwcmltZSBlZGl0aW5nIGd1aWRlIFJOQSBmYWNlcyBhIGNvbW1vbiBwcm9ibGVtOiBpdCBoYXMgYSBzcGFjZXIgdGhhdCBiaW5kcyB0aGUgYm90dG9tIHN0cmFuZCBhbmQgYSB0aHJlZS1wcmltZSBleHRlbnNpb24gdGhhdCBiaW5kcyB0aGUgdG9wIHN0cmFuZC4gU2luY2UgdGhlc2UgdHdvIHBhcnRzIG9mIHRoZSBSTkEgYmluZCBjb21wbGVtZW50YXJ5IHN0cmFuZHMsIHRoZXkgYXJlIGFsc28gY29tcGxlbWVudGFyeSB0byBlYWNoIG90aGVyLCBtZWFuaW5nIGV2ZXJ5IHByaW1lIGVkaXRpbmcgZ3VpZGUgaGFzIHNvbWUgdGVuZGVuY3kgdG8gYmluZCBpdHNlbGYuIElmIHRoZSBHaWJicyBmcmVlIGVuZXJneSBpcyB0b28gaGlnaCwgdGhlIGd1aWRlIFJOQSBtYXkgZm9sZCBpbiBvbiBpdHNlbGYsIHByZXZlbnRpbmcgaXQgZnJvbSBiaW5kaW5nIHRvIHRoZSBwcmltZSBlZGl0b3IsIHdoaWNoIHRoZW4gaW5oaWJpdHMgcHJpbWUgZWRpdGluZy4gXG4gICAgICAgIEFkZGl0aW9uYWxseSwgdGhlIHRocmVlLXByaW1lIGV4dGVuc2lvbiBpdHNlbGYgY2FuIGZvbGQgaW5kZXBlbmRlbnRseS4gSSBoYXZlblx1MjAxOXQgc3BlY2lmaWNhbGx5IGV4YW1pbmVkIHRoaXMgZm9yIHRoZSBGNTA4IGRlbHRhIGd1aWRlcywgYnV0IGl0IGlzIHNvbWV0aGluZyB0aGF0IGNhbiBiZSBwcmVkaWN0ZWQuIFRoZXJlIGFyZSB0b29scyBhdmFpbGFibGUgdGhhdCBjYW4gcHJlZGljdCB0aGUgc2Vjb25kYXJ5IHN0cnVjdHVyZSBvZiBhbiBSTkEgc2VxdWVuY2UsIGFuZCBpZiB0aGVyZVx1MjAxOXMgYSBzaWduaWZpY2FudCBoYWlycGluIHN0cnVjdHVyZSwgaXQgbWlnaHQgbWVhbiB0aGUgdGhyZWUtcHJpbWUgZXh0ZW5zaW9uIHJlbWFpbnMgY2xvc2VkLCBwcmV2ZW50aW5nIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZnJvbSB1c2luZyBpdCBhcyBhIHRlbXBsYXRlLiBUaGUgUEU2IHByaW1lIGVkaXRvcnMgaGF2ZSBiZWVuIGVuZ2luZWVyZWQgdG8gYmUgbW9yZSBlZmZlY3RpdmUgaW4gc3VjaCBzY2VuYXJpb3MsIGJlaW5nIGxlc3MgYWZmZWN0ZWQgYnkgc2Vjb25kYXJ5IHN0cnVjdHVyZXMgYW5kIGJldHRlciBhYmxlIHRvIHJlYWQgdGhyb3VnaCB0aGVtLiBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJZZXMsIGV4YWN0bHksIHdlIG5vdGljZWQgdGhlIHNhbWUgdGhpbmcgd2hlbiBwcmVkaWN0aW5nIHRoZSBzZWNvbmRhcnkgc3RydWN0dXJlIG9mIG91ciBndWlkZSBSTkEuIEFzIHlvdSBtZW50aW9uZWQsIHRoZSBzcGFjZXIgYW5kIHRoZSBiaW5kaW5nIHNpdGUgYXJlIGNvbXBsZW1lbnRhcnksIHNvIHdlIGVuZCB1cCB3aXRoIGEgcmVhbGx5IGxvbmcgY29tcGxlbWVudGFyeSBzdHJhbmQgdGhhdCBiaW5kcyB0byBpdHNlbGYuIFdlIHdlcmUgYWxzbyB1bnN1cmUgd2hldGhlciBpdCB3b3VsZCBvcGVuIHVwIG9yIHJlbWFpbiBib3VuZCB0b2dldGhlci5cIiBcbiAgICAgICAgYT1cIkkgdGhpbmsgdGhlIExpdSBsYWIgbWVudGlvbmVkIGluIHRoZSBQRTYgcGFwZXIgYSB0aHJlc2hvbGQgZm9yIHRoZSBmcmVlIGVuZXJneSBvZiB0aGUgZ3VpZGUgUk5BIHN0cnVjdHVyZS4gVGhleSBzdWdnZXN0IHRoYXQgZXZlcnkgZ3VpZGUgd2lsbCBiZWhhdmUgZGlmZmVyZW50bHksIGJ1dCB0aGVyZVx1MjAxOXMgb2Z0ZW4gYSBtb3JlIGNvbXBsZXggaW50ZXJhY3Rpb24gYXQgcGxheSB0aGFuIGp1c3QgYSBzaW1wbGUgdGhyZXNob2xkLiBJZiB0aGUgZnJlZSBlbmVyZ3kgaXMgbm90IHRvbyBsb3csIHRoZSBndWlkZSBSTkEgbWF5IHN0aWxsIGZ1bmN0aW9uIGVmZmljaWVudGx5IGFuZCBiZSBpbmNvcnBvcmF0ZWQgaW50byB0aGUgcHJpbWUgZWRpdG9yLCB3aXRoIGV2ZXJ5dGhpbmcgcmVtYWluaW5nIGluIGVxdWlsaWJyaXVtLiBIb3dldmVyLCBpZiB0aGUgZnJlZSBlbmVyZ3kgaXMgdG9vIGxvdywgbWVhbmluZyBoaWdoIHByb3BlbnNpdHkgZm9yIHNlbGYtZm9sZGluZywgaXQgY2FuIGNhdXNlIHByb2JsZW1zLiBcbiAgICAgICAgSSBhbHNvIHJlY2VudGx5IGNhbWUgYWNyb3NzIGEgcGFwZXIgZnJvbSB0aGUgZ3JvdXAgb2YgS2VpdGggSm91bmcsIGFub3RoZXIgcHJvbWluZW50IENSSVNQUiBzY2llbnRpc3QgZnJvbSB0aGUgVS5TLiwgd2hlcmUgdGhleSBkZW1vbnN0cmF0ZWQgdGhhdCBhcHBseWluZyBhIGhlYXQgc2hvY2sgdG8gdGhlIGd1aWRlIFJOQSBjYW4gaGVscCBpdCByZWZvbGQuIFRoaXMgaXMgcGFydGljdWxhcmx5IHJlbGV2YW50IGlmIHlvdVx1MjAxOXJlIHVzaW5nIFJOUCBvciBtUk5BIHdpdGggc3ludGhldGljIGd1aWRlIFJOQS4gVGhleSBsaW5rZWQgdGhpcyBzcGVjaWZpY2FsbHkgdG8gdGhlIHNlbGYtYmluZGluZyBjYXBhY2l0eSBvZiB0aGUgZ3VpZGUgUk5BLCBzdWdnZXN0aW5nIHRoYXQgaGVhdCBzaG9jayBjYW4gbWl0aWdhdGUgdGhlIGlzc3VlcyBjYXVzZWQgYnkgc2VsZi1iaW5kaW5nLiBcIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHdvdWxkIGJlIHRoZSBhcHBsaWNhdGlvbj8gV291bGQgeW91IGFkbWluaXN0ZXIgdGhlIGhlYXQgc2hvY2sgaW4gdml2bz9cIiBcbiAgICAgICAgYT1cIkkgYmVsaWV2ZSB0aGV5IHVzZWQgaXQgdG8gZW5naW5lZXIgemVicmFmaXNoIGVtYnJ5b3Mgb3Igc29tZXRoaW5nIGFsb25nIHRob3NlIGxpbmVzLiBJdFx1MjAxOXMgcXVpdGUgc3BlY2lmaWMsIG9mIGNvdXJzZS4gSWYgeW91IHBsYW4gdG8gZGVsaXZlciB5b3VyIGd1aWRlIFJOQSB0aHJvdWdoIGEgdmlyYWwgdmVjdG9yIG9yIHNpbWlsYXIgbWV0aG9kIGZvciBodW1hbiB0aGVyYXB5LCB0aGUgYXBwbGljYXRpb24gd291bGQgZGlmZmVyIHNpZ25pZmljYW50bHkuIFlvdSBvYnZpb3VzbHkgY2FuJ3QgYWRtaW5pc3RlciBhIGhlYXQgc2hvY2sgdG8gaHVtYW5zLCBzbyBpdCByZWFsbHkgZGVwZW5kcyBvbiB0aGUgY29udGV4dCBvZiB5b3VyIGFwcGxpY2F0aW9uLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIk9rYXksIHRoYXQncyBpbnRlcmVzdGluZy4gR2l2ZW4gdGhlIHRpbWUgY29uc3RyYWludHMsIGxldCdzIG1vdmUgb24gdG8gdGhlIG5leHQgcXVlc3Rpb24uIER1ZSB0byBvdXIgbGltaXRlZCByZXNvdXJjZXMsIHdlIGFyZSB0YXJnZXRpbmcgYSBQRTIgc3lzdGVtLCBhbmQgd2UnZCBsaWtlIHRvIGFzayBpZiB5b3Ugc2VlIGFueSBjaGFuY2VzIG9mIHN1Y2Nlc3Mgd2l0aCB0aGlzIHN5c3RlbS4gSWYgc28sIGhvdyBoaWdoIGRvIHlvdSB0aGluayB0aGUgY2hhbmNlcyBvZiBzdWNjZXNzIGFyZT8gV2UgdW5kZXJzdGFuZCB0aGF0IHRoZSBQRTMgc3lzdGVtLCBhcyBzaG93biBpbiB5b3VyIHBhcGVyLCBpcyBtdWNoIG1vcmUgYWR2YW5jZWQgYW5kIHBlcmZvcm1zIHNpZ25pZmljYW50bHkgYmV0dGVyLiBCdXQgZ2l2ZW4gb3VyIHNpdHVhdGlvbiwgZG8geW91IHRoaW5rIG91ciBQRTIgc3lzdGVtIGNvdWxkIHN0aWxsIGJlIGVmZmVjdGl2ZSwgb3Igd291bGQgeW91IHN1Z2dlc3QgdGhhdCBpdCBvbmx5IG1ha2VzIHNlbnNlIHRvIHVzZSBzb21ldGhpbmcgbGlrZSBQRTM/XCIgXG4gICAgICAgIGE9XCJQRTIgY2FuIHdvcmssIGJ1dCBpdCByZWFsbHkgZGVwZW5kcyBvbiB5b3VyIGFwcGxpY2F0aW9uIGFuZCB0aGUgbWV0aG9kcyB5b3UgaGF2ZSB0byBhc3Nlc3MgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeS4gSWYgeW91IGNhbiB1c2UgTkdTIChOZXh0LUdlbmVyYXRpb24gU2VxdWVuY2luZykgZm9yIGV2ZXJ5dGhpbmcsIHlvdSdsbCBiZSBhYmxlIHRvIGRldGVjdCBlZGl0cyBldmVuIHdpdGggUEUyIHN5c3RlbXMuIEhvd2V2ZXIsIEkgd291bGQgZ2VuZXJhbGx5IGV4cGVjdCB0aGUgZWZmaWNpZW5jeSB0byBiZSBsb3cuIFdoZW5ldmVyIHBvc3NpYmxlLCBJIHdvdWxkIGFsd2F5cyByZWNvbW1lbmQgdHJ5aW5nIHRoZSBQRTMgc3lzdGVtLiBDb3VsZCB5b3Ugc2hhcmUgd2hhdCB5b3VyIHNwZWNpZmljIGFwcGxpY2F0aW9uIGlzLCBvciBpcyB0aGF0IGNvbmZpZGVudGlhbD9cIiAvPlxuICAgICAgPFFhQm94IHE9XCJTbyBvdXIgZ29hbCBpcyB0byBldmVudHVhbGx5IHVzZSBpdCBpbiB2aXZvLCBidXQgZm9yIG5vdywgd2UncmUgZm9jdXNpbmcgb24gdHJ5aW5nIHRvIGNvcnJlY3QgdGhlIG11dGF0aW9uIGZpcnN0IGluIHJlZ3VsYXIgY2VsbCBjdWx0dXJlcyBhbmQgdGhlbiBsYXRlciBpbiBwcmltYXJ5IGNlbGxzLlwiIFxuICAgICAgICBhPVwiSXMgeW91ciBmb2N1cyBzcGVjaWZpY2FsbHkgb24gdGhlIEY1MDggZGVsdGEgbXV0YXRpb24/IElmIHNvLCB3ZSBjb3VsZCBwb3RlbnRpYWxseSBoZWxwIHlvdSBnZXQgeW91IHN0YXJ0ZWQsIGFzIHdlIGFscmVhZHkgaGF2ZSBjb25zdHJ1Y3RzIGFuZCBjZWxscyB3aXRoIHRoYXQgbXV0YXRpb24uIFdlIHdvdWxkIG5lZWQgdG8gZGlzY3VzcyB0aGUgZmluYW5jaWFsIGFzcGVjdHMsIGJ1dCB3ZSBtaWdodCBiZSBhYmxlIHRvIGFzc2lzdC4gSG93ZXZlciwgYXJlIHlvdSBmdWxseSBjb21taXR0ZWQgdG8gdGFyZ2V0aW5nIEY1MDgsIG9yIGFyZSB5b3UgYWxzbyBjb25zaWRlcmluZyBvdGhlciBkaXNlYXNlcyBvciBtdXRhdGlvbnM/XCIgLz5cbiAgICAgIDxRYUJveCBxPVwiVGhlIHRpbWVmcmFtZSBvZiB0aGUgcHJvamVjdCwgY29tYmluZWQgd2l0aCB0aGUgZmFjdCB0aGF0IHdlXHUyMDE5cmUgYWxsIHN0dWR5aW5nIG9uIHRoZSBzaWRlLCBsaW1pdHMgdXMgdG8gYSBjZXJ0YWluIHNjb3BlLiBTaW5jZSB0aGlzIGlzIG91ciBmaXJzdCB0aW1lIHRhY2tsaW5nIGEgcHJvamVjdCBsaWtlIHRoaXMsIGl0IG1ha2VzIHNlbnNlIHRvIHN0aWNrIHRvIHNvbWV0aGluZyBtb3JlIG1hbmFnZWFibGUuIFNvLCB3ZSdyZSBzb21ld2hhdCBjb21taXR0ZWQgdG8gZm9jdXNpbmcgb24gRjUwOCBkdWUgdG8gdGhlc2UgY29uc3RyYWludHMuXCIgXG4gICAgICAgIGE9XCJUaGF0J3MgdW5kZXJzdGFuZGFibGUuIEl0IGNhbiBiZSByZWFsbHkgdG91Z2ggdG8ganVnZ2xlIGEgcHJvamVjdCBsaWtlIHRoaXMgYWxvbmcgd2l0aCBleGFtcyBhbmQgc3R1ZGllcywgZXNwZWNpYWxseSBpZiB5b3UncmUgYWxzbyBpbnZvbHZlZCBpbiBjb21wZXRpdGlvbnMuIEJ1dCBpdCdzIGRlZmluaXRlbHkgd29ydGggdGhlIGVmZm9ydCwgZXZlbiBpZiB5b3UgZG9uJ3QgYWNoaWV2ZSBodWdlIHJlc3VsdHMgcmlnaHQgYXdheS4gVGhlIGV4cGVyaWVuY2UgYW5kIGxlYXJuaW5nLCBhcyB3ZWxsIGFzIHRoZSBjb25uZWN0aW9ucyB5b3UgbWFrZSwgYXJlIGluY3JlZGlibHkgdmFsdWFibGUuIEknbSBhIGJpZyBzdXBwb3J0ZXIgb2Ygc3VjaCBwcm9qZWN0cy4gU28sIHdoYXQgcmVzb3VyY2VzIGRvIHlvdSBjdXJyZW50bHkgaGF2ZT8gRG8geW91IGFscmVhZHkgaGF2ZSBjZWxscyB3aXRoIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uLCBvci4uLj8gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBvbmUgcGF0aWVudCB3aG8gaXMgd2lsbGluZyB0byBwcm92aWRlIHVzIHdpdGggY2VsbHMsIGJ1dCB3ZSBkb24ndCBoYXZlIHRoZW0geWV0LiBcIiBcbiAgICAgICAgYT1cIkl0IHNvdW5kcyBsaWtlIHlvdSdyZSBhd2FyZSBvZiB0aGUgY2hhbGxlbmdlcywgYW5kIEkgZG9uJ3Qgd2FudCB0byBkaXNjb3VyYWdlIHlvdSwgYnV0IGp1c3QgdG8gYmUgcmVhbGlzdGljLCB3b3JraW5nIHdpdGggcHJpbWFyeSBjZWxscyBhbmQgZ2V0dGluZyBldmVyeXRoaW5nIHJlYWR5IGNvdWxkIGJlIHRyaWNreSwgZXNwZWNpYWxseSBjb25zaWRlcmluZyB0aGUgY29tcGV0aXRpb24gaXMgaW4gT2N0b2Jlci4gRXhwZXJpbWVudHMgaW4gaHVtYW4gY2VsbHMgY2FuIHRha2UgdGltZSwgZXNwZWNpYWxseSBpZiB5b3UgbmVlZCB0byBkbyBtdWx0aXBsZSBpdGVyYXRpb25zIG9yIGNsb25lIGNvbnN0cnVjdHNcdTIwMTRpdCBjb3VsZCBlYXNpbHkgdGFrZSBhIHdlZWsgb3IgbW9yZSBwZXIgZXhwZXJpbWVudC4gXG4gICAgICAgIFJlZ2FyZGluZyB0aGUgY2VsbHMgd2UgaGF2ZSwgYXMgbWVudGlvbmVkIGluIG91ciBwYXBlciwgd2Ugc2NyZWVuZWQgYWxsIG91ciBndWlkZXMgb24gSEVLIGNlbGxzIHdpdGggYW4gaW50ZWdyYXRlZCBjb3B5IG9mIHRoZSBDRlRSIGNETkEuIEhFSyBjZWxscyBhcmUgZWFzeSB0byB3b3JrIHdpdGgsIGJ1dCB0aGV5IGRvbid0IG5hdHVyYWxseSBleHByZXNzIENGVFIsIGV2ZW4gdGhvdWdoIHRoZSBnZW5lIGlzIHByZXNlbnQgaW4gdGhlaXIgZ2Vub21lLiBTbywgd2UgaW50cm9kdWNlZCB0aGUgbXV0YXRpb24gb2YgaW50ZXJlc3QgaW50byB0aGVzZSBjZWxscywgbWFraW5nIGl0IGVhc2llciB0byBzY3JlZW4uIFxuICAgICAgICBJJ20gbm90IGVudGlyZWx5IHN1cmUgaWYgd2UgY2FuIHNlbmQgb3ZlciB0aGUgY2VsbHMgZHVlIHRvIGV0aGljYWwgcmVndWxhdGlvbnMsIHdoaWNoIGNhbiBiZSBjb21wbGV4IGFuZCB0aW1lLWNvbnN1bWluZyB0byBuYXZpZ2F0ZS4gSG93ZXZlciwgdGhlcmUncyBhbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCB0aGF0IG1pZ2h0IGhlbHAgeW91LiBFYXJseSBvbiwgd2UgZm91bmQgdGhhdCBpdCdzIGFjdHVhbGx5IHF1aXRlIGVhc3kgdG8gc2NyZWVuIGd1aWRlcyB1c2luZyB3aGF0IHdlIGNhbGwgYSAndHJhbnNpZW50IHRhcmdldCcuIEluIHRoaXMgbWV0aG9kLCB5b3Ugd291bGQgdHJhbnNmZWN0IGFsbCB5b3VyIHByaW1lIGVkaXRpbmcgcGxhc21pZHMgaW50byBIRUsgY2VsbHMsIGFsb25nIHdpdGggYSBwbGFzbWlkIGNvbnRhaW5pbmcgdGhlIENGVFIgY0ROQSB3aXRoIHRoZSBtdXRhdGlvbiBvZiBpbnRlcmVzdC4gV2hpbGUgdGhpcyBhcHByb2FjaCBpc25cdTIwMTl0IGFzIHBoeXNpb2xvZ2ljYWwgYXMgZWRpdGluZyB0aGUgY2hyb21vc29tZSBkaXJlY3RseSwgb3VyIHNpZGUtYnktc2lkZSBjb21wYXJpc29ucyBzaG93ZWQgYWxtb3N0IGVxdWFsIGVmZmljaWVuY2llcyBiZXR3ZWVuIHRyYW5zaWVudCBhbmQgY2hyb21vc29tYWwgdGFyZ2V0cy4gSXQncyBtdWNoIGVhc2llciBhbmQgZmFzdGVyIHRoYW4gd29ya2luZyB3aXRoIHBhdGllbnQtZGVyaXZlZCBjZWxscy4gSSBjYW4gZGVmaW5pdGVseSBzZW5kIHlvdSB0aGUgcGxhc21pZCwgd2hpY2ggd291bGQgc2F2ZSB5b3UgYSBsb3Qgb2YgdGltZSBhbmQgZWZmb3J0LiBUaGlzIG1ldGhvZCBpcyBtdWNoIHNpbXBsZXIgYW5kIGNvdWxkIGJlIGEgcHJhY3RpY2FsIHNvbHV0aW9uIGZvciB5b3VyIHByb2plY3QuIFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIk91ciBpbml0aWFsIHBsYW4gaXMgdG8gd29yayB3aXRoIGEgcmVwb3J0ZXIgcGxhc21pZCB0aGF0IGV4cHJlc3NlcyBlR0ZQLCB3aGVyZSB3ZSd2ZSByZW1vdmVkIGEgc3BsaWNlIHNpdGUsIHVudGlsIHdlIGhhdmUgcGF0aWVudCBjZWxscyBvciBjZWxsIGxpbmVzIHdpdGggQ0ZUUiBtdXRhdGlvbnMuIFRoaXMgd2lsbCBhbGxvdyB1cyB0byBzY3JlZW4gZWFzaWx5IHdpdGhvdXQgbmVlZGluZyB0byBzZXF1ZW5jZSBldmVyeXRoaW5nLiBEbyB5b3UgbWF5YmUgaGF2ZSBhbnkgc3VnZ2VzdGlvbnMgb3IgYWR2aWNlIG9uIHRoaXMgYXBwcm9hY2g/IFwiIFxuICAgICAgICBhPVwiSXMgdGhhdCB0aGUgUEVBUiBzeXN0ZW0/IE5vLCBpdFx1MjAxOXMgYSBkaWZmZXJlbnQgb25lLCBidXQgd2UgYWxzbyBoYXZlIGEgc2ltaWxhciBzeXN0ZW0uIFRoZSBhZHZhbnRhZ2Ugb2YgdGhpcyBhcHByb2FjaCBpcyB0aGF0IHlvdSBjYW4gdmVyeSBlYXNpbHkgc2VlIGlmIGl0IHdvcmtzLCBhbmQgaXRcdTIwMTlzIHZlcnkgc2Vuc2l0aXZlXHUyMDE0bXVjaCBlYXNpZXIgdGhhbiBleHRyYWN0aW5nIGFuZCBzZXF1ZW5jaW5nIEROQS4gVGhlIGRvd25zaWRlLCBob3dldmVyLCBpcyB0aGF0XHUyMDI2IGFjdHVhbGx5LCBJXHUyMDE5bSBub3QgZmFtaWxpYXIgd2l0aCB0aGUgJ2ZsdSBQRUFSIHN5c3RlbS4nIFxuICAgICAgICBBY3R1YWxseSwgd2UgdXNlIHRoZSBleGFjdCBzYW1lIHN5c3RlbSBpbiBvdXIgbGFiLiBJdFx1MjAxOXMgdmVyeSB1c2VmdWwgZm9yIG9wdGltaXppbmcgZGVsaXZlcnkgc3RyYXRlZ2llcyBiZWNhdXNlIGl0XHUyMDE5cyBlYXN5IHRvIHNlZSByZXN1bHRzLiBUaGUgZG93bnNpZGUsIG9mIGNvdXJzZSwgaXMgdGhhdCB0aGUgZ3VpZGVzIHlvdVx1MjAxOXJlIHVzaW5nIGZvciB0aGF0IHN5c3RlbSBhcmVuXHUyMDE5dCBzcGVjaWZpYyB0byB0aGUgRjUwOCBkZWx0YSBtdXRhdGlvbiwgcmlnaHQ/IFNvLCB0aGVzZSBhcmUgc2NpZW50aWZpYyB0cmFkZS1vZmZzLiBZb3UgY291bGQsIGZvciBleGFtcGxlLCBkZXNpZ24gYSByZXBvcnRlciB0aGF0IHVzZXMgeW91ciBGNTA4IGRlbHRhIGd1aWRlIGFuZCBhbHNvIHJlc3VsdHMgaW4gZmx1b3Jlc2NlbmNlLCBidXQgeW91IHdvdWxkIG5lZWQgdG8gZGVzaWduIHRoZSByZXBvcnRlciBmaXJzdC4gSXRcdTIwMTlzIGNoYWxsZW5naW5nIHRvIHByb3ZlIHRoYXQgaXQgd29ya3MgYmVjYXVzZSB5b3UgbWlnaHQgbm90IGhhdmUgYSBwZXJmZWN0IGd1aWRlIGZvciBGNTA4IGRlbHRhLiBcbiAgICAgICAgSXQgcmVhbGx5IGRlcGVuZHMgb24gd2hhdCB5b3Ugd2FudCB0byBhY2hpZXZlLiBJZiB5b3VyIGdvYWwgaXMgdG8gZmlyc3QgY2hlY2sgaWYgeW91IGNhbiBzdWNjZXNzZnVsbHkgcGVyZm9ybSBwcmltZSBlZGl0aW5nLCB0aGVuIHVzaW5nIHRoZSByZXBvcnRlciBpcyBkZWZpbml0ZWx5IGEgZ29vZCBmaXJzdCBzdGVwLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldlIHdpbGwgZWRpdCB0aGUgcGxhc21pZCwgc3BlY2lmaWNhbGx5IHRoZSB2ZWN0b3IsIHNvIHRoYXQgd2UgaGF2ZSBhbG1vc3QgdGhlIHNhbWUgcGVnUk5BLiBUaGUgb25seSBkaWZmZXJlbmNlIHdpbGwgYmUgZG93bnN0cmVhbSwgYmVoaW5kIHRoZSBlZGl0LlwiIFxuICAgICAgICBhPVwiSXMgdGhpcyBhcHByb2FjaCBiYXNlZCBvbiBhIHBhcGVyIGZyb20gdGhlIE5ldGhlcmxhbmRzLCBvciBpcyBpdCBzb21ldGhpbmcgeW91IGNhbWUgdXAgd2l0aCB5b3Vyc2VsZj8gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiQmFzZWQgb24gYSBwYXBlci4gXCIgXG4gICAgICAgIGE9XCJZZWFoLCB0aGF0IHNvdW5kcyBsaWtlIGEgdmVyeSBnb29kIHdheSB0byBzdGFydC4gRG8geW91IGFscmVhZHkgaGF2ZSB0aGUgcmVwb3J0ZXIgcGxhc21pZCByZWFkeT8gXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiWWVhaCwgd2UgYm91Z2h0IHRoZSByZXBvcnRlciwgYW5kIG5vdyB3ZVx1MjAxOXJlIG1ha2luZyB0aGUgbmVjZXNzYXJ5IGVkaXRzIHNvIHdlIGNhbiB1c2UgaXQuIFwiIFxuICAgICAgICBhPVwiT2theSwgc28gZG8geW91IGFsc28gYWxyZWFkeSBoYXZlIGd1aWRlcyB0YXJnZXRpbmcgRjUwOCByaWdodCBub3c/IFwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldlXHUyMDE5dmUgZGVzaWduZWQgc29tZSBndWlkZXMsIGJ1dCB3ZSBoYXZlblx1MjAxOXQgdGVzdGVkIHRoZW0geWV0LiBUaGF0XHUyMDE5cyBvbmUgb2Ygb3VyIG5leHQgc3RlcHMuIFNvLCBhdCB0aGUgbW9tZW50LCB3ZVx1MjAxOXJlIGp1c3QgaW4gdGhlIGRlc2lnbiBwaGFzZSwgb3Igd2UgaGF2ZSBhbHJlYWR5IGRlc2lnbmVkIHRoZW0sIGFuZC4uLlwiIGE9XCJZZWFoLCBva2F5LCBjb29sLiBHb29kIGx1Y2sgd2l0aCB0aGF0ISBBbmQgSSBzdXBwb3NlIHlvdVx1MjAxOXJlIHN0YXJ0aW5nIG9mZiB3aXRoIEhFSyBjZWxscyBhcyB3ZWxsLCByaWdodD9cIi8+XG4gICAgICA8UWFCb3ggcT1cIldlIGhhdmUgSEVLIGFuZCBIZUxhIGNlbGxzLCBidXQgd2UgaGF2ZW4ndCBkZWNpZGVkIHlldCB3aGljaCBvbmVzIHdlJ2xsIHVzZS5cIiBhPVwiSSB3b3VsZCBzdGFydCBvZmYgaW4gSEVLIGNlbGxzIGJlY2F1c2UsIGJ5IHRvdGFsIGFjY2lkZW50IG9yIGNvaW5jaWRlbmNlLCB0aGV5IGFyZSBtdWNoIGVhc2llciB0byBhY2hpZXZlIHByaW1lIGVkaXRpbmcgaW4uIFRoaXMgaXMgYmVjYXVzZSB0aGUgTUxIMSBnZW5lLCB3aGljaCBuZWdhdGl2ZWx5IGltcGFjdHMgcHJpbWUgZWRpdGluZyBvdXRjb21lcywgaXMgbmF0dXJhbGx5IGRpc2FibGVkIGluIHRoZXNlIGNlbGxzXHUyMDE0dGhleSBkb24ndCBwcm9kdWNlIHRoZSBNTEgxIHByb3RlaW4uIE9mIGFsbCBjZWxsIGxpbmVzIGF2YWlsYWJsZSwgSEVLIGNlbGxzIGFyZSB0aGUgZWFzaWVzdCB0byBhY2hpZXZlIGVkaXRpbmcgd2l0aCwgc28gSSB3b3VsZCBkZWZpbml0ZWx5IHJlY29tbWVuZCBzdGFydGluZyB0aGVyZS4gSW4gdGVybXMgb2YgdHJhbnNmZWN0aW9uLCBIRUsgY2VsbHMgYXJlIGFsc28gdmVyeSBlYXNpbHkgdHJhbnNmZWN0ZWQuIElmIEkgY2FuIG9mZmVyIGFub3RoZXIgcGllY2Ugb2YgYWR2aWNlLCBhbHdheXMgaW5jbHVkZSBHRlAgY29udHJvbHNcdTIwMTRwbGFzbWlkcyB0aGF0IHNpbXBseSBleHByZXNzIEdGUCB3aXRob3V0IHJlcXVpcmluZyBlZGl0aW5nXHUyMDE0YW5kIHVzZSB0aGVtIHRvIGRldGVybWluZSB5b3VyIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBJdCdzIGNydWNpYWwgdG8gaGF2ZSBhIHZlcnkgaGlnaCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBiZWNhdXNlIHlvdSdsbCBiZSB3b3JraW5nIHdpdGggYSB0aHJlZS1jb21wb25lbnQgc3lzdGVtOiB5b3VyIHJlcG9ydGVyLCB5b3VyIHByaW1lIGVkaXRvciwgYW5kIHlvdXIgZ3VpZGVzLiBBbGwgdGhyZWUgcGxhc21pZHMgbmVlZCB0byBiZSBwcmVzZW50IGluIHRoZSBzYW1lIGNlbGwgZm9yIHRoZSBlZGl0aW5nIHRvIG9jY3VyLCBzbyB5b3Ugc2hvdWxkIGFpbSBmb3IgYXQgbGVhc3QgNzAlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LCBwcmVmZXJhYmx5IDgwJSBvciBoaWdoZXIuIEkgZG9uJ3Qga25vdyB3aGF0IHRyYW5zZmVjdGlvbiBtZXRob2QgeW91J3JlIHBsYW5uaW5nIHRvIHVzZSwgYnV0IHdlJ3ZlIGFsd2F5cyB1c2VkIExpcG9mZWN0YW1pbmUgMzAwMC4gSXRcdTIwMTlzIGV4cGVuc2l2ZSwgYnV0IGl0IHdvcmtzIHZlcnkgd2VsbC4gSG93ZXZlciwgaWYgeW91J3JlIGxvb2tpbmcgZm9yIG1vcmUgY29zdC1lZmZlY3RpdmUgb3B0aW9ucywgd2UgcmVjZW50bHkgZGlzY292ZXJlZCB0d28gb3RoZXIgdHJhbnNmZWN0aW9uIHJlYWdlbnRzLCBKZXQgT3B0aW11cyBhbmQgSmV0IFByaW1lLCB3aGljaCBhcmUgbXVjaCBjaGVhcGVyIGFuZCBhbHNvIHdvcmsgcXVpdGUgd2VsbC4gVGhhdCBzYWlkLCBJIHdvdWxkIGFkdmlzZSBhZ2FpbnN0IHN0YXJ0aW5nIHdpdGggYW55IG9mIHRoZSBjaGVhcGVyIHRyYW5zZmVjdGlvbiByZWFnZW50czsgeW91IHJlYWxseSBuZWVkIHRvIGFpbSBmb3IgaGlnaCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gQWx3YXlzIG1ha2Ugc3VyZSB0byBtZWFzdXJlIGFuZCByZXBvcnQgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgZm9yIGV2ZXJ5IGV4cGVyaW1lbnQgYmVjYXVzZSBpZiBpdCdzIGxvdywgdGhlIGV4cGVyaW1lbnQgbWlnaHQgbm90IHlpZWxkIHVzZWZ1bCByZXN1bHRzLiBJZiB5b3UgaGF2ZSB0aGUgZnVuZHMgb3IgcmVzb3VyY2VzLCBJIHdvdWxkIGFsc28gcmVjb21tZW5kIGRlc2lnbmluZyBQMyBvciBldmVuIFAzYiBndWlkZXMsIGFzIHRoZXkgbWlnaHQgb2ZmZXIgYmV0dGVyIGVmZmljaWVuY3kuIFdoZW4gaXQgY29tZXMgdG8gZGVzaWduaW5nIFAzYiBndWlkZXMsIGlmIHlvdSdyZSBwcmltYXJpbHkgZm9jdXNlZCBvbiBQMiByaWdodCBub3csIHRoZXJlIGFyZSBzb21lIHNwZWNpZmljIGNvbnNpZGVyYXRpb25zIHRvIGtlZXAgaW4gbWluZC4gSSdsbCBwcm92aWRlIHlvdSB3aXRoIGEgc2l0ZSB0aGF0IGNhbiBoZWxwIHdpdGggdGhpcywgYW5kIEknbGwgZ2l2ZSB5b3UgdGhlIGxpbmsgaW4ganVzdCBhIG1vbWVudC4gU28sIGl0J3MgdmVyeSBhZHZpc2FibGUgdG8gY2hlY2sgdGhlIERvZW5jaCBzY29yZS4gRG8geW91IGtub3cgd2hhdCBpdCBpcz9cIi8+XG4gICAgICA8UWFCb3ggcT1cIk5vLCBub3QgcmVhbGx5LlwiIGE9XCJUaGVyZSBhcmUgcGFwZXJzIGJ5IEpvaG4gRG9lbmNoLCBhbiBBbWVyaWNhbiByZXNlYXJjaGVyLCBmcm9tIHF1aXRlIGEgd2hpbGUgYWdvIHRoYXQsIGluIG15IG9waW5pb24sIGFyZSBzb21lIG9mIHRoZSBiZXN0IGFyb3VuZC4gSGUgZGV2ZWxvcGVkIGEgY29tcHJlaGVuc2l2ZSBzY29yaW5nIG1hdHJpeCBzcGVjaWZpY2FsbHkgZm9yIHJlZ3VsYXIgQ2FzOSB0aGF0IGNhbiBldmFsdWF0ZSB0aGUgcXVhbGl0eSBvZiB0aGUgc3BhY2VyIGluIHlvdXIgZ3VpZGUgUk5BLiBUaGlzIGlzIGltcG9ydGFudCBiZWNhdXNlIENhczkgdGVuZHMgdG8gcHJlZmVyIGNlcnRhaW4gc2VxdWVuY2VzIG92ZXIgb3RoZXJzLiBGb3IgaW5zdGFuY2UsIGEgZ29vZCBzcGFjZXIgc2hvdWxkIGhhdmUgYW4gYXBwcm9wcmlhdGUgR0MgY29udGVudCBhbmQgc2hvdWxkIGF2b2lkIGhhaXJwaW5zIHRoYXQgbWlnaHQgY2F1c2UgaXQgdG8gZm9sZCBpbiBvbiBpdHNlbGYsIHdoaWNoIHdvdWxkIHByZXZlbnQgaXQgZnJvbSBmdW5jdGlvbmluZyBwcm9wZXJseS4gWW91IGNhbiB1c2UgdGhpcyBtYXRyaXggdG8gZ2l2ZSBhIHNjb3JlIGZvciB0aGUgcXVhbGl0eSBvZiBhIGd1aWRlIFJOQS4gSVx1MjAxOW0gZ29pbmcgdG8gcHVsbCB1cCBhbiBleGFtcGxlIGhlcmUuIFRoZSBzaXRlIGZyb20gU3ludGhlZ28sIGEgY29tbWVyY2lhbCBwcm92aWRlciBvZiBDUklTUFIgcmVhZ2VudHMsIGFsbG93cyB5b3UgdG8gY2hlY2sgdGhlIHF1YWxpdHkgb2YgeW91ciBndWlkZS4gV2hlbiB5b3UgdmFsaWRhdGUgaXQsIHRoZSBzaXRlIGdpdmVzIGEgc2NvcmUgYmFzZWQgb24gdmFyaW91cyBmYWN0b3JzLCBpbmNsdWRpbmcgb2ZmLXRhcmdldCBlZmZlY3RzLCBhbHRob3VnaCB0aGF0IG1pZ2h0IG5vdCBiZSB5b3VyIHByaW1hcnkgY29uY2VybiBhdCB0aGUgbW9tZW50LiBJZiB5b3UgaG92ZXIgb3ZlciBhIHNwZWNpZmljIGFyZWEsIGl0IHdpbGwgc2hvdyB5b3UgdGhlIERvZW5jaCBTY29yZSwgd2hpY2ggaXMgY3J1Y2lhbC4gSWRlYWxseSwgeW91IHdhbnQgYSBndWlkZSB3aXRoIGEgZ29vZCBEb2VuY2ggU2NvcmUuIEEgZ29vZCBzY29yZSBzdGFydHMgYXQgYXJvdW5kIDAuNCwgaW5kaWNhdGVkIGJ5IGEgZ3JlZW4gY2hlY2sgbWFyayBmb3IgZ29vZCBlZmZpY2llbmN5LiBJZiB0aGUgc2NvcmUgaXMgdmVyeSBsb3csIGl0IG1lYW5zIHRoYXQgdGhlIGd1aWRlIGxpa2VseSBoYXMgbG93IENSSVNQUi1DYXM5IGFjdGl2aXR5IGFuZCBtYXkgbm90IGJlIHZlcnkgZWZmaWNpZW50LiBXaGVuIGRlc2lnbmluZyBwcmltZSBlZGl0aW5nIGd1aWRlcywgUk5BLCB3ZSBhbHdheXMgY2hlY2sgdGhlIHNwYWNlciBmb3IgYSBnb29kIERvZW5jaCBTY29yZS4gSWYgd2UgYXJlIGRlc2lnbmluZyBuaWNraW5nIGd1aWRlcyBmb3IgYSBQRTMgb3IgUEUzYiBzdHJhdGVneSwgd2UgYWxzbyBlbnN1cmUgdGhhdCB0aGV5IGhhdmUgYSBnb29kIHNjb3JlLiBUaGlzIGlzIG9uZSBvZiB0aGUgZWFzaWVzdCB0b29scyB0byBjaGVjayBmb3IgdGhhdC4gV2hlbmV2ZXIgcG9zc2libGUsIHRyeSB1c2luZyBQRTMuIEluIHNvbWUgY2FzZXMsIFBFMyBwZXJmb3JtcyBiZXR0ZXIgdGhhbiBQRTIsIHRob3VnaCBub3QgYWx3YXlzLiBQRTNiIG1pZ2h0IG5vdCBhbHdheXMgd29yayBlaXRoZXIsIGJ1dCBmb3IgbWFueSBtdXRhdGlvbnMsIHdlIGhhdmUgc2VlbiBzaWduaWZpY2FudCBpbmNyZWFzZXMgaW4gZWRpdGluZyBlZmZpY2llbmN5IGJ5IGluY2x1ZGluZyB0aGUgUEUzIGd1aWRlLlwiLz5cbiAgICAgIDxRYUJveCBxPVwiT2theSwgeWVhaCwgdGhhdCB3YXMgcXVpdGUgY2xlYXIgZnJvbSB5b3VyIHJlc3VsdHM7IHRoZSBkaWFncmFtIGlsbHVzdHJhdGVkIHRoYXQgdmVyeSB3ZWxsLiBBcmUgdGhlcmUgbW9yZSBvZmYtdGFyZ2V0IGVmZmVjdHMgd2hlbiB1c2luZyBQRTMgc2luY2UgeW91IGhhdmUgdG8gbWFrZSBhbm90aGVyIGN1dD9cIiBhPVwiSWYgeW91IGRlY2lkZSB0byB1c2UgUEUzLCBpdCdzIGltcG9ydGFudCB0byBiZSBhd2FyZSB0aGF0IHdoaWxlIGl0J3Mgbm90IGV4YWN0bHkgYW4gb2ZmLXRhcmdldCBpc3N1ZSwgdGhlcmUgaXMgYSByaXNrIG9mIGFuIHVuZGVzaXJlZCBvbi10YXJnZXQgb3V0Y29tZS4gVGhlIGNvbmNlcm4gd2l0aCByZWd1bGFyIFBFMyBpcyB0aGF0IGJvdGggc3RyYW5kcyBvZiBETkEgY2FuIGJlIG5pY2tlZCBzaW11bHRhbmVvdXNseSwgd2hpY2ggY2FuIGxlYWQgdG8gYSBzdGFnZ2VyZWQgZG91YmxlLXN0cmFuZCBicmVhay4gVGhpcyBjYW4gcmVzdWx0IGluIHRoZSBmb3JtYXRpb24gb2YgaW5kZWxzIChpbnNlcnRpb25zIG9yIGRlbGV0aW9ucykuIEluIHlvdXIgY2FzZSwgdGhpcyBtZWFucyB0aGF0IGlmIHRoZSByZWdpb24gYXJvdW5kIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uIGlzIGJyb2tlbiwgdGhlIHByaW1lIGVkaXRvciBtaWdodCBub3QgYmUgYWJsZSB0byByZXBhaXIgaXQgcHJvcGVybHksIGxlYWRpbmcgdG8gYWRkaXRpb25hbCBiYXNlIHBhaXJzIGJlaW5nIHJlbW92ZWQgb3IgYWRkZWQsIGFuZCB0aHVzLCB0aGUgc2VxdWVuY2UgbWlnaHQgYmUgYWx0ZXJlZCBpbiBhbiB1bmludGVuZGVkIHdheS4gVGhlIHJpc2sgb2Ygb24tdGFyZ2V0IGluZGVscyBpcyBkZWZpbml0ZWx5IGhpZ2hlciB3aXRoIFBFMyBjb21wYXJlZCB0byBQRTIuIEhvd2V2ZXIsIHRoaXMgcmlzayBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgUEUzYiwgd2hpY2ggZW1wbG95cyBzZXF1ZW50aWFsIG5pY2tpbmcuIFRoZSBQRTNiIG5pY2tpbmcgZ3VpZGVzIGFyZSBkZXNpZ25lZCB0byByZWNvZ25pemUgdGhlIHdpbGQtdHlwZSBzZXF1ZW5jZSwgYW5kIHRoZXkgY2FuIG9ubHkgbmljayB0aGUgb3Bwb3NpdGUgc3RyYW5kIGlmIHRoZSBjb3JyZWN0aW9uIGhhcyBhbHJlYWR5IGJlZW4gbWFkZSBvbiB0aGUgdG9wIHN0cmFuZC4gVGhpcyBzZXF1ZW50aWFsIGFjdGlvbiBoZWxwcyB0byBhdm9pZCB0aGUgZ2VuZXJhdGlvbiBvZiBpbmRlbHMuIEludHJvZHVjaW5nIGEgc2Vjb25kIGd1aWRlIGludG8gdGhlIHN5c3RlbSBhbHNvIGJyaW5ncyB0aGUgcG9zc2liaWxpdHkgb2Ygb2ZmLXRhcmdldCBlZGl0aW5nIGJ5IHRoYXQgZ3VpZGUgaG93ZXZlciwgc2luY2Ugb25seSBhIENhczkgbmlja2FzZSBpcyB1c2VkLCBvZmYtdGFyZ2V0IGluZGVscyBzaG91bGQgYmUgbGltaXRlZC5cIi8+XG4gICAgICA8UWFCb3ggcT1cIlllcywgb2theSwgdGhhbmsgeW91LiBEbyB5b3UgaGF2ZSB0aW1lIGxlZnQsIG9yIGFyZSB3ZSBvdXQgb2YgdGltZT9cImE9XCIgSXQncyBmaW5lLlwiLz5cbiAgICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBtb3JlIG9yIGxlc3Mgb25lIGxhc3QgcXVlc3Rpb24uIElmIGl0XHUyMDE5cyBub3QgcG9zc2libGUsIHRoYXRcdTIwMTlzIGNvbXBsZXRlbHkgZmluZS4gV2UganVzdCB3YW50ZWQgdG8gYXNrIGlmIHlvdSBjb3VsZCBwb3NzaWJseSBmb3J3YXJkIHRoZSBjb250YWN0IGRldGFpbHMgZm9yIHRoZSBVc3NpbmcgY2hhbWJlciBzZXR1cCBpbiBQYXJpcyB0aGF0IHlvdSBtZW50aW9uZWQgaW4geW91ciBlbWFpbC4gV291bGQgdGhhdCBiZSBwb3NzaWJsZT9cIiBhPVwiWW91IGNhbiBjZXJ0YWlubHkgdHJ5IHRvIGNvbnRhY3QgdGhlbSwgYnV0IEkgYWN0dWFsbHkga25vdyB0aGF0IHRoZXJlIGFyZSBxdWl0ZSBnb29kIGxhYnMgaW4gR2VybWFueSB0aGF0IHdvcmsgb24gc2ltaWxhciB0aGluZ3MuIFxuICAgICAgICBPbmUgbWFqb3IgZHJhd2JhY2sgZm9yIHlvdSBtaWdodCBiZSB0aGUgdGltZSBpdCB0YWtlcyB0byBkaWZmZXJlbnRpYXRlIGNlbGxzLiBJZiB5b3UgaGFydmVzdCBzdGVtIGNlbGxzIG9yIGJhc2FsIGNlbGxzIGZyb20gcGF0aWVudHMsIHRoZXkgd2lsbCBoYXZlIHRoZSBDRlRSIGdlbmUsIGJ1dCB0aGV5IGRvblx1MjAxOXQgZXhwcmVzcyBpdCBpbW1lZGlhdGVseS4gSXQgdGFrZXMgYWJvdXQgZm91ciB3ZWVrcyBmb3IgdGhlbSB0byBkaWZmZXJlbnRpYXRlIGFuZCBzdGFydCBwcm9kdWNpbmcgdGhlIENGVFIgcHJvdGVpbi4gV2l0aG91dCB0aGlzIGRpZmZlcmVudGlhdGlvbiwgeW91IGNhbid0IG1lYXN1cmUgdGhlIGN1cnJlbnRzLCB3aGljaCBjb3VsZCBzbG93IHlvdSBkb3duIHNpZ25pZmljYW50bHkuIEknbSBub3Qgc3VyZSBpZiB5b3UgaGF2ZSB0aGF0IGtpbmQgb2YgdGltZS4gXG4gICAgICAgIElmIEkgY2FuIGdpdmUgeW91IG9uZSBwaWVjZSBvZiBhZHZpY2U6IGl0XHUyMDE5cyBsZXNzIHBoeXNpb2xvZ2ljYWwsIGJ1dCBpdFx1MjAxOXMgc3RpbGwgYW4gYWNjZXB0ZWQgYXNzYXlcdTIwMTR0cnkgaXQgb24gb3JnYW5vaWRzLiBXZSBjb3VsZCBhY3R1YWxseSBwZXJmb3JtIGJvdGggYXNzYXlzIGhlcmUuIElmIHlvdSBmaW5kIGd1aWRlcyB0aGF0IHdvcmsgcmVhbGx5IHdlbGwsIHdlIGNvdWxkIGNvbnNpZGVyIGRvaW5nIHRob3NlIHRlc3RzIGhlcmUuIFNvbWVvbmUgY291bGQgY29tZSBvdmVyLCBvciB3ZSBjb3VsZCBkbyB0aGUgZXhwZXJpbWVudHMgaWYgdGhleVx1MjAxOXJlIG5vdCB0b28gZXhwZW5zaXZlIGFuZCBoYXZlIGEgZ29vZCBjaGFuY2Ugb2Ygd29ya2luZy4gSSB0aGluayB3ZSB3b3VsZG5cdTIwMTl0IG1pbmQgYWRkaW5nIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uIHRvIG91ciBsaXN0IG9mIGVkaXRhYmxlIG11dGF0aW9ucy4gXG4gICAgICAgIFRoZXJlXHUyMDE5cyBhbHNvIHRoZSBwb3NzaWJpbGl0eSB0aGF0IGlmIHRoZSBwYXBlciBmcm9tIHRoZSBMaXUgTGFiIGlzIHB1Ymxpc2hlZCB3aXRoaW4gdGhlIG5leHQgbW9udGgsIHlvdSBjb3VsZCBqdXN0IHVzZSB0aGUgZ3VpZGUgdGhleSBwcm92aWRlLCBhbmQgeW91XHUyMDE5ZCBoYXZlIGEgZ3VpZGUgdGhhdCBpcyBrbm93biB0byB3b3JrLiBcIi8+XG4gICAgICA8UWFCb3ggcT1cIlllYWgsIHNvIEkgdGhpbmsgaWYgb3VyIGd1aWRlcyBkb25cdTIwMTl0IHdvcmsgYXMgd2VsbCBhcyB3ZSBob3BlLCB0aGlzIGNvdWxkIGJlIGFuIG9wcG9ydHVuaXR5LiBXZSBzdGlsbCB3YW50IHRvIGV4cGxvcmUgb3B0aW1pemF0aW9uIG9mIHRoZSBwcmltZSBlZGl0aW5nIHN5c3RlbSwgc3VjaCBhcyB0cnlpbmcgZGlmZmVyZW50IHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgb3Igb3RoZXIgbWV0aG9kcy4gRm9yIG5vdywgd2VcdTIwMTlkIGxpa2UgdG8gdHJ5IGl0IG9uIG91ciBvd24sIGJ1dCBsaWtlIHlvdSBzYWlkLCBpdFx1MjAxOXMgZ29vZCB0byBoYXZlIHRoaXMgb3Bwb3J0dW5pdHkgaW4gY2FzZSBpdCBkb2Vzblx1MjAxOXQgd29yayBvdXQuXCJhPVwiWWVhaCwgSSB0aGluayB3b3JraW5nIHdpdGggcGF0aWVudCBjZWxscyBpcyBvbmUgdGhpbmcsIGJ1dCBqdXN0IGJlIGF3YXJlIHRoYXQgdGhlc2UgbW9kZWxzIGFuZCBhc3NheXMgdHlwaWNhbGx5IHRha2UgYSBsb3Qgb2YgdGltZVx1MjAxNGVhc2lseSBoYWxmIGEgeWVhciwgYW5kIHRoYXRcdTIwMTlzIGNvbnNpZGVyZWQgZmFzdCB0byBnZXQgdGhlbSB1cCBhbmQgcnVubmluZy4gVW5sZXNzIHlvdSdyZSBpbiBhIGxhYiB0aGF0IGFscmVhZHkgaGFzIGV4cGVyaWVuY2Ugd2l0aCBncm93aW5nIG9yZ2Fub2lkcywgaXQgY291bGQgYmUgdmVyeSBjaGFsbGVuZ2luZyB0byBzdGFydCBmcm9tIHNjcmF0Y2guIFxuICAgICAgICBIb3dldmVyLCB5b3UgY2FuIGFsd2F5cyB0cnkuIFRoZSB0ZWFtIGluIFBhcmlzIHRoYXQgd2Uga25vdyB2ZXJ5IHdlbGxcdTIwMTR0aGV5IGFyZSBpbmNyZWRpYmx5IGtpbmQsIHdvcmxkLWNsYXNzIGV4cGVydHMgaW4gd2hhdCB0aGV5IGRvLCBidXQgdGhleSBhcmUgYWxzbyB1bmRlciBhIGxvdCBvZiBwcmVzc3VyZS4gVGhleSB1c2UgdGhlc2UgdGVjaG5vbG9naWVzIG5vdCBvbmx5IGZvciByZXNlYXJjaCBidXQgYWxzbyB0byBkaWFnbm9zZSBwYXRpZW50cy4gV2hhdCB0aGUgRnJlbmNoIHRlYW0gaGFzIG1hbmFnZWQgdG8gZG8gaXMgc2hvdyB0aGF0IGlmIGEgcGF0aWVudFx1MjAxOXMgY2VsbHMgcmVzcG9uZCB0byBjZXJ0YWluIGRydWdzLCB0aGUgZ292ZXJubWVudCBhbGxvd3MgdGhvc2UgZHJ1Z3MgdG8gYmUgYWRtaW5pc3RlcmVkIHRvIHRoZSBwYXRpZW50LiBZb3UgY2FuIGltYWdpbmUgaG93IGltcG9ydGFudCB0aGVzZSBleHBlcmltZW50cyBhcmUsIGFzIHRoZXkgY2FuIGRpcmVjdGx5IGltcGFjdCBwYXRpZW50cycgbGl2ZXMsIHdoaWNoIG5hdHVyYWxseSB0YWtlcyB0aGUgaGlnaGVzdCBwcmlvcml0eS5cIi8+XG4gICAgICA8UWFCb3ggcT1cIlllYWgsIHdlIHJlY29nbml6ZWQgdGhhdCB0b28uIFdlIHRhbGtlZCB3aXRoIHRoZSBDRiB0ZWFtIGF0IHRoZSBVbml2ZXJzaXR5IENsaW5pYyBpbiBNXHUwMEZDbnN0ZXIgYW5kIGFza2VkIGFib3V0IHVzaW5nIHRoZWlyIFVzc2luZyBjaGFtYmVyLCBidXQgdGhleSBhcmUgcmVhbGx5IG92ZXJ3b3JrZWQgd2l0aCBpdC4gVGhhdFx1MjAxOXMgd2h5IHdlIHJlYWNoZWQgb3V0IHRvIHlvdSBhYm91dCBpdC4gQnV0IGl0XHUyMDE5cyBjb21wbGV0ZWx5IGZpbmUsIGFzIHdlIG1lbnRpb25lZCBiZWZvcmUuXCIgYT1cIkknbSBnb2luZyB0byBwdXQgaXQgYmx1bnRseTogVXNzaW5nIGNoYW1iZXIgZXhwZXJpbWVudHMsIHdoaWxlIHRoZXkgYXJlIGhpZ2hseSByZWdhcmRlZCBhbmQgcHJvdmlkZSB2YWx1YWJsZSBkYXRhLCBhcmUgYSByZWFsIHBhaW4gdG8gcGVyZm9ybS4gVGhleSBhcmUgaW5jcmVkaWJseSB0aW1lLWNvbnN1bWluZyBhbmQgaGF2ZSBhIHZlcnkgbG93IHRocm91Z2hwdXQuIEEgdHlwaWNhbCBzZXR1cCBoYXMgZm91ciBjaGFtYmVycywgc28geW91IGFsd2F5cyBuZWVkIHRvIGRvIHJlcGVhdHMuIEluIHRoZSBiZXN0LWNhc2Ugc2NlbmFyaW8sIHlvdSBjYW4gdGVzdCB0d28gY29uZGl0aW9ucyBhdCBhIHRpbWUuIElmIHlvdSBoYXZlIGEgdmVyeSBleHBlcmllbmNlZCBwZXJzb24sIHRoZXkgbWlnaHQgYmUgYWJsZSB0byBydW4gZWlnaHQgc2FtcGxlcywgYnV0IHRoZXkgd291bGQgaGF2ZSB0byBzdGF5IHdpdGggdGhlIG1hY2hpbmUgZm9yIGZvdXIgdG8gZml2ZSBob3VycywgbWFpbnRhaW5pbmcgY29uc3RhbnQgYXR0ZW50aW9uLiBXaXRoIG11bHRpcGxlIHRlY2huaWNpYW5zLCBhcyBpcyB0aGUgY2FzZSBpbiBGcmFuY2UsIHlvdSBtaWdodCBtYW5hZ2UgdG8gcnVuIDE2IHNhbXBsZXMgYSBkYXkuIE9uIHRvcCBvZiB0aGF0LCB0aGUgY2VsbHMgbmVlZCB0byBiZSBkaWZmZXJlbnRpYXRlZCBwcm9wZXJseSwgYW5kIHlvdSBoYXZlIHRvIGtub3cgaG93IHRvIGhhbmRsZSB0aGVtIGNvcnJlY3RseS4gVGhlIG1lZGl1bSByZXF1aXJlZCBpcyB2ZXJ5IGV4cGVuc2l2ZSwgYW5kIHdvcmtpbmcgd2l0aCB0aGVzZSBjZWxscyBpcyBhbG1vc3QgbW9yZSBvZiBhbiBhcnQgdGhhbiBhIHNjaWVuY2UuIFlvdSBoYXZlIHRvIGtub3cgd2hlbiB0aGUgY2VsbHMgbG9vayAnaGFwcHknIG9yIG5vdCBiZWNhdXNlIHlvdSBkb24ndCB3YW50IHRvIHdhc3RlIHRpbWUgb24gY2VsbHMgdGhhdCBhcmVuJ3QgaW4gZ29vZCBjb25kaXRpb24uIEkndmUgcnVuIHF1aXRlIGEgZmV3IG9mIHRoZXNlIGFzc2F5cyBteXNlbGYsIGFuZCB3aGlsZSB0aGV5IGFyZSBncmVhdCBmb3IgQ0Ygd29yayBhbmQgcHJvdmlkZSByZXN1bHRzIHRoYXQgYXJlIHJlbGV2YW50IHRvIHBhdGllbnQgb3V0Y29tZXMsIHRoZXkgYXJlIHRlY2huaWNhbGx5IGNoYWxsZW5naW5nIGFuZCB2ZXJ5IGRlbWFuZGluZy4gSWYgeW91IHdhbnQgYSBmdW5jdGlvbmFsIG91dHB1dCB0byBzaG93IHRoYXQgdGhlIENGVFIgcHJvdGVpbiBpcyB3b3JraW5nIGFnYWluLCBJIHdvdWxkIHJlY29tbWVuZCBzdGFydGluZyB3aXRoIG9uZSBvZiB0aGUgZWFzaWVyIG1vZGVscywgbGlrZSBvcmdhbm9pZHMuIFdlIGFsc28gaGF2ZSBpbiBvdXIgbGFiIDE2SEJFIGNlbGxzIHdpdGggYSBZRlAgc2Vuc29yLiBJIGRvbid0IGtub3cgaWYgeW91J3ZlIGhlYXJkIG9yIHJlYWQgYWJvdXQgdGhhdC4gVGhlc2UgY2VsbHMgZXhwcmVzcyBZRlAsIHdoaWNoIGlzIHNlbnNpdGl2ZSB0byBoYWxpZGUgaW9ucywgaW5jbHVkaW5nIGNobG9yaWRlIGFuZCBpb2RpZGUuIFdoZW4geW91IGFkZCBhIGJ1ZmZlciBjb250YWluaW5nIHRoZXNlIGlvbnMgdG8gdGhlIGNlbGxzLCB0aGUgWUZQIGludGVuc2l0eSBxdWVuY2hlcy4gVGhpcyBpcyBzb21ldGhpbmcgd2UgdHlwaWNhbGx5IHVzZSBpbiBvdXIgZXhwZXJpbWVudHMuIEZvciB3aWxkLXR5cGUgY2VsbHMsIHlvdSBzZWUgYSByYXBpZCBhbmQgZHJhbWF0aWMgcXVlbmNoaW5nIGJlY2F1c2UgQ0ZUUiBhbGxvd3MgdGhlc2UgaW9ucyB0byBlbnRlciB0aGUgY2VsbHMuIEluIGNlbGxzIHdpdGggdGhlIG11dGF0aW9uLCB0aGVyZVx1MjAxOXMgbm8gcXVlbmNoaW5nIGJlY2F1c2UgdGhlIGNoYW5uZWwgaXNuXHUyMDE5dCB3b3JraW5nLiBXaGlsZSBpdFx1MjAxOXMgbGVzcyByZWxldmFudCBiZWNhdXNlIHRoZXNlIGFyZW4ndCBwYXRpZW50IGNlbGxzLCBpdFx1MjAxOXMgY2xvc2VyIHRvIHJlYWxpdHkuIFRoZSAxNkhCRSBjZWxsIGxpbmUgaXMgYW4gYWlyd2F5IGVwaXRoZWxpYWwgbGluZSwgYW5kIHRoZSBleHByZXNzaW9uIG9mIENGVFIgaXMgZW5kb2dlbm91cywgc28gaXRcdTIwMTlzIG5vdCBhdCB0aGUgZXhhZ2dlcmF0ZWQgbGV2ZWxzIHlvdSBtaWdodCBzZWUgaW4gbW9yZSBhcnRpZmljaWFsIG1vZGVscyBsaWtlIEhFSyBjZWxscy4gVXNpbmcgdGhlIFlGUCBhc3NheSBjb3VsZCBiZSBhIGdvb2QgYWx0ZXJuYXRpdmUgb3IgYSBQbGFuIEIgZm9yIGdldHRpbmcgYSBmdW5jdGlvbmFsIHJlYWRvdXQuIFRoaXMgYXNzYXkgaXMgbWVkaXVtIHRvIGhpZ2ggdGhyb3VnaHB1dFx1MjAxNHlvdSBjYW4gcnVuIGVudGlyZSA5Ni13ZWxsIHBsYXRlcyBpbiBhYm91dCBoYWxmIGFuIGhvdXIuIEFsbCB5b3UgbmVlZCBmb3IgdGhpcyBpcyB0aGUgY2VsbHMgYW5kIGEgcGxhdGUgcmVhZGVyIHRoYXQgY2FuIG1lYXN1cmUgZmx1b3Jlc2NlbmNlIGFuZCBpbmplY3QgdGhlIGJ1ZmZlci4gSWYgeW91IGRvblx1MjAxOXQgaGF2ZSBhIHBsYXRlIHJlYWRlciB3aXRoIGFuIGluamVjdGlvbiBzeXN0ZW0sIHlvdSBjYW4gYWxzbyBtYW51YWxseSBhZGQgdGhlIGJ1ZmZlciBhbmQgcXVpY2tseSBwbGFjZSB0aGUgcGxhdGUgaW4gdGhlIG1hY2hpbmUuIFwiLz5cbiAgICAgIDxRYUJveCBxPVwiWWVzLCB0aGF0IHNvdW5kcyBxdWl0ZSBnb29kLiBJIHRoaW5rIHdlXHUyMDE5bGwgZGVmaW5pdGVseSBjb25zaWRlciB0aGF0IGFzIGEgbWV0aG9kLiBcbiAgICAgICAgSWYgeW91IGhhdmUgYSBsaXR0bGUgbW9yZSB0aW1lLCBJIHdhbnRlZCB0byBhc2sgYWJvdXQgdGhlIHBlZ1JOQS4gWW91IHN0YWJpbGl6ZWQgaXQgd2l0aCBhIHN0ZW0gbG9vcCBvciBzb21lIGtpbmQgb2YgbW90aWYgaW4gdGhlIHBhcGVyLCBsaWtlIHRoZSB0cmV2b3ByZVExLiBEaWQgeW91IHRlc3Qgb3RoZXIgbW90aWZzIGFzIHdlbGwsIG9yLi4uPyBcIiBhPVwiWWVhaCwgdGhlcmUgd2FzIGFjdHVhbGx5IG9uZSBwdWJsaXNoZWQgYmVmb3JlIHRoZSBvbmUgZnJvbSB0aGUgTGl1IGxhYiwgYnV0IHdlIHRyaWVkIHRoYXQgb25lXHUyMDE0SSBjYW4ndCByZW1lbWJlciB0aGUgZXhhY3QgbmFtZSwgbWF5YmUgQ1NYNCBvciBzb21ldGhpbmcgbGlrZSB0aGF0LiBJdCBkaWRuXHUyMDE5dCBldmVuIG1ha2UgaXQgaW50byB0aGUgbWFpbiBwYXBlcnMsIGp1c3QgdGhlIHN1cHBsZW1lbnRhcnkgbWF0ZXJpYWwuIFRoZSBwcmluY2lwbGUgd2FzIHNpbWlsYXIsIGFuZCBhY2NvcmRpbmcgdG8gdGhlIHBhcGVyLCBpdCBzaG91bGQgaGF2ZSB3b3JrZWQuIEkgdGVzdGVkIGl0IG9uIHR3byBvciB0aHJlZSBndWlkZXMsIGxvY2F0aW9ucywgb3IgbXV0YXRpb25zLCBidXQgaXQgZGlkblx1MjAxOXQgd29yay4gSG93ZXZlciwgdGhlIHRyZXZvcHJlUTEgb25lIGRlZmluaXRlbHkgd29ya3MuIFxuICAgICAgICBBbHNvLCBzb21ldGhpbmcgdG8gbm90ZSBpcyB0aGF0IHRoZXNlIG1vdGlmcyBiZWNvbWUgbW9yZSBpbXBvcnRhbnQgd2hlbiB5b3UgbW92ZSB0byBwcmltYXJ5IGNlbGxzLCB3aGVyZSB5b3UgaGF2ZSBmZXdlciBndWlkZXMuIEluIHRyYW5zZmVjdGlvbiBleHBlcmltZW50cywgd2hlcmUgeW91XHUyMDE5cmUgZXNzZW50aWFsbHkgZmxvb2RpbmcgdGhlIGNlbGxzIHdpdGggcGxhc21pZHMgdGhhdCB0cmFuc2NyaWJlIGxhcmdlIGFtb3VudHMgb2YgdGhlc2UgZ3VpZGVzLCB0aGUgcHJvdGVjdGlvbiBvZiB0aGUgdGhyZWUtcHJpbWUgZW5kIGlzblx1MjAxOXQgYXMgY3JpdGljYWwuIEJ1dCBpbiBwcmltYXJ5IGNlbGxzLCB3aGVyZSB0aGVyZSBhcmUgbW9yZSBudWNsZWFzZXMgYW5kIHlvdSBsaWtlbHkgaGF2ZSBsZXNzIHBlZ1JOQSBkdWUgdG8geW91ciBkZWxpdmVyeSBtZXRob2QsIHRoaXMgcHJvdGVjdGlvbiBiZWNvbWVzIG1vcmUgaW1wb3J0YW50LiBUaGUgcGFwZXIgZG9lcyBkaXNjdXNzIHRoZSB0cmV2b3ByZVExIG9uZSBhbmQgdE1QSyBrbm90LCBidXQgZHVlIHRvIHRpbWUgY29uc3RyYWludHMsIHdlIG9ubHkgdGVzdGVkIG9uZSBhbmQgZGlkblx1MjAxOXQgbG9vayBpbnRvIHRoZSBvdGhlci4gXG4gICAgICAgIEkgdGhpbmsgdGhlIGFkdmFudGFnZSBvZiB0aGUgb25lIHdlIGluY2x1ZGVkIGluIHRoZSBwYXBlciB3YXMgdGhhdCB0aGV5IGFsc28gaW52ZXN0aWdhdGVkIHdoZXRoZXIgaXQgd2FzIG5lY2Vzc2FyeSB0byBpbmNsdWRlIGEgbGlua2VyIGJldHdlZW4gdGhlIG1vdGlmXHUyMDE0bGlrZSB0aGUgdHJldm9wcmVRMVx1MjAxNGFuZCB0aGUgcGVnUk5BIHdpdGggdGhlIHRocmVlLXByaW1lIGV4dGVuc2lvbi4gRm9yIHRoZSBtb3RpZiB3ZSBjaG9zZSwgdGhleSBmb3VuZCB0aGF0IHRoZSBsaW5rZXIgd2Fzblx1MjAxOXQgcmVhbGx5IG5lY2Vzc2FyeSwgd2hlcmVhcyBpdCB3YXMgZm9yIHRoZSBvdGhlciBvbmUuIFRvIGtlZXAgaXQgc2ltcGxlLCB3ZSBjaG9zZSB0aGUgb25lIHdpdGhvdXQgdGhlIG5lZWQgZm9yIGEgbGlua2VyIGJlY2F1c2UsIGZvciBtYW55IHNpdGVzLCB0aGUgZWZmaWNpZW5jaWVzIHdlcmUgY29tcGFyYWJsZS4gXG4gICAgICAgIElmIHdlIGhhZCBpbmZpbml0ZSB0aW1lIGFuZCByZXNvdXJjZXMsIGl0IHdvdWxkIGRlZmluaXRlbHkgYmUgd29ydGh3aGlsZSB0byB0ZXN0IGJvdGggbW90aWZzLiBUaGUgcGFwZXIgZGlkIHNob3cgc29tZSBleGFtcGxlcyB3aGVyZSBvbmUgbW90aWYgd2FzIGNsZWFybHkgYmV0dGVyIHRoYW4gdGhlIG90aGVyLiBCdXQgbm8sIHdlIGRpZG5cdTIwMTl0IGhhdmUgdGhlIHRpbWUgdG8gZXhwbG9yZSB0aGF0IGZ1cnRoZXIuIFwiLz4gXG4gICAgICA8UWFCb3ggcT1cIk9rYXkuICBUaGFuayB5b3UuICBCdXQgbGlrZSBpdCdzIHNob3duIGluIHRoZSBwYXBlciwgaXQgd29ya2VkIHF1aXRlIHdlbGwuICBSaWdodC4gIFllYWguIFwiIGE9XCJUaGVyZSB3YXMgZGVmaW5pdGVseSBhZGRlZCB2YWx1ZS4gV2hlbiB3ZSBtb3ZlZCB0byBvcmdhbm9pZHMsIHRoZSBlZmZlY3RzIG9mIGFkZGluZyB0aGF0IG1vdGlmIHdlcmUgcXVpdGUgZHJhbWF0aWMgYW5kIHZlcnkgY2xlYXIuIFwiLz4gXG4gICAgICA8UWFCb3ggcT1cIlllcywgdGhhdCB3YXMgb3VyIGxhc3QgcXVlc3Rpb24uIFRoYW5rIHlvdSBzbyBtdWNoIGFnYWluIGZvciBoYXZpbmcgbWUuIFdlIHJlYWxseSBhcHByZWNpYXRlIHRoZSB0aW1lIHlvdSB0b29rIGZvciB1cywgYW5kIGFsc28gZm9yIHlvdXIgdmVyeSBkZXRhaWxlZCBhbnN3ZXJzIGFuZCB5b3VyIGhlbHAuXCIgYT1cIk5vIHByb2JsZW0uIE15IHBsZWFzdXJlLlwiLz4gXG4gICAgICA8UWFCb3ggcT1cIlRoYW5rIHlvdSBzbyBtdWNoLiBXZSB3aWxsIGRlZmluaXRlbHkga2VlcCB5b3UgdXBkYXRlZCBvbiBob3cgaXQgZ29lcy4gVGhhbmsgeW91IGFnYWluISBcImE9XCJJdCB3YXMgYSBwbGVhc3VyZVwiLz4gXG4gICAgICAgPC8+LFxuICAgIHJlZmVyZW5jZXM6IDxNYXR0aWpzSW50ZXJ2aWV3U291cmNlcyAvPixcbiAgICBzdW1tYXJ5OiBcIk91ciBkaXNjdXNzaW9uIHdpdGggTWF0dGlqcyBCdWxjYWVuIGZyb20gS1UgTGV1dmVuIHByb3ZpZGVkIGNyaXRpY2FsIGluc2lnaHRzIGludG8gdGhlIGNvbXBsZXhpdGllcyBvZiB1c2luZyBwcmltZSBlZGl0aW5nIGZvciBDRiB0aGVyYXB5LiBBcyB3ZSBiZWdhbiBkZXNpZ25pbmcgb3VyIHByaW1lIGVkaXRvciwgTWF0dGlqcyBoaWdobGlnaHRlZCBjaGFsbGVuZ2VzIHNwZWNpZmljIHRvIHRhcmdldGluZyB0aGUgQ0ZUUiBGNTA4ZGVsIGRlbGV0aW9uLCBpbmNsdWRpbmcgdGhlIGluZmx1ZW5jZSBvZiBtaXNtYXRjaCByZXBhaXIgc3lzdGVtcyBhbmQgY2hyb21hdGluIG9yZ2FuaXphdGlvbiBvbiBlZGl0aW5nIGVmZmljaWVuY3kuIEhlIGludHJvZHVjZWQgdXMgdG8gYWR2YW5jZWQgdGVjaG5pcXVlcywgc3VjaCBhcyBQRTNiIHN5c3RlbXMgYW5kIGRzZ1JOQXMsIGFuZCByZWNvbW1lbmRlZCB1c2luZyB0aGUgM1x1MjAxOSBzdGVtIGxvb3AgbW90aWYgZnJvbSBoaXMgcmVzZWFyY2ggdG8gZW5oYW5jZSBvdXIgcGVnUk5BIGRlc2lnbi4gQWRkaXRpb25hbGx5LCBoZSBhZHZpc2VkIHV0aWxpemluZyBIRUsgY2VsbCBsaW5lcyBmb3Igc2NyZWVuaW5nIGR1ZSB0byB0aGVpciBlYXNlIG9mIGhhbmRsaW5nIGFuZCByZWR1Y2VkIG1pc21hdGNoIHJlcGFpciBhY3Rpdml0eS4gVGhlc2UgaW5zaWdodHMgZGlyZWN0bHkgaW5mbHVlbmNlZCBvdXIgZGVzaWduIGNob2ljZXMgYW5kIGhlbHBlZCByZWZpbmUgb3VyIGFwcHJvYWNoIHRvIGRldmVsb3BpbmcgYW4gZWZmZWN0aXZlIHByaW1lIGVkaXRpbmcgc3RyYXRlZ3kuXCIsXG4gICAgbW9udGhzOiBcImp1bmVcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJJbnRlZ3JhdGUgSW5zaWdodHNcIixcbiAgICBuYWNobm5hbWU6IFwiXCIsXG4gICAgcGljdHVyZXVybDogcGljc1sncGxhY2Vob2xkZXInXSxcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXG4gICAgdGFnOiBcIk1pbGVzdG9uZVwiLFxuICAgIGhlYWRpbmc6IFwiR2V0dGluZyBBY3F1YWludGVkIHdpdGggQ3lzdGljIEZpYnJvc2lzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaW5pc2dodHNcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIktcdTAwRjZobGVyLCBUZWFtbWVtYmVyXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIlZlcmFcIixcbiAgICBxdW90ZTogXCJGaXJzdGx5LCB3ZSBkaXNjdXNzZWQgdmFyaW91cyBwcm9qZWN0IGlkZWFzLCBpbmNsdWRpbmcgdGhlIHVzZSBvZiBtYWduZXRpYyBtaWNyb3N3aW1tZXJzIGZvciB0YXJnZXRlZCBtZWRpY2FsIGFwcGxpY2F0aW9ucywgZ2VuZSBlZGl0aW5nIGFwcHJvYWNoZXMgZm9yIGN5c3RpYyBmaWJyb3NpcywgdHJlYXRtZW50cyBmb3IgbXVzY3VsYXIgZHlzdHJvcGh5IGFuZCBjb21iYXRpbmcgY3lhbm9iYWN0ZXJpYSB3aXRoIGFsZ2FlLlwiLFxuICAgIHR5cGU6IFwibWV0YVwiLFxuICAgIHN1bW1hcnk6IFwiXCIsXG4gICAgbW9udGhzOiBcImp1bmVcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCInRGVyIFRldXRvIHJ1ZnQnXCIsXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3RldXRvJ10sXG4gICAgdGFnOiBcIkVkdWNhdGlvblwiLFxuICAgIGhlYWRpbmc6IFwiRWR1Y2F0aW9uYWwgY2l0eSB0b3VyIGZvciB5b3VuZyBhbmQgb2xkXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwidGV1dG9cIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIlNhaGFtaSBNb2doYWRkYW0sIFRlYW1tZW1iZXJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiQXNhbFwiLFxuICAgIHF1b3RlOiBcIkkgaGFkIGEgZ3JlYXQgdGltZSBlZHVjYXRpbmcgdGhlIGtpZHMgYWJvdXQgZ2VuZSB0aGVyYXB5IGFuZCBDRiBpbiBhIHBsYXlmdWwgd2F5LCBhbmQgdGhlcmUgd2VyZSBzb21lIHZlcnkgaW50ZXJlc3RpbmcgY29udmVyc2F0aW9ucyB3aXRoIHRoZSBwYXJlbnRzLlwiLFxuICAgIHN1bW1hcnk6IFs8cD5cIkRlciBUZXV0byBydWZ0IVwiW0xJbmsgenUgVGV1dG8gdW50ZW5dIGlzIGEgY29tbXVuaXR5IGV2ZW50IGluIEJpZWxlZmVsZCB3aGVyZSBpR0VNIEJpZWxlZmVsZCBwYXJ0aWNpcGF0ZWQgdG8gcmFpc2UgYXdhcmVuZXNzIGFib3V0IGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGFuZCBnZW5lIHRoZXJhcHkuIFRoZXkgZW5nYWdlZCBjaGlsZHJlbiB0aHJvdWdoIGludGVyYWN0aXZlIGV4cGVyaW1lbnRzLCBzdWNoIGFzIGNyZWF0aW5nIGx1bmcgbW9kZWxzIGFuZCBzaW11bGF0aW5nIG11Y3VzIHRvIGhlbHAgdGhlbSB1bmRlcnN0YW5kIHRoZSBjaGFsbGVuZ2VzIGZhY2VkIGJ5IENGIHBhdGllbnRzLiBBZHVsdHMgd2VyZSBpbmZvcm1lZCBhYm91dCB0aGVpciBnZW5lIHRoZXJhcHkgcHJvamVjdCBhbmQgaGFkIG1lYW5pbmdmdWwgZGlzY3Vzc2lvbnMgYWJvdXQgdGhlIGltcGxpY2F0aW9ucyBvZiBDRiB0cmVhdG1lbnQuIENvbGxhYm9yYXRpbmcgd2l0aCBvdGhlciBpbnN0aXR1dGlvbnMgbGlrZSB0aGUgbGlmZSBzY2llbmNlIHN0dWRlbnQgaW5pdGlhdGl2ZSBidFMsIHRoZSB0ZWFtIGV4cGFuZGVkIHRoZWlyIG91dHJlYWNoLiBEZXNwaXRlIGNoYW5nZWFibGUgd2VhdGhlciwgdGhlIGV2ZW50IHdhcyBhIHN1Y2Nlc3MgaW4gZWR1Y2F0aW5nIHRoZSBwdWJsaWMgYW5kIGltcHJvdmluZyBzY2llbmNlIGNvbW11bmljYXRpb24uPC9wPl0sXG4gICAgbW9udGhzOiBcIkp1bmVcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJKdWxpYVwiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBqb2I6IFwicGFyZW50XCIsXG4gICAgYWZmaWxpYXRpb246IFwiaW5kZXBlbmRlbnRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydqdWxpYSddLFxuICAgIHRhZzogXCJQYXRpZW50XCIsXG4gICAgaGVhZGluZzogXCJJbnRlcnZpZXcgd2l0aCBhIENGIFBhcmVudCBhYm91dCB0aGVpciBleHBlcmllbmNlIGFuZCB0cmVhdG1lbnQgbmVlZHNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJqdWxpYVwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCIsIE1vdGhlciBvZiBhIENGIHBhdGllbnRcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiSnVsaWFcIixcbiAgICBxdW90ZTogXCJBdCBmaXJzdCwgb3VyIHdvcmxkIGZlbGwgYXBhcnQuIEkgc3RpbGwgcmVtZW1iZXIgdGhlIGNvbnZlcnNhdGlvbiB3aXRoIHRoZSBkb2N0b3IuIFwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPldlIGxlYXJuZWQgZnJvbSBvdXIgZGlzY3Vzc2lvbiB3aXRoIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwibWF4Zmlyc3RcIiB0ZXh0PVwiTWF4XCIgLz4gdGhhdCBDRiBoYXMgYSBwcm9mb3VuZCBpbXBhY3Qgb24gdGhlIHdob2xlIGZhbWlseSBcdTIwMTMgbm90IGp1c3QgdGhlIHBhdGllbnQuIEluIG9yZGVyIHRvIGdhaW4gZnVydGhlciBpbnNpZ2h0IGludG8gdGhpcyBzdWJqZWN0LCB3ZSBzb3VnaHQgdG8gZW5nYWdlIHdpdGggdGhlIG5leHQgb2Yga2luIG9mIENGIHBhdGllbnRzLlxuICAgICAgV2Ugd2VyZSBhYmxlIHRvIG1ha2UgY29udGFjdCB3aXRoIEp1bGlhIHRocm91Z2ggdGhlIHNlbGYtaGVscCBncm91cCBvZiA8YSBocmVmPVwiaHR0cHM6Ly93d3cubXVrby5pbmZvLyBcIiA+TXVrdmlzemlkb3NlIGUuVi4gPC9hPiBvZiB3aGljaCBNYXggaXMgYSBtZW1iZXIuIFNoZSBzdWJzZXF1ZW50bHkgcmVhY2hlZCBvdXQgdG8gdXMgZm9sbG93aW5nIE1heCdzIHJlcXVlc3QgZm9yIHBvdGVudGlhbCBjYW5kaWRhdGVzIGZvciBhbiBpbnRlcnZpZXcgd2l0aCBhIHBhdGllbnQgZ3JvdXAuXG4gICAgICBTaGUgYW5kIGhlciBodXNiYW5kIGhhdmUgYSBzaXgteWVhci1vbGQgZGF1Z2h0ZXIgY2FycnlpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gdGhlIENGVFIgZ2VuZSBhbmQgYSB0b2RkbGVyIHdpdGhvdXQgQ0YuICA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPiBUaGUgaW50ZXJ2aWV3IHdpdGggSnVsaWEgc2hpZnRlZCBvdXIgZm9jdXMgdG8gYSBuZXcgZ3JvdXAgb2Ygc3Rha2Vob2xkZXJzOiBUaGUgcGF0aWVudFx1MjAxOXMgc3VwcG9ydCBzeXN0ZW1zLiBNb3N0IHBlb3BsZSBkbyBub3QgZ2V0IGdlbmV0aWNhbGx5IHRlc3RlZCBiZWZvcmUgaGF2aW5nIGNoaWxkcmVuIGFuZCBkdWUgdG8gdGhhdCwgbWFueSBwZW9wbGUgY291bGQgZ2V0IGluIHRoZSBwb3NpdGlvbiBvZiBoYXZpbmcgYSBsb3ZlZCBvbmUgd2l0aCBDRi5cbiAgICAgIFdlIGNvbnNpZGVyZWQgdGhlIHNvY2lldGFsIGltcGFjdHMsIHN1Y2ggYXMgdGhlIHJpc2luZyBoZWFsdGggY2FyZSBjb3N0cywgd2hpY2ggTmljb2xlIEZyaWVkbGVpbiBlbXBoYXNpemVkIGR1cmluZyBvdXIgaW50ZXJ2aWV3LiBTaGUgZXhwbGFpbmVkIGhvdyB0aGUgbG9uZy10ZXJtIG5hdHVyZSBvZiB0cmVhdG1lbnQsIGZyZXF1ZW50IGhvc3BpdGFsIHZpc2l0cywgYW5kIHRoZSBuZWVkIGZvciBzcGVjaWFsaXplZCBtZWRpY2F0aW9ucyBwbGFjZSBhIHNpZ25pZmljYW50XG4gICAgICBmaW5hbmNpYWwgYnVyZGVuIG9uIGJvdGggcGF0aWVudHMgYW5kIHRoZSBoZWFsdGggY2FyZSBzeXN0ZW0uIFRoaXMgaW5zaWdodCBzaGFwZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGJyb2FkZXIgZWNvbm9taWMgY2hhbGxlbmdlcyBmYWNlZCBieSBmYW1pbGllcyBhbmQgaW5zdGl0dXRpb25zIGludm9sdmVkIGluIG1hbmFnaW5nIGNocm9uaWMgaWxsbmVzc2VzLiBNZWFud2hpbGUsIEp1bGlhIGJyb3VnaHQgYXR0ZW50aW9uIHRvIHRoZSBwc3ljaG9sb2dpY2FsIGltcGFjdCxcbiAgICAgIHN0cmVzc2luZyB0aGUgZW1vdGlvbmFsIHN0cmFpbiB0aGF0IGFjY29tcGFuaWVzIG5vdCBvbmx5IHRoZSBpbGxuZXNzIGl0c2VsZiBidXQgYWxzbyB0aGUgZmluYW5jaWFsIHByZXNzdXJlcy4gU2hlIGFsc28gc2hvd2VkIHVzIG1vcmUgcGVyc3BlY3RpdmVzIG9uIHBhcmVudGluZyBvZiBjaGlsZHJlbiB3aXRoIENGLCB0aGFuIHdlIGhlYXJkIGJlZm9yZSwgYW5kIHRvbGQgdXMgYWJvdXQgdGhlIHdheSBmcm9tIHRoZSBmaXJzdCBkaWFnbm9zaXMgdG8gZ3Jvd2luZyBhY2N1c3RvbWVkXG4gICAgICB0byBhbmQgbGl2aW5nIHdpdGggYSBjaGlsZCB3aXRoIENGLiBKdWxpYSBhbHNvIGNvbmZpcm1lZCB0aGF0IG1vc3QgY2hpbGRyZW4gd2lsbCBoYXZlIG5vIGlzc3VlIHVzaW5nIGFuIGluaGFsYXRpdmUgdGhlcmFweSBsaWtlIHdlIGVudmlzaW9uIG91ciBnZW5lIHRoZXJhcHkgdG8gYmUgYW5kIHNob25lIGxpZ2h0IG9udG8gdGhlIGNvbXBhcmF0aXZlbHkgdmVyeSBnb29kIHNpdHVhdGlvbiBmb3IgQ0YgcGF0aWVudHMgaW4gR2VybWFueS4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD4gVGhpcyBpbnRlcnZpZXcgaGVscGVkIHVzIGNvbmZpcm0gdGhlIGRlbGl2ZXJ5IG1ldGhvZCB3ZSBwbGFubmVkIHRvIHVzZSBhcyB3ZSB3ZXJlIHByZXZpb3VzbHkgY29uY2VybmVkIGhvdyBhbmQgaWYgY2hpbGRyZW4gd291bGQgYmUgYWJsZSB0byB1c2UgdGhlIGluaGFsYXRpdmUgdGhlcmFweS4gQmVzaWRlcyB0aGF0LCBKdWxpYSBnYXZlIHVzIGZ1cnRoZXIgaW5zaWdodHMgaW50byB0aGUgZW1vdGlvbmFsIHNpZGUgb2ZcbiAgICAgIGRlYWxpbmcgd2l0aCBDRiBhbmQgd2Ugd2VyZSBhYmxlIHRvIGRpc2N1c3MgdGhlIHNpdHVhdGlvbiBmb3IgcGF0aWVudHMgaW4gR2VybWFueSBpbiBjb21wYXJpc29uIHRvIG90aGVyIGNvdW50cmllcyBiZXR0ZXIgaW4gbGF0ZXIgIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwiam9zaHVhXCIgdGV4dD1cImludGVydmlld3NcIiAvPi4gPC9wPl0sXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IHRlbGwgdXMgYSBiaXQgYWJvdXQgeW91ciBmYW1pbHk/IEhvdyBvbGQgYXJlIHlvdXIgY2hpbGRyZW4gYW5kIHlvdXJzZWx2ZXM/XCIgYT1cIklcdTIwMTltIDM3LCBteSBodXNiYW5kIGlzIDQ0LCBhbmQgb3VyIGRhdWdodGVyIGlzIHNpeCwgdHVybmluZyBzZXZlbiBzb29uLiBXZSBhbHNvIGhhdmUgYSBzb24gd2hvXHUyMDE5cyBhYm91dCBhIHllYXIgYW5kIGEgaGFsZi5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJEb2VzIHlvdXIgc29uIGFsc28gaGF2ZSBjeXN0aWMgZmlicm9zaXM/XCIgYT1cIk5vLCBoZSBkb2Vzblx1MjAxOXQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hlbiB3YXMgeW91ciBkYXVnaHRlciBkaWFnbm9zZWQgd2l0aCBjeXN0aWMgZmlicm9zaXM/XCIgYT1cIlJpZ2h0IGFmdGVyIGJpcnRoLiBTaGUgd2FzIHRyYW5zZmVycmVkIHRvIGEgYmlnZ2VyIGhvc3BpdGFsIGR1ZSB0byBhbiBpbnRlc3RpbmFsIGJsb2NrYWdlIGFuZCBoYWQgc3VyZ2VyeS4gQWZ0ZXIgYWJvdXQgdHdvIHRvIHRocmVlIHdlZWtzIGluIGludGVuc2l2ZSBjYXJlLCB0aGUgY3lzdGljIGZpYnJvc2lzIGRpYWdub3NpcyBjYW1lIHRocm91Z2ggbmV3Ym9ybiBzY3JlZW5pbmcuIEF0IHRoYXQgdGltZSwgdGhlIHJlc3VsdHMgdG9vayBsb25nZXIgdG8gcHJvY2VzcyB0aGFuIHRoZXkgZG8gbm93LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIlRoYXQgaW50ZXN0aW5hbCBpc3N1ZSBjYW4gaGFwcGVuIGZvciBtYW55IHJlYXNvbnMsIHJpZ2h0P1wiIGE9XCJZZXMsIGl0IHdhcyBhbGwgbmV3IHRvIHVzLiBUaGUgYmVnaW5uaW5nIHdhcyBkaWZmaWN1bHQsIGJ1dCB0aGluZ3MgaGF2ZSBnb3R0ZW4gYmV0dGVyIHNpbmNlIHRoZW4sIGFuZCB3ZVx1MjAxOXJlIHZlcnkgZ3JhdGVmdWwuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGRpZCB5b3UgZmVlbCB3aGVuIHlvdSBmaXJzdCBoZWFyZCB0aGUgZGlhZ25vc2lzP1wiIGE9XCJJdCBmZWx0IGxpa2Ugb3VyIHdvcmxkIHdhcyBmYWxsaW5nIGFwYXJ0LiBJIHN0aWxsIHJlbWVtYmVyIHRoZSBtb21lbnRcdTIwMTRpdCB3YXMgbGlrZSBiZWluZyBpbiBhIG1vdmllLiBXZSB3ZXJlIHRvbGQgaW4gYSBzZXBhcmF0ZSByb29tLCBhbmQgaXQgZmVsdCBvdmVyd2hlbG1pbmcuIE9uZSBkb2N0b3IgZXZlbiBzdWdnZXN0ZWQgd2UgZ28gaG9tZSB0byB0aGluayBhYm91dCBpdCBpbiBwZWFjZSwgYnV0IGFsbCBJIGNvdWxkIHRoaW5rIGFib3V0IHdhcyByZXR1cm5pbmcgdG8gbXkgY2hpbGQuIEl0IHdhcyBhIGxvdCB0byB0YWtlIGluLCBlc3BlY2lhbGx5IHRoaW5raW5nIGFib3V0IGhvdyB3ZVx1MjAxOWQgdGVsbCBvdXIgZmFtaWx5LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIlRoYXQgc291bmRzIGluY3JlZGlibHkgaGFyZC4gSG93IGRpZCB5b3UgaGFuZGxlIGl0IGFzIHRpbWUgcGFzc2VkP1wiIGE9XCJJdCB3YXMgdG91Z2gsIGJ1dCB3ZSB3ZXJlIGZvcnR1bmF0ZSB0byBoYXZlIGEgZG9jdG9yIHdobyByZWFsbHkgdW5kZXJzdG9vZCB3aGF0IHdlIHdlcmUgZ29pbmcgdGhyb3VnaCwgYXMgaGUgaGFkIGEgZGlzYWJsZWQgY2hpbGQgaGltc2VsZi4gSGUgbmV2ZXIgc2NhcmVkIHVzIHVubmVjZXNzYXJpbHkgYW5kIGd1aWRlZCB1cyBzdGVwIGJ5IHN0ZXAsIHdoaWNoIG1hZGUgYSBiaWcgZGlmZmVyZW5jZS4gV2Uga25vdyBtYW55IGZhbWlsaWVzIHdobyBsaXZlIGluIGNvbnN0YW50IGZlYXIsIGJ1dCBzaW5jZSB0aG9zZSBmaXJzdCBtb250aHMsIHdlXHUyMDE5dmUgbGVhcm5lZCB0byBtYW5hZ2UgdGhlIHNpdHVhdGlvbiB3aXRob3V0IGJlaW5nIG92ZXJ3aGVsbWVkIGJ5IGZlYXIuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRGlkIGFueSBwYXJ0aWN1bGFyIHN1cHBvcnQgaGVscCB5b3VyIGZhbWlseSBhZGp1c3QgdG8gdGhlIGRpYWdub3Npcz9cIiBhPVwiWWVzLCB0aGUgcmVoYWIgcHJvZ3JhbSB3ZSBhdHRlbmRlZCB3YXMgYSBodWdlIGhlbHAuIEl0IHdhcyBhIGZhbWlseS1vcmllbnRlZCBwcm9ncmFtLCBzbyBteSBodXNiYW5kIGNvdWxkIGJlIHRoZXJlIHRvbywgd2hpY2ggd2FzIGltcG9ydGFudCBzaW5jZSBJIG1hbmFnZSBtb3N0IHRoaW5ncyBkYXktdG8tZGF5LiBJdCByZWFsbHkgaGVscGVkIG91ciBkYXVnaHRlciByZWFsaXplIHNoZVx1MjAxOXMgbm90IGFsb25lXHUyMDE0c2hlIG1ldCBvdGhlciBraWRzIHdpdGggc2ltaWxhciBjb25kaXRpb25zLCB3aGljaCB3YXMgYSBodWdlIGNvbWZvcnQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGRpZCB5b3UgZXhwbGFpbiB0aGUgaWxsbmVzcyB0byB5b3VyIGRhdWdodGVyP1wiIGE9XCJXZSB0cnkgdG8gZ2l2ZSBpdCBhcyBsaXR0bGUgYXR0ZW50aW9uIGFzIHBvc3NpYmxlIGluIGRhaWx5IGxpZmUuIFNoZVx1MjAxOXMgYmVlbiBpbmhhbGluZyBtZWRpY2F0aW9uIHNpbmNlIHNoZSB3YXMgZWlnaHQgd2Vla3Mgb2xkLCBhbmQgaXRcdTIwMTlzIGp1c3QgcGFydCBvZiBoZXIgcm91dGluZSBub3cuIFRoYW5rZnVsbHksIHNoZSBkb2Vzblx1MjAxOXQgZmlnaHQgaXQgb3IgcXVlc3Rpb24gaXQgbXVjaCwgYW5kIGhlciBzY2hvb2wgYW5kIGtpbmRlcmdhcnRlbiBoYXZlblx1MjAxOXQgbWFkZSBhIGJpZyBkZWFsIG9mIGl0IGVpdGhlciwgd2hpY2ggaXMgd2hhdCB3ZSB3YW50ZWQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG9lcyBzaGUgZXZlciBhc2sgYWJvdXQgaGVyIGlsbG5lc3MgY29tcGFyZWQgdG8gaGVyIHlvdW5nZXIgYnJvdGhlciwgd2hvIGRvZXNuXHUyMDE5dCBoYXZlIGN5c3RpYyBmaWJyb3Npcz9cIiBhPVwiU2hlIGRvZXMgc29tZXRpbWVzIGFzayB3aHkgc2hlXHUyMDE5cyBzaWNrIGFuZCBoZVx1MjAxOXMgbm90LCBidXQgc2hlXHUyMDE5cyBub3QgdXBzZXQgYnkgaXQuIFdlXHUyMDE5dmUgbWFkZSBzdXJlIG5vdCB0byBnaXZlIGhlciBhbnkgc3BlY2lhbCB0cmVhdG1lbnQgYmVjYXVzZSBvZiBoZXIgaWxsbmVzcywgd2hpY2ggY2FuIGJlIGhhcmQgYXQgdGltZXMsIGJ1dCB3ZSB3YW50IGhlciB0byB1bmRlcnN0YW5kIHRoYXQgaGVyIGlsbG5lc3MgZG9lc25cdTIwMTl0IGRlZmluZSBoZXIuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiVGhhdCBzb3VuZHMgbGlrZSBhIGdvb2QgYmFsYW5jZS4gV2hhdCBhYm91dCBtZWRpY2F0aW9uc1x1MjAxNGRpZCBzaGUgc3RhcnQgb24gYW55IHNwZWNpYWwgdHJlYXRtZW50cz9cIiBhPVwiWWVzLCBzaGUgc3RhcnRlZCBvbiBPcmthbWJpIGF0IGFyb3VuZCB0aHJlZSB5ZWFycyBvbGQgYnV0IGhhZCB0byBzdG9wIGJyaWVmbHkgZHVlIHRvIGhpZ2ggbGl2ZXIgdmFsdWVzLiBOb3cgc2hlXHUyMDE5cyBvbiBLYWZ0cmlvLCB3aGljaCBzaGUgc3RhcnRlZCBzaG9ydGx5IGJlZm9yZSBoZXIgc2l4dGggYmlydGhkYXksIGFuZCBpdFx1MjAxOXMgYmVlbiBnb2luZyB3ZWxsLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRpZCB5b3UgZmFjZSBhbnkgaXNzdWVzIHdpdGggdGhlIGhlYWx0aCBpbnN1cmFuY2UgZm9yIGNvdmVyaW5nIHRoZXNlIG1lZGljYXRpb25zP1wiIGE9XCJGb3J0dW5hdGVseSwgbm8uIFdlIGhhdmUgc3RhdHV0b3J5IGhlYWx0aCBpbnN1cmFuY2UsIGFuZCB0aGV5XHUyMDE5dmUgY292ZXJlZCBldmVyeXRoaW5nIHdpdGhvdXQgYW55IGlzc3Vlcy4gV2VcdTIwMTl2ZSBoZWFyZCBpdCBjYW4gYmUgbW9yZSBjb21wbGljYXRlZCBmb3IgdGhvc2Ugd2l0aCBwcml2YXRlIGluc3VyYW5jZS5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIYXZlIHlvdSBldmVyIGhhZCBkaWZmaWN1bHRpZXMgd2l0aCBhY2Nlc3MgdG8gbWVkaWNhdGlvbj9cIiBhPVwiWWVzLCB0aGVyZSBoYXZlIGJlZW4gdGltZXMgd2hlbiB3ZVx1MjAxOXZlIGhhZCB0byB3YWl0IGEgZmV3IGRheXMgZm9yIGNlcnRhaW4gbWVkaWNhdGlvbnMsIGxpa2UgS3Jlb24gb3IgYW50aWJpb3RpY3MsIGVzcGVjaWFsbHkgaW4gdGhlIHdpbnRlci4gQnV0IHdlIGFsd2F5cyBwbGFuIGFoZWFkIGFuZCBrZWVwIGEgYnVmZmVyLCBzbyB3ZVx1MjAxOXZlIG5ldmVyIGJlZW4gd2l0aG91dCB3aGF0IHdlIG5lZWQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCB3b3VsZCB5b3Ugc2F5IGhhcyBiZWVuIHRoZSBtb3N0IGFmZmVjdGVkIGFyZWEgZm9yIHlvdXIgZGF1Z2h0ZXI/XCIgYT1cIkhlciBpbnRlc3RpbmVzIGFyZSB0aGUgbW9zdCBhZmZlY3RlZC4gQmVmb3JlIHNoZSBzdGFydGVkIEthZnRyaW8sIHNoZSBoYWQgZmF0dHkgc3Rvb2xzIGFuZCBmcmVxdWVudCBib3dlbCBtb3ZlbWVudHMsIGV2ZW4gd2l0aCB0aGUgcmlnaHQgS3Jlb24gZG9zYWdlLiBTaW5jZSBzdGFydGluZyBLYWZ0cmlvLCB0aGlzIGhhcyBpbXByb3ZlZCBzaWduaWZpY2FudGx5LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQga2luZCBvZiBzdXBwb3J0IHdvdWxkIHlvdSBoYXZlIGxpa2VkIHRvIHJlY2VpdmUgZWFybGllcj9cIiBhPVwiV2Ugd2lzaCB3ZSBoYWQgYmVlbiBnaXZlbiBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGF2YWlsYWJsZSBzZXJ2aWNlcyBlYXJseSBvbi4gV2UgZm91bmQgb3V0IGFib3V0IE11a292aXN6aWRvc2UgZS5WLiBmcm9tIGFub3RoZXIgZmFtaWx5LCBub3QgZnJvbSBvdXIgZG9jdG9yLiBJdCB3b3VsZCBoYXZlIGJlZW4gaGVscGZ1bCB0byBrbm93IGFib3V0IHRoZXNlIHJlc291cmNlcyByaWdodCBmcm9tIHRoZSBzdGFydC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgYWJvdXQgcHN5Y2hvc29jaWFsIHN1cHBvcnQ/XCIgYT1cIkluaXRpYWxseSwgd2UgZGlkblx1MjAxOXQgaGF2ZSBhbnkgcHN5Y2hvbG9naWNhbCBzdXBwb3J0XHUyMDE0b3VyIGRvY3RvciB0b29rIGNhcmUgb2YgZXZlcnl0aGluZy4gTm93LCB3aGVyZSB3ZSBsaXZlLCB0aGVyZSBhcmUgbW9yZSByZXNvdXJjZXMsIGFuZCB3ZSB0aGluayBpdFx1MjAxOXMgYSBnb29kIHRoaW5nLiBUaGUgcmVoYWIgaGVscGVkIGEgbG90IGluIGNvbWluZyB0byB0ZXJtcyB3aXRoIGV2ZXJ5dGhpbmcuIFdlIHdpc2ggd2UgaGFkIGtub3duIGFib3V0IHN1Y2ggc2VydmljZXMgc29vbmVyLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRvZXMgeW91ciBkYXVnaHRlciBkbyBwaHlzaW90aGVyYXB5P1wiIGE9XCJZZXMsIG9uY2UgYSB3ZWVrIGZvciBhYm91dCBhbiBob3VyLiBTaGVcdTIwMTlzIGJlZW4gZ29pbmcgc2luY2Ugc2hlIHdhcyBkaXNjaGFyZ2VkIGZyb20gdGhlIGhvc3BpdGFsLCBhbmQgc2hlIGhhcyBhIGNsb3NlIGJvbmQgd2l0aCBoZXIgcGh5c2lvdGhlcmFwaXN0LiBUaGV5XHUyMDE5dmUgYmVlbiB3b3JraW5nIHRvZ2V0aGVyIHNpbmNlIHNoZSB3YXMgYSBiYWJ5LCBhbmQgc2hlIGdvZXMgYnkgaGVyc2VsZiBub3cuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSByZXN0cmljdGlvbnMgZm9yIGhlciBpbiB0ZXJtcyBvZiBwaHlzaWNhbCBhY3Rpdml0aWVzP1wiIGE9XCJObywgbm90IHJlYWxseS4gU2hlIGRvZXMgZGFuY2luZyBvbmNlIGEgd2VlaywgcGh5c2lvdGhlcmFweSwgYW5kIHNoZVx1MjAxOXMgZXZlbiBkb25lIGEgc3dpbW1pbmcgY291cnNlIHdpdGhvdXQgYW55IHByb2JsZW1zLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgaGFuZGxlIGNvbW11bmljYXRpbmcgYWJvdXQgaGVyIGlsbG5lc3M/XCIgYT1cIldlIHRyeSBub3QgdG8gbWFrZSBhIGJpZyBkZWFsIG9mIGl0LiBXaGVuIEkgbG9va2VkIGZvciBpbmZvcm1hdGlvbiwgSSBmb3VuZCB3aGF0IHdlIG5lZWRlZC4gVGhlcmVcdTIwMTlzIG5vdGhpbmcgd2VcdTIwMTl2ZSByZWFsbHkgZmVsdCB3YXMgbWlzc2luZy5cIiAvPlxuICAgIDwvPixcbiAgICBzdW1tYXJ5OiBcIkp1bGlhJ3MgaW5zaWdodHMgc2hpZnRlZCBvdXIgZm9jdXMgdG8gdGhlIHN1cHBvcnQgc3lzdGVtcyBzdXJyb3VuZGluZyBDRiBwYXRpZW50cy4gU2hlIGhpZ2hsaWdodGVkIHRoZSBzb2NpZXRhbCBpbXBsaWNhdGlvbnMgb2YgQ0YsIGluY2x1ZGluZyByaXNpbmcgaGVhbHRoY2FyZSBjb3N0cyBkdWUgdG8gdGhlIGxvbmctdGVybSBuYXR1cmUgb2YgdHJlYXRtZW50IGFuZCB0aGUgZmluYW5jaWFsIGJ1cmRlbnMgZmFjZWQgYnkgZmFtaWxpZXMuIEFkZGl0aW9uYWxseSwgSnVsaWEgZW1waGFzaXplZCB0aGUgZW1vdGlvbmFsIHN0cmFpbiB0aGF0IGFjY29tcGFuaWVzIHRoZSBpbGxuZXNzLCBhbG9uZ3NpZGUgdGhlIGNvbXBsZXhpdGllcyBvZiBwYXJlbnRpbmcgYSBjaGlsZCB3aXRoIENGLiBJbXBvcnRhbnRseSwgc2hlIGFmZmlybWVkIHRoYXQgbW9zdCBjaGlsZHJlbiBhZGFwdCB3ZWxsIHRvIGluaGFsYXRpdmUgdGhlcmFwaWVzLCByZWluZm9yY2luZyBvdXIgcGxhbm5lZCBkZWxpdmVyeSBtZXRob2QgZm9yIGdlbmUgdGhlcmFweS4gVGhpcyBpbnRlcnZpZXcgZW5yaWNoZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgZmFtaWxpZXMgYW5kIGVuYWJsZWQgdXMgdG8gYmV0dGVyIGNvbXBhcmUgdGhlIGV4cGVyaWVuY2VzIG9mIENGIHBhdGllbnRzIGluIEdlcm1hbnkgdG8gdGhvc2UgaW4gb3RoZXIgY291bnRyaWVzLlwiLFxuICAgIG1vbnRoczogXCJqdW5lXCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIlByb2YuIERyLlwiLFxuICAgIHZvcm5hbWU6IFwiRGF2aWRcIixcbiAgICBuYWNobm5hbWU6IFwiTGl1XCIsXG4gICAgam9iOiBcIiBSaWNoYXJkIE1lcmtpbiBQcm9mZXNzb3IgYW5kIGRpcmVjdG9yIG9mIHRoZSBNZXJraW4gSW5zdGl0dXRlIG9mIFRyYW5zZm9ybWF0aXZlIFRlY2hub2xvZ2llcyBpbiBIZWFsdGhjYXJlXCIsXG4gICAgYWZmaWxpYXRpb246IFwidmljZSBjaGFpciBvZiB0aGUgZmFjdWx0eSBhdCB0aGUgQnJvYWQgSW5zdGl0dXRlIG9mIE1JVCBhbmQgSGFydmFyZFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2RhdmlkJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcbiAgICBoZWFkaW5nOiBcIkluZmx1ZW5jZSBvZiByZXNlYXJjaCBieSBEYXZpZCBMaXUgb24gb3VyIGRlc2lnbiBkZWNpc2lvbnMgXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibGl1XCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGU6IFwiWFwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPkRhdmlkIExpdSBpcyB0aGUgcHJpbmNpcGFsIGludmVzdGlnYXRvciByZXNwb25zaWJsZSBmb3IgdGhlIGRldmVsb3BtZW50IG9mIHRoZSBwcmltZSBlZGl0aW5nIHN5c3RlbXMgYW5kIGhpcyBsYWJvcmF0b3J5IGlzIGFjdGl2ZWx5IHdvcmtpbmcgb24gaW1wcm92aW5nIHByaW1lIGVkaXRvcnMsIGFsc28gZm9yIGFwcGxpY2F0aW9uIGluIENGVFIgbXV0YXRpb24gRjUwOGRlbC4gPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgdGFsayBhbmQgcGFwZXJzIGZyb20gRGF2aWQgTGl1IG5vdCBvbmx5IGludHJvZHVjZWQgYWR2YW5jZXMgZm9yIHByaW1lIGVkaXRvcnMsIGJ1dCBhbHNvIGluY2x1ZGVkIHZhbHVhYmxlIGRhdGEgZm9yIHVzIHRvIGRlY2lkZSBvbiB3aGljaCBtZXRob2QgbWlnaHQgd29yayBiZXN0IGZvciBvdXIgcHJvamVjdC4gQmVjYXVzZSBvZiB0aGlzIHdlIGRlY2lkZWQgdG8gdXNlIGFuIGFkdmFuY2VkIHN5c3RlbSBiYXNlZCBvbiB0aGUgUEU2YyBhbmQgUEU0IHN5c3RlbXMsIGJvdGggb2Ygd2hpY2ggd2VyZSBwdWJsaXNoZWQgYnkgdGhlIGxhYm9yYXRvcnkgb2YgRGF2aWQgTGl1LiA8L3A+LFxuICAgICAgPHA+QXMgdGhlIHByaW5jaXBhbCBpbnZlc3RpZ2F0b3IgcmVzcG9uc2libGUgZm9yIHRoZSBkZXZlbG9wbWVudCBvZiB0aGUgcHJpbWUgZWRpdGluZyBzeXN0ZW1zLiBUaGUgaW5pdGlhbCBwcmltZSBlZGl0aW5nIHN5c3RlbSB3YXMgZGV2ZWxvcGVkIGluIGhpcyBsYWJvcmF0b3J5IFxuXG4gICAgICA8VGFiU2Nyb2xsTGluayB0YWI9XCJsaXVcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPlxuICAgICAgIGFuZCBzaW5jZSB0aGVuIGEgbnVtYmVyIG9mIHBhcGVycyBvbiB0aGlzIHRvcGljIGhhdmUgYmVlbiBwdWJsaXNoZWQgdW5kZXIgaGlzIHN1cGVydmlzaW9uLiBUaGUgcmVzZWFyY2ggY29uZHVjdGVkIGJ5IERhdmlkIExpdSBhbmQgaGlzIGxhYm9yYXRvcnkgd2FzIHRoZSBpbnNwaXJhdGlvbiBmb3Igb3VyIGdlbmUgZWRpdGluZyBhcHByb2FjaCBhbmQgdGh1cyBhYnNvbHV0ZWx5IGNydWNpYWwgaW4gdGhlIGRldmVsb3BtZW50IG9mIFByZUN5c2UuIFVuZm9ydHVuYXRlbHksIHdlIHdlcmUgbm90IGFibGUgdG8gdGFsayB0byBEYXZpZCBMaXUgaGltc2VsZiBvciBvbmUgb2YgaGlzIGNvd29ya2VycywgYnV0IHRoZSBpbXBhY3Qgb2YgdGhlaXIgcHVibGljYXRpb25zIGNhbiBiZSBzZWVuIGluIGEgYmlnIHBhcnQgb2YgdGhlIG1lY2hhbmlzbSBlbmdpbmVlcmluZyB0aW1lbGluZS4gV2hlbiBzcGVha2luZyB0byBcbiAgICAgIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwibWF0dGlqc2ludlxuICAgICAgXCIgdGV4dD1cIk1hdHRpanMgQnVsY2FlblwiIC8+XG4gICAgICAgaW4gSnVuZSwgaGUgbWVudGlvbmVkIHRoYXQgRGF2aWQgTGl1IGhhZCByZWNlbnRseSBnaXZlbiBhIHRhbGsgb24gcmVjZW50IGFkdmFuY2VzIGluIHRoZSBwcmltZSBlZGl0aW5nIGZpZWxkIGF0IHRoZSBvbmxpbmUgY29uZmVyZW5jZSAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmdlbmVuZ25ld3MuY29tL211bHRpbWVkaWEvdGhlLXN0YXRlLW9mLWNyaXNwci1hbmQtZ2VuZS1lZGl0aW5nLTIwMjQvXCIgPidUaGUgU3RhdGUgb2YgQ1JJU1BSIGFuZCBHZW5lIEVkaXRpbmcgMjAyNCc8L2E+IGhvc3RlZCBieSBHZW5ldGljIEVuZ2luZWVyaW5nICYgQmlvdGVjaG5vbG9neSBOZXdzLiBcbiAgICAgIEluIGhpcyB0YWxrLCBEYXZpZCBMaXUgcHJlc2VudGVkIGJvdGggcHVibGlzaGVkIGFzIHdlbGwgYXMgdW5wdWJsaXNoZWQgd29yay4gT25lIG9mIHRoZSBtb3N0IHNpZ25pZmljYW50IHRha2Vhd2F5cyBmb3IgdXMgd2VyZSB0aGUgdXNlIG9mIGV2b2x2ZWQgaW1wcm92ZWQgYW5kIHNtYWxsZXIgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlcyBpbiBQRTYgcHJpbWUgZWRpdGluZyBzeXN0ZW1zIFxuICAgICAgPFRhYlNjcm9sbExpbmsgdGFiPVwibGl1XCIgc2Nyb2xsSWQ9XCJkZXNjLTJcIiBudW09XCIyXCIgLz5cbiAgICAgIC4gV2Ugd2VyZSBhbHNvIHZlcnkgaW50ZXJlc3RlZCBpbiB0aGUgcHJvdGVpbiBldm9sdXRpb24gc3RyYXRlZ2llcyB1c2VkIHRvIGNyZWF0ZSB0aGVzZSBuZXcgZW56eW1lcyBjYWxsZWQgUEFDRSBhbmQgUEFOQ0UgKHBoYWdlIGFzc2lzdGVkIChub24tKWNvbnRpbnVvdXMgZXZvbHV0aW9uIDxUYWJTY3JvbGxMaW5rIHRhYj1cImxpdVwiIHNjcm9sbElkPVwiZGVzYy0zXCIgbnVtPVwiM1wiIC8+IGFuZCB0aGUgaWRlYSBvZiB1c2luZyB0aGlzIHN5c3RlbSB0byBvcHRpbWl6ZSBvdXIgcGxhbm5lZCBuZXcgZW5kb251Y2xlYXNlIGRvbWFpbnMgZm9yIHRoZSBwcmltZSBlZGl0b3JzLiBXZSBldmVudHVhbGx5IGRpc2NhcmRlZCB0aGlzIGlkZWEgYmVjYXVzZSBvZiB0aW1lIGNvbnN0cmFpbnRzLiBBcGFydCBmcm9tIHRoYXQsIERhdmlkIExpdSBwcmVzZW50ZWQgcmVzdWx0cyBmcm9tIGhpcyBhdCB0aGlzIHBvaW50IHVucHVibGlzaGVkIHBhcGVyIGFib3V0IENGVFIgRjUwOGRlbCBjb3JyZWN0aW9uIHVzaW5nIHByaW1lIGVkaXRpbmcsIHdoaWNoIHdhcyBlc3BlY2lhbGx5IGludGVyZXN0aW5nIGZvciB1cyBjb25zaWRlcmluZyB0aGUgZ29hbCBvZiBvdXIgcHJvamVjdC4gV2hlbiB0aGUgcGFwZXIgd2FzIHB1Ymxpc2hlZCBvbiB0aGUgMTB0aCBvZiBKdWx5IDIwMjQgPFRhYlNjcm9sbExpbmsgdGFiPVwibGl1XCIgc2Nyb2xsSWQ9XCJkZXNjLTRcIiBudW09XCI0XCIgLz4sIGl0IGFjdHVhbGx5IHN1cHBvcnRlZCBzb21lIG9mIG91ciBhbHJlYWR5IG1hZGUgcGVnUk5BIGRlc2lnbiBkZWNpc2lvbnMsIHN1Y2ggYXMgdGhlIGNob2ljZSBvZiB0aGUgdGFyZ2V0ZWQgcHJvdG9zcGFjZXIsIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2lsZW50IGVkaXRzIGFuZCB0aGUgdXNlIG9mIHRoZSB0cmV2b3ByZVExIHN0ZW0gbG9vcC4gQWRkaXRpb25hbGx5LCBpdCBvZmZlcmVkIG5vdmVsIGluc2lnaHRzIGludG8gcHJpbWUgZWRpdGluZyBzeXN0ZW1zIHN1aXRlZCBmb3IgRjUwOGRlbCBjb3JyZWN0aW9uLCBzdWNoIGFzIFBFNiwgYW5kIG9wdGltaXplZCBwcmltZXIgYmluZGluZyBzaXRlIGFzIHdlbGwgYXMgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRlbXBsYXRlIGxlbmd0aHMuIDwvcD5cbiAgICBdLFxuICAgIGltcGxlbWVudGF0aW9uOiBcInhcIixcbiAgICBzdW1tYXJ5OiBcIiBEYXZpZCBMaXUsIHRoZSBwcmluY2lwYWwgaW52ZXN0aWdhdG9yIGJlaGluZCBwcmltZSBlZGl0aW5nIHN5c3RlbXMsIGhhcyBzaWduaWZpY2FudGx5IGNvbnRyaWJ1dGVkIHRvIHRoZSBkZXZlbG9wbWVudCBvZiBhZHZhbmNlZCBnZW5lIGVkaXRpbmcgdGVjaG5pcXVlcywgaW5jbHVkaW5nIGFwcGxpY2F0aW9ucyBmb3IgdGhlIENGVFIgbXV0YXRpb24gRjUwOGRlbC4gSGlzIHJlc2VhcmNoIHByb3ZpZGVkIHZhbHVhYmxlIGluc2lnaHRzIGZvciBvdXIgcHJvamVjdCwgbGVhZGluZyB1cyB0byBhZG9wdCBhIHN5c3RlbSBiYXNlZCBvbiB0aGUgUEU2YyBhbmQgUEU0IHByaW1lIGVkaXRvcnMuIEFsdGhvdWdoIHdlIGNvdWxkbid0IGRpcmVjdGx5IGVuZ2FnZSB3aXRoIExpdSBvciBoaXMgdGVhbSwgdGhlIGltcGFjdCBvZiBoaXMgd29yayBpcyBldmlkZW50IGluIG91ciBnZW5lIGVkaXRpbmcgYXBwcm9hY2ggZm9yIFByZUN5c2UuIE5vdGFibHksIExpdSdzIHJlY2VudCB0YWxrIGF0IHRoZSAnU3RhdGUgb2YgQ1JJU1BSIGFuZCBHZW5lIEVkaXRpbmcgMjAyNCcgY29uZmVyZW5jZSBoaWdobGlnaHRlZCBhZHZhbmNlbWVudHMgc3VjaCBhcyBpbXByb3ZlZCByZXZlcnNlIHRyYW5zY3JpcHRhc2VzIGFuZCB0aGVpciBhcHBsaWNhdGlvbnMgaW4gcHJpbWUgZWRpdGluZy4gVGhlIHB1YmxpY2F0aW9uIG9mIGhpcyBmaW5kaW5ncyBvbiBDRlRSIEY1MDhkZWwgY29ycmVjdGlvbiBpbiBKdWx5IDIwMjQgZnVydGhlciB2YWxpZGF0ZWQgb3VyIGRlc2lnbiBjaG9pY2VzIGZvciBwZWdSTkEgYW5kIG9mZmVyZWQgbmV3IHN0cmF0ZWdpZXMgZm9yIG9wdGltaXppbmcgb3VyIGFwcHJvYWNoLlwiLFxuICAgIG1vbnRoczogXCJKdW5lXCIsXG4gICAgcmVmZXJlbmNlczogPExpdUludGVydmlld1NvdXJjZXMvPixcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiTmljb2xlXCIsXG4gICAgbmFjaG5uYW1lOiBcIkZyaWVkbGVpblwiLFxuICAgIGpvYjogXCJSZXNlYXJjaCBncm91cCBvbiBmdW5kYW1lbnRhbCByaWdodHNcIixcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IFBvdHNkYW1cIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWyduaWNvbGUnXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gb24gaG93IGhlYWx0aCBpbnN1cmFuY2UgY29tcGFuaWVzIG1hbmFnZSBjeXN0aWMgZmlicm9zaXMgcGF0aWVudHMgYW5kIGdlbmUgdGhlcmFweSB0cmVhdG1lbnRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibmljb2xlXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZTogXCJQdWJsaWMgaGVhbHRoIGluc3VyYW5jZSBvcGVyYXRlcyB1bmRlciBhbiBlY29ub21pYyBlZmZpY2llbmN5IHByaW5jaXBsZSwgbWVhbmluZyB0aGUgbW9zdCBjb3N0LWVmZmVjdGl2ZSB0cmVhdG1lbnRzIGFyZSBwcmVmZXJyZWQuIEJ1dCBpZiBnZW5lIHRoZXJhcGllcyBiZWNvbWUgdGhlIG9ubHkgdHJlYXRtZW50IG9wdGlvbiBmb3IgY2VydGFpbiBjb25kaXRpb25zLCB0aGV5IHdpbGwgbGlrZWx5IGhhdmUgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIGNvdmVyYWdlLCB3aGljaCBjb3VsZCBiZSBhIGNoYWxsZW5nZSBmb3IgdGhlIHN5c3RlbS5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiVGhlIG1haW4gb2JqZWN0aXZlIG9mIHRoZSBjb250YWN0IHdhcyB0byBsZWFybiBmcm9tIHRoZSBkaXNjdXNzaW9uIG9uIGlzc3VlcyByZWxhdGVkIHRvIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLCBnZW5lIHRoZXJhcHksIGhlYWx0aCBpbnN1cmFuY2UgcHJvY2Vzc2VzIGFuZCByZWd1bGF0b3J5IHBhdGh3YXlzLiBJbiBwYXJ0aWN1bGFyLCB3ZSB3YW50ZWQgdG8gdW5kZXJzdGFuZCB0aGUgcmVhbC13b3JsZCBjaGFsbGVuZ2VzIGFuZCB0ZWNobmljYWwgYXNwZWN0cyBvZiBnZW5lIGVkaXRpbmcsIGVzcGVjaWFsbHkgcHJpbWUgZWRpdGluZywgYXMgd2VsbCBhcyB0aGUgY29tcGxleGl0aWVzIG9mIGFwcHJvdmFsIGFuZCByZWltYnVyc2VtZW50IG9mIGdlbmUgdGhlcmFwaWVzIGZvciBDRiBwYXRpZW50cy5cIixcbiAgICBpbnNpZ2h0czogXCJUaGUgcmVndWxhdG9yeSBhcHByb3ZhbCBwcm9jZXNzLCBwYXJ0aWN1bGFybHkgYnkgdGhlIEV1cm9wZWFuIE1lZGljaW5lcyBBZ2VuY3kgKEVNQSkgZm9yIGFkdmFuY2VkIG1lZGljYWwgZGV2aWNlcywgaGFzIGhpZ2hsaWdodGVkIHRoZSBidXJlYXVjcmF0aWMgaHVyZGxlcyB0aGF0IGdlbmUgdGhlcmFwaWVzIG11c3Qgb3ZlcmNvbWUuIFdlIGxlYXJuZWQgdGhhdCBzdWNoIHRoZXJhcGllcyBmb3IgY3lzdGljIGZpYnJvc2lzIGhhdmUgdG8gbmF2aWdhdGUgY29tcGxleCBFdXJvcGVhbiBhbmQgR2VybWFuIHJlZ3VsYXRvcnkgc3lzdGVtcy4gVGhlIGRpc2N1c3Npb24gb24gdGhlIEFNTk9HIHByb2Nlc3Mgd2FzIGNydWNpYWwuIFdlIGxlYXJudCB0aGF0IHRoZSBhZGRpdGlvbmFsIGJlbmVmaXQgb2YgYSB0aGVyYXB5IGlzIGFzc2Vzc2VkIGZvciByZWltYnVyc2VtZW50IGJ5IHRoZSBzdGF0dXRvcnkgaGVhbHRoIGluc3VyYW5jZSBmdW5kcy4gV2UgaW1wbGVtZW50ZWQgdGhpcyBpbnNpZ2h0IGluIG91ciBwcm9qZWN0IGJ5IGNvbnNpZGVyaW5nIHRoZSBsb25nLXRlcm0gcmVndWxhdG9yeSBhbmQgZWNvbm9taWMgZWZmZWN0cyBhcyBpbXBvcnRhbnQgbWlsZXN0b25lcyBmb3IgdGhlcmFweSBkZXZlbG9wbWVudC4gV2UgYWxzbyBnYWluZWQgaW5zaWdodCBpbnRvIGhvdyBwdWJsaWMgYW5kIHByaXZhdGUgaGVhbHRoIGluc3VyZXJzIG1heSBkaWZmZXIgaW4gdGhlaXIgcmVpbWJ1cnNlbWVudCBvZiBzdWNoIHRoZXJhcGllcy4gUHVibGljIGluc3VyZXJzIGhhdmUgc3RyaWN0ZXIgZ3VpZGVsaW5lcywgd2hpbGUgcHJpdmF0ZSBpbnN1cmVycyBjYW4gYmUgbW9yZSBmbGV4aWJsZSwgYnV0IGJvdGggcmVxdWlyZSBzdHJpY3QganVzdGlmaWNhdGlvbiwgZXNwZWNpYWxseSBmb3IgcmFyZSBkaXNlYXNlcyBzdWNoIGFzIGN5c3RpYyBmaWJyb3Npcy4gSW5mb3JtYXRpb24gb24gbmV3Ym9ybiBzY3JlZW5pbmcgYW5kIGdlbmV0aWMgY291bnNlbGxpbmcgY292ZXJlZCBieSBwdWJsaWMgaGVhbHRoIGluc3VyYW5jZSB3YXMgY3J1Y2lhbCB0byB1bmRlcnN0YW5kaW5nIGhvdyBwcmV2ZW50aXZlIG1lYXN1cmVzIGZvciBDRiBhcmUgbWFuYWdlZC4gVGhpcyB1bmRlcmxpbmVzIHRoZSBpbXBvcnRhbmNlIG9mIGVhcmx5IGludGVydmVudGlvbiBhbmQgZGlhZ25vc2lzIGluIG91ciBwcm9qZWN0LiBBdHlwaWNhbCBmb3JtcyBvZiBDRiwgd2hlcmUgaGVhbHRoIGluc3VyYW5jZSBjb21wYW5pZXMgZG8gbm90IGNvdmVyIHRyZWF0bWVudCBkdWUgdG8gbm9uLXN0YW5kYXJkaXNlZCB0ZXN0IHJlc3VsdHMsIHdlcmUgaWRlbnRpZmllZCBhcyBhIGtleSBwcm9ibGVtLiBUaGlzIGhlbHBlZCB1cyB0byByZWNvZ25pc2UgdGhlIG5lZWQgZm9yIG1vcmUgYWRhcHRhYmxlIGluc3VyYW5jZSBwb2xpY2llcyBhbmQgY2xlYXJlciBwYXRod2F5cyBmb3IgdGhlIHRyZWF0bWVudCBvZiBhdHlwaWNhbCBjYXNlcyBpbiBvdXIgcHJvamVjdCBwbGFucy4gVGhlIGRlYmF0ZSBhYm91dCB3aGV0aGVyIGhlYWx0aGNhcmUgc3lzdGVtcyBjYW4gYWZmb3JkIHRoZSBoaWdoIGNvc3RzIG9mIGdlbmUgdGhlcmFwaWVzIGhpZ2hsaWdodGVkIGFuIGltcG9ydGFudCBpc3N1ZSBpbiB0aGUgY3VycmVudCBtZWRpY2FsIGxhbmRzY2FwZS4gV2UgaGF2ZSBpbmNvcnBvcmF0ZWQgdGhpcyBpbnNpZ2h0IGludG8gb3VyIHByb2plY3QgYnkgZGlzY3Vzc2luZyBwb3NzaWJsZSBjb3N0LWVmZmVjdGl2ZSBhbHRlcm5hdGl2ZXMgYW5kIHRoZSBuZWVkIGZvciB0aG9yb3VnaCBjb3N0LWJlbmVmaXQgYW5hbHlzaXMgaW4gdGhlIGRldmVsb3BtZW50IG9mIHRyZWF0bWVudHMuXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5BZnRlciB0aGUgaW50ZXJ2aWV3LCB3ZSBmdXJ0aGVyIHRhaWxvcmVkIG91ciBwcm9qZWN0IHRvIGZvY3VzIG9uIGEgc2ltcGxlIGRlbGl2ZXJ5IG1ldGhvZCB0byByZWR1Y2UgdGhlIHRoZXJhcGV1dGljIGVmZm9ydC4gVG8gZ2FpbiBhbiBvdmVydmlldyBvZiB0aGUgcmVndWxhdG9yeSByZXF1aXJlbWVudHMgYW5kIHRvIGJldHRlciBkZWxpdmVyIHRoZSBwcm9qZWN0LCBvbmUgb2Ygb3VyIHRlYW0gbWVtYmVycyBhdHRlbmRlZCBhIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwiZ3hwY291cnNlXCIgdGV4dD1cIkd4UCBjb3Vyc2VcIi8+IHRvIGVuc3VyZSB3ZSBtZXQgYWxsIHRoZSBuZWNlc3Nhcnkgc3RhbmRhcmRzLiBUbyBkZWVwZW4gb3VyIGtub3dsZWRnZSBvZiBlbnRyZXByZW5ldXJzaGlwLCB3ZSBjb25kdWN0ZWQgZnVydGhlciBpbnRlcnZpZXdzIHdpdGggc3RhcnQtdXBzIGFuZCA8SFBnb1RvUGFnZUFuZFNjcm9sbCBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudDNIXCIgIHBhdGg9XCJcXGh1bWFuLXByYWN0aWNlc1wiIHRleHQ9XCJpbmR1c3RyaWFsIGNvbXBhbmllc1wiIC8+LCB3aGljaCBnYXZlIHVzIGltcG9ydGFudCBpbnNpZ2h0cyBpbnRvIHByYWN0aWNhbCBpbXBsZW1lbnRhdGlvbi4gVGhlc2Ugc3RlcHMgZW5zdXJlIHRoYXQgb3VyIHByb2plY3QgaXMgbm90IG9ubHkgYmFzZWQgb24gc2NpZW50aWZpYyByZXNlYXJjaCwgYnV0IGFsc28gdGFrZXMgaW50byBhY2NvdW50IHRoZSBwcmFjdGljYWwsIHJlZ3VsYXRvcnkgYW5kIHNvY2lhbCBhc3BlY3RzIHRoYXQgYXJlIGNydWNpYWwgdG8gYnJpbmdpbmcgbmV3IENGIHRoZXJhcGllcyB0byB0aGUgbWFya2V0LiBXZSBhcmUgY3VycmVudGx5IGRldmVsb3Bpbmcgc3RyYXRlZ2llcyB0byBzdWNjZXNzZnVsbHkgaW1wbGVtZW50IG91ciBpZGVhcyBhbmQgdGhlIHByb2plY3QgaW4gdGhlIGZ1dHVyZS48L3A+XSxcbiAgICBpbnRlcnZpZXc6IDw+XG4gICAgICA8UWFCb3ggcT1cIlRvIHN0YXJ0IHdpdGggdGhpcyBpbnRlcnZpZXcuIERvIHlvdSBoYXZlIGFueSBxdWVzdGlvbnMgYWJvdXQgdGhpcyBwcm9qZWN0P1wiXG4gICAgICAgIGE9XCJBcmUgeW91IHdyaXRpbmcgYSBwYXBlciBvbiB0aGlzLCBvciBhcmUgeW91IGNvbmR1Y3RpbmcgYWN0dWFsIGxhYm9yYXRvcnkgcmVzZWFyY2g/IE9yIGlzIGl0IHByaW1hcmlseSBsaXRlcmF0dXJlIHJldmlldz8gSG93IGRvZXMgeW91ciB3b3JrIGxvb2s/XCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSXRcdTIwMTlzIG5vdCBqdXN0IGxpdGVyYXR1cmUgcmV2aWV3LCB0aG91Z2ggd2UgZG8gc3RhcnQgd2l0aCB0aGF0LiBXZSBoYXZlIGEgbG90IG9mIGxhYiB3b3JrIGFoZWFkIG9mIHVzLiBJZGVhbGx5LCB3ZSB3b3VsZCBoYXZlIGEgZmluaXNoZWQgY29uc3RydWN0IHRvIHByZXNlbnQgYXQgdGhlIGVuZCwgbWF5YmUgZXZlbiBhIGZ1bmN0aW9uYWwgZ2VuZSB0aGVyYXB5LCB0aG91Z2ggdGhhdFx1MjAxOXMgcXVpdGUgYW1iaXRpb3VzIGFuZCBwcm9iYWJseSBub3QgcG9zc2libGUgaW4gdGhlIHNob3J0IHRpbWUgZnJhbWUuIFdlXHUyMDE5cmUgd29ya2luZyBvbiB2YXJpb3VzIGdlbmUtZWRpdGluZyBhcHByb2FjaGVzIGFuZCB0ZXN0aW5nIHBsYXNtaWRzIGluIEhFSyBjZWxscy4gV2UgYXJlIGFsc28gZXhwbG9yaW5nIFByaW1lIEVkaXRpbmcgYW5kIHRyeWluZyB0byBpbXByb3ZlIGl0cyBlZmZpY2llbmN5IHVzaW5nIGRpZmZlcmVudCByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZW56eW1lcy4gU28sIGl0XHUyMDE5cyBhIG1peCBvZiBsYWIgd29yaywgbGl0ZXJhdHVyZSByZXNlYXJjaCwgYW5kIHByZXBhcmluZyBmb3IgYSBwcmVzZW50YXRpb24gYXQgYSBjb21wZXRpdGlvbi5cIlxuICAgICAgICBhPVwiQXJlIHlvdSB3cml0aW5nIGEgZm9ybWFsIHBhcGVyP1wiIC8+XG4gICAgICA8UWFCb3ggcT1cIldlXHUyMDE5cmUgbm90IHdyaXRpbmcgYSBmb3JtYWwgdGV4dC1iYXNlZCBwYXBlciwgYnV0IGV2ZXJ5dGhpbmcgd2lsbCBiZSBhdmFpbGFibGUgb24gYSB3ZWJzaXRlLiBXZSB3aWxsIGRvY3VtZW50IG1vc3Qgb2Ygb3VyIHdvcmsgb24gdGhlIHdlYnNpdGUsIHdpdGggc3ViLXBhZ2VzIGRldGFpbGluZyBsYWIgd29yaywgaW50ZXJ2aWV3cywgYW5kIHJlc2VhcmNoLlwiXG4gICAgICAgIGE9XCJXaGF0IGV4YWN0bHkgaXMgUHJpbWUgRWRpdGluZywgYW5kIGhvdyBkb2VzIGl0IGRpZmZlciBmcm9tIGFsdGVyaW5nIHRoZSBnZXJtbGluZT8gV2hlcmUgaW4gdGhlIGdlbm9tZSBkb2VzIHRoaXMgdGhlcmFweSBhY3Q/XCIgLz5cbiAgICAgIDxRYUJveCBxPVwiT3VyIGN1cnJlbnQgcGxhbiBpcyB0byBkZWxpdmVyIHRoZSB0aGVyYXB5IHZpYSBhIGxpcGlkIG5hbm9wYXJ0aWNsZSBzeXN0ZW0sIHdoaWNoIHdpbGwgYmUgaW5oYWxlZCBhbmQgZ28gaW50byB0aGUgbHVuZ3MuIFdoaWxlIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGFmZmVjdHMgYWxsIG11Y3VzIG1lbWJyYW5lcywgdGhlIGx1bmdzIGFyZSB0aGUgbW9zdCBjcml0aWNhbCBhcmVhLCBzbyB3ZVx1MjAxOXJlIGZvY3VzaW5nIG9uIHRoYXQuIFRoZSB0aGVyYXB5IHdpbGwgb25seSB0YXJnZXQgc3VyZmFjZSBjZWxscyBpbiB0aGUgbHVuZ3MsIG5vdCB0aGUgYmFzYWwgY2VsbHMgcmVzcG9uc2libGUgZm9yIHByb2R1Y2luZyBuZXcgbHVuZyBjZWxscy5cIlxuICAgICAgICBhPVwiVGhhbmsgeW91IGZvciBnaXZpbmcgbWUgaW5zaWdodHMgaW50byB5b3VyIHByb2plY3QuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGtub3cgaG93IGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGFwcHJvdmFsIHdvcmtzIGluIHRlcm1zIG9mIGhlYWx0aCBpbnN1cmFuY2UgYW5kIHJlZ3VsYXRvcnkgcHJvY2Vzc2VzP1wiXG4gICAgICAgIGE9XCJUaGUgYXBwcm92YWwgcHJvY2VzcyBmb3IgZ2VuZSB0aGVyYXBpZXMgaXMgcHJpbWFyaWx5IGRvbmUgdGhyb3VnaCB0aGUgRU1BIChFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5KSB1bmRlciBzcGVjaWZpYyBFVSByZWd1bGF0aW9ucyBmb3IgQWR2YW5jZWQgTWVkaWNhbCBQcm9kdWN0cywgaW5jbHVkaW5nIGdlbmUgdGhlcmFwaWVzLiBUaGVyZSBpcyBhbHNvIGEgbmF0aW9uYWwgYXBwcm92YWwgcHJvY2VzcyBpbiBHZXJtYW55IGZvciBpbmRpdmlkdWFsaXplZCB0cmVhdG1lbnRzLCBidXQgbGFyZ2Utc2NhbGUgdGhlcmFwaWVzIG11c3QgZ28gdGhyb3VnaCB0aGUgRVUgcHJvY2Vzcy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IHNoYXJlIG1vcmUgYWJvdXQgdGhlIGFwcHJvdmFsIGFuZCByZWltYnVyc2VtZW50IHByb2Nlc3NlcyBmb3IgQ0YgdHJlYXRtZW50P1wiXG4gICAgICAgIGE9XCJUaGUgYXBwcm92YWwgcHJvY2VzcyBpcyBzZXBhcmF0ZSBmcm9tIHJlaW1idXJzZW1lbnQgYnkgcHVibGljIGhlYWx0aCBpbnN1cmFuY2UuIENGIGlzIGNvbnNpZGVyZWQgYSByYXJlIGRpc2Vhc2UgaWYgaXQgYWZmZWN0cyBmZXdlciB0aGFuIGZpdmUgb3V0IG9mIDEwLDAwMCBwZW9wbGUsIGFuZCB0cmVhdG1lbnRzIGZvciByYXJlIGRpc2Vhc2VzIG9mdGVuIGZhY2Ugc3BlY2lhbCByZWltYnVyc2VtZW50IGNoYWxsZW5nZXMuIElmIG1vcmUgdGhhbiBmaXZlIG91dCBvZiAxMCwwMDAgcGVvcGxlIGFyZSBhZmZlY3RlZCwgdGhlIGRpc2Vhc2UgaXMgcmVsYXRpdmVseSBjb21tb24sIGFuZCBhcHByb3ZhbCBhbmQgcmVpbWJ1cnNlbWVudCBnbyB0aHJvdWdoIGEgZGlmZmVyZW50IHByb2NlZHVyZSBrbm93biBhcyB0aGUgQU1OT0cgcHJvY2Vzcy4gRm9yIG1vcmUgY29tbW9uIGRpc2Vhc2VzLCBhbiBhZGRpdGlvbmFsIGJlbmVmaXQgKFp1c2F0em51dHplbikgbXVzdCBiZSBkZW1vbnN0cmF0ZWQgZHVyaW5nIHRoZSBhcHByb3ZhbCBwcm9jZXNzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhhdmUgeW91IGhlYXJkIGFib3V0IGlzc3VlcyB3aXRoIHJlaW1idXJzZW1lbnQgZnJvbSBwcml2YXRlIGluc3VyYW5jZSBjb21wYW5pZXM/XCJcbiAgICAgICAgYT1cIldlXHUyMDE5dmUgaGVhcmQgdGhhdCBwcml2YXRlIGluc3VyYW5jZSBjb21wYW5pZXMgY2FuIG1ha2UgaXQgZGlmZmljdWx0IHRvIGdldCB0cmVhdG1lbnRzIHJlaW1idXJzZWQsIGVzcGVjaWFsbHkgZXhwZXJpbWVudGFsIG9uZXMuIE9uZSBvZiBvdXIgY29sbGVhZ3VlcyBhbG1vc3QgaGFkIHRvIGdvIHRvIGNvdXJ0IHRvIGdldCBoaXMgdHJlYXRtZW50IHJlaW1idXJzZWQgYnkgaGlzIHByaXZhdGUgaW5zdXJlciwgd2hpY2ggd2FzIHF1aXRlIGV4cGVuc2l2ZS4gRXZlbnR1YWxseSwgaGUgc3dpdGNoZWQgdG8gcHVibGljIGluc3VyYW5jZSwgYnV0IHRoZSBzaXR1YXRpb24gd2FzIGRpZmZpY3VsdC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaHkgZGlkIHlvdXIgY29sbGVhZ3VlIGhhdmUgaXNzdWVzIHdpdGggcHJpdmF0ZSBpbnN1cmFuY2U/XCJcbiAgICAgICAgYT1cIkhlIHdhcyBwcml2YXRlbHkgaW5zdXJlZCwgYnV0IHRoZSB0cmVhdG1lbnQgd2FzIHZlcnkgZXhwZW5zaXZlLCBhcm91bmQgXHUyMEFDMTYsMDAwIHBlciBtb250aCwgYW5kIHRoZSBpbnN1cmFuY2UgY29tcGFueSB3YXMgcmVsdWN0YW50IHRvIGNvdmVyIGl0LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBuZWVkIGxlZ2FsIGluZm9ybWF0aW9uIGZvciB5b3VyIHByb2plY3Q/XCJcbiAgICAgICAgYT1cIkJvdGguIFdlIHdhbnQgdG8gYmUgd2VsbC1pbmZvcm1lZCB0byBpZGVudGlmeSBwb3RlbnRpYWwgb2JzdGFjbGVzIGVhcmx5IG9uLCBzdWNoIGFzIGxlZ2FsIHJlc3RyaWN0aW9ucyBvciBiYW5zIG9uIGFsdGVyaW5nIGNlcnRhaW4gY2hyb21vc29tZXMuIEFsdGhvdWdoIHdlIHdvblx1MjAxOXQgYmUgcnVubmluZyBjbGluaWNhbCB0cmlhbHMsIHVuZGVyc3RhbmRpbmcgdGhlIHJlZ3VsYXRvcnkgbGFuZHNjYXBlIGlzIGNydWNpYWwgZm9yIG91ciBmdXR1cmUgcGxhbm5pbmcuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGRvZXMgZ2VuZXRpYyBjb3Vuc2VsaW5nIGFuZCB0ZXN0aW5nIHdvcmsgZm9yIENGP1wiXG4gICAgICAgIGE9XCJHZW5ldGljIGNvdW5zZWxpbmcgYW5kIHRlc3RpbmcgYXJlIHVzdWFsbHkgY292ZXJlZCBieSBoZWFsdGggaW5zdXJhbmNlIGlmIHRoZXJlXHUyMDE5cyBhIG1lZGljYWwgcmVhc29uLCBzdWNoIGFzIGEgZmFtaWx5IGhpc3Rvcnkgb3Igc3VzcGljaW9uIHRoYXQgdGhlIHBhcmVudHMgbWlnaHQgYmUgY2FycmllcnMuIEhvd2V2ZXIsIGlmIGJvdGggcGFyZW50cyBhcmUgaGVhbHRoeSBhbmQgdGhlcmVcdTIwMTlzIG5vIGZhbWlseSBoaXN0b3J5IG9mIENGLCBpbnN1cmFuY2UgbWlnaHQgbm90IGNvdmVyIHRoZSB0ZXN0cy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJBcmUgdGhlcmUgZGlmZmVyZW5jZXMgYmV0d2VlbiBwdWJsaWMgYW5kIHByaXZhdGUgaW5zdXJlcnMgZm9yIGdlbmV0aWMgdGVzdHM/XCJcbiAgICAgICAgYT1cIlB1YmxpYyBpbnN1cmFuY2UgaGFzIGRpZmZlcmVudCByZWd1bGF0aW9ucyB0aGFuIHByaXZhdGUgaW5zdXJhbmNlLCBidXQgSVx1MjAxOW0gbm90IGVudGlyZWx5IHN1cmUgaWYgdGhhdCBsZWFkcyB0byBkaWZmZXJlbnQgZGVjaXNpb25zIHJlZ2FyZGluZyBnZW5ldGljIHRlc3RpbmcuIEkgY2FuIGxvb2sgaW50byB0aGUgcHVibGljIGluc3VyYW5jZSByZWd1bGF0aW9ucyBpZiB0aGF0IHdvdWxkIGJlIGhlbHBmdWwuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSXMgbmV3Ym9ybiBzY3JlZW5pbmcgZm9yIENGIGNvdmVyZWQgYnkgaGVhbHRoIGluc3VyYW5jZT9cIlxuICAgICAgICBhPVwiWWVzLCBuZXdib3JuIHNjcmVlbmluZyBpcyBwYXJ0IG9mIGEgc2V0IG9mIGhlYWx0aCBleGFtaW5hdGlvbnMgZm9yIGNoaWxkcmVuIGFuZCBhZG9sZXNjZW50cywgcmVndWxhdGVkIHVuZGVyIFx1MDBBNzI2IFNHQiBWIChTb2NpYWwgU2VjdXJpdHkgQ29kZSkuIFNpbmNlIGl0XHUyMDE5cyBwYXJ0IG9mIHRoZSByZWd1bGFyIHNjcmVlbmluZyBwcm9jZXNzLCBpdFx1MjAxOXMgY292ZXJlZCBieSBoZWFsdGggaW5zdXJhbmNlIHdpdGhvdXQgYWRkaXRpb25hbCByZXF1aXJlbWVudHMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGRvZXMgcHVibGljIGluc3VyYW5jZSBoYW5kbGUgQ0YgdHJlYXRtZW50IHdoZW4gYSB0ZXN0IGNvbWVzIGJhY2sgbmVnYXRpdmU/XCJcbiAgICAgICAgYT1cIlB1YmxpYyBoZWFsdGggaW5zdXJhbmNlIHdvcmtzIHdpdGggc3RhbmRhcmRpemVkIGd1aWRlbGluZXMsIGFuZCBpZiBhIHRlc3QgY29tZXMgYmFjayBuZWdhdGl2ZSwgaXQgbWF5IG5vIGxvbmdlciBtZWV0IHRoZSBjcml0ZXJpYSBmb3IgY292ZXJhZ2UuIEhvd2V2ZXIsIGlmIGEgZG9jdG9yIHJlY29uZmlybXMgdGhlIGRpYWdub3NpcywgdGhlIHRyZWF0bWVudCBzaG91bGQgY29udGludWUgdG8gYmUgY292ZXJlZC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJJcyB0aGVyZSBubyBydWxlIHRoYXQgc2F5cyBnZW5ldGljIGRpc2Vhc2VzLCBvbmNlIGRpYWdub3NlZCwgc2hvdWxkIHJlbWFpbiBjb3ZlcmVkIHNpbmNlIGdlbmV0aWNzIGRvblx1MjAxOXQgY2hhbmdlP1wiXG4gICAgICAgIGE9XCJJbiB0aGVvcnksIHllcy4gQnV0IHRoZSBndWlkZWxpbmVzIGFyZSB1c3VhbGx5IGJhc2VkIG9uIG1lZGljYWwgZXZpZGVuY2UgYXQgdGhlIHRpbWUsIGFuZCByZS10ZXN0aW5nIGNhbiBzb21ldGltZXMgbGVhZCB0byBjb21wbGljYXRpb25zIGluIHRlcm1zIG9mIGNvdmVyYWdlIGlmIHRoZSByZXN1bHQgZGlmZmVycy4gSG93ZXZlciwgd2l0aCBwcm9wZXIgbWVkaWNhbCBkb2N1bWVudGF0aW9uLCBpdCBzaG91bGQgYmUgcG9zc2libGUgdG8gbWFpbnRhaW4gY292ZXJhZ2UuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSGF2ZSByZWNlbnQgY2hhbmdlcyBpbiBnZW5lIHRoZXJhcHkgY29zdHMgaW1wYWN0ZWQgcHVibGljIGhlYWx0aCBpbnN1cmFuY2U/XCJcbiAgICAgICAgYT1cIk5vdCBtdWNoIGhhcyBjaGFuZ2VkLiBJdFx1MjAxOXMgYSBwb2xpdGljYWwgYW5kIHNvY2lldGFsIHF1ZXN0aW9uXHUyMDE0aG93IHdpbGxpbmcgYXJlIHdlIHRvIGZpbmFuY2UgdGhlc2UgZXhwZW5zaXZlIHRoZXJhcGllcz8gUmlnaHQgbm93LCBwdWJsaWMgaGVhbHRoIGluc3VyYW5jZSBvcGVyYXRlcyB1bmRlciBhbiBlY29ub21pYyBlZmZpY2llbmN5IHByaW5jaXBsZSwgbWVhbmluZyB0aGUgbW9zdCBjb3N0LWVmZmVjdGl2ZSB0cmVhdG1lbnRzIGFyZSBwcmVmZXJyZWQuIEJ1dCBpZiBnZW5lIHRoZXJhcGllcyBiZWNvbWUgdGhlIG9ubHkgdHJlYXRtZW50IG9wdGlvbiBmb3IgY2VydGFpbiBjb25kaXRpb25zLCB0aGV5IHdpbGwgbGlrZWx5IGhhdmUgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIGNvdmVyYWdlLCBhbmQgaXQgY291bGQgYmUgYSBjaGFsbGVuZ2UgZm9yIHRoZSBzeXN0ZW0uIFRoZXJlIGFyZSBhbHNvIG9uZ29pbmcgcHJpY2UgbmVnb3RpYXRpb25zIGJldHdlZW4gaW5zdXJlcnMgYW5kIG1hbnVmYWN0dXJlcnMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiRG8gcGF0ZW50cyBwbGF5IGEgc2lnbmlmaWNhbnQgcm9sZSBpbiBrZWVwaW5nIGdlbmUgdGhlcmFweSBjb3N0cyBoaWdoP1wiXG4gICAgICAgIGE9XCJZZXMsIHBhdGVudHMgY2VydGFpbmx5IGluZmx1ZW5jZSB0aGUgcHJpY2UsIGJ1dCB0aGUgcHJvZHVjdGlvbiBvZiBnZW5lIHRoZXJhcGllcyBpcyBpbmhlcmVudGx5IGV4cGVuc2l2ZSBkdWUgdG8gdGhlIGNvbXBsZXggcmVzZWFyY2ggYW5kIG1hbnVmYWN0dXJpbmcgcHJvY2Vzcy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXb3VsZCBwcml2YXRlIHN1cHBsZW1lbnRhbCBpbnN1cmFuY2UgYmUgYW4gb3B0aW9uIGZvciBjb3ZlcmluZyBleHBlbnNpdmUgZ2VuZSB0aGVyYXBpZXM/XCJcbiAgICAgICAgYT1cIkl0XHUyMDE5cyBwb3NzaWJsZSB0aGF0IHByaXZhdGUgc3VwcGxlbWVudGFsIGluc3VyYW5jZSBjb3VsZCBjb3ZlciB0aGVzZSB0aGVyYXBpZXMgaWYgcHVibGljIGhlYWx0aCBpbnN1cmFuY2UgZG9lc25cdTIwMTl0LiBIb3dldmVyLCB0aGlzIHJhaXNlcyBjb25jZXJucyBhYm91dCBlcXVpdHkgYW5kIGFjY2Vzc2liaWxpdHkuIElmIHB1YmxpYyBpbnN1cmFuY2UgZG9lc25cdTIwMTl0IGNvdmVyIGl0LCB0aGUgYnVyZGVuIG1pZ2h0IGZhbGwgb24gcHJpdmF0ZSBpbnN1cmFuY2UsIHdoaWNoIGNvdWxkIGNyZWF0ZSBkaXNwYXJpdGllcyBpbiBhY2Nlc3MgdG8gdHJlYXRtZW50LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIklzIGdlbmUgdGhlcmFweSByZXNlYXJjaCBkcml2ZW4gbW9yZSBieSBiaW9sb2d5IG9yIG1lZGljaW5lP1wiXG4gICAgICAgIGE9XCJJdFx1MjAxOXMgZGVmaW5pdGVseSBpbnRlcmRpc2NpcGxpbmFyeS4gQm90aCBiaW9sb2dpc3RzIGFuZCBtZWRpY2FsIHByb2Zlc3Npb25hbHMgY29udHJpYnV0ZS4gRm9yIGV4YW1wbGUsIGF0IG91ciB1bml2ZXJzaXR5LCB0aGUgbWVkaWNhbCBhbmQgYmlvbG9neSBmYWN1bHRpZXMgY29sbGFib3JhdGUgY2xvc2VseS4gQmlvbG9naXN0cyB1c3VhbGx5IGhhbmRsZSB0aGUgcmVzZWFyY2gsIHdoaWxlIG1lZGljYWwgcHJvZmVzc2lvbmFscyBmb2N1cyBtb3JlIG9uIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJEbyBiaW9sb2dpc3RzIG9yIG1lZGljYWwgcHJvZmVzc2lvbmFscyBkZXZlbG9wIGdlbmUgdGhlcmFwaWVzP1wiXG4gICAgICAgIGE9XCJJbiB0ZXJtcyBvZiBkZXZlbG9wbWVudCwgaXRcdTIwMTlzIG1haW5seSBiaW9sb2dpc3RzIGFuZCBiaW90ZWNobm9sb2dpc3RzLiBNZWRpY2FsIHByb2Zlc3Npb25hbHMgZ2V0IGludm9sdmVkIHByaW1hcmlseSBpbiBjbGluaWNhbCB0cmlhbHMuIFNvbWUgZG9jdG9ycyBkbyByZXNlYXJjaCwgYnV0IHRoZXlcdTIwMTlyZSBvZnRlbiBuZWVkZWQgaW4gaG9zcGl0YWxzLCBzbyBoYW5kcy1vbiBkZXZlbG9wbWVudCBpcyBtb3N0bHkgaGFuZGxlZCBieSBtb2xlY3VsYXIgYmlvbG9naXN0cyBvciBiaW90ZWNobm9sb2dpc3RzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkRvZXMgcmVzZWFyY2ggaW4gZ2Vub21lIG1lZGljaW5lIGFuZCBnZW5lIHRoZXJhcGllcyBjb21lIGZyb20gYmlvbG9neSwgbWVkaWNpbmUsIG9yIGJvdGg/XCJcbiAgICAgICAgYT1cIkl0XHUyMDE5cyBtYWlubHkgaW50ZXJkaXNjaXBsaW5hcnkuIEEgbG90IG9mIGZ1bmRpbmcgY29tZXMgZnJvbSBpbmR1c3RyeSwgbGlrZSBCaW9OVGVjaCwgb3IgZm91bmRhdGlvbnMgbGlrZSBNdWtvdmlzemlkb3NlIGUuVi4sIHdoaWNoIGZ1bmRzIHJlc2VhcmNoIG9uIGN5c3RpYyBmaWJyb3Npcy4gQnV0IGluIHRlcm1zIG9mIHByYWN0aWNhbCByZXNlYXJjaCwgaXRcdTIwMTlzIHVzdWFsbHkgYmlvbG9naXN0cyBvciBiaW90ZWNobm9sb2dpc3RzLiBXaXRob3V0IGluZHVzdHJ5IHN1cHBvcnQsIHJlc2VhcmNoIGNhbiBzdHJ1Z2dsZSBkdWUgdG8gYSBsYWNrIG9mIGZ1bmRpbmcsIHNvIGhhdmluZyBiYWNraW5nIGlzIGVzc2VudGlhbC5cIiAvPlxuICAgIDwvPixcbiAgICBzdW1tYXJ5OiBcIk91ciBkaXNjdXNzaW9uIGFkZHJlc3NlZCB0aGUgY29tcGxleGl0aWVzIG9mIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHRyZWF0bWVudHMsIGZvY3VzaW5nIG9uIGdlbmUgdGhlcmFweSBhbmQgaGVhbHRoIGluc3VyYW5jZSBwcm9jZXNzZXMuIFdlIGxlYXJuZWQgYWJvdXQgdGhlIHJlZ3VsYXRvcnkgY2hhbGxlbmdlcyBnZW5lIHRoZXJhcGllcyBmYWNlLCBwYXJ0aWN1bGFybHkgcmVnYXJkaW5nIHRoZSBFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5IChFTUEpIGFuZCB0aGUgQU1OT0cgcHJvY2VzcyBmb3IgcmVpbWJ1cnNlbWVudCBhc3Nlc3NtZW50cy4gUHVibGljIGluc3VyZXJzIGltcG9zZSBzdHJpY3RlciBndWlkZWxpbmVzIHRoYW4gcHJpdmF0ZSBpbnN1cmVycywgZW1waGFzaXppbmcgdGhlIGltcG9ydGFuY2Ugb2YgZWFybHkgaW50ZXJ2ZW50aW9uIGluIENGIGFuZCB0aGUgbmVlZCBmb3IgYWRhcHRhYmxlIHBvbGljaWVzIGZvciBhdHlwaWNhbCBjYXNlcy4gV2UgcmVjb2duaXplZCB0aGUgaGlnaCBjb3N0cyBhc3NvY2lhdGVkIHdpdGggZ2VuZSB0aGVyYXBpZXMgYW5kIGluY29ycG9yYXRlZCBjb3N0LWJlbmVmaXQgYW5hbHlzaXMgaW50byBvdXIgcHJvamVjdCBwbGFubmluZy4gRm9sbG93aW5nIHRoZSBpbnRlcnZpZXcsIHdlIHJlZmluZWQgb3VyIGFwcHJvYWNoIHRvIGluY2x1ZGUgc3RyYWlnaHRmb3J3YXJkIGRlbGl2ZXJ5IG1ldGhvZHMgYW5kIGF0dGVuZGVkIGEgR3hQIGNvdXJzZSBmb3IgcmVndWxhdG9yeSBjb21wbGlhbmNlLiBFbmdhZ2luZyB3aXRoIHN0YXJ0LXVwcyBmdXJ0aGVyIGluZm9ybWVkIG91ciBwcmFjdGljYWwgaW1wbGVtZW50YXRpb24gc3RyYXRlZ2llcywgZW5zdXJpbmcgb3VyIHByb2plY3QgYWxpZ25zIHdpdGggYm90aCBzY2llbnRpZmljIGFuZCByZWd1bGF0b3J5IG5lZWRzLlwiLFxuICAgIG1vbnRoczogXCJqdW5lXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3pvb20tbmljb2xlLndlYnBcIixcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiVmlzaXRpbmcgQWNoZW1hIFwiLFxuICAgIG5hY2hubmFtZTogXCJpbiBGcmFua2Z1cnRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydmcmFua2Z1cnRtZXNzZSddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcbiAgICBoZWFkaW5nOiBcIlNvbWUgb2Ygb3VyIHRlYW0gbWVtYmVycyBhdHRlbmRlZCB0aGUgZmFpciBpbiBGcmFua2Z1cnQgdG8gbmV0d29yayB3aXRoIGluZHVzdHJ5IGxlYWRlcnNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmcmFua2Z1cnRtZXNzZVwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIkFjaGVtYSB3YXMgYSBncmVhdCBleHBlcmllbmNlLiBJIGdvdCB0byBtZWV0IGEgbG90IG9mIGludGVyZXN0aW5nIHBlb3BsZSBhbmQgbGVhcm4gYWJvdXQgdGhlaXIgcHJvamVjdHMuIEl0IHJlYWxseSBtb3RpdmF0ZWQgbWUgZm9yIG15IG93biB3b3JrLlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6XCJXaWVzbmVyLCBUZWFtbWVtYmVyXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkxpc2FcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BdCBBY2hlbWEgMjAyNCwgd2UgYWltZWQgdG8gY29ubmVjdCB3aXRoIGluZHVzdHJ5IGxlYWRlcnMgYW5kIGlubm92YXRvcnMsIHRvIGV4cGxvcmUgcG90ZW50aWFsIGNvbGxhYm9yYXRpb25zIGFuZCBnYXRoZXIgaW5zaWdodHMgb24gbGFib3JhdG9yeSBwcmFjdGljZXMuIE91ciBnb2FsIHdhcyB0byBlbmhhbmNlIG91ciB1bmRlcnN0YW5kaW5nIG9mIGN1dHRpbmctZWRnZSB0ZWNobm9sb2dpZXMgYW5kIHJlc291cmNlcyBpbiB0aGUgbGlmZSBzY2llbmNlcyBzZWN0b3IuPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5EdXJpbmcgb3VyIHRpbWUgYXQgQWNoZW1hLCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byBsaWZlIHNjaWVuY2VzLCB3aXRoIGEgc3Ryb25nIGZvY3VzIG9uIExOUCBwcm9kdWN0aW9uIGFuZCBsYWIgYmVzdCBwcmFjdGljZXMuIE91ciBkaXNjdXNzaW9ucyB3aXRoIGV4cGVydHMsIGluY2x1ZGluZyBKdXR0YSBmcm9tIGEgbGlmZSBzY2llbmNlIGNvbXBhbnksIHByb3ZpZGVkIHVzIHdpdGggaW5ub3ZhdGl2ZSBzb2x1dGlvbnMgYW5kIGN1dHRpbmctZWRnZSB0ZWNobmlxdWVzLiBIZXIgaW5zaWdodHMgaW50byBjdXJyZW50IHRyZW5kcyBoZWxwZWQgdXMgYmV0dGVyIHVuZGVyc3RhbmQgaG93IHRvIGFkdmFuY2Ugb3VyIHByb2plY3QuPC9wPixcbiAgICAgIDxwPlRocm91Z2ggdmFyaW91cyBleHBlcnQgaW50ZXJhY3Rpb25zLCB3ZSBkZWVwZW5lZCBvdXIga25vd2xlZGdlIG9mIExOUCBwcm9kdWN0aW9uLCBsZWFybmluZyBrZXkgbWFudWZhY3R1cmluZyB0ZWNobmlxdWVzIGVzc2VudGlhbCBmb3IgZGV2ZWxvcGluZyBlZmZlY3RpdmUgdGhlcmFwZXV0aWNzLiBUaGVzZSBpbnNpZ2h0cyBhbGxvd2VkIHVzIHRvIG9wdGltaXplIG91ciBwcm9kdWN0aW9uIG1ldGhvZHMsIGVuc3VyaW5nIG1vcmUgZWZmaWNpZW50IHByb2Nlc3NlcyBtb3ZpbmcgZm9yd2FyZC48L3A+LFxuICAgICAgPHA+VW5kZXJzdGFuZGluZyByaWdvcm91cyBxdWFsaXR5IGNvbnRyb2wgcHJvY2Vzc2VzIHdhcyBhbm90aGVyIGtleSB0YWtlYXdheSwgZW5hYmxpbmcgdXMgdG8gaW1wbGVtZW50IGNoZWNrcyB0aGF0IHdpbGwgYm9vc3QgdGhlIHJlbGlhYmlsaXR5IGFuZCBzYWZldHkgb2Ygb3VyIHRoZXJhcGV1dGljcy4gVGhlc2UgY29tcHJlaGVuc2l2ZSBpbnNpZ2h0cyBoYXZlIG5vdCBvbmx5IHN1cHBvcnRlZCBvdXIgY3VycmVudCBnb2FscyBidXQgYWxzbyBwcmVwYXJlZCB1cyBmb3IgZnV0dXJlIGNoYWxsZW5nZXMsIGVxdWlwcGluZyB1cyB3aXRoIHRoZSB0b29scyB0byBuYXZpZ2F0ZSB0aGUgY29tcGxleGl0aWVzIG9mIHJlc2VhcmNoIGFuZCB0aGVyYXBldXRpYyBkZXZlbG9wbWVudC48L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPkRpc2N1c3Npb25zIHdpdGggaW5kdXN0cnkgZXhwZXJ0cyBoYXZlIHByb3ZpZGVkIGludmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgcHJvZHVjdGlvbiBvZiBMTlBzW0xJTksgTE5QY3ljbGVdLCBhIGNydWNpYWwgYXNwZWN0IG9mIG91ciBwcm9qZWN0LiBXZSBoYXZlIGlkZW50aWZpZWQgaW5ub3ZhdGl2ZSBtYW51ZmFjdHVyaW5nIHRlY2huaXF1ZXMgYW5kIHF1YWxpdHkgY29udHJvbCBwcm9jZWR1cmVzIHRoYXQgd2UgY2FuIGludGVncmF0ZSBpbnRvIG91ciBwcm9jZXNzZXMuIFRoaXMga25vd2xlZGdlIG5vdCBvbmx5IHN1cHBvcnRzIG91ciBpbW1lZGlhdGUgb2JqZWN0aXZlcyBidXQgYWxzbyBwb3NpdGlvbnMgdXMgdG8gb3ZlcmNvbWUgZnV0dXJlIGNoYWxsZW5nZXMgaW4gZGV2ZWxvcGluZyBlZmZlY3RpdmUgdGhlcmFwaWVzLjwvcD5dLFxuICAgIHN1bW1hcnk6IFs8cD5EdXJpbmcgZGlzY3Vzc2lvbnMgd2l0aCBpbmR1c3RyeSBleHBlcnRzIGF0IEFjaGVtYSAyMDI0LCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgdGhhdCB3aWxsIGhhdmUgYSBzaWduaWZpY2FudCBpbXBhY3Qgb24gb3VyIHByb2plY3QgYW5kIHByb3ZpZGUgdXMgd2l0aCBpbm5vdmF0aXZlIG1hbnVmYWN0dXJpbmcgdGVjaG5pcXVlcyBhbmQgcXVhbGl0eSBjb250cm9sIHByb2NlZHVyZXMgdGhhdCB3ZSBhcmUgbm93IGludGVncmF0aW5nIGludG8gb3VyIHdvcmtmbG93cy4gVGhlc2UgaW5zaWdodHMgd2lsbCBoZWxwIHVzIHRvIG9wdGltaXNlIG91ciBwcm9kdWN0aW9uIHByb2Nlc3NlcyB0byBhY2hpZXZlIG1vcmUgZWZmaWNpZW50IGFuZCByZWxpYWJsZSByZXN1bHRzIGluIHRoZXJhcGV1dGljIGRldmVsb3BtZW50LiBUaGUgbmV3IGtub3dsZWRnZSBzdXBwb3J0cyBvdXIgY3VycmVudCBnb2FscyBhbmQgcHJlcGFyZXMgdXMgZm9yIGZ1dHVyZSBjaGFsbGVuZ2VzIGluIHRoZSBkZXZlbG9wbWVudCBvZiBlZmZlY3RpdmUgdGhlcmFwaWVzPC9wPl0sIFxuICAgIG1vbnRoczogXCJqdW5lXCIsXG4gICAgcGljdHVyZXVybF9haW06XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYWNoZW1hMS53ZWJwXCIsXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYWNoZW1hMi53ZWJwXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2FjaGVtYTMud2VicFwiLFxuICAgIG1vcmVfcGljdHVyZXM6IFtcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9hY2hlbWE0LndlYnAsXCJdLFxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJLYXRyaW5cIixcbiAgICBuYWNobm5hbWU6IFwiV2VzdGhvZmZcIixcbiAgICBqb2I6IFwicGh5c2lvdGhlcmFwaXN0XCIsXG4gICAgYWZmaWxpYXRpb246IFwiSW5kZXBlbmRlbnRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd3ZXN0aG9mZiddLFxuICAgIHRhZzogXCJNZWRpY2FsIFByb2Zlc3Npb25hbFwiLFxuICAgIGhlYWRpbmc6IFwiSW4tRGVwdGggVmlzaXQgdG8gU3BlY2lhbGl6ZWQgUGh5c2lvdGhlcmFwaXN0IGZvciBDRiBCcmVhdGhpbmcgVGhlcmFweVwiLFxuICAgIGludGVydmlld3RhYmlkOiBcIndlc3Rob2ZmdmlzaXRcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlOiBcIkNoaWxkcmVuIGFyZSB0aGUgd29ybGQncyBiZXN0IFx1MjAxQ211Y3VzIGhpZGVyc1x1MjAxRC5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8YT5EdXJpbmcgdGhlIGxhc3QgaW50ZXJ2aWV3IHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJ3ZXN0aG9mZmludlwiIHRleHQ9XCJLYXRyaW4gV2VzdGhvZmZcIiAvPiwgc2hlIGludml0ZWQgdXMgdG8gam9pbiBhIGZldyBwaHlzaW90aGVyYXB5IHNlc3Npb25zIFx1MjAxMyBub3QganVzdCBhcyBzcGVjdGF0b3JzIGJ1dCBhcyBwYXJ0aWNpcGFudHMuIFdlIGdsYWRseSBhY2NlcHRlZCBhbmQgdmlzaXRlZCBoZXIgaW4gaGVyIHByYWN0aWNlLiBPdmVyIGEgZmV3IGhvdXJzLCB3ZSB0b29rIHBhcnQgaW4gZm91ciBzZXNzaW9ucyB3aXRoIGRpZmZlcmVudCBjaGlsZHJlbiBcdTIwMTMgbm90IGFsbCBvZiB0aGVtIENGIHBhdGllbnRzLiAgPC9hPl0sXG4gICAgaW5zaWdodHM6IFwiRHVyaW5nIHRoZSBzZXNzaW9ucywgd2UgY291bGQgYXNrIEthdHJpbiBhcyB3ZWxsIGFzIHRoZSByZXNwZWN0aXZlIHBhcmVudHMgYW5kIGNoaWxkcmVuIHF1ZXN0aW9ucy4gV2UgbGVhcm5lZCB0aGF0IGJyZWF0aGluZyB0aGVyYXB5IGlzIGFsc28gdXNlZnVsIGZvciBvdGhlciBpbGxuZXNzZXMgYW5kIHRoYXQgeW91IGNhbiBlYXNpbHkgZG8gc29tZSBvZiB0aGUgZXhlcmNpc2VzIHlvdXJzZWxmLiBEZXNwaXRlIGhhdmluZyBjeXN0aWMgZmlicm9zaXMsIHRoZSBjaGlsZHJlbiB3ZXJlIGJldHRlciBhdCB0aGUgYnJlYXRoaW5nIGV4ZXJjaXNlcyB0aGFuIHdlIGFuZCBLYXRyaW4gd2VyZSEgVGhlIHNlc3Npb25zIHRha2UgMzAgdG8gNjAgbWludXRlcyBhbmQgaW5jbHVkZSBib3RoIG1hbnVhbCB0aGVyYXB5IGFuZCBwbGF5ZnVsIGVsZW1lbnRzIHRvIGhlbHAgZW5nYWdlIHRoZSBjaGlsZHJlbi4gTW9zdCBvbGRlciBjaGlsZHJlbiByYW5nZSBmcm9tIG1pbGRseSB1bmhhcHB5IHRvIGVudGh1c2lhc3RpYywgYnV0IGJhYmllcyBvZnRlbiBjcnkgZHVyaW5nIHRoZSB0cmVhdG1lbnRzIGFzIGl0IGZlZWxzIHVuY29tZm9ydGFibGUuIFRoaXMgaXMgb2Z0ZW4gaGFyZCBvbiB0aGUgcGFyZW50cyBldmVuIHRob3VnaCB0aGUgdHJlYXRtZW50IGJyaW5ncyBnb29kIHJlc3VsdHMuIEEgbG90IG9mIGNoaWxkcmVuIHRlbmQgdG8gaGlkZSB0aGF0IHRoZXkgaGF2ZSBtdWN1cyBzaXR0aW5nIGluIHRoZWlyIGx1bmdzIGJ5IHN1cHByZXNzaW5nIGNvdWdocy4gRXNwZWNpYWxseSB3aXRoIHlvdW5nIGNoaWxkcmVuLCBpdCBpcyBpbXBvcnRhbnQgdG8gc3RheSBvbiB0b3Agb2YgaXQgYW5kIGRvIHJlZ3VsYXIgYnJlYXRoaW5nIHRoZXJhcHkgZXZlbiBpZiBpdCBzZWVtcyBsaWtlIGl0IGlzIGN1cnJlbnRseSBub3QgbmVjZXNzYXJ5LiBXZSBhbHNvIGxlYXJuZWQgYWJvdXQgdGhlIHZhcmlvdXMgaW5mb3JtYXRpb25hbCBtYXRlcmlhbCBhaW1lZCBhdCBjaGlsZHJlbiB0byBoZWxwIGV4cGxhaW4gdGhlcmFwaWVzIGFuZCBzeW1wdG9tcyB0byB0aGVtIGFuZCB3aGF0IGFjY2Vzc29yaWVzIGZvciBicmVhdGhpbmcgdGhlcmFweSB0aGVyZSBhcmUuIEZvciBleGFtcGxlLCBhIGZsdXR0ZXIgaXMgdG8gdHJhaW4gYnJlYXRoaW5nIG91dCBmb3JjZWZ1bGx5IGJ5IGJyZWF0aGluZyBhZ2FpbnN0IGEgc21hbGwgd2VpZ2h0IGFuZCBhIGJpbmRlciBjYW4gYmUgd29ybiBhdCBuaWdodCB0byBwcm9tb3RlIGRlZXAgYnJlYXRoaW5nLiBcIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJUaGUgbW9zdCBpbXBvcnRhbnQgdGhpbmcgd2FzIHRoYXQgYm90aCBLYXRyaW4gYW5kIHRoZSBwYXJlbnRzIGFncmVlZCB0aGF0IHRoZSBjaGlsZHJlbiB3ZXJlIGFibGUgdG8gaW5oYWxlIGF0IGFuIGVhcmx5IGFnZSBhbmQgdGhhdCB0aGVyZSB3ZXJlIGdlbmVyYWxseSBubyBwaHlzaWNhbCBwcm9ibGVtcyB3aXRoIGluaGFsYXRpb24gaW4gZ2VuZXJhbC4gVGhpcyByZWluZm9yY2VkIG91ciBkZWNpc2lvbiB0byB3b3JrIHRvd2FyZHMgZGVsaXZlcnkgYnkgaW5oYWxhdGlvbi4gSXQgd2FzIHZlcnkgaW50ZXJlc3RpbmcgdG8gc2VlIHRoZSBkaWZmZXJlbnQgd2F5cyBjaGlsZHJlbiBkZWFsIHdpdGggdGhlaXIgZXhlcmNpc2VzIGFuZCBoZWFyIGFib3V0IHRoZSBwcm9ncmVzcyB0aGV5IG1hZGUuICBcIixcbiAgICB0ZXh0OiBbPG9sPlxuICAgICAgPGxpPlxuICAgICAgICA8c3Ryb25nPlJvYmluICgmZ3Q7MTApPC9zdHJvbmc+XG4gICAgICAgIDxwPlJvYmluIHdpbGwgc29vbiBzdGFydCA0dGggZ3JhZGUgYW5kIHRha2VzIG1vZHVsYXRvcnMuIFNpbmNlIHRha2luZyB0aGVtLCBtYW55IHByb2JsZW1zIGhhdmUgc3Vic2lkZWQuIE5vIHJlZ3VsYXIgcG5ldW1vbmlhIHdpdGggbG9uZyBob3NwaXRhbCBzdGF5cyBhbmQgdGhlIG11Y3VzIGNvbWVzIG91dCBlYXNpZXIuIE5ldmVydGhlbGVzcywgUm9iaW4gc3RpbGwgZ29lcyB0byBwaHlzaW90aGVyYXB5IHJlZ3VsYXJseSB0byBkbyBtYW51YWwgYnJlYXRoaW5nIHRoZXJhcHkgdG8gZ2V0IHRoZSBtdWN1cyBvdXQuIEthdHJpbiB0ZWxscyB1cyBob3cgdGhlIG11Y3VzIGNoYW5nZXMgY29sb3IgdGhlIGxvbmdlciBpdCBzdGF5cyBpbiB0aGUgbHVuZ3MuIFRoZSBuZXcgbXVjdXMgaXMgd2hpdGUsIGFuZCB0aGUgb2xkZXIgbXVjdXMgZ2V0cyB5ZWxsb3cgZmlyc3QgYW5kIHRoZW4gZ2V0cyBkYXJrZXIgd2l0aCB0aW1lIHVudGlsIGl0IHJlYWNoZXMgYSBibGFjayBjb2xvci4gTm93YWRheXMsIFJvYmluIHJhcmVseSBoYXMgZGFyayBtdWN1cyBvciBjbHVtcHMsIGJ1dCB3ZSBjYW4gc3RpbGwgaGVhciB0aGUgcnVzdGxpbmcgYXMgS2F0cmluIHN0YXJ0cyB0aGUgYXV0b2dlbm91cyBkcmFpbmFnZSAoQXV0b2dlbmUgRHJhaW5hZ2UpIGJ5IHByZXNzaW5nIG9uIFJvYmluJ3MgY2hlc3QuIFRoZSBnb2FsIGlzIHRvIGdldCBvdXQgdGhlIG11Y3VzIGRlZXAgaW4gdGhlIGx1bmdzLiBUbyBkbyB0aGF0LCBSb2JpbiBtdXN0IHJlcGVhdCB0aGUgcm91dGluZSBcdTIwMTMgYnJlYXRoaW5nIGluIGRlZXBseSwgaG9sZGluZywgYnJlYXRoaW5nIG91dCBcdTIwMTMgbXVsdGlwbGUgdGltZXMgYW5kIHRoZW4gY291Z2ggYW5kIHNwaXQgdGhlIG11Y3VzIG91dC4gU29tZXRpbWVzIGl0IHdvcmtzLCBidXQgb3RoZXIgdGltZXMgdGhlIG11Y3VzIGRvZXMgbm90IGNvbWUgb3V0IGVhc2lseS4gV2hpbGUgYWNjb3JkaW5nIHRvIEthdHJpbiB0aGUgYXV0b2dlbm91cyBkcmFpbmFnZSBpcyB0aGUgZ29sZCBzdGFuZGFyZCwgdGhleSBkbyBvdGhlciB1c2VmdWwgZXhlcmNpc2VzLCB0b28uIEZvciBleGFtcGxlLCBwcmVzc2luZyB0aGUgVm9qdGEgcG9pbnRzICh3aGljaCB0aGUgY2hpbGRyZW4gY2FsbCBcdTIwMUN0aGUgbWFnaWMgcG9pbnRzXHUyMDFEKSBvbiB0aGUgY2hlc3QgdG8gYWN0aXZhdGUgYSBkZWVwIGJyZWF0aGluZyByZWZsZXggYW5kIGdldCBhaXIgaW50byBwYXJ0cyBvZiB0aGUgbHVuZ3MgdGhhdCBtYXkgbm90IGhhdmUgYmVlbiB1c2VkIHByZXZpb3VzbHkuIE9yIHBoeXNpY2FsIGFjdGl2aXR5IHN1Y2ggYXMgY2xpbWJpbmcgYSBmZXcgc3RlcHMgb24gYSBjbGltYmluZyBsYWRkZXIgYW5kIGhhbmdpbmcgb24gaXQgdG8gc3RyZXRjaCB0aGUgdGhvcmF4IG11c2NsZXMuPC9wPlxuICAgICAgPC9saT5cbiAgICAgIDxsaT5cbiAgICAgICAgPHN0cm9uZz5TYW0gKCZsdDsxMCkgJiBBbGV4ICgmbHQ7MTApPC9zdHJvbmc+XG4gICAgICAgIDxwPlNhbSBhbmQgQWxleCBhcmUgc2libGluZ3MgYW5kIGRvIG5vdCBoYXZlIENGIGJ1dCBhbm90aGVyIGFmZmxpY3Rpb24gdGhhdCBjYXVzZXMgYSBwZXJzaXN0ZW50IGNvdWdoLiBUaGV5IGNvbWUgdG9nZXRoZXIgd2l0aCBhIHBhcmVudCB0d2ljZSBhIHdlZWsgYW5kIGRvIGhhbmdpbmcgZXhlcmNpc2VzIGZyb20gdGhlIGNlaWxpbmcsIG5hc2FsIHNob3dlcnMgd2l0aCBuZWVkbGVsZXNzIHN5cmluZ2VzLCBhbmQgdGhlIFx1MjAxQ21hZ2ljIHBvaW50cy5cdTIwMUQgS2F0cmluIGFsc28gY2hlY2tzIHRoZWlyIGx1bmdzIGZvciBtdWN1cyBpbiBhIHNpbWlsYXIgbWFubmVyIHRvIGF1dG9nZW5vdXMgZHJhaW5hZ2UuIFdlLCB0b28sIHRyaWVkIHRvIGRvIHRoZSBuYXNhbCBzaG93ZXIsIGFuZCBiZWluZyBhIGdyb3duLXVwIHJlYWxseSBkb2VzIG5vdCBndWFyYW50ZWUgYmVpbmcgYWJsZSB0byBkbyB0aGF0IHByb3Blcmx5ISBUaGlzIGhpZ2hsaWdodGVkIHRoYXQgdGhlIGNoaWxkcmVuIGtub3cgYWxsIHRoZWlyIGV4ZXJjaXNlcyBieSBoZWFydCBhdCBhIHlvdW5nIGFnZS4gT24gcmVxdWVzdCwgdGhlaXIgcGFyZW50IHRvbGQgdXMgdGhhdCB0aGUgcGh5c2lvdGhlcmFweSBtYWRlIGEgYmlnIGRpZmZlcmVuY2UgZm9yIGJvdGggb2YgdGhlbS48L3A+XG4gICAgICA8L2xpPlxuICAgICAgPGxpPlxuICAgICAgICA8c3Ryb25nPlRvbmkgKCZsdDs1KTwvc3Ryb25nPlxuICAgICAgICA8cD5Ub25pIGhhcyBhIGxpZ2h0IHZlcnNpb24gb2YgQ0YgYW5kIGhhcyBiZWVuIGRvaW5nIHBoeXNpb3RoZXJhcHkgd2l0aCBLYXRyaW4gc2luY2Ugc2hvcnRseSBhZnRlciBiaXJ0aC4gSW4gY29udHJhc3QgdG8gbW9zdCBjaGlsZHJlbiB3ZSBtZXQgb3IgdGFsa2VkIGFib3V0LCBUb25pIHJlZnVzZXMgbWVkaWNhdGlvbi4gTW9kdWxhdG9ycyBhcmUgYSBwb3NzaWJpbGl0eSwgYnV0IHRoZW0gYW5kICdldmVyeXRoaW5nIHN0aW5reScgaXMgYSBuby1nbywgZXZlbiB0aG91Z2ggaW5oYWxpbmcgd291bGQgYmUgdmVyeSBiZW5lZmljaWFsIGR1ZSB0byB0aGUgbXVjdXMgYnVpbGR1cC4gTW9zdCBleGVyY2lzZXMgcmVzdWx0IGluIGNyeWluZyBhbmQgc2NyZWFtaW5nLCB3aGljaCBpcyB2ZXJ5IGV4aGF1c3RpbmcgZm9yIHRoZSBjaGlsZC4gRHVlIHRvIHRoZSBsaWdodCBuYXR1cmUgb2YgVG9uaSdzIHZhcmlhbnQsIHRoZXkgYXJlIG5vdCBpbiBkYW5nZXIsIGJ1dCBhIHBlcm1hbmVudCB0aGVyYXB5IHdvdWxkIGJlIHZlcnkgYmVuZWZpY2lhbC48L3A+XG4gICAgICA8L2xpPlxuICAgICAgPGxpPlxuICAgICAgICA8c3Ryb25nPkNocmlzc2kgKCZndDsxMCk8L3N0cm9uZz5cbiAgICAgICAgPHA+Q2hyaXNzaSB0YWtlcyBtb2R1bGF0b3JzIGFuZCB3aWxsIHNvb24gdGFrZSBhIHRyaXAgdG8gYSB3YXRlciBwYXJrIHdpdGggc29tZSBmcmllbmRzLiBLYXRyaW4gdGVhY2hlcyB1cyB0aGF0IHdoZW4gdGhlIGNoaWxkcmVuIGRvIG5vdCBicmVhdGhlIG91dCBwcm9wZXJseSwgYWlyIHN0YXlzIGluIHRoZSBsdW5ncyBhbmQgY2F1c2VzIGh5cGVyaW5mbGF0aW9uIFx1MjAxMyB3aXRoIHdoaWNoIGl0IGlzIGFjdHVhbGx5IGhhcmRlciB0byBmbG9hdCBpbiB3YXRlciEgQWZ0ZXIgdGhlIG1hbnVhbCBkcmFpbmFnZSwgS2F0cmluIGdldHMgYWxsIG9mIHVzIGdsYXNzZXMgd2l0aCB3YXRlciBhbmQgZGlzaCBzb2FwIGFuZCBzdHJhd3MuIEJsb3dpbmcgYnViYmxlcyBpcyBhIHBsYXlmdWwgd2F5IHRvIHRyYWluIGhvdyB0byBwcm9wZXJseSBicmVhdGhlIG91dCBieSBlaXRoZXIgdHJ5aW5nIHRvIGJsb3cgYnViYmxlcyBhcyBsb25nIGFzIHBvc3NpYmxlIG9yIHRyeWluZyB0byBtYWtlIGFuIGV4aXN0aW5nIGJ1YmJsZSBhcyBiaWcgYXMgcG9zc2libGUhPC9wPlxuICAgICAgPC9saT5cbiAgICA8L29sPixdLFxuICAgIHN1bW1hcnk6IFwiSW4gdGhlIHZpc2l0IHdpdGggS2F0cmluIFdlc3Rob2ZmLCB3ZSBwYXJ0aWNpcGF0ZWQgaW4gcGh5c2lvdGhlcmFweSBzZXNzaW9ucyBmb3IgY2hpbGRyZW4sIGluY2x1ZGluZyB0aG9zZSB3aXRoIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLiBXZSBvYnNlcnZlZCB0aGF0IGJyZWF0aGluZyB0aGVyYXB5IGlzIGJlbmVmaWNpYWwgZm9yIHZhcmlvdXMgaWxsbmVzc2VzIGFuZCBsZWFybmVkIHRlY2huaXF1ZXMgdGhhdCBjYW4gYmUgcHJhY3RpY2VkIGF0IGhvbWUuIFNlc3Npb25zIGxhc3QgMzAgdG8gNjAgbWludXRlcywgY29tYmluaW5nIG1hbnVhbCB0aGVyYXB5IHdpdGggcGxheWZ1bCBlbGVtZW50cy4gV2hpbGUgb2xkZXIgY2hpbGRyZW4gZW5nYWdlZCB3ZWxsLCBpbmZhbnRzIG9mdGVuIGZvdW5kIHRoZSBleGVyY2lzZXMgdW5jb21mb3J0YWJsZS4gSW1wb3J0YW50bHksIGJvdGggS2F0cmluIGFuZCBwYXJlbnRzIG5vdGVkIHRoYXQgY2hpbGRyZW4gY291bGQgaW5oYWxlIHdpdGhvdXQgaXNzdWVzIGZyb20gYW4gZWFybHkgYWdlLCByZWluZm9yY2luZyBvdXIgZm9jdXMgb24gaW5oYWxhdGlvbiBkZWxpdmVyeSBtZXRob2RzIGZvciB0aGVyYXBpZXMuXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVzdWNoLXdlc3Rob2ZmL3VudGl0bGVkLWRlc2lnbi5wbmdcIixcbiAgICBtb250aHM6IFwianVuZVwiXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJEci5cIixcbiAgICB2b3JuYW1lOiBcIk1hcmNvXCIsXG4gICAgbmFjaG5uYW1lOiBcIlJhZHVraWNcIixcbiAgICBqb2I6IFwiUG9zdGRvYyBhdCBBRyBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3lcIixcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IEJpZWxlZmVsZFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ21hcmNvJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJPcHRpbWl6aW5nIExOUCBUcmFuc2ZlY3Rpb246IEluc2lnaHRzIGludG8gd29ya2luZyB3aXRoIExOUCBLaXRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicmFkdWtpY1wiLFxuICAgIGxhbmd1YWdlOlwiZGVcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJBZnRlciB0aGUgaW50ZXJ2aWV3IHdpdGggRHIgTWFyY28gUmFkdWtpYywgd2Ugd2VyZSBhYmxlIHRvIHByb2R1Y2UgTE5QcyBmb3IgdGhlIGZpcnN0IHRpbWUuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJXaWVzbmVyLCBUZWFtbWVtYmVyXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkxpc2FcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgcHJpbWFyeSBvYmplY3RpdmUgd2FzIHRvIHRhY2tsZSBjaGFsbGVuZ2VzIGluIExOUCB0cmFuc2ZlY3Rpb24gcmVsYXRlZCB0byBtYW51ZmFjdHVyaW5nIGFuZCBjZWxsIHRyYW5zZmVjdGlvbiBtZXRob2RzLiBUaGUgZm9jdXMgd2FzIG9uIGltcHJvdmluZyBMTlAgZm9ybXVsYXRpb24gYW5kIGFwcGxpY2F0aW9uIHByb3RvY29scyB0byBlbmhhbmNlIGdlbmUgZGVsaXZlcnkgZWZmZWN0aXZlbmVzcyxcbiAgICAgICBhbmQgb24gYWNxdWlyaW5nIHNwZWNpYWxpemVkIGV4cGVydGlzZSB0byBvcHRpbWl6ZSB0aGVzZSBwcm9jZXNzZXMuIERyLiBSYWR1a2ljIGZyb20gQmllbGVmZWxkIFVuaXZlcnNpdHkgcHJvdmlkZWQgY3J1Y2lhbCBpbnNpZ2h0cyBmb3IgdHJvdWJsZXNob290aW5nIGFuZCBwcm90b2NvbCBvcHRpbWl6YXRpb24gdG8gZW5oYW5jZSBMTlAgZWZmaWNhY3kuIDwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+IERyLiBSYWR1a2ljIHRvbGQgdXMgdGhhdCB0aGUgZWZmaWNpZW5jeSBvZiBMTlBzIGlzIHNpZ25pZmljYW50bHkgYWZmZWN0ZWQgYnkgbGlwaWQtdG8tbnVjbGVpYyBhY2lkIHJhdGlvcyBhbmQgdGhhdCBvcHRpbWl6aW5nIHJhdGlvcyBsaWtlIDIyOjEgdmVyc3VzIDEwOjEgY2FuIGltcHJvdmUgdHJhbnNmZWN0aW9uLiBcbiAgICAgIHBIIGFkanVzdG1lbnRzIGFuZCBidWZmZXIgY29tcG9zaXRpb24gKGUuZy4sIG1vZGlmeWluZyBzb2RpdW0gYWNldGF0ZSBzb2x1dGlvbnMpIGFyZSBhbHNvIGNydWNpYWwgZm9yIExOUCBwZXJmb3JtYW5jZS4gUHJvcGVyIHN0b3JhZ2UgYXQgNCBcdTAwQjBDLCBwcmVjaXNlIHBpcGV0dGluZywgYW5kIHRob3JvdWdoIG1peGluZyBhcmUgZXNzZW50aWFsIHRvIG1haW50YWluIExOUCBmdW5jdGlvbmFsaXR5LiBcbiAgICAgIEluIGFkZGl0aW9uLCBoZSBzdWdnZXN0ZWQgcXVhbGl0eSBjb250cm9sIG1lYXN1cmVzIHN1Y2ggYXMgZmx1b3Jlc2NlbmNlIHRlc3RpbmcsIHpldGEgcG90ZW50aWFsLCBhbmQgbGlnaHQgc2NhdHRlcmluZyBhbmFseXNlcyBoZWxwIGVuc3VyZSBvdXIgTE5QIGlzIHN0YWJsZS4gQWRkaXRpb25hbGx5LCBzcHJheSBkcnlpbmcgd2FzIGV2YWx1YXRlZCBmb3IgcG90ZW50aWFsIHVzZSBpbiBsb25nLXRlcm0gTE5QIHN0YWJpbGl6YXRpb24uIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+SW5jb3Jwb3JhdGluZyB0aGUgaW5zaWdodHMgRHIuIFJhZHVraWMgYW5kIGFkdmljZSBmcm9tIHJlY2VudCBjb25zdWx0YXRpb25zLCB3ZSBhZGp1c3RlZCB0aGUgbGlwaWQtdG8tbnVjbGVpYyBhY2lkIHJhdGlvIGZyb20gMjI6MSB0byAxMDoxIHRvIGVuaGFuY2UgZWZmaWNpZW5jeSBhbmQgbW9kaWZpZWQgdGhlIHBIIGFuZCBjb25jZW50cmF0aW9uIG9mIHNvZGl1bSBhY2V0YXRlIHNvbHV0aW9ucyBmb3IgYmV0dGVyIHBhY2thZ2luZy4gXG4gICAgICBTdG9yYWdlIGNvbmRpdGlvbnMgd2VyZSBzdHJpY3RseSBtYW5hZ2VkIGF0IDQgXHUwMEIwQywgYW5kIHBpcGV0dGluZy9taXhpbmcgdGVjaG5pcXVlcyB3ZXJlIHJlZmluZWQgdG8gZW5zdXJlIHF1YWxpdHkgY29uc2lzdGVuY3kuIFF1YWxpdHkgY29udHJvbCB3YXMgZXhwYW5kZWQgdG8gaW5jbHVkZSBmbHVvcmVzY2VuY2UgdGVzdGluZywgemV0YSBwb3RlbnRpYWwgbWVhc3VyZW1lbnRzLCBhbmQgbGlnaHQgc2NhdHRlcmluZywgYWxvbmdzaWRlIGN5dG90b3hpY2l0eSB0ZXN0cy4gXG4gICAgICBUaGVzZSBpbXByb3ZlbWVudHMgbm90IG9ubHkgYWRkcmVzcyB0cmFuc2ZlY3Rpb24gY2hhbGxlbmdlcyBidXQgYWxzbyBzdHJlbmd0aGVuIG91ciBmb3VuZGF0aW9uIGZvciBmdXR1cmUgTE5QIGFwcGxpY2F0aW9ucy4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJUaGUgYWltIG9mIHRoZSBjb250YWN0IHdhcyB0byBhZGRyZXNzIGNoYWxsZW5nZXMgaW4gTE5QIHRyYW5zZmVjdGlvbiBhbmQgaW1wcm92ZSBmb3JtdWxhdGlvbiBwcm90b2NvbHMgZm9yIGVuaGFuY2VkIGdlbmUgZGVsaXZlcnkuIERyLiBSYWR1a2ljIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGxpcGlkLXRvLW51Y2xlaWMgYWNpZCByYXRpb3MsIHJlY29tbWVuZGluZyBhZGp1c3RtZW50cyBsaWtlIDEwOjEgZm9yIGJldHRlciB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gSGUgYWxzbyBlbXBoYXNpemVkIG9wdGltaXppbmcgcEggYW5kIGJ1ZmZlciBjb21wb3NpdGlvbiwgYXMgd2VsbCBhcyBzdHJpY3Qgc3RvcmFnZSBhbmQgbWl4aW5nIHByYWN0aWNlcy4gQWRkaXRpb25hbGx5LCBxdWFsaXR5IGNvbnRyb2wgbWVhc3VyZXMgc3VjaCBhcyBmbHVvcmVzY2VuY2UgdGVzdGluZyBhbmQgemV0YSBwb3RlbnRpYWwgYW5hbHlzaXMgd2VyZSBzdWdnZXN0ZWQgdG8gZW5zdXJlIExOUCBzdGFiaWxpdHkuIFRoZXNlIGluc2lnaHRzIHdlcmUgaW1wbGVtZW50ZWQgaW50byB0aGUgcHJvamVjdCwgaW1wcm92aW5nIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGFuZCBwYXZpbmcgdGhlIHdheSBmb3IgZnV0dXJlIExOUCBhcHBsaWNhdGlvbnMuXCIsXG4gICAgbW9udGhzOiBcIkp1bmVcIlxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiUHJvZi4gRHIuXCIsXG4gICAgdm9ybmFtZTogXCJFcmhhcmRcIixcbiAgICBuYWNobm5hbWU6IFwiV2lzY2htZXllclwiLFxuICAgIGpvYjogXCJSZXNlYXJjaCBHcm91cCBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3lcIixcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IEJpZWxlZmVsZFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3dpc2NobWV5ZXInXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gb24gVGVjaG5pcXVlcyBmb3IgTWVhc3VyaW5nIENGVFIgQ2hhbm5lbCBGdW5jdGlvbmFsaXR5XCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicGF0Y2hjbGFtcFwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJHdWNrZXMsIFRlYW1tZW1iZXJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiSXNhYmVsbFwiLFxuICAgIHF1b3RlOiBcIkluaXRpYWxseSB3ZSBoYWRuJ3QgY29uc2lkZXJlZCBwYXRjaC1jbGFtcCBtZWFzdXJlbWVudHMgaW4gb3VyIHNldCBvZiBkb3duc3RyZWFtIGFwcGxpY2F0aW9ucywgYnV0IGl0XHUyMDE5cyBwcm92ZW4gdG8gYmUgYW4gZXhjZXB0aW9uYWxseSBzZW5zaXRpdmUgbWV0aG9kIGZvciBhc3Nlc3NpbmcgQ0ZUUiBjb25kdWN0YW5jZS5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BcyBwYXJ0IG9mIG91ciBwcm9qZWN0LCB3ZSBhaW1lZCB0byBkZW1vbnN0cmF0ZSB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQ0ZUUiBpb24gY2hhbm5lbCwgYWZ0ZXIgcmVzdG9yaW5nXG4gICAgICBpdCB0aHJvdWdoIG91ciBvcHRpbWl6ZWQgUHJpbWUgRWRpdGluZywgYnkgdXNpbmcgUGF0Y2gtQ2xhbXAgbWVhc3VyZW1lbnRzLiBUbyBlbnN1cmUgdGhlIG9wdGltYWwgdXNlIG9mIHRoZVxuICAgICAgUGF0Y2gtQ2xhbXAgYW5kIHRvIGdhaW4gYW4gaW5zaWdodCBpbnRvIGVsZWN0cm9waHlzaW9sb2d5LCB3ZSBhc2tlZCBleHBlcnRzIGZyb20gdGhlIG1lZGljYWwgZmFjdWx0eSBhdFxuICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHkgdG8gY3JpdGljYWxseSBleGFtaW5lIG91ciBtZWFzdXJlbWVudCBwbGFubmluZy4gUHJvZi4gRHIuIEVyaGFyZCBXaXNjaG1leWVyLCBhblxuICAgICAgZXhwZXJpZW5jZWQgc2NpZW50aXN0IGluIHRoaXMgZmllbGQgd2hvIGhhcyB3b3JrZWQgYXQgdGhlIE1heCBQbGFuY2sgSW5zdGl0dXRlIGZvciBCaW9waHlzaWNhbCBDaGVtaXN0cnlcbiAgICAgIGluIEdcdTAwRjZ0dGluZ2VuLCB0aGUgZGV2ZWxvcG1lbnQgc2l0ZSBvZiB0aGUgUGF0Y2gtQ2xhbXAgdGVjaG5pcXVlPFNjcm9sbExpbmtXaXRoQ2hpbGQgdGFyZ2V0SWQ9XCJkZXNjLTFcIj48c3VwPjE8L3N1cD48L1Njcm9sbExpbmtXaXRoQ2hpbGQ+LCBhbmQgY3VycmVudGx5IGxlYWRzIHRoZSBDZWxsdWxhclxuICAgICAgTmV1cm9waHlzaW9sb2d5IHdvcmtpbmcgZ3JvdXAgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIHNlZW1lZCB0byBiZSBhbiBpZGVhbCBpbnRlcnZpZXdlZS4gSGlzXG4gICAgICBrbm93bGVkZ2UgYW5kIGV4cGVyaWVuY2UgcHJvbWlzZWQgdmFsdWFibGUgaW5zaWdodHMgYW5kIGFkdmljZSBmb3IgY29uZHVjdGluZyBhbmQgb3B0aW1pemluZyBvdXJcbiAgICAgIGV4cGVyaW1lbnRzLiA8L3A+XSxcbiAgICBwaWN0dXJldXJsX2FpbTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvaHAtcGF0Y2gtY2xhbXAvd2lzY2htZXllci1pbnRlcnZpZXcud2VicFwiLFxuICAgIGluc2lnaHRzOiBbPD48cD5Qcm9mLiBEci4gV2lzY2htZXllciB0YXVnaHQgdXMgYWJvdXQgdGhlIHdvcmtmbG93IG9mIHRoZSBQYXRjaC1DbGFtcCB0ZWNobmlxdWUuIEhlIGhpZ2hsaWdodGVkIHRoZSBuZWVkXG4gICAgICBmb3Igc3BlY2lhbGl6ZWQgZWxlY3Ryb2RlcyBhbmQgZ2xhc3MgcGlwZXR0ZXMgdGhhdCBtdXN0IGZvcm0gYSBzbW9vdGggc3VyZmFjZSBkZXZvaWQgb2YgdGhlIGV4dHJhY2VsbHVsYXJcbiAgICAgIG1hdHJpeCAoRUNNKS4gQWRkaXRpb25hbGx5LCBoZSBwb2ludGVkIG91dCB0aGF0IG1lYXN1cmluZyBDRlRSIGNvbmR1Y3Rpdml0eSB3aXRoIHRoZSBQYXRjaC1DbGFtcCB0ZWNobmlxdWVcbiAgICAgIHBvc2VzIGEgdGVjaG5pY2FsIGNoYWxsZW5nZSBkdWUgdG8gdGhlIGxvdyBjdXJyZW50cyBpbnZvbHZlZDxTY3JvbGxMaW5rV2l0aENoaWxkIHRhcmdldElkPVwiZGVzYy0yXCI+PHN1cD4yPC9zdXA+PC9TY3JvbGxMaW5rV2l0aENoaWxkPi4gSGUgcmVjb21tZW5kZWQgdXNpbmcgZXhwcmVzc2lvbiB2ZWN0b3JzXG4gICAgICBmb3Igb3ZlcmV4cHJlc3NpbmcgdGhlIENGVFIgZ2VuZSBpbiBIRUsgY2VsbHMgaW5zdGVhZCBvZiBlcGl0aGVsaWFsIGNlbGxzIGZyb20gYSBuYXNhbCBzd2FiIHRvIGFjaGlldmVcbiAgICAgIGJldHRlciByZXN1bHRzLiBTaW5jZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudHMgcmVxdWlyZSBhIHZlcnkgc2Vuc2l0aXZlIHRlc3RpbmcgZW52aXJvbm1lbnQsIGV2ZW5cbiAgICAgIGNoYWxsZW5naW5nIGZvciB0aGUgbW9zdCBleHBlcmllbmNlZCBzY2llbnRpc3RzLCBQcm9mLiBEci4gV2lzY2htZXllciBpbnZpdGVkIHVzIHRvIGNvbmR1Y3QgdGhlXG4gICAgICBtZWFzdXJlbWVudHMgdG9nZXRoZXIgd2l0aCBtZW1iZXJzIG9mIGhpcyBncm91cC5cbiAgICA8L3A+XG4gICAgICA8cD5JbiBhZGRpdGlvbiB0byB0aGUgUGF0Y2gtQ2xhbXAgdGVjaG5pcXVlLCBQcm9mLiBEci4gV2lzY2htZXllciBpbmZvcm1lZCB1cyBhYm91dCBFLWNpcyBtZWFzdXJlbWVudHMgYXMgYVxuICAgICAgICBjdXJyZW50IGVsZWN0cm9waHlzaW9sb2dpY2FsIG1lYXN1cmVtZW50IG1ldGhvZCBhbG9uZ3NpZGUgdGhlIFBhdGNoLUNsYW1wIHRlY2huaXF1ZS4gVGhpcyBtZXRob2QgYWxsb3dzXG4gICAgICAgIHRoZSBtZWFzdXJlbWVudCBvZiB0aGUgbWVtYnJhbmUgcG90ZW50aWFsIGFib3ZlIGFuZCBiZWxvdyBhIG1vbm9sYXllciBvZiBjb25mbHVlbnQgY2VsbHM8U2Nyb2xsTGlua1dpdGhDaGlsZCB0YXJnZXRJZD1cImRlc2MtM1wiPjxzdXA+Mzwvc3VwPjwvU2Nyb2xsTGlua1dpdGhDaGlsZD4uIENvbnNlcXVlbnRseSxcbiAgICAgICAgaXQgZW5hYmxlcyBwcmVjaXNlIG1lYXN1cmVtZW50IG9mIGNvbmR1Y3Rpdml0eSBkZXBlbmRlbnQgb24gQ0ZUUiBleHByZXNzaW9uLiA8L3A+XG4gICAgPC8+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGRlY2lkZWQgdG8gdXNlIEhFSzI5M1RbTGlua10gY2VsbHMgbGluZXMgd2hpY2ggZG8gb3ZlcmV4cHJlc3MgdGhlXG4gICAgICBjb3JyZWN0IENGVFIgYW5kIHRob3NlIHdoaWNoIGV4cHJlc3MgQ0ZUUiB3aXRoIEY1MDhkZWwgbXV0YXRpb24gZm9yIHRoZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudHNbTElOSyBNZXRob2RzcGF0Y2hjbGFtcF0uIFRvIGNvbmR1Y3QgdGhlXG4gICAgICBQYXRjaC1DbGFtcCBleHBlcmltZW50cywgd2UgY29udGFjdGVkIHRoZSBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgZ3JvdXAgdG8gcGVyZm9ybSB0aGUgbmVjZXNzYXJ5XG4gICAgICBtZWFzdXJlbWVudHMuIEl0IHdhcyBhIHBsZWFzdXJlIHRvIHdvcmsgdG9nZXRoZXIgd2l0aCwgd2hvIGlzIHdvcmtpbmcgYXMgYSBwb3N0LWRvYyBmb3JcbiAgICAgIHRoZSBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgd29ya2luZyBncm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eS4gSGUgdGF1Z2h0IHVzIGFib3V0IHRoZSBQYXRjaC1DbGFtcFxuICAgICAgbWV0aG9kIGFuZCBzcGVudCBoaXMgdmFsdWFibGUgdGltZSBzdXBwb3J0aW5nIG91ciBwcm9qZWN0IGJ5IGd1aWRpbmcgb3VyIFBhdGNoLUNsYW1wIG1lYXN1cmVtZW50cy4gPC9wPl0sXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmlsZC1pbnRlcnNzaWVydGUtd2lzc2Vuc2NoYWZ0bGVyLW9oby53ZWJwXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmlsZC1wYXRjaC1jbGFtcC1pc2ktb2xpdmVyLndlYnBcIixcbiAgICByZWZlcmVuY2VzOiA8V2lzY2htZXllclNvdXJjZXMgLz4sXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IGVkdWNhdGUgdXMgYWJvdXQgeW91ciBhY2FkZW1pYyBjYXJlZXI/XCIgYT1cIkkgZGlkIG15IGRvY3RvcmF0ZSAzMCB5ZWFycyBhZ28gYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIHRoZW4gd29ya2VkIGF0IHRoZSBNYXggUGxhbmNrIEluc3RpdHV0ZSBpbiBHXHUwMEY2dHRpbmdlbiBhIGxvdCB3aXRoIHRoZSBwYXRjaC1jbGFtcCB0ZWNobmlxdWUuIFRvZGF5LCBJXHUyMDE5bSBoZWFkIG9mIHRoZSB3b3JraW5nIGdyb3VwIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSBvZiB0aGUgbWVkaWNpbmUgZmFjdWx0eSBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eS5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IG5ldyBtZXRob2RzIGFyZSBjdXJyZW50bHkgYXZhaWxhYmxlIGluIGVsZWN0cm9waHlzaW9sb2dpY2FsIHJlc2VhcmNoP1wiIGE9XCJPbmUgb2YgdGhlIGxhdGVzdCBtZXRob2RzIGlzIEUtY2lzIG1lYXN1cmVtZW50cy4gVGhlc2UgbWFrZSBpdCBwb3NzaWJsZSB0byBleGFtaW5lIGEgbW9ub2xheWVyIG9mIGNvbmZsdWVudCBjZWxscyBhbmQgdG8gbWVhc3VyZSB0aGUgbWVtYnJhbmUgcG90ZW50aWFsIGJvdGggYWJvdmUgYW5kIGJlbG93LiBUaGUgY2hhbmdlIGluIGNvbmR1Y3Rpdml0eSBjYW4gYmUgYW5hbHl6ZWQgZm9yIGluc3RhbmNlIGFzIGEgZnVuY3Rpb24gb2YgQ0ZUUiBleHByZXNzaW9uLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyBjYW4gd2UgcHJvY2VlZCB3aXRoIHRoZSBpbnZlc3RpZ2F0aW9uIG9mIENGVFIgaW4gZGlmZmVyZW50IGNlbGwgY3VsdHVyZXMgYnkgcGF0Y2gtY2xhbXA/XCIgYT1cIllvdSBjYW4gc3R1ZHkgQ0ZUUiBleHByZXNzaW9uIGluIEhFSyBjZWxscywgd2hpY2ggYWxsb3dzIGZvciBhIG1lYXN1cmFibGUgY2hhbmdlIGluIGNobG9yaWRlIGNvbmR1Y3RhbmNlLiBJIGFtIG5vdCBzdXJlIHdoZXRoZXIgd2Ugd2lsbCBiZSBhYmxlIHRvIGludmVzdGlnYXRlIENGVFIgc3VmZmljaWVudGx5IGluIGVwaXRoZWxpYWwgY2VsbHMgd2hpY2ggeW91IHdhbnQgdG8gY29sbGVjdCBmcm9tIHlvdXIgQ0YgcGF0aWVudCBmcmllbmQgYW5kIHlvdXIgdGVhbSBtZW1iZXJzLiBUaGF0IGlzIHNvbWV0aGluZyB3ZSBoYXZlIHRvIHRyeSBvdXQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGNoYWxsZW5naW5nIGlzIHRoZSBtZWFzdXJlbWVudCBvZiBDRlRSIGNvbmR1Y3RhbmNlIGluIGVwaXRoZWxpYWwgY2VsbHM/XCIgYT1cIkNGVFIgaW4gZXBpdGhlbGlhbCBjZWxscyBoYXMgdmVyeSBsb3cgY29uZHVjdGl2aXR5IGluIHRoZSBmZW10b2FtcGVyZSByYW5nZS4gVGhlcmVmb3JlLCBleHRyZW1lbHkgc2Vuc2l0aXZlIHRlc3RpbmcgaXMgbmVjZXNzYXJ5IHRvIG9idGFpbiBtZWFuaW5nZnVsIHJlc3VsdHMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGNoYWxsZW5naW5nIGlzIHRoZSBwYXRjaC1jbGFtcCBtZWFzdXJlbWVudCBvZiBDRlRSIGNvbmR1Y3RhbmNlIGluIGVwaXRoZWxpYWwgY2VsbHM/XCIgYT1cIlRoZSBwcm9qZWN0IGNvdWxkIHRha2UgYXQgbGVhc3Qgb25lIHllYXIsIGV2ZW4gZm9yIGV4cGVyaWVuY2VkIHJlc2VhcmNoZXJzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgdGVjaG5pY2FsIGNoYWxsZW5nZXMgZG8gd2UgZmFjZSBpbiBpbXBsZW1lbnRpbmcgdGhlIHBhdGNoLWNsYW1wIG1lYXN1cmVtZW50cz9cIiBhPVwiT25lIG9mIHRoZSBiaWdnZXN0IGNoYWxsZW5nZXMgaXMgbWVhc3VyaW5nIHRoZSBjdXJyZW50IGFjcm9zcyB0aGUgZW50aXJlIGNlbGwsIGFzIHdlIGRvIG5vdCB3YW50IHRvIGNhcnJ5IG91dCBzaW5nbGUtY2hhbm5lbCBtZWFzdXJlbWVudHMsIGJ1dCByYXRoZXIgcmVjb3JkIHRoZSBjdXJyZW50IGFjcm9zcyBjZWxscyB3aXRoIGEgc3Ryb25nbHkgZXhwcmVzc2luZyB2ZWN0b3IgY2FycnlpbmcgdGhlIGdlbmUgZm9yIHRoZSBpb24gY2hhbm5lbC5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHJlcXVpcmVtZW50cyBtdXN0IGJlIG1ldCBmb3IgY3VsdGl2YXRpb24gYW5kIHRyYW5zZmVjdGlvbiBiZWZvcmUgdGhlIHBhdGNoLWNsYW1wIG1lYXN1cmVtZW50P1wiIGE9XCJZb3UgaGF2ZSB0byBjdWx0aXZhdGUgdGhlIGNlbGxzIG9uIHBvbHktbHlzaW5lIGFuZCBsYW1pbmluIGFuZCB1c2Ugcm91bmQgY292ZXJzbGlwcyBvZiAxMCBtbSBkaWFtZXRlciB0byBwcmVwYXJlIHRoZW0gZm9yIG1lYXN1cmVtZW50LiBGb3IgaWRlbnRpZmljYXRpb24gb2YgcG9zaXRpdmUgdHJhbnNmZWN0YW50cywgd2UgdXNlIEdGUCBjby10cmFuc2ZlY3RlZCBjZWxscyBpbiBvdXIgd29ya2luZyBncm91cCwgeW91IHNob3VsZCB0aGluayBvZiBzb21ldGhpbmcgbGlrZSB0aGF0IGFzIHdlbGwuIEEgdHJhbnNmZWN0aW9uIHJhdGUgb2YgMTAgJSBpcyBzdWZmaWNpZW50IHRvIGdhaW4gZW5vdWdoIGNlbGxzIGZvciB0aGUgbWVhc3VyZW1lbnQuIFlvdSBjYW4gdGhpbmsgb2Ygb3B0aW1pemluZyB5b3VyIHRyYW5zZmVjdGlvbiBieSB1c2luZyBMaXBvZmVjdGFtaW5lMjAwMCwgd2hpY2ggd29ya3Mgd2VsbCBmb3Igb3VyIHdvcmtpbmcgZ3JvdXAuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hvIGNvdWxkIGhlbHAgdXMgd2l0aCB0aGUgcGF0Y2gtY2xhbXAgbWVhc3VyZW1lbnRzP1wiIGE9XCJUaGUgcGF0Y2gtY2xhbXAgZGV2aWNlcyBhcmUgaGVhdmlseSB1dGlsaXplZCBpbiBvdXIgd29ya2luZyBncm91cCwgc28geW91IHByb2JhYmx5IGNhbm5vdCBwZXJmb3JtIG1lYXN1cmVtZW50cyBvbiB5b3VyIG93bi4gSG93ZXZlciwgcG9zdGRvY3MgY291bGQgc3VwcG9ydCB5b3UgZm9yIHNvbWUgbWVhc3VyZW1lbnRzLiBEci4gT2xpdmVyIERyXHUwMEU0Z2VyIGlzIGF2YWlsYWJsZSBhcyBhIGNvbnRhY3QgcGVyc29uIG9mIG15IHdvcmtpbmcgZ3JvdXAuXCIgLz5cblxuICAgIDwvPixcbiAgICBzdW1tYXJ5OiBcIkluIHN1bW1hcnksIHRocm91Z2ggdGhlIGludGVydmlldyB3aXRoIFByb2YuIERyLiBXaXNjaG1leWVyIGFuZCB0aGUgY29sbGFib3JhdGlvbiB3aXRoIGhpcyBlbXBsb3llZSBEci4gT2xpdmVyIERyXHUwMEU0Z2VyLCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgYW5kIG9wdGltaXplZCBvdXIgYXBwcm9hY2ggdG8gZWZmZWN0aXZlbHkgaW52ZXN0aWdhdGUgYW5kIG1lYXN1cmUgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIENGVFIgaW9uIGNoYW5uZWwsIHRoZXJlYnkgZGV0ZXJtaW5pbmcgdGhlIGVmZmljaWVuY3kgb2Ygb3VyIHByaW1lIGVkaXRpbmcgc3RyYXRlZ3kuXCIsXG4gICAgbW9udGhzOiBcImp1bmVcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJKb3NodWFcIixcbiAgICBuYWNobm5hbWU6IFwiQmF1ZGVyXCIsXG4gICAgam9iOiBcInBhcmVudCBhbmQgYWN0aXZpc3RcIixcbiAgICBhZmZpbGlhdGlvbjogXCJDRiB2ZXN0cyB3b3JsZHdpZGVcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydqb3NodWEnXSxcbiAgICB0YWc6IFwiUGF0aWVudFwiLFxuICAgIGhlYWRpbmc6IFwiSW50ZXJ2aWV3IHdpdGggYSBDRiBQYXJlbnQgYW5kIEdsb2JhbCBBZHZvY2F0ZSBvbiBXb3JsZHdpZGUgU3VwcG9ydCBhbmQgUGVyc3BlY3RpdmVzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiam9zaHVhXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcbiAgICBxdW90ZTogXCJXZVx1MjAxOXZlIGhhZCB0byBzaXQgYnkgYW5kIHdhdGNoIHBlb3BsZSBkaWUsIGtub3dpbmcgdGhhdCBiZXR0ZXIgdHJlYXRtZW50IGV4aXN0cyBidXQgaXMgaW5hY2Nlc3NpYmxlLiBcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5XZSBjb250YWN0ZWQgdGhlIG9yZ2FuaXphdGlvbiA8YSBocmVmPVwiaHR0cHM6Ly93d3cuY2Z2d3cub3JnL1wiPkNGIHZlc3RzIHdvcmxkd2lkZTwvYT4gd2l0aCB0aGUgYWltIHRvIGhlYXIgbW9yZSBkaXZlcnNlIHBlcnNwZWN0aXZlcyBiZXlvbmQgR2VybWFueS5cbiAgICAgIEFmdGVyIHRoZSBmb3VuZGVyIFJvZCBjb25uZWN0ZWQgdXMgd2l0aCBKb3NodWEsIEpvc2h1YSB3YXMgc28ga2luZCB0byBjb25kdWN0IGFuIGludGVydmlldyB3aXRoIHVzIG5vdCBvbmx5IGFib3V0IHRoZSBwZXJzcGVjdGl2ZXMgYW5kXG4gICAgICBzdG9yaWVzIGhlIGhlYXJkIGJ1dCBhbHNvIGFib3V0IGhpcyBwZXJzb25hbCBleHBlcmllbmNlcyB3aXRoIGhpcyBkYXVnaHRlciBhbmQgbGl2aW5nIGluIGEgY291bnRyeSB3aGVyZSBDRiBjYXJlIGlzIHZlcnkgaGFyZCB0byBnZXQuIEpvc2h1YVxuICAgICAgKGZyb20gdGhlIFVTQSkgYW5kIGhpcyBmYW1pbHkgbGl2ZSBpbiBUaGFpbGFuZCB3aGVyZSBoZSBhbmQgaGlzIHdpZmUgcnVuIGEgY2hpbGRyZW5cdTIwMTlzIGhvbWUuIFRoZWlyIGRhdWdodGVyIGlzIHRoZSBvbmx5IGNoaWxkIHdpdGggQ0YuPC9wPixcbiAgICA8cD5JdCBpcyBwb3NzaWJsZSB0byBsZWFybiBtb3JlIGFib3V0IEpvc2h1YSBhbmQgaGlzIGZhbWlseSB0aG91Z2ggdGhlIDxhIGhyZWY9XCJodHRwczovL3RoZWJvbm5lbGxmb3VuZGF0aW9uLm9yZy9jZi12ZXN0cy13b3JsZHdpZGUvXCI+XG4gICAgICBwb2RjYXN0IG9mIHRoZSBCb25uZWwgZm91bmRhdGlvbjwvYT4uPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD4gSm9zaHVhIHNob3dlZCB1cyBqdXN0IGhvdyBkaXJlIHRoZSBzaXR1YXRpb24gaXMgZm9yIENGIHBhdGllbnRzIGlzIGluIHNvbWUgcmVnaW9ucy4gSXQgd2FzIHNob2NraW5nIHRvIGhlYXIgdGhlcmUgaXMgb25seSBvbmUgZG9jdG9yXG4gICAgICBrbm93bGVkZ2VhYmxlIGFib3V0IENGIGluIFRoYWlsYW5kIGFuZCB0aGF0IG1hbnkgZG9jdG9ycyBkaXNtaXNzIHRoZSBwb3NzaWJpbGl0eSBvZiBDRiBkdWUgdG8gcmFjaWFsIGJpYXMgYW5kIG1pc2luZm9ybWF0aW9uLiBBZGRpdGlvbmFsbHksIHdlIGNvbmZpcm1lZCBob3cgbXVjaCB0aGUgYWNjZXNzaWJpbGl0eVxuICAgICAgb2YgY2FyZSBkZXBlbmRzIG9uIHRoZSBoZWFsdGhjYXJlIHN5c3RlbSwgYXMgd2UgYWxyZWFkeSB0b3VjaGVkIG9uIGR1cmluZyB0aGUgaW50ZXJ2aWV3IHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJuaWNvbGVcIiB0ZXh0PVwiTmljb2xlIEZyaWVkbGVpblwiIC8+LC4gT24gdGhlIHBhcmVudGluZyBsZXZlbCwgSm9zaHVhIGJyb3VnaHQgaW4gbWFueSBwZXJzcGVjdGl2ZXMgY29udHJhcnkgdG8gd2hhdCB3ZSBwcmV2aW91c2x5IGhlYXJkLiBJbiB0aGUgaW50ZXJ2aWV3IHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJtYXhmaXJzdFwiIHRleHQ9XCJNYXhcIiAvPiwsIHdlIGxlYXJuZWQgaGUgdmVoZW1lbnRseSBhdm9pZHMgcG9uZGluZyB3YXRlciB3aGlsZSBKb3NodWFcdTIwMTlzIGRhdWdodGVyIGlzIGFsbG93ZWQgdG8gcm9hbSBhcm91bmQgd2l0aCBubyBzdWNoIHJlc3RyaWN0aW9ucy4gTmVpdGhlciBoYXZlIGNocm9uaWMgaW5mZWN0aW9ucy48L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPlRoZSBpbnRlcnZpZXcgd2l0aCBKb3NoIG1hZGUgdXMgcmVhbGl6ZSB3ZSB0b28gbmVlZGVkIHRvIGxvb2sgYXQgdGhlIHJlYXNvbiB3aHkgd2UgY2hvc2UgRjUwOGRlbC4gRGlkIHdlLCB0b28sIGZhbGwgZm9yIGJpYXM/XG4gICAgICBEZXNwaXRlIGEgY2hhbmdlIG9mIHRhcmdldCBub3QgYmVpbmcgZmVhc2libGUgYW55bW9yZSwgd2UgbG9va2VkIGludG8gaXQgYW5kIHRyYWNlZCBiYWNrIG91ciBzdGVwcyB0aGF0IGxlZCB0byBvdXIgZGVjaXNpb24uIFdlIGRpZCBub3QgZmluZCBhcyBtdWNoXG4gICAgICBpbmZvcm1hdGlvbiBhYm91dCBvdGhlciBtdXRhdGlvbnMgd2hlbiBmaXJzdCByZXNlYXJjaGluZyBjeXN0aWMgZmlicm9zaXMsIGVzcGVjaWFsbHkgaW4gdGhlIGNvbnRleHQgb2YgcHJpbWUgZWRpdGluZy4gTWF0dGlqcyBCdWxjZWFucydzIHBhcGVyIG9uXG4gICAgICB0YXJnZXRpbmcgdGhlIG11dGF0aW9ucyBMMjI3UiBhbmQgTjEzMDNLIDxUYWJTY3JvbGxMaW5rIHRhYj1cImpvc2h1YVwiIHNjcm9sbElkPVwiZGVzYy0xXCIgbnVtPVwiMVwiIC8+IHdhcyBvbmUgb2YgZmV3IHBhcGVycy4gQWZ0ZXIgZXhwbGljaXRseSBzZWFyY2hpbmcgZm9yIGN5c3RpYyBmaWJyb3NpcyByZWNvcmRzIGZvciBzcGVjaWZpYyBjb3VudHJpZXMgYW5kXG4gICAgICByZWdpb25zLCB3ZSB1bmNvdmVyZWQgYSBtb2RlcmF0ZSBudW1iZXIgb2YgcGFwZXJzIGV4YW1pbmluZyBDRiBpbiBBc2lhIGFuZCBvdGhlciByZWdpb25zIHdlIHByZXZpb3VzbHkgZGlkIG5vdCBrbm93IG11Y2ggYWJvdXQuIFRoZSB2ZXJ5IGZpcnN0IGFydGljbGVcbiAgICAgIHN1cHBvcnRlZCBKb3NodWEncyBoeXBvdGhlc2VzIGFuZCBwYWludGVkIGEgc2FkIHBpY3R1cmU6IEFtb25nIG90aGVyIHRoaW5ncywgaXQgZGVzY3JpYmVzIHRoZSBjYXNlIG9mIGEgZm91ci1tb250aC1vbGQgYm95IHdobyB3YXMgZGlhZ25vc2VkIHdpdGggY3lzdGljXG4gICAgICBmaWJyb3Npcy4gTm90aGluZyB1bnVzdWFsIGluIGl0c2VsZiwgYnV0IHRoZSBjaXJjdW1zdGFuY2VzIGFyZSBkZXByZXNzaW5nLiBUd28gb2YgdGhlIHRocmVlIHNpYmxpbmdzIGJvcm4gYmVmb3JlIGhpbSBkaWVkIHdpdGhpbiBtb250aHMgb2YgYmlydGggYW5kIGhhZFxuICAgICAgcHJldmlvdXNseSBwcmVzZW50ZWQgd2l0aCBzeW1wdG9tcyBvZiBjeXN0aWMgZmlicm9zaXMuIEhlIHdhcyB0aGUgZmlyc3QgdG8gYmUgZGlhZ25vc2VkLiBBIHN3ZWF0IHRlc3QgYWltZWQgYXQgY3lzdGljIGZpYnJvc2lzIHdhcyBub3QgYXZhaWxhYmxlIGF0IHRoZVxuICAgICAgaG9zcGl0YWwsIHNvIG9uZSB3YXMgaW1wcm92aXNlZC4gTGF0ZXIgb24sIGEgZ2VuZXRpYyB0ZXN0IHJldmVhbGVkIHRoZSBwcmVzZW5jZSBvZiA1MDhkZWwuIDxUYWJTY3JvbGxMaW5rIHRhYj1cImpvc2h1YVwiIHNjcm9sbElkPVwiZGVzYy0yXCIgbnVtPVwiMlwiIC8+IFdlIGZvdW5kIG91cnNlbHZlcyBhbmQgb3VyIGxhY2sgb2Yga25vd2xlZGdlIGluIGdvb2RcbiAgICAgIGNvbXBhbnkgYXMgd2UgZm91bmQgcGFwZXJzIGFzIG5ldyBhcyBmcm9tIDIwMjAgKDE0IHllYXJzIGFmdGVyIHRoZSBwcmV2aW91c2x5IG1lbnRpb25lZCBwYXBlcikgY29udGFpbmluZyBzdGF0ZW1lbnRzIHN1Y2ggYXMgXHUyMDFDcmVjZW50IHJlcG9ydHMgc3VnZ2VzdFxuICAgICAgdGhhdCBDRiBkb2VzIG9jY3VyIGluIEFzaWFcdTIwMUQgPFRhYlNjcm9sbExpbmsgdGFiPVwiam9zaHVhXCIgc2Nyb2xsSWQ9XCJkZXNjLTNcIiBudW09XCIzXCIgLz4uIEZvcnR1bmF0ZWx5LCB0aGVyZSBpcyBhIHJpc2luZyBudW1iZXIgb2YgY3lzdGljIGZpYnJvc2lzIGV4cGVydHMgZm9yIEFzaWEgYW5kIG90aGVyIHByZXZpb3VzbHkgb3Zlcmxvb2tlZCByZWdpb25zXG4gICAgICBzdWNoIGFzIEFmcmljYS4gPFRhYlNjcm9sbExpbmsgdGFiPVwiam9zaHVhXCIgc2Nyb2xsSWQ9XCJkZXNjLTRcIiBudW09XCI0XCIgLz4gV2UgY2hvc2UgdG8gbm90IG9ubHkgbG9vayBhdCB0aGUgc2NpZW50aWZpYyBkYXRhIGJ1dCBhbHNvIGludG8gYW5lY2RvdGFsIGV2aWRlbmNlLiBUbyBmaW5kIHRoZSBsYXR0ZXIsIHdlIHNlYXJjaGVkIG9mZmljaWFsXG4gICAgICBhbmQgcHJpdmF0ZSB3ZWJzaXRlcyBhbmQgY2hhdHJvb21zIGZvciBpbmZvcm1hdGlvbiBhbmQgZXhwZXJpZW5jZXMgb2YgcGF0aWVudHMuIEluIHRoZSBlbmQsIHdlIGZvdW5kIG5hcnJhdGl2ZXMgZnJvbSBtb3N0IGV0aG5pYyBiYWNrZ3JvdW5kc1xuICAgICAgYWJvdXQgYmVpbmcgZGlzbWlzc2VkIGFuZCBvZnRlbiBtaXNkaWFnbm9zZWQuIE9mIGNvdXJzZSwgdGhpcyBpcyBub3QgYW4gb2NjdXJyZW5jZSB1bmlxdWUgdG8gY3lzdGljIGZpYnJvc2lzLiBPdXIgY29uY2x1c2lvbiBpcyB0aGF0IHllcyxcbiAgICAgIHdlIGRpZCBmYWxsIGZvciBiaWFzLiBCdXQgcmVnYXJkbGVzcyBvZiBldGhuaWNpdHksIDUwOGRlbCBvY2N1cnMgYW5kIGlzIG92ZXJhbGwgdGhlIG1vc3QgcHJldmFsZW50IG11dGF0aW9uIGFzIHdhcyBjb25maXJtZWQgaW4gb3VyIGludGVydmlld1xuICAgICAgd2l0aCBDRiBleHBlcnQgU3JpcmFtIC4uLi4gVGhpcyBleHBlcmllbmNlIHdhcyB1bmNvbWZvcnRhYmxlIGFzIHdlIGZlbHQgdGhlIHByZXNzdXJlIHRvIGJlIHRob3JvdWdoIGFuZCBkZWxpdmVyIGEgcGVyZmVjdCBwcm9qZWN0LiBXaGF0IHdvdWxkXG4gICAgICBoYXZlIGJlZW4gbW9yZSBkZXZhc3RhdGluZyB0aGFuIHJlYWxpemluZyB3ZSBtYWRlIGEgd3JvbmcgY2hvaWNlIGF0IHRoZSB2ZXJ5IGNvcmU/ICBXZSBtYWRlIHRoZSBjb25zY2lvdXMgZGVjaXNpb24gdG8gaW52ZXN0IG91ciByZXNvdXJjZXMgaW50b1xuICAgICAgZmlndXJpbmcgb3V0IGlmIHdlIGluZGVlZCBtYWRlIGEgbWlzdGFrZSBhbmQgd2Ugd2FudCB0byBlbmNvdXJhZ2Ugb3RoZXIgdGVhbXMgdG8gZG8gdGhlIHNhbWUuIGlHZW0gc3RhbmRzIGZvciBpbm5vdmF0aW9uIFx1MjAxMyBidXQgYWxzbyBmb3IgZ3Jvd3RoLlxuICAgICAgRXNwZWNpYWxseSBpbiB0aGUgY29udGV4dCBvZiBJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlcywgaXQgaXMgaW1wb3J0YW50IHRvIGV4YW1pbmUgYm90aCB0aGUgcG9zaXRpdmUgYW5kIHRoZSBuZWdhdGl2ZSB0byBjcmVhdGUgYSBwcm9qZWN0IHdpdGggYVxuICAgICAgZnV0dXJlLiAgPC9wPl0sXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2pvc2h1YS16b29tLndlYnBcIixcbiAgICByZWZlcmVuY2VzOiA8Sm9zaHVhSW50ZXJ2aWV3U291cmNlcyAvPixcbiAgICBzdW1tYXJ5OiBcIkpvc2h1YSwgYSBDRiBwYXJlbnQgbGl2aW5nIGluIFRoYWlsYW5kLCBzaGFyZWQgaGlzIGV4cGVyaWVuY2VzIGFib3V0IHRoZSBzZXZlcmUgY2hhbGxlbmdlcyBvZiBhY2Nlc3NpbmcgQ0YgY2FyZSBpbiByZWdpb25zIGxpa2UgU291dGhlYXN0IEFzaWEuIEhpcyBzdG9yeSBoaWdobGlnaHRlZCB0aGUgcmFjaWFsIGJpYXMgYW5kIGxhY2sgb2YgbWVkaWNhbCBrbm93bGVkZ2UgYWJvdXQgQ0YgaW4gdGhlc2UgYXJlYXMuIFRoaXMgaW50ZXJ2aWV3IHByb21wdGVkIHRoZSB0ZWFtIHRvIHJlZmxlY3Qgb24gdGhlaXIgZm9jdXMgb24gdGhlIEY1MDhkZWwgbXV0YXRpb24sIHF1ZXN0aW9uaW5nIGlmIHRoZWlyIHJlc2VhcmNoIHdhcyBiaWFzZWQgdG93YXJkcyBtb3JlIGNvbW1vbmx5IHN0dWRpZWQgbXV0YXRpb25zLiBBZnRlciByZXZpc2l0aW5nIHRoZWlyIHJlc2VhcmNoIHByb2Nlc3MsIHRoZXkgZm91bmQgdGhhdCB0aGUgRjUwOGRlbCBtdXRhdGlvbiByZW1haW5zIGdsb2JhbGx5IHJlbGV2YW50LCB5ZXQgdGhlIGV4cGVyaWVuY2UgcmVpbmZvcmNlZCB0aGUgaW1wb3J0YW5jZSBvZiBhZGRyZXNzaW5nIGdhcHMgaW4gaGVhbHRoY2FyZSBhbmQgcmVzZWFyY2ggZm9yIHVuZGVycmVwcmVzZW50ZWQgcmVnaW9ucy5cIixcbiAgICBtb250aHM6IFwiSnVseVwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIkNsb3NlIHRoZSBMb29wXCIsXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3BsYWNlaG9sZGVyJ10sXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcbiAgICBoZWFkaW5nOiBcIkdldHRpbmcgQWNxdWFpbnRlZCB3aXRoIEN5c3RpYyBGaWJyb3Npc1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImxvb3BcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIktcdTAwRjZobGVyLCBUZWFtbWVtYmVyXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIlZlcmFcIixcbiAgICBxdW90ZTogXCJGaXJzdGx5LCB3ZSBkaXNjdXNzZWQgdmFyaW91cyBwcm9qZWN0IGlkZWFzLCBpbmNsdWRpbmcgdGhlIHVzZSBvZiBtYWduZXRpYyBtaWNyb3N3aW1tZXJzIGZvciB0YXJnZXRlZCBtZWRpY2FsIGFwcGxpY2F0aW9ucywgZ2VuZSBlZGl0aW5nIGFwcHJvYWNoZXMgZm9yIGN5c3RpYyBmaWJyb3NpcywgdHJlYXRtZW50cyBmb3IgbXVzY3VsYXIgZHlzdHJvcGh5IGFuZCBjb21iYXRpbmcgY3lhbm9iYWN0ZXJpYSB3aXRoIGFsZ2FlLlwiLFxuICAgIHR5cGU6IFwibWV0YVwiLFxuICAgIHN1bW1hcnk6IFwiXCIsXG4gICAgbW9udGhzOiBcImp1bHlcIlxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiUHJvZi4gRHIuXCIsXG4gICAgdm9ybmFtZTogXCJTdGVmYW5cIixcbiAgICBuYWNobm5hbWU6IFwiSGFtbWVyXCIsXG4gICAgam9iOiBcIkp1bmlvciBQcm9mZXNzb3Igb2YgT3JnYW5pYyBDaGVtaXN0cnkgYW5kIEJpb2NhdGFseXNpc1wiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snaGFtbWVyJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJJbnNpZ2h0cyBmcm9tIHRoZSBkaXNjdXNzaW9uIG9uIGVuenltZSBlbmdpbmVlcmluZ1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImhhbW1lclwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgcXVvdGU6IFwiSW1wbGVtZW50aW5nIGNvbnRyb2xzIGlzIGNydWNpYWwgZm9yIHRoZSBOaWthc2UgYXNzYXkgdG8gcHJldmVudCBmYWxzZSBwb3NpdGl2ZXMgYW5kIGVuc3VyZSB0aGUgYWNjdXJhY3kgb2YgeW91ciByZXN1bHRzLlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiSGFtbWVyLCBFeHBlcnQgZm9yIEVuenltZSBFbmdpbmVlcmluZyBcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiUHJvZi4gRHIuIFN0ZWZhblwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPkFmdGVyIHdlIGhhZCBkZXZlbG9wZWQgYSBudW1iZXIgb2YgdGhlcm9ldGljIGVsYWJvcmF0aW9ucywgZmVlZGJhY2sgd2l0aCBjb3JyZXNwb25kaW5nIGV4cGVydGlzZSBpbiB0aGUgZmllbGQgb2YgZW56eW1lIGVuZ2luZWVyaW5nIHdhcyBvZiBleGNlcHRpb25hbCBpbXBvcnRhbmNlIHRvIHVzLiBGb3IgdGhpcyByZWFzb24sIHdlIHdhbnRlZCB0byBkaXNjdXNzIG91ciBhcHByb2FjaGVzIHdpdGggUHJvZi4gRHIuIEhhbW1lci48L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPkluIG91ciBkaXNjdXNzaW9uIHdpdGggUHJvZi4gRHIuIEhhbW1lciBkaXNjdXNzaW9uIHdpdGggUHJvZi4gRHIuIEhhbW1lciBhYm91dCAgZGlmZmVyZW50IHRoZW9yZXRpY2FsIGFwcHJvYWNoZXMgd2UgaGFkIGRldmVsb3BlZDo8L3A+LFxuICAgICAgPHVsPlxuICAgICAgICAgIDxsaT5QQU0gZW5naW5lZXJpbmc8L2xpPlxuICAgICAgICAgIDxsaT5DaGltZXJpYyBwcm90ZWluPC9saT5cbiAgICAgICAgICA8bGk+UGhhZ2UtQXNzaXN0ZWQgQ29udGludW91cyBFdm9sdXRpb24gKFBBQ0UpPC9saT5cbiAgICAgICAgICA8bGk+UmF0aW9uYWwgRGVzaWduOiBNdXRhdGlvbiBvZiB6aW5jLWZpbmdlcjwvbGk+XG4gICAgICA8L3VsPiwgIFxuICAgICAgPHA+IFdlIGRpc2N1c3NlZCB3aGV0aGVyIGEgcmF0aW9uYWwgZGVzaWduLCBzdXBwb3J0ZWQgYnkgc3RydWN0dXJhbCBzaW11bGF0aW9ucyB3aXRoIEFscGhhRm9sZCAzLCBvciB0aGUgY29uc3RydWN0aW9uIG9mIGEgY2hpbWVyaWMgcHJvdGVpbiB3b3VsZCBiZSB0aGUgc3VwZXJpb3IgYXBwcm9hY2guIFRoZSBwb3NzaWJpbGl0eSBvZiB1c2luZyBwcm90ZWluIGV2b2x1dGlvbiB2aWEgUEFDRSBvciBjb252ZW50aW9uYWwgbWV0aG9kcyB3YXMgZGVtb25zdHJhdGVkLCBldmVuIGlmIHRoZXNlIGFwcHJvYWNoZXMgYXJlIHZlcnkgdGltZS1jb25zdW1pbmcuIEFuIGltcG9ydGFudCB0b3BpYyB3YXMgdGhlIGFuYWx5c2lzIG9mIGhvbW9sb2dvdXMgbWVjaGFuaXNtcyBieSBzZXF1ZW5jZSBhbGlnbm1lbnRzIHRvIGlkZW50aWZ5IHN0cnVjdHVyYWwgc2ltaWxhcml0aWVzIGluIGNhdGFseXRpYyBjZW50ZXJzLiBJbiBhZGRpdGlvbiwgd2UgZGlzY3Vzc2VkIHRoZSByb2xlIG9mIHppbmMgZmluZ2VyIGRvbWFpbnMgYW5kIHRhcmdldGVkIG11dGF0aW9ucywgc3VjaCBhcyBzdWJzdGl0dXRpb24gdG8gYWxhbmluZSwgaW4gdGhlIGZ1bmN0aW9uIG9mIG9wdGltaXphdGlvbi4gSXQgd2FzIGFsc28gZW1waGFzaXplZCB0aGF0IG11dGF0aW9ucyBzaG91bGQgYmUgZXZhbHVhdGVkIGluIGVuenltZXMgd2l0aCBuaWNrYXNlIGFjdGl2aXR5LCBhbHRob3VnaCB0aGUgc2NyZWVuaW5nIGZvciB0aGlzIGlzIHZlcnkgbGFib3Jpb3VzLiBUaGUgcmVsaWFiaWxpdHkgb2YgQWxwaGFGb2xkIHByZWRpY3Rpb25zIHdhcyBldmFsdWF0ZWQgcG9zaXRpdmVseSBkZXNwaXRlIHRoZSBjb21wbGV4aXR5IG9mIHRoZSBlbnp5bWVzLiBPbmUgcHJvbWlzaW5nIGFwcHJvYWNoIGNvdWxkIGJlIHRoZSB0cmFuc2ZlciBvZiBtdXRhdGlvbnMgdG8gaG9tb2xvZ291cyBwcm90ZWlucy4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5XZSBsZWFybmVkIGZyb20gdGhlIGRpc2N1c3Npb24gdGhhdCB3ZSBuZWVkIHRvIHRha2UgYSByYXRpb25hbCBhcHByb2FjaCBhbmQgY29uc2lkZXIgdGhlIGZvbGxvd2luZyBjb25jbHVzaW9uczo8L3A+LFxuICAgICAgPHVsPlxuICAgICAgICAgIDxsaT5BIHJhdGlvbmFsIGFwcHJvYWNoIGNvdWxkIGJlIHRoZSB0cmFuc2ZlciBvZiBtdXRhdGlvbnMgdG8gaG9tb2xvZ291cyBwcm90ZWluczwvbGk+XG4gICAgICAgICAgPGxpPkZvciByYXRpb25hbCBkZXNpZ24sIHN0cnVjdHVyYWwgc2ltdWxhdGlvbiB1c2luZyBBbHBoYUZvbGQgMyBjb3VsZCBiZSB1c2VkIHRvIG1vZGVsIGFuZCB1bmRlcnN0YW5kIHNwZWNpZmljIHByb3RlaW4gc3RydWN0dXJlczwvbGk+XG4gICAgICAgICAgPGxpPkhvbW9sb2dvdXMgbWVjaGFuaXNtcyAmIHNlcXVlbmNlIGFsaWdubWVudHM8L2xpPlxuICAgICAgICAgIDxsaT5BbmFseXNpcyBvZiBzdHJ1Y3R1cmFsIHNpbWlsYXJpdGllcyBpbiBjYXRhbHl0aWMgY2VudGVycyBieSBzZXF1ZW5jZSBjb21wYXJpc29uczwvbGk+XG4gICAgICAgICAgPGxpPlVzaW5nIEFsYSBvciBHbHkgZm9yIHN1YnN0aXR1dGlvbjwvbGk+XG4gICAgICAgICAgPGxpPkRldmVsb3BtZW50IG9mIGEgbmlja2FzZSBhc3NheTwvbGk+XG4gICAgICA8L3VsPixcbiAgICA8cD5XZSBkZXZlbG9wZWQgb3VyIG11dGF0aW9uIGNhbmRpZGF0ZXMgb24gdGhpcyBiYXNpcyBbbGluayB6dW0gQ3ljbGUgb2RlciBOZXcgUGFydCA/XTwvcD5cbiAgICBdLFxuICAgIHN1bW1hcnk6IFwiSW4gb3VyIGRpc2N1c3Npb24gd2l0aCBQcm9mLiBEci4gSGFtbWVyLCB3ZSBleHBsb3JlZCBzZXZlcmFsIHRoZW9yZXRpY2FsIGFwcHJvYWNoZXMgaW4gZW56eW1lIGVuZ2luZWVyaW5nLCBpbmNsdWRpbmcgUEFNIGVuZ2luZWVyaW5nLCBjaGltZXJpYyBwcm90ZWlucywgUGhhZ2UtQXNzaXN0ZWQgQ29udGludW91cyBFdm9sdXRpb24gKFBBQ0UpLCBhbmQgcmF0aW9uYWwgZGVzaWduIGludm9sdmluZyB6aW5jLWZpbmdlciBtdXRhdGlvbnMuIFdlIGV2YWx1YXRlZCB0aGUgcG90ZW50aWFsIG9mIHVzaW5nIHN0cnVjdHVyYWwgc2ltdWxhdGlvbnMgd2l0aCBBbHBoYUZvbGQgMyBhbmQgdGhlIGNvbnN0cnVjdGlvbiBvZiBjaGltZXJpYyBwcm90ZWlucy4gVGhlIGNvbnZlcnNhdGlvbiBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBhbmFseXppbmcgaG9tb2xvZ291cyBtZWNoYW5pc21zIHRocm91Z2ggc2VxdWVuY2UgYWxpZ25tZW50cyB0byBpZGVudGlmeSBzdHJ1Y3R1cmFsIHNpbWlsYXJpdGllcyBpbiBjYXRhbHl0aWMgY2VudGVycy4gV2UgYWxzbyBkaXNjdXNzZWQgdGFyZ2V0ZWQgbXV0YXRpb25zLCBzdWNoIGFzIHN1YnN0aXR1dGlvbnMgdG8gYWxhbmluZSwgYW5kIHRoZSBkZXZlbG9wbWVudCBvZiBhIG5pY2thc2UgYXNzYXkuIE92ZXJhbGwsIHdlIGNvbmNsdWRlZCB0aGF0IHRyYW5zZmVycmluZyBtdXRhdGlvbnMgdG8gaG9tb2xvZ291cyBwcm90ZWlucyBpcyBhIHByb21pc2luZyByYXRpb25hbCBhcHByb2FjaCBmb3Igb3B0aW1pemluZyBlbnp5bWUgZnVuY3Rpb24uXCIsXG4gICAgbW9udGhzOiBcIkp1bHlcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJTdGVmZmVuIEJpcmEgYW5kXCIsXG4gICAgbmFjaG5uYW1lOiBcIlNlcnJhIEdcdTAwRkNyY2FuIGZyb20gQ29yZGVuIFBoYXJtYVwiLFxuICAgIGpvYjogXCJBc3NvY2lhdGUgZGlyZWN0b3JcIixcbiAgICBhZmZpbGlhdGlvbjogXCJDb3JkZW4gUGhhcm1hXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snY29yZGVuJ10sXG4gICAgdGFnOiBcIkluZHVzdHJ5XCIsXG4gICAgaGVhZGluZzogXCJMaXBpZCBOYW5vcGFydGljbGVzIGluIEdlbmUgVGhlcmFweTogcGVyc3BlY3RpdmVzIGZyb20gQ29yZGVuIFBoYXJtYSBcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJjb3JkZW5cIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJlblwiLFxuICAgIHF1b3RlOiBcIlRoZSBzdGFiaWxpdHkgb2YgTE5QcyBkZXBlbmRzIG9uIHRoZSBzcGVjaWZpYyBsaXBpZCBhbmQgUk5BIGNvbXBvbmVudHMgdXNlZCwgYnV0IGVuc3VyaW5nIHRoZSBvdmVyYWxsIHN0YWJpbGl0eSBvZiBhIG5ldyBmb3JtdWxhdGlvbiByZXF1aXJlcyByaWdvcm91cyBlbXBpcmljYWwgdGVzdGluZyB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuXCIsXG4gICAgYWltb2Zjb250YWN0OiBbPHA+VGhlIHByaW1hcnkgYWltIG9mIHRoZSBjb21tdW5pY2F0aW9uIHdpdGggU3RlZmZlbiBCaXJhIGFuZCBTZXJyYSBHXHUwMEZDcmNhbiBmcm9tIENvcmRlbiBQaGFybWEgd2FzIHRvIGV4cGxvcmUgdGhlIHRlY2huaWNhbCBhc3BlY3RzIGFuZCBwcmFjdGljYWwgYXBwbGljYXRpb25zIG9mIExpcGlkIE5hbm9wYXJ0aWNsZXMgKExOUHMpIGluIGFkdmFuY2VkIG1lZGljYWwgdGhlcmFwaWVzLCBpbmNsdWRpbmcgZ2VuZSB0aGVyYXB5IGFuZCBpbmhhbGF0aW9uIHRyZWF0bWVudHMuIFRoZSBjb252ZXJzYXRpb24gZm9jdXNlZCBvbiB0aGUgcG9zc2liaWxpdHkgb2YgdXNpbmcgQ29yZGVuIFBoYXJtYVx1MjAxOXMgTE5QIHN0YXJ0ZXIga2l0cywgdW5kZXJzdGFuZGluZyB0aGUgZmFjdG9ycyBhZmZlY3RpbmcgdGhlIHN0YWJpbGl0eSBvZiBMTlBzLCBhbmQgZXhwbG9yaW5nIG9wdGlvbnMgZm9yIGluY29ycG9yYXRpbmcgYW50aWJvZGllcyBpbnRvIExOUHMgdG8gdGFyZ2V0IHNwZWNpZmljIGNlbGxzLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlRoZSBkaXNjdXNzaW9uIHdpdGggPGEgaHJlZj1cImh0dHBzOi8vY29yZGVucGhhcm1hLmNvbS9cIj5Db3JkZW4gUGhhcm1hPC9hPiwgbGVkIGJ5IFN0ZWZmZW4gQmlyYSBhbmQgU2VycmEgR1x1MDBGQ3JjYW4sIG9mZmVyZWQga2V5IGluc2lnaHRzIGludG8gTE5QcyBhbmQgdGhlaXIgYXBwbGljYXRpb25zLiBXaGlsZSBDb3JkZW4gUGhhcm1hIGhhc24ndCBleHRlbnNpdmVseSBleHBsb3JlZCBzcHJheSBkcnlpbmcgZm9yIExOUHMsIHRoZXkgcmVjb21tZW5kZWQgY29uc3VsdGluZyBzcGVjaWFsaXN0cyB0byBldmFsdWF0ZSBpdHMgZmVhc2liaWxpdHksIGVzcGVjaWFsbHkgY29uY2VybmluZyBsaXBpZCBzdGFiaWxpdHkgZHVyaW5nIHRoZSBwcm9jZXNzLiBTdGFiaWxpdHkgd2FzIGhpZ2hsaWdodGVkIGFzIGNydWNpYWwgZm9yIGluaGFsYXRpb24gdGhlcmFwaWVzLCByZXF1aXJpbmcgdGhvcm91Z2ggdGVzdGluZyBvZiBlbnRpcmUgTE5QIGZvcm11bGF0aW9ucywgcG9zc2libHkgYWlkZWQgYnkgY3J5b3Byb3RlY3RhbnRzIGFuZCBjb250cm9sbGVkIHRlbXBlcmF0dXJlcy4gXG4gICAgICBDb3JkZW4gUGhhcm1hJ3MgTE5QIHN0YXJ0ZXIga2l0cyBhcmUgYmFzZWQgb24gd2VsbC1yZXNlYXJjaGVkIGxpcGlkIGNvbWJpbmF0aW9ucyBkZXNpZ25lZCBmb3Igc3RhYmlsaXR5IGFuZCBlbmNhcHN1bGF0aW9uIGVmZmljaWVuY3ksIG1ha2luZyB0aGVtIHN1aXRhYmxlIGZvciBtdWx0aXBsZSBleHBlcmltZW50cy4gVGhleSBzdWdnZXN0ZWQgdGhhdCBtb2RpZnlpbmcgbGlwaWQgY29tcG9uZW50cywgc3VjaCBhcyBpbmNvcnBvcmF0aW5nIGNob2xlc3Rlcm9sIGRlcml2YXRpdmVzLCBjb3VsZCBlbmhhbmNlIGNlbGx1bGFyIHVwdGFrZSBhbmQgb3ZlcmFsbCBlZmZpY2FjeS4gQWRkaXRpb25hbGx5LCB0aGV5IGNvbmZpcm1lZCB0aGUgcG9zc2liaWxpdHkgb2YgaW5jb3Jwb3JhdGluZyBhbnRpYm9kaWVzIGludG8gTE5QcyBhbmQgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBjb25zaWRlcmluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgd2hlbiBzZWxlY3RpbmcgbGlwaWRzIGZvciBjb21tZXJjaWFsIHVzZS4gVGhleSBhbHNvIHNob3dlZCBvcGVubmVzcyB0byBjb2xsYWJvcmF0aW9uLCBcbiAgICAgIGluY2x1ZGluZyBvZmZlcmluZyBkaXNjb3VudHMgaW4gZXhjaGFuZ2UgZm9yIHJlY29nbml0aW9uIGluIHB1YmxpY2F0aW9ucy4gXG4gICAgICBUaGUgaW50ZXJhY3Rpb24gd2l0aCBDb3JkZW4gUGhhcm1hIHByb3ZpZGVkIHNldmVyYWwga2V5IGluc2lnaHRzOjwvcD4sXG4gICAgICA8dWw+XG4gICAgICAgIDxsaT48c3Ryb25nPlNwcmF5IERyeWluZyBGZWFzaWJpbGl0eTo8L3N0cm9uZz4gQ29yZGVuIFBoYXJtYSBoYXNuXHUyMDE5dCBleHBsb3JlZCBzcHJheSBkcnlpbmcgZXh0ZW5zaXZlbHk7IGNvbnN1bHRhdGlvbiB3aXRoIHNwZWNpYWxpc3RzIGlzIHJlY29tbWVuZGVkIGZvciBhc3Nlc3NpbmcgZmVhc2liaWxpdHkgYW5kIGxpcGlkIHN0YWJpbGl0eS48L2xpPlxuICAgICAgICA8bGk+PHN0cm9uZz5MTlAgU3RhYmlsaXR5Ojwvc3Ryb25nPiBTdGFiaWxpdHkgb2YgTE5QcywgcGFydGljdWxhcmx5IGZvciBpbmhhbGF0aW9uIHRoZXJhcGllcywgbmVlZHMgZW1waXJpY2FsIHRlc3RpbmcsIGNvbnNpZGVyaW5nIHNoZWFyIGZvcmNlcyBhbmQgdGhlIHBvdGVudGlhbCB1c2Ugb2YgY3J5b3Byb3RlY3RhbnRzIG9yIHRlbXBlcmF0dXJlIGNvbnRyb2wuPC9saT5cbiAgICAgICAgPGxpPjxzdHJvbmc+TGlwaWQgU2VsZWN0aW9uIGluIEtpdHM6PC9zdHJvbmc+IFN0YXJ0ZXIga2l0cyB1c2Ugd2VsbC1yZXNlYXJjaGVkIGxpcGlkIGNvbWJpbmF0aW9ucywgdGVzdGVkIGZvciBzdGFiaWxpdHksIGVuY2Fwc3VsYXRpb24gZWZmaWNpZW5jeSwgYW5kIHBvdGVuY3kuIFRoZXkgcHJvdmlkZSBtYXRlcmlhbHMgZm9yIG11bHRpcGxlIGV4cGVyaW1lbnRhbCBiYXRjaGVzLjwvbGk+XG4gICAgICAgIDxsaT48c3Ryb25nPkxpcGlkIE1vZGlmaWNhdGlvbnM6PC9zdHJvbmc+IEV4cGxvcmluZyBhbHRlcm5hdGl2ZSBsaXBpZHMgKGUuZy4sIGNob2xlc3Rlcm9sIGRlcml2YXRpdmVzKSBjb3VsZCBlbmhhbmNlIHN0YWJpbGl0eSBhbmQgY2VsbHVsYXIgdXB0YWtlLCB0YWlsb3JlZCB0byBwcm9qZWN0IG5lZWRzLjwvbGk+XG4gICAgICAgIDxsaT48c3Ryb25nPkFudGlib2R5IEluY29ycG9yYXRpb246PC9zdHJvbmc+IEFudGlib2RpZXMgY2FuIGJlIGluY29ycG9yYXRlZCBpbnRvIExOUHMgZHVyaW5nIHByZXBhcmF0aW9uIG9yIGFmdGVyd2FyZCwgZGVwZW5kaW5nIG9uIHRhcmdldGluZyByZXF1aXJlbWVudHMuPC9saT5cbiAgICAgICAgPGxpPjxzdHJvbmc+SW50ZWxsZWN0dWFsIFByb3BlcnR5Ojwvc3Ryb25nPiBJUCBjb25zaWRlcmF0aW9ucyBhcmUgY3J1Y2lhbCB3aGVuIHNlbGVjdGluZyBsaXBpZHMgZm9yIExOUCBmb3JtdWxhdGlvbnMsIGFzIG1hbnkgbGlwaWRzIGFyZSBwYXRlbnRlZC48L2xpPlxuICAgICAgICA8bGk+PHN0cm9uZz5Db2xsYWJvcmF0aW9uIE9wcG9ydHVuaXRpZXM6PC9zdHJvbmc+IENvcmRlbiBQaGFybWEgaXMgb3BlbiB0byBvZmZlcmluZyBkaXNjb3VudHMgb3IgZm9ybWluZyBwYXJ0bmVyc2hpcHMsIHdpdGggcmVjb2duaXRpb24gaW4gcHVibGljYXRpb25zIG9yIGFja25vd2xlZGdtZW50cy48L2xpPlxuICAgICAgPC91bD5cbiAgICAgIF0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5UaGUgaW5zaWdodHMgZnJvbSBDb3JkZW4gUGhhcm1hIGhhZCBhIG1ham9yIGltcGFjdCBvbiBvdXIgcHJvamVjdCwgZXNwZWNpYWxseSBpbiBzZWxlY3RpbmcgbGlwaWRzIGNyaXRpY2FsIGZvciBMTlAgc3RhYmlsaXR5IGFuZCBvcHRpbWl6aW5nIGdlbmUgdGhlcmFweSBhcHBsaWNhdGlvbnMuIEluaXRpYWxseSwgd2UgdXNlZCB0aGUgQ2F5bWFuIGtpdCwgYnV0IGl0IHdhcyBzdWJvcHRpbWFsIGZvciBkZWxpdmVyaW5nIG91ciBQcmltZWd1aWRlLiBBZnRlciByZWNlaXZpbmcgZmVlZGJhY2ssIHdlIHN3aXRjaGVkIHRvIENvcmRlbiBQaGFybWFcdTIwMTlzIGtpdCAjMiwgd2hpY2ggaW5jbHVkZXMgYWR2YW5jZWQgbGlwaWQgY29tcG9uZW50cyBsaWtlIGNhdGlvbmljIGxpcGlkcyB0aGF0IGltcHJvdmUgY2VsbHVsYXIgdXB0YWtlIGFuZCBlbmhhbmNlIExOUCBzdGFiaWxpdHkuIFRoaXMgc2hpZnQgaGFzIHNpZ25pZmljYW50bHkgYm9vc3RlZCB0aGUgZWZmaWNpZW5jeSBhbmQgcm9idXN0bmVzcyBvZiBvdXIgZm9ybXVsYXRpb25zLiBcbiAgICAgIEFkZGl0aW9uYWxseSwgQ29yZGVuIFBoYXJtYSdzIGd1aWRhbmNlIG9uIGxpcGlkIG1vZGlmaWNhdGlvbnMgYW5kIGFudGlib2R5IGluY29ycG9yYXRpb24gb3BlbmVkIG5ldyBwb3NzaWJpbGl0aWVzIGZvciB0YXJnZXRlZCB0aGVyYXBpZXMuIFRoZXNlIGluc2lnaHRzIG5vdCBvbmx5IGltcHJvdmVkIG91ciB0ZWNobmljYWwgYXBwcm9hY2ggYnV0IGFsc28gcGF2ZWQgdGhlIHdheSBmb3IgcG90ZW50aWFsIGNvbGxhYm9yYXRpb25zLCBvZmZlcmluZyBjb3N0IGJlbmVmaXRzIGFuZCBpbmNyZWFzZWQgc2NpZW50aWZpYyByZWNvZ25pdGlvbi4gVGhlIGZlZWRiYWNrIHdpbGwgY29udGludWUgdG8gc2hhcGUgb3VyIHRlc3RpbmcgcHJvY2VzcyBhbmQgaW1wcm92ZSB0aGVyYXBldXRpYyBkZWxpdmVyeS4gPC9wPl0sXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgIDxRYUJveCBxPVwiSXMgaXQgcG9zc2libGUgdG8gZHJ5IHRoZSBMTlBzIGRlc2lnbmVkIGJ5IENvcmRlbiBQaGFybWEsIHN1Y2ggYXMgdGhyb3VnaCBzcHJheSBkcnlpbmc/XCIgYT1cIkl0IGhhcyBub3QgYmVlbiBjb25maXJtZWQgd2hldGhlciBMTlBzIGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgZHJpZWQgdXNpbmcgc3ByYXkgZHJ5aW5nLiBGdXJ0aGVyIGludmVzdGlnYXRpb24gb3IgY29uc3VsdGF0aW9uIHdpdGggYSBzcGVjaWFsaXplZCBjb21wYW55IHdvdWxkIGJlIHJlcXVpcmVkIHRvIGRldGVybWluZSBmZWFzaWJpbGl0eS5cIi8+XG4gICAgPFFhQm94IHE9XCJIb3cgaXMgc3RhYmlsaXR5IGVuc3VyZWQgaW4gTE5QcywgcGFydGljdWxhcmx5IGZvciB1c2UgaW4gaW5oYWxhdGlvbiB0aGVyYXB5P1wiIGE9XCJUaGUgc3RhYmlsaXR5IGxhcmdlbHkgZGVwZW5kcyBvbiB0aGUgc3BlY2lmaWMgbGlwaWQgYW5kIFJOQSBjb21wb25lbnRzIHVzZWQgaW4gdGhlIGZvcm11bGF0aW9uLiBXaGlsZSB0aGUgc3RhYmlsaXR5IG9mIGluZGl2aWR1YWwgbGlwaWRzIGNhbiBiZSBhc3Nlc3NlZCwgdGhlIG92ZXJhbGwgc3RhYmlsaXR5IG9mIGEgbmV3IExOUCBmb3JtdWxhdGlvbiByZXF1aXJlcyBlbXBpcmljYWwgdGVzdGluZyB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGFyZSBsaXBpZCBjb21iaW5hdGlvbnMgc2VsZWN0ZWQgZm9yIGluY2x1c2lvbiBpbiB0aGUgTE5QIHN0YXJ0ZXIga2l0cywgYW5kIHdoYXQgdGVzdGluZyBpcyBjb25kdWN0ZWQ/XCIgYT1cIkxpcGlkIGNvbWJpbmF0aW9ucyBpbiB0aGUgTE5QIHN0YXJ0ZXIga2l0cyBhcmUgc2VsZWN0ZWQgYmFzZWQgb24ga25vd24gaW50ZXJhY3Rpb25zLCBwYXJ0aWN1bGFybHkgaW4gZm9ybXVsYXRpb25zIGNvbnRhaW5pbmcgUk5BLiBUZXN0aW5nIGlzIGNvbmR1Y3RlZCB0byBhc3Nlc3MgcGh5c2ljYWwtY2hlbWljYWwgcHJvcGVydGllcywgZW5jYXBzdWxhdGlvbiBlZmZpY2llbmN5LCBhbmQgb3ZlcmFsbCBwb3RlbmN5LiBUaGUga2l0cyBhcmUgZGVzaWduZWQgdG8gcHJvdmlkZSBzdWZmaWNpZW50IG1hdGVyaWFsIGZvciBtdWx0aXBsZSBleHBlcmltZW50YWwgYmF0Y2hlcy5cIi8+XG4gICAgPFFhQm94IHE9XCJJcyBpdCBhZHZpc2FibGUgdG8gbW9kaWZ5IHRoZSBsaXBpZCBjb21wb25lbnRzIGluIGFuIGV4aXN0aW5nIExOUCBmb3JtdWxhdGlvbj9cIiBhPVwiSXQgaXMgZ2VuZXJhbGx5IGFkdmlzYWJsZSB0byBjb25zaWRlciBhbHRlcm5hdGl2ZSBsaXBpZCBjb21wb25lbnRzLCBhcyBkaWZmZXJlbnQgbGlwaWRzIG1heSBvZmZlciBpbXByb3ZlZCBzdGFiaWxpdHkgb3IgZWZmaWNhY3kuIEhvd2V2ZXIsIHRoZSBzcGVjaWZpYyBuZWVkcyBvZiB0aGUgcHJvamVjdCB3aWxsIGRpY3RhdGUgd2hldGhlciBjaGFuZ2VzIGFyZSBuZWNlc3NhcnkuXCIvPlxuICAgIDxRYUJveCBxPVwiSXMgaXQgcG9zc2libGUgdG8gaW5jb3Jwb3JhdGUgYW50aWJvZGllcyBpbnRvIExOUHMsIGFuZCB3aGF0IGlzIHRoZSByZWNvbW1lbmRlZCBhcHByb2FjaD9cIiBhPVwiWWVzLiBJbmNvcnBvcmF0aW9uIG9mIGFudGlib2RpZXMgaW50byBMTlBzIGlzIHBvc3NpYmxlLiBUaGlzIGNhbiBiZSBhY2hpZXZlZCBlaXRoZXIgZHVyaW5nIHRoZSBpbml0aWFsIHByZXBhcmF0aW9uIHBoYXNlIG9yIGJ5IGluY3ViYXRpbmcgYW50aWJvZGllcyB3aXRoIExOUHMgYWZ0ZXIgdGhlaXIgZm9ybWF0aW9uLCBkZXBlbmRpbmcgb24gd2hldGhlciBzdXJmYWNlIG9yIGludGVybmFsIGxvY2FsaXphdGlvbiBvZiBhbnRpYm9kaWVzIGlzIGRlc2lyZWQuIFJlZmVyZW5jZSB0byBzcGVjaWZpYyBzdHVkaWVzIG1heSBwcm92aWRlIGZ1cnRoZXIgZ3VpZGFuY2UuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBpcyBDb3JkZW4gUGhhcm1hJ3MgcG9zaXRpb24gb24gcHJvamVjdHMgaW52b2x2aW5nIGdlbmUgdGhlcmFweT9cIiBhPVwiQ29yZGVuIFBoYXJtYSBvcGVyYXRlcyBhcyBhIHNlcnZpY2UgcHJvdmlkZXIsIGZvY3VzaW5nIG9uIHRoZSBtYW51ZmFjdHVyaW5nIG9mIGFjdGl2ZSBwaGFybWFjZXV0aWNhbCBpbmdyZWRpZW50cyAoQVBJcykgYW5kIGV4Y2lwaWVudHMgcmF0aGVyIHRoYW4gZGV2ZWxvcGluZyB0aGVyYXBldXRpYyBwcm9kdWN0cy4gQ29uc2lkZXJhdGlvbiBzaG91bGQgYmUgZ2l2ZW4gdG8gdGhlIGludGVsbGVjdHVhbCBwcm9wZXJ0eSBzdGF0dXMgb2YgdGhlIGxpcGlkcyB1c2VkIGluIExOUCBmb3JtdWxhdGlvbnMsIHBhcnRpY3VsYXJseSBmb3IgY29tbWVyY2lhbCBhcHBsaWNhdGlvbnMuXCIvPlxuICAgIDxRYUJveCBxPVwiSXMgaXQgcG9zc2libGUgdG8gb2J0YWluIGEgZGlzY291bnQgb24gTE5QIHN0YXJ0ZXIga2l0cyBvciBlc3RhYmxpc2ggYSBjb2xsYWJvcmF0aXZlIHJlbGF0aW9uc2hpcCB3aXRoIENvcmRlbiBQaGFybWE/XCIgYT1cIldlIHdvdWxkIG5lZWQgdG8gZGlzY3VzcyB0aGlzIGludGVybmFsbHkgYnV0IGdlbmVyYWxseSB3ZSB3b3VsZCBiZSBvcGVuIHRvIHBvdGVudGlhbCBjb2xsYWJvcmF0aW9ucyB0aGF0IGNvdWxkIGludm9sdmUgcmVjb2duaXRpb24gaW4gcHVibGljYXRpb25zIG9yIG90aGVyIGZvcm1zIG9mIGFja25vd2xlZGdtZW50LCBwZW5kaW5nIGFwcHJvdmFsIGZyb20gcmVsZXZhbnQgbWFuYWdlbWVudC5cIi8+XG4gICAgPC8+LFxuICAgIHN1bW1hcnk6IFwiVGhlIHByaW1hcnkgZ29hbCBvZiB0aGUgY29tbXVuaWNhdGlvbiB3aXRoIFN0ZWZmZW4gQmlyYSBhbmQgU2VycmEgR1x1MDBGQ3JjYW4gZnJvbSBDb3JkZW4gUGhhcm1hIHdhcyB0byBleHBsb3JlIHRoZSB1c2Ugb2YgTGlwaWQgTmFub3BhcnRpY2xlcyAoTE5QcykgaW4gZ2VuZSB0aGVyYXB5IGFuZCBpbmhhbGF0aW9uIHRyZWF0bWVudHMuIENvcmRlbiBQaGFybWEgcmVjb21tZW5kZWQgY29uc3VsdGluZyBzcGVjaWFsaXN0cyBmb3IgYXNzZXNzaW5nIHNwcmF5IGRyeWluZyBmZWFzaWJpbGl0eSwgd2hpbGUgaGlnaGxpZ2h0aW5nIHRoZSBpbXBvcnRhbmNlIG9mIHRlc3RpbmcgTE5QIHN0YWJpbGl0eSB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuIFRoZWlyIExOUCBzdGFydGVyIGtpdHMgYXJlIG9wdGltaXplZCBmb3Igc3RhYmlsaXR5IGFuZCBlbmNhcHN1bGF0aW9uIGVmZmljaWVuY3ksIHdpdGggcG90ZW50aWFsIGZvciBsaXBpZCBtb2RpZmljYXRpb25zIHRvIGVuaGFuY2UgY2VsbHVsYXIgdXB0YWtlLiBUaGV5IGFsc28gY29uZmlybWVkIHRoYXQgYW50aWJvZGllcyBjYW4gYmUgaW5jb3Jwb3JhdGVkIGludG8gTE5QcyBhbmQgZW1waGFzaXplZCBjb25zaWRlcmluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgd2hlbiBzZWxlY3RpbmcgbGlwaWRzLiBCYXNlZCBvbiBDb3JkZW4gUGhhcm1hXHUyMDE5cyBpbnNpZ2h0cywgd2Ugc3dpdGNoZWQgdG8gdGhlaXIga2l0ICMyIGZvciBvdXIgcHJvamVjdCwgIGhvcGluZyB0byBpbXByb3ZlIHRoZSBzdGFiaWxpdHkgYW5kIGVmZmljaWVuY3kgb2Ygb3VyIExOUCBmb3JtdWxhdGlvbnMuIFRoZWlyIGd1aWRhbmNlIGFsc28gb3BlbmVkIG9wcG9ydHVuaXRpZXMgZm9yIHRhcmdldGVkIHRoZXJhcGllcyBhbmQgY29sbGFib3JhdGlvbnMuIFRoaXMgZmVlZGJhY2sgd2lsbCBjb250aW51ZSB0byBlbmhhbmNlIG91ciB0ZXN0aW5nIGFuZCB0aGVyYXBldXRpYyBhcHByb2FjaGVzLlwiLFxuICAgIG1vbnRoczogXCJqdWx5XCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAtY29yZGVuLXpvb20ucG5nXCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiJ01JTlQgU29tbWVyJ1wiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtaW50J10sXG4gICAgdGFnOiBcIkVkdWNhdGlvblwiLFxuICAgIGhlYWRpbmc6IFwiSW5ub3ZhdGl2ZSBtaW5kcyB1bml0ZTogaUdFTSdzIHBhcnRpY2lwYXRpb24gaW4gJ01JTlQgU29tbWVyJ1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcIm1pbnRocHRpbWVcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIkxhbmdlLCBUZWFtbWVtYmVyXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIktheWFcIixcbiAgICBxdW90ZTogXCJJdCB3YXMgYW1hemluZyB0byBzZWUgaG93IGV4Y2l0aW5nIHRoZSBjb252ZXJzYXRpb25zIHdlcmUgd2l0aCBmdXR1cmUgU1RFTSBzY2llbnRpc3RzIGFuZCB0byBoZWFyIHRoZSBmcmVzaCBwZXJzcGVjdGl2ZXMgZnJvbSB5b3VuZyBtaW5kcy4gVGhlIGVudGlyZSBleHBlcmllbmNlIHdhcyBib3RoIGluc3BpcmluZyBhbmQgZW5lcmdpemluZy5cIixcbiAgICBzdW1tYXJ5OiBbPHA+TUlOVCBTb21tZXIgMjAyNCBbTGluayBNaW50IFNvbW1lciB1bnRlbl0gaXMgYSBwcm9ncmFtIGZvciBoaWdoIHNjaG9vbCBncmFkdWF0ZXMgaW50ZXJlc3RlZCBpbiBTVEVNIGZpZWxkcywgYW5kIGlHRU0gQmllbGVmZWxkIHBhcnRpY2lwYXRlZCB0byByYWlzZSBhd2FyZW5lc3MgYWJvdXQgQ0YgYW5kIHByb21vdGUgdGhlaXIgZ2VuZSB0aGVyYXB5IHJlc2VhcmNoLiBUaGUgdGVhbSBlbmdhZ2VkIGZ1dHVyZSBzY2llbnRpc3RzLCBleHBsYWluaW5nIHRoZSBpR0VNIGNvbXBldGl0aW9uIGFuZCB0aGVpciBzeW50aGV0aWMgYmlvbG9neSBhcHByb2FjaCB0byBhZGRyZXNzIENGLiBVc2luZyBpbnNpZ2h0cyBmcm9tIHByZXZpb3VzIHdvcmtzaG9wcywgdGhleSBkZXNpZ25lZCBpbnRlcmFjdGl2ZSBhY3Rpdml0aWVzIHRvIG1ha2UgdGhlIGNvbXBsZXhpdGllcyBvZiBDRiBhY2Nlc3NpYmxlIHRvIGF0dGVuZGVlcy4gT3ZlciB0d28gd2Vla3MsIHRoZXkgZm9ybWVkIG1lYW5pbmdmdWwgY29ubmVjdGlvbnMgd2l0aCBwcm9mZXNzb3JzLCBzdHVkZW50cywgYW5kIFNURU0gcHJvZmVzc2lvbmFscywgZW5yaWNoaW5nIHRoZWlyIHJlc2VhcmNoIGRpc2N1c3Npb25zLiBPdmVyYWxsLCB0aGUgZXZlbnQgaGVscGVkIGltcHJvdmUgdGhlaXIgc2NpZW5jZSBjb21tdW5pY2F0aW9uIHNraWxscyBhbmQgZm9zdGVyZWQgdmFsdWFibGUgcHJvZmVzc2lvbmFsIGdyb3d0aC48L3A+XSxcbiAgICBtb250aHM6IFwiSnVseVwiXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJEci5cIixcbiAgICB2b3JuYW1lOiBcIlN2ZW5qYVwiLFxuICAgIG5hY2hubmFtZTogXCJWaW5rZVwiLFxuICAgIGpvYjogXCJQb3N0RG9jXCIsXG4gICAgYWZmaWxpYXRpb246IFwiYXQgRGVwYXJ0bWVudCBvZiBHZW5ldGljcywgSGFydmFyZCBNZWRpY2FsIFNjaG9vbCwgZm9ybWVyIGlHRU1lclwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3N2ZW5qYSddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiSW5zaWdodHMgb24gdGhlIEZlYXNpYmlsaXR5IG9mIFBBQ0UgZm9yIFByaW1lIEVkaXRpbmcgT3B0aW1pemF0aW9uXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwic3ZlbmphXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZTogXCJUaGUgU2FmZXR5IGFuZCBTZWN1cml0eSBBd2FyZCBhdCBpR0VNIHVuZGVyc2NvcmVzIGNvbW1pdG1lbnQgdG8gcmVzcG9uc2libGUgcmVzZWFyY2ggYW5kIGlubm92YXRpb24sIGVuc3VyaW5nIHRoYXQgdGhlIHByb2plY3RzIHByaW9yaXRpemUgdGhlIHdlbGwtYmVpbmcgb2YgcGVvcGxlIGFuZCB0aGUgZW52aXJvbm1lbnQgd2hpbGUgYWR2YW5jaW5nIHN5bnRoZXRpYyBiaW9sb2d5LlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiVmlua2UgLE1lbWJlciBvZiB0aGUgU2FmZXR5IGFuZCBTZWN1cml0eSBDb21taXR0ZWUgYXQgaUdFTSBIUSBcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiRHIuIFN2ZW5qYVwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPldlIGNvbnRhY3RlZCBTdmVuamEgVmlua2UsIGEgZm9ybWVyIGlHRU1lciBmcm9tIEJpZWxlZmVsZCBhbmQgTWVtYmVyIG9mIHRoZSBTYWZldHkgYW5kIFNlY3VyaXR5IENvbW1pdHRlZSBhdCBpR0VNIEhRICwgdG8gZ2V0IGhlciBpbnNpZ2h0IGFuZCBoZXIgb3BpbmlvbiByZWdhcmRpbmcgdGhlIHVzZSBvZiBwaGFnZSBhc3Npc3RlZCBjb250aW51b3VzIGV2b2x1V2UgY29udGFjdGVkIFN2ZW5qYSBWaW5rZSwgYSBmb3JtZXIgaUdFTWVyIGZyb20gQmllbGVmZWxkLCB0byBnZXQgaGVyIGluc2lnaHQgYW5kIGhlciBvcGluaW9uIHJlZ2FyZGluZyB0aGUgdXNlIG9mIHBoYWdlIGFzc2lzdGVkIGNvbnRpbnVvdXMgZXZvbHV0aW9uXG4gICAgICAoUEFDRSwgc2VlIGVuZ2luZWVyaW5nIGN5Y2xlIDFbTGlua10pIGZvciBvdXIgcHJpbWUgZWRpdGluZyBvcHRpbWl6YXRpb25zLiBTdmVuamEgd29ya3MgYXQgdGhlIGlHRU0gU2FmZXR5IGFuZCBTZWN1cml0eSBDb21taXR0ZWUuIEFkZGl0aW9uYWxseSwgc2hlIHdhcyBwYXJ0IG9mIHRoZSBCaW9zYWZldHkgYW5kIFNlY3VyaXR5IEF3YXJkIFRlYW0gb2YgQmllbGVmZWxkIFVuaXZlcnNpdHkgaW4gMjAxNi48L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlN2ZW5qYSBleHBsYWluZWQsIHRoYXQgYSBQQUNFIGFwcHJvYWNoIGlzIG5vdCBmZWFzaWJsZSB0byB1c2UgZm9yIG9wdGltaXphdGlvbiBvZiBvdXIgbmlja2FzZSBjYW5kaWRhdGVzIGJlY2F1c2Ugb2Ygc2V2ZXJhbCByZWFzb25zOjwvcD4sXG4gICAgPHVsPlxuICAgICAgPGxpPkltcGxlbWVudGluZyBhIFBBQ0Ugc3lzdGVtIHRha2VzIHdheSB0b28gbXVjaCB0aW1lIHRvIHVzZSBmb3Igb3VyIHByb2plY3QuPC9saT5cbiAgICAgIDxsaT5FbmRvbnVjbGVhc2VzIG1pZ2h0IGJlIHRvbyBiaWcgdG8gb3B0aW1pemUgdXNpbmcgUEFDRS48L2xpPlxuICAgICAgPGxpPlVuc3BlY2lmaWMgY3V0dGluZyBvciBuaWNraW5nIGluIHRoZSBiYWN0ZXJpYWwgZ2Vub21lIGtpbGxzIHRoZSBjZWxscywgd2hpY2ggbWFrZXMgb3B0aW1pemF0aW9uIG9mIGVuZG9udWNsZWFzZXMgdmVyeSBjaGFsbGVuZ2luZy48L2xpPlxuICAgICAgPGxpPlByaW1lIGVkaXRpbmcgaW4gRS4gY29saSBjZWxscyBpcyBsZXNzIGVmZmVjdGl2ZSBjb21wYXJlZCB0byBodW1hbiBjZWxscywgd2hpY2ggbWlnaHQgaW1wYWlyIHRoZSBldm9sdXRpb24gcHJvY2Vzcy48L2xpPlxuICAgIDwvdWw+XG4gICAgXSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPk9uIHRoZSBiYXNpcyBvZiBTdmVuamFcdTIwMTlzIGFuZCBvdGhlciBvcGluaW9ucyBvbiB0aGUgdG9waWMsIHdlIGRlY2lkZWQgbm90IHRvIHRyeSBpbXBsZW1lbnRpbmcgYSBQQUNFIHN5c3RlbS4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJXZSByZWFjaGVkIG91dCB0byBTdmVuamEgVmlua2UsIGEgZm9ybWVyIGlHRU1lciBhbmQgUG9zdGRvYywgdG8gZ2FpbiBpbnNpZ2h0cyBvbiB1c2luZyBwaGFnZS1hc3Npc3RlZCBjb250aW51b3VzIGV2b2x1dGlvbiAoUEFDRSkgZm9yIG9wdGltaXppbmcgb3VyIHByaW1lIGVkaXRpbmcuIFN2ZW5qYSBleHBsYWluZWQgdGhhdCBhIFBBQ0UgYXBwcm9hY2ggaXMgbm90IGZlYXNpYmxlIGZvciBvdXIgbmlja2FzZSBjYW5kaWRhdGVzIGR1ZSB0byBzZXZlcmFsIHJlYXNvbnM6IGl0IHJlcXVpcmVzIHRvbyBtdWNoIHRpbWUsIGVuZG9udWNsZWFzZXMgYXJlIGxpa2VseSB0b28gbGFyZ2UgZm9yIG9wdGltaXphdGlvbiwgdW5zcGVjaWZpYyBjdXR0aW5nIGNhbiBraWxsIGJhY3RlcmlhbCBjZWxscywgYW5kIHByaW1lIGVkaXRpbmcgaXMgbGVzcyBlZmZlY3RpdmUgaW4gRS4gY29saSB0aGFuIGluIGh1bWFuIGNlbGxzLiBCYXNlZCBvbiBTdmVuamEncyBmZWVkYmFjayBhbmQgb3RoZXIgZXhwZXJ0IG9waW5pb25zLCB3ZSBkZWNpZGVkIGFnYWluc3QgaW1wbGVtZW50aW5nIGEgUEFDRSBzeXN0ZW0gZm9yIG91ciBwcm9qZWN0LlwiLFxuICAgIG1vbnRoczogXCJKdWx5XCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiRXZhLU1hcmlhXCIsXG4gICAgbmFjaG5uYW1lOiBcIkJlcmVuc1wiLFxuICAgIGpvYjogXCJFdGhpY3MgQ29tbWl0dGVlIG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGVmZWxkIFVuaXZlcnNpdHlcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydiZXJlbnMnXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIkJpb2V0aGljczogQmVzdCBQcmFjdGljZXMgZm9yIEhhbmRsaW5nIFBhdGllbnQgRGF0YSBhbmQgUHJpbWFyeSBDZWxsc1wiLCAvKiBHdWlkYW5jZSBmcm9tIEV0aGljcyBDb21taXR0ZWUgb24gQmVzdCBQcmFjdGljZXMgZm9yIFBhdGllbnQgRGF0YSBhbmQgUHJpbWFyeSBDZWxscyAqL1xuICAgIGludGVydmlld3RhYmlkOiBcImJlcmVuc1wiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgcXVvdGU6IFwiVGhlIG1vc3QgaW1wb3J0YW50IHRoaW5nIGlzIGEgZGV0YWlsZWQgbGV0dGVyIG9mIGNvbnNlbnQgYW5kIGEgZGV0YWlsZWQgcHJpdmFjeSBwb2xpY3kuIFRoaXMgbXVzdCBleHBsYWluIHRvIHRoZSBwYXRpZW50IGFzIHByZWNpc2VseSBhcyBwb3NzaWJsZSB3aGF0IGhhcHBlbnMgdG8gdGhlaXIgY2VsbHMgYW5kIGRhdGEsIGFzIHdlbGwgYXMgdGhlIHRpbWUgc3Bhbiwgd2hpY2ggcGVvcGxlIGFyZSBpbnZvbHZlZCBvciBoYXZlIGFjY2VzcyB0byB0aGUgY2VsbHMgYW5kIGhvdy5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiVGhlIGFpbSBvZiB0aGUgaW50ZXJ2aWV3IHdhcyB0byBnZXQgYW4gYW5zd2VyIHRvIHRoZSBxdWVzdGlvbiBvZiB3aGV0aGVyIHdlIG5lZWQgYW4gZXRoaWNzIHZvdGUgZm9yIG91ciBwcm9qZWN0IG9yIG5vdCBhbmQgdG8gb2J0YWluIGd1aWRlbGluZXMgZm9yIGRlYWxpbmcgd2l0aCBwYXRpZW50IGNlbGxzIHJlZ2FyZGluZyBldGhpY2FsIGlzc3VlcyBhbmQgZGF0YSBwcm90ZWN0aW9uLiBcIixcbiAgICBpbnNpZ2h0czogXCJUaGUgZGlzY3Vzc2lvbiB3YXMgdmVyeSBpbmZvcm1hdGl2ZSBpbiB0ZXJtcyBvZiBob3cgd2Ugc2hvdWxkIGFwcHJvYWNoIHRoaXMgdG9waWMgYW5kIGZvY3VzZWQgcHJpbWFyaWx5IG9uIHRoZSBpbXBvcnRhbnQgZmFjdG9ycyB0aGF0IG5lZWQgdG8gYmUgY29uc2lkZXJlZCB3aGVuIHBsYW5uaW5nIHRoZSBoYW5kbGluZyBvZiBwYXRpZW50IGNlbGxzLiBUaGVzZSBpbmNsdWRlIHdoaWNoIGxlZ2FsIHByaW5jaXBsZXMgbmVlZCB0byBiZSBvYnNlcnZlZCwgZGF0YSBwcm90ZWN0aW9uLCBldGhpY2FsIGNvbnNpZGVyYXRpb25zIGFuZCwgYWJvdmUgYWxsLCBkZXRhaWxlZCBhbmQgc3BlY2lmaWMgaW5mb3JtYXRpb24gZm9yIHRoZSBkb25vci4gSXQgYWxzbyBtYWRlIHVzIGxvb2sgYXQgdGhlIHNpdHVhdGlvbiBmcm9tIG1hbnkgZGlmZmVyZW50IGFuZ2xlcyBhbmQgY29uc2lkZXIgdGhlIHJpc2tzIG9mIHdvcnN0LWNhc2Ugc2NlbmFyaW9zLiBPdmVyYWxsLCB0aGlzIGludGVydmlldyB3YXMgdmVyeSB1c2VmdWwgdG8gdXMsIGFuZCB3ZSB3ZXJlIGFibGUgdG8gdXNlIHRoZSBpbmZvcm1hdGlvbiB3ZSBnYWluZWQgdG8gZGV2ZWxvcCBhIGtpbmQgb2YgZ3VpZGVsaW5lIHRoYXQgYWxsb3dlZCB1cyB0byBhcHByb2FjaCB0aGlzIHNlbnNpdGl2ZSB0b3BpYywgd2hpY2ggd2FzIG5ldyB0byB1cywgd2l0aCBhIGNlcnRhaW4gZGVncmVlIG9mIGNvbmZpZGVuY2UuIFwiLFxuICAgIGltcGxlbWVudGF0aW9uOiBcIkJhc2VkIG9uIHRoZSBrbm93bGVkZ2Ugd2UgaGF2ZSBnYWluZWQsIHdlIGhhdmUgZHJhd24gdXAgZ3VpZGVsaW5lcyBmb3Igb3VyIGhhbmRsaW5nIG9mIHRoZSBjZWxscy4gV2UgdXNlZCB0aGlzIGd1aWRlIHdoZW4gaGFuZGxpbmcgdGhlIHBhdGllbnQgY2VsbHMsIHRvIGVuc3VyZSB0aGV5IHdlcmUgaGFuZGxlZCBpbiBhbiBldGhpY2FsbHkgY29ycmVjdCBtYW5uZXIuXCIsXG4gICAgc3VtbWFyeTogXCJUaGlzIGludGVydmlldyBmb2N1c2VkIG9uIHRoZSBldGhpY2FsIGFuZCBsZWdhbCBjb25zaWRlcmF0aW9ucyBvZiBoYW5kbGluZyBwYXRpZW50IGNlbGxzLCB3ZSBzb3VnaHQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgb3VyIHByb2plY3QgcmVxdWlyZWQgYW4gZXRoaWNzIHZvdGUgYW5kIHRvIGdhdGhlciBndWlkZWxpbmVzIG9uIGRhdGEgcHJvdGVjdGlvbiBhbmQgcGF0aWVudCBjb25zZW50LiBUaGUgZXhwZXJ0IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgcHJvdmlkaW5nIHBhdGllbnRzIHdpdGggYSBkZXRhaWxlZCBjb25zZW50IGxldHRlciBhbmQgcHJpdmFjeSBwb2xpY3ksIGNsZWFybHkgZXhwbGFpbmluZyBob3cgdGhlaXIgY2VsbHMgYW5kIGRhdGEgd2lsbCBiZSB1c2VkLCB3aG8gd2lsbCBoYXZlIGFjY2VzcywgYW5kIHRoZSB0aW1lIHNwYW4gaW52b2x2ZWQuIFRoaXMgY29udmVyc2F0aW9uIGhlbHBlZCB1cyB1bmRlcnN0YW5kIGtleSBsZWdhbCBhbmQgZXRoaWNhbCBwcmluY2lwbGVzLCBlc3BlY2lhbGx5IHJlZ2FyZGluZyB0cmFuc3BhcmVuY3kgd2l0aCBkb25vcnMuIFdlIHVzZWQgdGhlc2UgaW5zaWdodHMgdG8gZGV2ZWxvcCBndWlkZWxpbmVzIGZvciBoYW5kbGluZyBwYXRpZW50IGNlbGxzLCBlbnN1cmluZyB3ZSBhcHByb2FjaGVkIHRoaXMgc2Vuc2l0aXZlIHByb2Nlc3Mgd2l0aCBjb25maWRlbmNlIGFuZCBldGhpY2FsIGNhcmUuXCIsXG4gICAgbW9udGhzOiBcIkp1bHlcIixcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL2ludGVydmlldy1iZXJlbnMud2VicFwiLFxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiTS5TYy5cIixcbiAgICB2b3JuYW1lOiBcIk1hdHRpanNcIixcbiAgICBuYWNobm5hbWU6IFwiQnVsY2FlblwiLFxuICAgIGpvYjogXCJQaEQgUmVzZWFyY2hlciBhdCBMYWJvcmF0b3J5IGZvciBNb2xlY3VsYXIgVmlyb2xvZ3kgJiBHZW5lIFRoZXJhcHlcIixcbiAgICBhZmZpbGlhdGlvbjogXCJLVSBMZXV2ZW5cIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtYXR0aWpzJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJWaXNpdCBNYXR0aWpzIEJ1bGNhZW4gaW4gTGV1dmVuIGFuZCB0aGUgTGFib3JhdG9yeSBmb3IgTW9sZWN1bGFyIFZpcm9sb2d5ICYgR2VuZSBUaGVyYXB5XCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWF0dGlqc3Zpc2l0XCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcbiAgICBxdW90ZTogXCJJdCB3YXMgaW1wcmVzc2l2ZSB0byBtZWV0IGhpbSBpbiBwZXJzb24gYW5kIHJlYWxpemUgaG93IGRlZXBseSBrbm93bGVkZ2VhYmxlIGhlIGlzIG9uIHRoZSBzdWJqZWN0OyBoaXMgaW5zaWdodHMgd2VyZSBpbmNyZWRpYmx5IGhlbHBmdWwuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJNdW5kdCwgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJQaGlsaXBcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BZnRlciBvdXIgZmlyc3QgaW50ZXJ2aWV3IHdpdGggTWF0dGlqcyBCdWxjYWVuIHdlIHN0YXllZCBpbiBjb250YWN0IHZpYSBlbWFpbCBhbmQgZXZlbnR1YWxseSB2aXNpdGVkIGhpbSBpbiBMZXV2ZW4gYXQgaGlzIGxhYm9yYXRvcnkuIEhlcmUgd2Ugd2FudGVkIHRvIGdhaW4gZnVydGhlciBpbmZvcm1hdGlvbiBhYm91dCB0aGUgQ0ZUUiBGNTA4ZGVsIG1vZGVscyBhbmQgZWRpdGluZyBjb25maXJtYXRpb24uPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5XZSBzcG9rZSBhYm91dCBhcHByb2FjaGVzIGZvciB0ZXN0aW5nIENGVFIgRjUwOGRlbCBjb3JyZWN0aW9uIGluIG1vZGVscyBhbmQgbWV0aG9kcyBvZiBjb25maXJtYXRpb24uIEluIHRoaXMgY29udGV4dCB3ZSB0YWxrZWQgYWJvdXQgSEVLMjkzVCBjZWxsIGxpbmVzW0xpbmtdIGVzdGFibGlzaGVkIGluIGhpcyBsYWJvcmF0b3J5IHRoYXQgc3RhYmx5IG92ZXJleHByZXNzIENGVFIgd2lsZC10eXBlIGFuZCBGNTA4ZGVsLiBXZSBhbHNvIGRpc2N1c3NlZCBob3cgdG8gaGFuZGxlIHRoZXNlIGNlbGwgbGluZXMuIEhlIGV4cGxhaW5lZCwgdGhhdCB0aGUgQ0ZUUiBpcyBmdXNlZCB3aXRoIGEgM0hBIHRhZywgdGhhdCBpbiB3aWxkLXR5cGUgQ0ZUUiB3b3VsZCBiZSBleHBvc2VkIHRvIHRoZSBleHRyYWNlbGx1bGFyIHNwYWNlIGFuZCB0aGVyZWZvcmUgY2FuIGJlIHVzZWQgZm9yIGltbXVub2hpc3RvY2hlbWljYWwgc3RhaW5pbmcgb2YgdGhlIHByb3RlaW4sIHNob3dpbmcgY29ycmVjdCBwcm90ZWluIHByb2Nlc3NpbmcgYW5kIGNoYW5uZWxsaW5nLiBBbHNvLCB0aGlzIGFsbG93cyBmb3IgYSB3ZXN0ZXJuIGJsb3QgdG8gYmUgbWFkZSB1c2luZyAzSEEgYW50aWJvZGllcy4gRnVuY3Rpb25hbCByZWNvdmVyeSBvZiBDRlRSIGNhbiBhbHNvIGJlIHZpc3VhbGl6ZWQgdXNpbmcgaGFsaWRlIHNlbnNpdGl2ZSBlWUZQIG9yIG9yZ2Fub2lkIGFzc2F5LCB0aGUgbGFkZGVyIE1hdHRpanMgaGFkIGVzdGFibGlzaGVkIGFuIGF1dG9tYXRlZCByZWFkb3V0LiBGdXJ0aGVybW9yZSwgd2UgdGFsa2VkIGFib3V0IGhvdyB0byBoYW5kbGUgU2FuZ2VyIHNlcXVlbmNpbmcgZGF0YSB0byBhbmFseXNlIGVkaXRzIGFuZCBkaXNjdXNzZWQgdGhlIHBvc3NpYmlsaXR5IHRvIGF2b2lkIHRoZSB3ZWFrbmVzc2VzIG9mIFNhbmdlciBzZXF1ZW5jaW5nIGJ5IHVzaW5nIE5hbm9wb3JlIHNlcXVlbmNpbmcgaW5zdGVhZC4gV2UgYXNrZWQgYWJvdXQgdGhlIGFwcGxpY2FiaWxpdHkgb2YgcGF0Y2ggY2xhbXAgYW5hbHlzaXMgaW4gdGhlIGNvbnRleHQgb2YgQ0ZUUiBhbmQgTWF0dGlqcyBzYWlkIHRoYXQsIHRvIGhpcyBrbm93bGVkZ2UsIGl0IGhhcyBub3QgYmVlbiB1c2VkIHRvIHRlc3QgZm9yIHN1Y2Nlc3NmdWwgZWRpdGluZyBpbiBDRlRSLlxuICAgIExhc3RseSBNYXR0aWpzIGV4cGxhaW5lZCBob3cgaGUgcGxhbnMgdG8gZGVsaXZlciB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4IHRvIHRoZSBwYXRpZW50LCBhbmQgd2UgZXZhbHVhdGVkIHRoZSBhZHZhbnRhZ2VzIGFuZCBkaXNhZHZhbnRhZ2VzIG9mIGRlbGl2ZXJ5IHN0cmF0ZWdpZXMsIGluY2x1ZGluZyBvdXIgdmVyeSBvd24gTE5QIGFwcHJvYWNoLjwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2hlbiBwbGFubmluZyBob3cgdG8gdGVzdCBhbmQgY29uZmlybSBlZGl0aW5nIGJ5IG91ciBvd24gY29uc3RydWN0cywgd2Ugd2VyZSBsYXJnZWx5IGluc3BpcmVkIGJ5IHRoZSBpbmZvcm1hdGlvbiBnaXZlbiB0byB1cyBieSBNYXR0aWpzLiBGb3IgZXhhbXBsZSwgd2UgdGVzdGVkIHByaW1lIGVkaXRpbmcgaW4gdGhlIEhFSzI5MyBjZWxsIGxpbmVzIHdlIHNwb2tlIGFib3V0IHdpdGggTWF0dGlqcyBhbmQgdXNlZCBoYWxpZGUgc2Vuc2l0aXZlIGVZRlAgdG8gY2hlY2sgZm9yIENGVFIgZnVuY3Rpb24uIEFsc28sIHdlIHRyaWVkIGRpZmZlcmVudGlhdGluZyB3aWxkLXR5cGUgYW5kIEY1MDhkZWwgY2VsbHMgdXNpbmcgcGF0Y2ggY2xhbXAuIFVuZm9ydHVuYXRlbHksIGEgbG90IG9mIHRoZSBtZXRob2RzIG1lbnRpb25lZCB3ZXJlIG5vdCB1c2FibGUgZm9yIHVzIGJlY2F1c2Ugb2YgdGltZSBjb25zdHJhaW50cywgYnV0IGFyZSBzdGlsbCB2YWx1YWJsZSBmb3IgZnV0dXJlIHByb2plY3RzIGFuZCByZXNlYXJjaCBidWlsdCB1cG9uIFByZUN5c2UuIDwvcD5dLFxuICAgIHN1bW1hcnk6IFwiV2UgdmlzaXRlZCBNYXR0aWpzIEJ1bGNhZW4gaW4gTGV1dmVuIHRvIGVuaGFuY2Ugb3VyIHVuZGVyc3RhbmRpbmcgb2YgQ0ZUUiBGNTA4ZGVsIG1vZGVscyBhbmQgZWRpdGluZyBjb25maXJtYXRpb24uIER1cmluZyB0aGUgdmlzaXQsIHdlIGV4YW1pbmVkIEhFSzI5M1QgY2VsbCBsaW5lcyB0aGF0IHN0YWJseSBvdmVyZXhwcmVzcyB3aWxkLXR5cGUgQ0ZUUiBhbmQgdGhlIEY1MDhkZWwgdmFyaWFudC4gTWF0dGlqcyBkZW1vbnN0cmF0ZWQgaG93IHRvIHVzZSBhIDNIQSB0YWcgZm9yIHZpc3VhbGl6aW5nIHByb3RlaW4gcHJvY2Vzc2luZyBhbmQgZGlzY3Vzc2VkIG1ldGhvZHMgZm9yIGFzc2Vzc2luZyBDRlRSIGZ1bmN0aW9uYWwgcmVjb3ZlcnkuIFdlIGFsc28gY29tcGFyZWQgU2FuZ2VyIGFuZCBOYW5vcG9yZSBzZXF1ZW5jaW5nIHRlY2huaXF1ZXMgYW5kIGV2YWx1YXRlZCBkZWxpdmVyeSBzdHJhdGVnaWVzIGZvciBvdXIgcHJpbWUgZWRpdGluZyBjb21wbGV4LiBUaGUgaW5zaWdodHMgZnJvbSB0aGlzIHZpc2l0IGd1aWRlZCBvdXIgcHJvamVjdCwgbGVhZGluZyB1cyB0byB0ZXN0IHByaW1lIGVkaXRpbmcgaW4gSEVLMjkzVCBjZWxscyB1c2luZyBoYWxpZGUtc2Vuc2l0aXZlIGVZRlAuIFdoaWxlIHNvbWUgbWV0aG9kcyB3ZXJlIG5vdCBmZWFzaWJsZSBkdWUgdG8gdGltZSBjb25zdHJhaW50cywgdGhleSBsYWlkIHRoZSBncm91bmR3b3JrIGZvciBmdXR1cmUgcmVzZWFyY2ggaW4gdGhlIFByZUN5c2UgcHJvamVjdC5cIixcbiAgICBtb250aHM6IFwianVseVwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIkNvbGxhYm9yYXRpb25zXCIsXG4gICAgbmFjaG5uYW1lOiBcImlHRU0gVGVhbSBMaW5rXHUwMEY2cGluZyBcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsaW5rXHUwMEY2cGluZyddLFxuICAgIHRhZzogXCJPdGhlclwiLFxuICAgIGhlYWRpbmc6IFwiQ29vcGVyYXRpb24gdG8gY3JlYXRlIGEgTGlwaWQgRGVsaXZlcnkgU3lzdGVtIEhhbmRib29rXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFuZGJvb2tcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F5YVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTGFuZ2VcIixcbiAgICBxdW90ZTogXCJXZSB3ZXJlIGdlbnVpbmVseSBleGNpdGVkIHdoZW4gTGlua1x1MDBGNnBpbmcgVW5pdmVyc2l0eSBhcHByb2FjaGVkIHVzIGZvciBjb2xsYWJvcmF0aW9uLiBGcm9tIHRoZSB2ZXJ5IGJlZ2lubmluZywgdGhlaXIgaWRlYXMgcmVzb25hdGVkIHdpdGggdXMsIGFuZCBvdXIgc2hhcmVkIGVudGh1c2lhc20gbGFpZCBhIHN0cm9uZyBmb3VuZGF0aW9uIGZvciBhIHByb2R1Y3RpdmUgcGFydG5lcnNoaXAuIFdlJ3JlIGhhcHB5IHRvIHdvcmsgdG9nZXRoZXIsIGFsc28gd2l0aCB0aGUgb3RoZXIgdGVhbXMsIGFuZCBleHBsb3JlIG5ldyBwb3NzaWJpbGl0aWVzLlwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPlRoZSBpbml0aWFsIGNvbnRhY3QgZm9yIG91ciBjb2xsYWJvcmF0aW9uIGNhbWUgZnJvbSB0aGUgaUdFTSB0ZWFtIDIwMjQgb2YgTGlua1x1MDBGNnBpbmcsIFN3ZWRlbiwgd2hvIGFwcHJvYWNoZWQgdXMgd2l0aCBhIHByb3Bvc2FsIHRvIGNyZWF0ZSBhIFx1MjAxQ0RlbGl2ZXJ5LUJhc2VkIEhhbmRib29rXHUyMDFEW2xpbmsgSGFuZGJvb2tdLiBUaGVpciBnb2FsIHdhcyB0byByZWR1Y2UgdGhlIHN0ZWVwIGxlYXJuaW5nIGN1cnZlIGFzc29jaWF0ZWQgd2l0aCB0aGVzZSB0ZWNobm9sb2dpZXMgYnkgc2hhcmluZyBjb2xsZWN0aXZlIGtub3dsZWRnZSBmcm9tIG11bHRpcGxlIHRlYW1zLCBpbmNsdWRpbmcgb3Vycy4gV2Ugd2VyZSBleGNpdGVkIHRvIGNvbnRyaWJ1dGUgYW5kIGhlbHAgZnV0dXJlIHRlYW1zIG5hdmlnYXRlIHRoZXNlIGNoYWxsZW5nZXMgbW9yZSBlYXNpbHkuIFRoZSBoYW5kYm9vayB3b3VsZCBzZXJ2ZSBhcyBhIHZhbHVhYmxlIHRvb2wuIDwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+VGhyb3VnaG91dCB0aGUgY29sbGFib3JhdGlvbiwgd2UgZ2FpbmVkIHNpZ25pZmljYW50IGluc2lnaHRzLCBib3RoIHNjaWVudGlmaWMgYW5kIGNvbGxhYm9yYXRpdmUuIEluaXRpYWxseSwgb3VyIG1lZXRpbmdzIHdpdGggdGhlIExpbmtcdTAwRjZwaW5nIHRlYW0gYW5kIG90aGVyIHBhcnRpY2lwYXRpbmcgdGVhbXMgLSBQYXRyYXMsIFJhZGJvdWQtVW5pdmVyc2l0eSBhbmQgVEVSTU9TWi1TZWx5ZS1IVU4gLSB3ZXJlIGludmFsdWFibGUuIFRoZXNlIHNlc3Npb25zIGFsbG93ZWQgdXMgdG8gZXhjaGFuZ2UgaWRlYXMgYW5kIGxlYXJuIGhvdyBlYWNoIHRlYW0gcGxhbm5lZCB0byB1c2UgbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcyBpbiB0aGVpciBvd24gcHJvamVjdHMuIFRoaXMgbXV0dWFsIHNoYXJpbmcgb2Yga25vd2xlZGdlIG9wZW5lZCBvdXIgZXllcyB0byBuZXcgbWV0aG9kb2xvZ2llcyBhbmQgcG90ZW50aWFsIGFwcGxpY2F0aW9ucyBvZiBMTlBzIGFuZCBsaXBvc29tZXMuIFdlIGFsc28gZ2FpbmVkIGEgZGVlcGVyIGFwcHJlY2lhdGlvbiBmb3IgdGhlIGludGVyZGlzY2lwbGluYXJ5IG5hdHVyZSBvZiB0aGVzZSBzeXN0ZW1zLiBGcm9tIHRoZSBjaGFsbGVuZ2VzIG9mIGZvcm11bGF0aW5nIHN0YWJsZSBwYXJ0aWNsZXMgdG8gb3B0aW1pemluZyB0aGVpciBlZmZpY2llbmN5IGluIHRhcmdldGluZyBjZWxscywgd2UgcmVhbGl6ZWQgdGhlIGNvbXBsZXhpdHkgb2YgdGhlIGZpZWxkIGFuZCBob3cgY29sbGFib3JhdGlvbiBjb3VsZCBoZWxwIG92ZXJjb21lIG1hbnkgb2YgdGhlc2Ugb2JzdGFjbGVzLiBCeSBkaXNjdXNzaW5nIG91ciByZXNwZWN0aXZlIGFwcHJvYWNoZXMsIHdlIHdlcmUgYWJsZSB0byBwb29sIG91ciBleHBlcnRpc2UsIHdoaWNoIG5vdCBvbmx5IGltcHJvdmVkIG91ciB1bmRlcnN0YW5kaW5nIGJ1dCBhbHNvIGVuc3VyZWQgdGhhdCB0aGUgaGFuZGJvb2sgd291bGQgYmUgY29tcHJlaGVuc2l2ZSBhbmQgdmFsdWFibGUgZm9yIHZhcmlvdXMgaUdFTSB0ZWFtcywgcmVnYXJkbGVzcyBvZiB0aGVpciBzcGVjaWZpYyBwcm9qZWN0IGZvY3VzLiBcbiAgICAgIEluIHN1bW1hcnk6IDwvcD4sXG4gICAgICA8dWw+XG4gICAgICAgIDxsaT5MZWFybmVkIGRpZmZlcmVudCBhcHByb2FjaGVzIHRvIHVzaW5nIExOUHMgYW5kIGxpcG9zb21lcyBpbiBpR0VNIHByb2plY3RzLjwvbGk+XG4gICAgICAgIDxsaT5EaXNjb3ZlcmVkIG5ldyBtZXRob2RzIGZvciBvcHRpbWl6aW5nIExOUHMuPC9saT5cbiAgICAgICAgPGxpPlJlY29nbml6ZWQgY2hhbGxlbmdlcyBpbiBwYXJ0aWNsZSBzdGFiaWxpdHkgYW5kIHRhcmdldGVkIGRlbGl2ZXJ5LjwvbGk+XG4gICAgICAgIDxsaT5HYWluZWQgYXBwcmVjaWF0aW9uIGZvciB0aGUgaW50ZXJkaXNjaXBsaW5hcnkgY29tcGxleGl0eSBvZiB0aGVzZSBzeXN0ZW1zLjwvbGk+XG4gICAgICAgIDxsaT5Gb2N1c2VkIG9uIGRvY3VtZW50aW5nIHdvcmsgdG8gYmVuZWZpdCBmdXR1cmUgaUdFTSB0ZWFtcy48L2xpPlxuICAgICAgPC91bD4gXG4gICAgXSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPlRoZSBjb2xsYWJvcmF0aW9uIGV4cGFuZGVkIG91ciB1bmRlcnN0YW5kaW5nIG9mIHdoYXQncyBwb3NzaWJsZSwgaW5zcGlyaW5nIHVzIHRvIGNvbnNpZGVyIG5ldyBpZGVhcyBmb3IgaG93IHdlIG1pZ2h0IGludGVncmF0ZSBhZHZhbmNlZCB0ZWNobmlxdWVzIGludG8gb3VyIG5hbm9wYXJ0aWNsZSBzeXN0ZW1zIGluIGZ1dHVyZSBwcm9qZWN0cy4gVGhlIGNvbGxhYm9yYXRpdmUgcHJvY2VzcyBhbHNvIGVuY291cmFnZWQgdXMgdG8gZG9jdW1lbnQgb3VyIHdvcmsgbW9yZSB0aG9yb3VnaGx5LCBlbnN1cmluZyB0aGF0IGZ1dHVyZSBpR0VNIHRlYW1zIGNvdWxkIGJlbmVmaXQgZnJvbSBib3RoIG91ciBzdWNjZXNzZXMgYW5kIHRoZSBjaGFsbGVuZ2VzIHdlIGVuY291bnRlcmVkIGFsb25nIHRoZSB3YXkuICAgICAgQmV5b25kIHRoZSB0ZWNobmljYWwgaW1wcm92ZW1lbnRzLCB0aGUgZXhwZXJpZW5jZSB0YXVnaHQgdXMgdGhlIHZhbHVlIG9mIHRlYW13b3JrIGFjcm9zcyBib3JkZXJzIGFuZCBkaXNjaXBsaW5lcy4gRWFjaCB0ZWFtIGJyb3VnaHQgYSB1bmlxdWUgcGVyc3BlY3RpdmUsIGFuZCBieSB3b3JraW5nIHRvZ2V0aGVyLCB3ZSB3ZXJlIGFibGUgdG8gZGV2ZWxvcCBhIHJlc291cmNlIHRoYXQgd2FzIGZhciBncmVhdGVyIHRoYW4gdGhlIHN1bSBvZiBpdHMgcGFydHM8L3A+XSxcbiAgICBzdW1tYXJ5OiBcIlRoaXMgY29sbGFib3JhdGlvbiB3aXRoIExpbmtcdTAwRjZwaW5nIGFuZCB0aGUgb3RoZXIgaUdFTSB0ZWFtcyB3YXMgYW4gaW5jcmVkaWJseSBlbnJpY2hpbmcgZXhwZXJpZW5jZS4gVG9nZXRoZXIsIHdlIGRldmVsb3BlZCBhIFx1MjAxQ0RlbGl2ZXJ5LUJhc2VkIEhhbmRib29rXHUyMDFEW2xpbmsgSGFuZGJvb2tdIHRoYXQgd2lsbCBzZXJ2ZSBhcyBhIHZhbHVhYmxlIHJlc291cmNlIGZvciBmdXR1cmUgdGVhbXMgd29ya2luZyB3aXRoIExOUHMgYW5kIGxpcG9zb21lcy4gVGhlIGtub3dsZWRnZSB3ZSBnYWluZWQgbm90IG9ubHkgZW5oYW5jZWQgb3VyIHByb2plY3QgYnV0IGFsc28gc3RyZW5ndGhlbmVkIG91ciBzZW5zZSBvZiBjb21tdW5pdHkgd2l0aGluIGlHRU0uIFdlIGFyZSBleGNpdGVkIHRvIHByZXNlbnQgdGhlIGhhbmRib29rIGF0IHRoZSBHcmFuZCBKYW1ib3JlZSwgd2hlcmUgd2Ugd2lsbCBmaW5hbGx5IG1lZXQgb3VyIGNvbGxhYm9yYXRvcnMgaW4gcGVyc29uIGFuZCBjZWxlYnJhdGUgdGhlIGN1bG1pbmF0aW9uIG9mIG91ciBjb2xsZWN0aXZlIGVmZm9ydHMuIFRoaXMgcGFydG5lcnNoaXAgaGFzIHNob3duIHVzIHRoZSBpbW1lbnNlIHBvd2VyIG9mIGNvbGxhYm9yYXRpb24sIGFuZCB3ZSBhcmUgcHJvdWQgdG8gaGF2ZSBiZWVuIHBhcnQgb2Ygc3VjaCBhIG1lYW5pbmdmdWwgaW5pdGlhdGl2ZS5cIixcbiAgICBtb250aHM6IFwic2V2ZXJhbCB0aW1lc1wiLFxuICAgIHBpY3R1cmV1cmxfYWltOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9saW5rb3BpbmctaGFuZGJvb2stbG5wLndlYnBcIixcbiAgICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9saW5rb3BpbmctY29vcGVyYXRpb24tcGhvdG8ucG5nXCIsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJNLlNjLlwiLFxuICAgIHZvcm5hbWU6IFwiS2FpXCIsXG4gICAgbmFjaG5uYW1lOiBcIlNjaFx1MDBGQ2xrZVwiLFxuICAgIGpvYjogXCJQaEQgc3R1ZGVudCBXb3JraW5nIGdyb3VwOiBPcmdhbmljIGNoZW1pc3RyeSBhbmQgYmlvY2F0YWx5c2lzXHUyMDJGIFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgb2YgQmllbGVmZWxkXCIsXG4gICAgcGljdHVyZXVybDogcGljc1sna2FpaGFtbWVyJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJGaXJzdCBpbnNpZ2h0cyBvZiBFbnp5bSBFbmdpbmVlcmluZ1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImhhbW1lcmthaVwiLFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGU6IFwiSXQgd2FzIGZhc2NpbmF0aW5nIHRvIGRpc2N1c3MgZW56eW1lIGVuZ2luZWVyaW5nIHdpdGggYSBmb3JtZXIgaUdFTWVyOyB0aGUgY29udmVyc2F0aW9uIHNwYXJrZWQgbmV3IGlkZWFzIGFuZCBwZXJzcGVjdGl2ZXMuXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJNaWNoYWxlaywgVGVhbW1lbWJlclwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJDaHJpc3RpYW5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5XaGVuIHdlIHJlYWxpemVkIHRoYXQgdGhlIGNyZWF0aW9uIG9mIGEgbmlja2FzZSBmcm9tIHRoZSBlbmRvbnVjbGVhc2VzIGluIHVzZSB3YXMgYSBkZXNpcmVkIG91dGNvbWUsIGl0IGJlY2FtZSBuZWNlc3NhcnkgdG8gdGFsayB0byBhbiBleHBlcnQgaW4gdGhlIGZpZWxkIG9mIGVuenltZSBlbmdpbmVlcmluZy5cdTIwMkZPdXIgZmlyc3QgY29udGFjdCB3YXMgS2FpIFNjaFx1MDBGQ2xrZSwgYSBmb3JtZXIgaUdFTWVyIGFuZCBQaEQgc3R1ZGVudCB1bmRlciB0aGUgZ3VpZGFuY2Ugb2YgPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJoYW1tZXJcIiB0ZXh0PVwiUHJvZi4gRHIuIEhhbW1lclwiLz4sIHdobyBpcyB0aGUgbGVhZGVyIG9mIHRoZSB3b3JraW5nIGdyb3VwIG9yZ2FuaWMgY2hlbWlzdHJ5IGFuZCBiaW9hbmFseXRpY3MgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkuPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5JbiB0aGUgcHJvY2VzcyBvZiBvdXIgaW50ZXJhY3Rpb24gd2l0aCBLYWksIHdlIGxlYXJuZWQgYWJvdXQgdGhlIHZhcmlvdXMgbWV0aG9kcyBlbXBsb3llZCBpbiBlbnp5bWUgZW5naW5lZXJpbmcuIEhlIGRlbW9uc3RyYXRlZCB0aGUgY29tcGxleGl0eSBvZiB0aGlzIGZpZWxkIG9mIHJlc2VhcmNoIGFuZCBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNob29zaW5nIHRoZSByaWdodCBhcHByb2FjaC4gQXMgYSBmb3JtZXIgaUdFTWVyLCBLYWksIGluc3BpcmVkIGJ5IGhpcyBwYXN0IGV4cGVyaWVuY2VzLCBpcyBoaWdobHkgbW90aXZhdGVkIGFuZCBkZXRlcm1pbmVkIHRvIGRldmVsb3AgYW4gb3V0c3RhbmRpbmcgcHJvamVjdC4gSGUgcG9pbnRlZCBvdXQgdGhhdCB3ZSBjYW5ub3QgcmVseSBvbiBjbGFzc2ljYWwgbWV0aG9kcyBzdWNoIGFzIGRpcmVjdGVkIGV2b2x1dGlvbiwgYnV0IGluc3RlYWQgc2hvdWxkIHVzZSBhIHJhdGlvbmFsIGFwcHJvYWNoIHRvIHNlbGVjdCBtdXRhdGlvbiBjYW5kaWRhdGVzLiBIaXMgaW5zaWdodHMgYW5kIGVudGh1c2lhc20gaGF2ZSBlbmNvdXJhZ2VkIHVzIHRvIHRoaW5rIGNyaXRpY2FsbHkgYW5kIHB1cnN1ZSBpbm5vdmF0aXZlIHNvbHV0aW9ucyBpbiBvdXIgd29yay4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5XZSBpbmNvcnBvcmF0ZWQgS2FpJ3MgaW5zaWdodHMgaW50byBvdXIgcHJvamVjdCBieSBzaGlmdGluZyBvdXIgYXBwcm9hY2ggdG8gZW56eW1lIGVuZ2luZWVyaW5nLiBCeSBmb2N1c2luZyBvbiBhIG1vcmUgdGFyZ2V0ZWQgYXBwcm9hY2gsIHdlIHdlcmUgYWJsZSB0byByZWZpbmUgb3VyIGVuenltZSBvcHRpbWl6YXRpb24gcHJvY2VzcywgZW5zdXJpbmcgdGhhdCB0aGUgbW9kaWZpY2F0aW9ucyB3ZSBtYWRlIHdlcmUgYmFzZWQgb24gaW5mb3JtZWQsIGNhbGN1bGF0ZWQgZGVjaXNpb25zLiBUaGlzIG5vdCBvbmx5IHN0cmVhbWxpbmVkIG91ciByZXNlYXJjaCBidXQgYWxzbyBpbXByb3ZlZCB0aGUgY2hhbmNlcyBvZiBzdWNjZXNzIGJ5IHJlZHVjaW5nIHRoZSB0cmlhbC1hbmQtZXJyb3IgaW5oZXJlbnQgaW4gdHJhZGl0aW9uYWwgbWV0aG9kcy4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJUaGUgdGVhbSByZWFjaGVkIG91dCB0byBLYWkgU2NoXHUwMEZDbGtlLCBhIGZvcm1lciBpR0VNIHBhcnRpY2lwYW50IGFuZCBlbnp5bWUgZW5naW5lZXJpbmcgZXhwZXJ0LCBmb3IgZ3VpZGFuY2Ugb24gZGV2ZWxvcGluZyBhIG5pY2thc2UgZnJvbSB0aGUgZW5kb251Y2xlYXNlcyBpbiB1c2UuIEthaSBlbXBoYXNpemVkIHRoZSBuZWVkIGZvciBhIHJhdGlvbmFsLCB0YXJnZXRlZCBhcHByb2FjaCByYXRoZXIgdGhhbiB0cmFkaXRpb25hbCBtZXRob2RzIGxpa2UgZGlyZWN0ZWQgZXZvbHV0aW9uLiBIaXMgaW5zaWdodHMgaGVscGVkIHRoZSB0ZWFtIHJlZmluZSB0aGVpciBlbnp5bWUgb3B0aW1pemF0aW9uIHByb2Nlc3MsIG1ha2luZyBpdCBtb3JlIHN0cmF0ZWdpYyBhbmQgZWZmaWNpZW50LiBUaGlzIHNoaWZ0IHJlZHVjZWQgdHJpYWwtYW5kLWVycm9yIGVmZm9ydHMgYW5kIGltcHJvdmVkIHRoZSBjaGFuY2VzIG9mIHN1Y2Nlc3MsIGRyaXZpbmcgaW5ub3ZhdGlvbiBpbiB0aGVpciBwcm9qZWN0LlwiLFxuICAgIG1vbnRoczogXCJKdWx5XCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIk0uU2MuXCIsXG4gICAgdm9ybmFtZTogXCJOaWxzXCIsXG4gICAgbmFjaG5uYW1lOiBcIkJlcmVsc21hbm5cIixcbiAgICBqb2I6IFwiUGhEIFdvcmtpbmcgZ3JvdXA6IFByb2YuIERyLiBHYWJyaWVsZSBGaXNjaGVyIHZvbiBNb2xsYXJkIFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgb2YgQmllbGVmZWxkXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snbmlsc2hlZmUnXSxcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiQWRhcHRpbmcgZXhwcmVzc2lvbiBzdHJhdGVnaWVzIGZvciBGYW56b3Igbmlja2FzZXMgYW5kIGV4cGxvcmluZyB0aGUgcG90ZW50aWFsIG9mIFBpY2hpYSBwYXN0b3JpcyBmb3IgU3B1RnoxIG5pY2thc2UgdmFyaWFudHMgXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibmJlcmVsc21hbm5cIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJTZWxlY3Rpb24gZm9yIG11bHRpcGxlIHBsYXNtaWQgaW50ZWdyYXRpb25zIGlzIHRoZSBlYXNpZXN0IHdheSB0byBvcHRpbWl6ZSBwcm90ZWluIGV4cHJlc3Npb24gaW4gdGhlIHllYXN0IHN0cmFpblwiLFxuICAgIHF1b3RlTmFjaG5hbWU6XCJCZXJlbHNtYW5uLCBTcGVjaWxpc3Qgb2YgeWVhc3QgY3VsdHVydmF0aW9uXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIk5pbHNcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5EdXJpbmcgb3VyIGludGVydmlldyB3aXRoIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwic2FpdG9cIiB0ZXh0PVwiTWFrb3RvIFNhaXRvXCIvPiBhYm91dCBmYW56b3JbbGluayBmYW56b3JdLCBpdCBiZWNhbWUgZXZpZGVudCB0aGF0IHRoZSBleHByZXNzaW9uIG9mIG91ciBmYW56b3Igbmlja2FzZXMgaW4geWVhc3QgaXMgdmVyeSBwcm9taXNpbmcuIFdlIHRoZW4gcmVmaW5lZCBvdXIgZXhwcmVzc2lvbiBzdHJhdGVneSBmb3IgdGhlIG5pY2thc2VzIGFuZCBhcHByb2FjaGVkIE5pbHMgQmVyZWxzbWFubiwgd2hvIGlzIGN1cnJlbnRseSB3b3JraW5nIG9uIGhpcyBQaEQgdGhlc2lzIHdpdGggdGhlIHllYXN0IHN0cmFpbiBQaWNoaWEgcGFzdG9yaXMgKFNNRDExNjMpLiBUaGlzIHBhcnRpY3VsYXIgc3RyYWluIGNvdWxkIGJlIGlkZWFsIGZvciBleHByZXNzaW5nIHRoZSBTcHVGejEgbmlja2FzZSB2YXJpYW50cy4gT3VyIG1haW4gYWltIGluIGNvbnRhY3RpbmcgTmlscyB3YXMgdG8gZ2FpbiBpbnNpZ2h0IGFuZCBhZHZpY2Ugb24geWVhc3QgZXhwcmVzc2lvbiBhbmQgaGUgZ2VuZXJvdXNseSBzaGFyZWQgaGlzIGV4cGVydGlzZSB3aXRoIHVzLiBOb3Qgb25seSBkaWQgaGUgZ2l2ZSB1cyB2YWx1YWJsZSBhZHZpY2UsIGJ1dCBoZSBhbHNvIHByb3ZpZGVkIHVzIHdpdGggdGhlIHllYXN0IHN0cmFpbiBpdHNlbGYsIGFsb25nIHdpdGggYSBjb3JyZXNwb25kaW5nIGV4cHJlc3Npb24gdmVjdG9yIGZvciBwb3NzaWJsZSBleHBlcmltZW50cy4gSGUgYWxzbyBwcm92aWRlZCB1cyB3aXRoIGRldGFpbGVkIHByb3RvY29scyBhbmQgdGhlIHBsYXNtaWQgbWFwIG9mIHRoZSB2ZWN0b3IgYW5kIGdhdmUgdXMgcHJhY3RpY2FsIHRpcHMgb24gaG93IHRvIG9wdGltaXplIHRoZSBleHByZXNzaW9uIHByb2Nlc3MuIEhpcyBzdXBwb3J0IHdhcyBpbnZhbHVhYmxlIGluIG1vdmluZyBvdXIgd29yayBmb3J3YXJkLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlBpY2hpYSBwYXN0b3JpcyAoU01EMTE2MykgaXMgYSBwcm9taXNpbmcgb3B0aW9uIGZvciBleHByZXNzaW5nIFNwdUZ6MSBuaWNrYXNlIHZhcmlhbnRzLiBSZWZpbmluZyBleHByZXNzaW9uIHN0cmF0ZWdpZXMgYmFzZWQgb24gZXhwZXJ0IGluc2lnaHRzIGlzIGNydWNpbCBmb3Igc3VjY2Vzcy4gTmlscyBwcm92aWRlZCBwcmFjdGljYWwgdGlwcyBvbiB5ZWFzdCBleHByZXNzaW9uLCBpbmNsdWRpbmcgb3B0aW1pemluZyBncm93dGggY29uZGl0aW9ucyBhbmQgZmluZS10dW5pbmcgaW5kdWN0aW9uIHByb3RvY29scy48L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGFkYXB0ZWQgb3VyIGV4cHJlc3Npb24gc3RyYXRlZ3kgZm9yIEZhbnpvciBuaWNrYXNlcyBpbiB5ZWFzdCBieSBpbmNvcnBvcmF0aW5nIHRoZSBQaWNoaWEgcGFzdG9yaXMgc3RyYWluIChTTUQxMTYzKSBhbmQgdGhlIHByb3ZpZGVkIGV4cHJlc3Npb24gdmVjdG9yIGludG8gb3VyIGV4cGVyaW1lbnRzLiBGb2xsb3dpbmcgTmlscycgZGV0YWlsZWQgcHJvdG9jb2xzIGFuZCBwbGFzbWlkIG1hcCwgd2Ugb3B0aW1pemVkIGtleSBzdGVwcywgZW5oYW5jaW5nIGV4cHJlc3Npb24gZWZmaWNpZW5jeSBhbmQgcHJvdGVpbiB5aWVsZC48L3A+XSxcbiAgICBzdW1tYXJ5OiBcIlRoZSB0ZWFtIHNvdWdodCBleHBlcnQgYWR2aWNlIGZyb20gTmlscyB0byBvcHRpbWl6ZSB5ZWFzdCBleHByZXNzaW9uIGZvciBGYW56b3Igbmlja2FzZXMuIE5pbHMgcHJvdmlkZWQgaW52YWx1YWJsZSBndWlkYW5jZSBvbiBhZGRyZXNzaW5nIHBvdGVudGlhbCBjaGFsbGVuZ2VzIGFuZCB0cm91Ymxlc2hvb3RpbmcgdGhlIHByb2Nlc3MuIEhlIHN1cHBsaWVkIHRoZSBQaWNoaWEgcGFzdG9yaXMgKFNNRDExNjMpIHN0cmFpbiBhbG9uZyB3aXRoIGEgc3VpdGFibGUgZXhwcmVzc2lvbiB2ZWN0b3IsIGNydWNpYWwgZm9yIGV4cHJlc3NpbmcgU3B1RnoxIG5pY2thc2UgdmFyaWFudHMuIEFkZGl0aW9uYWxseSwgaGUgc2hhcmVkIGRldGFpbGVkIHByb3RvY29scyBmb3IgeWVhc3QgdHJhbnNmb3JtYXRpb24gYW5kIGdyb3d0aCBvcHRpbWl6YXRpb24sIGVuYWJsaW5nIHRoZSB0ZWFtIHRvIHJlcGxpY2F0ZSBoaXMgbWV0aG9kcyBlZmZlY3RpdmVseSBmb3IgdGhlaXIgZXhwZXJpbWVudHMuXCIsXG4gICAgbW9udGhzOiBcIkp1bHlcIixcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiVGltbVwiLFxuICAgIG5hY2hubmFtZTogXCJXZWJlclwiLFxuICAgIGpvYjogXCJTdGFmZiBTY2llbnRpc3QsIFByb2plY3QtIGFuZCBRdWFsaXR5IE1hbmFnZXJcIixcbiAgICBhZmZpbGlhdGlvbjogXCJDZW50cmFsIEJpb2Jhbmsgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snYmlvYmFuayddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiRGlzY3Vzc2VkIHRoZSBwcm9jZXNzZXMgaW52b2x2ZWQgaW4gdGhlIHN0b3JhZ2UsIHByb2Nlc3NpbmcsIGFuZCBzZWN1cml0eSBvZiBwYXRpZW50IHNhbXBsZXMuXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwidGltbVwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlVm9ybmFtZTpcIkRyLiBUaW1tXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJXZWJlciwgU2NpZW50aXN0IFByb2plY3QtIGFuZCBRdWFsaXR5IE1hbmFnZW1lbnQgQmlvYmFua1wiLFxuICAgIHF1b3RlOiBcIkEgYmlvYmFuayBpcyBub3QganVzdCBhIGNvbGxlY3Rpb24gb2Ygc2FtcGxlczsgaXQncyBhIGJyaWRnZSBiZXR3ZWVuIHBhdGllbnQgdHJ1c3QgYW5kIHNjaWVudGlmaWMgZGlzY292ZXJ5LCBlbnN1cmluZyB0aGF0IHZhbHVhYmxlIGJpb2xvZ2ljYWwgZGF0YSBpcyBzYWZlZ3VhcmRlZCB3aGlsZSBjb250cmlidXRpbmcgdG8gZnV0dXJlIHJlc2VhcmNoLlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJDb250YWN0IHdhcyBlc3RhYmxpc2hlZCB3aXRoIFRpbW0gZm9yIHRoZSBwdXJwb3NlIG9mIGdhaW5pbmcgZGVlcGVyIGluc2lnaHRzIGludG8gdGhlIGZ1bmN0aW9uaW5nIG9mIHRoZSBiaW9iYW5rIGFuZCBvZiBkZWVwZW5pbmcgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHByb2Nlc3Npbmcgb2YgcGF0aWVudCBzYW1wbGVzLlwiLFxuICAgIGluc2lnaHRzOiBcIldlIHdlcmUgcHJvdmlkZWQgd2l0aCBpbnZhbHVhYmxlIGluc2lnaHRzIGludG8gdGhlIHF1YWxpdHkgYW5kIHByb2plY3QgbWFuYWdlbWVudCBvZiB0aGUgYmlvYmFuayBhbmQgc3RvcmFnZSBvZiBwYXRpZW50IHNhbXBsZXMuIEl0IHdhcyBvZiBwYXJ0aWN1bGFyIGludGVyZXN0IHRvIG5vdGUgdGhhdCBCaW9iYW5rIE9XTCBvY2N1cGllcyBhIGRpc3RpbmN0aXZlIHBvc2l0aW9uIGluIHRoaXMgY29udGV4dCwgaW5zb2ZhciBhcyBhIHRydXN0ZWUgaXMgbm90IGEgbWFuZGF0b3J5IGZpZ3VyZSB3aXRoaW4gaXRzIHN5c3RlbSBhbmQgaXMgdGhlcmVmb3JlIG5vdCBwcm92aWRlZCBmb3IgYXMgYSBzdGFuZGFyZCBjb21wb25lbnQuIEhvd2V2ZXIsIEJpb2JhbmsgT1dMIGhhcyBlbGVjdGVkIHRvIGludGVncmF0ZSBhIHRydXN0ZWUgaW4gb3JkZXIgdG8gZW5oYW5jZSB0aGUgc2VjdXJpdHkgc3RhbmRhcmRzIGZvciB0aGUgc2FmZWd1YXJkaW5nIG9mIHBhdGllbnQgZGF0YS4gVGhpcyBpbGx1c3RyYXRlcyB0aGUgYmlvYmFuaydzIGRlZGljYXRpb24gdG8gZW5zdXJpbmcgdGhlIG9wdGltYWwgcHJvdGVjdGlvbiBhbmQgc2VjdXJpdHkgb2Ygc2Vuc2l0aXZlIHBhdGllbnQgZGF0YS5cIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJUaGUgaW5zaWdodHMgZ2FpbmVkIGhhdmUgZmFjaWxpdGF0ZWQgYSBkZWVwZXIgY29tcHJlaGVuc2lvbiBvZiB0aGUgc2lnbmlmaWNhbmNlIG9mIHF1YWxpdHkgbWFuYWdlbWVudCBpbiB0aGUgcHJvY2Vzc2luZyBvZiBwYXRpZW50IHNhbXBsZXMuIFRoaXMgdW5kZXJzdGFuZGluZyBoYXMgYmVlbiBpbnRlZ3JhdGVkIGludG8gb3VyIHByb2plY3QgcHJvY2Vzc2VzLCB0aGVyZWJ5IGVuaGFuY2luZyB0aGUgYWNjdXJhY3kgYW5kIHJlbGlhYmlsaXR5IG9mIG91ciBwcm9jZWR1cmVzLiBcIixcbiAgICBzdW1tYXJ5OiBcIlRoZSBpbnRlcnZpZXcgZm9jdXNlZCBvbiB1bmRlcnN0YW5kaW5nIHRoZSBvcGVyYXRpb25zIG9mIHRoZSBCaW9iYW5rIE9XTCwgcGFydGljdWxhcmx5IGluIHRoZSBhcmVhcyBvZiBxdWFsaXR5IG1hbmFnZW1lbnQgYW5kIHNhbXBsZSBwcm9jZXNzaW5nLiBQcm92aWRlZCBhIGRldGFpbGVkIG92ZXJ2aWV3IG9mIGJpb2JhbmsgYWN0aXZpdGllcywgaW5jbHVkaW5nIHNhbXBsZSBjb2xsZWN0aW9uLCBzdG9yYWdlIGNvbmRpdGlvbnMsIGFuZCBkYXRhIHByb3RlY3Rpb24gbWVhc3VyZXNcIixcbiAgICB0ZXh0Ojw+XG4gICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvYnMtaHAtYmlvYmFuay9iaW9iYW5rLWZhbmN5LXJvYm90ZXIuanBlZ1wiPjwvaW1nPixcbiAgICA8cD5UaGUgQVNLSU9OIEMtbGluZVx1MDBBRSBoZXJtZXRpYyBzdG9yYWdlIChIUzIwMCkgc2VyaWVzIG9mZmVycyBlZmZpY2llbnQsIGF1dG9tYXRlZCBzb2x1dGlvbnMgZm9yIGxvdy10ZW1wZXJhdHVyZSBzYW1wbGUgc3RvcmFnZSBpbiBiaW9iYW5rcyBhbmQgYmlvcmVwb3NpdG9yaWVzLiA8L3A+XG4gICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvYnMtaHAtYmlvYmFuay9iaW9iYW5rLWNocmlzdGlhbi1rYXRobGVlbi5qcGVnXCI+PC9pbWc+LCBcbiAgICA8cD4gRHVyaW5nIHRoZWlyIHRvdXIgb2YgdGhlIGJpb2JhbmssIEthdGhsZWVuIGFuZCBDaHJpc3RpYW4gd2VyZSBnaXZlbiBhbiBpbnNpZ2h0IGludG8gdGhlIGFkdmFuY2VkIHNhbXBsZSBzdG9yYWdlIHN5c3RlbXMuIDwvcD4sXG4gICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2JzLWhwLWJpb2JhbmsvYmlvYmFuay1mbC1zc2lnLXN0aWNrc3RvZmYuanBlZ1wiPjwvaW1nPixcbiAgICA8cD4gTGlxdWlkIG5pdHJvZ2VuIGluIGFjdGlvbiAtIGV4dHJlbWVseSBjb2xkIGFuZCBpbmRpc3BlbnNhYmxlIGZvciB0aGUgZGVlcC1mcmVlemUgc3RvcmFnZSBvZiBzZW5zaXRpdmUgc2FtcGxlcy4gPC9wPixcbiAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9icy1ocC1iaW9iYW5rL2Jpb2JhbmstdGFuay5qcGVnXCI+PC9pbWc+LFxuICAgIDxwPiBMYXJnZSBsaXF1aWQgbml0cm9nZW4gdGFuayBmb3IgdGhlIHNhZmUgc3RvcmFnZSBvZiBzYW1wbGVzIGluIHRoZSBiaW9iYW5rLiA8L3A+XG4gICAgPC8+LFxuICAgIGxhbmd1YWdlOiBcImRlXCIsXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IGJyaWVmbHkgZXhwbGFpbiB0byB1cyB3aGF0IGV4YWN0bHkgYSBiaW9iYW5rIGlzIGFuZCB3aGF0IGl0cyBtYWluIHRhc2tzIGFyZT9cIlxuICAgICAgICBhPVwiQSBiaW9iYW5rIGlzIGEgc3BlY2lhbGl6ZWQgZmFjaWxpdHkgdGhhdCBjb2xsZWN0cywgc3RvcmVzLCBhbmQgbWFuYWdlcyBiaW9sb2dpY2FsIHNhbXBsZXMgYW5kIGFzc29jaWF0ZWQgZGF0YSBmb3IgcmVzZWFyY2ggcHVycG9zZXMuIEVhY2ggYmlvYmFuayBpcyB1bmlxdWUgaW4gaXRzIG9wZXJhdGlvbnMgYW5kIGZ1bmN0aW9ucy4gSW4gQmllbGVmZWxkIGFuZCBMaXBwZSwgdGhlIEJpb2JhbmsgQk9XTCAoQmlvYmFuayBPV0wpIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgc3RvcmFnZSBvZiBwYXRpZW50IHNhbXBsZXMuIFRoZSBEYXRhIEludGVncmF0aW9uIENlbnRyZSAoRElaKSBzdG9yZXMgZGF0YSBwZXJ0YWluaW5nIHRvIHRoZXNlIHNhbXBsZXMuIEEgdHJ1c3RlZSBvdmVyc2VlcyB0aGUgcHNldWRvbnltaXNhdGlvbiBvZiBkYXRhLCBhY3RpbmcgYXMgYW4gaW50ZXJmYWNlIGJldHdlZW4gQk9XTCBhbmQgRElaLCBlbnN1cmluZyB0aGF0IHBhdGllbnQgZGF0YSBjYW5ub3QgYmUgZGlyZWN0bHkgbGlua2VkIHRvIHBhdGllbnQgc2FtcGxlcy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHR5cGVzIG9mIHNhbXBsZXMgYXJlIGNvbGxlY3RlZCBpbiB5b3VyIGJpb2JhbmsgYW5kIGZvciB3aGF0IHJlc2VhcmNoIHB1cnBvc2VzIGFyZSB0aGV5IHVzZWQ/XCJcbiAgICAgICAgYT1cIlRoZSBiaW9iYW5rIGNvbGxlY3RzIGEgd2lkZSB2YXJpZXR5IG9mIHNhbXBsZXMsIGluY2x1ZGluZyBibG9vZCwgc3Rvb2wsIGFuZCBzb2lsLiBTYW1wbGVzIG1heSBiZSBnYXRoZXJlZCBmb3Igc3BlY2lmaWMgcmVzZWFyY2ggcHJvamVjdHMgb3IgZm9yIGVzdGFibGlzaGluZyBhIGdlbmVyYWwgcmVwb3NpdG9yeSB1bmRlciAnYnJvYWQgY29uc2VudC4nIFJlc2VhcmNoZXJzIHdpc2hpbmcgdG8gdXNlIHRoZXNlIHNhbXBsZXMgbXVzdCBhcHBseSB0byB0aGUgJ3VzZSBhY2Nlc3MgY29tbWl0dGVlLCcgd2hpY2ggZXZhbHVhdGVzIHdoZXRoZXIgdGhlIHJlcXVlc3RlZCBzYW1wbGVzIGFuZCBkYXRhIGNhbiBiZSByZWxlYXNlZCBmb3IgdGhlaXIgcmVzZWFyY2guXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGxhcmdlIGlzIHlvdXIgYmlvYmFuaz8gSG93IG1hbnkgc2FtcGxlcyBkbyB5b3UgY3VycmVudGx5IHN0b3JlIGFuZCBob3cgbWFueSBuZXcgc2FtcGxlcyBhcmUgYWRkZWQgb24gYXZlcmFnZT9cIlxuICAgICAgICBhPVwiVGhlIGJpb2JhbmsgaXMgc3RpbGwgaW4gdGhlIHByb2Nlc3Mgb2YgZXN0YWJsaXNoaW5nIGl0c2VsZiBhbmQgaGFzIG5vdCB5ZXQgcmVhY2hlZCBpdHMgZnVsbCBzYW1wbGUgY2FwYWNpdHkuIEhvd2V2ZXIsIGl0IGlzIGFudGljaXBhdGVkIHRvIGFjY3VtdWxhdGUgYSBzaWduaWZpY2FudCBudW1iZXIgb2Ygc2FtcGxlcyBpbiB0aGUgbmVhciBmdXR1cmUsIHdpdGggc2V2ZXJhbCB0aG91c2FuZCBzYW1wbGVzIGV4cGVjdGVkIHRvIGJlIGFuYWx5emVkIGluIGRlZGljYXRlZCBzZXNzaW9ucy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHJlcXVpcmVtZW50cyBhbmQgY3JpdGVyaWEgbXVzdCBiZSBtZXQgZm9yIGEgc2FtcGxlIHRvIGJlIGluY2x1ZGVkIGluIHlvdXIgYmlvYmFuaz9cIiBhPVwiU2FtcGxlcyBtdXN0IGJlIHByb2Nlc3NlZCBhY2NvcmRpbmcgdG8gaGlnaGx5IGRldGFpbGVkIHByb3RvY29scywgYW5kIHJlZ3VsYXIgYXVkaXRzIGFyZSBjb25kdWN0ZWQgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhbGwgc3RhbmRhcmRzLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoaWNoIG90aGVyIHJlc2VhcmNoIGluc3RpdHV0aW9ucyBvciBiaW9iYW5rcyBkbyB5b3UgY29vcGVyYXRlIHdpdGggYW5kIHdoYXQgZm9ybSBkb2VzIHRoaXMgY29vcGVyYXRpb24gdGFrZT9cIlxuICAgICAgICBhPVwiQmlvYmFuayBPV0wgaGFzIGEgc2Vjb25kIGxvY2F0aW9uIGluIExpcHBlLCBpbiBhZGRpdGlvbiB0byBCaWVsZWZlbGQuIENvbGxhYm9yYXRpb25zIGV4aXN0IHdpdGggdGhlIERJWiwgdGhlIFRyZXVoYW5kLCBhbmQgdGhyZWUgdW5pdmVyc2l0eSBob3NwaXRhbHMuIEl0IGlzIGFudGljaXBhdGVkIHRoYXQgY29vcGVyYXRpb24gd2l0aCBvdGhlciB3b3JraW5nIGdyb3VwcyB3aWxsIGluY3JlYXNlIGluIHRoZSBmdXR1cmUuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBzcGVjaWZpYyBzdG9yYWdlIGNvbmRpdGlvbnMgKGUuZy4gdGVtcGVyYXR1cmUsIGh1bWlkaXR5KSBtdXN0IGJlIG9ic2VydmVkIGZvciBkaWZmZXJlbnQgc2FtcGxlIHR5cGVzP1wiXG4gICAgICAgIGE9XCJTYW1wbGVzIGFyZSBzdG9yZWQgdW5kZXIgdmFyaW91cyB0ZW1wZXJhdHVyZSBjb25kaXRpb25zLCBpbmNsdWRpbmcgLTIwXHUwMEIwQywgLTgwXHUwMEIwQywgYW5kIC0xNTBcdTAwQjBDLCBhbG9uZyB3aXRoIHRoZSB1c2Ugb2YgbGlxdWlkIG5pdHJvZ2VuLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgZW5zdXJlIHRoYXQgdGhlIHNhbXBsZXMgcmVtYWluIHN0YWJsZSBhbmQgdXNhYmxlIG92ZXIgbG9uZ2VyIHBlcmlvZHMgb2YgdGltZT9cIlxuICAgICAgICBhPVwiU2FtcGxlcyBhcmUgc3RvcmVkIGluIG5pdHJvZ2VuIGZvciBsb25nLXRlcm0gc3RhYmlsaXR5LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgZW5jcnlwdGlvbiB0ZWNobmlxdWVzIG9yIGRhdGEgcHJvdGVjdGlvbiBtZWFzdXJlcyBhcmUgdXNlZCBpbiB5b3VyIGJpb2JhbmsgdG8gcHJldmVudCB1bmF1dGhvcml6ZWQgYWNjZXNzIHRvIHBhdGllbnQgZGF0YT8gQXJlIHRoZXJlIHNwZWNpYWwgcmVndWxhdGlvbnMgZm9yIHRoZSBhbm9ueW1pc2F0aW9uIG9mIGRhdGEgYW5kIGhvdyBpcyBpdCBlbnN1cmVkIHRoYXQgcGF0aWVudHMgY2Fubm90IGJlIHRyYWNlZD9cIlxuICAgICAgICBhPVwiUHNldWRvbnltcyBhcmUgY3JlYXRlZCB1c2luZyBzcGVjaWFsaXplZCBzb2Z0d2FyZSBzdWNoIGFzIENlbnRyYVhYIG9yIFJFRGNhcCB0byBwcm90ZWN0IHBhdGllbnQgZGF0YS5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IHJpZ2h0cyBkbyBwYXRpZW50cyBoYXZlIGluIHJlbGF0aW9uIHRvIHRoZWlyIHNhbXBsZXMsIGFuZCBob3cgYXJlIHRoZXNlIHJpZ2h0cyBzYWZlZ3VhcmRlZCBpbiB5b3VyIGJpb2Jhbms/XCJcbiAgICAgICAgYT1cIlBhdGllbnRzIGhhdmUgdGhlIHJpZ2h0IHRvIHJldm9rZSB0aGVpciBjb25zZW50IGF0IGFueSB0aW1lLCB3aGljaCBjYW4gYmUgZG9uZSBhdCB0aGUgY2xpbmljIG9yIGJpb2JhbmsuIFRoZSB0cnVzdGVlLCBhY3RpbmcgYXMgYW4gaW50ZXJtZWRpYXJ5LCB3aWxsIG5vdGlmeSBCT1dMIGFuZCBESVogdG8gZGVzdHJveSB0aGUgY29ycmVzcG9uZGluZyBzYW1wbGVzIG9yIGRhdGEuXCIgLz5cbiAgICA8Lz4sXG4gICAgbW9udGhzOiBcImF1Z3VzdFwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIidTY2hcdTAwRkNsZXIqaW5uZW4gQWthZGVtaWUnXCIsXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3NjaHVlbGVyJ10sXG4gICAgdGFnOiBcIkVkdWNhdGlvblwiLFxuICAgIGhlYWRpbmc6IFwiRW1wb3dlcmluZyBzdHVkZW50cyB0aHJvdWdoIHN5bnRoZXRpYyBiaW9sb2d5XCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwic2NodWVsZXJcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F5YVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTGFuZ2UsIFRlYW1tXCIsICBcbiAgICBxdW90ZTogXCJJdCB3YXMgd29uZGVyZnVsIHRvIGJlIHBhcnQgb2YgdGhlIFN0dWRlbnQgQWNhZGVteSBhbmQgdG8gZXhwZXJpZW5jZSBob3cgbXVjaCB3ZSBsZWFybmVkIHdoaWxlIHRlYWNoaW5nLiBTaGFyaW5nIG91ciBrbm93bGVkZ2UgYW5kIHNlZWluZyB0aGUgc3R1ZGVudHMnIGVudGh1c2lhc20gd2FzIGluY3JlZGlibHkgcmV3YXJkaW5nLCBldmVuIHRob3VnaCB3ZSBjb3VsZG4ndCBjb252ZXkgZXZlcnl0aGluZyBpbiBqdXN0IG9uZSBzZXNzaW9uLlwiLFxuICAgIHN1bW1hcnk6IFs8cD5UaGUgQ2VCaVRlYyBTdHVkZW50IEFjYWRlbXlbTGluayB1bnRlbiBTY2hcdTAwRkNsZXIgYWthZGVtaWVdIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IHByb3ZpZGVzIGhpZ2ggc2Nob29sIHN0dWRlbnRzIHdpdGggaGFuZHMtb24gZXhwZXJpZW5jZSBpbiBiaW90ZWNobm9sb2d5IGFuZCBtb2xlY3VsYXIgYmlvbG9neSwgc3VwcG9ydGVkIGJ5IHRoZSBPc3RodXNoZW5yaWNoIEZvdW5kYXRpb24gYW5kIERldG1vbGQgZGlzdHJpY3QgZ292ZXJubWVudC4gaUdFTSBCaWVsZWZlbGQgcGFydGljaXBhdGVkIGJ5IGd1aWRpbmcgc3R1ZGVudHMgdGhyb3VnaCBhIG5hbm9wb3JlIHNlcXVlbmNpbmcgZXhwZXJpbWVudCwgdGVhY2hpbmcgdGhlbSBhYm91dCBsYWIgd29yaywgZXhwZXJpbWVudCBwcmVwYXJhdGlvbiwgYW5kIHNhZmV0eSBwcm90b2NvbHMuIFRoZSB0ZWFtIGFsc28gcHJlc2VudGVkIHRoZWlyIGlHRU0gcHJvamVjdCwgUHJlQ3lzZSwgZ2l2aW5nIHN0dWRlbnRzIGluc2lnaHQgaW50byByZWFsLXdvcmxkIHJlc2VhcmNoIHByb2plY3RzIGFuZCBzeW50aGV0aWMgYmlvbG9neS4gTWFueSBzdHVkZW50cyB3ZXJlIGV4Y2l0ZWQgYnkgdGhlIGlHRU0gY29uY2VwdCBhbmQgZXhwcmVzc2VkIGludGVyZXN0IGluIGpvaW5pbmcgZHVyaW5nIHRoZWlyIGZ1dHVyZSBzdHVkaWVzLiBPdmVyYWxsLCB0aGUgYWNhZGVteSBoZWxwZWQgaW5zcGlyZSBzdHVkZW50cyB0byBleHBsb3JlIFNURU0gZmllbGRzIGFuZCBnYWluIHByYWN0aWNhbCBzY2llbnRpZmljIHNraWxscy48L3A+XSxcbiAgICBtb250aHM6IFwiQXVndXN0XCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiUHJlc2VudCBldmlkZW5jZVwiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwbGFjZWhvbGRlciddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXG4gICAgaGVhZGluZzogXCJCcmFpbnN0b3JtaW5nIGFuZCBzZWxlY3Rpb24gb2YgaWRlYXMgYW5kIGNvbmNlcHRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiZXZpZGVuY2VcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiXCIsXG4gICAgaW5zaWdodHM6IFwiXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiXCIsXG4gICAgdHlwZTogXCJtZXRhXCIsXG4gICAgc3VtbWFyeTogXCJcIixcbiAgICBtb250aHM6IFwiYXVndXN0XCJcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiQmVuamFtaW5cIixcbiAgICB0aXRsZTogXCJEci5cIixcbiAgICBuYWNobm5hbWU6IFwiV2lua2VsamFublwiLFxuICAgIGpvYjogXCJDby1Gb3VuZGVyIGFuZCBDRU8gYXQgXCIsXG4gICAgYWZmaWxpYXRpb246IFwiUk5oYWxlXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snd2lua2VsamFubiddLFxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxuICAgIGhlYWRpbmc6IFwiRGlzY3Vzc2lvbiBvbiBzcHJheS1kcnlpbmcgYW5kIHN0YWJpbGl0eSBvZiBsaXBpZCBuYW5vcGFydGljbGVzIHdpdGggUk5oYWxlXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicm5oYWxlXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiRHIuIEJlbmphbWluXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJXaW5rZWxqYW5uLCBFeHBlcnQgZm9yIExOUHMgdW5kIENlbyB2b24gUk5oYWxlXCIsXG4gICAgcXVvdGU6IFwiU3ByYXktZHJ5aW5nIExOUHMgaXMgYSBncm91bmRicmVha2luZyBhcHByb2FjaCB0aGF0IGVuaGFuY2VzIHN0YWJpbGl0eSBhbmQgZW5hYmxlcyBlZmZpY2llbnQgcHVsbW9uYXJ5IGRlbGl2ZXJ5IG9mIG1STkEsIHBhdmluZyB0aGUgd2F5IGZvciBpbm5vdmF0aXZlIHRoZXJhcGllcyBmb3IgY29uZGl0aW9ucyBsaWtlIGN5c3RpYyBmaWJyb3Npcy5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BcyBwYXJ0IG9mIG91ciBkZXZlbG9wbWVudCBwcm9jZXNzIG9mIGFuIGlubm92YXRpdmUsIGVmZmVjdGl2ZSBwdWxtb25hcnkgZGVsaXZlcnkgb2YgdGhlcmFwZXV0aWMgbVJOQSB0byBmaWdodCBjeXN0aWMgZmlicm9zaXMsXG4gICAgICB3ZSBjb25kdWN0ZWQgYW4gaW50ZXJ2aWV3IHdpdGggRHIuIEJlbmphbWluIFdpbmtlbGphbm4sIHdobyBpcyB0aGUgQ28tRm91bmRlciBvZiA8YSBocmVmPVwiaHR0cHM6Ly9ybmhhbGUuY29tL1wiPlJOaGFsZTwvYT4uIERyLiBCZW5qYW1pblxuICAgICAgV2lua2VsamFubiBoYXMgYSB3ZWFsdGggb2YgZXhwZXJpZW5jZSBpbiB0aGUgZmllbGQgb2YgUk5BIHRoZXJhcGV1dGljcyBhbmQgbmFub3RlY2hub2xvZ3kuIEhpcyBiYWNrZ3JvdW5kIGluY2x1ZGVzIGV4dGVuc2l2ZSByZXNlYXJjaCBpbiB0aGVcbiAgICAgIGRldmVsb3BtZW50IG9mIGxpcGlkLWJhc2VkIGRlbGl2ZXJ5IHN5c3RlbXMsIGZvY3VzaW5nIG9uIG9wdGltaXppbmcgc3RhYmlsaXR5IGFuZCBlZmZpY2FjeSBmb3IgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiBXaW5rZWxqYW5uXHUyMDE5cyB3b3JrXG4gICAgICBpcyBzdXBwb3J0ZWQgYnkgY3V0dGluZy1lZGdlIHJlc2VhcmNoIGZyb20gYWNhZGVtaWMgaW5zdGl0dXRpb25zLCBpbmNsdWRpbmcgY29sbGFib3JhdGlvbnMgd2l0aCBQcm9mZXNzb3IgT2xpdmlhIE1lcmtlbCBmcm9tIHRoZVxuICAgICAgTHVkd2lnLU1heGltaWxpYW5zLVVuaXZlcnNpdFx1MDBFNHQgaW4gTXVuaWNoLCBHZXJtYW55LCBzaW5jZSBoaXMgZG9jdG9yYWwgdGhlc2lzIGluIGhlciB3b3JraW5nIGdyb3VwLiBUaGUgaW50ZXJ2aWV3IHdpdGggV2lua2VsamFubiBwcm9tb3RlZFxuICAgICAgb3VyIHByb2plY3QgcGFydCwgd2hpY2ggYWltZWQgdG8gdXRpbGl6ZSBzcHJheS1kcmllZCBMTlBzIGZvciBlZmZpY2llbnQgZGVsaXZlcnkgdG8gdGhlIGx1bmcuIEJ5IGVuZ2FnaW5nIHdpdGggUk5oYWxlLCB3ZVxuICAgICAgc291Z2h0IHRvIHVuZGVyc3RhbmQgdGhlIG51YW5jZXMgb2YgdGhlaXIgbmFuby1lbWJlZGRlZCBtaWNyb3BhcnRpY2xlIHRlY2hub2xvZ3kgYW5kIGhvdyBpdCBjb3VsZCBlbmhhbmNlIG91ciBkZWxpdmVyeSBzeXN0ZW1zLiAgPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5STmhhbGUncyB0ZWNobm9sb2d5IGxldmVyYWdlcyBhZHZhbmNlZCBzcHJheSBkcnlpbmcgdGVjaG5pcXVlcyB0byBzdGFiaWxpemUgYW5kIGRlbGl2ZXIgUk5BIHRoZXJhcGV1dGljcy4gRHVyaW5nIG91ciBpbnRlcnZpZXcsXG4gICAgICBXaW5rZWxqYW5uIGRldGFpbGVkIHNldmVyYWwgY3J1Y2lhbCBhc3BlY3RzLiBGaXJzdGx5LCB0aGUgc3RhYmlsaXR5IGFuZCBzaGVsZi1saWZlIG9mIHNwcmF5LWRyaWVkIExOUHMgYXJlIHJlbWFya2FibGUuIFJOaGFsZVx1MjAxOXMgc2lSTkFcbiAgICAgIGZvcm11bGF0aW9ucyBoYXZlIG1haW50YWluZWQgdGhlaXIgaW50ZWdyaXR5IGZvciB1cCB0byAxOCBtb250aHMgYXQgcm9vbSB0ZW1wZXJhdHVyZSwgYW5kIGFsdGhvdWdoIHNwZWNpZmljIGRhdGEgZm9yIG1STkEgaXMgc3RpbGwgcGVuZGluZyxcbiAgICAgIHRoaXMgc3VnZ2VzdHMgYSBwcm9taXNpbmcgc2hlbGYtbGlmZSBmb3IgbVJOQSBmb3JtdWxhdGlvbnMgdW5kZXIgc2ltaWxhciBjb25kaXRpb25zLiBUaGUgc3ByYXkgZHJ5aW5nIHByb2Nlc3MgaXRzZWxmIGludm9sdmVzIG1peGluZyBhbiBldGhhbm9sXG4gICAgICBwaGFzZSBjb250YWluaW5nIGxpcGlkcyB3aXRoIGFuIGFxdWVvdXMgcGhhc2UgY29udGFpbmluZyBSTkEuIFRoaXMgbWl4dHVyZSBpcyB0aGVuIHNwcmF5LWRyaWVkLCBmb3JtaW5nIExOUHMgYXMgdGlueSBzcGhlcmljYWwgcGFydGljbGVzLlxuICAgICAgS2V5IHBhcmFtZXRlcnMgZm9yIHRoaXMgcHJvY2VzcyBpbmNsdWRlIG1haW50YWluaW5nIGFuIGludGVybmFsIGRyeWluZyB0ZW1wZXJhdHVyZSBvZiBhcm91bmQgMTAwIFx1MDBCMEMgYW5kIHVzaW5nIGV4Y2lwaWVudHMgbGlrZSBsYWN0b3NlIHRvXG4gICAgICBwcmVzZXJ2ZSB0aGUgbmFub3BhcnRpY2xlcycgc3RydWN0dXJlIGFuZCBmdW5jdGlvblx1MjAwQiA8VGFiU2Nyb2xsTGluayB0YWI9XCJybmhhbGVcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPi4gPC9wPixcbiAgICA8cD5FbnN1cmluZyB0aGUgaW50ZWdyaXR5IGFuZCBlZmZpY2llbmN5IG9mIHRoZSBMTlBzIGludm9sdmVzIHZhcmlvdXMgbWV0aG9kcywgaW5jbHVkaW5nIGdlbCBlbGVjdHJvcGhvcmVzaXMsIGJsb3R0aW5nLCBhbmQgZnVuY3Rpb25hbCByZWFkb3V0cyB0aHJvdWdoIHRyYW5zZmVjdGlvbiBhc3NheXMuXG4gICAgICBBZnRlciBkcnlpbmcsIHRoZSBuYW5vcGFydGljbGVzIHJldGFpbiB0aGVpciBzcGhlcmljYWwgc3RydWN0dXJlLCB3aGljaCByZXNlbWJsZXMgdGhhdCBvZiBcImdvbGYgYmFsbHNcIiB1bmRlciBzY2FubmluZyBlbGVjdHJvbiBtaWNyb3Njb3B5IChTRU0pPFRhYlNjcm9sbExpbmsgdGFiPVwicm5oYWxlXCIgc2Nyb2xsSWQ9XCJkZXNjLTFcIiBudW09XCIxXCIgLz4uXG4gICAgICBNb3Jlb3ZlciwgUk5oYWxlIGVtcGxveXMgYXJ0aWZpY2lhbCBpbnRlbGxpZ2VuY2UgdG8gb3B0aW1pemUgTE5QIGZvcm11bGF0aW9ucyBhbmQgcHJlZGljdCB0aGUgYmVzdCBkcnlpbmcgY29uZGl0aW9ucywgcmVkdWNpbmcgdGhlIG5lZWQgZm9yXG4gICAgICBleHRlbnNpdmUgd2V0IGxhYiB3b3JrLiBUaGlzIEFJLWRyaXZlbiBhcHByb2FjaCBlbmhhbmNlcyBlZmZpY2llbmN5IGFuZCByZWxpYWJpbGl0eSBpbiBkZXZlbG9waW5nIHRoZXJhcGV1dGljIG5hbm9wYXJ0aWNsZXMuIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbXG4gICAgICA8cD5UaGUgaW50ZXJ2aWV3IHdpdGggRHIuIEJlbmphbWluIFdpbmtlbGphbm4gZnJvbSBSTmhhbGUgcHJvdmlkZWQgaW52YWx1YWJsZSBpbnNpZ2h0cyB0aGF0IHdpbGwgc2lnbmlmaWNhbnRseSBlbmhhbmNlIG91ciBwcm9qZWN0XG4gICAgICAgIGZvY3VzZWQgb24gbVJOQSBkZWxpdmVyeSB0byB0aGUgbHVuZ3MgdXNpbmcgc3ByYXktZHJpZWQgTE5Qcy4gQnkgc2Vla2luZyB0byBpbnRlZ3JhdGUgdGhlaXIgcHJvdmVuIHRlY2huaXF1ZXMgYW5kIGlubm92YXRpdmUgYXBwcm9hY2hcbiAgICAgICAgdG8gc3ByYXktZHJ5IExOUHMsIHdlIGFyZSBvcHRpbWlzdGljIGFib3V0IGFjaGlldmluZyBzdXBlcmlvciBzdGFiaWxpdHksIGVmZmljYWN5LCBhbmQgc2NhbGFiaWxpdHkgaW4gb3VyIHRoZXJhcGV1dGljIGRlbGl2ZXJ5IHN5c3RlbXMuICA8L3A+XG4gICAgXSxcbiAgICBwaWN0dXJldXJsX2FpbTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAtcm5oYWxlLXpvb20ucG5nXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2RlbC1pbnRlcnZpZXctcm5oYWxlL3BhcGVyLW92ZXJ2aWV3LmpwZ1wiLFxuICAgIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb246IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2RlbC1pbnRlcnZpZXctcm5oYWxlL3BhcGVyLXNlbS5qcGdcIixcbiAgICByZWZlcmVuY2VzOiA8Um5oYWxlU291cmNlcyAvPixcbiAgICBpbnRlcnZpZXc6PD5cbiAgICA8UWFCb3ggcT1cIkNhbiB5b3Ugc3BlY2lmeSB0aGUgc2hlbGYgbGlmZSBmb3Igc3ByYXktZHJpZWQgTE5Qcz8gV2hhdCBzdG9yYWdlIGNvbmRpdGlvbnMgZG8geW91IHJlY29tbWVuZCB0byBtYXhpbWl6ZSBzdGFiaWxpdHk/XCIgYT1cIkZvciBzbWFsbCBpbnRlcmZlcmluZyBSTkEsIHdlIGNhbiBndWFyYW50ZWUgYSBzaGVsZiBsaWZlIG9mIDE4IG1vbnRocyBhdCByb29tIHRlbXBlcmF0dXJlLiBIb3dldmVyLCB0aGVyZSBhcmUgbm8gZXhpc3Rpbmcgc3R1ZGllcyBmb3IgbVJOQSwgd2hpY2ggdGVuZHMgdG8gYmUgbW9yZSBmcmFnaWxlLiBGb3Igb3B0aW1hbCBzdGFiaWxpdHksIHdlIHJlY29tbWVuZCBzdG9yaW5nIExOUHMgaW4gYSBjb29sLCBkcnkgcGxhY2UsIGF3YXkgZnJvbSBkaXJlY3Qgc3VubGlnaHQuXCIvPiBcbiAgICA8UWFCb3ggcT1cIldoYXQgdGVjaG5pY2FsIHJlcXVpcmVtZW50cyBhbmQgZXF1aXBtZW50IGFyZSBuZWNlc3NhcnkgdG8gc3VjY2Vzc2Z1bGx5IHNwcmF5LWRyeSBMTlBzIHVzaW5nIHlvdXIgbmFuby1lbWJlZGRlZC1taWNyb3BhcnRpY2xlIChORU0pIHRlY2hub2xvZ3k/XCIgYT1cIlRoZSBzcHJheS1kcnlpbmcgcHJvY2VzcyBmb3IgTE5QcyB1c2luZyBvdXIgTkVNIHRlY2hub2xvZ3kgaW52b2x2ZXMgc2V2ZXJhbCB0ZWNobmljYWwgc3RlcHMuIEluaXRpYWxseSwgYSBtaXh0dXJlIG9mIGFuIGV0aGFub2wgcGhhc2UgY29udGFpbmluZyBsaXBpZHMgYW5kIGFub3RoZXIgcGhhc2Ugd2l0aCBSTkEgaXMgcHJlcGFyZWQuIFRoaXMgbWl4dHVyZSBpcyB0aGVuIHN1YmplY3RlZCB0byBhIHNwcmF5LWRyeWluZyBwcm9jZXNzIHdoZXJlIGRyb3BsZXRzIGFyZSBzcHJheWVkIGludG8gYSBkcnlpbmcgdG93ZXIuIFRoZSBsaXF1aWQgZXZhcG9yYXRlcywgbGVhdmluZyBiZWhpbmQgTE5QcyBhcyBzbWFsbCBzcGhlcmljYWwgcGFydGljbGVzLlwiLz4gXG4gICAgPFFhQm94IHE9XCJIb3cgY29tcGxpY2F0ZWQgaXMgdGhlIHByb3RvY29sIGZvciBwcm9kdWNpbmcgc3ByYXktZHJpZWQgTE5Qcz8gQ2FuIHlvdSBkZXNjcmliZSB0aGUgcHJvdG9jb2w/XCIgYT1cIlRoZSBwcm90b2NvbCwgd2hpbGUgZGV0YWlsZWQsIGlzIHN0cmFpZ2h0Zm9yd2FyZC4gSXQgaW52b2x2ZXMgcHJlcGFyaW5nIHRoZSBsaXBpZCBhbmQgUk5BIG1peHR1cmUsIGZvbGxvd2VkIGJ5IHRoZSBzcHJheS1kcnlpbmcgcHJvY2VzcyB3aGVyZSBkcm9wbGV0cyBhcmUgc3ByYXllZCBpbnRvIGEgZHJ5aW5nIHRvd2VyLiBBcyB0aGUgbGlxdWlkIGV2YXBvcmF0ZXMsIHRoZSBMTlBzIHJlbWFpbiBhcyBzbWFsbCBiZWFkcy4gVGhpcyBwcm9jZXNzIGlzIGNyaXRpY2FsIGZvciBlbnN1cmluZyB0aGUgY29ycmVjdCBzaXplIGFuZCBjb21wb3NpdGlvbiBvZiB0aGUgTE5Qcy5cIi8+IFxuICAgIDxRYUJveCBxPVwiSG93IGRvIExOUHMgYXBwZWFyIGFmdGVyIHRoZSBkcnlpbmcgcHJvY2Vzcz9cIiBhPVwiQWZ0ZXIgZHJ5aW5nLCBMTlBzIHJlc2VtYmxlIGdvbGYgYmFsbHMgb24gYSBtaWNyb24gc2NhbGUgd2hlbiBvYnNlcnZlZCB1bmRlciBhIHNjYW5uaW5nIGVsZWN0cm9uIG1pY3Jvc2NvcGUgKFNFTSkuIFRoZWlyIHNpemUgZGlzdHJpYnV0aW9uIGlzIGFuYWx5emVkIHRocm91Z2ggbGlnaHQgc2NhdHRlcmluZyBtZWFzdXJlbWVudHMsIGFtb25nIG90aGVyIHRlY2huaXF1ZXMuXCIvPiBcbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgZW5zdXJlIHRoYXQgdGhlIFJOQSBjYXJnbyByZW1haW5zIHN0YWJsZSBkZXNwaXRlIHRoZSBoZWF0IGR1cmluZyB0aGUgZHJ5aW5nIHByb2Nlc3M/XCIgYT1cIldlIG1pdGlnYXRlIHRoZSBpbXBhY3Qgb2YgaGVhdCBieSBvcHRpbWl6aW5nIHRoZSBkcnlpbmcgY29uZGl0aW9ucy4gQ2hpdG9zYW4gYW5kIFBFRyBjYW4gYWxzbyBpbmZsdWVuY2Ugc3RhYmlsaXR5LiBXaXRob3V0IFBFRywgTE5QcyBtYXkgYWdnbG9tZXJhdGUgYW5kIGJlY29tZSBub24tZnVuY3Rpb25hbCwgYnV0IHRvbyBtdWNoIFBFRyBjYW4gcmVuZGVyIHRoZW0gaW5lcnQuIFRoZXJlZm9yZSwgYSBiYWxhbmNlZCBhcHByb2FjaCBpcyBuZWNlc3NhcnksIHRob3VnaCBQRUcgaGFzIG5vIHNpZ25pZmljYW50IGltcGFjdCBvbiB0aGUgZHJ5aW5nIHByb2Nlc3MgaXRzZWxmLlwiLz4gXG4gICAgPFFhQm94IHE9XCJBdCB3aGF0IHRlbXBlcmF0dXJlIGlzIHRoZSBMTlAgZHJpZWQ/XCIgYT1cIlRoZSBpbnRlcm5hbCB0ZW1wZXJhdHVyZSBkdXJpbmcgdGhlIGRyeWluZyBwcm9jZXNzIGlzIGFwcHJveGltYXRlbHkgMTAwIGRlZ3JlZXMgQ2Vsc2l1cywgYXMgbm90ZWQgaW4gb3VyIHB1YmxpY2F0aW9ucy5cIi8+IFxuICAgIDxRYUJveCBxPVwiRG9lcyBlYWNoIExOUCBmb3JtdWxhdGlvbiByZXF1aXJlIGluZGl2aWR1YWwgdGVzdGluZz9cIiBhPVwiWWVzLCBlYWNoIExOUCB3aXRoIGEgdW5pcXVlIGNvbXBvc2l0aW9uIG5lZWRzIHRvIGJlIHRlc3RlZCBpbmRpdmlkdWFsbHkgdG8gZW5zdXJlIG9wdGltYWwgc3RhYmlsaXR5IGFuZCBwZXJmb3JtYW5jZS5cIi8+IFxuICAgIDxRYUJveCBxPVwiSG93IGNhbiB3ZSB0ZXN0IHRoZSBlZmZpY2llbmN5IG9mIExOUHMgYWZ0ZXIgdGhlIGRyeWluZyBwcm9jZXNzP1wiIGE9XCJUaGUgZWZmaWNpZW5jeSBjYW4gYmUgdGVzdGVkIHRocm91Z2ggdHJhbnNmZWN0aW9uIHN0dWRpZXMuIEFkZGl0aW9uYWxseSwgdGhlIHBhcnRpY2xlcyBjYW4gYmUgYnJva2VuIGRvd24gdG8gYW5hbHl6ZSB0aGUgbVJOQSBzdHJ1Y3R1cmUsIGFsdGhvdWdoIHRoaXMgaXMgYSBtb3JlIGNvbXBsZXggYW5kIHRpbWUtY29uc3VtaW5nIHByb2Nlc3MuXCIvPiBcbiAgICA8UWFCb3ggcT1cIkNhbiB5b3UgZWxhYm9yYXRlIG9uIGhvdyB5b3UgdXNlIEFJIHRvIGN1c3RvbWl6ZSBMTlBzPyBXaGF0IGV4YWN0bHkgZG9lcyB0aGUgQUkgZG8sIGFuZCBob3cgcmVsaWFibGUgaXMgaXQ/XCIgYT1cIk91ciBBSSBpcyB1c2VkIGZvciBzY3JlZW5pbmcsIG9wdGltaXphdGlvbiwgYW5kIHRoZSBkZXNpZ24gb2YgZXhwZXJpbWVudHMsIHNpZ25pZmljYW50bHkgcmVkdWNpbmcgd2V0IGxhYiB3b3JrLiBJdCBhbHNvIHBsYXlzIGEgcm9sZSBpbiBkZXZlbG9waW5nIG5ldyBsaXBpZHMsIGEgcHJvY2VzcyBtb3JlIGNsb3NlbHkgYXNzb2NpYXRlZCB3aXRoIHRoZSB3b3JrIG9mIE9saXZpYSBNZXJrZWwuXCIvPiBcbiAgICA8UWFCb3ggcT1cIldoYXQgcHJvcGVydGllcyBvZiBMTlBzIGNvdWxkIGhpbmRlciB0aGUgZHJ5aW5nIHByb2Nlc3M/XCIgYT1cIlRoZW9yZXRpY2FsbHksIG5vdGhpbmcgc2hvdWxkIGhpbmRlciB0aGUgZHJ5aW5nIHByb2Nlc3MgaWYgaXQgaXMgb3B0aW1pemVkIGZvciB0aGUgc3BlY2lmaWMgY2FyZ28gYW5kIHRhcmdldC4gQWRqdXN0bWVudHMgY2FuIGFsd2F5cyBiZSBtYWRlIHRvIGFjY29tbW9kYXRlIGRpZmZlcmVudCBmb3JtdWxhdGlvbnMuXCIvPiBcbiAgICA8UWFCb3ggcT1cIkluIHlvdXIgb3Bpbmlvbiwgd2hpY2ggTE5QcyBhcmUgYmVzdCBzdWl0ZWQgZm9yIHRoZSBkcnlpbmcgcHJvY2VzcyAoU0xOcywgTkxDcywgZXRjLik/XCIgYT1cIkl0IGRlcGVuZHMgb24gdGhlIHNwZWNpZmljIGFwcGxpY2F0aW9uIGFuZCBjb21wb3NpdGlvbiBvZiB0aGUgTE5Qcy5cIi8+IFxuICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgdGhlIGVzdGltYXRlZCBjb3N0cyBmb3IgdGhlIGVudGlyZSBkcnlpbmcgcHJvY2Vzcz9cIiBhPVwiVGhlIHByaW1hcnkgZXhwZW5zZXMgYXJlIGluIHJhdyBtYXRlcmlhbHMgYW5kIGZvcm11bGF0aW9ucywgd2hpY2ggYXJlIHJlbGF0aXZlbHkgZXhwZW5zaXZlLiBUaGUgcHJvY2VzcyBpdHNlbGYgY2FuIGNvc3QgaW4gdGhlIGZvdXItZGlnaXQgcmFuZ2UuXCIvPiBcbiAgICA8UWFCb3ggcT1cIldvdWxkIHlvdSBiZSB3aWxsaW5nIHRvIHN1cHBvcnQgdXMgaW4gb3VyIHByb2plY3Q/IFdvdWxkIHlvdSBkcnkgb3VyIExOUHM/XCIgYT1cIlRoZSBzcHJheSBkcnllciByZXF1aXJlcyA1IG1MIG9mIGEgc29sdXRpb24gd2l0aCA1JSBsaXBpZCBzb2xpZHMgYW5kIDAuMDIlIFJOQS4gV2VcdTIwMTl2ZSBwdWJsaXNoZWQgcmVjb3ZlcnkgcmF0ZXMgb2YgNzAlLiBZb3UgY2FuIHNlbmQgdXMgdGhlIG1STkEgYW5kIExOUCBjb21wb25lbnRzIHRvIGVuY2Fwc3VsYXRlIGFuZCBkcnkuXCIvPlxuICAgIDwvPixcbiAgICBzdW1tYXJ5OiBcIlRoZSBjb252ZXJzYXRpb24gZm9jdXNlZCBvbiBzcHJheS1kcnlpbmcgTE5QcywgZW1waGFzaXppbmcgdGhlIHNoZWxmIGxpZmUgb2YgUk5BLWJhc2VkIGZvcm11bGF0aW9ucywgb3B0aW1hbCBzdG9yYWdlIGNvbmRpdGlvbnMsIGFuZCB0ZWNobmljYWwgcmVxdWlyZW1lbnRzIGZvciB0aGUgZHJ5aW5nIHByb2Nlc3MuIENvcmRlbiBQaGFybWEgc2hhcmVkIGluc2lnaHRzIG9uIHRoZSBwcm90b2NvbCwgaGlnaGxpZ2h0aW5nIHRoZSBuZWVkIGZvciB0ZXN0aW5nIGVhY2ggTE5QIGZvcm11bGF0aW9uIGluZGl2aWR1YWxseSBmb3Igc3RhYmlsaXR5LiBBSSB0ZWNobm9sb2d5IGlzIHVzZWQgdG8gb3B0aW1pemUgTE5QIGZvcm11bGF0aW9ucywgYW5kIHBvdGVudGlhbCBjb2xsYWJvcmF0aW9ucyB3ZXJlIGRpc2N1c3NlZCwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIGRyeWluZyBMTlBzLlwiLFxuICAgIG1vbnRoczogXCJhdWd1c3RcIlxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJNYXhcIixcbiAgICBuYWNobm5hbWU6IFwiQmVja21hbm5cIixcbiAgICBqb2I6IFwiUGF0aWVudCBhbmQgU3R1ZGVudFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXG4gICAgcGljdHVyZXVybDogcGljc1snbWF4J10sXG4gICAgdGFnOiBcIlBhdGllbnRcIixcbiAgICBoZWFkaW5nOiBcIkNvbnN1bHRhdGlvbiBvbiBVbml2ZXJzaXR5IEh5Z2llbmUgUmlza3MgYW5kIEltcHJvdmVtZW50IGZvciBIeWdpZW5lIENvbmNlcHRcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJtYXhoeWdpZW5lXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZU5hY2huYW1lOlwiQmVja21hbm4sIFBhdGllbnRcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiTWF4XCIsXG4gICAgcXVvdGU6IFwiSXRcdTIwMTlzIGltcG9ydGFudCB0byBrZWVwIG15IGh5Z2llbmUgcHJhY3RpY2VzIHByYWN0aWNhbCBhbmQgZWZmZWN0aXZlLCBmb2N1c2luZyBvbiByZWd1bGFyIGNsZWFuaW5nIHJhdGhlciB0aGFuIGV4Y2Vzc2l2ZSBtZWFzdXJlcyB0aGF0IG1heSBjcmVhdGUgbW9yZSByaXNrcyBmb3IgaW52ZWN0aW9uLlwiLFxuICAgIHN1bW1hcnk6IFs8cD5JbiB0aGUgZmVlZGJhY2sgb24gdGhlIGh5Z2llbmUgY29uY2VwdCwgdGhlIGF1dGhvciBzdGF0ZXMgdGhhdCB0aGUgbnVtYmVyIG9mIHRvaWxldHMgcmVxdWlyZWQgY2FuIGJlIHJlZHVjZWQgYXMgb25seSBhIG1hcmdpbmFsIG51bWJlciBvZiBwZW9wbGUgd2lsbCBiZSBwcmVzZW50IGF0IHRoZSB1bml2ZXJzaXR5LiBIZSBwcmFpc2VkIHRoZSBmaXJzdCBmb3VyIHBvaW50cyBvZiB0aGUgY29uY2VwdCBhcyB2ZXJ5IGdvb2QgYW5kIHdlbGwgdGhvdWdodCBvdXQuXG5cbiAgICAgIFdpdGggcmVnYXJkIHRvIHBvaW50cyBmaXZlIGFuZCBzaXgsIGhlIGNsYXJpZmllcyB0aGF0IG5vIHNwZWNpYWwgaHlnaWVuZSBpdGVtcyBhcmUgcmVxdWlyZWQgZm9yIHRoZSBzdGF5IGFzIGxvbmcgYXMgdGhlIHRvaWxldHMgYXJlIGNsZWFuZWQgcmVndWxhcmx5IGFuZCB0aGVyZSBpcyBhbiBhZGRpdGlvbmFsIHNlcnZpY2UgZm9yIHRoZSB3YXNoYmFzaW5zLiBIZSBleHBsYWlucyB0aGF0IHRoZSBzb3VyY2VzIG9mIGRhbmdlciBjYW4gYmUgc2lnbmlmaWNhbnRseSByZWR1Y2VkIGJ5IHJlZ3VsYXIgY2xlYW5pbmcgYW5kIHRoZSBwcmVzZW5jZSBvZiB0b2lsZXQgbGlkcywgd2hpY2ggZWxpbWluYXRlcyB0aGUgbmVlZCBmb3Igc3BlY2lhbCBoeWdpZW5lIG1lYXN1cmVzLlxuICAgICAgXG4gICAgICBIZSBhbHNvIGFyZ3VlcyB0aGF0IGNvbnRhY3RsZXNzIGZhY2lsaXRpZXMgYXJlIG5vdCBuZWNlc3NhcnkgYXMgcGVvcGxlIHdhc2ggb3Igc2FuaXRpc2UgdGhlaXIgaGFuZHMgYWZ0ZXIgdXNpbmcgdGhlIHRvaWxldCBhbnl3YXkuIEZpbmFsbHksIGhlIGFza3Mgd2hldGhlciBzb3VyY2VzIGFyZSBuZWVkZWQgZm9yIHRoZSBoeWdpZW5lIGNvbmNlcHQgYW5kIG9mZmVycyBoaXMgaGVscCB0byBjcmVhdGUgYSByZXZpc2VkIHZlcnNpb24sIHdoaWNoIGhlIHdvdWxkIHRoZW4gbGlrZSB0byByZXZpZXcgYWdhaW4gYmVmb3JlIGl0IGlzIGZvcndhcmRlZCB0byBNciBKb2hhbm5mdW5rZS48L3A+XSxcbiAgICBtb250aHM6IFwiQXVndXN0XCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiS2F0aGFyaW5hXCIsXG4gICAgbmFjaG5uYW1lOiBcIktvbG9ua29cIixcbiAgICBqb2I6IFwiRXhwZXJ0IGZvciBuYW5vY2Fwc3VsZXNcIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaW9sb2dpc3RcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrb2xvbmtvJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJPcHRpbWl6aW5nIG91ciBtUk5BIERlbGl2ZXJ5IFN5c3RlbXNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJrb2xvbmtvZmlyc3RcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlVm9ybmFtZTpcIiBEci4gS2F0aGFyaW5hXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJLb2xvbmtvLCBMTlAgU3BlY2lhbGlzdCB3aXRoIGZvY3VzIG9uIGNoaXRvc2FuIGFuZCBDRiB0aGVyYXBpZXMgXCIsXG4gICAgcXVvdGU6IFwiV293LCB5b3VcdTIwMTlyZSBhbHJlYWR5IGZ1cnRoZXIgYWxvbmcgdGhhbiBJIHdhcyEgVGhhdFx1MjAxOXMgYSByZWFsbHkgZ29vZCBhcHByb2FjaCwgZXNwZWNpYWxseSBzaW5jZSBkcnkgcG93ZGVyIGZvcm11bGF0aW9ucyBjYW4gaGVscCB3aXRoIHN0YWJpbGl0eS5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5PdXIgZ29hbCBpbiByZWFjaGluZyBvdXQgdG8gRHIuIEthdGhhcmluYSBLb2xvbmtvLCB3aG8gZWFybmVkIGhlciBQaEQgd29ya2luZyBvbiBjaGl0b3Nhbi1iYXNlZCBuYW5vcGFydGljbGVzIGZvciBkZWxpdmVyaW5nIG51Y2xlaWMgYWNpZHMgdG8gaHVtYW4gcmVzcGlyYXRvcnkgY2VsbHMgaW4gdGhlIGNvbnRleHQgb2YgY3lzdGljIGZpYnJvc2lzLCB3YXMgdG8gc2VlayBoZXIgYWR2aWNlIG9uIHRoZSBkZXNpZ24sIHN0YWJpbGl0eSwgYW5kIGFwcGxpY2F0aW9uIG9mIG5hbm9wYXJ0aWNsZXMuIFdlIHdhbnRlZCB0byBsZWFybiBmcm9tIGhlciBleHBlcmllbmNlIHdpdGggY2hpdG9zYW4tY2Fwc2FpY2luIG5hbm9wYXJ0aWNsZXMsIGVzcGVjaWFsbHkgdGhlIGNoYWxsZW5nZXMgc2hlIGVuY291bnRlcmVkLCBhbmQgYXBwbHkgaGVyIGluc2lnaHRzIHRvIGltcHJvdmUgb3VyIG93biBwcm9qZWN0LiBTcGVjaWZpY2FsbHksIHdlIGFpbWVkIHRvIGJldHRlciB1bmRlcnN0YW5kIG5hbm9wYXJ0aWNsZSBzdGFiaWxpdHksIHRyYW5zZmVjdGlvbiBtZXRob2RzLCBhbmQgaG93IHRvIGVmZmVjdGl2ZWx5IGRlc2lnbiBvdXIgZXhwZXJpbWVudHMuXG4gICAgPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5Eci4gS29sb25rbyBwcm92aWRlZCB1cyB3aXRoIHZhbHVhYmxlIGluc2lnaHRzIGludG8gd29ya2luZyB3aXRoIG5hbm9wYXJ0aWNsZXMsIHBhcnRpY3VsYXJseSBlbXBoYXNpemluZyB0aGUgYWR2YW50YWdlcyBvZiBuYW5vY2Fwc3VsZXMuIFNoZSBoaWdobGlnaHRlZCB0aGF0IG5hbm9jYXBzdWxlcyBhcmUgbW9yZSBzdGFibGUgdGhhbiBuYW5vLWNvbXBsZXhlcywgd2hpY2ggaXMgY3J1Y2lhbCBmb3IgZXhwZXJpbWVudHMgaW52b2x2aW5nIGNvbXBsZXggZW52aXJvbm1lbnRzIGFuZCBoaWdoIHNoZWFyIGZvcmNlcy4gQWRkaXRpb25hbGx5LCBoZXIgdXNlIG9mIGNhcHNhaWNpbiB3YXNuXHUyMDE5dCBhaW1lZCBhdCBpbXByb3ZpbmcgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgYnV0IHdhcyBwYXJ0IG9mIGEgYnJvYWRlciBzdHJhdGVneSB0YXJnZXRpbmcgc3BlY2lmaWMgY2hhbm5lbHMuIFNoZSBhbHNvIHNoYXJlZCBwcmFjdGljYWwgbWV0aG9kcyBmb3IgbWVhc3VyaW5nIHBhcnRpY2xlIHN0YWJpbGl0eSBhbmQgY3l0b3RveGljaXR5LCBnaXZpbmcgdXMgY2xlYXIgZ3VpZGFuY2Ugb24gdG9vbHMgYW5kIHRlY2huaXF1ZXMgdGhhdCB3ZSBjYW4gYXBwbHkgdG8gb3VyIHByb2plY3QuIFxuICAgICAgRnVydGhlcm1vcmUsIERyLiBLb2xvbmtvIGRpc2N1c3NlZCB0aGUgdXNlIG9mIGNoaXRvc2FuIGFzIGEgY29tcG9uZW50IGluIG5hbm9wYXJ0aWNsZSBmb3JtdWxhdGlvbnMuIENoaXRvc2FuLCB3aXRoIGl0cyBwb3NpdGl2ZSBjaGFyZ2UsIGNhbiBpbnRlcmFjdCB3aXRoIG1STkEsIHBvdGVudGlhbGx5IGVuaGFuY2luZyB0aGUgc3RhYmlsaXR5IG9mIHRoZSBjYXJnby4gQXMgYW4gb3V0bG9vaywgd2UgcGxhbiB0byBleHBsb3JlIG1vZGlmaWNhdGlvbnMgdXNpbmcgY2hpdG9zYW4gdG8gaW1wcm92ZSB0aGUgc3RhYmlsaXR5IGFuZCBwZXJmb3JtYW5jZSBvZiBvdXIgbVJOQSBkZWxpdmVyeSBzeXN0ZW0uIFRoaXMgYXBwcm9hY2ggbWF5IHByb3ZpZGUgYSBtb3JlIHJvYnVzdCBzb2x1dGlvbiBmb3Igb3B0aW1pemluZyBuYW5vcGFydGljbGUgZm9ybXVsYXRpb25zIGluIGZ1dHVyZSBleHBlcmltZW50cy4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246WzxwPldlIGRpcmVjdGx5IGFwcGxpZWQgS2F0aGFyaW5hXHUyMDE5cyBpbnNpZ2h0cyB0byBpbXByb3ZlIG91ciBuYW5vcGFydGljbGUgZGVzaWduIGFuZCB0ZXN0aW5nIG1ldGhvZHMuIEhlciByZWNvbW1lbmRhdGlvbnMgb24gdXNpbmcgbmFuby1jYXBzdWxlcyBhbmQgT3B0aU1FTSBhcyB0aGUgdHJhbnNmZWN0aW9uIG1lZGl1bSBoZWxwZWQgcmVmaW5lIG91ciBleHBlcmltZW50YWwgYXBwcm9hY2guIFNoZSBlbXBoYXNpemVkIHVzaW5nIGEgbWVkaXVtIHdpdGggZmV3ZXIgYWRkaXRpdmVzLCBsaWtlIE9wdGlNRU0sIGFuZCBzdWdnZXN0ZWQgcmVtb3ZpbmcgYW50aWJpb3RpY3MgMjQgaG91cnMgYmVmb3JlIHRyYW5zZmVjdGlvbiB0byBhdm9pZCBpbnRlcmZlcmVuY2UsIGVuc3VyaW5nIG1vcmUgY29udHJvbGxlZCBhbmQgZWZmZWN0aXZlIGNvbmRpdGlvbnMuIFdlIGFsc28gZXhwbG9yZWQgbmV3IHN0YWJpbGl0eSB0ZXN0aW5nIGlkZWFzLCBpbmNsdWRpbmcgbmFzYWwgc3ByYXkgc29sdXRpb25zIGFuZCBkcnkgcG93ZGVyIGZvcm11bGF0aW9ucy4gXG4gICAgICBXZSBpbmNvcnBvcmF0ZWQgaGVyIGluc2lnaHRzIGFzIGZvbGxvd3M6IDwvcD4sXG4gICAgICA8dWw+XG4gICAgICAgIDxsaT48c3Ryb25nPk5hbm8tQ2Fwc3VsZXMgRm9jdXM6PC9zdHJvbmc+IEJhc2VkIG9uIEthdGhhcmluYVx1MjAxOXMgYWR2aWNlLCB3ZSBwcmlvcml0aXplZCBuYW5vLWNhcHN1bGVzIGZvciB0aGVpciBlbmhhbmNlZCBzdGFiaWxpdHkgb3ZlciBuYW5vLWNvbXBsZXhlcy48L2xpPlxuICAgICAgICA8bGk+PHN0cm9uZz5DaGl0b3NhbiBmb3IgU3RhYmlsaXR5Ojwvc3Ryb25nPiBXZSdyZSBleHBsb3JpbmcgY2hpdG9zYW4gdG8gaW1wcm92ZSBtUk5BIGRlbGl2ZXJ5IHN5c3RlbSBzdGFiaWxpdHkgZHVlIHRvIGl0cyBwb3NpdGl2ZSBjaGFyZ2UsIHdoaWNoIGJpbmRzIG1STkEgdG8gdGhlIG5hbm9wYXJ0aWNsZSBzdXJmYWNlLjwvbGk+XG4gICAgICAgIDxsaT48c3Ryb25nPk9wdGlNRU0gZm9yIFRyYW5zZmVjdGlvbjo8L3N0cm9uZz4gT3B0aU1FTSBpcyBub3cgb3VyIGNob3NlbiB0cmFuc2ZlY3Rpb24gbWVkaXVtLCB3aXRoIHRoZSBzdWdnZXN0aW9uIHRvIHJlbW92ZSBhbnRpYmlvdGljcyAyNCBob3VycyBwcmlvci48L2xpPlxuICAgICAgICA8bGk+PHN0cm9uZz5NVFQgVGVzdCBmb3IgQ3l0b3RveGljaXR5Ojwvc3Ryb25nPiBXZSBhZG9wdGVkIHRoZSBNVFQgdGVzdCBmb3IgY3l0b3RveGljaXR5IGR1ZSB0byBpdHMgc2ltcGxpY2l0eSBhbmQgcmVsaWFiaWxpdHkuPC9saT5cbiAgICAgICAgPGxpPjxzdHJvbmc+TmFzYWwgU3ByYXkgYW5kIERyeSBQb3dkZXIgVGVzdGluZzo8L3N0cm9uZz4gV2UgYXJlIGNvbnNpZGVyaW5nIHRlc3RpbmcgbmFub3BhcnRpY2xlIHN0YWJpbGl0eSB1c2luZyBuYXNhbCBzcHJheSBzb2x1dGlvbnMgYW5kIGV4cGxvcmluZyBkcnkgcG93ZGVyIGZvcm11bGF0aW9ucy48L2xpPlxuICAgICAgICA8bGk+PHN0cm9uZz5DYXBzYWljaW4gRXhjbHVzaW9uOjwvc3Ryb25nPiBBcyBjYXBzYWljaW4gZGlkIG5vdCBzaWduaWZpY2FudGx5IGltcGFjdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBpbiBLYXRoYXJpbmFcdTIwMTlzIHJlc2VhcmNoLCB3ZSBkZWNpZGVkIG5vdCB0byBpbmNsdWRlIGl0IGluIG91ciBwcm9qZWN0LjwvbGk+XG4gICAgICA8L3VsPlxuICAgIF0gLFxuICAgIGludGVydmlldzo8PlxuICAgIDxRYUJveCBxPVwiSG93IGRpZCB5b3UgYXBwcm9hY2ggdGhlIGRlc2lnbiBvZiBMaXBpZCBOYW5vcGFydGljbGVzIChMTlBzKT8gV2hhdCB3ZXJlIHRoZSBmaXJzdCBzdGVwcyB5b3UgdG9vayBhdCB0aGF0IHRpbWU/IFdlcmUgeW91IGFscmVhZHkgZmFtaWxpYXIgd2l0aCBMTlBzLCBvciB3YXMgdGhhdCBhIGNvbXBsZXRlbHkgbmV3IGV4cGVyaWVuY2UgZm9yIHlvdT9cIiBhPVwiSSBzdGFydGVkIHdvcmtpbmcgd2l0aCBuYW5vcGFydGljbGVzIGR1cmluZyBteSBiYWNoZWxvclx1MjAxOXMgdGhlc2lzLiBJIGNvbnRpbnVlZCB3aXRoIG5hbm9wYXJ0aWNsZXMgaW50byBteSBtYXN0ZXJcdTIwMTlzIHRoZXNpcywgd29ya2luZyBvbiBhIHByb2plY3QgcmVsYXRlZCB0byBjeXN0aWMgZmlicm9zaXMuIEluaXRpYWxseSwgSSB3b3JrZWQgd2l0aCBuYW5vLWNvbXBsZXhlcywgYnV0IGxhdGVyIHN3aXRjaGVkIHRvIG5hbm8tY2Fwc3VsZXMgZHVlIHRvIHRoZWlyIHN0YWJpbGl0eSwgZXNwZWNpYWxseSBpbiBjZWxsIGN1bHR1cmUgbWVkaWEuXCIgLz5cbiAgICA8UWFCb3ggcT1cIlNpbmNlIHlvdVx1MjAxOXJlIGZvY3VzZWQgb24gc3RhYmlsaXR5IGFuZCBhcHBseWluZyBoaWdoIHNoZWFyIGZvcmNlcywgY291bGQgeW91IGV4cGxhaW4gd2h5IG5hbm8tY2Fwc3VsZXMgYXJlIG1vcmUgc3RhYmxlIHRoYW4gY29tcGxleGVzIGluIHRoaXMgY29udGV4dD9cIiBhPVwiTmFuby1jYXBzdWxlcyBhcmUgZ2VuZXJhbGx5IG1vcmUgc3RhYmxlIGluIGNlbGwgY3VsdHVyZSBtZWRpYSBjb21wYXJlZCB0byBuYW5vLWNvbXBsZXhlcywgd2hpY2ggb2Z0ZW4gcmVhY3Qgd2l0aCBhZGRpdGl2ZXMgYW5kIHByb3RlaW5zLiBIb3dldmVyLCBJIGRpZG5cdTIwMTl0IGV4cGxvcmUgc2hlYXIgZm9yY2VzIG11Y2ggZnVydGhlci4gTXkgbWFpbiBnb2FsIHdhcyB0byBzdGFiaWxpemUgdGhlIHBhcnRpY2xlcyBpbiBjZWxsIGN1bHR1cmUgbWVkaWEgZm9yIHRlc3Rpbmcgb24gY2VsbHMuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldoYXQga2luZCBvZiBjZWxsIGN1bHR1cmUgbWVkaXVtIGRpZCB5b3UgdXNlIGZvciB0aGVzZSBleHBlcmltZW50cz9cIiBhPVwiRm9yIHRyYW5zZmVjdGlvbiwgd2UgdXNlZCBPcHRpbWVtIGFzIHRoZSBtZWRpdW0sIGFmdGVyIHJlbW92aW5nIGFudGliaW90aWNzIGZyb20gdGhlIGN1bHR1cmUgbWVkaXVtIDI0IGhvdXJzIHByaW9yIHRvIHRyYW5zZmVjdGlvbi5cIiAvPlxuICAgIDxRYUJveCBxPVwiSG93IGxvbmcgZGlkIGl0IHRha2UgeW91IHRvIGdldCB0byB0aGUgcG9pbnQgd2hlcmUgeW91IHVzZWQgbmFuby1jYXBzdWxlcz9cIiBhPVwiSSBvbmx5IHN0YXJ0ZWQgd29ya2luZyB3aXRoIG5hbm8tY2Fwc3VsZXMgdG93YXJkcyB0aGUgZW5kIG9mIG15IFBoRC4gSSBzcGVudCBtdWNoIG9mIG15IHRpbWUgd2l0aCBuYW5vLWNvbXBsZXhlcywgYnV0IHdoZW4gSSB2aXNpdGVkIGEgbGFiIGluIExlZWRzLCBJIHNoaWZ0ZWQgdG8gbmFuby1jYXBzdWxlcy4gVGhpcyB0cmFuc2l0aW9uIGhhcHBlbmVkIHF1aXRlIGxhdGUsIGp1c3QgbW9udGhzIGJlZm9yZSBJIGZpbmlzaGVkIG15IHRoZXNpcy5cIiAvPlxuICAgIDxRYUJveCBxPVwiWW91IG1lbnRpb25lZCBjYXBzYWljaW4gaW4geW91ciByZWNlbnQgcGFwZXIuIERvZXMgaXQgc2lnbmlmaWNhbnRseSBhZmZlY3QgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIGFuZCBpcyBpdCB3b3J0aCBpbmNsdWRpbmcgaW4gb3VyIGV4cGVyaW1lbnRzP1wiIGE9XCJObywgY2Fwc2FpY2luIGRpZG5cdTIwMTl0IGFmZmVjdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBpbiBvdXIgZXhwZXJpbWVudHMuIEl0IHdhcyBpbmNsdWRlZCB0byBpbmhpYml0IHRoZSBJbmEtY2hhbm5lbCBhcyBwYXJ0IG9mIGEgZHVhbCBzdHJhdGVneSB0YXJnZXRpbmcgYm90aCBDRlRSIGFuZCBJbmEtY2hhbm5lbHMsIGJ1dCBpdCBtaWdodCBub3QgYmUgbmVjZXNzYXJ5IGZvciB5b3VyIHByb2plY3QuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldlcmUgdGhlcmUgYW55IGNyaXRpY2FsIGNvbXBvbmVudHMgaW4gdGhlIGZvcm11bGF0aW9uIG9mIHlvdXIgbmFub3BhcnRpY2xlcyB0aGF0IHlvdSBjb3VsZG5cdTIwMTl0IGRvIHdpdGhvdXQ/XCIgYT1cIk5vLCB0aGUgbWFpbiBjb21wYXJpc29uIHdhcyBiZXR3ZWVuIG5hbm8tY29tcGxleGVzIGFuZCBuYW5vLWNhcHN1bGVzLiBOYW5vLWNvbXBsZXhlcyB3ZXJlIGluY29uc2lzdGVudCBpbiBzaXplIGFuZCBzdGFiaWxpdHksIHdoaWxlIG5hbm8tY2Fwc3VsZXMgd2VyZSBzdGFibGUgYW5kIHNtYWxsZXIsIHdoaWNoIEkgYmVsaWV2ZWQgd291bGQgd29yayBiZXR0ZXIgaW4gbGF0ZXIgZXhwZXJpbWVudHMuXCIgLz5cbiAgICA8UWFCb3ggcT1cIklzIHRoZXJlIGEgd2F5IHRvIGNoZWNrIGlmIHRoZSBtUk5BIHN0aWNrcyB0byB0aGUgb3V0c2lkZSBvZiB0aGUgbmFub3BhcnRpY2xlIG9yIGVuZHMgdXAgaW5zaWRlP1wiIGE9XCJJIGJlbGlldmUgdGhlIG1STkEgc3RpY2tzIHRvIHRoZSBvdXRzaWRlLiBUaGUgcHJvY2VzcyBpbnZvbHZlZCBmb3JtaW5nIG5hbm8tY2Fwc3VsZXMgdXNpbmcgbGVjaXRoaW4gYW5kIG9pbCwgYW5kIGFmdGVyIHRoZSBldGhhbm9sIHdhcyBldmFwb3JhdGVkLCBtUk5BIHdhcyBhZGRlZCBsYXN0LiBUaGUgbVJOQSBsaWtlbHkgYWRoZXJlZCB0byB0aGUgcG9zaXRpdmVseSBjaGFyZ2VkIGNoaXRvc2FuIG9uIHRoZSBvdXRzaWRlIG9mIHRoZSBjYXBzdWxlLlwiIC8+XG4gICAgPFFhQm94IHE9XCJEbyB5b3UgcmVtZW1iZXIgdGhlIHJhdGlvIG9mIG1STkEgdG8gbmFuby1jYXBzdWxlP1wiIGE9XCJJIGRvblx1MjAxOXQgcmVtZW1iZXIgdGhlIGV4YWN0IHJhdGlvIG9mZmhhbmQsIGJ1dCBpdFx1MjAxOXMgZG9jdW1lbnRlZCBpbiBteSBkaXNzZXJ0YXRpb24uIEkgb3B0aW1pemVkIHRoZSBhbW91bnQgb2YgbVJOQSB0aGF0IG5lZWRlZCB0byBlbnRlciB0aGUgY2VsbCBmb3IgZWZmZWN0aXZlIHJlc3VsdHMsIGJ1dCBkaWRuXHUyMDE5dCBkbyBleHRlbnNpdmUgdGVzdGluZyB3aXRoIG5hbm8tY2Fwc3VsZXMuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldhcyBkZXRlcm1pbmluZyB0aGUgb3B0aW1hbCBhbW91bnQgb2YgbmFub3BhcnRpY2xlcyB0cmlhbCBhbmQgZXJyb3I/XCIgYT1cIlllcywgZGVmaW5pdGVseS4gSXQgaW52b2x2ZWQgYSBsb3Qgb2Ygb3B0aW1pemF0aW9uLlwiIC8+XG4gICAgPFFhQm94IHE9XCJZb3UgdXNlZCB0aGUgTVRUIHRlc3QgZm9yIGN5dG90b3hpY2l0eS4gV291bGQgeW91IHJlY29tbWVuZCBpdCBmb3IgdXMsIG9yIGFyZSB0aGVyZSBiZXR0ZXIgYWx0ZXJuYXRpdmVzP1wiIGE9XCJZZXMsIHRoZSBNVFQgdGVzdCBpcyBzaW1wbGUgYW5kIHJlbGlhYmxlLiBZb3UganVzdCBuZWVkIHRvIHBpcGV0dGUgYWNjdXJhdGVseS4gV2UgdXNlZCBpdCBmcmVxdWVudGx5LCBhbmQgaXQgd29ya2VkIHdlbGwuXCIgLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkaWQgeW91IGFzc2VzcyB0aGUgc3RhYmlsaXR5IG9mIHRoZSBuYW5vLWNhcHN1bGVzPyBEaWQgeW91IHVzZSBtaWNyb3Njb3B5IG9yIGFub3RoZXIgbWV0aG9kP1wiIGE9XCJXZSB1c2VkIGEgZGV2aWNlIGNhbGxlZCBhIFpldGFzaXplciwgd2hpY2ggbWVhc3VyZXMgc2l6ZSwgemV0YSBwb3RlbnRpYWwsIGFuZCBwb2x5ZGlzcGVyc2l0eSBpbmRleCAoUERJKS4gV2UgdXNlZCBpdCB0byBhc3Nlc3Mgc3RhYmlsaXR5IGluIGNlbGwgY3VsdHVyZSBtZWRpdW0gb3ZlciB0aW1lLCBmcm9tIGhhbGYgYW4gaG91ciB0byAyNCBob3Vycy5cIiAvPlxuICAgIDxRYUJveCBxPVwiRG8geW91IGhhdmUgYW55IGFkdmljZSBmb3Igb3VyIHByb2plY3Qgb3IgYW55dGhpbmcgd2UgbWlnaHQgaGF2ZSBtaXNzZWQ/XCIgYT1cIklmIHlvdVx1MjAxOXJlIHBsYW5uaW5nIHRvIHVzZSBhIGRpZmZ1c2VyIGZvciBuYXNhbCBhZG1pbmlzdHJhdGlvbiwgeW91IG1pZ2h0IHdhbnQgdG8gdGVzdCB0aGUgc3RhYmlsaXR5IG9mIHRoZSBuYW5vcGFydGljbGVzIGluIGEgc2FsaW5lIHNvbHV0aW9uIG9yIHN0YW5kYXJkIG5hc2FsIHNwcmF5IHNvbHV0aW9uLiBJdCBjb3VsZCBiZSB1c2VmdWwgdG8gc2VlIGhvdyB0aGV5IGJlaGF2ZSBpbiBzdWNoIGEgbWVkaXVtLiBPdGhlcndpc2UsIGl0IHNlZW1zIGxpa2UgeW91XHUyMDE5cmUgd2VsbCBhaGVhZCBvZiB3aGVyZSBJIHdhcyFcIiAvPlxuICAgIDxRYUJveCBxPVwiVGhhbmsgeW91IHNvIG11Y2ggZm9yIHlvdXIgdGltZSBhbmQgaW5zaWdodHMhXCIgYT1cIllvdVx1MjAxOXJlIHdlbGNvbWUhIElcdTIwMTltIGdsYWQgSSBjb3VsZCBoZWxwLlwiIC8+XG4gICAgPC8+LFxuICAgIHN1bW1hcnk6IFwiV2UgaWRlbnRpZmllZCBzZXZlcmFsIGNydWNpYWwgaW5zaWdodHMgdG8gZ3VpZGUgb3VyIHByb2plY3QgZGV2ZWxvcG1lbnQuIE5hbm8tY2Fwc3VsZXMgd2VyZSBmb3VuZCB0byBiZSBtb3JlIHN0YWJsZSB0aGFuIG5hbm8tY29tcGxleGVzLCBtYWtpbmcgdGhlbSBvdXIgcHJlZmVycmVkIGZvcm11bGF0aW9uIGNob2ljZS4gV2Ugd2lsbCB1dGlsaXplIGNoaXRvc2FuIHRvIGVuaGFuY2UgbVJOQSBzdGFiaWxpdHkgZHVlIHRvIGl0cyBwb3NpdGl2ZSBjaGFyZ2UsIHdoaWxlIGNhcHNhaWNpbiB3YXMgZGVlbWVkIGlycmVsZXZhbnQgZm9yIG91ciBwdXJwb3Nlcy4gRm9yIHRyYW5zZmVjdGlvbiwgd2Ugd2lsbCB1c2UgT3B0aU1FTSBhcyB0aGUgbWVkaXVtLCByZW1vdmluZyBhbnRpYmlvdGljcyAyNCBob3VycyBwcmlvciB0byB0aGUgcHJvY2VkdXJlLiBXZSB3aWxsIGFzc2VzcyBzdGFiaWxpdHkgd2l0aCBhIFpldGFzaXplciBhbmQgZXZhbHVhdGUgY3l0b3RveGljaXR5IHVzaW5nIHRoZSBNVFQgdGVzdC4gQWRkaXRpb25hbGx5LCB3ZSBhcmUgZXhwbG9yaW5nIG5hc2FsIHNwcmF5IGFuZCBkcnkgcG93ZGVyIGZvcm11bGF0aW9ucyB0byBpbXByb3ZlIG5hbm9wYXJ0aWNsZSBkZWxpdmVyeS4gVGhlc2UgaW5zaWdodHMgd2lsbCBzaWduaWZpY2FudGx5IHNoYXBlIG91ciBhcHByb2FjaCB0byBvcHRpbWl6aW5nIG1STkEgZGVsaXZlcnkgc3lzdGVtcy5cIixcbiAgICBtb250aHM6IFwiQXVndXN0XCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiT2xpdmVyXCIsXG4gICAgbmFjaG5uYW1lOiBcIkRyXHUwMEU0Z2VyXCIsXG4gICAgam9iOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXG4gICAgYWZmaWxpYXRpb246IFwiUmVzZWFyY2ggR3JvdXAgQ2VsbHVsYXIgTmV1cm9waHlzaW9sb2d5XCIsXG4gICAgcGljdHVyZXVybDogcGljc1snZHJhZWdlciddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiTmV3IGFwcHJvYWNoZXMgaW4gZWxlY3Ryb3BoeXNpb2xvZ3kgYW5kIHRoZWlyIGFwcGxpY2F0aW9uIGluIG91ciBwcm9qZWN0ICBcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJwYXRjaGNsYW1wXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBxdW90ZTogXCJcIixcbiAgICBhaW1vZmNvbnRhY3Q6WzxwPjwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+PC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD48L3A+XSxcbiAgICBzdW1tYXJ5OiBcIlwiLFxuICAgIG1vbnRoczogXCJBdWd1c3RcIixcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiR3hQIGNvdXJzZVwiLFxuICAgIG5hY2hubmFtZTpcIlwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2d4cGNvdXJzZSddLFxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxuICAgIGhlYWRpbmc6IFwiU3VjY2Vzc2Z1bCBwYXJ0aWNpcGF0aW9uIG9mIGEgdGVhbSBtZW1iZXIgaW4gYSA1IGRheSBHeFAgY291cnNlXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiZ3hwY291cnNlXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGU6IFwiVGhlIEdYUCBjb3Vyc2Ugd2FzIGV4dHJlbWVseSB1c2VmdWwgYXMgaXQgcHJvdmlkZWQgdXMgd2l0aCBpbXBvcnRhbnQga25vd2xlZGdlIHRoYXQgc3VwcG9ydHMgb3VyIGVudGlyZSB0ZWFtIGluIGNvbXBseWluZyB3aXRoIHF1YWxpdHkgc3RhbmRhcmRzLiBUaGlzIGtub3dsZWRnZSB3aWxsIGhlbHAgdXMgdG8gb3JnYW5pc2Ugb3VyIHByb2Nlc3NlcyBlZmZpY2llbnRseSBhbmQgaW4gYWNjb3JkYW5jZSB3aXRoIHJlZ3VsYXRpb25zIGluIHRoZSBmdXR1cmUuXCIsXG4gICAgcXVvdGVWb3JuYW1lOlwiS2F5YVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6XCJMYW5nZSwgVGVhbW1lbWJlclwiLFxuICAgIHR5cGU6IFwibWV0YVwiLFxuICAgIHRleHQ6IFs8cD5JLCBLYXlhLCBUZWFtIE1lbWJlciBvZiBpR0VNIEJpZWxlZmVsZCAyMDI0LCByZWNlbnRseSBwYXJ0aWNpcGF0ZWQgaW4gYW4gaW50ZW5zaXZlIG9uZS13ZWVrIEdYUCAoR29vZCBQcmFjdGljZSkgdHJhaW5pbmcgY291cnNlLCB3aGljaCB3YXMgcGl2b3RhbCBleHBlcmllbmNlIGZvciBib3RoIG1lIGFuZCBvdXIgcHJvamVjdC4gVGhlIGNvdXJzZSBjb3ZlcmVkIGVzc2VudGlhbCByZWd1bGF0b3J5IGZyYW1ld29ya3MsIGluY2x1ZGluZzwvcD4sIFxuICAgICAgPHVsPlxuICAgICAgICA8bGk+R29vZCBMYWJvcmF0b3J5IFByYWN0aWNlIChHTFApPC9saT5cbiAgICAgICAgPGxpPkdvb2QgQ2xpbmljYWwgUHJhY3RpY2UgKEdDUCk8L2xpPlxuICAgICAgICA8bGk+R29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApPC9saT5cbiAgICAgIDwvdWw+LFxuICAgICAgPHA+XG4gICAgICB3aGljaCBhcmUgYWxsIGRlc2lnbmVkIHRvIGVuc3VyZSBxdWFsaXR5LCBzYWZldHksIGFuZCBjb21wbGlhbmNlIGFjcm9zcyBldmVyeSBwaGFzZSBvZiBzY2llbnRpZmljIHJlc2VhcmNoIGFuZCBkZXZlbG9wbWVudC4gICAgICBcbiAgICAgIEFzIHRoZSBoZWFkIG9mIEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzLCBJIGZvdW5kIHRoaXMgdHJhaW5pbmcgcGFydGljdWxhcmx5IHZhbHVhYmxlLiBJdCBwcm92aWRlZCBtZSB3aXRoIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHJpZ29yb3VzIHN0YW5kYXJkcyB0aGF0IG5lZWQgdG8gYmUgbWFpbnRhaW5lZCBpbiByZXNlYXJjaCwgZXNwZWNpYWxseSBjb25jZXJuaW5nIGV0aGljcywgZGF0YSBpbnRlZ3JpdHksIGFuZCBwYXRpZW50IHNhZmV0eS4gSSBsZWFybmVkIGhvdyB0byBwcm9wZXJseSBkb2N1bWVudCByZXNlYXJjaCBwcm9jZXNzZXMsIGVuc3VyZSB0aGUgcmVwcm9kdWNpYmlsaXR5IG9mIHJlc3VsdHMsIGFuZCBhc3Nlc3MgYW5kIG1pdGlnYXRlIHJpc2tzLCBhbGwgd2hpbGUga2VlcGluZyB0aGUgZXRoaWNhbCBjb25zaWRlcmF0aW9ucyBvZiBvdXIgcHJvamVjdCBhdCB0aGUgZm9yZWZyb250LiBcbiAgICAgIEkgaGF2ZSBhY3F1aXJlZCB0aGUgYWJpbGl0eSB0byBjcmVhdGUgc3RhbmRhcmQgb3BlcmF0aW5nIHByb2NlZHVyZXMgKFNPUHMpIHRoYXQgZ3VhcmFudGVlIHRoZSB0cmFuc3BhcmVudCBhbmQgdHJhY2VhYmxlIGRvY3VtZW50YXRpb24gb2YgZWFjaCBzdGFnZSBvZiB0aGUgcmVzZWFyY2ggcHJvY2Vzcy4gVGhpcyBub3Qgb25seSBmYWNpbGl0YXRlcyBpbnRlcm5hbCBvcmdhbmlzYXRpb24gYnV0IGlzIGFsc28gY3J1Y2lhbCBmb3Igc3Vic2VxdWVudCBhcHByb3ZhbHMgYW5kIGF1ZGl0cyBieSByZWd1bGF0b3J5IGF1dGhvcml0aWVzLiBcbiAgICAgIEl0IGlzIG9mIHBhcmFtb3VudCBpbXBvcnRhbmNlIHRvIGVuc3VyZSB0aGUgcmVwcm9kdWNpYmlsaXR5IG9mIG91ciBleHBlcmltZW50cyBieSBtYWludGFpbmluZyBhY2N1cmF0ZSBwcm90b2NvbHMgYW5kIG1ldGljdWxvdXNseSBkb2N1bWVudGluZyBhbGwgdmFyaWFibGVzLiBUaGlzIGlzIG9mIHBhcnRpY3VsYXIgaW1wb3J0YW5jZSBzaG91bGQgdGhlIGludGVudGlvbiBiZSB0byBwdXJzdWUgY2xpbmljYWwgcmVzZWFyY2ggYXQgYSBsYXRlciBzdGFnZSwgYXMgdGhlIHJlcHJvZHVjaWJpbGl0eSBvZiBleHBlcmltZW50cyBpcyBhIGNydWNpYWwgZmFjdG9yIGluIHRoZSB2YWxpZGl0eSBvZiB0aGUgcmVzdWx0cy4gXG4gICAgICBJIGFjcXVpcmVkIGtub3dsZWRnZSBvZiB0ZWNobmlxdWVzIGZvciByaXNrIGFzc2Vzc21lbnQsIGluY2x1ZGluZyBGYWlsdXJlIE1vZGUgYW5kIEVmZmVjdHMgQW5hbHlzaXMgKEZNRUEpLiBUaGlzIHByb2Nlc3MgZW5hYmxlcyB0aGUgaWRlbnRpZmljYXRpb24gb2YgcG90ZW50aWFsIHJpc2tzIGluIGEgcHJvamVjdCBhdCBhbiBlYXJseSBzdGFnZSwgdGh1cyBmYWNpbGl0YXRpbmcgdGhlIGRldmVsb3BtZW50IG9mIHN0cmF0ZWdpZXMgdG8gbWluaW1pc2UgdGhlbS4gVGhpcyBhcHByb2FjaCBhbGxvd3MgdXMgdG8gaWRlbnRpZnkgYW5kIGFkZHJlc3MgcG90ZW50aWFsIHNvdXJjZXMgb2YgZXJyb3IgYmVmb3JlIHRoZXkgbGVhZCB0byBzaWduaWZpY2FudCBpc3N1ZXMuIFxuICAgICAgVGhpcyBrbm93bGVkZ2UgaXMgY3J1Y2lhbCBhcyB3ZSB0aGluayBhYm91dCB0aGUgZnV0dXJlIG9mIG91ciBwcm9qZWN0LCBwYXJ0aWN1bGFybHkgaWYgd2UgYWltIHRvIG1vdmUgb3VyIGdlbmUgdGhlcmFweSBhcHByb2FjaCBmb3IgY3lzdGljIGZpYnJvc2lzIGNsb3NlciB0byBjbGluaWNhbCB0cmlhbHMgYW5kIHJlYWwtd29ybGQgYXBwbGljYXRpb25zLiBNeSBwYXJ0aWNpcGF0aW9uIGluIHRoZSBHWFAgdHJhaW5pbmcgaGFzIGVxdWlwcGVkIG1lIHdpdGggdGhlIG5lY2Vzc2FyeSB0b29scyB0byBwb3RlbnRpYWxseSBndWlkZSBvdXIgdGVhbSB0aHJvdWdoIHRoZSBjb21wbGV4IHJlZ3VsYXRvcnkgbGFuZHNjYXBlLCBlbnN1cmluZyBvdXIgd29yayByZW1haW5zIGFsaWduZWQgd2l0aCBpbmR1c3RyeSBzdGFuZGFyZHMgYW5kIHJlYWR5IGZvciB0aGUgbmV4dCBzdGVwcyBpbiBkZXZlbG9wbWVudC4gXG4gICAgICBPbmUgb2YgdGhlIGtleSBzcGVha2VycyBkdXJpbmcgdGhlIEdYUCBjb3Vyc2Ugd2FzICA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImd4cGV4cGVydFwiIHRleHQ9XCJEci4gTWFyY3VzIEJlcmdlclwiIC8+LCB3aG9zZSBleHBlcnRpc2Ugd2FzIGludmFsdWFibGUgdG8gbWUgYW5kIHRoZSBlbnRpcmUgdGVhbS4gQWZ0ZXIgdGhlIGNvdXJzZSwgSSBoYWQgdGhlIG9wcG9ydHVuaXR5IHRvIGFzayBEci4gQmVyZ2VyIHNvbWUgcXVlc3Rpb25zLCBmdXJ0aGVyIGRlZXBlbmluZyBteSB1bmRlcnN0YW5kaW5nIG9mIHRoZSBwcmFjdGljYWwgYXBwbGljYXRpb25zIG9mIEdYUCBpbiByZXNlYXJjaC4gVGhlIGNvbm5lY3Rpb24gd2l0aCBEci4gQmVyZ2VyIGhhcyBiZWVuIGhpZ2hseSBiZW5lZmljaWFsLCBhcyBoaXMgaW5zaWdodHMgaGVscGVkIHNoYXBlIGtleSBhc3BlY3RzIG9mIG91ciBwcm9qZWN0XHUyMDE5cyBkZXZlbG9wbWVudCBhbmQgY29tcGxpYW5jZSB3aXRoIGluZHVzdHJ5IHN0YW5kYXJkcy4gSGlzIGd1aWRhbmNlIHdpbGwgY29udGludWUgdG8gYmUgYSB2YWx1YWJsZSByZXNvdXJjZSBmb3Igb3VyIHRlYW0gbW92aW5nIGZvcndhcmQuIFxuICAgICAgVGhyb3VnaCB0aGlzIHRyYWluaW5nLCBJIGZlZWwgYmV0dGVyIHBvc2l0aW9uZWQgdG8gY29udHJpYnV0ZSB0byB0aGUgdGVhbVx1MjAxOXMgZWZmb3J0cywgZW5zdXJpbmcgb3VyIHByb2plY3QgYWRoZXJlcyB0byBnbG9iYWwgc2FmZXR5IGFuZCBldGhpY2FsIGd1aWRlbGluZXMuIFRoaXMgZXhwZXJpZW5jZSBoYXMgc3RyZW5ndGhlbmVkIG91ciBhcHByb2FjaCBhbmQgc2V0IGEgc29saWQgZm91bmRhdGlvbiBmb3IgZnV0dXJlIHByb2dyZXNzLCBlbnN1cmluZyB0aGF0IG91ciByZXNlYXJjaCwgcHVibGljIGVuZ2FnZW1lbnQsIGFuZCBwb3RlbnRpYWwgY2xpbmljYWwgYXBwbGljYXRpb25zIGNvbnRpbnVlIHRvIG1lZXQgdGhlIGhpZ2hlc3QgcmVndWxhdG9yeSBzdGFuZGFyZHMuIDwvcD5dLFxuICAgIHN1bW1hcnk6IFwiS2F5YSwgYSBtZW1iZXIgb2YgdGhlIGlHRU0gQmllbGVmZWxkIDIwMjQgdGVhbSwgY29tcGxldGVkIGFuIGludGVuc2l2ZSBvbmUtd2VlayBHWFAgKEdvb2QgUHJhY3RpY2UpIHRyYWluaW5nLCB3aGljaCBjb3ZlcmVkIEdvb2QgTGFib3JhdG9yeSBQcmFjdGljZSAoR0xQKSwgR29vZCBDbGluaWNhbCBQcmFjdGljZSAoR0NQKSwgYW5kIEdvb2QgTWFudWZhY3R1cmluZyBQcmFjdGljZSAoR01QKS4gVGhlIHRyYWluaW5nIHByb3ZpZGVkIHZhbHVhYmxlIGluc2lnaHRzIGludG8gbWFpbnRhaW5pbmcgaGlnaCBzdGFuZGFyZHMgb2YgcXVhbGl0eSwgc2FmZXR5LCBhbmQgZXRoaWNzIHRocm91Z2hvdXQgdGhlIHJlc2VhcmNoIHByb2Nlc3MuIEtheWEgbGVhcm5lZCBjcnVjaWFsIHNraWxscywgc3VjaCBhcyBkb2N1bWVudGluZyByZXNlYXJjaCBwcm9jZXNzZXMgZm9yIHJlcHJvZHVjaWJpbGl0eSwgY3JlYXRpbmcgc3RhbmRhcmQgb3BlcmF0aW5nIHByb2NlZHVyZXMgKFNPUHMpLCBhbmQgY29uZHVjdGluZyByaXNrIGFzc2Vzc21lbnRzIHVzaW5nIHRlY2huaXF1ZXMgbGlrZSBGYWlsdXJlIE1vZGUgYW5kIEVmZmVjdHMgQW5hbHlzaXMgKEZNRUEpLiBUaGlzIGtub3dsZWRnZSBpcyBlc3NlbnRpYWwgZm9yIGFkdmFuY2luZyB0aGVpciBjeXN0aWMgZmlicm9zaXMgZ2VuZSB0aGVyYXB5IHByb2plY3QgdG93YXJkIGNsaW5pY2FsIHRyaWFscyBhbmQgZW5zdXJpbmcgY29tcGxpYW5jZSB3aXRoIHJlZ3VsYXRvcnkgc3RhbmRhcmRzLiBEci4gTWFyY3VzIEJlcmdlciwgYSBrZXkgc3BlYWtlciBpbiB0aGUgY291cnNlLCBwcm92aWRlZCBhZGRpdGlvbmFsIGd1aWRhbmNlLCBvZmZlcmluZyB2YWx1YWJsZSBpbnNpZ2h0cyB0aGF0IHdpbGwgY29udGludWUgdG8gYmVuZWZpdCB0aGUgdGVhbS5cIixcbiAgICBtb250aHM6IFwiYXVndXN0XCIsXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvZ3hwL2d4cC1jb3Vyc2Uta2F5YS53ZWJwXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvZ3hwL2d4cC1jb3Vyc2UtZ3JvdXAud2VicFwiLFxuICB9LFxuICB7XG4gICAgdm9ybmFtZTogXCJDb25uZWN0IGFuZCBTaGFyZVwiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwbGFjZWhvbGRlciddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXG4gICAgaGVhZGluZzogXCJCcmFpbnN0b3JtaW5nIGFuZCBzZWxlY3Rpb24gb2YgaWRlYXMgYW5kIGNvbmNlcHRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiY29ubmVjdFwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJcIixcbiAgICBpbnNpZ2h0czogXCJcIixcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJcIixcbiAgICB0eXBlOiBcIm1ldGFcIixcbiAgICBzdW1tYXJ5OiBcIlwiLFxuICAgIG1vbnRoczogXCJhdWd1c3RcIlxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiXCIsXG4gICAgdm9ybmFtZTogXCJNaWNoYWVsXCIsXG4gICAgbmFjaG5uYW1lOiBcIkpvaGFubmZ1bmtlXCIsXG4gICAgam9iOiBcIlJlcHJlc2VudGF0aXZlIGJvZHkgZm9yIHNldmVyZWx5IGRpc2FibGVkIHBlcnNvbnNcIixcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IEJpZWxlZmVsZFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2pvaGFubmZ1bmtlJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJIeWdpZW5lIGNvbmNlcHQgZm9yIHN0dWRlbnRzIHdpdGggZGlzYWJpbGl0aWVzIGFuZCBpbW11bm9jb21wcm9taXNlZCBlbXBsb3llZXNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJqb2hhbm5mdW5rZVwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIlRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgaHlnaWVuZSBjb25jZXB0IGlzIHByb3ZpbmcgbW9yZSBkaWZmaWN1bHQgdGhhbiBleHBlY3RlZCBkdWUgdG8gdGhlIGJ1cmVhdWNyYWN5IGF0IHRoZSB1bml2ZXJzaXR5LiBOZXZlcnRoZWxlc3MsIHRoZSBpbnRlcnZpZXcgZ2F2ZSB1cyBhIGdvb2QgaW5zaWdodCBpbnRvIHRoaXMgbGFieXJpbnRoIG9mIHJlZ3VsYXRpb25zIGFuZCB3ZSBnb3Qgc3RhcnRlZCB0aGUgcHJvemVzcyBvZiBpbXBsZW1lbnRhdGlvbi5cIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiVmVyYVwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiS1x1MDBGNmhsZXIsIFRlYW1tZW1iZXJcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5XZSBjb250YWN0ZWQgdGhlIHVuaXZlcnNpdHkgYmVjYXVzZSBvZiB0aGUgdXJnZW50IG5lZWQgdG8gYWRkcmVzcyB0aGUgaXNzdWUgb2YgaHlnaWVuZSBmb3Igc3R1ZGVudHMgYW5kIHN0YWZmLCBwYXJ0aWN1bGFybHkgdGhvc2Ugd2l0aCBpbW11bm9jb21wcmlzZWQgc3R1ZGVudHMgYW5kIHN0YWZmLiBUaGVyZSB3YXMgYSBuZWVkIHRvIGRldmVsb3AgYW4gZWZmZWN0aXZlIGh5Z2llbmUgY29uY2VwdCB0byBlbnN1cmUgdGhlIGhlYWx0aCBhbmQgc2FmZXR5IG9mIHRoZXNlIHBlb3BsZS4gV2UgZGV2ZWxvcGVkIHRoaXMgY29uY2VwdCBpbiBjb2xsYWJvcmF0aW9uIHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJtYXhmaXJzdFwiIHRleHQ9XCJNYXhcIiAvPiwgb3VyIENGIGZyaWVuZC4gPC9wPl0sXG4gICAgaW5zaWdodHM6IFs8cD5XZSBsZWFybnQgdGhhdCBvdXIgaHlnaWVuZSBjb25jZXB0IGlzIHZlcnkgd2VsbC1kZXZlbG9wZWQuIEJ1dCBhbHRob3VnaCBhIHdlbGwtZGV2ZWxvcGVkIGh5Z2llbmUgY29uY2VwdCBpcyBhbHJlYWR5IGV4aXN0aW5nLCBzdHJhdGVnaWMgZGV2ZWxvcG1lbnQgYW5kIGEgc3RlcC1ieS1zdGVwIGFwcHJvYWNoIGFyZSBuZWVkZWQuIEluIHBhcnRpY3VsYXIsIHRoZSBzdGVwLWJ5LXN0ZXAgaW1wbGVtZW50YXRpb24gd2FzIGVtcGhhc2l6ZWQsIGxpa2Ugc3RhcnRpbmcgd2l0aCBlcXVpcHBpbmcgdGhlIHRvaWxldHMuIEJ1cmVhdWNyYXRpYyBodXJkbGVzLCBzdWNoIGFzIHRoZSBuZWVkIHRvIGFwcGx5IHRvIHRoZSByZWN0b3JhdGUsIHdlcmUgaWRlbnRpZmllZCBhcyBhIG1ham9yIGNoYWxsZW5nZS4gSW4gYWRkaXRpb24sIGl0IGJlY2FtZSBjbGVhciB0aGF0IHRoZXJlIGlzIGEgZ3JlYXQgbmVlZCBmb3Igc2FuaXRhcnkgZmFjaWxpdGllcyBhbmQgZmFjaWxpdGllcyBmb3IgdGhlIGRpc2FibGVkLCBlc3BlY2lhbGx5IGR1ZSB0byB0aGUgbmVlZHMgb2Ygc3R1ZGVudHMgYW5kIHN0YWZmIHdpdGggaGVhbHRoIHByb2JsZW1zLiBJbnRlcmFjdGlvbiBhbmQgbmV0d29ya2luZyB3aXRoIG90aGVyIHVuaXZlcnNpdGllcyB3YXMgYWxzbyBjb25zaWRlcmVkIHZhbHVhYmxlLiA8L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPlRoZSBuZXh0IHBoYXNlIG9mIGRldmVsb3BpbmcgYSBuZXcgaHlnaWVuZSBjb25jZXB0IGlzIHRvIG1haW50YWluIGNvbnRhY3Qgd2l0aCBNci4gSm9oYW5uZnVua2UgaW4gb3JkZXIgdG8gY29udGludWUgdG8gYWR2YW5jZSB0aGUgaHlnaWVuZSBjb25jZXB0IGluIGNvbGxhYm9yYXRpb24uIFRoZSBzdHJhdGVnaWMgYXBwcm9hY2ggZW50YWlscyB0aGUgaW5jcmVtZW50YWwgaW1wbGVtZW50YXRpb24gb2YgbWVhc3VyZXMsIGV4ZW1wbGlmaWVkIGJ5IHRoZSBlc3RhYmxpc2htZW50IG9mIHRoZSBpbmF1Z3VyYWwgdG9pbGV0IGZhY2lsaXR5IHdpdGhpbiB0aGUgbWFpbiBidWlsZGluZy4gSXQgaXMgb2YgdGhlIHV0bW9zdCBpbXBvcnRhbmNlIHRvIGVuc3VyZSB0aGUgdW5pbnRlcnJ1cHRlZCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgaHlnaWVuZSBjb25jZXB0LiBJbiBvcmRlciB0byBhY2hpZXZlIHRoaXMsIGl0IGlzIGVzc2VudGlhbCB0byBkcmF3IHVwb24gdGhlIGV4aXN0aW5nIHBsYW5zIGFuZCBtZWFzdXJlcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGltcGxlbWVudGVkIGluIG5ldyBidWlsZGluZ3MuICBXZSBhcmUgd29ya2luZyBvbiBhZHZhbmNpbmcgdGhlIHBsYW5zIGF0IGEgaGlnaGVyIGxldmVsIGFuZCBhcmUgaW4gcmVndWxhciBkaWFsb2d1ZSB3aXRoIHRoZSBDZW50cmFsIGNvbnRhY3QgcG9pbnQgQmFycmllci1mcmVlIGluIG9yZGVyIHRvIG92ZXJjb21lIGJ1cmVhdWNyYXRpYyBodXJkbGVzIGFuZCBhY3RpdmVseSBwcm9tb3RlIHRoZSB0b3BpYy4gRnVydGhlcm1vcmUsIGl0IGlzIG5lY2Vzc2FyeSB0byBpbnRlbnNpZnkgbG9iYnlpbmcgd29yayBpbiBvcmRlciB0byBnYWluIGdyZWF0ZXIgc3VwcG9ydCBmb3IgdGhpcyBpc3N1ZSBhdCBib3RoIHRoZSB1bml2ZXJzaXR5IGFuZCBwb2xpdGljYWwgbGV2ZWxzLiA8L3A+XSxcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIGludGVydmlldzogPD5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgdGhpbmsgb2Ygb3VyIGh5Z2llbmUgY29uY2VwdCBhbmQgb3VyIHBsYW4/XCIgYT1cIlRoaXMgaXMgYSB2ZXJ5IGFjdXRlIHByb2JsZW0uIEl0IHBhcnRpY3VsYXJseSBhZmZlY3RzIHN0dWRlbnRzIHdpdGggZGlzYWJpbGl0aWVzIGFuZCBpbW11bmUtY29tcHJvbWlzZWQgc3RhZmYsIHN1Y2ggYXMgdGhvc2Ugd2l0aCBjYW5jZXIgb3IgY3lzdGljIGZpYnJvc2lzLCB3aG8gYXJlIGZvcmNlZCB0byB3b3JrIGZyb20gaG9tZS4gVGhlIHByb2JsZW0gaXM6IEVtcGxveWVlcyBjYW4gd29yayBmcm9tIGhvbWUsIGJ1dCBzdHVkZW50cyBjYW5ub3QuIFRoZXJlIGlzIGEgZ3JlYXQgbmVlZCBmb3IgaHlnaWVuZSBtZWFzdXJlcywgYXMgY29udGFjdCBtdXN0IGJlIGF2b2lkZWQgdG8gbWluaW1pc2UgdGhlIHJpc2sgb2YgaW5mZWN0aW9uLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHRoZSBjaGFsbGVuZ2VzIGluIGltcGxlbWVudGluZyB0aGUgaHlnaWVuZSBjb25jZXB0P1wiIGE9XCJUaGVyZSBpcyBhIGxhY2sgb2Ygc3RyYXRlZ2ljIGRldmVsb3BtZW50LCBhbHRob3VnaCB5b3VyIGh5Z2llbmUgY29uY2VwdCBpcyB3ZWxsIGRldmVsb3BlZC4gSXQgaXMgbmVjZXNzYXJ5IHRvIHByb2NlZWQgaW4gc21hbGwgc3RlcHMsIGUuZy4gc3RhcnRpbmcgd2l0aCBhIHRvaWxldCBpbiB0aGUgbWFpbiBidWlsZGluZy4gSG93ZXZlciwgYnVyZWF1Y3JhY3kgaXMgYSBtYWpvciBvYnN0YWNsZS4gVG8gYmUgaW1wbGVtZW50ZWQsIGFuIGFwcGxpY2F0aW9uIGhhcyB0byBiZSBzdWJtaXR0ZWQgdG8gdGhlIHJlY3RvcmF0ZSwgYW5kIHRoZXNlIHByb2Nlc3NlcyBhcmUgb2Z0ZW4gbGVuZ3RoeSBhbmQgY29tcGxpY2F0ZWQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBpcyB0aGUgY3VycmVudCBzaXR1YXRpb24gYXQgb3VyIHVuaXZlcnNpdHk/XCIgYT1cIldoaWxlIHNvbWUgcHJvZ3Jlc3MgaGFzIGJlZW4gbWFkZSB3aXRoIHRoZSBpbnN0YWxsYXRpb24gb2YgYWRkaXRpb25hbCB0b2lsZXRzIGFuZCBkaXNhYmxlZC1mcmllbmRseSB0b2lsZXRzIGluIG5ldyBidWlsZGluZ3MsIHRoZXJlIGlzIGFzIHlldCBubyBvdmVyYXJjaGluZyBzdHJhdGVneSBpbiBwbGFjZSB0byBndWlkZSBmdXR1cmUgZGV2ZWxvcG1lbnRzLiBGdXJ0aGVybW9yZSwgdGhlIGxhY2sgb2YgY2xhcml0eSByZWdhcmRpbmcgdGhlIG1pc3Npb24gc3RhdGVtZW50IGFuZCBvYmplY3RpdmVzIGxlYXZlcyByb29tIGZvciBhbWJpZ3VpdHkuIFRoZSBkdXR5IG9mIGNhcmUgdGhhdCBlbXBsb3llcnMgaGF2ZSB0b3dhcmRzIGVtcGxveWVlcyBpcyBlc3RhYmxpc2hlZCwgeWV0IHRoZSBzaXR1YXRpb24gaXMgcmVndWxhdGVkIGRpZmZlcmVudGx5IHdpdGggcmVnYXJkcyB0byBzdHVkZW50cy4gVGhlIHBvc3NpYmlsaXR5IG9mIHJlY2VpdmluZyBjb21wZW5zYXRpb24gZm9yIGRpc2FkdmFudGFnZXMgaXMgb3BlbiwgYnV0IGlzIGZyZXF1ZW50bHkgc2VlbiBhcyBpbmFkZXF1YXRlLlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHRoZSBuZXh0IHN0ZXBzIGluIGltcGxlbWVudGluZyB0aGUgaHlnaWVuZSBjb25jZXB0P1wiIGE9XCJJdCBpcyBlc3NlbnRpYWwgdGhhdCB0aGUgY29uY2VwdCBiZSBpbXBsZW1lbnRlZCBpbiBzbWFsbCwgc3RyYXRlZ2ljIHN0ZXBzLiBBdCB0aGUgc2FtZSB0aW1lLCBpdCBpcyB2aXRhbCB0aGF0IHRoZSByZWN0b3JhdGUgYW5kIG90aGVyIGRlY2lzaW9uLW1ha2VycyBiZSBjb25zdWx0ZWQgb24gYSByZWd1bGFyIGJhc2lzIHRvIGVuc3VyZSB0aGF0IHRoaXMgbWF0dGVyIHJlbWFpbnMgYXQgdGhlIGZvcmVmcm9udCBvZiBkaXNjdXNzaW9ucy4gRnVydGhlcm1vcmUsIGl0IGlzIG9mIGdyZWF0IGltcG9ydGFuY2UgdG8gZW5nYWdlIGluIHBvbGl0aWNhbCBsb2JieWluZyB0byBzZWN1cmUgYWRkaXRpb25hbCBzdXBwb3J0IGZvciB0aGlzIGlzc3VlLlwiIC8+XG4gICAgPC8+LFxuICAgIHN1bW1hcnk6IFwiV2UgZ290IGluIHRvdWNoIGJlY2F1c2UgdGhlcmUgd2FzIGFuIGFjdXRlIGh5Z2llbmUgcHJvYmxlbSBmb3IgcGFydGljdWxhcmx5IHZ1bG5lcmFibGUgZ3JvdXBzIGxpa2UgaW1tdW5vY29tcHJpc2VkIHBlcnNvbnMgYXQgdGhlIHVuaXZlcnNpdHkuIFdlIGxlYXJudCBmcm9tIHRoZSBleGNoYW5nZSB0aGF0IGRlc3BpdGUgYSB3ZWxsLWRldmVsb3BlZCBoeWdpZW5lIHBvbGljeSwgc3RyYXRlZ2ljIHN0ZXBzIGFyZSBzdGlsbCBuZWVkZWQsIGVzcGVjaWFsbHkgdG8gb3ZlcmNvbWUgYnVyZWF1Y3JhdGljIGh1cmRsZXMuIFdlIGhhdmUgaW50ZWdyYXRlZCB0aGVzZSBsZXNzb25zIGludG8gb3VyIHByb2plY3QgYnkgZm9jdXNpbmcgb24gY29udGludW91cyBjb2xsYWJvcmF0aW9uIHdpdGggdGhlIENlbnRyYWwgY29udGFjdCBwb2ludCBCYXJyaWVyLWZyZWUgYW5kIG90aGVyIGRlY2lzaW9uLW1ha2Vycy5cIixcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIkRyLlwiLFxuICAgIHZvcm5hbWU6IFwiU3JpcmFtXCIsXG4gICAgbmFjaG5uYW1lOiBcIlZhaWR5YW5hdGhhbiBcIixcbiAgICBqb2I6IFwiUHJpbmNpcGxlIGludmVzdGlnYXRvciBhdCBOYXRpb253aWRlIENoaWxkcmVuXHUyMDE5cyBIb3NwaXRhbCBhbmQgYXNzaXN0YW50IHByb2Zlc3NvciBQZWRpYXRyaWNcdTIwMTlzIGF0IHRoZSBPaGlvIFN0YXRlIFVuaXZlcnNpdHkgQ29sbGVnZSBvZiBNZWRpY2luZSBcIixcbiAgICBhZmZpbGlhdGlvbjogXCJOYXRpb253aWRlIENoaWxkcmVuXHUyMDE5cyBIb3NwaXRhbFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3NyaXJhbSddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiRjUwOGRlbCBtdXRhdGlvbiBjb25maXJtZWQgYXMgdGhlIG1vc3QgY29tbW9uIENGVFIgbXV0YXRpb24gd29ybGR3aWRlLCBpbmNsdWRpbmcgQXNpYVwiLFxuICAgIGludGVydmlld3RhYmlkOiBcInNyaXJhbVwiLFxuICAgIGxhbmd1YWdlOiBcImVuXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJWYWlkeWFuYXRoYW4sIElubm92YXRpdmUgbGVhZGVyIGluIHBlZGlhdHJpYyByZXNlYXJjaFwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJEci4gU3JpcmFtXCIsXG4gICAgcXVvdGU6IFwiSSB0aGluayB5b3UncmUgdGhpbmtpbmcgYWJvdXQgaXQgdGhlIHJpZ2h0IHdheS5bLi4uXSBJIHdvdWxkIGhhdmUgdGFsa2VkIHRvIGFsbCBvZiB0aGUgZXhhY3QgcGVvcGxlIHRoYXQgeW91IGhhdmUgYWxyZWFkeSBzcG9rZW4gd2l0aC5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgb2JqZWN0aXZlIG9mIHRoaXMgY29udGFjdCB3YXMgdG8gZ2F0aGVyIGZ1cnRoZXIgaW5mb3JtYXRpb24gYWJvdXQgY3lzdGljIGZpYnJvc2lzIChDRikgaW4gQXNpYSwgd2l0aCBhIHBhcnRpY3VsYXIgZm9jdXMgb24gdW5kZXJzdGFuZGluZyBwb3RlbnRpYWwgZGF0YSBiaWFzZXMsIGlkZW50aWZ5aW5nIGNvbW1vbiBtdXRhdGlvbnMsIGV4cGxvcmluZyB0aGUgYXZhaWxhYmxlIG1lZGljYXRpb25zLCBhbmQgYXNzZXNzaW5nIHRoZSBkaWFnbm9zdGljIHByYWN0aWNlcyBpbiB0aGUgcmVnaW9uLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlRoZSB0YWxrIHdpdGggU3JpcmFtIHJldmVhbGVkIHRoYXQsIGFsdGhvdWdoIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGlzIHJlbGF0aXZlbHkgdW5jb21tb24gaW4gQXNpYSBjb21wYXJlZCB0byBvdGhlciBkaXNlYXNlIGxpa2Ugc2lja2xlIGNlbGwgZGlzZWFzZSwgaXQgbmV2ZXJ0aGVsZXNzIGV4aGliaXRzIGNvbnNpZGVyYWJsZSBnZW5ldGljIGRpdmVyc2l0eS4gVGhlIGlkZW50aWZpY2F0aW9uIG9mIGRpZmZlcmVudCBtdXRhdGlvbnMgaW4gdGhlIENGVFIgZ2VuZSBhY3Jvc3MgdGhlIHJlZ2lvbiBoYXMgcmV2ZWFsZWQgdGhhdCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpcyB0aGUgbW9zdCBjb21tb24sIGEgZmluZGluZyB0aGF0IGFsaWducyB3aXRoIGdsb2JhbCBwYXR0ZXJucy4gSG93ZXZlciwgaW4gQXNpYW4gcG9wdWxhdGlvbnMsIG90aGVyIHJhcmUgbXV0YXRpb25zIGFyZSBhbHNvIHByZXZhbGVudCwgd2hpY2ggcHJlc2VudHMgdW5pcXVlIGNoYWxsZW5nZXMgaW4gZGlhZ25vc2lzIGFuZCB0cmVhdG1lbnQuXG4gICAgICBBZGRpdGlvbmFsbHksIGl0IHdhcyBmb3VuZCB0aGF0IGVudmlyb25tZW50YWwgZmFjdG9ycywgc3VjaCBhcyBhaXIgcG9sbHV0aW9uLCBzZXJ2ZSB0byBleGFjZXJiYXRlIHRoZSBzeW1wdG9tcyBvZiBDRiwgcGFydGljdWxhcmx5IGluIGRlbnNlbHkgcG9wdWxhdGVkIHJlZ2lvbnMsIHRoZXJlYnkgZnVydGhlciBjb21wbGljYXRpbmcgdGhlIG1hbmFnZW1lbnQgb2YgdGhlIGRpc2Vhc2UuIFRoaXMgZW1waGFzaXNlcyB0aGUgbmVjZXNzaXR5IGZvciBmdXJ0aGVyIHJlc2VhcmNoIG9uIENGIHRoYXQgaXMgc3BlY2lmaWNhbGx5IHRhaWxvcmVkIHRvIHRoZSBuZWVkcyBvZiBkaWZmZXJlbnQgcmVnaW9ucywgaW5jbHVkaW5nIGltcHJvdmVtZW50cyBpbiBkaWFnbm9zdGljIHRlY2huaXF1ZXMgYW5kIHRoZSBkZXZlbG9wbWVudCBvZiB0cmVhdG1lbnRzIHRoYXQgYXJlIG1vcmUgY2xvc2VseSBhbGlnbmVkIHdpdGggdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgcG9wdWxhdGlvbnMgaW4gcXVlc3Rpb24uIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlIGRhdGEgd2VyZSBpbmNvcnBvcmF0ZWQgYnkgY29uZmlybWluZyB0aGF0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGlzIG5vdCBvbmx5IHRoZSBtb3N0IGNvbW1vbiBpbiBFdXJvcGUgYnV0IGFsc28gZ2xvYmFsbHksIGluY2x1ZGluZyBpbiBBc2lhLCBoaWdobGlnaHRpbmcgYSBicm9hZGVyIHBlcnNwZWN0aXZlIGFuZCBjb250cmlidXRpbmcgdG8gYSBzaWduaWZpY2FudCBob3Jpem9uIGV4cGFuc2lvbiBpbiB1bmRlcnN0YW5kaW5nIHRoZSBtdXRhdGlvbidzIHdvcmxkd2lkZSBwcmV2YWxlbmNlLiBUaGlzIGZpbmRpbmcgbGVuZHMgc3VwcG9ydCB0byB0aGUgaWRlYSB0aGF0IGV4aXN0aW5nIHRoZXJhcGllcyB0YXJnZXRpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24gd2lsbCBiZSBlZmZlY3RpdmUgZm9yIG1hbnkgcGF0aWVudHMgd29ybGR3aWRlLCB0aGVyZWJ5IHByb3ZpZGluZyBhIHNvbGlkIGZvdW5kYXRpb24gZm9yIHRyZWF0bWVudC4gQXMgYSBzdGFydGluZyBwb2ludCwgdGhpcyBpcyBwcm9taXNpbmcsIGJ1dCBmdXR1cmUgZWZmb3J0cyB3aWxsIGZvY3VzIG9uIGFkYXB0aW5nIHRoZXJhcGllcyB0byBhZGRyZXNzIG90aGVyLCByYXJlciBtdXRhdGlvbnMgZm91bmQgaW4gc3BlY2lmaWMgcG9wdWxhdGlvbnMuXG4gICAgPC9wPl0sXG4gICAgc3VtbWFyeTogXCJUaGUgY29udGFjdCBwcm92aWRlZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGluIEFzaWEgYW5kIGNvbmZpcm1lZCB0aGF0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGlzIHRoZSBtb3N0IGNvbW1vbiwgYXMgaXQgaXMgZ2xvYmFsbHkuIEhvd2V2ZXIsIHRoZSBnZW5ldGljIGRpdmVyc2l0eSBvYnNlcnZlZCBpbiBBc2lhLCB0b2dldGhlciB3aXRoIHRoZSBleGFjZXJiYXRpb24gb2Ygc3ltcHRvbXMgYnkgZW52aXJvbm1lbnRhbCBmYWN0b3JzIHN1Y2ggYXMgYWlyIHBvbGx1dGlvbiwgaGlnaGxpZ2h0cyB0aGUgbmVlZCBmb3IgbW9yZSByZWdpb24tc3BlY2lmaWMgcmVzZWFyY2guIEZ1dHVyZSBlZmZvcnRzIHdpbGwgZm9jdXMgb24gcmVmaW5pbmcgdHJlYXRtZW50cyBmb3IgcmFyZXIgbXV0YXRpb25zIGFuZCBpbXByb3ZpbmcgZGlhZ25vc3RpYyBhY2N1cmFjeSBpbiBBc2lhbiBwb3B1bGF0aW9ucy5cIixcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCIsXG4gICAgaW50ZXJ2aWV3Ojw+XG4gICAgPFFhQm94IHE9XCJTaG91bGQgd2UgZXhwbGFpbiBvdXIgcHJvamVjdCBhIGxpdHRsZSBiaXQgaW4gdGhlIGJlZ2lubmluZz9cIiBhPVwiVGhhdCB3b3VsZCBiZSBncmVhdC5cIi8+XG4gICAgPFFhQm94IHE9XCJPa2F5LiBBcyBJIHdyb3RlIHRvIHlvdSBpbiB0aGUgZW1haWwsIHdlIGFyZSBwYXJ0IG9mIHRoZSBCaWVsZWZlbGQtQ2VCaVRlYyBpdGVtIHRlYW0gaW4gR2VybWFueSB0aGlzIHllYXIsIGFuZCB3ZSBoYXZlIGEgcHJvamVjdCBjYWxsZWQgUHJlY3lzZSwgd2hlcmUgd2Ugd2FudCB0byBkZXZlbG9wIGEgcGxhdGZvcm0gZm9yIG5leHQtZ2VuZXJhdGlvbiBwcmltZSBlZGl0aW5nLiBXaXRoIHRoYXQsIHdlIGFpbSB0byB0YWNrbGUgQ0YgbXV0YXRpb25zLCBzdGFydGluZyB3aXRoIHRoZSBGNTA4ZGVsIG11dGF0aW9uLiBUaGUgY29tcGxleCBzaG91bGQgYmUgYWRhcHRhYmxlIGZvciBkaWZmZXJlbnQgbXV0YXRpb25zIHdpdGggbWlub3IgY2hhbmdlcy4gRXNzZW50aWFsbHksIHdlIHdhbnQgdG8gb3BlcmF0ZSBsaWtlIENhcy1iYXNlZCBwcm9qZWN0cyB1c2luZyBwcmltZSBlZGl0aW5nIHRvb2xzIGJ1dCBtYXkgdHJhbnNpdGlvbiB0byB1c2luZyBhIGZhbnpvciBuaWNrYXNlIGluIHRoZSBmdXR1cmUuIEN1cnJlbnRseSwgd2UgYXJlIHdvcmtpbmcgb24gYSBkZWxpdmVyeSBzeXN0ZW0gdXRpbGl6aW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdG8gdHJhbnNwb3J0IG91ciBjb21wbGV4IGludG8gdGhlIGx1bmdzLiBUaGVzZSBuYW5vcGFydGljbGVzIHdpbGwgYmUgbG9hZGVkIHdpdGggbVJOQSBhbmQgZGVzaWduZWQgZm9yIGluaGFsYXRpb24sIHNpbWlsYXIgdG8gaG93IGFzdGhtYSBtZWRpY2F0aW9ucyBhcmUgZGVsaXZlcmVkLiBPdXIgZ29hbCBpcyB0byBhZHZhbmNlIHBlcnNvbmFsaXplZCBtZWRpY2luZSBhbmQgaW1wcm92ZSB0aGUgc3RhbmRhcmQgb2YgbGl2aW5nIGZvciB0aG9zZSBhZmZlY3RlZCBieSB0aGUgZGlzZWFzZSwgZXNwZWNpYWxseSBzaW5jZSBhIGZyaWVuZCBvZiBvbmUgb2Ygb3VyIHRlYW0gbWVtYmVycyBoYXMgY3lzdGljIGZpYnJvc2lzIGFuZCBzaGFyZXMgaW5zaWdodHMgb24gdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgdGhvc2Ugd2l0aCB0aGUgY29uZGl0aW9uLlwiIGE9XCJUaGF0J3MgYSB2ZXJ5IG5pY2Ugc3VtbWFyeS4gSSBoYXZlIGEgY291cGxlIG9mIGNsYXJpZnlpbmcgcXVlc3Rpb25zLiBBcmUgeW91IHVuZGVyZ3JhZHVhdGVzP1wiIC8+XG4gICAgPFFhQm94IHE9XCJObywgd2UgYXJlIG92ZXJncmFkdWF0ZXMgYXQgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkLlwiIGE9XCJPaCwgZ3JlYXQhIFNvLCBob3cgYXJlIHlvdSBvcHRpbWl6aW5nIHByaW1lIGVkaXRpbmcsIGFuZCB3aG8gaXMgaGVscGluZyB5b3Ugd2l0aCB0aGlzIHByb2Nlc3M/XCIgLz5cbiAgICA8UWFCb3ggcT1cIldlIHRyaWVkIHRvIHJlYWNoIG91dCB0byBEci4gTGl1LCBidXQgaGUgaGFzbid0IHJlc3BvbmRlZCB5ZXQuXCIgYT1cIllvdSBzaG91bGQgYWxzbyBjb250YWN0IE1hcmlhbm5lIENhcmxvbiBpbiBMZXV2ZW4sIEJlbGdpdW0uIFRoZXkgZGlkbid0IHdvcmsgb24gRGVsdGEgRjUwOCwgYnV0IE1hdHRpanMgaXMgYSBncmFkdWF0ZSBzdHVkZW50IHRoZXJlIGFuZCBjb3VsZCBiZSBoZWxwZnVsLlwiIC8+XG4gICAgPFFhQm94IHE9XCJXZVx1MjAxOXZlIGFscmVhZHkgYmVlbiBpbiB0b3VjaCB3aXRoIE1hdHRpanM7IGhlXHUyMDE5cyBiZWVuIHZlcnkgbmljZS5cIiBhPVwiUGVyZmVjdCEgWW91J3JlIHJlYWNoaW5nIG91dCB0byB0aGUgcmlnaHQgcGVvcGxlLiBBcmUgeW91IGF3YXJlIG9mIHRoZSBMaXUgbGFiJ3MgTmF0dXJlIEJpb21lZGljYWwgRW5naW5lZXJpbmcgcGFwZXIgdGhhdCBvcHRpbWl6ZXMgcHJpbWUgZWRpdGluZz9cIiAvPlxuICAgIDxRYUJveCBxPVwiWWVzLCB3ZSBhcmUgYXdhcmUgb2YgaXQuXCIgYT1cIkdyZWF0ISBIb3cgY2FuIEkgaGVscCB5b3UgZnVydGhlcj9cIiAvPlxuICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBzb21lIHF1ZXN0aW9ucyBhYm91dCBjeXN0aWMgZmlicm9zaXMgKENGKSBpbiBBc2lhLCBzcGVjaWZpY2FsbHkgYWJvdXQgaXRzIHBlcmNlaXZlZCByYXJpdHkgYW5kIGl0cyBpbXBhY3Qgb24gZGlhZ25vc2lzIGFuZCByZXNlYXJjaCBlZmZvcnRzLlwiIGE9XCJJIGNhbiBzaGFyZSBzb21lIGluc2lnaHRzLiBXaGlsZSBDRiBpcyBvZnRlbiBjb25zaWRlcmVkIHJhcmUgaW4gQXNpYSwgaXQncyBlc3NlbnRpYWwgdG8gcmVjb2duaXplIHRoYXQgaXQgYWZmZWN0cyB2YXJpb3VzIHBvcHVsYXRpb25zLiBJbiBteSBsYWIsIHdlIGFuYWx5emUgQ0YtY2F1c2luZyBtdXRhdGlvbnMgYWNyb3NzIGRpZmZlcmVudCBwb3B1bGF0aW9ucyB1c2luZyBkYXRhIGZyb20gTm9tYWQsIHdoaWNoIGZvY3VzZXMgb24gZ2VuZXRpYyBhbmNlc3RyeSByYXRoZXIgdGhhbiBzZWxmLWlkZW50aWZpZWQgcmFjZS4gQ0YgaXMgbW9zdCBwcmV2YWxlbnQgaW4gaW5kaXZpZHVhbHMgb2YgRXVyb3BlYW4gb3JpZ2luLCBidXQgaXQgcmVtYWlucyBjb21tb24gYWNyb3NzIG1hbnkgcG9wdWxhdGlvbnMgd29ybGR3aWRlLCBwYXJ0aWN1bGFybHkgaW4gU291dGggQXNpYSBhbmQgb3RoZXIgcmVnaW9ucywgYWx0aG91Z2ggRWFzdCBBc2lhIGhhcyBsb3dlciBwcmV2YWxlbmNlIHJhdGVzLlwiIC8+XG4gICAgPFFhQm94IHE9XCJUaGF0XHUyMDE5cyBoZWxwZnVsLiBDYW4geW91IGV4cGxhaW4gaG93IHRoZSBwZXJjZWl2ZWQgcmFyaXR5IG9mIENGIGltcGFjdHMgZGlhZ25vc2lzIGFuZCByZXNlYXJjaCBpbiBBc2lhP1wiIGE9XCJUaGUgcGVyY2VwdGlvbiBvZiBDRiBhcyBhICd3aGl0ZSBwZW9wbGUgZGlzZWFzZScgbGVhZHMgdG8gdW5kZXJkaWFnbm9zaXMgYW5kIGZld2VyIHJlc2VhcmNoIGVmZm9ydHMgaW4gQXNpYW4gcG9wdWxhdGlvbnMuIEZvciBpbnN0YW5jZSwgaW4gSW5kaWEsIHBoeXNpY2lhbnMgYXJlIG1vcmUgZmFtaWxpYXIgd2l0aCBjb25kaXRpb25zIGxpa2Ugc2lja2xlIGNlbGwgZGlzZWFzZSBhbmQgdGhhbGFzc2VtaWEsIGxlYWRpbmcgdG8gbGltaXRlZCBhd2FyZW5lc3Mgb2YgQ0YuIEVhcmx5IGRpYWdub3NpcyBpcyBjaGFsbGVuZ2luZyBkdWUgdG8gdGhlIGxhY2sgb2Ygc2NyZWVuaW5nIHByb2dyYW1zIGZvciBDRiwgYW5kIGN1cnJlbnRseSwgbWFueSByZWdpb25zIGFyZSBvbmx5IGJlZ2lubmluZyB0byBpbXBsZW1lbnQgc3dlYXQgY2hsb3JpZGUgdGVzdGluZy5cIiAvPlxuICAgIDxRYUJveCBxPVwiVGhhbmsgeW91ISBXaGF0IG11dGF0aW9ucyBhcmUgbW9yZSBjb21tb24gaW4gQXNpYT9cIiBhPVwiRGVsdGEgRjUwOCBpcyBzdGlsbCB0aGUgbW9zdCBmcmVxdWVudCB2YXJpYW50IGFjcm9zcyBkaWZmZXJlbnQgcG9wdWxhdGlvbnMsIGJ1dCBpdHMgZnJlcXVlbmN5IGRlY3JlYXNlcyBpbiBub24tRXVyb3BlYW4gZ3JvdXBzLiBXaGlsZSB0aGVyZSBhcmUgc2V2ZXJhbCBvdGhlciBjb21tb24gdmFyaWFudHMsIHRoZXkgZG8gbm90IHJlc3BvbmQgdG8gbW9kdWxhdG9yIHRoZXJhcGV1dGljcywgd2hpY2ggY29tcGxpY2F0ZXMgdHJlYXRtZW50IG9wdGlvbnMuIEZvY3VzaW5nIG9uIERlbHRhIEY1MDggaXMgc2Vuc2libGUsIGJ1dCB5b3UgbWlnaHQgZmFjZSBjaGFsbGVuZ2VzIGluIGZpbmRpbmcgaW5kaXZpZHVhbHMgd2l0aCBvdGhlciB2YXJpYW50cyBkdWUgdG8gdGhlIGxpbWl0ZWQgYXdhcmVuZXNzIGFuZCBzY3JlZW5pbmcgZm9yIENGIGluIHRob3NlIHBvcHVsYXRpb25zLlwiIC8+XG4gICAgPFFhQm94IHE9XCJPa2F5LiBCdXQgeW91IHdvdWxkIHNheSB0aGF0IHRoZSBvdGhlciBtdXRhdGlvbnMgYXJlIGEgYml0IHVuZGVyLXJlc2VhcmNoZWQsIHJpZ2h0P1wiIGE9XCJUaGV5IGFyZSBjb21wbGV0ZWx5IHVuZGVyLXJlc2VhcmNoZWQsIHJpZ2h0PyBMaWtlIEkgaGF2ZSBub3Qgc2VlbiBhbnlib2R5IHdvcmsgb24gTDIxOFguIEkgZGlkbid0IGV2ZW4ga25vdyBMMjE4WCBleGlzdGVkIHVudGlsIEkgc3RhcnRlZCBsb29raW5nIGludG8gdGhhdCBncm91cC4gQW5kIGl0IHNlZW1zIGxpa2UgTDIxOFgsIEkndmUgbm90IHNlZW4gaXQgaW4gYW55IG90aGVyIHBvcHVsYXRpb24gdGhhdCBmcmVxdWVudGx5LiBTbyBhIGxvdCBvZiB0aGVzZSB2YXJpYW50cyBzZWVtIHRvIGJlIHVuaXF1ZS4gSSBkb24ndCBrbm93IGlmIHRoZXkncmUgY29tcGxldGVseSB1bmlxdWUgdG8gU291dGggQXNpYW5zIG9yIGlmIHlvdSBnbyB0byBJcmFuIG9yIHNvbWV0aGluZywgd2hldGhlciB5b3UncmUgZ29pbmcgdG8gc3RhcnQgZmluZGluZyB0aGVzZSBwZW9wbGUgb3Igd2hldGhlciBpZiB5b3UgZ28gdG8gU291dGhlYXN0IEFzaWEsIHRoZW4geW91J3JlIGdvaW5nIHRvIHN0YXJ0IGZpbmRpbmcgc29tZSBvZiB0aGVzZSBwZW9wbGUsIHJpZ2h0PyBTbyB3ZSBkb24ndCBrbm93IHRoYXQsIGJ1dCBJIHRoaW5rIGl0IHdpbGwgYmUgcmVhbGx5IGhhcmQgZm9yIHlvdSB0byBmaW5kIGNlbGxzIHdpdGggdGhlc2UgdmFyaWFudHMuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgYmVsaWV2ZSwgd2hhdCBzdGVwcyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHkgdG8gZW5zdXJlIGJldHRlciByZXByZXNlbnRhdGlvbiBvZiBBc2lhbiBwb3B1bGF0aW9ucywgb3IgaW4gZ2VuZXJhbCwgbm90IG9ubHkgV2VzdGVybiBwb3B1bGF0aW9ucywgaW4gdGhlIGdlbmV0aWMgc3R1ZGllcyBmb3IgY3lzdGljIGZpYnJvc2lzP1wiIGE9XCJBaCwgaXQncyBhIHZlcnkgZ29vZCBxdWVzdGlvbjsgaXQncyBhbHNvIGEgcXVlc3Rpb24gdGhhdCBkb2Vzbid0IGhhdmUgYSB2ZXJ5IHN0cmFpZ2h0Zm9yd2FyZCBhbnN3ZXIsIHJpZ2h0PyBJbiB0aGUgc2Vuc2UgdGhhdCBvbmUsIHlvdSBrbm93LCB5b3UgaGF2ZSB0byByYWlzZSBhd2FyZW5lc3MgYW5kIGVuc3VyZSB0aGF0IHBlb3BsZSBhcmUgZ2V0dGluZyBkaWFnbm9zZWQsIHRoYXQncyBzdGVwIG51bWJlciBvbmUsIHJpZ2h0LiBBIGxvdCBvZiB0aGUgbnVtYmVycyB0aGV5IHNob3dlZCB5b3UgYXJlIGJhc2VkIG9uIHByZWRpY3Rpb247IHRoZXkncmUgbm90IGJhc2VkIG9uIGEgcmVnaXN0cnkgaW4gYW55IGNvdW50cnkgd2l0aCBzb21lIG9mIHRoZXNlIHBvcHVsYXRpb25zLCByaWdodC4gSW5kaWEgZG9lc24ndCBoYXZlIGEgcmVnaXN0cnksIENoaW5hIGRvZXNuJ3QgaGF2ZSBhIHJlZ2lzdHJ5LiBUaGVyZSBhcmUgZWZmb3J0cyB0byBtYWtlIGEgcmVnaXN0cnksIGJ1dCB5b3Uga25vdyBpdCdzIGEgbGl0dGxlIGhhcmQgdG8gZ2V0IHN0YXJ0ZWQgd2hlbiB5b3Uga25vdyBpZiB5b3UgZ28gYW5kIGFyZ3VlIHRoYXQgdGhlcmUgYXJlIDYsMDAwIGNoaWxkcmVuIHdpdGggQ0YgdGhhdCBhcmUgYmVpbmcgYm9ybiBpbiBhIHllYXIgaW4gSW5kaWEsIGFuZCB0aGVuIHRoZSByZXNwb25zZSB0aGF0IEkndmUgcmVjZWl2ZWQgYmVmb3JlIGlzIHdlbGwsIHRoZXJlIGFyZSBhYm91dCA2MCwwMDAga2lkcyBkeWluZyBvZiBkaWFycmhlYSwgYW5kIHlvdSBrbm93IHNvIHRoZSBwcmlvcml0eSBmcm9tIHB1YmxpYyBoZWFsdGggaXMgb2Z0ZW4gZGlmZmVyZW50LiBJdCdzIHN0YXJ0aW5nIHRvIGNoYW5nZS4gU28gb25lIGZvY3VzIHdvdWxkIGJlIGRpYWdub3NpcyBhbmQgcmFpc2luZyBhd2FyZW5lc3MsIGFuZCBpZiB5b3UgY29tZSBhY3Jvc3MgZ3JvdXBzIHRoYXQgYXJlIHRyeWluZyB0byBpbXByb3ZlIHRoZWlyIGFiaWxpdHkgdG8gZGlhZ25vc2UgdGhlbiB5b3UgdHJ5IHRvIGhlbHAgdGhlbSwgcmlnaHQuIFdoYXQncyB5b3VyIG90aGVyIHF1ZXN0aW9uIGluIHRlcm1zIG9mIHRyZWF0bWVudCBhbmQgcmVzZWFyY2g/IEkgdGhpbmsgYmVpbmcgYXdhcmUgb2YgaXQgaWYgeW91IGRvIGVuZCB1cCBmaW5kaW5nIHNhbXBsZXMgdGhhdCBoYXZlIHNvbWUgb2YgdGhlc2UgdW5pcXVlIHZhcmlhbnRzLiBSaWdodCB0aGVuLCB0cnlpbmcgdG8gZm9ybSBhIHN0cmF0ZWd5IGFyb3VuZCBpdCBpcyBub3QgYmFkOyBJJ3ZlIHNlZW4gcGVvcGxlIGlkZW50aWZ5IHZhcmlhbnRzIG9mIENGIHRoYXQgYXJlIHVuaXF1ZSB0byBkaWZmZXJlbnQgcG9wdWxhdGlvbnMuIEkgdGhpbmsgZXZlbiBNYXJpYW5uZSBDYXJsb24ncyBncm91cCBwaWNrZWQgdXAgdmFyaWFudHMgdGhhdCBhcmUgdW5pcXVlIHRvIEJlbGdpdW0gYW5kIHRoZW4gdHJpZWQgcHJpbWUgZWRpdGluZyBvbiB0aGF0IHJpZ2h0LCBzbyB0aG9zZSBzb3J0IG9mIHN0cmF0ZWdpZXMgaGVscCBxdWl0ZSBhIGJpdCwgcmlnaHQ/IEFuZCB0aGlzIGlzIHBhcnRpYWxseSB0aGUgcmVhc29uIHlvdSBrbm93IEkgY29udGludWUgdG8gZm9jdXMgb24gbXV0YXRpb24tYWdub3N0aWMgc3RyYXRlZ2llczsgSSd2ZSBub3QgcmVhbGx5IGJyYW5jaGVkIG91dCBpbnRvIHRoZSBQcmltZSBFZGl0aW5nIHdvcmxkIG9yIHRoZSBCYXNlIEVkaXRpbmcgd29ybGQgcHJpbWFyaWx5IGJlY2F1c2UgdGhpcyBzZWVtcyB0byBiZSBhIHByZXR0eSBjaGFsbGVuZ2luZyBpc3N1ZSwgYnV0IHRoYXQgc2FpZCwgeW91IHdhbnQgYXMgbWFueSBzaG90cyBhdCBnb2FsIGFzIHBvc3NpYmxlLiBTbywgeW91IGtub3csIGlmIHlvdSdyZSBhYmxlIHRvIHVzZSBwcmltZSBlZGl0aW5nIHRvIGZpeCBEZWx0YSA1MDgsIHRoYXQgc3RpbGwgaGVscHMgdGhlIG1vc3QgbnVtYmVyIG9mIHBlb3BsZSB3aXRoIENGLiBBbmQgdGhlbiBtYXliZSwgeW91IGtub3csIHlvdSBjb3VsZCB1c2UgdGhhdCBwbGF0Zm9ybSB0aGF0J3MgcmVhbGx5IHdlbGwgdmFsaWRhdGVkIGF0IHRoYXQgcG9pbnQsIHRoZW4gZ28gc3RhcnQgdGFyZ2V0aW5nIGluZGl2aWR1YWwgdmFyaWFudHMuIFRoZSBvdGhlciBpZGVhIHdpdGggcHJpbWUgZWRpdGluZyBpcyB0aGF0IHRoZXJlJ3MgaG9wZSB0aGF0IHlvdSBjYW4gcHJvYmFibHkgYXQgbGVhc3QgdHJ5IHRvIHJlcGxhY2Ugb25lIGV4b24gYXQgYSB0aW1lLiBBbmQgdGhhdCBzb3J0IG9mIG1ha2VzIHRoaW5ncyBhIGxpdHRsZSBiaXQgbW9yZSBtYW5hZ2VhYmxlLCByaWdodD8gU28gaWYgeW91LCB5b3Uga25vdywgaXQncyBhIGxpdHRsZSBiaXQgbW9yZSwgbGlrZSBpZiB5b3UgaGF2ZSB0byB0YXJnZXQgZXZlcnkgc2luZ2xlIHZhcmlhbnQsIHRoZW4geW91J3JlIHRoaW5raW5nIGFib3V0IGh1bmRyZWRzIG9mIGRpZmZlcmVudCBtZWRpY2FsIHByb2R1Y3RzLiBCdXQgaWYgeW91J3JlIHRoaW5raW5nIG9mIHJlcGxhY2luZyBldmVyeSBleG9uLCB0aGF0J3MgMjcsIHRoYXQncyBhIGNvdW50YWJsZSBudW1iZXIuIEFuZCBJIHdvdWxkIGFyZ3VlIHRoYXQgeW91IGRvbid0IGV2ZW4gaGF2ZSB0byBkbyBhbGwgMjcuIFlvdSBzdGFydCB3aXRoIHRoZSBob3RzcG90cywgcmlnaHQ/IFlvdSBzdGFydCB3aXRoIGV4b24gMTEsIHlvdSBzdGFydCB3aXRoIGV4b24gMTIuIEJ1dCB0aGVuIGFzIHBhcnQgb2YgdGhlIGNvbnZlcnNhdGlvbiwgSSB0aGluayB3ZSBzaG91bGQganVzdCBiZSB0aGlua2luZyBhYm91dCBleG9ucyB0aGF0IG1pZ2h0IGJlIGhvdHNwb3RzIGZvciB2YXJpYW50cyBpbiBvdGhlciBwb3B1bGF0aW9ucyBhbmQgYXQgbGVhc3QsIHlvdSBrbm93LCBrZWVwaW5nIHRoZW0gc29tZXdoZXJlIGluIHRoZSBwYWNraW5nIG9yZGVyIHNvIHRoYXQgYXMgeW91IGdvIHRocm91Z2ggdGhlIG1vc3QgZnJlcXVlbnQgdmFyaWFudHMsIHJpZ2h0PyBBbmQgeW91J3JlIHN0YXJ0aW5nIHRvIGRldmVsb3Agc3RyYXRlZ2llcyBmb3IgdGhlIG1vc3QgZnJlcXVlbnQgdmFyaWFudHMuIFRob3NlIGFyZSBvbiB0aGUgbGlzdCBzbyB0aGF0IHdlIGV2ZW50dWFsbHkgZ2V0IHRvIHRoZW0uXCIvPlxuICAgIDxRYUJveCBxPVwiWWVhaC4gT2theS4gQW5kIHdoYXQgZG8geW91IHRoaW5rPyBBcmUgdGhlcmUgYW55IGhlYWx0aGNhcmUgY2hhbGxlbmdlcyBtYW5hZ2luZyBjeXN0aWMgZmlicm9zaXMgaW4gQXNpYW4gY291bnRyaWVzP1wiIGE9XCJPaCwgYWJzb2x1dGVseS4gUmlnaHQuIEkgdGhpbmssIHlvdSBrbm93LCBpZiB5b3UncmUgaW4gYSBoaWdoLWluY29tZSBjb3VudHJ5IGxpa2UgSmFwYW4sIEkgdGhpbmssIHlvdSBrbm93LCB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2UgaXMgYXdhcmVuZXNzIGFuZCBnZXR0aW5nIGRpYWdub3NlZC4gSWYgeW91J3JlIGluIGxvdy0gYW5kIG1pZGRsZS1pbmNvbWUgY291bnRyaWVzLCByaWdodCwgdGhlbiB0aGUgY2hhbGxlbmdlIGJlY29tZXMgYWNjZXNzIHRvIGRydWdzLiBTbyBtb2R1bGF0b3JzIGFyZSBub3QgYXZhaWxhYmxlIGluIG1vc3Qgb2YgQXNpYSwgb3IgYXQgbGVhc3QgaW4gdGhlIGxvd2VyIGFuZCBtaWRkbGUtaW5jb21lIGNvdW50cmllcyBpbiBBc2lhLCB0aGF0J3Mgbm90IGF2YWlsYWJsZSwgbGlrZSwgaXQncyBub3QgYXZhaWxhYmxlIGZvciBzYWxlLiBQcmltYXJpbHksIHBhcnRseSBiZWNhdXNlIHRoZXkgdGhpbmsgdGhhdCB0aG9zZSBwZW9wbGUsIGxpa2UgcGVvcGxlIGF0IENGLCBkb24ndCBleGlzdCBpbiBlbm91Z2ggbnVtYmVycyBpbiB0aG9zZSBjb3VudHJpZXMuIEFuZCBwYXJ0bHkgYmVjYXVzZSB0aGVuIGl0IGNyZWF0ZXMgcHJvYmxlbXMgaW4gdGVybXMgb2YgbW9uZXRhcnksIGxpa2UgZmFjdG9ycywgcmlnaHQuIEluIHRlcm1zIG9mIGhvdyBtdWNoIHRoZXkgY2hhcmdlIGZvciB0aGUgbW9kdWxhdG9ycy4gUmlnaHQuIFNvIHRob3NlIGRvbid0IGV4aXN0LiBJIGRvbid0IGtub3csIGxpa2UgdGhleSBoYXZlIGFjY2VzcyB0byBwYW5jcmVhdGljIGVuenltZXMgYW5kIHRoaW5ncyBsaWtlIHRoYXQsIGJ1dCwgeW91IGtub3csIHJlZ3VsYXIgYWNjZXNzIHRvIHJlZ3VsYXIgY2FyZSBpcyBzdGlsbCBhIGNoYWxsZW5nZS4gVGhlIGJhc2Ugb2YgcGh5c2ljaWFucyB0aGF0IGFyZSBmYW1pbHkgd2l0aCB0cmVhdGluZyBDRiBpcyBvbmx5IGdyb3dpbmcgaW4gc29tZSBvZiB0aG9zZSBwbGFjZXMgYXQgbGVhc3QgZnJvbSBteSBwZXJzb25hbCBleHBlcmllbmNlIGJ1dCBpdFx1MjAxOXMgbm90IGJ5IHdoZXJlIHdlIGFyZS4gVGhlIGNoaWxkcmVuIHRoZXJlIGFyZSBzdGlsbCBtb3N0bHkgcGFzc2luZyBhd2F5IHdoZW4gdGhleSBhcmUgaW4gdGhlaXIgdGVlbmFnZSB5ZWFycyBvciBlYXJseSB0d2VudGllcy4gVGhlIHNvcnQgb2YgbGlmZSBzcGFuIGFuZCBsaWZlIGV4cGVjdGFuY3kgaXMgbm8gd2hlcmUgY2xvc2UgdG8gd2hhdCB5b3Ugd291bGQgc2VlIGluIGhpZ2gtaW5jb21lIGNvdW50cmllcy4gU28sIEkgdGhpbmsgdGhhdCBpcyB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2UsIGFjY2VzcyB0byByZXNvdXJjZXMgYm90aCwgcHVibGljbHkgYW5kIGFsc28gZnJvbSBhIHByaXZhdGUgcG9pbnQuXCIvPlxuICAgIDxRYUJveCBxPVwiT2theS4gQW5kIGRvIHlvdSB0aGluayB0aGF0IHRoZSBlbnZpcm9ubWVudGFsIG9yIGxpa2UgcG9sbHV0aW9uIGlzIGRvaW5nLCBsaWtlLCBJIGRvbid0IGtub3cgaG93IHRvIHNheSBpdCBjb3JyZWN0bHkuIFNvIHRoYXQgdGhlcmUgYXJlIGxpa2UgcmVzcGlyYXRvcnkgY2hhbGxlbmdlcyBiZWNhdXNlLCB5ZWFoLCByaWdodC5cIiBhPVwiQWJzb2x1dGVseSEgUmlnaHQuIEl0J3MsIHlvdSBrbm93LCB5b3VyIGV4cG9zdXJlIHRvIHBhdGhvZ2VucyBpcyBoaWdoZXIuIFlvdXIgZXhwb3N1cmUgdG8gcG9sbHV0aW9uIGlzIHNpZ25pZmljYW50bHkgaGlnaGVyIGluIGEgbG90IG9mIHRoZXNlIGNvdW50cmllcywgcmlnaHQ/IEV2ZW4gQ2hpbmEsIHdoaWNoIGlzLCB5b3Uga25vdywgbXVjaCBiZXR0ZXIgb2ZmIHRoYW4gYSBjb3VudHJ5IGxpa2UgSW5kaWEgc3RpbGwgaGFzIGEgbG90IG9mIHBvbGx1dGlvbiwgcmlnaHQ/IEFuZCBzbywgb3IgSSd2ZSBuZXZlciBiZWVuIHRvIENoaW5hLCBidXQgYXQgbGVhc3QgdGhhdCdzIHdoYXQgSSByZWFkLCByaWdodD8gQnV0IEluZGlhLCBJIGdyZXcgdXAgdGhlcmUgYW5kIEkgY2FuIGZpcnN0aGFuZCB0ZWxsIHlvdSB0aGF0IHRoZXJlJ3MgYSBsb3Qgb2YgcG9sbHV0aW9uIHRoZXJlLCByaWdodD8gQW5kIHRoYXQgSSdtIHN1cmUgaXQgYWZmZWN0cyBpdCBiZWNhdXNlIGl0J3MgYmVlbiBkb2N1bWVudGVkIHRvIGFmZmVjdCBwZW9wbGUsIGp1c3QgcGVvcGxlIHdpdGhvdXQgQ0YsIHJpZ2h0PyBPbiBhbiBhdmVyYWdlLCBpdCdzIHN1cHBvc2VkIHRvIGxpa2UsIHRoZSByZXBvcnRzIHRoYXQgSSd2ZSBzZWVuIGFyZSBsaWtlLCBpdCB0YWtlcyBhIGZldyB5ZWFycyBvZmYgb2YgbGlmZSBleHBlY3RhbmN5IGZvciBldmVuIHBlb3BsZSB0aGF0IGhhdmUgbm90IGJlZW4gZGlhZ25vc2VkIHdpdGggYW55dGhpbmcgZWxzZSwgcmlnaHQ/IFNvIEknbSBzdXJlIGlmIHRoZXJlJ3MgYSBwZXJzb24gd2l0aCBDRiwgdGhlbiB0aGF0J3MgZ29pbmcgdG8gYWZmZWN0IHRoZW0gZXZlbiBtb3JlIG5lZ2F0aXZlbHkgaW4gcGxhY2VzIGxpa2UgSW5kaWEuIEFuZCB0aGVuIEkgdGhpbmsgdGhhdCB0aGUgZXhwb3N1cmUgdG8gcGF0aG9nZW5zIG1pZ2h0IGJlIHNsaWdodCwgaXQgbWlnaHQgYmUgaGlnaGVyIGFuZCB0aGUgbG93ZXIgZG93biBpbiB0aGUgZWNvbm9taWMgc2NhbGUgeW91IGdvLCB0aGUgbW9yZSwgdGhlIGV4cG9zdXJlIHRvIHBhdGhvZ2VucyBhcmUgZ29pbmcgdG8gaGF2ZSwgcmlnaHQ/IEkgdGhpbmsgdGhlIHRoaXJkIGZhY3RvciB3b3VsZCBhbHNvIG1pZ2h0IGJlIG51dHJpdGlvbiwgcmlnaHQ/IExpa2UsIHNvIGlmIHlvdSBoYXZlIENGLCB5b3UsIHlvdSBrbm93LCBoZXJlLCBvbmUgd2F5IHRoZXkgd2VyZSBtYW5hZ2luZyBpdCB3YXMgdGhyb3VnaCBoaWdoIGZhdCBjYWxvcmllIHJpY2ggZGlldCBhbmQgYWNjZXNzIHRvIHRob3NlIHNvcnQgb2YgaGlnaCBmYXQgY2Fsb3JpZSByaWNoIGRpZXRzIG1heSBub3QgYmUgdGhhdCBwcmV2YWxlbnQgaW4gc29tZSBvZiB0aGVzZSBvdGhlciBwbGFjZXMuIEFuZCBzbyB0aGF0IG1pZ2h0IGJlY29tZSBhIGZhY3Rvci5cIi8+XG4gICAgPFFhQm94IHE9XCJPa2F5LiBBbmQgdGhlbiBvbmUgbGFzdCBxdWVzdGlvbi4gU28gaXQncyBtb3JlIGEgYml0IGFib3V0IHlvdSBhbmQgeW91ciByZXNlYXJjaC4gU28gd2hhdCBkcmV3IHlvdXIgYXR0ZW50aW9uIHRvIHRoZSBpc3N1ZSBvZiBDRiBpbiBBc2lhPyBTbyB3aHkgZGlkIHlvdSBzdGFydCByZXNlYXJjaGluZyB0aGlzIHRvcGljP1wiIGE9XCJPaCwgc28gdGhhdCB3YXMgYSB2ZXJ5IG9rYXkuIFNvIHRoZSB3YXkgaXQgaGFwcGVuZWQgd2FzIEkgd2FzIGF0IGEgY29uZmVyZW5jZSBhbmQgSSB3YXMgYSBwb3N0ZG9jIGF0IFN0YW5mb3JkIHByZXZpb3VzbHksIGFzIHlvdSBrbm93LiBTbyBJIHdhcyBhdCBhIGNvbmZlcmVuY2UgYW5kIEkgd2FzLCB3ZSB3ZXJlIGp1c3QsIEkgdGhpbmsgaGFkIGEgc29ydCBvZiBhLCB5b3Uga25vdywgYSBkaW5uZXIgZm9yIGV2ZXJ5Ym9keSBmcm9tIG91ciBpbnN0aXR1dGlvbi4gQW5kIEkgd2FzIGNoYXR0aW5nIHdpdGggdGhlIG51cnNlIGluIHRoZSB0YWJsZSBhbmQgc2l0dGluZyBpbiB0aGUgdGFibGUgYW5kIHNvIHRoZSBTYW4gRnJhbmNpc2NvIGFyZWEgaGFzIGEgbG90IG9mIHBlb3BsZSBmcm9tIEFzaWEuIEFuZCBzbyB0aGUgbnVyc2UgcGFydGljdWxhcmx5IHNhaWQgdGhhdCB0aGV5IGhhZCBhIGxvdCBvZiBjaGlsZHJlbiB3aXRoIENGIHdobyBoYXBwZW5lZCB0byBvcmlnaW5hdGUgaW4gSW5kaWEsIHdoaWNoIHJlYWxseSBzdXJwcmlzZWQgbWUgYmVjYXVzZSB0aGF0J3Mgbm90IGEgZGlzZWFzZSB0aGF0IEknZCBoZWFyZCBncm93aW5nIHVwIGFzIGJlaW5nIHNvbWUsIGEgY29tbW9uIGdlbmV0aWMgZGlzZWFzZSB0aGVyZS4gUmlnaHQuIEFuZCBzbyB0aGF0IGtpbmQgb2YgZHJldyBteSBhdHRlbnRpb24uIEFuZCB0aGVuIGluIHN1YnNlcXVlbnQgY29udmVyc2F0aW9ucywgd2hlbiBJIHNwb2tlIHdpdGggcGh5c2ljaWFucyB3aG8gYXJlIHByYWN0aWNpbmcgaW4gSW5kaWEsIG5vYm9keSBzYWlkIHRoYXQgdGhleSBoYWRuJ3Qgc2VlbiBwZW9wbGUgd2l0aCBDRiwgcmlnaHQ/IFdoZW5ldmVyIEkgaGFkIHRoZSBjb252ZXJzYXRpb24sIHBlb3BsZSB3b3VsZCBiZSBsaWtlLCBvaCB5ZWFoLCBJJ3ZlIHNlZW4gYSBwYXRpZW50IHdpdGggQ0Ygb3IgSSBrbm93IG9mIHNvbWVib2R5IHRoYXQgaGFzIGEgY2hpbGQgd2l0aCBDRiwgcmlnaHQ/IFdoaWNoIHdhcyBzdXJwcmlzaW5nLiBBbmQgdGhlbiB3aGVuIEkgd2VudCB0byBJbmRpYSwgSSB3ZW50IHRvIGEgaG9zcGl0YWwgaW4gbXkgaG9tZXRvd24gYW5kIEkgd2FzIHRhbGtpbmcgdG8gdGhlIHB1bG1vbm9sb2dpc3QgdGhlcmUuIEFuZCBoZSBzYWlkIGhlIGhhZCAzMCBvciA0MCBwYXRpZW50cyB3aXRoIENGIGluIHRoYXQsIGp1c3QgdGhhdCBob3NwaXRhbC4gQW5kIHRoYXQncywgeW91IGtub3csIGl0J3Mgbm90IGV2ZW4sIHlvdSBrbm93LCBpdCdzIHByb2JhYmx5IG9uZSBvZiB0aGUgYmlnZ2VyIGNpdGllcyBpbiBJbmRpYSwgYnV0IEkgd291bGRuJ3QgZXZlbiBrbm93IGlmIGl0J3MgaW4gdGhlIHRvcCAxMCBiaWdnZXN0IGNpdGllcyBpbiBJbmRpYS4gQW5kIHRoaXMgaXMgbm90IGV2ZW4gdGhlIGJpZ2dlc3QgY2VudGVyIGluIHRoYXQgY2l0eSBuZWNlc3NhcmlseS4gUmlnaHQuIFNvIEkgd2FzIGp1c3QgcmVhbGx5IHN1cnByaXNlZC4gQW5kIGhlIHNhaWQgaGUgZGlkbid0IGhhdmUgdG8gcmVhbGx5IHB1dCBpbiBhbnkgZWZmb3J0IHRvIGdvIHNlZWsgb3V0IGFueSBwZW9wbGUgd2l0aCBDRi4gVGhpcyB3YXMganVzdCBpbiB0aGUgcGVvcGxlIHRoYXQgd2Fsa2VkIGludG8gdGhhdCBob3NwaXRhbCB0aGF0IGdvdCBkaWFnbm9zZWQgd2l0aCBDRiwgcmlnaHQ/IFNvIHRoYXQga2luZCBvZiBzb2xpZGlmaWVkIHRoZSBwZXJjZXB0aW9uIHRoYXQgcGVyaGFwcyBpdCB3YXMgdW5kZXJkaWFnbm9zZWQuIEFuZCB0aGVuIHRoZSByZWFzb24gaXQgaGFwcGVuZWQgd2FzIGJlY2F1c2UgdGhlIHBhbmRlbWljIHNvcnQgb2YgZm9yY2VkIG1vc3Qgb2YgdXMgb3V0IG9mIHRoZSBsYWIuIEFuZCBzbyB0aGlzIGVuZGVkIHVwIGJlaW5nIHNvbWV0aGluZyB5b3UgY2FuIGFjdHVhbGx5IHdvcmsgb24gd2l0aG91dCBnb2luZyB0byBsYWIuXCIvPlxuICAgIDxRYUJveCBxPVwiWWVhaCwgc291bmRzIHJlYWxseSBpbnRlcmVzdGluZyB0aGUgd2F5IHlvdSBnb3QgdGhlcmUuIGF0IHRoZSBiZWdpbm5pbmcsIHlvdSBzYWlkIHlvdSBjb3VsZCB0ZWxsIHVzIHNvbWV0aGluZywgd2hhdCBjYW1lIHRvIHlvdSBpbiBtaW5kIHdoZW4geW91IGhlYXJkIGFib3V0IFByb2plY3QgRmlyc3QsIGFuZCB5b3UgYWxyZWFkeSBwcmVwYXJlZCBzb21lIHNsaWRlcy4gU28gSSBqdXN0IHdhbnQgdG8gYXNrIGlmIHlvdSBtYXliZSBoYXZlIHNvbWV0aGluZyBtb3JlIHRvIHRlbGwgdXMgdGhhdCB5b3UgaGF2ZW4ndCB0aG91Z2h0IGFib3V0IHlldCwgYmVjYXVzZSB0aGUgaW50ZXJ2aWV3IHVudGlsIG5vdyBpcyBoaWdobHkgaW50ZXJlc3RpbmcgYW5kIEkgdGhpbmsgd2UgZ290IGEgbG90IG9mIG5ldyBpbmZvcm1hdGlvbiB1bnRpbCBub3cuIFNvIG1heWJlIHlvdSBoYXZlIHNvbWV0aGluZy4gTWF5YmUgeW91IGhhdmUgbW9yZSBpbnRlcmVzdGluZyBpbmZvcm1hdGlvbiBmb3IgdXMuXCIgYT1cIkkgdGhpbmsgeW91IGd1eXMgY292ZXJlZCBhIGxvdCBvZiB3aGF0IEkgaGFkIGluIG1pbmQsIHJpZ2h0PyBJbiB0ZXJtcyBvZiwgSSB0aGluayBpZiBJIHdlcmUgdG8gc3RhcnQgd2l0aCBwcmltZSBlZGl0aW5nIGFuZCBEZWx0YSA1MDgsIHRoaXMgaXMgZXhhY3RseSB0aGUgYXJndW1lbnQgSSB3b3VsZCBoYXZlIG1hZGUuIEkgd291bGQgaGF2ZSB0YWxrZWQgdG8gYWxsIG9mIHRoZSBleGFjdCBwZW9wbGUgdGhhdCB5b3UgaGF2ZSBhbHJlYWR5IHNwb2tlbiB3aXRoLCByaWdodD8gU28gSSB0aGluayB0aGF0IEkgZG9uJ3QgaGF2ZSB0b28gbXVjaCB0byBhZGQgdGhlcmUuIFRoZSBvbmx5IHRoaW5nIHlvdSBjb3VsZCBkbyBpcyBpZiB5b3UgYXJlIGxvb2tpbmcgYXQgdmFyaWFudHMsIHJpZ2h0PyBNYXliZSBJIHdvdWxkIHRyeSB0byBjb21lIHVwIHdpdGggYSBwbGFuIGZvciB3aGF0IHZhcmlhbnRzIHlvdSBtaWdodCBnbyBhZnRlciwgYWZ0ZXIgRGVsdGEgNTA4LCByaWdodD8gQW5kIHRoYXQgY291bGQgYmVjb21lIHBhcnQgb2YgeW91ciBmdXR1cmUgcmVzZWFyY2ggb3Igc29tZXRoaW5nIGxpa2UgdGhhdC4gT3IgaWYgeW91IGNhbiwgSSBndWVzcyB0aGUgb25lIHF1ZXN0aW9uIEkgaGFkIGZvciB5b3UgaXMsIHNvIHRoZSBjb3JyZWN0aW9uIG9mIERlbHRhIDUwOCBpcyBzb3J0IG9mIHB1Ymxpc2hlZCwgcmlnaHQ/IFBlb3BsZSBoYXZlIHJlcG9ydGVkIHVzaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMsIGF0IGxlYXN0IHRvIGRlbGl2ZXIgYmFzZSBlZGl0aW5nIHJlYWdlbnRzLCByaWdodD8gU28gaG93IGFyZSB5b3UgdGhpbmtpbmcgYWJvdXQsIGxpa2Ugd2hlbiB5b3UgcGl0Y2ggdGhlIGlubm92YXRpb24gaW4geW91ciBwcm9qZWN0LCBob3cgYXJlIHlvdSB0aGlua2luZyBhYm91dCBwaXRjaGluZyB5b3VyIGlubm92YXRpb24/IFwiLz5cbiAgICA8UWFCb3ggcT1cIk9rYXkuIFNvIEkgdGhpbmssIG91ciBpZGVhIHdhcyB0aGF0IHdlIHdhbnQgdG8gZG8gbGlrZSB0aGUsIHRoZSBwcmltZSBlZGl0b3IgaXMgbW9yZSBlZmZpY2llbnQuIE91ciBpZGVhIGlzIHRvIHVzZSBhIHNtYWxsZXIgcmV2ZXJzZSB0cmFuc2NyaXB0IGNhc2UgYW5kIG1heWJlIHdoZW4gd2Ugd2lsbCB3aGVuIHRoZSB0aW1lIGlzIGxldHRpbmcgdXMgZG8gaXQsIG1heWJlIG5vdCwgd2UgZG9uJ3Qga25vdyBpZiB3ZSB3aWxsIGdldCBpbiB0aW1lIHRoZXJlIGFuZCBldmVyeXRoaW5nIHdpbGwgYmUgcmVhZHkuIEJ1dCBpbiB0aGUgTGl1IHBhcGVyLCBJIHRoaW5rIHdhcyBzb21ldGhpbmcgYWJvdXQgdGhlIExhIG1vdGl2ZSBhbmQgc29tZSBvdGhlciBzdHVmZiB0aGF0IHdlIHdhbnQgdG8gYWRkIHRvIHRoZSBwcmltZSBlZGl0b3Igc28gdGhhdCBpdCdzIGV2ZW4gbW9yZSBlZmZpY2llbnQuIEFuZCBldmVuIHRoZW4gdGhlIGlkZWEgb2YgdGhlIExOUCB0byBzcHJheSBkcnkgYmVjYXVzZSB3ZSB0aG91Z2h0IHRoZW4gd2hlbiB0aGVyZSBpcyBub3QgdGhlIHRoYXQgaXQgaGFzIHRvIGJlIGNvb2wsIGxpa2Ugb3RoZXIgbWVkaWNhdGlvbiwgaXQncyBlYXNpZXIgdG8gYnJpbmcgaXQgbGlrZSB0byBBc2lhIG9yIG90aGVyIHBsYWNlcyBiZWNhdXNlIHRoZXkgY2FuIGp1c3QgZ2V0IHRoZSBpbmhhbGF0b3IuIFwiIGE9XCJSaWdodC4gU28gdGhlIG9uZSBxdWVzdGlvbiBJIGhhZCBmb3IgeW91IG9uIHRoYXQgaXMsIGhhdmUgeW91IGxvb2tlZCBhdCBEYW5pZWwgU2llZ3dhcnRzIHdvcmsgb24gTE5QPyAgXCIvPlxuICAgIDxRYUJveCBxPVwiTm8sbm90IHlldC5cIiBhPVwiQmVjYXVzZSB0aGV5IGhhZCBhIHBhcGVyIGluIHNjaWVuY2Ugd2hlcmUgdGhleSBkaWQgaW50cmF2ZW5vdXMgZGVsaXZlcnkgb2YgbGlwaWQgbmFub3BhcnRpY2xlcyBhbmQgdGhleSwgdGhleSBkZWxpdmVyZWQgYSBiYXNlIGVkaXRvci4gU28gd2hlbiB5b3UgcHJlc2VudCB0aGlzLCB0aGlzIG1pZ2h0IGNvbWUgdXAuIFNvLCB5b3Uga25vdywgc28gSSdtIG5vdCBzYXlpbmcgeW91IHNob3VsZCBjaGFuZ2UgeW91ciBzdHJhdGVneSwgYnV0LCB5b3Uga25vdywgaWYgeW91J3JlIHRyeWluZyB0byBkbyBhIGxvdCBvZiB3b3JrIG9uIGxpcGlkIG5hbm9wYXJ0aWNsZXMsIHlvdSdyZSBnb2luZyB0byBoYXZlIHRvIGRvIGEgbG90IG9mIHdvcmsgb24gU28geW91IHdhbnQgdG8gaGF2ZSB0aG91Z2h0IGFib3V0IGEgcmVzcG9uc2UuIEFuZCBpdCdzLCBpdCdzIGEgcmVhbGx5IGludGVyZXN0aW5nIHN0cmF0ZWd5LiBVbSwgdHJ5aW5nIHRvIHNlZSBpZiBJIGNhbiBmaW5kIGl0LiBZZWFoLiBIZXJlLiBJdCdzIGEgcmVhbGx5IGludGVyZXN0aW5nIHNvcnQgb2YgbmFub3BhcnRpY2xlIHN0cmF0ZWd5IHRoYXQgdGhleSBoYXZlIHByZXNlbnRlZC4gVWgsIHRoZSBuaWNlIHRoaW5nIGlzIGl0IGlzIGFuIElWIGRlbGl2ZXJ5LCB3aGljaCBnZXRzIHlvdSB0byBiYXNhbCBjZWxscyBhbmQgdGhleSB3ZXJlIGFibGUgdG8gZ2V0IGFib3V0IDIwJSBjb3JyZWN0aW9uLCByaWdodD8gU28geW91IGNvdWxkIGFsbW9zdCB0aGluayBvZiBpdCBhcyBhbiBhbHRlcm5hdGl2ZSBzdHJhdGVneS4gU28gaWYsIHlvdSBrbm93LCBpZiB5b3UgZ2V0IHRoZSBwdXNoYmFjayBvciBJIGRvbid0IGtub3cgaG93IHlvdSBoYXZlIHRvIHdyaXRlIHRvIHlvdXIgcHJvcG9zYWwsIGJ1dCBpZiB0aGUsIHRoZSwgdGhlIHNwcmF5IGRyeWluZyBvciB0aGUgbmVidWxpemF0aW9uIHByb2Nlc3MgaXMgbm90IGdvaW5nIHdlbGwgZm9yIHlvdSwgdGhpcyBtaWdodCBiZSBzb21ldGhpbmcgdGhhdCB5b3UgY291bGQgcHJvcG9zZSBhcyBhIGJhY2t1cCBiZWNhdXNlIGhlcmUgdGhleSd2ZSBzaG93biB0aGF0IHlvdSBjYW4gZGVsaXZlciBsaXBpZCBuYW5vcGFydGljbGVzIGludHJhdmVub3VzbHkgYW5kIHRoZXkgZ2V0IHRvIHRoZSBiYXNhbCBjZWxsIHBvcHVsYXRpb24uIE9rYXkuIEFuZCB0aGV5IGdldCB0bywgeWVhaC4gU28gdGhhdCBtaWdodCBiZSB0aGUgb25seSBvdGhlciBkaXJlY3Rpb24gSSB3b3VsZCBwb2ludCB0byBhcyB5b3UncmUgdGhpbmtpbmcgYWJvdXQgeW91ciBkZWxpdmVyeSBzdHJhdGVneS4gUmlnaHQuIFVoLCB0aGUgb3RoZXIgaW5ub3ZhdGlvbiBjb3VsZCBiZSB0aGF0IGlmIHlvdSBjYW4gZXZlbiBvcHRpbWl6ZSB5b3VyIHByaW1lIGVkaXRpbmcgdG8gZ28gYSBsaXR0bGUgYml0IGJleW9uZCBqdXN0IERlbHRhLCBpZiBJIHdhaXQsIGlmIHlvdSBjYW4gc2hvdyB0aGF0IHlvdSBldmVuIHJlcGxhY2UgdGhlIHdob2xlIEV4eG9uLCB5b3UgbWlnaHQgaGF2ZSBzb21ldGhpbmcgdGhhdCBpcyBhIGxpdHRsZSBiaXQgbW9yZSB1bmlxdWUgdGhhbiB3aGF0J3Mgb3V0IHRoZXJlLiBBbmQgdGhlbiB5b3UgZG9uJ3QgaGF2ZSB0byBldmVuIHdvcnJ5IGFib3V0IGRlbGl2ZXJ5IG5lY2Vzc2FyaWx5LiBcIi8+IFxuICAgIDxRYUJveCBxPVwiT2theS4gVGhhbmsgeW91IHNvIG11Y2guIFdlIHdpbGwgbG9vayBhdCB0aGUgcGFwZXIgYW5kIHdlJ2xsIGNoZWNrIGl0IG91dC4gQWxsIHJpZ2h0LiBPa2F5LiBUaGVuLCB5ZWFoLiBUaGFuayB5b3UgdmVyeSBtdWNoIGZvciB0aGUgaW50ZXJ2aWV3LiBcIiBhPVwiWWVhaCwgdGhhdCdzIHBlcmZlY3RseSBmaW5lLiBHb29kIGx1Y2sgd2l0aCB5b3VyIHByb2plY3QuIEl0J3MgYSByZWFsbHkgaW50ZXJlc3RpbmcgcHJvamVjdC5cIi8+IFxuICAgIDwvPixcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvc3JpcmFtLWludGVydmlldy53ZWJwXCIsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJNLlNjLlwiLFxuICAgIHZvcm5hbWU6IFwiUGhpbGlwcFwiLFxuICAgIG5hY2hubmFtZTogXCJLXHUwMEZDaG5lbFwiLFxuICAgIGpvYjogXCJQaEQgc3R1ZGVudCBpbiB0aGUgT3Rvcmhpbm9sYXJ5bmdvbG9neSB3b3JraW5nIGdyb3VwIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXG4gICAgYWZmaWxpYXRpb246IFwiVW5pdmVyc2l0XHUwMEU0dCBCaWVsZWZlbGRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrXHUwMEZDaG5lbCddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiSW1wcm92ZW1lbnQgb2Ygb3VyIGN1bHR1cmUgcHJvdG9jb2xzIGFuZCBleHBlcmltZW50YWwgb3V0Y29tZXMsIHBhcnRpY3VsYXJseSBpbiBtYWludGFpbmluZyBBTEkgY3VsdHVyZXNcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJwa3VlaG5lbFwiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIHF1b3RlOiBcIkNvbm5lY3Rpbmcgd2l0aCBQaGlsaXBwIEtcdTAwRkNobmVsLCBhbiBleHBlcnQgaW4gbmFzYWwgY2VsbCBjdWx0aXZhdGlvbiwgaGFzIGJlZW4gaW52YWx1YWJsZS4gSGlzIGluc2lnaHRzIGFuZCBleHBlcnRpc2UgaW4gQUxJIHRlY2huaXF1ZXMgaGF2ZSBzaWduaWZpY2FudGx5IGVuaGFuY2VkIG91ciB1bmRlcnN0YW5kaW5nIGFuZCBhcHByb2FjaCBpbiB0aGlzIGNydWNpYWwgYXJlYSBvZiByZXNlYXJjaC5cIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIlN1c2F0LCBUZWFtbWVtYmVyIFwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJLYXRobGVlblwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPlRoZSBhaW0gb2Ygb3VyIGNvbnRhY3Qgd2l0aCBQaGlsaXBwIEtcdTAwRkNobmVsLCBhIFBoRCBzdHVkZW50IGZyb20gdGhlIE90b3JoaW5vbGFyeW5nb2xvZ3kgd29ya2luZyBncm91cCBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2FzIHRvIGdhaW4gZXhwZXJ0aXNlIGluIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzLCBwYXJ0aWN1bGFybHkgZm9jdXNpbmcgb24gYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMuIEdpdmVuIGhpcyBleHBlcmllbmNlIGluIHRoaXMgYXJlYSwgd2Ugc291Z2h0IGhpcyBndWlkYW5jZSB0byBlbnN1cmUgdGhhdCB3ZSB3ZXJlIGZvbGxvd2luZyBiZXN0IHByYWN0aWNlcyBhbmQgdG8gYWRkcmVzcyBhbnkgdGVjaG5pY2FsIGNoYWxsZW5nZXMgd2UgbWlnaHQgZW5jb3VudGVyLjwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+VGhyb3VnaCBvdXIgZGlzY3Vzc2lvbnMgd2l0aCBQaGlsaXBwLCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgb3B0aW1hbCBjb25kaXRpb25zIGZvciBjdWx0aXZhdGluZyBwcmltYXJ5IGNlbGxzIGFuZCBtYWludGFpbmluZyBBTEkgY3VsdHVyZXMuIEhlIHByb3ZpZGVkIHByYWN0aWNhbCBhZHZpY2Ugb24gdHJvdWJsZXNob290aW5nIG9mIGNvbW1vbiBpc3N1ZXMsIHN1Y2ggYXMgY2VsbCBkaWZmZXJlbnRpYXRpb24gYW5kIGN1bHR1cmUgc3RhYmlsaXR5LCB3aGljaCB3ZXJlIGNydWNpYWwgZm9yIHRoZSBzdWNjZXNzIG9mIG91ciBleHBlcmltZW50cy4gV2UgYWxzbyBtYWludGFpbmVkIGNsb3NlIGNvbnRhY3QgdG8gZXhjaGFuZ2UgaW5mb3JtYXRpb24gYWJvdXQgZnVuZ2kgdGhhdCBmcmVxdWVudGx5IGNvbnRhbWluYXRlIEFMSSBjdWx0dXJlcy4gVGhlIGV4cGVydGlzZSBzaGFyZWQgb24gY29tYmF0aW5nIHRoZXNlIGZ1bmdhbCBjb250YW1pbmF0aW9ucyB3YXMgcGFydGljdWxhcmx5IHZhbHVhYmxlIGFuZCBncmVhdGx5IGVuaGFuY2VkIG91ciB1bmRlcnN0YW5kaW5nIG9mIGVmZmVjdGl2ZSBwcmV2ZW50aW9uIGFuZCB0cmVhdG1lbnQgbWV0aG9kcy4gPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5XZSBpbmNvcnBvcmF0ZWQgUGhpbGlwcFx1MjAxOXMgYWR2aWNlIGJ5IHJlZmluaW5nIG91ciBjdWx0dXJlIHByb3RvY29scywgcGFydGljdWxhcmx5IGFkanVzdGluZyB0aGUgY29uZGl0aW9ucyBmb3IgQUxJIGN1bHR1cmVzIHRvIGltcHJvdmUgY2VsbCBkaWZmZXJlbnRpYXRpb24gYW5kIG92ZXJhbGwgY3VsdHVyZSBoZWFsdGguIFRoaXMgZGlyZWN0bHkgZW5oYW5jZWQgdGhlIHJlbGlhYmlsaXR5IG9mIG91ciBleHBlcmltZW50YWwgcmVzdWx0cywgZW5zdXJpbmcgdGhhdCBvdXIgd29yayB3aXRoIHByaW1hcnkgY3VsdHVyZXMgd2FzIGJvdGggYWNjdXJhdGUgYW5kIHJlcHJvZHVjaWJsZS4gPC9wPl0sXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBzdW1tYXJ5OiBcIlRoZSBjb250YWN0IGFpbWVkIHRvIGxldmVyYWdlIFBoaWxpcHBcdTIwMTlzIGV4cGVydGlzZSBpbiBBTEkgY3VsdHVyZXMgdG8gaW1wcm92ZSBvdXIgZXhwZXJpbWVudGFsIHByb3RvY29scyBHYWluZWQgaW5zaWdodHMgaW50byBvcHRpbWl6aW5nIGNvbmRpdGlvbnMgZm9yIHByaW1hcnkgY2VsbCBjdWx0dXJlcyBhbmQgbWFuYWdpbmcgY29tbW9uIGNoYWxsZW5nZXMgbGlrZSBmdW5nYWwgY29udGFtaW5hdGlvblwiLFxuICAgIG1vbnRoczogXCJzZXZlcmFsIHRpbWVzXCJcbiAgfSxcbiAge1xuICAgIHRpdGxlOiBcIlByb2YuIERyLlwiLFxuICAgIHZvcm5hbWU6IFwiWm95YVwiLFxuICAgIG5hY2hubmFtZTogXCJJbmdhdG92YSBhbmQgIERyLiBOaWtoaWwgQmhhcnRpXCIsXG4gICAgam9iOiBcIkdyb3VwIExlYWRlclwiLFxuICAgIGFmZmlsaWF0aW9uOiBcIkluc3RpdHV0ZSBvZiBCaW9jaGVtaXN0cnkgYW5kIE1vbGVjdWxhciBCaW9sb2d5IGF0IEhhbWJ1cmcgVW5pdmVyc2l0eVwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3pveWEnXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIlNoYXBpbmcgdGhlIEZ1dHVyZSBvZiBHZW5ldGljIFRoZXJhcHk6IEFuIGludGVydmlldyB3aXRoIFByb2YuIERyLiBab3lhIElnbmF0b3ZhXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaWduYXRvdmFcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIkluZ2F0b3ZhLCBDRiBSZXNlYXJjaCBFeHBlcnRzIFwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJQcm9mLiBEci4gWm95YVwiLFxuICAgIHF1b3RlOiBcIlByZWNpc2lvbiBpcyBrZXkgdG8gbWluaW1pemluZyBzaWRlIGVmZmVjdHMgYW5kIGVuc3VyaW5nIHRoZSBzYWZldHkgb2YgeW91ciB0aGVyYXB5LlwiLFxuICAgIGFpbW9mY29udGFjdDogXCJXZSBjb25kdWN0ZWQgdGhlIGludGVydmlldyB3aXRoIFByb2YuIERyLiBab3lhIElnbmF0b3ZhIGFuZCBEci4gTmlraGlsIEJoYXJ0aSBmcm9tIHRoZSBJbnN0aXR1dGUgb2YgQmlvY2hlbWlzdHJ5IGFuZCBNb2xlY3VsYXIgQmlvbG9neSBhdCB0aGUgVW5pdmVyc2l0eSBvZiBIYW1idXJnLCBzZWVraW5nIHRvIGRlZXBlbiBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGVpciByZXNlYXJjaCBvbiBjeXN0aWMgZmlicm9zaXMgKENGKSBhbmQgZXhwbG9yZSBhZGRpdGlvbmFsIENGIG11dGF0aW9ucywgYXMgd2VsbCBhcyB0byBsZWFybiBtb3JlIGFib3V0IGNlbGwgY3VsdHVyZSB0ZWNobmlxdWVzIHNwZWNpZmljIHRvIENGIHJlc2VhcmNoLCBzaW5jZSB0aGV5IHNlbmQgdXMgdGhlIENGQkU0MW8tIGNlbGwgbGluZS4gT3VyIGFpbSB3YXMgYWxzbyB0byBnYXRoZXIgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVpciBhcHByb2FjaGVzIGluIENGIHJlc2VhcmNoLCBwYXJ0aWN1bGFybHkgdGhlaXIgZm9jdXMgb24gdHJlYXRpbmcgZ2VuZXRpYyBtdXRhdGlvbnMgbGlrZSBub25zZW5zZSBtdXRhdGlvbnMsIHdoaWNoIGFyZSBoaWdobHkgcHJldmFsZW50IGluIENGLlwiLFxuICAgIGluc2lnaHRzOiBbPHA+V2Ugd2VyZSBzdHJ1Y2sgYnkgSWduYXRvdmFcdTIwMTlzIHN0b3J5IGFib3V0IGZvdW5kaW5nIHRoZSBpR0VNIHRlYW0gaW4gSGFtYnVyZy4gSGVyIHBhc3Npb24gZm9yIGZvc3RlcmluZyBjcmVhdGl2aXR5IGFuZCBpbm5vdmF0aW9uIGluIHNjaWVuY2Ugd2FzIGluc3BpcmluZy4gT24gYSB0ZWNobmljYWwgbGV2ZWwsIHRoZWlyIGFkdmljZSBvbiBjZWxsIGN1bHR1cmUgd2FzIGluY3JlZGlibHkgcHJhY3RpY2FsIGFuZCBpbW1lZGlhdGVseSB1c2VmdWwuIERyLiBOaWtoaWwgQmhhcnRpIGV4cGxhaW5lZCBob3cgdGhleSBoYW5kbGUgQ0ZCRTQxby0gY2VsbHMgYW5kIEFMSSAoYWlyLWxpcXVpZCBpbnRlcmZhY2UpIGNlbGwgY3VsdHVyZS4gVGhpcyBhZHZpY2UgZGlyZWN0bHkgYWRkcmVzc2VkIHRoZSBjaGFsbGVuZ2VzIHdlXHUyMDE5dmUgZmFjZWQgaW4gb3VyIG93biBsYWIsIGdpdmluZyB1cyBhIG1ldGhvZCB0byBpbXByb3ZlIG91ciBjZWxsIGN1bHR1cmUgc3VjY2VzcyByYXRlcy4gRHVyaW5nIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gWm95YSBJZ25hdG92YSBhbmQgRHIuIE5pa2hpbCBCaGFydGksIHRoZWlyIGlubm92YXRpdmUgYXBwcm9hY2ggdG8gY3lzdGljIGZpYnJvc2lzIChDRikgdGhlcmFweSwgcGFydGljdWxhcmx5IFwicmVhZC10aHJvdWdoXCIgYW5kIHRSTkEtYmFzZWQgdGhlcmFwaWVzLCBzdG9vZCBvdXQuIFwiUmVhZC10aHJvdWdoXCIgdGhlcmFwaWVzIGFpbSB0byBieXBhc3MgcHJlbWF0dXJlIHN0b3AgY29kb25zIHRoYXQgcHJldmVudCBmdWxsIHByb3RlaW4gcHJvZHVjdGlvbiwgb2ZmZXJpbmcgYSB3YXkgdG8gcmVzdG9yZSB0aGUgZnVuY3Rpb24gb2YgY3JpdGljYWwgcHJvdGVpbnMgbGlrZSBDRlRSIGluIENGLiBUaGlzIGFwcHJvYWNoIGhhcyB0aGUgcG90ZW50aWFsIHRvIHRyZWF0IGEgYnJvYWQgcmFuZ2Ugb2YgZ2VuZXRpYyBkaXNlYXNlcyBjYXVzZWQgYnkgc2ltaWxhciBtdXRhdGlvbnMuIFRoZSB0Uk5BLWJhc2VkIHRoZXJhcHkgaXMgZXZlbiBtb3JlIHByZWNpc2UsIHRhcmdldGluZyBtUk5BIHRvIGNvcnJlY3QgZmF1bHR5IGNvZG9ucyB3aXRob3V0IGFsdGVyaW5nIHRoZSBETkEsIG1ha2luZyBpdCBzYWZlciBmb3IgbG9uZy10ZXJtIHVzZS4gVGhpcyBmbGV4aWJpbGl0eSwgYWxvbmcgd2l0aCB0aGUgYWJpbGl0eSB0byBhcHBseSB0aGVzZSB0aGVyYXBpZXMgYmV5b25kIENGLCBicm9hZGVuZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgaG93IHN1Y2ggc3RyYXRlZ2llcyBjYW4gcmV2b2x1dGlvbml6ZSB0cmVhdG1lbnRzIGZvciBnZW5ldGljIGRpc29yZGVycy5JZ25hdG92YSBoaWdobGlnaHRlZCwgdGhhdCB1c2luZyBjZWxsIG1vZGVscyBjbG9zZWx5IHJlc2VtYmxpbmcgcHJvcGVydGllcyBvZiB0aGUgY2VsbCB0eXBlcyB0YXJnZXRlZCBieSBvdXIgdGhlcmFweSBpcyBpbXBvcnRhbnQgZm9yIGVuc3VyaW5nIGFwcGxpY2FiaWxpdHkgb2Ygb3VyIGFwcHJvYWNoIHRvIHBhdGllbnQgY2VsbHMgYW5kIGl0cyBzYWZldHkuIEEga2V5IGZvY3VzIHRocm91Z2hvdXQgdGhlIGRpc2N1c3Npb24gd2FzIHNhZmV0eS4gUHJvZi4gSWduYXRvdmEgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBlbnN1cmluZyB0aGF0IHRoZSB0aGVyYXBpZXMgYXJlIGhpZ2hseSBzcGVjaWZpYywgdGFyZ2V0aW5nIG9ubHkgdGhlIGRlZmVjdGl2ZSBjb2RvbnMgd2hpbGUgYXZvaWRpbmcgbmF0dXJhbCBzdG9wIGNvZG9ucyB0byBwcmV2ZW50IHVuY29udHJvbGxlZCBwcm90ZWluIHByb2R1Y3Rpb24uIE1vcmVvdmVyLCB0aGVpciBjYXJlZnVsIGNvbnNpZGVyYXRpb24gb2YgZGVsaXZlcnkgc3lzdGVtcyBmdXJ0aGVyIGRlbW9uc3RyYXRlZCB0aGVpciBjb21taXRtZW50IHRvIG1pbmltaXppbmcgcmlza3MgbGlrZSB0b3hpY2l0eSBpbiB1bmludGVuZGVkIG9yZ2Fucy4gVGhlaXIgbWV0aWN1bG91cyBhcHByb2FjaCB0byBzYWZldHkgaGFzIGluZmx1ZW5jZWQgaG93IHdlIHRoaW5rIGFib3V0IGRldmVsb3BpbmcgYW5kIGFwcGx5aW5nIHRoZXNlIHRoZXJhcGllcywgbWFraW5nIGl0IGNsZWFyIHRoYXQgZW5zdXJpbmcgcGF0aWVudCBzYWZldHkgaXMgYXMgY3JpdGljYWwgYXMgYWNoaWV2aW5nIHRoZXJhcGV1dGljIHN1Y2Nlc3MuPC9wPl0sXG4gICAgaW1wbGVtZW50YXRpb246IFwiUHJvZi4gSWduYXRvdmEncyBwcmFjdGljYWwgYWR2aWNlIG9uIGNlbGwgY3VsdHVyZSBoYWQgYSB0cmFuc2Zvcm1hdGl2ZSBpbXBhY3Qgb24gb3VyIHByb2plY3QuIEJ5IGFkb3B0aW5nIGhlciBtZXRob2QgZm9yIENGQkU0MW8tIGNlbGxzIGFuZCBpbXByb3Zpbmcgb3VyIGxhYidzIHN0ZXJpbGl6YXRpb24gcHJvdG9jb2xzLCB3ZSBzdWNjZXNzZnVsbHkgZXN0YWJsaXNoZWQgdGhlIGNlbGwgbGluZSBhbmQgc2lnbmlmaWNhbnRseSByZWR1Y2VkIHRoZSByaXNrIG9mIGNvbnRhbWluYXRpb24uIEluIGFkZGl0aW9uLCBoZXIgZW1waGFzaXMgb24gc2FmZXR5IGluIGdlbmUgdGhlcmFweSBndWlkZWQgdXMgdG8gcmV2aWV3IG91ciBQcmltZSBFZGl0aW5nIGNvbnN0cnVjdCBhbmQgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApIGRlc2lnbi4gV2UgZm9jdXNlZCBvbiBtaW5pbWl6aW5nIHRveGljaXR5IGFuZCBvZmYtdGFyZ2V0IGVmZmVjdHMgd2hpbGUgZW5zdXJpbmcgcHJlY2lzZSB0YXJnZXRpbmcgb2YgbHVuZyB0aXNzdWVzIGFuZCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBvZiB0aGUgQ0ZUUiBnZW5lLCBtYWtpbmcgb3VyIGFwcHJvYWNoIHNhZmVyIGFuZCBtb3JlIGVmZmljaWVudFwiLFxuICAgIHN1bW1hcnk6IFwiSW4gb3VyIGludGVydmlldyB3aXRoIFByb2YuIERyLiBab3lhIElnbmF0b3ZhIGFuZCBEci4gTmlraGlsIEJoYXJ0aSBmcm9tIHRoZSBJbnN0aXR1dGUgb2YgQmlvY2hlbWlzdHJ5IGFuZCBNb2xlY3VsYXIgQmlvbG9neSBhdCB0aGUgVW5pdmVyc2l0eSBvZiBIYW1idXJnLCB3ZSBhaW1lZCB0byBkZWVwZW4gb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlaXIgcmVzZWFyY2ggb24gY3lzdGljIGZpYnJvc2lzIChDRikgYW5kIGV4cGxvcmUgYWRkaXRpb25hbCBtdXRhdGlvbnMuIFRoZWlyIGlubm92YXRpdmUgYXBwcm9hY2hlcywgcGFydGljdWxhcmx5IHRSTkEtYmFzZWQgdGhlcmFwaWVzLCBhaW0gdG8gcmVzdG9yZSB0aGUgZnVuY3Rpb24gb2YgcHJvdGVpbnMgbGlrZSBDRlRSIGJ5IGJ5cGFzc2luZyBwcmVtYXR1cmUgc3RvcCBjb2RvbnMsIHByZXNlbnRpbmcgcG90ZW50aWFsIHRyZWF0bWVudHMgZm9yIHZhcmlvdXMgZ2VuZXRpYyBkaXNlYXNlcy4gVGhleSBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBwcmVjaXNpb24gaW4gdGhlcmFweSB0byBtaW5pbWl6ZSBzaWRlIGVmZmVjdHMgYW5kIGVuaGFuY2Ugc2FmZXR5LCBlbXBoYXNpemluZyBjYXJlZnVsIGRlbGl2ZXJ5IHN5c3RlbXMgdG8gYXZvaWQgdG94aWNpdHkuIFByb2YuIElnbmF0b3ZhJ3MgcHJhY3RpY2FsIGluc2lnaHRzIGludG8gY2VsbCBjdWx0dXJlIHRlY2huaXF1ZXMgc2lnbmlmaWNhbnRseSBpbXByb3ZlZCBvdXIgbGFiJ3Mgc3VjY2VzcyB3aXRoIENGQkU0MW8tIGNlbGxzLCBndWlkaW5nIHVzIHRvIGVuaGFuY2Ugc3RlcmlsaXphdGlvbiBwcm90b2NvbHMgYW5kIHJlZmluZSBvdXIgUHJpbWUgRWRpdGluZyBjb25zdHJ1Y3RzLiBUaGlzIHRyYW5zZm9ybWF0aXZlIGV4Y2hhbmdlIHVuZGVyc2NvcmVkIHRoZSBjcml0aWNhbCBiYWxhbmNlIGJldHdlZW4gYWNoaWV2aW5nIHRoZXJhcGV1dGljIHN1Y2Nlc3MgYW5kIGVuc3VyaW5nIHBhdGllbnQgc2FmZXR5LlwiLFxuICAgIGxhbmd1YWdlOiBcImVuXCIsXG4gICAgaW50ZXJ2aWV3OiA8PlxuICAgICAgPFFhQm94IHE9XCJXZSBoYXZlIGhlYXJkIHlvdSBhcmUgcGFzc2lvbmF0ZSBhYm91dCBpR0VNLiBXaGF0IGluc3BpcmVkIHlvdSB0byBnZXQgaW52b2x2ZWQsIGFuZCB3aGF0IGhhcyB5b3VyIGV4cGVyaWVuY2UgYmVlbiBsaWtlIHdpdGggdGhlIGNvbXBldGl0aW9uP1wiIGE9XCJNeSBqb3VybmV5IHdpdGggaUdFTSBiZWdhbiB3aGVuIEkgbW92ZWQgdG8gSGFtYnVyZyBpbiAyMDE0LiBCYWNrIHRoZW4sIEhhbWJ1cmcgZGlkIG5vdCBoYXZlIGl0cyBvd24gaUdFTSB0ZWFtLiBEZXNwaXRlIEhhbWJ1cmcgbGFja2luZyBhbiBpR0VNIHByZXNlbmNlLCB0aGVyZSB3ZXJlIG1vdGl2YXRlZCBzdHVkZW50cyB3aG8gd2VyZSBlYWdlciB0byBlc3RhYmxpc2ggYSB0ZWFtLiBXZSBzdGFydGVkIHF1aXRlIGxhdGUgd2l0aCBtZSBhcyBhIHByaW5jaXBhbCBpbnN0cnVjdG9yLCBhcm91bmQgQXByaWwsIHdpdGggdGhlIGNvbXBldGl0aW9uIHNjaGVkdWxlZCBmb3IgT2N0b2Jlciwgc28gd2UgaGFkIGxpbWl0ZWQgdGltZS4gSG93ZXZlciwgd2UgbWFuYWdlZCB0byBmb3JtIGEgdGVhbSBhbmQgcGFydGljaXBhdGUuIEZvcnR1bmF0ZWx5LCB3ZSB3ZXJlIHN1Y2Nlc3NmdWwgaW4gY29udmluY2luZyB0aGUgdW5pdmVyc2l0eSBhZG1pbmlzdHJhdGlvbiB0byBlc3RhYmxpc2ggYSBzdGVhZHkgc3VwcG9ydCBmb3IgdGhlIGluaXRpYXRpdmUsIHdoaWNoIGVuc3VyZWQgc3RhYmxlIGZ1bmRpbmcsIGluY2x1ZGluZyBjb3ZlcmluZyByZWdpc3RyYXRpb24gZmVlcyBlYXJseSBvbi4gVGhpcyBmaW5hbmNpYWwgYW5kIGxvZ2lzdGljYWwgc3VwcG9ydCBnYXZlIHRoZSB0ZWFtIHRoZSBzZWN1cml0eSB0byBmb2N1cyBvbiB0aGVpciBwcm9qZWN0cy4gT3ZlciB0aGUgeWVhcnMsIHRoZSBIYW1idXJnIGlHRU0gdGVhbSBoYXMgYmVjb21lIGEgd2VsbC1rbm93biBhbmQgcmVzcGVjdGVkIGdyb3VwIGF0IHRoZSB1bml2ZXJzaXR5LiBJdCBpcyBhIGNyZWF0aXZlIGVudmlyb25tZW50IHdoZXJlIHN0dWRlbnRzIGNhbiBwdXNoIHRoZSBib3VuZGFyaWVzIG9mIHNjaWVuY2UgdGhyb3VnaCBpbnRlcmVzdGluZyBhbmQgaW1wYWN0ZnVsIHByb2plY3RzLiBJIG1vdmVkIG9uIHRvIG90aGVyIGR1dGllcyBhZnRlciBzZXZlcmFsIHllYXJzIG9mIHN1cGVydmlzaW9uLCBidXQgSSBhbSBwcm91ZCB0byBoYXZlIHBsYXllZCBhIHJvbGUgaW4gaXRzIGZvdW5kYXRpb24uIFRoZSB1bml2ZXJzaXR5IGhhcyByZWNvZ25pemVkIGlHRU0gd2l0aGluIHRoZSBjdXJyaWN1bHVtIG9mIE1vbGVjdWxhciBMaWZlIFNjaWVuY2UsIGFsbG93aW5nIHN0dWRlbnRzIHRvIGVhcm4gY3JlZGl0IHBvaW50cyBhbmQgaGF2ZSB0aGVpciB3b3JrIHJlZmxlY3RlZCBvbiB0aGVpciB0cmFuc2NyaXB0cy4gVGhpcyBhY2tub3dsZWRnbWVudCBmdXJ0aGVyIGluY2VudGl2aXplcyBzdHVkZW50cyBhbmQgZW5zdXJlcyB0aGF0IHRoZWlyIGVmZm9ydHMgYXJlIGZvcm1hbGx5IHJlY29nbml6ZWQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBiZWVuIGhhdmluZyB0cm91YmxlIHdpdGggQ0ZCRTQxby0gY2VsbHMgbm90IGFkaGVyaW5nIHdlbGwuIEFueSBhZHZpY2U/XCIgYT1cIkNGQkU0MW8tIGNlbGxzIGNhbiBiZSB0cmlja3kgd2hlbiBpdCBjb21lcyB0byBhZGhlc2lvbiwgYnV0IHlvdSBkbyBub3QgbmVjZXNzYXJpbHkgbmVlZCB0byBjb2F0IHlvdXIgY2VsbCBjdWx0dXJlIHZlc3NlbHMgd2l0aCBmaWJyb25lY3RpbiB1bmxlc3MgeW91IGFyZSBkb2luZyB2ZXJ5IHNwZWNpZmljIHN0dWRpZXMsIHN1Y2ggYXMgcHJpbWFyeSBjdWx0dXJlIGNvbXBhcmlzb25zLiBGb3Igc2VlZGluZywgd2Ugc2ltcGxpZnkgdGhlIHByb2Nlc3MgYnkgc2tpcHBpbmcgdGhlIFBCUyB3YXNoaW5nIHN0ZXAuIEluc3RlYWQsIHdlIHNlZWQgdGhlIGNlbGxzIGRpcmVjdGx5IGludG8gRE1FTSBzdXBwbGVtZW50ZWQgd2l0aCAxMCUgZmV0YWwgY2FsZiBzZXJ1bSAoRkNTKSBhbmQgc3RyZXB0b215Y2luLiBUaGVzZSBjZWxscyBtYXkgdGFrZSBhIGZldyBkYXlzIHRvIHJlY292ZXIgYW5kIGJlZ2luIGFkaGVyaW5nIHByb3Blcmx5LCB0aGF0IHVzdWFsbHkgd29ya3Mgd2l0aG91dCByZXF1aXJpbmcgZXh0cmEgY29hdGluZ3MuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBtYW5hZ2UgZnVuZ2FsIGNvbnRhbWluYXRpb24gaW4gQUxJIGN1bHR1cmVzP1wiIGE9XCJGdW5nYWwgY29udGFtaW5hdGlvbiBpcyBvbmUgb2YgdGhlIG1vcmUgZnJ1c3RyYXRpbmcgY2hhbGxlbmdlcyBpbiBjZWxsIGN1bHR1cmUgYmVjYXVzZSBpdCBpcyBkaWZmaWN1bHQgdG8gZWxpbWluYXRlIG9uY2UgaXQgdGFrZXMgcGxhY2UuIEluIGNhc2VzIG9mIGNvbnRhbWluYXRpb24sIHRoZSBiZXN0IGNvdXJzZSBvZiBhY3Rpb24gaXMgdG8gc2h1dCBkb3duIGFsbCBvbmdvaW5nIGNlbGwgY3VsdHVyZSB3b3JrIGFuZCBjbGVhbiBldmVyeXRoaW5nIHRob3JvdWdobHkuIFlvdSBzaG91bGQgc3RhcnQgYnkgcnVubmluZyBhIHN0ZXJpbGl6YXRpb24gY3ljbGUgaW4geW91ciBpbmN1YmF0b3JzLCB3aGljaCBpZGVhbGx5IHNob3VsZCByZWFjaCBhcm91bmQgMTgwXHUwMEIwQy4gVGhpcyBzaG91bGQga2lsbCBhbnkgZnVuZ2FsIHNwb3Jlcy4gSWYgeW91ciBpbmN1YmF0b3JzIGRvIG5vdCBoYXZlIHRoYXQgY2FwYWJpbGl0eSwgeW91IHdpbGwgbmVlZCB0byBhdXRvY2xhdmUgZXZlcnl0aGluZyBhbmQgY2xlYW4gYWxsIHN1cmZhY2VzIGFuZCBlcXVpcG1lbnQgbXVsdGlwbGUgdGltZXMgd2l0aCBldGhhbm9sLiBJdCBpcyBjcnVjaWFsIHRvIHJlbW92ZSBhbGwgdHJhY2VzIG9mIGNvbnRhbWluYXRpb24sIGFzIGZ1bmdhbCBzcG9yZXMgY2FuIHNwcmVhZCByYXBpZGx5LiBUaGUga2V5IGlzIHByZXZlbnRpb24gdGhyb3VnaCByaWdvcm91cyBjbGVhbmluZyBhbmQgbWFpbnRlbmFuY2UgcHJvdG9jb2xzLCBhbmQgdW5mb3J0dW5hdGVseSwgc29tZXRpbWVzIHRoZSBvbmx5IHNvbHV0aW9uIGlzIHRvIHN0YXJ0IGZyZXNoIHdpdGggbmV3IGN1bHR1cmVzIGFmdGVyIGEgZnVsbCBkZWNvbnRhbWluYXRpb24gcm91bmQuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgeW91IGN1cnJlbnRseSByZXNlYXJjaGluZz9cIiBhPVwiT3VyIHByaW1hcnkgcmVzZWFyY2ggZm9jdXMgaXMgb24gZ2VuZXRpYyBkaXNlYXNlcyBjYXVzZWQgYnkgbm9uc2Vuc2UgbXV0YXRpb25zLCBhbHNvIGtub3duIGFzIHByZW1hdHVyZSB0ZXJtaW5hdGlvbiBjb2RvbnMgKFBUQ3MpLiBXaGlsZSBjeXN0aWMgZmlicm9zaXMgKENGKSBpcyBhIG1ham9yIGFyZWEgb2YgaW50ZXJlc3QgZHVlIHRvIGl0cyBoaWdoIHByZXZhbGVuY2UgYW5kIHRoZSBpbXBhY3Qgb2Ygc3BlY2lmaWMgbXV0YXRpb25zIGxpa2UgdGhlIEY1MDhkZWwsIG91ciByZXNlYXJjaCBleHRlbmRzIGZhciBiZXlvbmQgQ0YuIFdlIGFyZSB0YXJnZXRpbmcgYSBicm9hZGVyIGNhdGVnb3J5IG9mIGdlbmV0aWMgZGlzZWFzZXMgdGhhdCBzaGFyZSBhIGNvbW1vbiBmZWF0dXJlXHUyMDE0ZWFybHkgc3RvcCBjb2RvbnMgdGhhdCBsZWFkIHRvIHByb2R1Y3Rpb24gb2YgdHJ1bmNhdGVkIHByb3RlaW5zLCB3aGljaCBhcmUgbm9uLWZ1bmN0aW9uYWwuIEluIENGLCBmb3IgaW5zdGFuY2UsIG91ciBtYWluIGdvYWwgaXMgdG8gcmVzdG9yZSBmdWxsLWxlbmd0aCBDRlRSIHByb3RlaW4gcHJvZHVjdGlvbiBpbiBwcmltYXJ5IHBhdGllbnQtZGVyaXZlZCBjZWxscyBiZWFyaW5nIHZhcmlvdXMgUFRDcy4gT25lIGFwcHJvYWNoIHdlIGFyZSBleHBsb3JpbmcgaXMga25vd24gYXMgYSAncmVhZC10aHJvdWdoJyB0aGVyYXB5LCB3aGljaCBpbnZvbHZlcyBieXBhc3NpbmcgdGhlIHByZW1hdHVyZSBzdG9wIGNvZG9uIHNvIHRoYXQgdGhlIGNlbGwgY2FuIGNvbnRpbnVlIHByb2R1Y2luZyB0aGUgZnVsbCBwcm90ZWluLiBUaGlzIHN0cmF0ZWd5IGlzIGFwcGxpY2FibGUgbm90IG9ubHkgdG8gQ0YgYnV0IGNhbiBiZSB1c2VkIGluIG1hbnkgb3RoZXIgZ2VuZXRpYyBkaXNvcmRlcnMgY2F1c2VkIGJ5IG5vbnNlbnNlIG11dGF0aW9ucy4gQnJpZWZseSwgdGhlIHJlYWQtdGhyb3VnaCB0aGVyYXBpZXMgd2UgZGV2ZWxvcCBhcmUgdFJOQS1iYXNlZCB0aGVyYXBldXRpYyBhcHByb2FjaGVzLCBpbiB3aGljaCB3ZSBkZXNpZ24gc3VwcHJlc3NvciB0cmFuc2ZlciBSTkFzIChzdXAtdFJOQXMpIHRvIHNlbGVjdGl2ZWx5IHRhcmdldCBhbmQgcmVhZCB0aHJvdWdoIFBUQ3MsIHJlc3RvcmluZyB0aGUgcHJvZHVjdGlvbiBvZiBmdWxsLWxlbmd0aCBkaXNlYXNlIHByb3RlaW4gd2l0aG91dCBhbHRlcmluZyB0aGUgbmF0dXJhbCB0ZXJtaW5hdGlvbiBjb2RvbnMuIEl0IGlzIGEgaGlnaGx5IHNwZWNpZmljIGFuZCBzYWZlIG1ldGhvZCwgYW5kIGJlY2F1c2Ugd2UgYXJlIHRhcmdldGluZyBtUk5BIHJhdGhlciB0aGFuIEROQSwgaXQgYWxsb3dzIGZvciB0ZXJtaW5hdGluZyB0aGUgdGhlcmFwaWVzIGJ5IGFueSB1bmZvcmVzZWVuIHNpZGUgZWZmZWN0cy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IGFyZSB5b3VyIGRvd25zdHJlYW0gdmFsaWRhdGlvbiBtZXRob2RzP1wiIGE9XCJBZnRlciB3ZSBoYXZlIGRldmVsb3BlZCBhIHRoZXJhcGV1dGljIGFwcHJvYWNoLCB0aGUgZmlyc3Qgc3RlcCBpcyB0byB2YWxpZGF0ZSB3aGV0aGVyIGl0IHdvcmtzIGF0IHRoZSBwcm90ZWluIGxldmVsLiBGaXJzdCwgd2UgY2hlY2sgd2hldGhlciB0aGUgZnVsbC1sZW5ndGggcHJvdGVpbiBpcyBiZWluZyBwcm9kdWNlZC4gRm9yIENGVFIsIGZvciBleGFtcGxlLCB3ZSBsb29rIGF0IHdoZXRoZXIgdGhlIHByb3RlaW4gaXMgYmVpbmcgY29ycmVjdGx5IHN5bnRoZXNpemVkLiBXZSBhbHNvIGNvbmR1Y3QgZnVuY3Rpb25hbCB0ZXN0cyB0byBlbnN1cmUgaXRzIGZ1bmN0aW9uYWxpdHkuIEZvciBDRlRSIHNwZWNpZmljYWxseSwgd2UgdGVzdCB0aGUgYWN0aXZpdHkgb2YgdGhlIGlvbiBjaGFubmVsIGJ5IG1lYXN1cmluZyBpb24gZmxvdyB0aHJvdWdoIHRoZSBjZWxsIG1lbWJyYW5lLiBBbm90aGVyIHRlc3QgaW52b2x2ZXMgbW9uaXRvcmluZyB0aGUgaGVpZ2h0IG9mIHRoZSBhaXItbGlxdWlkIGludGVyZmFjZSAoQUxJKSBjdWx0dXJlcywgd2hpY2ggcmVwb3J0cyBvbiB0aGUgaW9uaWMgYmFsYW5jZSBhY3Jvc3MgdGhlIG1lbWJyYW5lLiBUaGVzZSBmdW5jdGlvbmFsIHRlc3RzIGFyZSBjcnVjaWFsIGZvciBjb25maXJtaW5nIHRoYXQgdGhlIHRoZXJhcHkgaXMgbm90IG9ubHkgbGVhZGluZyB0byBhIHByb2R1Y3Rpb24gb2YgdGhlIHByb3RlaW4gYnV0IGlzIGFsc28gcmVzdG9yaW5nIGl0cyBmdW5jdGlvbi5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgb2Z0ZW4gd291bGQgcGF0aWVudHMgbmVlZCB0byB1bmRlcmdvIHRoaXMgdGhlcmFweT9cIiBhPVwiU2luY2Ugb3VyIGFwcHJvYWNoIGlzIGRlc2lnbmVkIHRvIGNvcnJlY3Qgbm9uc2Vuc2UgbXV0YXRpb25zIGR1cmluZyB0cmFuc2xhdGlvbiB0aGUgdGhlcmFweSB3b3VsZCBuZWVkIHRvIGJlIGFkbWluaXN0ZXJlZCBwZXJpb2RpY2FsbHkuIEJhc2VkIG9uIG91ciBjdXJyZW50IHVuZGVyc3RhbmRpbmcsIHdlIGFudGljaXBhdGUgdGhhdCBwYXRpZW50cyBtaWdodCBuZWVkIHRyZWF0bWVudCBldmVyeSB0aHJlZSB0byBmb3VyIHdlZWtzLCBidXQgdGhpcyBoYXMgdG8gYmUgZGV0ZXJtaW5lZCBpbiBjbGluaWNhbCBzZXR0aW5ncy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgZG9lcyB5b3VyIHRSTkEtYmFzZWQgYXBwcm9hY2ggYWRkcmVzcyBzYWZldHkgaXNzdWVzP1wiIGE9XCJTYWZldHkgaXMgdGhlIHRvcCBwcmlvcml0eSBvZiBvdXIgdFJOQS1iYXNlZCB0aGVyYXBldXRpYyBhcHByb2FjaC4gQXQgbW9sZWN1bGFyIGxldmVsLCB3ZSBlbnN1cmUgdGhhdCB0aGUgc3VwcHJlc3NvciB0Uk5BcyB3ZSB1c2UgYXJlIGhpZ2hseSBzcGVjaWZpY1x1MjAxNHRoZXkgYXJlIGVuZ2luZWVyZWQgdG8gdGFyZ2V0IG9ubHkgUFRDcyB3aXRob3V0IGFmZmVjdGluZyBuYXR1cmFsIHN0b3AgY29kb25zLCB3aGljaCBhcmUgZXNzZW50aWFsIGZvciB0ZXJtaW5hdGluZyB0aGUgc3ludGhlc2lzIG9mIGV2ZXJ5IHByb3RlaW4uIEluIGFkZGl0aW9uIHRvIHRoZSBzcGVjaWZpY2l0eSwgd2UgYWRkcmVzcyB0aGUgaW1tdW5lIHJlc3BvbnNlIHRoYXQgY2FuIGJlIHRyaWdnZXJlZCBieSBhbnkgbnVjbGVpYyBhY2lkcywgaW5jbHVkaW5nIHRSTkEuIEdlbmVyYWxseSwgdFJOQSBoYXMgYSBsb3dlciBpbW11bm9nZW5pY2l0eSB0aGFuIG90aGVyIG1vbGVjdWxlcywgc3VjaCBhcyBtUk5BLCBiZWNhdXNlIG9mIGl0cyBwYXJ0aWFsbHkgZG91YmxlLXN0cmFuZGVkIHN0cnVjdHVyZSwgd2hpY2ggcmVkdWNlcyB0aGUgYWN0aXZhdGlvbiBvZiB0aGUgaW5uYXRlIGltbXVuZSByZWFjdGlvbi4gQW5vdGhlciBjcml0aWNhbCBzYWZldHkgYXNwZWN0IGlzIHRoZSBzYWZldHkgb2YgdGhlIGRlbGl2ZXJ5IHN5c3RlbS4gV2UgbmVlZCB0byBlbnN1cmUgdGhhdCB0aGUgdFJOQSByZWFjaGVzIHRoZSByaWdodCB0eXBlIG9mIGNlbGxzIHdpdGhvdXQgY2F1c2luZyB0b3hpY2l0eSBvciBhY2N1bXVsYXRpbmcgaW4gdW50YXJnZXRlZCB0aXNzdWVzIGxpa2UgdGhlIGxpdmVyLCB3aGljaCBpcyBhIGNvbW1vbiBpc3N1ZSB3aXRoIG1hbnkgZ2VuZSB0aGVyYXBpZXMuIFdlIGFyZSBhbHNvIHdvcmtpbmcgb24gb3B0aW1pemluZyBvdXIgZGVsaXZlcnkgbWV0aG9kcy4gVGhpcyBwcmVjaXNpb24gaXMga2V5IHRvIG1pbmltaXppbmcgc2lkZSBlZmZlY3RzIGFuZCBlbnN1cmluZyB0aGUgc2FmZXR5IG9mIG91ciB0aGVyYXB5LlwiIC8+XG4gICAgICA8UWFCb3ggcT1cIldoeSBmb2N1cyBvbiBDRiByZXNlYXJjaD9cIiBhPVwiT3VyIGludm9sdmVtZW50IHdpdGggQ0YgcmVzZWFyY2ggZW1lcmdlZCBzb21ld2hhdCBieSBjaGFuY2UuIEluaXRpYWxseSwgd2Ugd2VyZSBkZWVwbHkgaW50ZXJlc3RlZCBpbiB1bmRlcnN0YW5kaW5nIHRoZSB2YXJpYWJpbGl0eSBpbiBkaXNlYXNlLCBzcGVjaWZpY2FsbHkgd2h5IGluZGl2aWR1YWxzIHdpdGggdGhlIHNhbWUgZ2VuZXRpYyBtdXRhdGlvbnMgc2hvdyBkaWZmZXJlbnQgc3ltcHRvbXMgb3IgcHJlc2VudCBkaWZmZXJlbnQgZGlzZWFzZSBzZXZlcml0eS4gRXZlbiBzaWJsaW5ncyBvciB0d2lucyB3aXRoIHVzdWFsbHkgc2ltaWxhciBnZW5ldGljIG1ha2V1cCBleGhpYml0IGRpZmZlcmVudCBkaXNlYXNlIG91dGNvbWVzLiBDRiBiZWNhbWUgYSBmb2N1cyBhcyB3ZSBkZWx2ZWQgaW50byB0aGUgbW9sZWN1bGFyIG1lY2hhbmlzbSBvZiBDRlRSIGJpb3N5bnRoZXNpcy4gSG93ZXZlciwgb3VyIHdvcmsgaXMgbm90IGNvbmZpbmVkIHRvIENGXHUyMDE0d2UgYXJlIHVzaW5nIHRoZSBrbm93bGVkZ2Ugd2UgZ2FpbiBmcm9tIENGIHJlc2VhcmNoIGFuZCBvdXIgZXhwZXJ0aXNlIGluIHByb3RlaW4gc3ludGhlc2lzIGFuZCB0cmFuc2xhdGlvbiB0byBkZXZlbG9wIHRyZWF0bWVudHMgZm9yIG90aGVyIGdlbmV0aWMgZGlzZWFzZXMgY2F1c2VkIGJ5IG5vbnNlbnNlIG11dGF0aW9ucy4gVGhlIG1lY2hhbmlzbXMgYmVoaW5kIHRoZXNlIGRpc2Vhc2VzIGFyZSBvZnRlbiBzaW1pbGFyLCBzbyB0aGUgdGhlcmFwZXV0aWMgc3RyYXRlZ2llcyB3ZSBhcmUgZXhwbG9yaW5nIGNhbiBwb3RlbnRpYWxseSBiZSBhcHBsaWVkIHRvIGEgcmFuZ2Ugb2YgY29uZGl0aW9ucy5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJXaGF0IGRvIHlvdSBzZWUgYXMgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlIGluIHRyYW5zbGF0aW5nIHlvdXIgcmVzZWFyY2ggdG8gcmVhbC13b3JsZCBhcHBsaWNhdGlvbnM/XCIgYT1cIlNhZmV0eSBpcyB0aGUgbW9zdCBjcml0aWNhbCBodXJkbGUgaW4gdHJhbnNsYXRpbmcgb3VyIHJlc2VhcmNoIGZyb20gdGhlIGxhYiB0byBjbGluaWNhbCBhcHBsaWNhdGlvbnMuIEJlZm9yZSBhbnkgdGhlcmFweSBjYW4gYmUgY29uc2lkZXJlZCBmb3IgaHVtYW4gdXNlLCB3ZSBuZWVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzIGJvdGggc2FmZSBhbmQgZWZmZWN0aXZlLiBJbiB0ZXJtcyBvZiBlZmZpY2FjeSwgd2UgaGF2ZSBzcGVjaWZpYyB0YXJnZXRzIHdlIG5lZWQgdG8gbWVldCBmb3IgZWFjaCBkaXNlYXNlLiBGb3IgQ0YsIGZvciBleGFtcGxlLCB5b3Ugb25seSBuZWVkIHRvIHJlc3RvcmUgYWJvdXQgMTAlIG9mIG5vcm1hbCBDRlRSIHByb3RlaW4gZnVuY3Rpb24gdG8gYWxsZXZpYXRlIHRoZSBzeW1wdG9tcy4gSG93ZXZlciwgaW4gb3RoZXIgZGlzZWFzZXMsIHRoZSB0aGVyYXBldXRpYyB0aHJlc2hvbGQgaXMgbXVjaCBoaWdoZXIsIHNvbWV0aW1lcyByZXF1aXJpbmcgbmVhci1jb21wbGV0ZSBwcm90ZWluIHJlc3RvcmF0aW9uLiBBbm90aGVyIHNpZ25pZmljYW50IGNoYWxsZW5nZSBpcyB0aGUgc21hbGwgbnVtYmVyIG9mIHBhdGllbnRzIGFmZmVjdGVkIGJ5IG1hbnkgcmFyZSBnZW5ldGljIGRpc2Vhc2VzLCB3aGljaCByZXF1aXJlcyByZWd1bGF0aW9uIGJvZGllcyB0byBjb25zaWRlciB0aGlzIGFuZCByZWRlZmluZSBjb25kaXRpb25zIGZvciBjbGluaWNhbCB0cmlhbHMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgZ29vZCBwcmVjbGluaWNhbCBtb2RlbHMgZm9yIENGIHJlc2VhcmNoLCBpbiB5b3VyIHZpZXc/XCIgYT1cIlByZWNsaW5pY2FsIG1vZGVscyBhcmUgZXNzZW50aWFsIGZvciB0ZXN0aW5nIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIGFueSBuZXcgdGhlcmFweS4gRm9yIENGIHJlc2VhcmNoLCBvbmUgb2YgdGhlIG1vc3QgcmVsaWFibGUgbW9kZWxzIGlzIHRoZSBwYXRpZW50LWRlcml2ZWQgYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMsIHdoaWNoIHJlcGxpY2F0ZSB0aGUgbHVuZyBlbnZpcm9ubWVudCBhbmQgYXJlIG11dGF0aW9uLXNwZWNpZmljLiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgQ0YgRm91bmRhdGlvbiAoVVNBKSBhbmQgYWxsb3cgcmVzZWFyY2hlcnMgdG8gdGVzdCB0aGVyYXBpZXMgaW4gYSBjb250ZXh0IHRoYXQgY2xvc2VseSBtaW1pY3MgdGhlIGh1bWFuIGx1bmcuIFdoaWxlIEFMSSBjdWx0dXJlcyBhcmUgZXhjZWxsZW50IG1vZGVscywgdGhleSBhcmUgYWxzbyBjaGFsbGVuZ2luZyB0byBncm93IGFuZCByZXF1aXJlIGFib3V0IHR3byBtb250aHMgdG8gYmUgc2V0IHVwIHByb3Blcmx5LiBGb3IgZWFybGllci1zdGFnZSBleHBlcmltZW50cywgd2Ugb2Z0ZW4gdXNlIHNpbXBsZXIgY2VsbCBsaW5lcyB0aGF0IGFyZSBlYXNpZXIgdG8gaGFuZGxlLiBUaGVzZSBsaW5lcyBhbGxvdyB1cyB0byBwZXJmb3JtIHN0dWRpZXMgYXQgbW9sZWN1bGFyIGxldmVsLCBzdWNoIGFzIHRlc3RpbmcgaG93IHdlbGwgYSB0aGVyYXB5IHJlc3RvcmVzIHByb3RlaW4gcHJvZHVjdGlvbi4gV2hpbGUgdGhleSBkbyBub3QgZnVsbHkgcmVwcmVzZW50IHRoZSBwcmltYXJ5IGVwaXRoZWxpYWwgZW52aXJvbm1lbnQgb2YgdGhlIGx1bmdzLCB0aGV5IGFyZSB1c2VmdWwgZm9yIGluaXRpYWwgdmFsaWRhdGlvbiBzdGVwcyBiZWZvcmUgbW92aW5nIG9uIHRvIG1vcmUgY29tcGxleCBtb2RlbHMgbGlrZSBBTEkgY3VsdHVyZXMuXCIgLz5cbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgeW91ciB0aG91Z2h0cyBvbiB1c2luZyBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSB2ZXJzdXMgb3RoZXIgZGVsaXZlcnkgc3lzdGVtcywgbGlrZSBBQVYgdmVjdG9ycz9cIiBhPVwiTGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgYXJlIGEgcHJvbWlzaW5nIGRlbGl2ZXJ5IHN5c3RlbSBmb3IgbWFueSBnZW5ldGljIHRoZXJhcGllcywgYnV0IHRoZXkgaGF2ZSBsaW1pdGF0aW9ucy4gV2hpbGUgTE5QcyBjYW4gZWZmZWN0aXZlbHkgdGFyZ2V0IGNlcnRhaW4gb3JnYW5zLCBzdWNoIGFzIHRoZSBsdW5ncyBhbmQgbGl2ZXIsIHRoZXkgY2Fubm90IGNyb3NzIHRoZSBibG9vZC1icmFpbiBiYXJyaWVyIGFuZCB0aHVzIHVuc3VpdGFibGUgKGZvciBub3cpIHRvIHRhcmdldCBuZXVyb25hbCBwYXRob2xvZ2llcy4gRm9yIHRoZXNlIGNvbmRpdGlvbnMsIGFkZW5vLWFzc29jaWF0ZWQgdmlyYWwgKEFBVikgdmVjdG9ycyBtYXkgYmUgbW9yZSBlZmZlY3RpdmUsIGFzIHRoZXkgZXhoaWJpdCBhbiBpbmhlcmVudCBhYmlsaXR5IHRvIGNyb3NzIHRoZSBibG9vZC1icmFpbiBiYXJyaWVyLiBGb3IgQ0Ygc3BlY2lmaWNhbGx5LCB3ZSBoYXZlIHVzZWQgTE5QcyB0byBkZWxpdmVyIHN1cC10Uk5BcyBkaXJlY3RseSB0byB0aGUgbHVuZ3MuIFdlIHRlYW1lZCB1cCB3aXRoIGFuIFVTIGNvbXBhbnkgdGhhdCBkZXZlbG9wcyBzYWZlIExOUHMgdXNlZCBhbHNvIGZvciB2YWNjaW5lcy4gRGVsaXZlcnkgbWV0aG9kcyBsaWtlIGludHJhdHJhY2hlYWwgaW5zdGlsbGF0aW9uXHUyMDE0d2hlcmUgdGhlIExOUHMgYXJlIGludHJvZHVjZWQgaW50byB0aGUgdHJhY2hlYVx1MjAxNGFsbG93IGZvciB0YXJnZXRpbmcgdGhlIGx1bmcgdGlzc3VlIG1vcmUgZGlyZWN0bHksIHdoaWNoIGlzIGNyaXRpY2FsIGZvciB0cmVhdGluZyBDRi5cIiAvPlxuICAgICAgPFFhQm94IHE9XCJIb3cgZG8geW91IHZpZXcgcHJpbWUgZWRpdGluZyBjb21wYXJlZCB0byBvdGhlciBnZW5lIGVkaXRpbmcgdGVjaG5vbG9naWVzP1wiIGE9XCJQcmltZSBlZGl0aW5nIGlzIGFuIGV4Y2l0aW5nIGRldmVsb3BtZW50IGluIHRoZSBmaWVsZCBvZiBnZW5lIGVkaXRpbmcsIGJ1dCBpdCBpcyBpbXBvcnRhbnQgdG8gcmVjb2duaXplIHRoYXQgbm8gc2luZ2xlIGFwcHJvYWNoIGlzIHVuaXZlcnNhbGx5IHN1cGVyaW9yLiBUZWNobm9sb2dpZXMgbGlrZSBwcmltZSBlZGl0aW5nLCBDUklTUFItQ2FzLCBhbmQgb3VyIG93biB0Uk5BLWJhc2VkIHRoZXJhcGllcyBlYWNoIGhhdmUgdGhlaXIgc3RyZW5ndGhzIGFuZCBsaW1pdGF0aW9ucy4gRm9yIGluc3RhbmNlLCBwcmltZSBlZGl0aW5nIG9mZmVycyBhIGhpZ2hseSBwcmVjaXNlIG1ldGhvZCBmb3IgY29ycmVjdGluZyBtdXRhdGlvbnMgZGlyZWN0bHkgYXQgdGhlIEROQSBsZXZlbCwgcG90ZW50aWFsbHkgcHJvdmlkaW5nIGEgb25lLXRpbWUsIGxpZmVsb25nIGN1cmUuIEhvd2V2ZXIsIG91ciBhcHByb2FjaCwgd2hpY2ggZm9jdXNlcyBvbiByZXN0b3JpbmcgbVJOQSB0cmFuc2xhdGlvbiwgZG9lcyBub3QgaW50cm9kdWNlIHBlcm1hbmVudCBjaGFuZ2VzIHRvIHRoZSBnZW5vbWUgYW5kIHVuZm9yZXNlZW4sIGFsc28gaW5kaXZpZHV1bS1zcGVjaWZpYyBzaWRlIGVmZmVjdHMsIGNhbiBiZSBjb3VudGVyYWN0ZWQgYnkgaW1tZWRpYXRlIHRlcm1pbmF0aW9uIG9mIHRoZSB0aGVyYXB5LiBJbiB0dXJuLCBpdCByZXF1aXJlcyBjb250aW51b3VzIHJlLWFkbWluaXN0cmF0aW9uIG92ZXIgdGltZS4gVWx0aW1hdGVseSwgdGhlIHNhZmV0eSBhbmQgZWZmaWNhY3kgb2YgYW55IGFwcHJvYWNoIG11c3QgYmUgY2FyZWZ1bGx5IHdlaWdoZWQuIFdlIGFyZSBub3QgeWV0IGF0IGEgcG9pbnQgd2hlcmUgd2UgY2FuIGRlZmluaXRpdmVseSByYW5rIHRoZXNlIHRlY2hub2xvZ2llcyBiZWNhdXNlIHRoZSBmaWVsZCBpcyBzdGlsbCBldm9sdmluZy4gRWFjaCBhcHByb2FjaCBoYXMgcG90ZW50aWFsLCBhbmQgdGhlIGNob2ljZSBvZiB3aGljaCB0byB1c2Ugd2lsbCBsaWtlbHkgZGVwZW5kIG9uIHRoZSBzcGVjaWZpYyBkaXNlYXNlIGFuZCBtdXRhdGlvbiBiZWluZyB0YXJnZXRlZC5cIiAvPlxuICAgIDwvPixcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCIsXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2ludGVydmlldy1pZ25hdG92YS9pbnRlcnZpZXctaW5nYXRvdmEud2VicCBcIixcbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiJ011a29EaW5vJ1wiLFxuICAgIG5hY2hubmFtZTogXCJUaG9tYXMgTWFsZW5rZSBcIixcbiAgICBqb2I6IFwiUGF0aWVudFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcImFuZCBDRiBBY3RpdmlzdFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ211a29kaW5vJ10sXG4gICAgdGFnOiBcIlBhdGllbnRcIixcbiAgICBoZWFkaW5nOiBcIlNoYXBpbmcgQ0YgVGhlcmFwaWVzOiBMZXNzb25zIExlYXJuZWQgZnJvbSBQYXRpZW50cycgUmVhbC1Xb3JsZCBFeHBlcmllbmNlc1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImRpbm9cIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJMaXZpbmcgd2l0aCBjeXN0aWMgZmlicm9zaXMgaGFzIGJlZW4gYSBqb3VybmV5IG9mIHBlcnNldmVyYW5jZSBhbmQgYWRhcHRhdGlvbi4gRGVzcGl0ZSB0aGUgY2hhbGxlbmdlcywgSSd2ZSBsZWFybmVkIHRoYXQgdGFraW5nIHBlcnNvbmFsIHJlc3BvbnNpYmlsaXR5IGZvciBteSBoZWFsdGgsIHN0YXlpbmcgaW5mb3JtZWQsIGFuZCBlbWJyYWNpbmcgdGhlIGFkdmFuY2VtZW50cyBpbiByZXNlYXJjaCBjYW4gbGVhZCB0byBhIG11Y2gtaW1wcm92ZWQgcXVhbGl0eSBvZiBsaWZlLlwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPk91ciBnb2FsIGluIHJlYWNoaW5nIG91dCB0byBjeXN0aWMgZmlicm9zaXMgKENGKSBwYXRpZW50cyB3YXMgdG8gZ2FpbiBhIGZpcnN0aGFuZCB1bmRlcnN0YW5kaW5nIG9mIHRoZWlyIGRheS10by1kYXkgZXhwZXJpZW5jZXMgbGl2aW5nIHdpdGggdGhlIGNvbmRpdGlvbi4gV2UgYWltZWQgdG8gZXhwbG9yZSBob3cgcmVjZW50IGFkdmFuY2VtZW50cyBpbiB0cmVhdG1lbnRzIGhhdmUgaW1wYWN0ZWQgdGhlaXIgbGl2ZXMgYW5kIHRyYW5zZm9ybWVkIHRoZWlyIGFwcHJvYWNoIHRvIG1hbmFnaW5nIHRoZSBkaXNlYXNlLiBUaGlzIGluaXRpYXRpdmUgaXMgdml0YWwgZm9yIG91ciBwcm9qZWN0LCBhcyBpdCBoZWxwcyB1cyBjb21wcmVoZW5kIHRoZSBzaWduaWZpY2FuY2Ugb2YgdGhlc2UgdHJlYXRtZW50cyBhbmQgdGhlaXIgYnJvYWRlciBpbXBsaWNhdGlvbnMuIEEga2V5IGFzcGVjdCBvZiBvdXIgb3V0cmVhY2ggd2FzIHBhcnRuZXJpbmcgd2l0aCB0aGUgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vYWNjb3VudHMvbG9naW4vP25leHQ9aHR0cHMlM0ElMkYlMkZ3d3cuaW5zdGFncmFtLmNvbSUyRm11a29kaW5vJTJGJmlzX2Zyb21fcmxlXCIgPk11a29EaW5vPC9hPlxuICAgICAgd2hvIGhhcyBleHRlbnNpdmUgcmVhY2ggd2l0aGluIHRoZSBDRiBjb21tdW5pdHkuIFRoaXMgY29sbGFib3JhdGlvbiBlbmFibGVkIHVzIHRvIGRpc3RyaWJ1dGUgb3VyIHN1cnZleSB3aWRlbHkgYW1vbmcgdGhvc2UgYWZmZWN0ZWQsIGFzIHdlIHJlY29nbml6ZWQgdGhhdCB3ZSBjb3VsZCBub3QgY29uZHVjdCBhcyBtYW55IGludGVydmlld3MgYXMgd2UgY291bGQgcmVhY2ggdGhyb3VnaCB0aGUgc3VydmV5LiBXZSBhbHNvIHNvdWdodCB0byBnYXRoZXIgaW5zaWdodHMgb24gcmVzZWFyY2ggcHJpb3JpdGllcyBhbmQgdGhlIGZ1dHVyZSBkaXJlY3Rpb24gb2YgQ0YgdGhlcmFwaWVzLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPkZyb20gdGFsa2luZyB3aXRoIHRoZSBDRiBwYXRpZW50LCB3ZSBnYWluZWQgc29tZSB2YWx1YWJsZSBpbnNpZ2h0cyB0aGF0IGhhdmUgc2hhcGVkIGhvdyB3ZSBtb3ZlIGZvcndhcmQgd2l0aCBvdXIgcHJvamVjdDogXG4gICAgICBGaXJzdGx5LCBoZWFyaW5nIGFib3V0IHRoZSBkYXktdG8tZGF5IGNoYWxsZW5nZXMgd2l0aCBjdXJyZW50IENGIHRyZWF0bWVudHMgd2FzIGV5ZS1vcGVuaW5nLiBJdCBoaWdobGlnaHRlZCBqdXN0IGhvdyBjcnVjaWFsIGl0IGlzIGZvciB1cyB0byBkZXZlbG9wIHRoZXJhcGllcyB0aGF0IGFyZSBub3Qgb25seSBlZmZlY3RpdmUgYnV0IGFsc28gbWFrZSBsaWZlIGVhc2llciBmb3IgcGF0aWVudHMuIFdlXHUyMDE5dmUgdGFrZW4gdGhpcyB0byBoZWFydCBhbmQgYXJlIHdvcmtpbmcgdG8gbWFrZSBvdXIgdHJlYXRtZW50IHByb2Nlc3MgYXMgZWZmaWNpZW50IGFuZCB1c2VyLWZyaWVuZGx5IGFzIHBvc3NpYmxlLiBcbiAgICAgIFRoZSBwYXRpZW50IGFsc28gdGFsa2VkIGFib3V0IHRoZSBoZWF2eSB0b2xsIHRoYXQgZXhpc3RpbmcgdHJlYXRtZW50cyBjYW4gdGFrZSwgYm90aCBpbiB0ZXJtcyBvZiB0aW1lIGFuZCBwaHlzaWNhbCBzdHJhaW4uIFRoaXMgZmVlZGJhY2sgaGFzIHB1c2hlZCB1cyB0byBmb2N1cyBvbiBzdHJlYW1saW5pbmcgb3VyIGFwcHJvYWNoLCBlc3BlY2lhbGx5IHdpdGggb3VyIHByaW1lIGVkaXRpbmcgYW5kIGluaGFsYXRpb24gdGhlcmFweS4gV2Ugd2FudCB0byBjdXQgZG93biBvbiB0aGUgY29tcGxleGl0eSBhbmQgZnJlcXVlbmN5IG9mIHRyZWF0bWVudHMsIG1ha2luZyB0aGluZ3Mgc2ltcGxlciBhbmQgbGVzcyBidXJkZW5zb21lIGZvciBwYXRpZW50cy4gXG4gICAgICBXZSBhbHNvIGxlYXJuZWQgYWJvdXQgdGhlIG9uZ29pbmcgbmVlZCBmb3IgbW9yZSBhZHZhbmNlZCB0aGVyYXBpZXMuIFRoZSBwYXRpZW50IHN0cmVzc2VkIHRoZSBpbXBvcnRhbmNlIG9mIGNvbnRpbnVpbmcgdG8gcHVzaCB0aGUgYm91bmRhcmllcyB3aXRoIG1vZHVsYXRvciB0aGVyYXBpZXMgYW5kIGdlbmUgZWRpdGluZy4gVGhpcyBoYXMgcmVhbGx5IGRyaXZlbiB1cyB0byBwcmlvcml0aXplIG91ciBzcHJheS1kcmllZCBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBhcHByb2FjaCwgd2hpY2ggYWltcyB0byBkZWxpdmVyIGdlbmUtZWRpdGluZyB0b29scyBzdHJhaWdodCB0byB0aGUgbHVuZ3MsIHRhY2tsaW5nIHRoZSByb290IGNhdXNlIG9mIENGLiBcbiAgICAgIFRoZSBkaXNjdXNzaW9uIGFsc28gZ2F2ZSB1cyBhIGNsZWFyZXIgcGljdHVyZSBvZiB0aGUgZ2xvYmFsIGRpc3Bhcml0aWVzIGluIENGIGNhcmUuIEl0IGJlY2FtZSBldmlkZW50IHRoYXQgYWNjZXNzIHRvIGFkdmFuY2VkIHRyZWF0bWVudHMgdmFyaWVzIGEgbG90IGFyb3VuZCB0aGUgd29ybGQuIFRoaXMgaGFzIG1hZGUgdXMgdGhpbmsgYWJvdXQgaG93IHdlIGNhbiBzY2FsZSBvdXIgdGhlcmFweSB0byBiZSBtb3JlIGFjY2Vzc2libGUsIGV2ZW4gaW4gcGxhY2VzIHdpdGggZmV3ZXIgcmVzb3VyY2VzLiBcbiAgICAgIFRoZSBwYXRpZW50XHUyMDE5cyBwZXJzb25hbCBleHBlcmllbmNlcyB1bmRlcnNjb3JlZCB0aGUgbmVlZCBmb3IgdHJlYXRtZW50cyB0aGF0IGFyZSB0YWlsb3JlZCB0byBpbmRpdmlkdWFsIG5lZWRzLiBXZVx1MjAxOXJlIHVzaW5nIHRoaXMgaW5zaWdodCB0byBtYWtlIHN1cmUgb3VyIHRoZXJhcHkgY2FuIGJlIGFkYXB0ZWQgdG8gZGlmZmVyZW50IGdlbmV0aWMgbXV0YXRpb25zIGFuZCBwYXRpZW50IHJlc3BvbnNlcy4gXG4gICAgICBGaW5hbGx5LCB0aGVpciBlbXBoYXNpcyBvbiBlbnp5bWUgZGV2ZWxvcG1lbnQgYW5kIGdlbmUgdGhlcmFweSBoYXMgaW5mbHVlbmNlZCBvdXIgcmVzZWFyY2ggZm9jdXMuIFdlXHUyMDE5cmUgbm93IHByaW9yaXRpemluZyB0aGVzZSBhcmVhcyB0byBlbnN1cmUgb3VyIHdvcmsgYWRkcmVzc2VzIGJvdGggY3VycmVudCBuZWVkcyBhbmQgZnV0dXJlIHBvc3NpYmlsaXRpZXMgaW4gQ0YgdHJlYXRtZW50LiBcbiAgICAgIE92ZXJhbGwsIHRoZXNlIGluc2lnaHRzIGhhdmUgcmVhbGx5IGhlbHBlZCB1cyBhbGlnbiBvdXIgcHJvamVjdCB3aXRoIHRoZSByZWFsLXdvcmxkIG5lZWRzIG9mIENGIHBhdGllbnRzLCBtYWtpbmcgc3VyZSB0aGF0IHdoYXQgd2VcdTIwMTlyZSBkZXZlbG9waW5nIGlzIGJvdGggcHJhY3RpY2FsIGFuZCBpbXBhY3RmdWwuIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2UgaW5jb3Jwb3JhdGVkIHRoZSBDRiBwYXRpZW50XHUyMDE5cyBpbnNpZ2h0cyBpbnRvIG91ciBwcm9qZWN0IGJ5IG1ha2luZyBzZXZlcmFsIGtleSBhZGp1c3RtZW50cyB0byBiZXR0ZXIgYWxpZ24gd2l0aCB0aGUgcmVhbC13b3JsZCBuZWVkcyBvZiBDRiBwYXRpZW50cy4gVW5kZXJzdGFuZGluZyB0aGUgY2hhbGxlbmdlcyB0aGV5IGZhY2UgYW5kIHRoZSBpbXBhY3Qgb2YgY3VycmVudCB0cmVhdG1lbnRzIGhlbHBlZCB1cyByZWZpbmUgb3VyIGFwcHJvYWNoIHNpZ25pZmljYW50bHkuIFxuICAgICAgRmlyc3RseSwgd2UgZm9jdXNlZCBvbiBkZXZlbG9waW5nIHByaW1lIGVkaXRpbmcgdmlhIGluaGFsYXRpb24gdGhlcmFweSB3aXRoIHNwcmF5LWRyaWVkIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLiBUaGlzIG1ldGhvZCBkaXJlY3RseSB0YXJnZXRzIGdlbmV0aWMgbXV0YXRpb25zIGluIHRoZSBsdW5ncywgYWRkcmVzc2luZyB0aGUgcGF0aWVudFx1MjAxOXMgbmVlZCBmb3IgbW9yZSBlZmZlY3RpdmUgYW5kIGxlc3MgaW52YXNpdmUgdHJlYXRtZW50cy4gV2VcdTIwMTlyZSBhbHNvIGZpbmUtdHVuaW5nIHRoZSBmb3JtdWxhdGlvbiBhbmQgZGVsaXZlcnkgb2Ygb3VyIExOUHMgdG8gZW5zdXJlIHRoZXkgcmVhY2ggbHVuZyB0aXNzdWUgZWZmaWNpZW50bHkgd2hpbGUgbWluaW1pemluZyBhbnkgZGlzY29tZm9ydC4gXG4gICAgICBUaGUgZmVlZGJhY2sgb24gZ2xvYmFsIGRpc3Bhcml0aWVzIGluIENGIGNhcmUgaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY3JlYXRpbmcgYSB0cmVhdG1lbnQgdGhhdCBpcyBub3Qgb25seSBlZmZlY3RpdmUgYnV0IGFsc28gYWZmb3JkYWJsZSBhbmQgYWNjZXNzaWJsZS4gV2VcdTIwMTlyZSBjb25zaWRlcmluZyBob3cgdG8gc2NhbGUgb3VyIHRoZXJhcHkgdG8gbWFrZSBpdCBhdmFpbGFibGUgaW4gcmVnaW9ucyB3aXRoIGxpbWl0ZWQgYWNjZXNzIHRvIGFkdmFuY2VkIHRyZWF0bWVudHMuICAgIFxuICAgICAgQWRkaXRpb25hbGx5LCB0aGUgZW1waGFzaXMgb24gdGhlIG5lZWQgZm9yIGNvbnRpbnVlZCBhZHZhbmNlbWVudHMgaW4gZW56eW1lIGRldmVsb3BtZW50IGFuZCBnZW5lIHRoZXJhcHkgaGFzIGd1aWRlZCB1cyB0byBiYWxhbmNlIGltbWVkaWF0ZSB0aGVyYXBldXRpYyBiZW5lZml0cyB3aXRoIGxvbmctdGVybSByZXNlYXJjaCBnb2Fscy4gVGhpcyBlbnN1cmVzIHRoYXQgb3VyIHByb2plY3QgYWRkcmVzc2VzIGJvdGggY3VycmVudCBuZWVkcyBhbmQgZnV0dXJlIHBvc3NpYmlsaXRpZXMgaW4gQ0YgdHJlYXRtZW50LiBcbiAgICAgIEJ5IGludGVncmF0aW5nIHRoZXNlIGluc2lnaHRzLCB3ZSBhaW0gdG8gZW5zdXJlIG91ciBwcm9qZWN0IG5vdCBvbmx5IGFkdmFuY2VzIHNjaWVudGlmaWMgdW5kZXJzdGFuZGluZyBidXQgYWxzbyBtZWV0cyB0aGUgcHJhY3RpY2FsIG5lZWRzIG9mIENGIHBhdGllbnRzLCB1bHRpbWF0ZWx5IGxlYWRpbmcgdG8gbW9yZSBlZmZlY3RpdmUgYW5kIGFjY2Vzc2libGUgdHJlYXRtZW50cy4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJUaGUgYWltIG9mIG91ciBvdXRyZWFjaCB0byBjeXN0aWMgZmlicm9zaXMgKENGKSBwYXRpZW50cyB3YXMgdG8gZ2FpbiBpbnNpZ2h0cyBpbnRvIHRoZWlyIGRhaWx5IGV4cGVyaWVuY2VzIGFuZCBob3cgcmVjZW50IHRyZWF0bWVudCBhZHZhbmNlbWVudHMgaGF2ZSBhZmZlY3RlZCB0aGVpciBsaXZlcy4gUGFydG5lcmluZyB3aXRoIE11a29EaW5vIGFsbG93ZWQgdXMgdG8gZGlzdHJpYnV0ZSBhIHN1cnZleSB3aWRlbHksIGFzIGludGVydmlld3Mgd2VyZSBsaW1pdGVkLiBUaHJvdWdoIGRpc2N1c3Npb25zIHdpdGggcGF0aWVudHMsIHdlIGxlYXJuZWQgYWJvdXQgdGhlIGNoYWxsZW5nZXMgcG9zZWQgYnkgY3VycmVudCB0cmVhdG1lbnRzLCBlbXBoYXNpemluZyB0aGUgbmVlZCBmb3IgdGhlcmFwaWVzIHRoYXQgc2ltcGxpZnkgbWFuYWdlbWVudCBhbmQgcmVkdWNlIHBoeXNpY2FsIHN0cmFpbi4gVGhpcyBmZWVkYmFjayBoYXMgZHJpdmVuIG91ciBmb2N1cyBvbiBkZXZlbG9waW5nIG1vcmUgZWZmaWNpZW50IGluaGFsYXRpb24gdGhlcmFwaWVzIHVzaW5nIHNwcmF5LWRyaWVkIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpIHRvIGRlbGl2ZXIgZ2VuZS1lZGl0aW5nIHRvb2xzIGRpcmVjdGx5IHRvIHRoZSBsdW5ncy4gV2UgYWxzbyByZWNvZ25pemVkIHRoZSBnbG9iYWwgZGlzcGFyaXRpZXMgaW4gQ0YgY2FyZSwgbW90aXZhdGluZyB1cyB0byBjb25zaWRlciBzY2FsYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBmb3IgdGhvc2UgaW4gcmVzb3VyY2UtbGltaXRlZCByZWdpb25zLiBQYXRpZW50IGluc2lnaHRzIHVuZGVyc2NvcmVkIHRoZSBpbXBvcnRhbmNlIG9mIHBlcnNvbmFsaXplZCB0cmVhdG1lbnRzIHRhaWxvcmVkIHRvIGluZGl2aWR1YWwgZ2VuZXRpYyBtdXRhdGlvbnMsIHByb21wdGluZyB1cyB0byBwcmlvcml0aXplIGVuenltZSBkZXZlbG9wbWVudCBhbmQgZ2VuZSB0aGVyYXB5IGluIG91ciByZXNlYXJjaC4gT3ZlcmFsbCwgdGhlc2UgaW5zaWdodHMgaGF2ZSBzaGFwZWQgb3VyIHByb2plY3QgdG8gYWxpZ24gY2xvc2VseSB3aXRoIHRoZSByZWFsLXdvcmxkIG5lZWRzIG9mIENGIHBhdGllbnRzLCBhaW1pbmcgZm9yIGltcGFjdGZ1bCBhbmQgYWNjZXNzaWJsZSBzb2x1dGlvbnMuXCIsXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxuICAgIGludGVydmlldzogPD5cbiAgICA8UWFCb3ggcT1cIkhvdyBkaWQgeW91IGNvbWUgdXAgd2l0aCB0aGUgbmFtZSBcdTIwMThNdWtvLURpbm9cdTIwMTk/XCIgYT1cIlRoZSBuYW1lIFx1MjAxOE11a28tRGlub1x1MjAxOSBoYXMgYSBwZXJzb25hbCBoaXN0b3J5LiBBdCBhIGN5c3RpYyBmaWJyb3NpcyBtZWV0aW5nLCBhbm90aGVyIHBhdGllbnQgam9rZWQgdGhhdCBJLCBhcyBhIDU4LXllYXItb2xkIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50LCB3YXMgYSBcdTIwMThNdWtvLURpbm9cdTIwMTkuIFRoZSBuYW1lIGFsbHVkZXMgdG8gbXkgYWdlLCBiZWNhdXNlIGluIHRoZSBwYXN0LCBjeXN0aWMgZmlicm9zaXMgcGF0aWVudHMgaGFkIGEgbXVjaCBzaG9ydGVyIGxpZmUgZXhwZWN0YW5jeS4gU28gaXQgd2FzIHVudXN1YWwgZm9yIHNvbWVvbmUgd2l0aCB0aGUgZGlzZWFzZSB0byBzdGlsbCBiZSBzbyBhY3RpdmUgYXQgbXkgYWdlLiBUaGUgbmFtZSBzdHVjayAtIGluaXRpYWxseSBhcyBhIGpva2UsIGJ1dCBJIGhhdmUgc2luY2UgYWRvcHRlZCBpdCBhcyBhIGtpbmQgb2Ygbmlja25hbWUuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldoZW4gd2VyZSB5b3UgZGlhZ25vc2VkIHdpdGggY3lzdGljIGZpYnJvc2lzP1wiIGE9XCJJIHdhcyBkaWFnbm9zZWQgYXQgdGhlIGFnZSBvZiBzaXggYWZ0ZXIgYSBzd2VhdCB0ZXN0LiBJIGhhZCBsb3N0IGEgbG90IG9mIHdlaWdodCBpbiB0aGUgZmlyc3QgeWVhciBvZiBteSBsaWZlIGFuZCBjeXN0aWMgZmlicm9zaXMgd2FzIGFscmVhZHkgc3VzcGVjdGVkLCBidXQgaXQgdG9vayBhIHdoaWxlIGJlZm9yZSB0aGUgZGlhZ25vc2lzIHdhcyBhY3R1YWxseSBjb25maXJtZWQuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgd2VyZSB5b3VyIHRob3VnaHRzIGFuZCB0aG9zZSBvZiB5b3VyIGZhbWlseSBhZnRlciB0aGUgZGlhZ25vc2lzP1wiIGE9XCJNeSBtdW0gd2FzIG5hdHVyYWxseSBzaG9ja2VkLiBXaGVuIHlvdSBoYXZlIGEgY2hpbGQsIHlvdSBhcmUgaGFwcHksIGFuZCB0aGVuIHRvIHJlY2VpdmUgYSBkaWFnbm9zaXMgbGlrZSB0aGlzIGlzIGEgaHVnZSBzaG9jay4gRm9yIHBhcmVudHMgb2YgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzLCB0aGVyZSBpcyBhbHdheXMgYSBiYXNpYyBmZWFyIGJlY2F1c2UgdGhlIGRpc2Vhc2UgaXMgbGlmZS10aHJlYXRlbmluZy4gVG9kYXksIG1hbnkgcGFyZW50cyBob3BlIHRoYXQgdGhlaXIgY2hpbGQgd2lsbCBsaXZlIHRvIGJlIGF0IGxlYXN0IHR3byB5ZWFycyBvbGQgc28gdGhhdCB0aGV5IGNhbiByZWNlaXZlIG1vZHVsYXRvcnMgdGhhdCBjYW4gZ3JlYXRseSBpbXByb3ZlIHRoZSBzeW1wdG9tcy5cIiAvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBtdXRhdGlvbiBkbyB5b3UgaGF2ZT9cIiBhPVwiSSBoYXZlIHRoZSBEZWx0YSA1MDggbXV0YXRpb24gaW4gZHVwbGljYXRlLCBpLmUuIGhvbW96eWdvdXMuIFRoaXMgaXMgdGhlIG1vc3QgY29tbW9uIGZvcm0gb2YgY3lzdGljIGZpYnJvc2lzIG11dGF0aW9uIGFuZCBjYXVzZXMgdGhlIHR5cGljYWwgc3ltcHRvbXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBkaXNlYXNlLCBzdWNoIGFzIGRpZ2VzdGl2ZSBhbmQgbHVuZyBwcm9ibGVtcy5cIiAvPlxuICAgIDxRYUJveCBxPVwiV2hhdCB3ZXJlIHRoZSBmaXJzdCBzdGVwcyBhZnRlciB0aGUgZGlhZ25vc2lzP1wiIGE9XCJCYWNrIHRoZW4sIGluIHRoZSAxOTYwcywgdGhlcmUgd2VyZSBoYXJkbHkgYW55IHNwZWNpYWxpc2VkIGN5c3RpYyBmaWJyb3NpcyBvdXRwYXRpZW50IGNsaW5pY3MuIE15IHBhZWRpYXRyaWNpYW4gcHJlc2NyaWJlZCBtZSBQYW5rcmVvbiwgYW4gZWFybHkgZW56eW1lIHByZXBhcmF0aW9uIHRoYXQgd2FzIHN1cHBvc2VkIHRvIGhlbHAgbWUgd2l0aCBkaWdlc3Rpb24uIE5vd2FkYXlzLCB0aGUgcHJvY2VzcyBpcyB2ZXJ5IGRpZmZlcmVudDogQSBjaGlsZCBpcyByZWZlcnJlZCB0byBhIHNwZWNpYWxpc2VkIG91dHBhdGllbnQgY2xpbmljIGltbWVkaWF0ZWx5IGFmdGVyIGRpYWdub3Npcywgd2hlcmUgdGhleSByZWNlaXZlIGNvbXByZWhlbnNpdmUgY2FyZS4gVGhpcyBpbmNsdWRlcyBtZWRpY2FsIGNhcmUsIG51dHJpdGlvbmFsIGNvdW5zZWxsaW5nLCBwaHlzaW90aGVyYXB5IGFuZCBzdXBwb3J0IHdpdGggc29jaW8tbGVnYWwgaXNzdWVzLlwiIC8+XG4gICAgPFFhQm94IHE9XCJIb3cgaGFzIHRyZWF0bWVudCBjaGFuZ2VkIG92ZXIgdGhlIHllYXJzP1wiIGE9XCJUaGUgdHJlYXRtZW50IG9mIGN5c3RpYyBmaWJyb3NpcyBoYXMgaW1wcm92ZWQgZHJhbWF0aWNhbGx5IG92ZXIgdGhlIGxhc3QgZmV3IGRlY2FkZXMuIEluIHRoZSBwYXN0LCBsb3ctZmF0IGRpZXRzIGhhZCB0byBiZSBmb2xsb3dlZCwgZXZlbiB3aXRoIGVuenltZXMsIHdoaWNoIHdlcmUgbm90IGFzIGVmZmVjdGl2ZSBhcyB0b2RheSdzIHByZXBhcmF0aW9ucy4gQmFjayB0aGVuLCBpZiB5b3UgYXRlIHNvbWV0aGluZyBmYXR0eSBsaWtlIGNob2NvbGF0ZSBvciBjaGlwcywgeW91IGdvdCBkaWFycmhvZWEuIE5vd2FkYXlzLCBlbnp5bWVzIGFyZSBtdWNoIG1vcmUgZWZmZWN0aXZlIGFuZCBwYXRpZW50cyBoYXZlIGhhcmRseSBhbnkgZGlldGFyeSByZXN0cmljdGlvbnMuIEFzIGZhciBhcyBhbnRpYmlvdGljcyBhcmUgY29uY2VybmVkLCByZXNpc3RhbmNlIGlzIGEgYmlnIGlzc3VlLiBUaGF0J3Mgd2h5IGRvY3RvcnMgY2hhbmdlIGFudGliaW90aWNzIHJlZ3VsYXJseSB0byBwcmV2ZW50IHJlc2lzdGFuY2UgZnJvbSBkZXZlbG9waW5nLiBNb2R1bGF0b3JzIGhhdmUgcmV2b2x1dGlvbmlzZWQgdGhlIGxpdmVzIG9mIG1hbnkgcGF0aWVudHMsIGV2ZW4gaWYgdGhleSBjYW4gdHJpZ2dlciBwc3ljaG9sb2dpY2FsIHNpZGUgZWZmZWN0cyBpbiBzb21lLiBCdXQgdGhlIGFsdGVybmF0aXZlLCBmcmVxdWVudCBwbmV1bW9uaWEsIGlzIG11Y2ggd29yc2UuXCIgLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgYXNzZXNzIHRoZSBwcm9ncmVzcyBtYWRlIGluIGN5c3RpYyBmaWJyb3NpcyByZXNlYXJjaD9cIiBhPVwiVGhlIHByb2dyZXNzIGlzIGFic29sdXRlbHkgcmVtYXJrYWJsZS4gV2hlbiBJIHdhcyBib3JuLCB0aGUgYXZlcmFnZSBsaWZlIGV4cGVjdGFuY3kgb2YgYSBjeXN0aWMgZmlicm9zaXMgcGF0aWVudCB3YXMgb25lIHRvIGZpdmUgeWVhcnMuIFRvZGF5IHdlIGFyZSB0YWxraW5nIGFib3V0IG92ZXIgNjAgeWVhcnMuIFRoaXMgZGV2ZWxvcG1lbnQgaXMgbm90IG9ubHkgZHVlIHRvIG1lZGljYWwgaW5ub3ZhdGlvbnMsIGJ1dCBhbHNvIHRvIGJldHRlciBhZGhlcmVuY2Ugb24gdGhlIHBhcnQgb2YgcGF0aWVudHMsIHdobyBmb2xsb3cgdGhlaXIgdGhlcmFwaWVzIG1vcmUgcmVndWxhcmx5IGFuZCBlZmZpY2llbnRseS5cIiAvPlxuICAgIDxRYUJveCBxPVwiSXMgdGhlcmUgYW55dGhpbmcgeW91IHdvdWxkIGxpa2UgdG8gc2VlIGluIHRoZSBmdXR1cmUgb2YgdGhlcmFweT9cIiBhPVwiUGVyc29uYWxseSwgSSBhbSBhbG1vc3QgcGVyZmVjdGx5IGhhcHB5LCBhcyB0aGUgY3VycmVudCBtb2R1bGF0b3JzIGhhdmUgZ2l2ZW4gbWUgYW4gZW5vcm1vdXNseSBpbXByb3ZlZCBxdWFsaXR5IG9mIGxpZmUuIE15IHdpc2ggZm9yIHRoZSBlbnRpcmUgY3lzdGljIGZpYnJvc2lzIGNvbW11bml0eSBpcyB0aGF0IGdlbmUgdGhlcmFweSB3aWxsIGJlIGZ1cnRoZXIgZGV2ZWxvcGVkLiBBIHRyZWF0bWVudCB0aGF0IGFkZHJlc3NlcyB0aGUgZ2VuZXRpYyBjYXVzZXMgb2YgdGhlIGRpc2Vhc2Ugd291bGQgYmUgYSBodWdlIGJyZWFrdGhyb3VnaCBhbmQgaXQgd291bGQgYmUgaWRlYWwgaWYgdGhpcyBjb3VsZCBiZSBhY2hpZXZlZCB3aXRob3V0IHNlcmlvdXMgc2lkZSBlZmZlY3RzLlwiIC8+XG4gICAgPFFhQm94IHE9XCJXaGljaCBhcmVhcyBvZiByZXNlYXJjaCBkbyB5b3UgdGhpbmsgc2hvdWxkIGJlIHN0cmVuZ3RoZW5lZD9cIiBhPVwiVGhlcmUgYXJlIGEgZmV3IGFyZWFzIHRoYXQgSSBjb25zaWRlciB0byBiZSBwYXJ0aWN1bGFybHkgaW1wb3J0YW50LiBPbiB0aGUgb25lIGhhbmQsIGVuenltZXMgc2hvdWxkIGJlIGZ1cnRoZXIgZGV2ZWxvcGVkIGluIG9yZGVyIHRvIHdvcmsgZXZlbiBiZXR0ZXIgYW5kIGZ1cnRoZXIgbWluaW1pc2Ugc2lkZSBlZmZlY3RzLiBBbm90aGVyIG1ham9yIHRvcGljIGlzIGJhY3RlcmlvcGhhZ2UgcmVzZWFyY2gsIHdoaWNoIGNvdWxkIGhlbHAgcGF0aWVudHMgd2l0aCBtdWx0aS1yZXNpc3RhbnQgZ2VybXMuIE1vZHVsYXRvcnMgc2hvdWxkIGFsc28gYmUgZnVydGhlciBvcHRpbWlzZWQgYW5kLCBvZiBjb3Vyc2UsIGdlbmUgdGhlcmFweSBtdXN0IGJlIGRyaXZlbiBmb3J3YXJkIGluIG9yZGVyIHRvIGZpbmQgYSBzdXN0YWluYWJsZSBzb2x1dGlvbi5cIiAvPlxuICAgIDxRYUJveCBxPVwiV2hhdCByb2xlIGRvZXMgcGVyc29uYWwgcmVzcG9uc2liaWxpdHkgcGxheSBpbiBjeXN0aWMgZmlicm9zaXM/XCIgYT1cIlBlcnNvbmFsIHJlc3BvbnNpYmlsaXR5IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQuIEFueW9uZSBsaXZpbmcgd2l0aCBjeXN0aWMgZmlicm9zaXMgaGFzIHRvIGRlYWwgaW50ZW5zaXZlbHkgd2l0aCB0aGVpciBvd24gZGlzZWFzZSBhbmQgdGFrZSByZXNwb25zaWJpbGl0eSBmb3IgdGhlaXIgaGVhbHRoLiBUaGlzIG1lYW5zIHJlZ3VsYXJseSBpbmZvcm1pbmcgeW91cnNlbGYgYWJvdXQgbmV3IHRyZWF0bWVudCBvcHRpb25zIGFuZCBiZWluZyBkaXNjaXBsaW5lZCBhYm91dCB5b3VyIG93biB0cmVhdG1lbnQuIElmIHlvdSBkb24ndCB0YWtlIGNhcmUgb2YgeW91cnNlbGYsIHlvdSBydW4gdGhlIHJpc2sgb2Ygbm90IGZ1bGx5IHV0aWxpc2luZyB0aGUgYWR2YW5jZXMgaW4gbWVkaWNpbmUuIFRoZSBoZWFsdGhjYXJlIHN5c3RlbSBnaXZlcyB5b3UgbWFueSBvcHRpb25zLCBidXQgeW91IGhhdmUgdG8gYWN0aXZlbHkgdXRpbGlzZSB0aGVtLiBMdWNrIGRlZmluaXRlbHkgcGxheXMgYSByb2xlLCBidXQgaXQgaXMgbm90IGVub3VnaCBvbiBpdHMgb3duLiBJIGhhdmUgYmVlbiBsdWNreSBpbiBteSBtZWRpY2FsIGhpc3RvcnkgYmVjYXVzZSBJIGxpdmUgaW4gYSBjb3VudHJ5IHdpdGggZ29vZCBhY2Nlc3MgdG8gbWVkaWNhbCBjYXJlIGFuZCBoYXZlIGJlZW4gYWJsZSB0byBiZW5lZml0IGZyb20gdGhlIG1vZHVsYXRvcnMuIEJ1dCBldmVuIHRoZSBiZXN0IGx1Y2sgZG9lc24ndCBoZWxwIHdpdGhvdXQgaW5pdGlhdGl2ZSBhbmQgY29tbWl0bWVudC4gWW91IGhhdmUgdG8gcGxheSBhbiBhY3RpdmUgcm9sZSBpbiBtYWtpbmcgdGhlIG1vc3Qgb2YgdGhlIG9wcG9ydHVuaXRpZXMgdGhhdCBsaWZlIG9mZmVycyB5b3UuXCIgLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgZG9lcyB5b3VyIGRhaWx5IHJvdXRpbmUgbG9vayBsaWtlP1wiIGE9XCJNeSBkYWlseSB0aGVyYXB5IHRha2VzIGFib3V0IHR3byB0byB0aHJlZSBob3Vycy4gVGhpcyBpbmNsdWRlcyB0YWtpbmcgZW56eW1lcyBhbmQgYW50aWJpb3RpY3MgYXMgd2VsbCBhcyBpbmhhbGF0aW9ucyB3aXRoIHNhbGluZSBzb2x1dGlvbiBhbmQgYW50aWJpb3RpY3MuIEkgYWxzbyBkbyByZWd1bGFyIGF1dG9nZW5pYyBkcmFpbmFnZSBhbmQgc3RyZXRjaGluZyBleGVyY2lzZXMgdG8gc3VwcG9ydCBteSBsdW5ncy4gSXQgaXMgaW1wb3J0YW50IHRvIHN0aWNrIHRvIHRoaXMgcm91dGluZSBjb25zaXN0ZW50bHksIGFzIGV2ZW4gYSBmZXcgZGF5cyB3aXRob3V0IHRoZXJhcHkgY2FuIGxlYWQgdG8gaW5mbGFtbWF0aW9uLlwiIC8+XG4gICAgPFFhQm94IHE9XCJXaGF0IGlzIHRoZSBtb3N0IGltcG9ydGFudCBwYXJ0IG9mIHlvdXIgZGFpbHkgcm91dGluZT9cIiBhPVwiSXQncyBkaWZmaWN1bHQgdG8gc2luZ2xlIG91dCBvbmUgcGFydCBiZWNhdXNlIGFsbCBhc3BlY3RzIHdvcmsgdG9nZXRoZXIuIElmIEkgbGVmdCBvdXQgdGhlIGVuenltZXMsIEkgd291bGQgb25seSBiZSBhYmxlIHRvIGVhdCBzYWxhZCBiZWNhdXNlIG15IGJvZHkgd291bGRuJ3QgYmUgYWJsZSB0byBhYnNvcmIgYW55IG51dHJpZW50cy4gV2l0aG91dCB0aGUgbW9kdWxhdG9ycyBhbmQgYW50aWJpb3RpY3MsIEkgd291bGQgcXVpY2tseSBnZXQgcG5ldW1vbmlhLCB3aGljaCBtZWFucyBJIHdvdWxkIGhhdmUgdG8gdGFrZSB3ZWVrcyBvZmYuIFNvIHJlZ3VsYXJpdHkgaXMgdGhlIGtleSB0byBzdGF5aW5nIGhlYWx0aHkgaW4gdGhlIGxvbmcgdGVybS5cIiAvPlxuICAgIDxRYUJveCBxPVwiRG8geW91IGRvIGFueSBzcG9ydGluZyBhY3Rpdml0aWVzP1wiIGE9XCJZZXMsIEkgY3ljbGUgdG8gd29yayBldmVyeSBkYXkgYW5kIHRha2UgdGhlIHN0YWlycyB0byB0aGUgZWlnaHRoIGZsb29yIHdoZXJlIEkgaGF2ZSBteSBvZmZpY2UuIEkgZG9uJ3QgZG8gaW50ZW5zaXZlIHNwb3J0cyBsaWtlIGdvaW5nIHRvIHRoZSBneW0sIGJ1dCBJIGRvIGV4ZXJjaXNlIHJlZ3VsYXJseSBpbiBteSBldmVyeWRheSBsaWZlLCB3aGljaCBpcyB2ZXJ5IGltcG9ydGFudCBmb3IgbXkgaGVhbHRoLlwiIC8+XG4gICAgPFFhQm94IHE9XCJEbyB5b3UgdXNlIHBoeXNpb3RoZXJhcHk/XCIgYT1cIkkgZG8gbXkgb3duIHBoeXNpb3RoZXJhcHkgYXQgaG9tZSBhcyBJIGhhdmUgbGVhcm50IHRoZSB0ZWNobmlxdWVzIHdlbGwgb3ZlciB0aGUgeWVhcnMuIEkgdXNlZCB0byB2aXNpdCBhIHBoeXNpb3RoZXJhcGlzdCByZWd1bGFybHksIGJ1dCBJIG5vIGxvbmdlciBuZWVkIHRvLiBBbHNvLCB0aGVyZSBhcmUgaGFyZGx5IGFueSBzcGVjaWFsaXNlZCBwaHlzaW90aGVyYXBpc3RzIGZvciBjeXN0aWMgZmlicm9zaXMgcGF0aWVudHMgaW4gbXkgYXJlYS5cIiAvPlxuICAgIDxRYUJveCBxPVwiV2hpY2ggb3JnYW4gYWZmZWN0cyB5b3UgdGhlIG1vc3QgaW4geW91ciBldmVyeWRheSBsaWZlP1wiIGE9XCJUaGFua3MgdG8gdGhlIG1vZHVsYXRvcnMsIG5vbmUgYWN0dWFsbHkuIEJ1dCBpZiBJIGRvbid0IHRha2UgdGhlIGVuenltZXMsIEkgY2FuJ3QgZWF0IGFueXRoaW5nLCB3aGljaCBsZWFkcyB0byByYXBpZCB3ZWlnaHQgbG9zcy4gV2l0aG91dCB0aGUgYW50aWJpb3RpY3MgYW5kIG1vZHVsYXRvcnMsIEkgd291bGQgYmUgbW9yZSBzdXNjZXB0aWJsZSB0byBpbmZlY3Rpb25zIGFuZCB3b3VsZCBxdWlja2x5IGRldmVsb3AgcG5ldW1vbmlhLCB3aGljaCB3b3VsZCByZXF1aXJlIHdlZWtzIG9mIHJlY292ZXJ5LlwiIC8+XG4gICAgPFFhQm94IHE9XCJIYXZlIHlvdSBvciBhbnlvbmUgY2xvc2UgdG8geW91IHRha2VuIHBhcnQgaW4gY2xpbmljYWwgdHJpYWxzP1wiIGE9XCJJIHBlcnNvbmFsbHkgaGF2ZSBub3QgcGFydGljaXBhdGVkIGluIGNsaW5pY2FsIHRyaWFscywgYnV0IEkgZW5jb3VyYWdlIG90aGVyIHBhdGllbnRzIHRvIGRvIHNvLCBhcyB0cmlhbHMgYXJlIG9mdGVuIHRoZSBvbmx5IHdheSB0byB0ZXN0IGFuZCBkZXZlbG9wIG5ldyB0cmVhdG1lbnRzLlwiIC8+XG4gICAgPFFhQm94IHE9XCJXaGF0IGltcGFjdCBkbyBhZHZhbmNlcyBpbiBjeXN0aWMgZmlicm9zaXMgcmVzZWFyY2ggaGF2ZSBvbiBwYXRpZW50cycgbGl2ZXM/XCIgYT1cIkFkdmFuY2VzIGluIGN5c3RpYyBmaWJyb3NpcyByZXNlYXJjaCBoYXZlIGhhZCBhbiBlbm9ybW91cyBwb3NpdGl2ZSBpbXBhY3Qgb24gcGF0aWVudHMnIGxpdmVzLiBJbiB0aGUgcGFzdCwgbGlmZSBleHBlY3RhbmN5IGF0IGRpYWdub3NpcyB3YXMgb2Z0ZW4gb25seSBhIGZldyB5ZWFycy4gVG9kYXksIG1hbnkgcGF0aWVudHMgY2FuIGxpdmUgaW50byBvbGQgYWdlLiBUaGUgaW50cm9kdWN0aW9uIG9mIG1vZHVsYXRvcnMgdGhhdCBzcGVjaWZpY2FsbHkgc3RhYmlsaXNlIHRoZSBkaXNlYXNlLWNhdXNpbmcgcHJvdGVpbnMgYW5kIGltcHJvdmUgdGhlaXIgZnVuY3Rpb24gaGFzIHNpZ25pZmljYW50bHkgaW1wcm92ZWQgcGF0aWVudHMnIHF1YWxpdHkgb2YgbGlmZS4gUmVzZWFyY2ggaGFzIGFsc28gY29udHJpYnV0ZWQgdG8gcGF0aWVudHMgYmVpbmcgYmV0dGVyIGluZm9ybWVkIGFib3V0IHRoZWlyIGRpc2Vhc2UgYW5kIGhhdmluZyBlZmZlY3RpdmUgdGhlcmFwaWVzIGF2YWlsYWJsZSwgbGVhZGluZyB0byBiZXR0ZXIgb3ZlcmFsbCBkaXNlYXNlIG1hbmFnZW1lbnQuXCIgLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgYXNzZXNzIHRoZSBkaWZmZXJlbmNlcyBpbiB0aGUgdHJlYXRtZW50IGFuZCBzdXBwb3J0IG9mIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cyBpbiBHZXJtYW55IGNvbXBhcmVkIHRvIG90aGVyIGNvdW50cmllcz9cIiBhPVwiSW4gRXVyb3BlLCBlc3BlY2lhbGx5IGluIEdlcm1hbnksIHdlIGxpdmUgYXQgYSB2ZXJ5IGhpZ2ggbWVkaWNhbCBsZXZlbCwgZXZlbiBpZiB0aGVyZSBhcmUgY2hhbGxlbmdlcyBzdWNoIGFzIHRoZSBzaG9ydGFnZSBvZiBzcGVjaWFsaXN0cy4gVGhlIGRpZmZlcmVuY2UgaW4gcHJvc3Blcml0eSBpbiB0aGUgVVNBIGlzIGdyZWF0ZXIsIGJ1dCBhdCB0aGUgc2FtZSB0aW1lIGl0IGlzIGFsc28gYSBkcml2ZXIgb2YgaW5ub3ZhdGlvbi4gQ29tcGFyZWQgdG8gY291bnRyaWVzIGFzIHNvbWUgdGhpcmQtd29ybGQgY291bnRyaWVzLCB3aGVyZSBjeXN0aWMgZmlicm9zaXMgcGF0aWVudHMgaGF2ZSB0byB3YWl0IGluIGhvc3BpdGFscyBmb3IgYXBwb2ludG1lbnRzIGJldHdlZW4gaW5mZWN0aW91cyBwYXRpZW50cywgd2UgYXJlIGNvbXBsYWluaW5nIGF0IGEgaGlnaCBsZXZlbCBoZXJlLiBUaGVyZSBpcyBhbHdheXMgcm9vbSBmb3IgaW1wcm92ZW1lbnQsIGJ1dCBvdmVyYWxsIHdlIGhhdmUgYSBicmlsbGlhbnQgaGVhbHRoY2FyZSBzeXN0ZW0uXCIgLz5cbiAgICA8UWFCb3ggcT1cIkRvIHlvdSBmZWVsIHN1ZmZpY2llbnRseSBpbmZvcm1lZCBieSB0aGUgYXZhaWxhYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24/XCIgYT1cIlllcywgdGhlIGluZm9ybWF0aW9uIHNpdHVhdGlvbiBpcyBnb29kLiBZb3UgY2FuIGZpbmQgc3VmZmljaWVudCBpbmZvcm1hdGlvbiBmcm9tIG9yZ2FuaXNhdGlvbnMgc3VjaCBhcyB0aGUgQ0YgRm91bmRhdGlvbiwgdGhlIENGIFRydXN0IGFuZCBNdWtvdmlzemlkb3NlIGUuVi4uIEhvd2V2ZXIsIHlvdSBoYXZlIHRvIGdldCBpbnZvbHZlZCB5b3Vyc2VsZiBhbmQgYWN0aXZlbHkgc2VlayBvdXQgdGhlIGluZm9ybWF0aW9uLlwiIC8+XG4gICAgPFFhQm94IHE9XCJJcyB0aGVyZSBhbnl0aGluZyBlbHNlIHlvdSB3b3VsZCBsaWtlIHRvIHRlbGwgdXM/XCIgYT1cIkl0IGlzIGltcG9ydGFudCB0byB1bmRlcnN0YW5kIHRoYXQgQ0YgcGF0aWVudHMgYXJlIHZlcnkgZGlmZmVyZW50LCBpbmNsdWRpbmcgaW4gdGVybXMgb2YgdGhlaXIgY3VsdHVyYWwgYW5kIGZhbWlseSBiYWNrZ3JvdW5kLiBJbiBhZGRpdGlvbiwgc3VydmV5cyBhbmQgcXVlc3Rpb25zIHNob3VsZCBiZSByZXZpZXdlZCBpbiBhZHZhbmNlIGJ5IHBhdGllbnRzIG9yIHBhcmVudHMgdG8gZW5zdXJlIHRoYXQgdGhleSBhcmUgdW5kZXJzdGFuZGFibGUgYW5kIGRvIG5vdCBjb250YWluIHVuZm9ydHVuYXRlIHdvcmRpbmcuIElmIHlvdSBuZWVkIGFueSBoZWxwIG9yIGFueXRoaW5nLCBJIHdvdWxkIGxvdmUgdG8gaGVscCB5b3UuIFNlbmQgbWUgdGhlIGxpbmsgYXMgc29vbiBhcyB0aGUgd2Vic2l0ZSBpcyByZWFkeSBhbmQgSSdsbCBnaXZlIHlvdSBmZWVkYmFjay4gSSBjYW4gYWxzbyBjaXJjdWxhdGUgdGhlIHN1cnZleSBpbiB0aGUgY29tbXVuaXR5LiBJJ20gYWx3YXlzIGF2YWlsYWJsZSBpZiB5b3UgaGF2ZSBhbnkgZnVydGhlciBxdWVzdGlvbnMgb3IgbmVlZCBzdXBwb3J0LlwiIC8+XG4gICAgPC8+LFxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3pvb20tbXVrb2Rpbm8ud2VicFwiLFxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiRHIuIEtlcnN0aW4gTGFuZHdlaHJcIixcbiAgICB2b3JuYW1lOiBcIlNlbmlvciBQaHlzaWNpYW4gZm9yIFBlZGlhdHJpY3MgJiBQbmV1bW9sb2d5IGFuZFwiLFxuICAgIG5hY2hubmFtZTogXCJFbGVuYSBXaWVzbGVyXCIsXG4gICAgam9iOiBcIlBzeWNob2xvZ2lzdHMgaW4gY2hpbGQgJiBhZG9sZXNjZW50IG1lZGljaW5lIFwiLFxuICAgIGFmZmlsaWF0aW9uOiBcImF0IEJldGhlbCBIb3NwaXRhbCBpbiBCaWVsZWZlbGRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydiZXRoZWwnXSxcbiAgICB0YWc6IFwiTWVkaWNhbCBQcm9mZXNzaW9uYWxcIixcbiAgICBoZWFkaW5nOiBcIkhvbGlzdGljIENhcmUgZm9yIEN5c3RpYyBGaWJyb3NpczogRXhwbG9yaW5nIHRoZSBQc3ljaG9sb2dpY2FsIEltcGFjdCBhbmQgUm9sZSBvZiBHZW5lIFRoZXJhcHlcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJwc3ljaG9sXCIsXG4gICAgY2FyZHRleHQ6IFwiXCIsXG4gICAgbGFuZ3VhZ2U6XCJkZVwiLFxuICAgIHF1b3RlOiBcIk1hbnkgZmFtaWxpZXMgYXJlIGNvbmZyb250ZWQgd2l0aCBleHRyZW1lbHkgaGlnaCB0aGVyYXB5IGFuZCB0cmVhdG1lbnQgY29zdHMuIFRoZXNlIGFyZSBvZnRlbiBleHBlbnNpdmUgYW5kIHVuYXZhaWxhYmxlIGV2ZXJ5d2hlcmUuXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkVsZW5hXCIsXG4gICAgcXVvdGVOYWNobmFtZTogXCJXaWVzbGVyLCBQaHN5Y2hvdGhlcmFwaXN0IGF0IGhvc3BpdGFsIEJpZWxlZmVsZCBcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5JbiBwcmV2aW91cyBpbnRlcnZpZXdzLCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm1heGZpcnN0XCIgdGV4dD1cIk1heFwiIC8+IGFuZCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImRpbm9cIiB0ZXh0PVwiVGhvbWFzXCIgLz4gc2hhcmVkIGhvdyB0aGUgcHN5Y2hvbG9naWNhbCBidXJkZW4gb2YgbGl2aW5nIHdpdGggY3lzdGljIGZpYnJvc2lzIHdlaWdocyBoZWF2aWx5IG9uIHBhdGllbnRzLiBQYXJlbnRzIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwiam9zaHVhXCIgdGV4dD1cIkpvc2h1YVwiIC8+IGFuZCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImp1bGlhXCIgdGV4dD1cIkp1bGlhXCIgLz4gYWxzbyBlbXBoYXNpemVkIHRoYXQgbWVudGFsIGhlYWx0aCBjaGFsbGVuZ2VzIGFyZSBhIG1ham9yIGlzc3VlIGZvciBib3RoIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gVGhpcyBwcm9tcHRlZCB1cyB0byBkZWx2ZSBkZWVwZXIgaW50byB0aGUgcHN5Y2hvbG9naWNhbCwgc29jaWFsLCBhbmQgbWVkaWNhbCBkaWZmaWN1bHRpZXMgZmFjZWQgYnkgY3lzdGljIGZpYnJvc2lzIChDRikgcGF0aWVudHMgYW5kIHRoZWlyIHN1cHBvcnQgc3lzdGVtcy4gQSBrZXkgZ29hbCB3YXMgdG8gdW5kZXJzdGFuZCBob3cgZ2VuZSB0aGVyYXBpZXMgYXJlIHBlcmNlaXZlZCBhbmQgaG93IHRoZXkgbWF5IGFmZmVjdCB0aGUgcXVhbGl0eSBvZiBsaWZlIGZvciBDRiBwYXRpZW50cy4gV2UgYWltZWQgdG8gZ2F0aGVyIGluc2lnaHRzIGZyb20gdmFyaW91cyBwZXJzcGVjdGl2ZXNcdTIwMTRwYXRpZW50cywgY2FyZWdpdmVycywgYW5kIGhlYWx0aGNhcmUgcHJvZmVzc2lvbmFsc1x1MjAxNHRvIGVuc3VyZSBvdXIgcHJvamVjdCBhbGlnbnMgd2l0aCB0aGVpciBuZWVkcyBhbmQgYWRkcmVzc2VzIHRoZSBtb3N0IHByZXNzaW5nIGNoYWxsZW5nZXMuIFxuICAgICAgR2l2ZW4gdGhlIGNvbXBsZXhpdHkgb2YgdGhlc2UgcHN5Y2hvbG9naWNhbCBhc3BlY3RzLCBpdCB3YXMgY3J1Y2lhbCBmb3IgdXMgdG8gZW5nYWdlIHdpdGggcHN5Y2hvbG9naXN0cyB0byBnYWluIGEgcHJvZmVzc2lvbmFsLCBleHBlcnQgb3Bpbmlvbi4gV2UgdmlzaXRlZCB0aGUgbWVkaWNhbCBwcm9mZXNzaW9uYWxzIGF0IHRoZSBrbGluaWt1bSBiZXRoZWwuIFRoZWlyIGlucHV0IGhlbHBlZCB1cyBiZXR0ZXIgdW5kZXJzdGFuZCB0aGUgbWVudGFsIGhlYWx0aCBpbXBhY3RzIG9mIENGIGFuZCB0aGUgcG90ZW50aWFsIGVtb3Rpb25hbCBhZGp1c3RtZW50cyByZXF1aXJlZCB3aGVuIGludGVncmF0aW5nIGdlbmUgdGhlcmFwaWVzIGludG8gdHJlYXRtZW50IHBsYW5zLiBUaGlzIGd1aWRhbmNlIHdhcyBpbnZhbHVhYmxlIGluIHNoYXBpbmcgb3VyIGFwcHJvYWNoIHRvIGRldmVsb3BpbmcgYSBob2xpc3RpYyBzb2x1dGlvbiB0aGF0IGFkZHJlc3NlcyBub3Qgb25seSB0aGUgbWVkaWNhbCBuZWVkcyBidXQgYWxzbyB0aGUgZW1vdGlvbmFsIHdlbGwtYmVpbmcgb2YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLiBJdCBpbmZvcm1lZCBvdXIgSW50ZWdyYXRlZCBIZWFsdGggUHJvZ3JhbSAoSUhQKSBzdHJhdGVneSwgZW1waGFzaXppbmcgdGhlIGltcG9ydGFuY2Ugb2YgaW50ZXJwZXJzb25hbCByZWxhdGlvbnNoaXBzLCBlZmZlY3RpdmUgY29tbXVuaWNhdGlvbiwgYW5kIGNvbW11bml0eSBlbmdhZ2VtZW50LCBleHRlbmRpbmcgYmV5b25kIHB1cmVseSBzY2llbnRpZmljIGNvbnNpZGVyYXRpb25zLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPlRocm91Z2ggb3VyIGRpc2N1c3Npb25zLCBzZXZlcmFsIHZhbHVhYmxlIGluc2lnaHRzIGVtZXJnZWQgdGhhdCBoYXZlIHNpZ25pZmljYW50bHkgZGVlcGVuZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzOiBcbiAgICAgIENGIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcyBvZnRlbiBlbmR1cmUgaW1tZW5zZSBwc3ljaG9sb2dpY2FsIHN0cmFpbi4gQW54aWV0eSwgZGVwcmVzc2lvbiwgYW5kIGZydXN0cmF0aW9uIGFyZSBjb21tb24sIGV4YWNlcmJhdGVkIGJ5IHRoZSBjb25zdGFudCB1bmNlcnRhaW50eSBhYm91dCB0aGUgZGlzZWFzZVx1MjAxOXMgcHJvZ3Jlc3Npb24gYW5kIHRoZSBlZmZlY3RpdmVuZXNzIG9mIG5ldyB0cmVhdG1lbnRzLiBUaGUgZW1vdGlvbmFsIHRvbGwgaXMgcHJvZm91bmRcdTIwMTRub3QganVzdCBkdWUgdG8gdGhlIHBoeXNpY2FsIGJ1cmRlbiBvZiB0aGUgaWxsbmVzcywgYnV0IGFsc28gYmVjYXVzZSBvZiB0aGUgaG9wZSBhbmQgZmVhciB0aGF0IGNvbWUgd2l0aCBlbWVyZ2luZyB0aGVyYXBpZXMuIFdoaWxlIG5ldyB0cmVhdG1lbnRzIGJyaW5nIHByb21pc2UsIHRoZXkgYWxzbyByYWlzZSBjb25jZXJucyBhYm91dCB0aGVpciBwb3RlbnRpYWwgc3VjY2VzcyBhbmQgdGhlIHVua25vd25zIHRoYXQgYWNjb21wYW55IHRoZW0uIFxuICAgICAgVGhlcmVcdTIwMTlzIGEgc3Ryb25nIHNlbnNlIG9mIG9wdGltaXNtIHJlZ2FyZGluZyBnZW5lIHRoZXJhcGllcywgYXMgdGhleSBob2xkIHRoZSBwb3RlbnRpYWwgdG8gc2lnbmlmaWNhbnRseSBpbXByb3ZlIGJvdGggbGlmZSBleHBlY3RhbmN5IGFuZCBxdWFsaXR5IG9mIGxpZmUgZm9yIENGIHBhdGllbnRzLiBNYW55IGFyZSBlYWdlciB0byBlbWJyYWNlIHRoZXNlIGlubm92YXRpb25zLCBzZWVpbmcgdGhlbSBhcyBhIGxvbmctYXdhaXRlZCBicmVha3Rocm91Z2guIEhvd2V2ZXIsIHRoaXMgZXhjaXRlbWVudCBpcyBvZnRlbiBtaXhlZCB3aXRoIGNvbmNlcm5zIGFib3V0IHNpZGUgZWZmZWN0cywgdGhlIGFjY2Vzc2liaWxpdHkgb2YgdGhlc2UgdGhlcmFwaWVzLCBhbmQgdGhlaXIgbG9uZy10ZXJtIGVmZmVjdGl2ZW5lc3MuIFRoZSBwcm9zcGVjdCBvZiBzdWNoIHRyZWF0bWVudHMgYnJpbmdzIGhvcGUsIGJ1dCBhbHNvIGEgZGVncmVlIG9mIHNjZXB0aWNpc20sIHBhcnRpY3VsYXJseSBhcm91bmQgd2hldGhlciB0aGV5IHdpbGwgYmUgYWNjZXNzaWJsZSB0byBhbGwgd2hvIG5lZWQgdGhlbS4gXG4gICAgICBQc3ljaG9sb2dpY2FsIHN1cHBvcnQsIGZhbWlseSBjb3Vuc2VsbGluZywgYW5kIHRoZSBpbnZvbHZlbWVudCBvZiBwYXRpZW50IGNvbW11bml0aWVzIGFyZSBlc3NlbnRpYWwgaW4gaGVscGluZyBwYXRpZW50cyBhbmQgdGhlaXIgZmFtaWxpZXMgY29wZSB3aXRoIHRoZSBlbW90aW9uYWwgYW5kIG1lbnRhbCBjaGFsbGVuZ2VzIG9mIGJvdGggdGhlIGRpc2Vhc2UgYW5kIGl0cyB0cmVhdG1lbnRzLiBUaGUgc3RyZW5ndGggb2YgdGhlc2Ugc3VwcG9ydCBzeXN0ZW1zIGNhbiBtYWtlIGEgcHJvZm91bmQgZGlmZmVyZW5jZSBpbiBob3cgd2VsbCBwYXRpZW50cyBuYXZpZ2F0ZSB0aGUgY2hhbGxlbmdlcyBvZiBsaXZpbmcgd2l0aCBDRiwgcGFydGljdWxhcmx5IHdoZW4gYWRhcHRpbmcgdG8gbmV3IHRoZXJhcGllcy4gXG4gICAgICBXZSBhbHNvIGxlYXJuZWQgdGhhdCB3aGlsZSBuZXcgdGhlcmFwaWVzIGFyZSBleGNpdGluZywgdGhlaXIgc3VjY2VzcyBvZnRlbiBkZXBlbmRzIG9uIHRoZWlyIHByYWN0aWNhbGl0eS4gVHJlYXRtZW50cyB0aGF0IGFyZSBjb21wbGV4LCBpbnZhc2l2ZSwgb3IgYnVyZGVuc29tZSBhcmUgbGVzcyBsaWtlbHkgdG8gYmUgYWRvcHRlZCwgZXZlbiBpZiB0aGV5IHByb21pc2Ugc2lnbmlmaWNhbnQgYmVuZWZpdHMuIFNpbXBsaWNpdHksIGVhc2Ugb2YgdXNlLCBhbmQgcmVkdWNpbmcgdGhlIHRyZWF0bWVudCBidXJkZW4gYXJlIGNyaXRpY2FsIGZhY3RvcnMgaW4gZW5zdXJpbmcgcGF0aWVudHMgZnVsbHkgZW5nYWdlIHdpdGggYW5kIGJlbmVmaXQgZnJvbSB0aGVzZSB0aGVyYXBpZXMuIFxuICAgICAgVGhlc2UgaW5zaWdodHMgaGF2ZSBzaGFwZWQgb3VyIGFwcHJvYWNoLCByZWluZm9yY2luZyB0aGUgaW1wb3J0YW5jZSBvZiBjb25zaWRlcmluZyBib3RoIHRoZSBwc3ljaG9sb2dpY2FsIGFuZCBwcmFjdGljYWwgYXNwZWN0cyBvZiBuZXcgZ2VuZSB0aGVyYXBpZXMsIHRvIGJldHRlciBhZGRyZXNzIHRoZSBuZWVkcyBvZiBDRiBwYXRpZW50cyBhbmQgdGhlaXIgZmFtaWxpZXMuIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlc2UgZmluZGluZ3MgZGlyZWN0bHkgaW5mbHVlbmNlZCBzZXZlcmFsIGtleSBhcmVhcyBvZiB0aGUgcHJvamVjdC4gV2UgYWRhcHRlZCB0aGUgcHJvamVjdCB0byBlbXBoYXNpc2UgZWFzZSBvZiB1c2UgYW5kIG1pbmltYWwgZGlzcnVwdGlvbiB0byBwYXRpZW50cycgZGFpbHkgbGl2ZXMuIEZvciBleGFtcGxlLCB3ZSBmb2N1c2VkIG9uIGRldmVsb3BpbmcgYSB0aGVyYXB5IGRlbGl2ZXJ5IHN5c3RlbSB0aGF0IHdhcyBhcyBub24taW52YXNpdmUgYXMgcG9zc2libGUuIFJlY29nbmlzaW5nIHRoZSBtZW50YWwgaGVhbHRoIGNoYWxsZW5nZXMsIHdlIGludGVncmF0ZWQgb3VyIHByb2plY3Qgd2l0aCBhIHNpbXBsZSB0aGVyYXBldXRpYyBtZXRob2QgdG8gcmVkdWNlIHRoZSBtZW50YWwgYnVyZGVuIG9uIHBhdGllbnRzLiBXZSBoYXZlIGVtcGhhc2lzZWQgdHJhbnNwYXJlbmN5IGluIGNvbW11bmljYXRpbmcgdGhlIGJlbmVmaXRzLCByaXNrcyBhbmQgZXhwZWN0YXRpb25zIG9mIGdlbmUgdGhlcmFweSB0byBlbnN1cmUgdGhhdCBwYXRpZW50cyBoYXZlIGEgcmVhbGlzdGljIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHBvdGVudGlhbCBvdXRjb21lcy4gVGhpcyBpbmNsdWRlcyB3b3JraW5nIGNsb3NlbHkgd2l0aCBwYXRpZW50IG9yZ2FuaXNhdGlvbnMgdG8gZGlzc2VtaW5hdGUgY2xlYXIgYW5kIGFjY3VyYXRlIGluZm9ybWF0aW9uLiBXZSBhcmUgYWN0aXZlbHkgZW5nYWdpbmcgd2l0aCBDRiBwYXRpZW50IGNvbW11bml0aWVzIGFuZCBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMgdG8gZ2F0aGVyIG9uZ29pbmcgZmVlZGJhY2sgYW5kIGVuc3VyZSB0aGF0IHRoZSBwcm9qZWN0IGV2b2x2ZXMgYmFzZWQgb24gcmVhbCBwYXRpZW50IGV4cGVyaWVuY2VzIGFuZCBjaGFsbGVuZ2VzLiBUaGVyZWZvcmUgd2UgdXNlZCBvdXIgc3VydmV5IHRvIGdhdGhlciBmZWVkYmFjayBmcm9tIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gIFxuICAgICAgQnkgaW50ZWdyYXRpbmcgdGhlc2UgaW5zaWdodHMsIHdlIGFpbSB0byBjcmVhdGUgYSBnZW5lIHRoZXJhcHkgcHJvamVjdCB0aGF0IGFkZHJlc3NlcyBub3Qgb25seSB0aGUgbWVkaWNhbCBuZWVkcywgYnV0IGFsc28gdGhlIGVtb3Rpb25hbCBhbmQgcHJhY3RpY2FsIGNvbmNlcm5zIG9mIENGIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJPdXIgcHJvamVjdCBhaW1zIHRvIGFkZHJlc3MgdGhlIHBzeWNob2xvZ2ljYWwgYW5kIG1lZGljYWwgY2hhbGxlbmdlcyBmYWNlZCBieSBjeXN0aWMgZmlicm9zaXMgKENGKSBwYXRpZW50cyBhbmQgdGhlaXIgZmFtaWxpZXMsIHBhcnRpY3VsYXJseSByZWdhcmRpbmcgZ2VuZSB0aGVyYXBpZXMuIFdlIGVuZ2FnZWQgd2l0aCBwc3ljaG9sb2dpc3RzIGFuZCBnYXRoZXJlZCBpbnNpZ2h0cyBmcm9tIHBhdGllbnRzIGFuZCBjYXJlZ2l2ZXJzLCByZXZlYWxpbmcgc2lnbmlmaWNhbnQgZW1vdGlvbmFsIHN0cmFpbiBhbmQgYSBtaXggb2Ygb3B0aW1pc20gYW5kIGNvbmNlcm4gYWJvdXQgbmV3IHRyZWF0bWVudHMuIEtleSBmaW5kaW5ncyBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBwc3ljaG9sb2dpY2FsIHN1cHBvcnQgYW5kIHRoZSBwcmFjdGljYWxpdHkgb2YgdGhlcmFwaWVzIGluIGVuc3VyaW5nIHBhdGllbnQgZW5nYWdlbWVudC4gSW4gcmVzcG9uc2UsIHdlIGFyZSBkZXZlbG9waW5nIGEgdXNlci1mcmllbmRseSB0aGVyYXB5IGRlbGl2ZXJ5IHN5c3RlbSB0aGF0IG1pbmltaXplcyBkaXNydXB0aW9uIHRvIGRhaWx5IGxpZmUgd2hpbGUgZW1waGFzaXppbmcgdHJhbnNwYXJlbnQgY29tbXVuaWNhdGlvbiBhYm91dCB0cmVhdG1lbnQgcmlza3MgYW5kIGJlbmVmaXRzLiBPdXIgZ29hbCBpcyB0byBjcmVhdGUgYSBjb21wcmVoZW5zaXZlIGdlbmUgdGhlcmFweSBzb2x1dGlvbiB0aGF0IG1lZXRzIHRoZSBtZWRpY2FsIGFuZCBlbW90aW9uYWwgbmVlZHMgb2YgQ0YgcGF0aWVudHMuXCIsXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxuICAgIGludGVydmlldzo8PlxuICAgIDxRYUJveCBxPVwiV2hpY2ggcHN5Y2hvbG9naWNhbCBjaGFsbGVuZ2VzIGFyZSBwYXJ0aWN1bGFybHkgcmVsZXZhbnQgZm9yIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cz9cIiBhPVwiUHN5Y2hvbG9naWNhbCBwcm9ibGVtcyBhcmUgb2Z0ZW4gYSBtYWpvciBpc3N1ZSBmb3IgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzLiBNYW55IHBhdGllbnRzIGV4cGVyaWVuY2UgYW54aWV0eSBhbmQgZGVwcmVzc2lvbiwgYW5kIHRoZWlyIHBhcmVudHMgYXJlIGFsc28gb2Z0ZW4gYWZmZWN0ZWQuIFRoaXMgaXMgZXhhY2VyYmF0ZWQgYnkgdGhlIGNvbnN0YW50IHN0cmFpbiBhbmQgc3RyZXNzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZGlzZWFzZS4gU3BlY2lhbCBhdHRlbnRpb24gaXMgdGhlcmVmb3JlIHBhaWQgdG8gcHN5Y2hvbG9naWNhbCBzdXBwb3J0IGR1cmluZyBkaWFnbm9zaXMgYW5kIG9uZ29pbmcgdHJlYXRtZW50LiBSZWd1bGFyIHNjcmVlbmluZ3MgZm9yIGFueGlldHkgYW5kIGRlcHJlc3Npb24gYXMgd2VsbCBhcyB0aGUgZWFybHkgaW52b2x2ZW1lbnQgb2YgcGFyZW50cyBpbiB0aGUgdHJlYXRtZW50IHByb2Nlc3MgYXJlIGNlbnRyYWwgY29tcG9uZW50cyBvZiBjYXJlLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgc2lnbmlmaWNhbmNlIGRvIHRoZSBuZXcgdGhlcmFwaWVzIGhhdmUgZm9yIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cz9cIiBhPVwiTmV3IHRoZXJhcGllcyBhcmUgXHUyMDE4Z2FtZSBjaGFuZ2Vyc1x1MjAxOSBmb3IgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzLCBhcyB0aGV5IHNpZ25pZmljYW50bHkgaW1wcm92ZSBsaWZlIGV4cGVjdGFuY3kgYW5kIHF1YWxpdHkgb2YgbGlmZS4gSW4gdGhlIHBhc3QsIGN5c3RpYyBmaWJyb3NpcyB3YXMgbWFpbmx5IGEgcGFlZGlhdHJpYyBkaXNlYXNlIHdpdGggYSBzaG9ydCBsaWZlIGV4cGVjdGFuY3kuIFRvZGF5LCBuZXcgdGhlcmFwaWVzIG1ha2UgaXQgcG9zc2libGUgdG8gc2lnbmlmaWNhbnRseSBleHRlbmQgbGlmZSBleHBlY3RhbmN5IGFuZCBpbXByb3ZlIHF1YWxpdHkgb2YgbGlmZS4gTmV2ZXJ0aGVsZXNzLCB0aGUgZGlzZWFzZSBwZXJzaXN0cywgYW5kIHBhdGllbnRzIHN0aWxsIHJlcXVpcmUgY29tcHJlaGVuc2l2ZSB0cmVhdG1lbnQuIEltcHJvdmluZyBxdWFsaXR5IG9mIGxpZmUgdGhyb3VnaCBlYXJseSBhbmQgY29udGludW91cyB0aGVyYXB5IHRoZXJlZm9yZSByZW1haW5zIG9mIGdyZWF0IGltcG9ydGFuY2UuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGlzIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBpbnRlZ3JhdGVkIGludG8gcmVndWxhciB0cmVhdG1lbnQ/XCIgYT1cIlBzeWNob2xvZ2ljYWwgc3VwcG9ydCBpcyBhbiBpbnRlZ3JhbCBwYXJ0IG9mIHRoZSB0cmVhdG1lbnQgb2YgY3lzdGljIGZpYnJvc2lzLiBDYXJlIGlzIHRha2VuIHRvIGVuc3VyZSB0aGF0IGJvdGggcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIGFyZSBzdXBwb3J0ZWQgYXQgYW4gZWFybHkgc3RhZ2UuIFRoaXMgaW5jbHVkZXMgcmVndWxhciBzY3JlZW5pbmdzIGZvciBhbnhpZXR5IGFuZCBkZXByZXNzaW9uLCBwc3ljaG8tZWR1Y2F0aW9uYWwgbWVhc3VyZXMgYW5kLCBpZiBuZWNlc3NhcnksIGZ1cnRoZXIgcHN5Y2hvdGhlcmFwZXV0aWMgc3VwcG9ydC4gVGhlIHRlYW0gd29ya3Mgb24gYW4gaW50ZXJkaXNjaXBsaW5hcnkgYmFzaXMgdG8gZW5zdXJlIHRoYXQgYWxsIGFzcGVjdHMgb2YgcGF0aWVudCBjYXJlIGFyZSB0YWtlbiBpbnRvIGFjY291bnQuIElmIG5lY2Vzc2FyeSwgZXh0ZXJuYWwgaGVscCBpcyBhbHNvIGFycmFuZ2VkLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBpcyBjby1vcGVyYXRpb24gYmV0d2VlbiBtZWRpY2FsIHNwZWNpYWxpc3RzIGFuZCBwc3ljaG9sb2dpc3RzIGltcHJvdmVkP1wiIGE9XCJUaGUgY29sbGFib3JhdGlvbiBiZXR3ZWVuIG1lZGljYWwgc3BlY2lhbGlzdHMgYW5kIHBzeWNob2xvZ2lzdHMgaXMgY2hhcmFjdGVyaXNlZCBieSBzaG9ydCBjb21tdW5pY2F0aW9uIGNoYW5uZWxzIGFuZCBjbG9zZSBjb29wZXJhdGlvbi4gU3BlY2lhbGlzdHMgY2FuIGV4Y2hhbmdlIGluZm9ybWF0aW9uIHF1aWNrbHkgYW5kIG1ha2UgZGVjaXNpb25zIHRvZ2V0aGVyLiBUaGlzIGVuYWJsZXMgY29tcHJlaGVuc2l2ZSBhbmQgY29vcmRpbmF0ZWQgY2FyZSBmb3IgcGF0aWVudHMuIEVmZmVjdGl2ZSBjb21tdW5pY2F0aW9uIGNoYW5uZWxzIGFyZSBhbHJlYWR5IGluIHBsYWNlIGFuZCB0aGlzIGNsb3NlIGNvLW9wZXJhdGlvbiBpcyBzZWVuIGFzIHZlcnkgcG9zaXRpdmUuIEltcHJvdmVtZW50cyBjb3VsZCBiZSBhY2hpZXZlZCB0aHJvdWdoIGFkZGl0aW9uYWwgdGltZSBzbG90cyBmb3IgZGlhbG9ndWUgb3IgZXhwYW5kZWQgcmVzb3VyY2VzLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkbyBmYW1pbGllcyByZWFjdCB0byB0aGUgbmV3cyBvZiBhIHNlcmlvdXMgZGlhZ25vc2lzIGFuZCBob3cgaW1wb3J0YW50IGlzIGl0IHRoYXQgdGhleSByZWNlaXZlIHN1cHBvcnQgYXQgYW4gZWFybHkgc3RhZ2U/XCIgYT1cIkZhbWlsaWVzIGFyZSBvZnRlbiBzaG9ja2VkIGF0IGZpcnN0IHdoZW4gdGhleSByZWNlaXZlIHRoZSBkaWFnbm9zaXMuIFRoZXkgZmlyc3QgaGF2ZSB0byBjb21lIHRvIHRlcm1zIHdpdGggaXQgYW5kIHByb2Nlc3MgaXQuIEluaXRpYWxseSwgbWFueSBkb24ndCBhc2sgZm9yIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBzdHJhaWdodCBhd2F5LCBhbHRob3VnaCB0aGF0IHdvdWxkIGJlIGhlbHBmdWwuIEl0IHdvdWxkIGJlIGdvb2QgaWYgdGhleSB3ZXJlIGluZm9ybWVkIGFib3V0IGFsbCBhdmFpbGFibGUgcmVzb3VyY2VzIGF0IGFuIGVhcmx5IHN0YWdlLCBldmVuIGlmIHRoZXkgZG9uJ3Qgd2FudCB0byBtYWtlIHVzZSBvZiB0aGVtIHN0cmFpZ2h0IGF3YXkuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvZXMgYWNjZXNzIHRvIGdlbmUgdGhlcmFweSBhZmZlY3QgdGhlIHBzeWNob2xvZ2ljYWwgZGlzdHJlc3Mgb2YgcGF0aWVudHMgYW5kIGZhbWlsaWVzP1wiIGE9XCJBY2Nlc3MgdG8gZ2VuZSB0aGVyYXB5IGNhbiBoYXZlIGEgc2lnbmlmaWNhbnQgaW1wYWN0IG9uIHBzeWNob2xvZ2ljYWwgZGlzdHJlc3MuIFdoZW4gdGhlcmFweSBpcyBlZmZlY3RpdmUsIGZhbWlsaWVzIG9mdGVuIHNlZSBncmVhdCBwcm9ncmVzcyBhbmQgZmVlbCByZWxpZXZlZC4gQnV0IGlmIHRoZXJlIGlzIG5vIHN1aXRhYmxlIHRoZXJhcHksIG1hbnkgYXJlIHN0dWNrIHdpdGggb2xkZXIsIGxlc3MgZWZmZWN0aXZlIHRyZWF0bWVudHMsIHdoaWNoIGNhbiBsZWFkIHRvIGZydXN0cmF0aW9uIGFuZCBhIHNlbnNlIG9mIGRpc2FkdmFudGFnZS4gVGhlIGRpZmZlcmVuY2UgaW4gcXVhbGl0eSBvZiBsaWZlIGFuZCBvdXRsb29rIGlzIGh1Z2UuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvIHBhdGllbnRzIGFuZCBmYW1pbGllcyBmZWVsIGFib3V0IGdlbmUgdGhlcmFweSBjb21wYXJlZCB0byB0cmFkaXRpb25hbCB0aGVyYXBpZXM/XCIgYT1cIlRoZSB3aWxsaW5nbmVzcyB0byBwYXJ0aWNpcGF0ZSBpbiBnZW5lIHRoZXJhcGllcyBpcyBvZnRlbiBoaWdoLCBlc3BlY2lhbGx5IGlmIHRoZSBleGlzdGluZyB0aGVyYXBpZXMgYXJlIG5vdCBzdWZmaWNpZW50LiBUaGVyZSBpcyBhIGdyZWF0IG9wZW5uZXNzIHRvIG5ldyBhcHByb2FjaGVzLCBldmVuIGlmIHRoZXkgYXJlIG5ldyBhbmQgcG9zc2libHkgbm90IHlldCBmdWxseSB0ZXN0ZWQuIFRoZSBob3BlIGZvciBwcm9ncmVzcyBhbmQgaW1wcm92ZW1lbnQgaXMgc3Ryb25nLCBidXQgdGhlcmUgYXJlIGFsc28gY29uY2VybnMgYW5kIHVuY2VydGFpbnRpZXMgYWJvdXQgbmV3IHRoZXJhcGllcy5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGF0IHBzeWNob2xvZ2ljYWwgY2hhbGxlbmdlcyBjYW4gYXJpc2UgZm9sbG93aW5nIHRoZSBpbnRyb2R1Y3Rpb24gb2YgbmV3IHRoZXJhcGllcz9cIiBhPVwiTmV3IHRoZXJhcGllcyBub3Qgb25seSBicmluZyByZWxpZWYsIGJ1dCBhbHNvIGNoYWxsZW5nZXMuIFBhdGllbnRzIGFuZCBmYW1pbGllcyBoYXZlIHRvIGFkYXB0IHRvIGEgY2hhbmdlZCByZWFsaXR5LiBJZGVudGl0eSBjcmlzZXMgY2FuIG9jY3VyLCBlc3BlY2lhbGx5IGlmIHRoZSBpbGxuZXNzIGhhcyBiZWVuIGEgYmlnIHBhcnQgb2YgbGlmZSBmb3IgYSBsb25nIHRpbWUuIFRoZSBwcm9jZXNzIG9mIGFkanVzdG1lbnQgYW5kIHRoZSBwb3NzaWJsZSBmZWVsaW5ncyBvZiBhbGllbmF0aW9uIGZyb20gdGhlIHByZXZpb3VzIGNvbW11bml0eSBjYW4gY2F1c2UgYWRkaXRpb25hbCBwc3ljaG9sb2dpY2FsIHN0cmVzcy5cIi8+XG4gICAgPFFhQm94IHE9XCJIb3cgaW1wb3J0YW50IGlzIGNvbXByZWhlbnNpdmUgaW5mb3JtYXRpb24gYW5kIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBpbiBjb25uZWN0aW9uIHdpdGggZ2VuZSB0aGVyYXBpZXM/XCIgYT1cIkl0IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQgdGhhdCBwYXRpZW50cyByZWNlaXZlIGNvbXByZWhlbnNpdmUgaW5mb3JtYXRpb24gYW5kIHBzeWNob2xvZ2ljYWwgc3VwcG9ydC4gUGVvcGxlIHNob3VsZCBrbm93IHdoYXQgdGhleSBjYW4gZXhwZWN0IGZyb20gdGhlIHRoZXJhcHkgYW5kIHdoYXQgYWRqdXN0bWVudHMgbWlnaHQgYmUgbmVjZXNzYXJ5LiBUYWxraW5nIG9wZW5seSBhYm91dCBwb3NzaWJsZSBkaXNhcHBvaW50bWVudHMgYW5kIGNoYWxsZW5nZXMgY2FuIGhlbHAgdGhlbSB0byBjb3BlIGJldHRlciB3aXRoIHRoZSBjaGFuZ2VzLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkb2VzIHRoZSByb2xlIG9mIHN1cHBvcnQgZ3JvdXBzIGFuZCBwYXRpZW50IG9yZ2FuaXNhdGlvbnMgaW5mbHVlbmNlIGNvbmZpZGVuY2UgaW4gbmV3IHRoZXJhcGllcz9cIiBhPVwiU3VwcG9ydCBncm91cHMgYW5kIHBhdGllbnQgb3JnYW5pc2F0aW9ucyBhcmUgY3J1Y2lhbCBmb3IgY29uZmlkZW5jZSBpbiBuZXcgdGhlcmFwaWVzLiBJZiB0aGV5IGFyZSBhY3RpdmVseSBpbnZvbHZlZCBpbiByZXNlYXJjaCBhbmQgcHJvdmlkZSB0cmFuc3BhcmVudCBpbmZvcm1hdGlvbiwgdGhpcyBzdHJlbmd0aGVucyBwYXRpZW50IGNvbmZpZGVuY2UuIFRoZSB1c2Ugb2YgZG9uYXRpb25zIGFuZCB0aGUgZXN0YWJsaXNobWVudCBvZiByZWdpc3RyaWVzIGJ5IHN1Y2ggb3JnYW5pc2F0aW9ucyBjcmVhdGVzIHRydXN0IGFuZCBzaG93cyB0aGF0IHRoZXJlIGFyZSBzZXJpb3VzIGVmZm9ydHMgdG8gaW1wcm92ZSB0aGUgc2l0dWF0aW9uLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHRoZSBjaGFsbGVuZ2VzIGluIGFkYXB0aW5nIHRoZXJhcGllcyB0byBkaWZmZXJlbnQgZ2VuZXRpYyBtdXRhdGlvbnM/XCIgYT1cIkFkYXB0aW5nIHRoZXJhcGllcyB0byBkaWZmZXJlbnQgZ2VuZXRpYyBtdXRhdGlvbnMgaXMgYSBtYWpvciBjaGFsbGVuZ2UuIFdoaWxlIHRoZXJlIGhhcyBiZWVuIHByb2dyZXNzIGluIHRoZSB0cmVhdG1lbnQgb2YgY2VydGFpbiBtdXRhdGlvbnMgc3VjaCBhcyBEZWx0YS1GNTA4LCB3ZSBhcmUgc3RpbGwgYXQgdGhlIGJlZ2lubmluZyB3aXRoIG90aGVycy4gSW4gdGhlIGxvbmcgdGVybSwgYSBtb2R1bGFyIGdlbmUgdGhlcmFweSB0aGF0IGlzIGN1c3RvbWlzZWQgdG8gdGhlIHNwZWNpZmljIG11dGF0aW9ucyB3b3VsZCBiZSBpZGVhbC4gSXQgd2lsbCB0YWtlIGEgbG90IG9mIHdvcmsgdG8gZGV2ZWxvcCB0aGVzZSB0aGVyYXBpZXMgZm9yIGFsbCByZWxldmFudCBtdXRhdGlvbnMuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvIGZhbWlsaWVzIGFuZCBwYXRpZW50cyBkZWFsIHdpdGggdGhlIHJhcGlkIGZlZWRiYWNrIG9uIGV4cGVyaW1lbnRhbCB0aGVyYXBpZXM/XCIgYT1cIklmIHlvdSByZWFsaXNlIHRoYXQgYSB0aGVyYXB5IGlzIG5vdCB3b3JraW5nIGFzIGV4cGVjdGVkLCB0aGlzIGlzIGNvbW11bmljYXRlZCB2ZXJ5IHF1aWNrbHkuIFRoZSBmZWVkYmFjayBzeXN0ZW0gaXMgcXVpdGUgZWZmZWN0aXZlOiBlaXRoZXIgdGhlcmUgaXMgY2F1c2UgZm9yIGV1cGhvcmlhIGJlY2F1c2UgZXZlcnl0aGluZyBpcyBnb2luZyB3ZWxsLCBvciB0aGVyZSBpcyBiYWQgbmV3cy4gVGhpcyBxdWljayBmZWVkYmFjayBpcyBhbHNvIHJlYXNzdXJpbmcgYmVjYXVzZSBpdCBtZWFucyB5b3UgZG9uJ3QgaGF2ZSB0byBiZSBpbiB0aGUgZGFyayBmb3IgbG9uZy4gWW91IGFyZSBzaW1wbHkgZ3JhdGVmdWwgd2hlbiB5b3Uga25vdyBob3cgdGhlIHRoZXJhcHkgaXMgZ29pbmcsIGV2ZW4gaWYgaXQgaXMgbm90IGhhdmluZyB0aGUgZGVzaXJlZCBlZmZlY3QuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGltcG9ydGFudCBpcyB0aGUgY29tbXVuaXR5IGZvciBjeXN0aWMgZmlicm9zaXMgc3VmZmVyZXJzP1wiIGE9XCJUaGUgY3lzdGljIGZpYnJvc2lzIGNvbW11bml0eSBpcyBpbmNyZWRpYmx5IHN0cm9uZyBhbmQgd2VsbCBjb25uZWN0ZWQuIFRoYXQncyByZWFsbHkgaW1wcmVzc2l2ZS4gVGhvc2UgYWZmZWN0ZWQgb2Z0ZW4gaGF2ZSBubyBvdGhlciBwb2ludCBvZiBjb250YWN0IHRoYW4gdGhpcyBjb21tdW5pdHkgdG8gZXhjaGFuZ2UgaW5mb3JtYXRpb24uIEl0J3MgYSByZWxpYWJsZSBzb3VyY2Ugb2YgdmFsaWQgaW5mb3JtYXRpb24sIGFuZCB0aGF0J3Mgd29ydGggaXRzIHdlaWdodCBpbiBnb2xkLiBUaGUgY29tbXVuaXR5IGlzIGhvbmVzdCBhbmQgcmVhbGlzdGljIC0gdGhlcmUgaXMgbm8gc3VnYXJjb2F0aW5nLCB0aGUgaW5mb3JtYXRpb24gaXMgZGlyZWN0IGFuZCB3ZWxsIGRvY3VtZW50ZWQuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBpcyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gZGlmZmVyZW50IHNwZWNpYWxpc3QgZGlzY2lwbGluZXMgaW4gdGhlIHRyZWF0bWVudCBvZiBjeXN0aWMgZmlicm9zaXM/XCIgYT1cIkluIGN5c3RpYyBmaWJyb3NpcyB0cmVhdG1lbnQsIHRoZSBzcGVjaWFsaXN0IGRpc2NpcGxpbmVzIHdvcmsgdG9nZXRoZXIgYXMgZXF1YWxzLiBBdCBjb25ncmVzc2VzLCBhbGwgZGlzY2lwbGluZXMgc3VjaCBhcyBwaHlzaW9zLCBkb2N0b3JzLCBwc3ljaG9sb2dpc3RzIGFuZCBudXRyaXRpb25pc3RzIGFyZSBlcXVhbGx5IHJlcHJlc2VudGVkLiBFdmVyeW9uZSB0YWtlcyBlYWNoIG90aGVyIHNlcmlvdXNseSBhbmQgdGhlcmUgaXMgYSBzdHJvbmcgaW50ZXJlc3QgaW4gZGV2ZWxvcGluZyBlYWNoIG90aGVyIGZ1cnRoZXIuIFRoaXMgaXMgcmVhbGx5IGV4Y2l0aW5nIGJlY2F1c2UgaXQgc2hvd3MgdGhhdCBldmVyeW9uZSBpcyB3b3JraW5nIHRvZ2V0aGVyIHRvIHByb3ZpZGUgdGhlIGJlc3QgY2FyZS5cIi8+XG4gICAgPFFhQm94IHE9XCJIb3cgZG8gZmFtaWxpZXMgZGVhbCB3aXRoIHRoZSBjaGFsbGVuZ2VzIG9mIHRoZXJhcHkgYW5kIHRoZSBmaW5hbmNpYWwgYXNwZWN0cz9cIiBhPVwiTWFueSBmYW1pbGllcyBhcmUgY29uZnJvbnRlZCB3aXRoIGV4dHJlbWVseSBoaWdoIHRoZXJhcHkgYW5kIHRyZWF0bWVudCBjb3N0cy4gVGhlcmUgaGFzIGJlZW4gcHJvZ3Jlc3MgYW5kIG1hbnkgdHJlYXRtZW50IG9wdGlvbnMgaW4gR2VybWFueSwgYnV0IHRoZXNlIGFyZSBvZnRlbiBleHBlbnNpdmUgYW5kIG5vdCBhdmFpbGFibGUgZXZlcnl3aGVyZS4gQXMgYSByZXN1bHQsIHNvbWUgZmFtaWxpZXMgYXJlIGZvcmNlZCB0byBsZWF2ZSB0aGVpciBob21lIGNvdW50cnkgaW4gb3JkZXIgdG8gcmVjZWl2ZSBiZXR0ZXIgbWVkaWNhbCBjYXJlLiBUaGlzIGlzIGFuIGVub3Jtb3VzIGJ1cmRlbiBhbmQgc2hvd3MgaG93IHVuZmFpciB0aGUgZGlzdHJpYnV0aW9uIG9mIHJlc291cmNlcyBpcyB3b3JsZHdpZGUuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGlzIG1lZGljYWwgY2FyZSBmb3IgcmVmdWdlZXMgb3JnYW5pc2VkP1wiIGE9XCJGb3IgcmVmdWdlZXMgZnJvbSBjb3VudHJpZXMgc3VjaCBhcyBVa3JhaW5lIG9yIG90aGVyIGNyaXNpcyBhcmVhcywgY2FyZSBpcyBvZnRlbiBhIGNoYWxsZW5nZS4gRHVyaW5nIGVtZXJnZW5jeSBjYXJlLCB0aGUgY2hpbGRyZW4gYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSB3ZXJlIEdlcm1hbiBwYXRpZW50cy4gQnV0IHdoZW4gdGhlIHJlZnVnZWVzIGhhdmUgdG8gcmV0dXJuIHRvIHRoZWlyIGhvbWUgY291bnRyaWVzLCB0aGUgdGhlcmFweSBvZnRlbiBlbmRzLCB3aGljaCBpcyBhbiBlbm9ybW91cyBidXJkZW4gZm9yIHRoZSBmYW1pbGllcy4gSXQgaXMgZGlmZmljdWx0IGZvciB0aGVtIHRvIHByZXBhcmUgZm9yIHRoZSBmdXR1cmUgd2hlbiB0aGVpciBzdGF0dXMgaXMgdW5jbGVhciwgYW5kIHRoZXkgY29uc3RhbnRseSBsaXZlIHdpdGggdGhlIGZlYXIgb2YgYmVpbmcgZGVwb3J0ZWQuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IG11Y2ggcHN5Y2hvbG9naWNhbCBzdHJlc3MgaXMgY2F1c2VkIGJ5IHRoZXJhcGllcyBhbmQgdGhlaXIgaW1wbGVtZW50YXRpb24/XCIgYT1cIlRoZXJhcGllcyBjYW4gYmUgYSBtYWpvciBwc3ljaG9sb2dpY2FsIGJ1cmRlbiwgZXZlbiBpZiB0aGV5IGhhdmUgZnVuZGFtZW50YWxseSBwb3NpdGl2ZSBlZmZlY3RzLiBSZWd1bGFyIGluaGFsYXRpb25zLCB0YWJsZXRzIGFuZCBvdGhlciB0cmVhdG1lbnRzIGFyZSBvZnRlbiB0ZWRpb3VzIGFuZCByZXF1aXJlIGEgbG90IG9mIGRpc2NpcGxpbmUuIFNvbWUgcGF0aWVudHMgZmluZCBpdCBleHRyZW1lbHkgY2hhbGxlbmdpbmcgdG8gc3RpY2sgdG8gYSByZWd1bGFyIHRoZXJhcHkgc2NoZWR1bGUsIGVzcGVjaWFsbHkgaWYgdGhlIHRoZXJhcHkgZG9lcyBub3QgYnJpbmcgYW55IGltbWVkaWF0ZWx5IHZpc2libGUgcHJvZ3Jlc3MgaW4gdGhlIGxvbmcgdGVybS4gSXQgaXMgaW1wb3J0YW50IHRvIGJlIHJlYWxpc3RpYyBhYm91dCB0aGUgYnVyZGVuIG9mIHRoZXJhcHksIGFzIGl0IGNhbiBoYXZlIGEgbWFqb3IgaW1wYWN0IG9uIGRhaWx5IGxpZmUgYW5kIHdlbGwtYmVpbmcuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvIHBhdGllbnRzIHJlYWN0IHRvIG5ldyB0aGVyYXBpZXMgYW5kIHRoZSBhc3NvY2lhdGVkIGNoYWxsZW5nZXM/XCIgYT1cIk1hbnkgcGF0aWVudHMgYXJlIG9wZW4gdG8gbmV3IHRoZXJhcGllcyBidXQgaW1wbGVtZW50aW5nIHRoZW0gY2FuIGJlIGEgbWFqb3IgY2hhbGxlbmdlLiBJZiBhIG5ldyB0aGVyYXB5IGRvZXNuJ3Qgd29yayBpbW1lZGlhdGVseSBhdCBmaXJzdCBvciBldmVuIGhhcyBzaWRlIGVmZmVjdHMsIHRoaXMgY2FuIGJlIGRlbW90aXZhdGluZy4gVGhpcyBpcyBwYXJ0aWN1bGFybHkgZGlmZmljdWx0IGlmIHlvdSBoYXZlIGJlZW4gdW5kZXJnb2luZyB0cmVhdG1lbnQgZm9yIGEgbG9uZyB0aW1lIGFuZCBhcmUgaG9waW5nIHRvIG1ha2UgZ3JlYXQgcHJvZ3Jlc3MuIFRoZSBwYXRoIHRvIGEgYmV0dGVyIGNvbmRpdGlvbiBpcyBvZnRlbiBhcmR1b3VzIGFuZCBub3QgZXZlcnkgdGhlcmFweSBicmluZ3MgdGhlIGRlc2lyZWQgaW1wcm92ZW1lbnQuIE5ldmVydGhlbGVzcywgaXQgaXMgaW1wb3J0YW50IHRvIGtlZXAgZ29pbmcgYW5kIHBlcnNldmVyZSB3aXRoIHRoZSB0aGVyYXB5LCBldmVuIGlmIHRoZXJlIGFyZSBoYXJkIHRpbWVzLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBtdWNoIG9mIHRoZSBvdmVyYWxsIGlsbG5lc3MgaXMgcHN5Y2hvbG9naWNhbCBkaXN0cmVzcywgaW4gYWRkaXRpb24gdG8gdGhlIHBoeXNpY2FsIHN5bXB0b21zIGFuZCBkaXN0cmVzcyBmcm9tIHRoZXJhcGllcz9cIiBhPVwiVGhlIHBzeWNob2xvZ2ljYWwgcGFydCBvZiB0aGUgYnVyZGVuIGlzIGRpZmZpY3VsdCB0byBxdWFudGlmeSwgYXMgaXQgdmFyaWVzIGdyZWF0bHkgZnJvbSBpbmRpdmlkdWFsIHRvIGluZGl2aWR1YWwgYW5kIGlzIGluZmx1ZW5jZWQgYnkgbWFueSBmYWN0b3JzLiBUaGUgaW50ZXJhY3Rpb24gYmV0d2VlbiBwc3ljaG9sb2dpY2FsIHN0YWJpbGl0eSBhbmQgcGh5c2ljYWwgaGVhbHRoIGlzIGNvbnNpZGVyYWJsZSwgYXMgcHN5Y2hvbG9naWNhbCBzdHJlc3MgY2FuIGltcGFpciBzZWxmLWNhcmUgYW5kIHRodXMgcGh5c2ljYWwgaGVhbHRoLiBBdCBkaWZmZXJlbnQgc3RhZ2VzIG9mIGxpZmUsIHRoZSBwc3ljaG9sb2dpY2FsIGNvbXBvbmVudCBjYW4gdmFyeS4gRm9yIGV4YW1wbGUsIGl0IGNhbiBpbmNyZWFzZSBkdXJpbmcgcHViZXJ0eSBhbmQgeW91bmcgYWR1bHRob29kLiBUaGUgcHN5Y2hvbG9naWNhbCBjb21wb25lbnQgaXMgdGhlcmVmb3JlIG5vdCBzbWFsbCBhbmQgdmFyaWVzIGRlcGVuZGluZyBvbiB0aGUgaW5kaXZpZHVhbCBzaXR1YXRpb24gYW5kIHBoYXNlIG9mIGxpZmUuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGlzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNlYXNlIGFzc2Vzc2VkIHRocm91Z2ggcHJvamVjdHMgc3VjaCBhcyBNdWtvTW92ZSBvciBwcm9qZWN0cyBmb3IgY2hpbGRyZW4/XCIgYT1cIlRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNlYXNlIHRocm91Z2ggc3VjaCBwcm9qZWN0cyBjYW4gYmUgaGVscGZ1bCBpbiByYWlzaW5nIGF3YXJlbmVzcy4gV2l0aCByYXJlIGRpc2Vhc2VzIHN1Y2ggYXMgY3lzdGljIGZpYnJvc2lzLCB0aGUgZGlzZWFzZSBvZnRlbiByZW1haW5zIGFic3RyYWN0IGlmIHRoZXJlIGFyZSBubyBwZW9wbGUgZGlyZWN0bHkgYWZmZWN0ZWQgbmVhcmJ5LiBFZHVjYXRpb25hbCBwcm9qZWN0cyBzdWNoIGFzIE11a29Nb3ZlIGNhbiBoZWxwIGNoaWxkcmVuIGRldmVsb3AgYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgZGlzZWFzZSwgZXZlbiBpZiB0aGUgaW1wYWN0IGlzIGxpbWl0ZWQgaWYgdGhlcmUgYXJlIG5vIGRpcmVjdCBwb2ludHMgb2YgcmVmZXJlbmNlLiBIb3dldmVyLCBpdCBjYW4gYmUgaGVscGZ1bCBpZiBwYXRpZW50cyB0aGVtc2VsdmVzIGV4cGxhaW4gdGhlaXIgZGlzZWFzZSBpbiBzY2hvb2xzIG9yIGNsYXNzZXMsIGFzIHRoaXMgcHJvdmlkZXMgZGlyZWN0IGFuZCBwZXJzb25hbCBpbnNpZ2h0cy5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGF0IGFyZSBpbXBvcnRhbnQgYXNwZWN0cyBvZiBkZXNpZ25pbmcgYSBnZW5lIHRoZXJhcHkgcHJvamVjdCBzbyB0aGF0IGl0IGlzIHZpZXdlZCBwb3NpdGl2ZWx5IGJ5IGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cz9cIiBhPVwiV2hlbiBkZXNpZ25pbmcgYSBnZW5lIHRoZXJhcHkgcHJvamVjdCwgY2FyZSBzaG91bGQgYmUgdGFrZW4gdG8gbWluaW1pc2UgdGhlIHByYWN0aWNhbCBodXJkbGVzLiBUaGUgdGhlcmFweVwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgdGlwcyBjYW4gYmUgZ2l2ZW4gdG8gaW1wcm92ZSB0aGUgYWNjZXNzaWJpbGl0eSBhbmQgYWNjZXB0YW5jZSBvZiBwcm9qZWN0cyBvciB0aGVyYXBpZXMgaW4gY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzPyBcIiBhPVwiSXQgaXMgaW1wb3J0YW50IHRvIGVuc3VyZSB0aGUgYWNjZXNzaWJpbGl0eSBvZiBwcm9qZWN0cyBhbmQgdGhhdCB0aGV5IGFyZSBwcmFjdGljYWwgdG8gaW1wbGVtZW50LiBUaGUgYnVyZGVuIG9uIHBhdGllbnRzIHNob3VsZCBiZSBtaW5pbWlzZWQuIFRoaXMgaW5jbHVkZXMgZW5zdXJpbmcgdGhhdCB0aGUgdGhlcmFweSBpcyBub3Qgb25seSBlZmZlY3RpdmUgYnV0IGFsc28gYXMgcGxlYXNhbnQgYXMgcG9zc2libGUuIEluIGFkZGl0aW9uLCBjb21tdW5pY2F0aW9uIGFib3V0IHRoZSBwcm9ncmVzcyBvZiB0aGUgdGhlcmFweSBzaG91bGQgYmUgdHJhbnNwYXJlbnQgYW5kIHVuZGVyc3RhbmRhYmxlIHRvIGJ1aWxkIHRydXN0IGFuZCBtYWtlIGl0IGNsZWFyIHRvIHBhdGllbnRzIGhvdyB0aGV5IGNhbiBiZW5lZml0IGZyb20gdGhlIG5ldyBkZXZlbG9wbWVudHMuIFwiLz4gXG4gICAgPC8+LFxuICAgIHBpY3R1cmV1cmxfYWltOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvb24tb3VyLXdheS10by1pbnRlcnZpZXctcHN5Y2hvbG9naXN0cy53ZWJwXCIsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJEci5cIixcbiAgICB2b3JuYW1lOiBcIk1ha290b1wiLFxuICAgIG5hY2hubmFtZTogXCJTYWl0b1wiLFxuICAgIGpvYjogXCJQb3N0ZG9jXCIsXG4gICAgYWZmaWxpYXRpb246IFwiQnJvYWQgSW5zdGl0dXRlIG9mIE1JVCBhbmQgSGFydmFyZFwiLFxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3NhaXRvJ10sXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXG4gICAgaGVhZGluZzogXCJJbnNpZ2h0cyBhbmQgUmVjb21tZW5kYXRpb25zIGZyb20gSW50ZXJ2aWV3IG9uIFByb3RlaW4gRW5naW5lZXJpbmdcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJzYWl0b1wiLFxuICAgIGNhcmR0ZXh0OiBcIlwiLFxuICAgIGxhbmd1YWdlOlwiZW5cIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIlNhaXRvLCBMZWFkaW5nIHJlc2VhcmNoIGV4cGVydCBvZiBGQU5aT1IgXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkRyLiBNYWtvdG9cIixcbiAgICBxdW90ZTogXCJUaGlzIHByb2plY3QgaXMgYWN0dWFsbHkgYSByZWFsbHkgaG90LCB2ZXJ5IGltcG9ydGFudCBwcm9qZWN0IGF0IHRoZSBhYnNvbHV0ZSBjdXR0aW5nIGVkZ2Ugb2Ygc2NpZW5jZS4gSG9uZXN0bHksIEkgc2VlIHJlc2VhcmNoZXJzIGFyb3VuZCB0aGUgd29ybGQgd29ya2luZyBvbiBkZXZlbG9waW5nIHNtYWxsZXIgQ1JJU1BSLUNhcy1saWtlIHByaW1lIGVkaXRvcnMuIEl0IHNob3dzIHRoYXQgeW91IGd1eXMgYXJlIHdvcmtpbmcgb24gYSByZWFsbHkgaW1wb3J0YW50IHByb2JsZW0uXCIsXG4gICAgYWltb2Zjb250YWN0OiBcIlRoZSBhaW0gb2YgdGhlIGludGVydmlldyB3YXMgdG8gZ2FpbiBkZWVwZXIgaW5zaWdodHMgaW50byB0aGUgdG9waWMgb2YgcHJvdGVpbiBlbmdpbmVlcmluZywgZXNwZWNpYWxseSB3aXRoIHJlZ2FyZCB0byBGYW56b3IgKFNwdUZ6KSBhbmQgdG8gZ2V0IGZlZWRiYWNrIG9uIG91ciBleGlzdGluZyBhcHByb2FjaGVzIGZvciBwb3NzaWJsZSBuaWNrYXNlcywgYXMgd2VsbCBhcyBmb3IgdGhlIHBsYW5uZWQgbmlja2FzZSBhc3NheS4gXCIsXG4gICAgaW5zaWdodHM6IFwiVGhlIGludGVydmlldyBwcm92aWRlZCB0aGUgaUdFTSB0ZWFtIHdpdGggdmFsdWFibGUgYWR2aWNlIHJlZ2FyZGluZyB0aGVpciBQcmltZSBFZGl0aW5nIHByb2plY3QgYW5kIGVzcGVjaWFsbHkgb24gdGhlaXIgcGxhbm5lZCBuaWNrYXNlIGFzc2F5LiBEciBTYWl0byBnYXZlIGRldGFpbGVkIGZlZWRiYWNrIG9uIHRlY2huaWNhbCBjaGFsbGVuZ2VzLCBlc3BlY2lhbGx5IHdpdGggcHJvdGVpbiBleHByZXNzaW9uIGluIEUuIGNvbGksIGFuZCBzdWdnZXN0ZWQgc3dpdGNoaW5nIHRvIHllYXN0IGZvciBiZXR0ZXIgcmVzdWx0cy4gSGUgYWxzbyBlbmNvdXJhZ2VkIHRoZSB0ZWFtIHRvIHBsYW4gY2FyZWZ1bGx5LCBnaXZlbiB0aGUgcHJvamVjdCdzIGNvbXBsZXhpdHksIGFuZCBvZmZlcmVkIGd1aWRhbmNlIG9uIGZ1dHVyZSBleHBlcmltZW50cy5cdTIwMkYgXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiV2UgaGF2ZSBhZGFwdGVkIG91ciBwbGFubmVkIG5pY2thc2UgYXNzYXkgYWNjb3JkaW5nIHRvIERyIFNhaXRvJ3MgYWR2aWNlIGFuZCBjaGFuZ2VkIGl0IGFjY29yZGluZ2x5IHRvIGV4cHJlc3Npb24gb2YgdGhlIFJOUCBjb21wbGV4IHVzaW5nIHllYXN0LlwiLFxuICAgIHN1bW1hcnk6IFwiVGhlIGludGVydmlldyBhaW1lZCB0byBnYWluIGluc2lnaHRzIGludG8gcHJvdGVpbiBlbmdpbmVlcmluZywgcGFydGljdWxhcmx5IHJlZ2FyZGluZyBGYW56b3IgKFNwdUZ6KSwgYW5kIHRvIGdldCBmZWVkYmFjayBvbiBwb3RlbnRpYWwgbmlja2FzZXMgYW5kIGEgcGxhbm5lZCBuaWNrYXNlIGFzc2F5LiBEci4gU2FpdG8gcHJvdmlkZWQgdmFsdWFibGUgYWR2aWNlLCBzdWdnZXN0aW5nIHRoZSB1c2Ugb2YgeWVhc3QgZm9yIHByb3RlaW4gZXhwcmVzc2lvbiBvdmVyIEUuIGNvbGkgZHVlIHRvIHRlY2huaWNhbCBjaGFsbGVuZ2VzIGFuZCBlbmNvdXJhZ2VkIGNhcmVmdWwgcGxhbm5pbmcuIEJhc2VkIG9uIGhpcyBmZWVkYmFjaywgdGhlIGlHRU0gdGVhbSBoYXMgYWRhcHRlZCB0aGVpciBuaWNrYXNlIGFzc2F5IHRvIGV4cHJlc3MgdGhlIFJOUCBjb21wbGV4IGluIHllYXN0LCBhbGlnbmluZyB3aXRoIERyLiBTYWl0bydzIHJlY29tbWVuZGF0aW9ucy5cIixcbiAgICBtb250aHM6IFwiYXVndXN0XCIsXG4gICAgaW50ZXJ2aWV3Ojw+XG4gICAgPFFhQm94IHE9XCJBcmUgeW91IGZhbWlsaWFyIHdpdGggaUdFTSwgYnkgdGhlIHdheT9cIiBhPVwiT2YgY291cnNlLCBJIGtub3cgaXQuXCIvPlxuICAgIDxRYUJveCBxPVwiRGlkIHlvdSBwYXJ0aWNpcGF0ZSB5b3Vyc2VsZiBhdCBzb21lIHBvaW50P1wiIGE9XCJVbmZvcnR1bmF0ZWx5LCBJIGRpZG4ndC4gSSBiZWxvbmcgdG8gYW4gZWFybGllciBnZW5lcmF0aW9uLiBpR0VNIGFjdHVhbGx5IHN0YXJ0ZWQgcmVsYXRpdmVseSByZWNlbnRseS5cIi8+XG4gICAgPFFhQm94IHE9XCJXZSB0aG91Z2h0IGZvciB0aGUgc3RydWN0dXJlIG9mIHRoZSBpbnRlcnZpZXcsIHdlIHdvdWxkIHN0YXJ0IGJ5IGdpdmluZyB5b3UgYSBicmllZiBvdmVydmlldyBvZiBvdXIgcHJvamVjdCBzbyBmYXIgdG8gZmFtaWxpYXJpemUgeW91IHdpdGggaXQuIFRoZW4sIHdlXHUyMDE5bGwgbW92ZSBvbiB0byB0aGUgcXVlc3Rpb25zLiBJcyB0aGF0IG9rYXk/XCIgYT1cIlllcywgb2YgY291cnNlLCBwbGVhc2UgZ28gYWhlYWQuXCIvPlxuICAgIDxRYUJveCBxPVwiV2UndmUgYmVlbiB3b3JraW5nIG9uIHRoaXMgcHJvamVjdCBmb3IgbW9yZSB0aGFuIGhhbGYgYSB5ZWFyIG5vdy4gSXQgYmVnYW4gYmVjYXVzZSBvbmUgb2Ygb3VyIHRlYW0gbWVtYmVycyBoYXMgYSBmcmllbmQgd2l0aCBjeXN0aWMgZmlicm9zaXMuIFRoYXQgZ290IHVzIGludGVyZXN0ZWQgaW4gdGhlIHRvcGljLiBXZSBzdGFydGVkIGJ5IGludmVzdGlnYXRpbmcgaG93IGdlbmUgZWRpdGluZyB0ZWNobm9sb2dpZXMgbGlrZSBDUklTUFItQ2FzOSBjb3VsZCBiZSBhcHBsaWVkIHRvIGN5c3RpYyBmaWJyb3Npcy4gVGhlbiwgd2UgZXhwbG9yZWQgcHJpbWUgZWRpdGluZyBhbmQgY29uc2lkZXJlZCBpZiBpdCBjb3VsZCBiZSB1c2VkIGZvciB0aGlzIGRpc2Vhc2Ugb3IgYWRhcHRlZCBmb3Igb3RoZXIgYXBwbGljYXRpb25zLiBJbml0aWFsbHksIHdlIHdvbmRlcmVkIGlmIHdlIGNvdWxkIG1ha2UgcHJpbWUgZWRpdGluZyBtb3JlIGNvbXBhY3QsIGVzcGVjaWFsbHkgc2luY2UgZGVsaXZlcnkgaXMgY2hhbGxlbmdpbmcgZHVlIHRvIGl0cyBsYXJnZSBjb21wbGV4IHNpemUuIFdlIGxvb2tlZCBpbnRvIHZhcmlvdXMgZGVsaXZlcnkgbWV0aG9kcywgaW5jbHVkaW5nIEFBVnMgKEFkZW5vLUFzc29jaWF0ZWQgVmlydXNlcykuIE91ciBmaXJzdCBhcHByb2FjaCB3YXMgdG8gZXhwbG9yZSBhbHRlcm5hdGl2ZSBuaWNrYXNlcyBhbmQgcG9zc2libHkgZW5naW5lZXIgbmV3IG9uZXMuIFRoYXQncyBob3cgd2UgY2FtZSBhY3Jvc3MgeW91ciByZXNlYXJjaCBcdTIwMTMgRmFuem9yLiBXZSBhbHNvIGNvbnNpZGVyZWQgb3RoZXIgY2FuZGlkYXRlcyBsaWtlIENhc1guIEFyZSB5b3UgZmFtaWxpYXIgd2l0aCBDYXNYP1wiIGE9XCJZZXMsIEkgYW0uXCIvPlxuICAgIDxRYUJveCBxPVwiV2UncmUgYWxzbyBleHBlcmltZW50aW5nIHdpdGggY2hhbmdlcyB0byB0aGUgZWRpdGluZyBjb21wbGV4IGl0c2VsZi4gSW4gYWRkaXRpb24sIHdlIGFpbSB0byBkZWxpdmVyIHRoZSBlZGl0aW5nIGNvbXBsZXggdXNpbmcgbmFub3BhcnRpY2xlcy4gV2UgY2hvc2UgdG8gZm9jdXMgb24gdGhlIGx1bmdzLCBob3BpbmcgdGhhdCB0YXJnZXRpbmcgdGhpcyBhcmVhIHdvdWxkIHJlZHVjZSB0aGUgbmVlZCBmb3IgQUFWIHZpcnVzZXMsIG1ha2luZyB0aGUgZGVsaXZlcnkgbGVzcyBpbW11bm9nZW5pYyBhbmQgbm90IGFzIGxpbWl0ZWQgYnkgc2l6ZS5cIiBhPVwiU28sIGluIHRoaXMgaUdFTSBwcm9qZWN0LCB5b3UncmUgd29ya2luZyBvbiBib3RoIHJlZHVjaW5nIHRoZSBzaXplIG9mIHRoZSBwcmltZSBlZGl0b3IgYW5kIGRldmVsb3BpbmcgbmFub3BhcnRpY2xlcyBmb3IgZGVsaXZlcnk/XCIvPlxuICAgIDxRYUJveCBxPVwiWWVzLCB0aGF0XHUyMDE5cyB0aGUgcGxhbi4gQmVmb3JlIHdlIHN0YXJ0IHdpdGggdGhlIG1haW4gcXVlc3Rpb25zLCBob3cgbXVjaCB0aW1lIGRvIHlvdSBoYXZlPyBJcyBoYWxmIGFuIGhvdXIgb2theT9cIiBhPVwiTm8gcHJvYmxlbSwgaGFsZiBhbiBob3VyIGlzIGZpbmUuXCIvPlxuICAgIDxRYUJveCBxPVwiR3JlYXQhIFRoZW4sIGxldFx1MjAxOXMgc3RhcnQgd2l0aCB0aGUgZmlyc3QgcXVlc3Rpb24uIE91ciBhcHByb2FjaCB0byBtb2RpZnlpbmcgdGhlIGVuZG9udWNsZWFzZSBGQU5aT1Igc3RhcnRlZCB3aXRoIHVuZGVyc3RhbmRpbmcgaXRzIG1lY2hhbmlzbS4gQ291bGQgd2UgZ28gb3ZlciB0aGlzIG1lY2hhbmlzbSB3aXRoIHlvdSB0byBlbnN1cmUgd2UgdW5kZXJzdG9vZCBpdCBjb3JyZWN0bHk/XCIgYT1cIk9mIGNvdXJzZSwgcGxlYXNlIGdvIGFoZWFkLlwiLz5cbiAgICA8UWFCb3ggcT1cIkFzIHdlIHVuZGVyc3RhbmQgaXQsIHRoZSBGQU5aT1IgcHJvdGVpbiBoYXMgZGlmZmVyZW50IGRvbWFpbnMsIGluY2x1ZGluZyB0aGUgUnV2QyBhbmQgdGhlIE5VQyBkb21haW4uIFRoZSBSdXZDIGRvbWFpbiBjdXRzIHRoZSBETkEgYWZ0ZXIgYmluZGluZy4gSXMgdGhhdCBjb3JyZWN0P1wiIGE9XCJBY3R1YWxseSwgd2UgZG9uJ3QgY2FsbCB0aGlzIGRvbWFpbiB0aGUgTlVDIGRvbWFpbiBhbnltb3JlLiBJbiB0aGUgcGFzdCwgYWJvdXQgZWlnaHQgeWVhcnMgYWdvLCByZXNlYXJjaGVycyB0aG91Z2h0IGl0IHdhcyBhIG51Y2xlYXNlIGRvbWFpbiwgY2FsbGVkIHRoZSAnTlVDJyBkb21haW4uIEhvd2V2ZXIsIG5vdyB3ZSBrbm93IHRoYXQgdGhpcyBkb21haW4gaXRzZWxmIGRvZXMgbm90IGhhdmUgY2F0YWx5dGljIGFjdGl2aXR5LiBXZSBjYWxsIGl0IHRoZSBUTkIgZG9tYWluLCBkZXJpdmVkIGZyb20gdGhlIHByb3RlaW4ncyBhbmNlc3RvciwgVE5QQi5cIi8+XG4gICAgPFFhQm94IHE9XCJJIHNlZS4gVGhhbmsgeW91IGZvciBjbGFyaWZ5aW5nLiBXZSBhbHNvIG5vdGljZWQgdGhhdCBDYXM5IGhhcyB0d28gY2F0YWx5dGljIGRvbWFpbnMsIHdoaWNoIGFsbG93IGZvciBtdXRhdGlvbiBvZiBvbmUgb3IgdHdvIG9mIHRoZW0gdG8gY3JlYXRlIGEgbmlja2FzZSwgbWFraW5nIHNpbmdsZS1zdHJhbmQgY3V0cy4gSXMgdGhpcyBzaW1pbGFyIHdpdGggQ2FzMTIgZWxlbWVudHM/XCIgYT1cIkl0J3MgYSBiaXQgbW9yZSBjb21wbGljYXRlZCB3aXRoIENhczEyLiBUaGlzIHByb2plY3QsIGluIHBhcnRpY3VsYXIsIGlzIHZlcnkgYWR2YW5jZWQgYW5kIGludm9sdmVzIHVuZGVyc3RhbmRpbmcgdGhlIG51YW5jZXMgb2YgdGhlc2UgZG9tYWlucy4gVGhlIHBhcGVyIG9uIENhczEyIHByaW1lIGVkaXRpbmcgZGlzY3Vzc2VzIGhvdyBtdXRhdGlvbnMgY2FuIGFmZmVjdCBmdW5jdGlvbmFsaXR5LiBJbiBGQU5aT1IsIHlvdSBtaWdodCBiZSBhYmxlIHRvIGF0dGVtcHQgc2ltaWxhciBtdXRhdGlvbnMsIHRob3VnaCBJIGhhdmVuJ3QgcGVyc29uYWxseSB0cmllZCB0aGVtLlwiLz5cbiAgICA8UWFCb3ggcT1cIlRoYXQgYWxpZ25zIHdpdGggb3VyIHRoaW5raW5nLiBXZSByZWNlbnRseSBsb29rZWQgYXQgYSBwYXBlciBkZXNjcmliaW5nIHRoZSBlbmdpbmVlcmluZyBvZiBDYXMxMmEgaW50byBhIG5pY2thc2UuIE91ciBhcHByb2FjaCBpbnZvbHZlcyBpbnZlc3RpZ2F0aW5nIHNpbWlsYXIgcGF0dGVybnMgaW4gRkFOWk9SLiBGb3IgZXhhbXBsZSwgd2UgaWRlbnRpZmllZCB0d28ga2V5IGFtaW5vIGFjaWRzIFx1MjAxNCBnbHV0YW1pbmUgYW5kIGFyZ2luaW5lIFx1MjAxNCB0aGF0IGFwcGVhciB0byBpbnRlcmFjdCB3aXRoIHRoZSBETkEuXCIgYT1cIkkgYWdyZWUgdGhhdCB0YXJnZXRpbmcgc3BlY2lmaWMgZG9tYWlucyBpcyBhIHBvdGVudGlhbCBhcHByb2FjaC4gSG93ZXZlciwgYWx0ZXJpbmcgYW4gZW56eW1lIHRvIGdhaW4gYSBuZXcgZnVuY3Rpb24gaXMgY2hhbGxlbmdpbmcuIFRoZSBDYXMxMmEgcGFwZXIgcHJvdmlkZXMgYSBwYXRoIGZvcndhcmQgYnkgc2hvd2luZyBob3cgY2VydGFpbiBkb21haW5zIGNhbiBiZSBtdXRhdGVkIHRvIGNyZWF0ZSBuaWNrYXNlcy4gQWN0dWFsbHksIHRoaXMgcHJvamVjdCBpcyByZWFsbHkgaW1wb3J0YW50IGFuZCBhdCB0aGUgZm9yZWZyb250IG9mIHNjaWVuY2UuIFJlc2VhcmNoZXJzIHdvcmxkd2lkZSBhcmUgd29ya2luZyBvbiBkZXZlbG9waW5nIHNtYWxsZXIgQ1JJU1BSLUNhcy1saWtlIHByaW1lIGVkaXRvcnMuXCIvPlxuICAgIDxRYUJveCBxPVwiVGhhdFx1MjAxOXMgYXdlc29tZSB0byBoZWFyLCB0aGFuayB5b3UgZm9yIHRoaXMgZmVlZGJhY2suIFdlIHBsYW4gdG8gdGVzdCB0aGlzIGNvbmNlcHQuIE9uZSBvZiBvdXIgaWRlYXMgaXMgdG8gbXV0YXRlIHNwZWNpZmljIGFtaW5vIGFjaWRzIGluIHRoZSBUTkIgZG9tYWluIG9mIEZBTlpPUiB0byBzZWUgaWYgaXQgY2hhbmdlcyBpdHMgZnVuY3Rpb25hbGl0eS4gV2UgaGF2ZSBvcmRlcmVkIHRoZXNlIGRpZmZlcmVudCB2ZXJzaW9ucyBvZiBGQU5aT1IuXCIgYT1cIlRoYXRcdTIwMTlzIGEgcmVhc29uYWJsZSBhcHByb2FjaC4gSG93ZXZlciwgYmUgY2F1dGlvdXMuIElmIHRoZSBtdXRhdGlvbiBkZXN0YWJpbGl6ZXMgdGhlIHByb3RlaW4sIGl0IG1pZ2h0IG5vdCBiZSBleHByZXNzZWQgY29ycmVjdGx5LiBCdXQgaXQncyB3b3J0aCB0cnlpbmcsIGFzIHRoZSBvdXRjb21lIGNhbiB2YXJ5IGRlcGVuZGluZyBvbiB0aGUgbXV0YXRpb24gYW5kIHRoZSBwcm90ZWluLlwiLz5cbiAgICA8UWFCb3ggcT1cIlllcywgd2UgYXJlIGF3YXJlIG9mIHRoYXQgcmlzay4gV2VcdTIwMTlyZSBhbHNvIHBsYW5uaW5nIHRvIHVzZSBpbiB2aXRybyBhc3NheXMgdG8gdGVzdCBvdXIgY2FuZGlkYXRlcy4gV2UgZGVzaWduZWQgZ3VpZGUgUk5BcyBhbmQgd2lsbCB1c2UgZ2VsIGVsZWN0cm9waG9yZXNpcyB0byBhbmFseXplIHRoZSByZXN1bHRzLCBsb29raW5nIGZvciBuaWNraW5nIG9yIGRvdWJsZS1zdHJhbmQgY3V0cy5cIiBhPVwiSW50ZXJlc3RpbmcuIEFyZSB5b3UgcGxhbm5pbmcgdG8gcHVyaWZ5IGVhY2ggY2FuZGlkYXRlIHByb3RlaW4/XCIvPlxuICAgIDxRYUJveCBxPVwiWWVzLCBidXQgd2UgY2Fubm90IHVzZSB5ZWFzdCwgc28gd2Ugd2lsbCB0cnkgcHJvZHVjaW5nIHRoZSBwcm90ZWlucyBpbiBFLiBjb2xpIGFuZCB0aGVuIHB1cmlmeSB0aGVtLiBXZVx1MjAxOWxsIGNvbWJpbmUgdGhlbSB3aXRoIGluIHZpdHJvLXRyYW5zY3JpYmVkIG9tZWdhIFJOQS4gRG8geW91IHRoaW5rIHRoYXQgd291bGQgd29yaz9cIiBhPVwiSXQgbWlnaHQgbm90IHdvcmsgd2l0aCBFLiBjb2xpIGZvciBGQU5aT1IuIEluIG91ciBleHBlcmllbmNlLCBFLiBjb2xpIGNhbm5vdCBwcm9kdWNlIHRoZSBob2xvZW56eW1lIG9mIEZBTlpPUiB3aXRob3V0IGl0cyBhc3NvY2lhdGVkIFJOQS4gV2UgaW5pdGlhbGx5IHRyaWVkIEUuIGNvbGkgYnV0IHRoZW4gc3dpdGNoZWQgdG8geWVhc3QsIHdoaWNoIGFsbG93ZWQgdXMgdG8gb2J0YWluIGZ1bmN0aW9uYWwgcHJvdGVpbi1STkEgY29tcGxleGVzLlwiLz5cbiAgICA8UWFCb3ggcT1cIlRoYXRcdTIwMTlzIHZhbHVhYmxlIGluc2lnaHQuIElzIHRoZSByZWFzb24gRS4gY29saSBmYWlscyBiZWNhdXNlIGl0IGNhbm5vdCBwcm9wZXJseSBmb3JtIHRoZSBwcm90ZWluLVJOQSBjb21wbGV4P1wiIGE9XCJQb3NzaWJseS4gVGhlIGV4YWN0IHJlYXNvbiBpc25cdTIwMTl0IGNsZWFyLCBidXQgd2UgZm91bmQgdGhhdCBvbmx5IGluIHllYXN0LCB3aGVyZSB0aGUgcHJvdGVpbiBhbmQgUk5BIGFyZSBjby1leHByZXNzZWQgZnJvbSB0aGVpciBuYXRpdmUgbG9jaSwgY291bGQgd2Ugb2J0YWluIGEgZnVuY3Rpb25hbCBjb21wbGV4LiBXZSBhbHNvIHRyaWVkIHJlcGxpY2F0aW5nIHRoaXMgc2V0dXAgaW4gRS4gY29saSwgYnV0IGl0IGRpZG4ndCB3b3JrLlwiLz5cbiAgICA8UWFCb3ggcT1cIlRoaXMgaXMgcmVhbGx5IGhlbHBmdWwgaW5mb3JtYXRpb24uIFdlIHdpbGwgY29uc2lkZXIgc3dpdGNoaW5nIHRvIHllYXN0LiBEbyB5b3UgaGF2ZSBhbnkgYWR2aWNlIG9uIGhvdyB0byBxdWlja2x5IHRyYW5zaXRpb24gb3VyIGFwcHJvYWNoIGZyb20gRS4gY29saSB0byB5ZWFzdD9cIiBhPVwiWW91IGNhbiBjZXJ0YWlubHkgdXNlIHllYXN0LiBJdFx1MjAxOXMgbm90IHRvbyBkaWZmaWN1bHQuIFlvdSBjb3VsZCBvcmRlciB0aGUgcGxhc21pZHMgZnJvbSBBZGRnZW5lIGFuZCBzdGFydCBjdWx0dXJpbmcgeWVhc3QuIERvZXMgeW91ciBpR0VNIHRlYW0gaGF2ZSB0aGUgYWJpbGl0eSB0byB3b3JrIHdpdGggeWVhc3Q/XCIvPlxuICAgIDxRYUJveCBxPVwiWWVzLCB3ZSBjYW4uIFdlJ3ZlIGp1c3QgbmV2ZXIgd29ya2VkIHdpdGggeWVhc3QgYmVmb3JlIGJlY2F1c2UgaXQgc2VlbWVkIGVhc2llciB0byB1c2UgRS4gY29saS4gQnV0IGl0XHUyMDE5cyBnb29kIHRvIGtub3cgdGhhdCBpdFx1MjAxOXMgbWFuYWdlYWJsZS5cIiBhPVwiWWVzLCBpdCBpcy4gV2UgdXNlZCBhIHllYXN0IHN0cmFpbiBjYWxsZWQgQkNZMTIzLCB3aGljaCBjb250YWlucyB0aGUgZ2FsYWN0b3NlIGluZHVjdGlvbiBzeXN0ZW0uIEZvciBwcm90ZWluIGluZHVjdGlvbiBpbiB5ZWFzdCwgdGhpcyBzeXN0ZW0gaXMgbmVjZXNzYXJ5LiBJZiB5b3UgdXNlIGFub3RoZXIgeWVhc3Qgc3RyYWluLCBtYWtlIHN1cmUgaXQgaGFzIHRoZSBjYXBhYmlsaXR5IGZvciBnYWxhY3Rvc2UgaW5kdWN0aW9uLlwiLz5cbiAgICA8UWFCb3ggcT1cIkdvdCBpdCwgd2Ugd2lsbCBjb25zaWRlciB1c2luZyBHaWJzb24gYXNzZW1ibHkuIE9uY2Ugd2UgY2xvbmUgb3VyIG11dGF0aW9uIGNhbmRpZGF0ZXMgaW50byB5b3VyIHBsYXNtaWQsIHdlXHUyMDE5bGwgZXhwcmVzcyB0aGUgUk5BLXByb3RlaW4gY29tcGxleCBpbiB5ZWFzdCBhbmQgcHVyaWZ5IGl0IGZyb20gdGhlcmUuIElzIHRoYXQgY29ycmVjdD9cIiBcbiAgICAgICAgICAgYT1cIlllcywgdGhhdCdzIHRoZSByaWdodCBhcHByb2FjaC4gVGhlIHBsYXNtaWQgd2UgdXNlZCBoYXMgYW4gTUJQLXRhZyBmb3IgcHVyaWZpY2F0aW9uLCB3aGljaCB3b3JrcyBiZXR0ZXIgdGhhbiBhIEhpcy10YWcuIEl0IGF2b2lkcyB0aGUgaGlnaCBiYWNrZ3JvdW5kIHRoYXQgSGlzLXRhZ3Mgb2Z0ZW4gaW50cm9kdWNlLlwiIC8+XG4gICAgPFFhQm94IHE9XCJUaGFuayB5b3UgZm9yIHRoaXMgYWR2aWNlLiBXZSBhbHNvIGhhdmUgYSBxdWVzdGlvbiBhYm91dCB0aGUgeWVhc3Qgc3RyYWluIHlvdSB1c2VkLCBCQ1kxMjMuIElzIGl0IGNydWNpYWwgdG8gdXNlIHRoaXMgc3BlY2lmaWMgc3RyYWluLCBvciBjb3VsZCB3ZSB1c2UgYW4gYWx0ZXJuYXRpdmUgYXMgbG9uZyBhcyBpdCBzdXBwb3J0cyBnYWxhY3Rvc2UgaW5kdWN0aW9uP1wiIFxuICAgICAgICAgICBhPVwiSW4gdGhlb3J5LCB5b3UgY2FuIHVzZSBhbnkgeWVhc3Qgc3RyYWluIHRoYXQgYWxsb3dzIGdhbGFjdG9zZSBpbmR1Y3Rpb24uIEhvd2V2ZXIsIEkgcmVjb21tZW5kIGZvbGxvd2luZyB0aGUgd29ya2luZyBwcm90b2NvbCB3aXRoIEJDWTEyMyBzaW5jZSBpdCBoYXMgYWxyZWFkeSBiZWVuIHByb3ZlbiB0byB3b3JrLiBJdFx1MjAxOXMgdGhlIHNhZmVzdCB3YXkgdG8gZW5zdXJlIGNvbnNpc3RlbmN5IGluIHlvdXIgZXhwZXJpbWVudHMuXCIgLz5cbiAgICA8UWFCb3ggcT1cIlBlcmZlY3QsIHRoYW5rIHlvdSB2ZXJ5IG11Y2ggZm9yIGFsbCB5b3VyIGRldGFpbGVkIGFuc3dlcnMhIFRoYXQgd291bGQgYmUgaXQgZm9yIHRoZSBpbnRlcnZpZXcsIGl0IHdhcyBhIHBsZWFzdXJlIGdldHRpbmcgdG8ga25vdyB5b3UhXCIgXG4gICAgICAgICAgIGE9XCJUaGFuayB5b3UhIElcdTIwMTlsbCBiZSBpbiBUb2t5byBhdCBSSUtFTiwgb25lIG9mIHRoZSB0b3Agc2NpZW5jZSBpbnN0aXR1dGVzIGluIEphcGFuLiBJZiB5b3Uga25vdyBhbnkgR2VybWFuIHN0dWRlbnRzIGludGVyZXN0ZWQgaW4gY29taW5nIHRvIEphcGFuLCBwbGVhc2UgbGV0IHRoZW0ga25vdy4gV2UgaGF2ZSB2YXJpb3VzIG9wcG9ydHVuaXRpZXMgZm9yIGludGVybnNoaXBzIG9yIHNob3J0IHN0YXlzLlwiIC8+XG4gICAgPFFhQm94IHE9XCJUaGF0XHUyMDE5cyB3b25kZXJmdWwgdG8gaGVhci4gVGhhbmsgeW91IHNvIG11Y2ggZm9yIHlvdXIgdGltZSBhbmQgdmFsdWFibGUgaW5zaWdodHMuXCIgXG4gICAgICAgICAgIGE9XCJNeSBwbGVhc3VyZS4gSSB3aXNoIHlvdSB0aGUgYmVzdCBvZiBsdWNrIHdpdGggeW91ciBwcm9qZWN0LiBGZWVsIGZyZWUgdG8gcmVhY2ggb3V0IGFueXRpbWUuIEdvb2RieWUhXCIgLz5cbiAgICA8Lz4sXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9zYWl0by53ZWJwXCIsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogXCJEci4gcmVyLiBuYXQuIFwiLFxuICAgIHZvcm5hbWU6IFwiTWFyY3VzXCIsXG4gICAgbmFjaG5uYW1lOiBcIkJlcmdlclwiLFxuICAgIGpvYjogXCJHWFAgXCIsXG4gICAgYWZmaWxpYXRpb246IFwiRXhwZXJ0XCIsXG4gICAgcGljdHVyZXVybDogcGljc1snZ3hwZXhwZXJ0J10sXG4gICAgdGFnOiBcIkluZHVzdHJ5XCIsXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcbiAgICBoZWFkaW5nOiBcIkRlZXAgRGl2ZSBpbnRvIEdvb2QgUHJhY3Rpc2UsIEd4UCBcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJneHBleHBlcnRcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZU5hY2huYW1lOiBcIkJlcmdlciwgR3hQIEV4cGVydFwiLFxuICAgIHF1b3RlVm9ybmFtZTogXCJEci4gcmVyLiBuYXQuIE1hcmN1c1wiLFxuICAgIHF1b3RlOiBcIk1pbmltdW0gcmVxdWlyZW1lbnQ6IEFjdXRlIHRveGljaXR5IHN0dWR5IG9uIGFuaW1hbHMgLSBpbXBvcnRhbnQgZm9yIGNhbGN1bGF0aW5nIHRoZSBzdGFydGluZyBkb3NlIGZvciBodW1hbnMuIEluIGFkZGl0aW9uLCBwaGFybWFjb2xvZ2ljYWwgc3R1ZGllcywgZ2Vub3RveGljIHN0dWRpZXMgYW5kIGltbXVub3RveGljIHN0dWRpZXMuIEluIHlvdXIgY2FzZSBhbHNvIGNocm9uaWMgdG94aWNpdHkgc3R1ZGllcy5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIG91ciBjb250YWN0IHdpdGggR3hQIGV4cGVydCA8YSBocmVmPVwiaHR0cHM6Ly9neHBleHBlcnQuZGUvXCI+RHIuIE1hcmN1cyBCZXJnZXI8L2E+IHdhcyB0byBnYXRoZXIgaW5zaWdodHMgYW5kIGFzayBxdWVzdGlvbnMgYWJvdXQgaG93IHRvIHByb2NlZWQgd2l0aCB0aGUgUHJlY3lzZSBwcm9qZWN0LCBjbGFyaWZ5aW5nIHRoZSBuZXh0IHN0ZXBzIHJlcXVpcmVkIGZvciBpdHMgY29udGludWVkIGRldmVsb3BtZW50LCBwYXJ0aWN1bGFybHkgY29uY2VybmluZyByZWd1bGF0b3J5IHN0cmF0ZWd5LCBxdWFsaXR5IG1hbmFnZW1lbnQsIGFuZCBjbGluaWNhbCBkZXZlbG9wbWVudC4gR3hQLCB3aGljaCBzdGFuZHMgZm9yIFx1MjAxOEdvb2QgUHJhY3RpY2VcdTIwMTkgZ3VpZGVsaW5lcywgZW5jb21wYXNzZXMgdmFyaW91cyByZWd1bGF0aW9ucyBhbmQgc3RhbmRhcmRzIGludGVuZGVkIHRvIGVuc3VyZSBxdWFsaXR5IGFuZCBjb21wbGlhbmNlIGluIHRoZSBkZXZlbG9wbWVudCBhbmQgbWFudWZhY3R1cmluZyBvZiBwaGFybWFjZXV0aWNhbCBhbmQgYmlvcGhhcm1hY2V1dGljYWwgcHJvZHVjdHMuIDwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+RnJvbSB0aGUgZGlzY3Vzc2lvbiB3aXRoIERyLiBCZXJnZXIgZXhwZXJ0LCB3ZSBnYWluZWQgc2V2ZXJhbCBrZXkgaW5zaWdodHMgaW50byBob3cgdG8gcHJvY2VlZCB3aXRoIHRoZSBQcmVjeXNlIHByb2plY3QuIEZpcnN0LCBpdCBiZWNhbWUgY2xlYXIgdGhhdCBvYnRhaW5pbmcgYSBTY2llbnRpZmljIEFkdmljZSBmcm9tIHRoZSBQYXVsLUVocmxpY2gtSW5zdGl0dXQgIDxhIGhyZWY9XCIgaHR0cHM6Ly93d3cucGVpLmRlL0RFL2hvbWUvaG9tZS1ub2RlLmh0bWxcIiA+KFBFSSk8L2E+XG4gICAgICBpcyBlc3NlbnRpYWwgdG8gZ2V0IHF1YWxpZmllZCBmZWVkYmFjayBvbiBvdXIgZGV2ZWxvcG1lbnQgcHJvamVjdCBhbmQgYWxpZ24gb3VyIHJlZ3VsYXRvcnkgc3RyYXRlZ3kuIFRoZSBleHBlcnQgZW1waGFzaXplZCB0aGUgbmVlZCB0byBjb2xsZWN0IGFuZCBkb2N1bWVudCBwcmVjbGluaWNhbCBkYXRhLCBpbmNsdWRpbmcgYWN1dGUgYW5kIGNocm9uaWMgdG94aWNpdHkgc3R1ZGllcywgZ2Vub3RveGljaXR5LCBpbW11bm90b3hpY2l0eSwgYW5kIGNhcmNpbm9nZW5pY2l0eSBzdHVkaWVzLCBhcyB3ZWxsIGFzIGNvbmR1Y3Rpbmcgc2FmZXR5IHBoYXJtYWNvbG9neSBhbmQgYmlvZGlzdHJpYnV0aW9uIHN0dWRpZXMgdG8gZW5zdXJlIGEgdGhvcm91Z2ggdW5kZXJzdGFuZGluZyBvZiB0aGUgc3Vic3RhbmNlJ3MgbWVjaGFuaXNtIG9mIGFjdGlvbi4gXG4gICAgICBUaGUgZXhwZXJ0IGFsc28gcHJvdmlkZWQgZ3VpZGFuY2Ugb24gaG93IHRvIGVzdGFibGlzaCBhIEd4UC1jb21wbGlhbnQgcXVhbGl0eSBtYW5hZ2VtZW50IHN5c3RlbSAoUU1TKSwgc3RyZXNzaW5nIHRoZSBpbXBvcnRhbmNlIG9mIHNldHRpbmcgdXAgYSByb2J1c3QgU09QIHN5c3RlbSBmb3IgbWFudWZhY3R1cmluZywgcHJlY2xpbmljYWwsIGFuZCBjbGluaWNhbCBkZXZlbG9wbWVudC4gVGhpcyBzeXN0ZW0gbXVzdCBhZGhlcmUgdG8gSUNIIFExMCBndWlkZWxpbmVzLCBlbnN1cmluZyB0aGF0IHRoZSBxdWFsaXR5IGNvbnRyb2wgcHJvY2Vzc2VzIGFyZSBpbiBsaW5lIHdpdGggcmVndWxhdG9yeSBleHBlY3RhdGlvbnMuIEZ1cnRoZXJtb3JlLCB3ZSBsZWFybmVkIGFib3V0IHRoZSBjcml0aWNhbCBpbml0aWFsIHN0ZXBzIGZvciB2YWxpZGF0aW5nIGFuZCB2ZXJpZnlpbmcgdGhlIG1hbnVmYWN0dXJpbmcgcHJvY2VzcywgaW5jbHVkaW5nIGRlZmluaW5nIHRoZSBwaHlzaWNhbCBhbmQgY2hlbWljYWwgcHJvcGVydGllcyBvZiB0aGUgYWN0aXZlIHN1YnN0YW5jZSBhbmQgZXhjaXBpZW50cywgZGV2ZWxvcGluZyB0aGUgcGhhcm1hY2V1dGljYWwgZm9ybXVsYXRpb24sIGFuZCBpZGVudGlmeWluZyBjcml0aWNhbCBxdWFsaXR5IGF0dHJpYnV0ZXMgKENRQXMpIGFuZCBjcml0aWNhbCBtYXRlcmlhbCBhdHRyaWJ1dGVzIChDTUFzKS4gIFxuICAgICAgVGhlIElDSC1HQ1AgZ3VpZGVsaW5lcywgd2hpY2ggYXBwbHkgdG8gYWxsIGNsaW5pY2FsIHRyaWFscywgYXJlIGVzc2VudGlhbCBmb3IgZW5zdXJpbmcgdGhlIGludGVncml0eSBhbmQgc2FmZXR5IG9mIGNsaW5pY2FsIGRldmVsb3BtZW50LiBUaGVzZSBndWlkZWxpbmVzIGluY2x1ZGUgRTJBLUUyRiwgd2hpY2ggY292ZXIgdG9waWNzIGxpa2UgY2xpbmljYWwgc2FmZXR5IGRhdGEgbWFuYWdlbWVudCBhbmQgYWR2ZXJzZSBldmVudCByZXBvcnRpbmcsIEUzIGZvciBjbGluaWNhbCBzdHVkeSByZXBvcnRzLCBFNSBmb3IgaGFuZGxpbmcgZXRobmljIGZhY3RvcnMsIGFuZCBFOSBmb3Igc3RhdGlzdGljYWwgcHJpbmNpcGxlcy4gQWRkaXRpb25hbGx5LCBFMTQgaXMgY3J1Y2lhbCBmb3IgbWFuYWdpbmcgY2FyZGlvdmFzY3VsYXIgcmlza3MsIGFuIGVzcGVjaWFsbHkgaW1wb3J0YW50IGNvbnNpZGVyYXRpb24gZm9yIGdlbmUgdGhlcmFwaWVzLCB3aGVyZSBtb25pdG9yaW5nIGZvciBoZWFydC1yZWxhdGVkIHNpZGUgZWZmZWN0cyBpcyBjcml0aWNhbC4gR3VpZGVsaW5lcyBsaWtlIEUxNSBhbmQgRTE2IGFkZHJlc3MgYmlvbWFya2VycyBhbmQgcGhhcm1hY29nZW5vbWljcywgaGVscGluZyB0YWlsb3IgY2xpbmljYWwgZGV2ZWxvcG1lbnQgdG8gdGhlIHNwZWNpZmljcyBvZiB0aGUgdHJlYXRtZW50IGJlaW5nIHRlc3RlZC4gSW1wbGVtZW50aW5nIHRoZXNlIEdDUCByZXF1aXJlbWVudHMgZW5zdXJlcyBjb21wbGlhbmNlLCBwYXRpZW50IHNhZmV0eSwgYW5kIGRhdGEgaW50ZWdyaXR5IHRocm91Z2hvdXQgdGhlIHRyaWFsIHByb2Nlc3MuIFxuICAgICAgSW4gdGVybXMgb2YgcHJvY2VzcyBzY2FsZS11cCwgdGhlIGV4cGVydCBhZHZpc2VkIGZvY3VzaW5nIG9uIGRlZmluaW5nIGNyaXRpY2FsIHByb2Nlc3MgcGFyYW1ldGVycyAoQ1BQcykgYW5kIGVuc3VyaW5nIHRoYXQgdGhlIHByb2Nlc3MgZGVzaWduIGFuZCBjb250cm9sIHN0cmF0ZWdpZXMgYXJlIHdlbGwtdW5kZXJzdG9vZCBiZWZvcmUgc2NhbGluZyBwcm9kdWN0aW9uIGZyb20gdGhlIGxhYiB0byBhIGNvbW1lcmNpYWwgc2NhbGUuIEFkZGl0aW9uYWxseSwgd2UgZGlzY3Vzc2VkIHRoZSBuZWVkIHRvIGRldmVsb3AgYSBjb250cm9sIHN0cmF0ZWd5LCBpbXBsZW1lbnQgaW4tcHJvY2VzcyBjb250cm9scywgYW5kIGVuc3VyZSB0aGF0IHByb2Nlc3MgdmFyaWFiaWxpdHkgaXMgY29udGludWFsbHkgbW9uaXRvcmVkIHRvIHN1cHBvcnQgb25nb2luZyBpbXByb3ZlbWVudHMuIFxuICAgICAgVGhlc2UgaW5zaWdodHMgY2xhcmlmaWVkIHRoZSBpbW1lZGlhdGUgYW5kIGZ1dHVyZSBzdGVwcyByZXF1aXJlZCB0byBtb3ZlIFByZWN5c2UgZm9yd2FyZCwgcGFydGljdWxhcmx5IGluIHRlcm1zIG9mIHJlZ3VsYXRvcnkgc3VibWlzc2lvbnMsIHF1YWxpdHkgbWFuYWdlbWVudCwgYW5kIHByb2R1Y3Rpb24gc2NhbGUtdXAuIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2UgdXNlZCB0aGUgaW5zaWdodHMgZnJvbSB0aGUgZXhwZXJ0IHRvIG91dGxpbmUgdGhlIHBvc3NpYmxlIG5leHQgc3RlcHMgZm9yIFByZWN5c2UuIFRoaXMgaW5jbHVkZWQgcGxhbm5pbmcgdGhlIGNvbGxlY3Rpb24gb2YgbmVjZXNzYXJ5IHByZWNsaW5pY2FsIGRhdGEsIHNldHRpbmcgdXAgYSBHeFAtY29tcGxpYW50IFFNUywgYW5kIHByZXBhcmluZyBmb3IgcmVndWxhdG9yeSBzdWJtaXNzaW9uLiBXZSBhbHNvIGJlZ2FuIGRyYWZ0aW5nIGEgc3RyYXRlZ3kgZm9yIHByb2Nlc3MgdmFsaWRhdGlvbiBhbmQgc2NhbGluZyB1cCBwcm9kdWN0aW9uLCBlbnN1cmluZyB0aGF0IHdlIGFyZSBhbGlnbmVkIHdpdGggYm90aCByZWd1bGF0b3J5IGFuZCBvcGVyYXRpb25hbCByZXF1aXJlbWVudHMuIFRoaXMgZXhwZXJ0IGZlZWRiYWNrIGhlbHBlZCB1cyBlc3RhYmxpc2ggYSBjbGVhcmVyIHBhdGggZm9yIHRoZSBjb250aW51ZWQgZGV2ZWxvcG1lbnQgb2YgUHJlY3lzZS4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJJbiBvdXIgY29uc3VsdGF0aW9uIHdpdGggR3hQIGV4cGVydCBEci4gTWFyY3VzIEJlcmdlciwgd2UgZ2FpbmVkIGtleSBpbnNpZ2h0cyB0byBhZHZhbmNlIHRoZSBQcmVjeXNlIHByb2plY3QsIGZvY3VzaW5nIG9uIHJlZ3VsYXRvcnkgc3RyYXRlZ3ksIHF1YWxpdHkgbWFuYWdlbWVudCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50LiBIZSBlbXBoYXNpemVkIG9idGFpbmluZyBTY2llbnRpZmljIEFkdmljZSBmcm9tIHRoZSBQYXVsLUVocmxpY2gtSW5zdGl0dXQgKFBFSSkgYW5kIGNvbGxlY3RpbmcgZXNzZW50aWFsIHByZWNsaW5pY2FsIGRhdGEsIGluY2x1ZGluZyB0b3hpY2l0eSBhbmQgYmlvZGlzdHJpYnV0aW9uIHN0dWRpZXMuIFdlIGFsc28gbGVhcm5lZCBob3cgdG8gdGhlb3JldGljYWxseSBzZXQgdXAgYSBHeFAtY29tcGxpYW50IHF1YWxpdHkgbWFuYWdlbWVudCBzeXN0ZW0gKFFNUykgZm9sbG93aW5nIElDSCBRMTAgZ3VpZGVsaW5lcyBhbmQgdGhlIGltcG9ydGFuY2Ugb2YgY3JpdGljYWwgcXVhbGl0eSBhdHRyaWJ1dGVzIChDUUFzKSBpbiBwcm9jZXNzIHZhbGlkYXRpb24uIERyLiBCZXJnZXIgcHJvdmlkZWQgZ3VpZGFuY2Ugb24gc2NhbGluZyBwcm9kdWN0aW9uIGFuZCBmb2xsb3dpbmcgSUNILUdDUCBndWlkZWxpbmVzIGZvciBjbGluaWNhbCB0cmlhbHMsIGVzcGVjaWFsbHkgZm9yIG1hbmFnaW5nIHJpc2tzIGluIGdlbmUgdGhlcmFwaWVzLiBUaGlzIGV4cGVydCBhZHZpY2UgaGVscGVkIHVzIHBsYW4gdGhlIG5leHQgc3RlcHMgZm9yIFByZWN5c2UsIGluY2x1ZGluZyBwcmVjbGluaWNhbCBkYXRhIGNvbGxlY3Rpb24sIFFNUyBzZXR1cCwgYW5kIHByb2R1Y3Rpb24gc2NhbGUtdXAuXCIsXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxuICAgIGludGVydmlldzo8PlxuICAgIDxRYUJveCBxPVwiSG93IGRvIHdlIGRlZmluZSB0aGUgcmVndWxhdG9yeSBzdHJhdGVneSAoZS5nLiBJTkQvSU1QRCBhcHBsaWNhdGlvbnMpP1wiIGE9XCJUaGUgcmVndWxhdG9yeSBzdHJhdGVneSBpbmNsdWRlcyB0aGUgcGxhbm5pbmcgb2YgY2xpbmljYWwgYW5kIHByZWNsaW5pY2FsIGRldmVsb3BtZW50IGluIGFjY29yZGFuY2Ugd2l0aCBhcHBsaWNhYmxlIHJlZ3VsYXRpb25zLCBzdWNoIGFzIENUUiA1MzYvMjAxNCBpbiBFdXJvcGUuIFBsYW5uaW5nLCBjb25kdWN0LCBkb2N1bWVudGF0aW9uLCBhbmQgcmVwb3J0aW5nIGFwcGxpZXMgdG8gY2xpbmljYWwgdHJpYWxzLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgaW5pdGlhbCBzdGVwcyBhcmUgbmVjZXNzYXJ5IHRvIHByZXBhcmUgdGhlIHN1Ym1pc3Npb24gdG8gdGhlIGNvbXBldGVudCBhdXRob3JpdGllcz9cIiBhPVwiRmlyc3RseSwgYSBTY2llbnRpZmljIEFkdmljZSBzaG91bGQgYmUgcmVxdWVzdGVkIGZyb20gdGhlIGNvbXBldGVudCBhdXRob3JpdHkuIFRoaXMgZW5hYmxlcyBlYXJseSBmZWVkYmFjayBvbiB0aGUgcGxhbm5lZCBkZXZlbG9wbWVudCBvZiB0aGUgc3Vic3RhbmNlLCB3aGljaCBoZWxwcyB0byBvcHRpbWlzZSB0aGUgc3VibWlzc2lvbiBzdHJhdGVneS4gU2NpZW50aWZpYyBhZHZpY2UgZnJvbSBhdXRob3JpdGllcyBzdWNoIGFzIHRoZSBQYXVsIEVocmxpY2ggSW5zdGl0dXRlIGVuc3VyZXMgdGhhdCB0aGUgcmVxdWlyZW1lbnRzIGFyZSBjb3JyZWN0bHkgdW5kZXJzdG9vZCBhbmQgaW1wbGVtZW50ZWQuIEl0IGlzIGFsc28gbmVjZXNzYXJ5IHRvIHRoaW5rIGFib3V0IGhvdyB5b3Ugd2FudCB0byBkZXZlbG9wIHRoZSBzdWJzdGFuY2UuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBwcmVjbGluaWNhbCBkYXRhIG11c3QgYmUgY29sbGVjdGVkIGFuZCBkb2N1bWVudGVkIGluIG9yZGVyIHRvIGZ1bGZpbCB0aGUgYXV0aG9yaXNhdGlvbiByZXF1aXJlbWVudHM/XCIgYT1cIkFjdXRlIGFuZCBjaHJvbmljIHRveGljaXR5IHN0dWRpZXMsIGdlbm90b3hpY2l0eSBhbmQgaW1tdW5vdG94aWNpdHkgc3R1ZGllcywgY2FyY2lub2dlbmljaXR5IHN0dWRpZXMsIHNhZmV0eSBwaGFybWFjb2xvZ3kgYW5kIHN0dWRpZXMgb24gYmlvZGlzdHJpYnV0aW9uIGFuZCB0aGUgbWVjaGFuaXNtIG9mIGFjdGlvbiBvZiB0aGUgc3Vic3RhbmNlIGFyZSByZXF1aXJlZC4gVGhlcmVmb3JlLCBjaGVjayB0aGUgb2ZmaWNpYWwgd2Vic2l0ZSBJQ0guXCIvPlxuICAgIDxRYUJveCBxPVwiV2hpY2ggYXV0aG9yaXRpZXMgc2hvdWxkIHdlIGNvbnN1bHQgYXQgYW4gZWFybHkgc3RhZ2UgaW4gb3JkZXIgdG8gaGFybW9uaXNlIHRoZSByZWd1bGF0b3J5IHJlcXVpcmVtZW50cz9cIiBhPVwiSW4gR2VybWFueSwgdGhlIFBhdWwtRWhybGljaC1JbnN0aXR1dGUgaXMgdGhlIGNlbnRyYWwgYXV0aG9yaXR5IGZvciBkcnVnIGRldmVsb3BtZW50IGFuZCBhdXRob3Jpc2F0aW9uLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB3ZSBzdGFydCBzZXR0aW5nIHVwIGEgR3hQLWNvbXBsaWFudCBxdWFsaXR5IG1hbmFnZW1lbnQgc3lzdGVtIChRTVMpP1wiIGE9XCJUaGUgZXN0YWJsaXNobWVudCBvZiBhIFFNUyBpcyBiYXNlZCBvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgYW4gU09QIHN5c3RlbSBmb3IgbWFudWZhY3R1cmluZywgcHJlY2xpbmljYWwsIGFuZCBjbGluaWNhbCBkZXZlbG9wbWVudCwgYmFzZWQgb24gdGhlIElDSCBRMTAgZ3VpZGVsaW5lcy5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGF0IGluaXRpYWwgdmFsaWRhdGlvbiBhbmQgdmVyaWZpY2F0aW9uIHN0ZXBzIGFyZSByZXF1aXJlZCBmb3Igb3VyIG1hbnVmYWN0dXJpbmcgcHJvY2Vzc2VzP1wiIGE9XCJUaGUgcGh5c2ljby1jaGVtaWNhbCBwcm9wZXJ0aWVzIG9mIGFjdGl2ZSBpbmdyZWRpZW50cyBhbmQgZXhjaXBpZW50cyBtdXN0IGJlIGRldGVybWluZWQuIFRoaXMgaW5jbHVkZXMgdGhlIGRlZmluaXRpb24gb2YgdGhlIHBoYXJtYWNldXRpY2FsIGZvcm11bGF0aW9uLCB0aGUgbWFudWZhY3R1cmluZyBwcm9jZXNzIGFuZCB0aGUgc3RhcnRpbmcgbWF0ZXJpYWxzIGFzIHdlbGwgYXMgdGhlIGRlZmluaXRpb24gb2YgUXVhbGl0eSBUYXJnZXQgUHJvZHVjdCBQcm9maWxlcywgQ3JpdGljYWwgUXVhbGl0eSBBdHRyaWJ1dGVzLCBhbmQgQ3JpdGljYWwgTWF0ZXJpYWwgQXR0cmlidXRlcy4gVGhlIG5leHQgc3RlcCBpcyBwcm9jZXNzIGRlc2lnbiBhbmQgdW5kZXJzdGFuZGluZyB0aGUgY3JpdGljYWwgcHJvY2VzcyBwYXJhbWV0ZXJzIGFuZCBzY2FsZS11cCBwcmluY2lwbGVzLiBUaGVuIGRldmVsb3AgYSBjb250cm9sIHN0cmF0ZWd5IHdpdGggc3BlY2lmaWNhdGlvbnMgZm9yIGFjdGl2ZSBzdWJzdGFuY2UsIGV4Y2lwaWVudCAmIGZpbmlzaGVkIGRydWcgcHJvZHVjdC4gQWZ0ZXIgdGhhdCBlc3RhYmxpc2ggYW4gaW4tcHJvY2VzcyBjb250cm9sIGFuZCB0aGluayBhYm91dCBwcm9jZXNzIGNhcGFiaWxpdHkgYW5kIGNvbnRpbnVvdXMgaW1wcm92ZW1lbnQuIFRoZXJlZm9yZSBtZWFzdXJlIHZhcmlhYmlsaXR5IG9mIHRoZSBtYW51ZmFjdHVyaW5nIHByb2Nlc3MuXCIvPlxuICAgIDxRYUJveCBxPVwiV2hhdCBtZWFzdXJlcyBhcmUgbmVjZXNzYXJ5IHRvIGVuc3VyZSBkb2N1bWVudGF0aW9uIGFuZCB0cmFjZWFiaWxpdHk/XCIgYT1cIkEgZG9jdW1lbnQgY29udHJvbCBzeXN0ZW0gbXVzdCBiZSBpbXBsZW1lbnRlZCB0byBlbnN1cmUgdHJhY2VhYmlsaXR5IGFuZCBkb2N1bWVudGF0aW9uLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgc3RlcHMgYXJlIG5lY2Vzc2FyeSB0byBzY2FsZSB1cCB0aGUgcHJvZHVjdGlvbiBwcm9jZXNzZXMgZnJvbSBsYWJvcmF0b3J5IHRvIHByb2R1Y3Rpb24gc2NhbGU/XCIgYT1cIkdNUCBleHBlcnRzIHNob3VsZCBiZSBjb25zdWx0ZWQgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIG9uIHNjYWxpbmcuIEkgY2FuJ3QgaGVscCB5b3Ugd2l0aCB0aGlzIHBvaW50LiBUaGUgR01QIGxlY3R1cmVycyBhcmUgdGhlIHJpZ2h0IHBlb3BsZSB0byB0YWxrIHRvLlwiLz5cbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB3ZSBkZXZlbG9wIGFuIGluaXRpYWwgY2xpbmljYWwgZGV2ZWxvcG1lbnQgc3RyYXRlZ3kgdG8gbW92ZSBmcm9tIHByZWNsaW5pY2FsIHN0dWRpZXMgdG8gZmlyc3QtaW4taHVtYW4gKEZJSCkgc3R1ZGllcz9cIiBhPVwiVGhlIG1pbmltdW0gcmVxdWlyZW1lbnRzIGluY2x1ZGUgYWN1dGUgdG94aWNpdHkgc3R1ZGllcyBpbiBhbmltYWxzIHRvIGNhbGN1bGF0ZSB0aGUgc3RhcnRpbmcgZG9zZSBmb3IgaHVtYW5zLiBJbiBhZGRpdGlvbiwgcGhhcm1hY29sb2dpY2FsIHN0dWRpZXMsIGdlbm90b3hpYyBzdHVkaWVzIGFuZCBpbW11bm90b3hpYyBzdHVkaWVzLiBJbiB5b3VyIGNhc2UsIGFsc28gY2hyb25pYyB0b3hpY2l0eSBzdHVkaWVzLiBEZXNpZ24gb2YgYSBGSUggc3R1ZHkgZm9yIGRvc2UgZXNjYWxhdGlvbiwgaW5jbHVkaW5nIHN0YXJ0aW5nIGRvc2UsIHNlcXVlbnRpYWwgc3R1ZHkgZGVzaWduIGFuZCBzdG9wcGluZyBydWxlcy4gSWRlbnRpZmljYXRpb24gb2YgdGhlIHRveGljIGxpbWl0IGFuZCB0aGUgc28tY2FsbGVkIFJlY29tbWVuZGVkIFN0YXJ0IERvc2UgZm9yIFBoYXNlIDIuIFRoZSBndWlkZWxpbmVzIG9uIHF1YWxpdHksIG5vbi1jbGluaWNhbCBhbmQgY2xpbmljYWwgcmVxdWlyZW1lbnRzIGZvciBpbnZlc3RpZ2F0aW9uYWwgYWR2YW5jZWQgdGhlcmFweSBtZWRpY2luYWwgcHJvZHVjdHMgaW4gY2xpbmljYWwgdHJpYWxzIGNhbiBiZSBmb3VuZCBhdCB0aGUgRXVyb3BlYW4gTWVkaWNpbmVzIEFnZW5jeSAoRU1BKS5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGljaCBHQ1AgcmVxdWlyZW1lbnRzIG5lZWQgdG8gYmUgaW1wbGVtZW50ZWQgdG8gc3VwcG9ydCBjbGluaWNhbCBkZXZlbG9wbWVudD9cIiBhPVwiVGhlIElDSC1HQ1AgZ3VpZGVsaW5lcyBhcHBseSB0byBhbGwgY2xpbmljYWwgdHJpYWxzIGFuZCBpbmNsdWRlIHRoZSBFMkEgLSBFMkY7IEUzOyBFNTsgRTk7IEUxNTsgRTE2IGd1aWRlbGluZXMgYW5kIEUxNCwgd2hpY2ggaXMgaW1wb3J0YW50IGZvciB0aGUgbWFuYWdlbWVudCBvZiBjYXJkaW92YXNjdWxhciByaXNrcywgZXNwZWNpYWxseSBpbXBvcnRhbnQgZm9yIGdlbmUgdGhlcmFwaWVzLCBhbW9uZyBvdGhlcnMuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvIHdlIGNvbmR1Y3QgYSByaXNrIGFuYWx5c2lzIHRvIGlkZW50aWZ5IGNoYWxsZW5nZXMgaW4gZGV2ZWxvcG1lbnQgYW5kIGxhdW5jaD9cIiBhPVwiUmlzayBhbmFseXNlcyBzaG91bGQgYmUgY29uZHVjdGVkIGZvciBwaGFybWFjZXV0aWNhbCwgcHJlY2xpbmljYWwsIGFuZCBjbGluaWNhbCBkZXZlbG9wbWVudCB0byBpZGVudGlmeSBwb3RlbnRpYWwgY2hhbGxlbmdlcy5cIi8+XG4gICAgPFFhQm94IHE9XCJXaGljaCBwcm9kdWN0IHNhZmV0eSBhbmQgZWZmaWNhY3kgcmlza3MgbmVlZCB0byBiZSBwcmlvcml0aXNlZCBhbmQgbWFuYWdlZD9cIiBhPVwiUmlza3MgdG8gYmUgcHJpb3JpdGlzZWQgaW5jbHVkZSB0aGUgc3RhcnRpbmcgbWF0ZXJpYWxzLCBjcml0aWNhbCBwcm9jZXNzIHN0ZXBzIGluIG1hbnVmYWN0dXJpbmcgYW5kIHRoZSBidWxrIHByb2R1Y3QuIEl0IGlzIGVzc2VudGlhbCB0byBjYXJyeSBvdXQgcHJvYWN0aXZlIHByb2Nlc3MgdmFsaWRhdGlvbiBhbmQgZXN0YWJsaXNoIGEgY2hhbmdlIG1hbmFnZW1lbnQgc3lzdGVtLlwiLz5cbiAgICA8UWFCb3ggcT1cIldoYXQgaW5pdGlhbCBzdGVwcyBkbyB3ZSBuZWVkIHRvIHRha2UgdG8gYW5hbHlzZSB0aGUgbWFya2V0IGFuZCBwcmVwYXJlIGZvciBtYXJrZXQgYWNjZXNzP1wiIGE9XCJBIHN0YWtlaG9sZGVyIGFuYWx5c2lzIG9mIHRoZSBtYXJrZXQgcGFydGljaXBhbnRzIGFuZCBhIGNvbXBhcmlzb24gb2YgdGhlIG5ldyB0aGVyYXB5IHdpdGggdGhlIHN0YW5kYXJkIHRoZXJhcHkgYXJlIHJlcXVpcmVkLiBQaHlzaWNpYW4gbmV0d29ya3Mgc2hvdWxkIGJlIGlkZW50aWZpZWQgYW5kIHRoZSBwcmljaW5nIHN0cmF0ZWd5IGRlZmluZWQsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIEdCQSBhbmQgdGhlIGhlYWx0aCBpbnN1cmFuY2UgZnVuZHMuXCIvPlxuICAgIDxRYUJveCBxPVwiSG93IGRvIHdlIGRldmVsb3AgYSBzdHJhdGVneSBmb3IgdGhlIHByb3RlY3Rpb24gb2YgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZCBwYXRlbnRzP1wiIGE9XCJUaGUgc3RyYXRlZ3kgc2hvdWxkIGluY2x1ZGUgcGF0ZW50IGFwcGxpY2F0aW9ucyBpbiB0aGUgZm9sbG93aW5nIG9yZGVyOiBGaXJzdCBmb3IgdGhlIGFjdGl2ZSBpbmdyZWRpZW50IGFuZCB0aGUgZm9ybXVsYXRpb24gKHByb2R1Y3QgcGF0ZW50KSwgdGhlbiB0aGUgbWFudWZhY3R1cmluZyByb3V0ZSBhcyBwcm9jZXNzIHBhdGVudCBhbmQgZm9sbG93ZWQgYnkgaW5kaWNhdGlvbiBhcyB1c2UgcGF0ZW50LiBGaW5hbGx5LCBhIHV0aWxpdHkgbW9kZWwgbWF5IGFsc28gYmUgdXNlZnVsLlwiLz5cbiAgICA8Lz5cbiAgfSxcbiAge1xuICAgIHZvcm5hbWU6IFwiUGh5c2ljYWwgXCIsXG4gICAgbmFjaG5uYW1lOiBcImFuZCBCaW9waHlzaWNhbCBDaGVtaXN0cnkgXCIsXG4gICAgam9iOiBcIldvcmtpbmcgZ3JvdXAgXCIsXG4gICAgYWZmaWxpYXRpb246IFwiVW5pdmVyc2l0eSBCaWVsZWZlbGQgXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwaHlzaWsnXSxcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcbiAgICBoZWFkaW5nOiBcIlBlcmZvcm1hbmNlIG9mIEV4cGVyaW1lbnRzIGZvciBMTlAgY2hhcmFjdGVyaXphdGlvbiBcIixcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJiaW9waHlzaWtcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJJdCB3YXMgYSBncmVhdCBjb25uZWN0aW9uIGFuZCBhIHRyZW1lbmRvdXMgaGVscCBpbiBhbmFseXppbmcgdGhlIExOUC4gVGhleSBwcm92aWRlZCB1cyB3aXRoIGluc2lnaHRzIGludG8gc29tZSB0cnVseSBleGNpdGluZyBtZXRob2RzLlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiQmFhY2ssIFRlYW1tZW1iZXJcIixcbiAgICBxdW90ZVZvcm5hbWU6IFwiQW5uYVwiLFxuICAgIGFpbW9mY29udGFjdDogWzxwPkZvciBvdXIgcHJvamVjdCwgd2UgY29sbGFib3JhdGVkIGNsb3NlbHkgd2l0aCB0aGUgUGh5c2ljYWwgQ2hlbWlzdHJ5IHdvcmtncm91cCB0byBwcm9wZXJseSBjYXRlZ29yaXplIG91ciBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gV2UgcmVhY2hlZCBvdXQgdG8gdGhlbSB0byBsZXZlcmFnZSB0aGVpciBleHBlcnRpc2UgYW5kIGVuc3VyZSB0aGF0IG91ciBjaGFyYWN0ZXJpemF0aW9uIHdhcyB0aG9yb3VnaCBhbmQgcHJlY2lzZS4gTWFyY28sIFV3ZSwgYW5kIFl2b25uZSB3ZXJlIGluc3RydW1lbnRhbCBpbiB0aGlzIGVmZm9ydCwgbm90IG9ubHkgYWR2aXNpbmcgdXMgb24gYXBwcm9wcmlhdGUgY2hhcmFjdGVyaXphdGlvbiBtZXRob2RzIGJ1dCBhbHNvIGFjdGl2ZWx5IGFzc2lzdGluZyB1cyBkdXJpbmcgdGhlIGV4cGVyaW1lbnRhbCBwcm9jZXNzIGFuZCBkYXRhIGFuYWx5c2lzLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPldlIGVtcGxveWVkIHNldmVyYWwgYW5hbHl0aWNhbCB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgVHJhbnNtaXNzaW9uIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFRFTSksIFNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSksIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSwgYW5kIHpldGEgcG90ZW50aWFsIGFuYWx5c2lzLiBURU0gYW5kIFNFTSBhbGxvd2VkIHVzIHRvIHZpc3VhbGl6ZSB0aGUgc3RydWN0dXJhbCBtb3JwaG9sb2d5IG9mIHRoZSBMTlBzLCBwcm92aWRpbmcgZGV0YWlsZWQgaW1hZ2VzIHRvIHVuZGVyc3RhbmQgdGhlaXIgc2l6ZSBhbmQgc2hhcGUgb24gdGhlIG5hbm9tZXRlciBzY2FsZS4gRExTIHdhcyB1c2VkIHRvIG1lYXN1cmUgdGhlIHNpemUgZGlzdHJpYnV0aW9uIG9mIHRoZSBwYXJ0aWNsZXMgaW4gc29sdXRpb24sIHdoaWxlIHRoZSB6ZXRhIHBvdGVudGlhbCBhbmFseXNpcyBnYXZlIHVzIGluc2lnaHQgaW50byB0aGUgc3VyZmFjZSBjaGFyZ2UsIHdoaWNoIGlzIGNydWNpYWwgZm9yIHVuZGVyc3RhbmRpbmcgc3RhYmlsaXR5IGluIHN1c3BlbnNpb24uIDwvcD5dLFxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhhbmtzIHRvIHRoZSBndWlkYW5jZSBhbmQgaGFuZHMtb24gc3VwcG9ydCBvZiB0aGUgUGh5c2ljYWwgQ2hlbWlzdHJ5IHRlYW0sIHdlIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQgdGhlc2UgdGVzdHMsIGdhaW5pbmcgZGV0YWlsZWQgaW5zaWdodHMgaW50byBvdXIgTE5QcyB0aGF0IHdpbGwgYmUgY3J1Y2lhbCBmb3Igb3VyIHByb2plY3QncyBmdXJ0aGVyIGRldmVsb3BtZW50LiBUaGVpciBleHBlcnRpc2Ugbm90IG9ubHkgc3RyZWFtbGluZWQgdGhlIHByb2Nlc3MgYnV0IGFsc28gZW5zdXJlZCB0aGUgcmVsaWFiaWxpdHkgYW5kIGFjY3VyYWN5IG9mIG91ciByZXN1bHRzLiBIZXJlIGEgc25lYWsgcGVhayBvZiB0aGUgcmVzdWx0cyBcdTIwMTMgdGFrZSBhIGxvb2sgYXQgdGhlIGltYWdlIG9mIG91ciBTT1JUIExOUCB0YWtlbiB2aWEgVEVNLiA8L3A+XSxcbiAgICBzdW1tYXJ5OiBcIldlIGNvbGxhYm9yYXRlZCB3aXRoIHRoZSBQaHlzaWNhbCBDaGVtaXN0cnkgd29ya2dyb3VwIHRvIGFjY3VyYXRlbHkgY2hhcmFjdGVyaXplIG91ciBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gVGhlaXIgZXhwZXJ0aXNlLCBwYXJ0aWN1bGFybHkgZnJvbSBNYXJjbywgVXdlLCBhbmQgWXZvbm5lLCB3YXMgaW52YWx1YWJsZSBpbiBzZWxlY3RpbmcgYW5kIGFwcGx5aW5nIHZhcmlvdXMgYW5hbHl0aWNhbCB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgVHJhbnNtaXNzaW9uIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFRFTSksIFNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSksIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSwgYW5kIHpldGEgcG90ZW50aWFsIGFuYWx5c2lzLiBUaGlzIGNvbGxhYm9yYXRpb24gbm90IG9ubHkgZW5oYW5jZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIExOUHMnIHNpemUsIHNoYXBlLCBhbmQgc3RhYmlsaXR5IGJ1dCBhbHNvIGVuc3VyZWQgdGhlIHJlbGlhYmlsaXR5IG9mIG91ciByZXN1bHRzLiBXaXRoIHRoZWlyIGd1aWRhbmNlLCB3ZSBzdWNjZXNzZnVsbHkgY29tcGxldGVkIG91ciB0ZXN0cywgcHJvdmlkaW5nIGNydWNpYWwgaW5zaWdodHMgZm9yIHRoZSBwcm9qZWN0J3MgYWR2YW5jZW1lbnQuXCIsXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2NyeW8tZW0ud2VicFwiLFxuICAgIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb246IFwiIGh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3RlbS1zb3J0LWxucDEud2VicFwiLFxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiTS5TYy5cIixcbiAgICB2b3JuYW1lOiBcIkhha2FuXCIsXG4gICAgbmFjaG5uYW1lOiBcIlNveXRcdTAwRkNya1wiLFxuICAgIGpvYjogXCJQaEQgU3R1ZGVudCBGYWN1bHR5IG9mIEJpb2xvZ3kgLyBXb3JraW5nIEdyb3VwXCIsXG4gICAgYWZmaWxpYXRpb246IFwiVW5pdmVyc2l0eSBCaWVsZWZlbGQgXCIsXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydoYWthbiddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiSGVscGluZyBhbmQgY29uZHVjdGluZyBleHBlcmltZW50cyB3aXRoIHllYXN0IGNlbGxzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFrYW5cIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJKdXN0IGhhbmQgbWUgb3ZlciB0aGUgc3RyYWluIGFuZCB0aGUgdmVjdG9yLCBJIHdpbGwgdHJ5IHRvIHRha2UgY2FyZSBvZiB0aGUgcmVzdC5cIixcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BZnRlciBvdXIgaW50ZXJ2aWV3IHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJzYWl0b1wiIHRleHQ9XCJNYWtvdG8gU2FpdG9cIiAvPlxuIHdlIGxlYXJuZWQsIHRoYXQgaGUgd2FzIG5vdCBhYmxlIHRvIGV4cHJlc3MgdGhlIFNwdUZ6MSBwcm90ZWluIGluIEUuIGNvbGkgYW5kIHJlY29tbWVuZGVkIHdlIHVzZWQgeWVhc3QgdG8gcHJvZHVjZSBpdC4gV2Ugd2VyZSBwcm92aWRlZCB3aXRoIGEgeWVhc3QgZXhwcmVzc2lvbiBzdHJhaW4gYW5kIGEgc3VpdGFibGUgdmVjdG9yIHRvIGNsb25lIHRoZSBjb2Rpbmcgc2VxdWVuY2UgaW50bywgYnV0IHdlIGxhY2tlZCB0aGUgbmVjZXNzYXJ5IGtub3ctaG93IGFuZCB0aGUgZmFjaWxpdGllcyB0byB0cmFuc2Zvcm0geWVhc3QsIHNlbGVjdCBmb3IgcG9zaXRpdmUgdHJhbnNmb3JtYW50cyBhbmQgY3VsdGl2YXRlIHRoZSB5ZWFzdC4gIDwvcD5dLFxuICAgIGluc2lnaHRzOiBbPHA+SGFrYW4gZ2VuZXJvdXNseSBhZ3JlZWQgdG8gY2Fycnkgb3V0IHRoZSB0cmFuc2Zvcm1hdGlvbiBhbmQgcHJlcGFyZSBwb3RlbnRpYWwgcG9zaXRpdmUgdHJhbnNmb3JtYW50cyBmb3IgY3VsdGl2YXRpb24gZm9yIHVzLCBsZWF2aW5nIG9ubHkgdGhlIHB1cmlmaWNhdGlvbiBvZiB0aGUgcHJvdGVpbnMgZnJvbSB0aGUgc3VwZXJuYXRhbnQgZm9yIHVzIHRvIGRvLiA8L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPkhha2FuIHBlcmZvcm1lZCB0aGUgdHJhbnNmb3JtYXRpb24gb2YgYSBwUElDOUstbjNTcHVGejEgY29uc3RydWN0IHdlIGNyZWF0ZWQgaW50byBZZWFzdC4gVW5mb3J0dW5hdGVseSwgdGhlIGZpcnN0IGF0dGVtcHQgb2YgdHJhbnNmb3JtYXRpb24gZGlkIG5vdCB5aWVsZCBhbnkgcG9zaXRpdmUgY2xvbmVzLiBIb3dldmVyLCB3ZSB2YWx1ZSBoaXMgc3BvbnRhbmVvdXMgYW5kIGV4dGVuc2l2ZSBzdXBwb3J0IGFzIGEgZ3JlYXQgY29udHJpYnV0aW9uIHRvIG91ciBwcm9qZWN0LiA8L3A+XSxcbiAgICBzdW1tYXJ5OiBcIldlIGNvbGxhYm9yYXRlZCB3aXRoIHRoZSBQaHlzaWNhbCBDaGVtaXN0cnkgd29ya2dyb3VwIHRvIGFjY3VyYXRlbHkgY2hhcmFjdGVyaXplIG91ciBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gVGhlaXIgZXhwZXJ0aXNlLCBwYXJ0aWN1bGFybHkgZnJvbSBNYXJjbywgVXdlLCBhbmQgWXZvbm5lLCB3YXMgaW52YWx1YWJsZSBpbiBzZWxlY3RpbmcgYW5kIGFwcGx5aW5nIHZhcmlvdXMgYW5hbHl0aWNhbCB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgVHJhbnNtaXNzaW9uIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFRFTSksIFNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSksIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSwgYW5kIHpldGEgcG90ZW50aWFsIGFuYWx5c2lzLiBUaGlzIGNvbGxhYm9yYXRpb24gbm90IG9ubHkgZW5oYW5jZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIExOUHMnIHNpemUsIHNoYXBlLCBhbmQgc3RhYmlsaXR5IGJ1dCBhbHNvIGVuc3VyZWQgdGhlIHJlbGlhYmlsaXR5IG9mIG91ciByZXN1bHRzLiBXaXRoIHRoZWlyIGd1aWRhbmNlLCB3ZSBzdWNjZXNzZnVsbHkgY29tcGxldGVkIG91ciB0ZXN0cywgcHJvdmlkaW5nIGNydWNpYWwgaW5zaWdodHMgZm9yIHRoZSBwcm9qZWN0J3MgYWR2YW5jZW1lbnQuXCIsXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxuICB9LFxuICB7XG4gICAgdGl0bGU6IFwiTS5TYy5cIixcbiAgICB2b3JuYW1lOiBcIkJlbmphbWluXCIsXG4gICAgbmFjaG5uYW1lOiBcIk1vb3JsYWNoXCIsICBcbiAgICBqb2I6XCJQaEQgc3R1ZGVudCBXb3JraW5nIEdyb3VwIFBhdGVsICdGZXJtZW50YXRpb24gYW5kIEZvcm11bGF0aW9uIG9mIEJpb2xvZ2ljYWxzIGFuZCBDaGVtaWNhbHMnXCIsXG4gICAgYWZmaWxpYXRpb246XCJhdCBGSCBCaWVsZWZlbGRcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtb29ybGFjaCddLFxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxuICAgIGhlYWRpbmc6IFwiR2F0aGVyaW5nIGluZm9ybWF0aW9uIGFib3V0IENoaXRvc2FuIGNvYXRpbmcgZm9yIFJOQSBwcm90ZWN0aW9uXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibW9vcmxhY2hcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxuICAgIHF1b3RlOiBcIkNoaXRvc2FuIGNhbiBzdGFiaWxpemUgUk5BIGVmZmVjdGl2ZWx5LCBtYWtpbmcgaXQgaWRlYWwgZm9yIG91ciBmb3JtdWxhdGlvbnMsIGJ1dCB3ZSBtdXN0IGVuc3VyZSB0aGUgcmlnaHQgY2hhcmdlIHJhdGlvIGFuZCBwYXJ0aWNsZSBzaXplIGZvciBzdWNjZXNzZnVsIExOUCBlbmNhcHN1bGF0aW9uLlwiLFxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTW9vcmxhY2gsIEV4cGVydCBmb3IgQ2hpdG9zYW4gY29kaW5nXCIsXG4gICAgcXVvdGVWb3JuYW1lOiBcIkJlbmphbWluXCIsXG4gICAgYWltb2Zjb250YWN0OiBbPHA+VGhlIGFpbSBvZiB0aGUgY29udGFjdCB3aXRoIEJlbmphbWluIFdpbGxlbSBNb29ybGFjaCwgTS5TYy4sIGZyb20gdGhlIERlcGFydG1lbnQgb2YgRW5naW5lZXJpbmcgYW5kIE1hdGhlbWF0aWNzLCB3YXMgdG8gZ2FpbiBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIG9mIGhvdyBDaGl0b3NhbiBjb3VsZCBiZSBhcHBsaWVkIGluIGxpcGlkLWJhc2VkIG5hbm9wYXJ0aWNsZXMgKExOUHMpIGFuZCB0byBleHBsb3JlIGl0cyBwb3RlbnRpYWwgcm9sZSBpbiBvdXIgcHJvamVjdC4gV2UgaGFkIHNldmVyYWwgcXVlc3Rpb25zIGZvY3VzaW5nIG9uIHRoZSBwcm9wZXJ0aWVzIG9mIENoaXRvc2FuLCBpdHMgYWR2YW50YWdlcyBhbmQgZGlzYWR2YW50YWdlcywgYW5kIGhvdyBpdCBjb3VsZCBiZSBpbnRlZ3JhdGVkIGludG8gTE5Qcy4gQmVuamFtaW4gTW9vcmxhY2ggcHJvdmlkZWQgZXh0ZW5zaXZlIGluc2lnaHRzIGludG8gQ2hpdG9zYW5cdTIwMTlzIGludGVyYWN0aW9ucyB3aXRoIFJOQSwgaXRzIGJlaGF2aW9yLCBhbmQgaG93IHdlIG1pZ2h0IGxldmVyYWdlIGl0IGZvciBvdXIgZm9ybXVsYXRpb25zLiA8L3A+XSxcbiAgICBpbnNpZ2h0czogWzxwPkZyb20gb3VyIGRpc2N1c3Npb24sIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSB1bmlxdWUgcHJvcGVydGllcyBvZiBDaGl0b3NhbiwgYSBjYXRpb25pYyBwb2x5bWVyIHdpdGggc2lnbmlmaWNhbnQgcG90ZW50aWFsIHRvIHN0YWJpbGl6ZSBSTkEuIE5vdGFibHksIENoaXRvc2FuIG9mZmVycyBzdHJvbmcgcHJvdGVjdGlvbiBhZ2FpbnN0IFJOYXNlcywgbWFraW5nIGl0IGhpZ2hseSBiZW5lZmljaWFsIGZvciBmb3JtdWxhdGlvbnMgbGlrZSBsaXBpZC1iYXNlZCBuYW5vcGFydGljbGVzIChMTlBzKS4gQW5vdGhlciBrZXkgZmVhdHVyZSBpcyBpdHMgaGVhdCBzdGFiaWxpdHksIHdpdGhzdGFuZGluZyB0ZW1wZXJhdHVyZXMgdXAgdG8gMTIxXHUwMEIwQywgd2hpY2ggbWFrZXMgaXQgc3VpdGFibGUgZm9yIHByb2Nlc3NpbmcgbWV0aG9kcyBzdWNoIGFzIHNwcmF5IGRyeWluZy4gSG93ZXZlciwgYXQgaGlnaGVyIGNvbmNlbnRyYXRpb25zICgwLjUlIG9yIG1vcmUpLCBDaGl0b3NhbiBjYW4gYmVjb21lIHRveGljLCBzdWZmb2NhdGluZyBjZWxscyBhbmQgZGlzcGxheWluZyBhbnRpbWljcm9iaWFsIHByb3BlcnRpZXMuIFdoaWxlIGl0IGRpZmZlcnMgZnJvbSBQRUcgYW5kIGNhbm5vdCBzZXJ2ZSBhcyBhIGRpcmVjdCBhbHRlcm5hdGl2ZSwgQ2hpdG9zYW4gY2FuIGJlIGEgdmFsdWFibGUgY29tcGxlbWVudCwgZXNwZWNpYWxseSBpbiBzdGFiaWxpemluZyBSTkEgd2l0aGluIExOUHMuIFxuICAgICAgQSBjcml0aWNhbCBwb2ludCBCZW5qYW1pbiBlbXBoYXNpemVkIGlzIHRoYXQgQ2hpdG9zYW4gbXVzdCBiZSBpbiBhbiBhY2lkaWMgZW52aXJvbm1lbnQsIHR5cGljYWxseSB3aXRoIGEgcEggcmFuZ2Ugb2YgNCB0byA2LCB0byByZW1haW4gcG9zaXRpdmVseSBjaGFyZ2VkLiBUaGlzIHBvc2l0aXZlIGNoYXJnZSBpcyBlc3NlbnRpYWwgZm9yIGl0cyBlZmZlY3RpdmUgaW50ZXJhY3Rpb24gd2l0aCBSTkEgYW5kIHN1Y2Nlc3NmdWwgaW50ZWdyYXRpb24gaW50byB0aGUgTE5QIHN5c3RlbS4gXG4gICAgICBPbmUgb2YgdGhlIG1vc3QgaW1wb3J0YW50IGF0dHJpYnV0ZXMgb2YgQ2hpdG9zYW4gaXMgaXRzIGFiaWxpdHkgdG8gZm9ybSBjb21wbGV4ZXMgd2l0aCBSTkEsIG9mZmVyaW5nIGEgaGlnaCBkZWdyZWUgb2YgcHJvdGVjdGlvbiwgd2hpY2ggaXMgY3J1Y2lhbCBmb3IgdGhlIHN0YWJpbGl0eSBvZiBMTlAgZm9ybXVsYXRpb25zLiBUaGlzIGNoYXJhY3RlcmlzdGljIG1ha2VzIENoaXRvc2FuIHBhcnRpY3VsYXJseSBhZHZhbnRhZ2VvdXMgaW4gZW5oYW5jaW5nIFJOQSBzdGFiaWxpdHkgZHVyaW5nIHByb2Nlc3NlcyBsaWtlIHNwcmF5IGRyeWluZy4gSG93ZXZlciwgaW5jb3Jwb3JhdGluZyBDaGl0b3NhbiBkaXJlY3RseSBpbnRvIHRoZSBsaXBpZCBzaGVsbCBvZiBMTlBzIHBvc2VzIGNoYWxsZW5nZXMgZHVlIHRvIGl0cyBoeWRyb3BoaWxpYyBuYXR1cmUgYW5kIGluY29tcGF0aWJsZSBjaGFyZ2UgcmF0aW9zLCB3aGljaCBwcmV2ZW50IGl0cyB1c2UgYXMgYW4gZXh0ZXJuYWwgY29hdGluZyBvbiBMTlBzLiBJbnN0ZWFkLCBpdCBpcyBtb3JlIHN1aXRhYmxlIGZvciBmb3JtaW5nIHN0YWJsZSBSTkEtQ2hpdG9zYW4gY29tcGxleGVzIHRoYXQgY2FuIGJlIGVuY2Fwc3VsYXRlZCB3aXRoaW4gdGhlIExOUCBzdHJ1Y3R1cmUsIGVuc3VyaW5nIGltcHJvdmVkIHN0YWJpbGl0eSBhbmQgcHJvdGVjdGlvbi48L3A+XSxcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGhhdmUgaW50ZWdyYXRlZCB0aGUgaW5mb3JtYXRpb24gYnkgcHJpbWFyaWx5IHVzaW5nIENoaXRvc2FuIGFzIGFuIFJOQSBzdGFiaWxpemVyLCByYXRoZXIgdGhhbiBlbWJlZGRpbmcgaXQgZGlyZWN0bHkgaW50byB0aGUgTE5QIGxpcGlkIHNoZWxsLiBCZW5qYW1pbiBzdWdnZXN0ZWQgZm9ybWluZyBDaGl0b3Nhbi1STkEgY29tcGxleGVzIGZpcnN0IGFuZCB0aGVuIGVuY2Fwc3VsYXRpbmcgdGhlbSB3aXRoaW4gTE5QcyB0byBlbnN1cmUgdGhlIFJOQSByZW1haW5zIHN0YWJsZSBhbmQgZnVuY3Rpb25hbC4gRm9yIHRoaXMsIENoaXRvc2FuIHdpdGggYSBsb3cgbW9sZWN1bGFyIHdlaWdodCAoYXJvdW5kIDUga0RhKSBpcyBpZGVhbCwgYXMgaXQgaGVscHMgcHJvZHVjZSBzbWFsbGVyIHBhcnRpY2xlcyB0aGF0IGNhbiBiZSBlZmZpY2llbnRseSBlbmNhcHN1bGF0ZWQuIFxuICAgICAgQWRkaXRpb25hbGx5LCBCZW5qYW1pbiByZWNvbW1lbmRlZCBzdGFydGluZyB3aXRoIHNtYWxsLXNjYWxlIHRlc3RzIChhYm91dCAxMDAgXHUwMEI1TCkgYmVmb3JlIG1vdmluZyB0byBsYXJnZXIgZm9ybXVsYXRpb25zLiBUaGUgcmF0aW8gb2YgUk5BIHRvIENoaXRvc2FuIGlzIGtleSB0byBjcmVhdGluZyBuZWdhdGl2ZWx5IGNoYXJnZWQgcGFydGljbGVzLCBhbmQgYSAyOjEgcmF0aW8gc2hvdWxkIGJlIG1haW50YWluZWQuIFdlIHdpbGwgdmVyaWZ5IHN1Y2Nlc3NmdWwgZW5jYXBzdWxhdGlvbiB1c2luZyBtaWNyb3Njb3BpYyBhbmFseXNpcyBhbmQgZ2VsIGVsZWN0cm9waG9yZXNpcy4gXG4gICAgICBUaGlzIGtub3dsZWRnZSBoYXMgZGlyZWN0bHkgc2hhcGVkIG91ciBhcHByb2FjaCB0byB1c2luZyBDaGl0b3Nhbi4gT3VyIGZvY3VzIGlzIG5vdyBvbiBmb3JtaW5nIHN0YWJsZSBSTkEtQ2hpdG9zYW4gY29tcGxleGVzLCB3aGljaCBjYW4gYmUgZW5jYXBzdWxhdGVkIGluIExOUHMuIFdlXHUyMDE5dmUgYWxzbyBsZWFybmVkIHRoZSBpbXBvcnRhbmNlIG9mIG9wdGltaXppbmcgY29uY2VudHJhdGlvbnMgdG8gcHJldmVudCBhZ2dyZWdhdGlvbiBvciB0b3hpY2l0eSB3aGlsZSBlbnN1cmluZyB0aGUgcGFydGljbGVzIHN0YXkgd2l0aGluIHRoZSBkZXNpcmVkIG5hbm9tZXRlciByYW5nZS4gTWljcm9zY29weSBhbmQgZWxlY3Ryb3Bob3Jlc2lzIHdpbGwgbm93IGJlIGtleSBtZXRob2RzIGluIG91ciBwcm90b2NvbCB0byBjb25maXJtIGNvbXBsZXRlIFJOQSBlbmNhcHN1bGF0aW9uIHdpdGhpbiB0aGUgTE5Qcy4gPC9wPl0sXG4gICAgc3VtbWFyeTogXCJJbiBzdW1tYXJ5LCB0aGUgaW5zaWdodHMgZnJvbSBCZW5qYW1pblx1MjAxOXMgZXhwZXJ0aXNlIHdlcmUgY3J1Y2lhbCBpbiBzaGFwaW5nIG91ciB1bmRlcnN0YW5kaW5nIG9mIGhvdyB0byBpbnRlZ3JhdGUgQ2hpdG9zYW4gaW50byBvdXIgTE5QIGZvcm11bGF0aW9ucy4gQ2hpdG9zYW5cdTIwMTlzIHByb3RlY3RpdmUgYWJpbGl0aWVzIGZvciBSTkEsIGFsb25nIHdpdGggaXRzIGhlYXQgc3RhYmlsaXR5LCBtYWtlIGl0IGEgdmFsdWFibGUgY29tcG9uZW50IGluIG91ciBwcm9qZWN0LiBIb3dldmVyLCBpdHMgaHlkcm9waGlsaWMgYW5kIGNhdGlvbmljIG5hdHVyZSBwcmVzZW50cyBjaGFsbGVuZ2VzIGZvciBkaXJlY3QgaW50ZWdyYXRpb24gaW50byBMTlAgbGlwaWQgc2hlbGxzLCBzbyB3ZSBhcmUgZm9jdXNpbmcgb24gaXRzIHVzZSBhcyBhbiBlbmNhcHN1bGF0aW9uIGZvciB0aGUgUk5BLiBCZW5qYW1pblx1MjAxOXMgYWR2aWNlIG9uIGNvbmNlbnRyYXRpb25zLCBtb2xlY3VsYXIgd2VpZ2h0LCBhbmQgY29tcGxleCBmb3JtYXRpb24gZ2F2ZSB1cyBhIGNsZWFyIHBhdGggZm9yd2FyZCwgd2hpY2ggd2lsbCBiZSB2YWxpZGF0ZWQgdGhyb3VnaCBleHBlcmltZW50YWwgdGVzdGluZy4gXCIsXG4gICAgbW9udGhzOiBcInNlcHRlbWJlclwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIkdyYW5kIEphbWJvb3JlZSBpbiBQYXJpc1wiLFxuICAgIG5hY2hubmFtZTogXCJcIixcbiAgICBwaWN0dXJldXJsOiBwaWNzWydwbGFjZWhvbGRlciddLFxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXG4gICAgaGVhZGluZzogXCJCcmFpbnN0b3JtaW5nIGFuZCBzZWxlY3Rpb24gb2YgaWRlYXMgYW5kIGNvbmNlcHRzXCIsXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiamFtYm9yZWVcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiXCIsXG4gICAgaW5zaWdodHM6IFwiXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiXCIsXG4gICAgdHlwZTogXCJtZXRhXCIsXG4gICAgc3VtbWFyeTogXCJcIixcbiAgICBtb250aHM6IFwib2N0b2JlclwiXG4gIH0sXG4gIHtcbiAgICB2b3JuYW1lOiBcIkNhcnJ5IEl0IEZvcndhcmRcIixcbiAgICBuYWNobm5hbWU6IFwiXCIsXG4gICAgcGljdHVyZXVybDogcGljc1sncGxhY2Vob2xkZXInXSxcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXG4gICAgdGFnOiBcIk1pbGVzdG9uZVwiLFxuICAgIGhlYWRpbmc6IFwiQnJhaW5zdG9ybWluZyBhbmQgc2VsZWN0aW9uIG9mIGlkZWFzIGFuZCBjb25jZXB0c1wiLFxuICAgIGludGVydmlld3RhYmlkOiBcImZvcndhcmRcIixcbiAgICBjYXJkdGV4dDogXCJcIixcbiAgICBxdW90ZTogXCJcIixcbiAgICBhaW1vZmNvbnRhY3Q6IFwiXCIsXG4gICAgaW5zaWdodHM6IFwiXCIsXG4gICAgaW1wbGVtZW50YXRpb246IFwiXCIsXG4gICAgdHlwZTogXCJtZXRhXCIsXG4gICAgc3VtbWFyeTogXCJcIixcbiAgICBtb250aHM6IFwib2N0b2JlclwiXG4gIH0sXG4gXG5dXG5cbiIsICJpbXBvcnQgeyBOZXdIUE1vcmVCdXR0b24gfSBmcm9tIFwiLi9CdXR0b25zXCI7XG5pbXBvcnQgeyB0aW1lbGluZWRhdGEgfSBmcm9tIFwiLi4vZGF0YS9ocHRpbWVsaW5lZGF0YVwiO1xuZnVuY3Rpb24gVGltZUl0ZW0oe3RhZywgdGl0bGUsIHBpYywgYXV0aG9yLCB0YWJpZCwgbW9udGh9OiBJdGVtUHJvcHMpe1xuICAgIGxldCBjbCA9IFwidC10YWcgXCIgKyB0YWc7XG4gICAgcmV0dXJuKFxuICAgIDxsaSBjbGFzc05hbWU9XCJ0aW1lbGluZW9sbGlcIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtaXRlbSBtb3JldG9wXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCIgc3R5bGU9e3twYWRkaW5nTGVmdDogXCIxMHB4XCIsIHBhZGRpbmdSaWdodDogXCIxNXB4XCJ9fT5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsfT5cbiAgICAgICAgICAgICAgICAgIHt0YWd9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTYgdC10YWdcIiBzdHlsZT17e2NvbG9yOiBcImJsYWNrXCIsIGJhY2tncm91bmRDb2xvcjogXCIjZTJkYWQ3XCJ9fT5cbiAgICAgICAgICAgICAgICAgIHttb250aH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWxsdXAtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyIGZpbGx1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgPlxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXJvdW5kXCIgc3JjPXtwaWN9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XG4gICAgICAgICAgICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyIGhwYnV0dG9ucm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiMTBweFwifX0+e2F1dGhvcn08L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0YWJcIj5cbiAgICAgICAgICAgICAgICA8TmV3SFBNb3JlQnV0dG9uIHRhYj17dGFiaWR9IHNjcm9sbD17YCR7dGFiaWR9LWhlYWRpbmdgfS8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIFxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG4gICAgKVxuICB9XG4gIFxuICBmdW5jdGlvbiBUaW1lSXRlbU1ldGEoeyB0YWcsIHRpdGxlLCBwaWMsIGF1dGhvciwgdGFiaWQsIG1vbnRofTogSXRlbVByb3BzKXtcbiAgICBsZXQgY2wgPSBcInQtdGFnIFwiICsgdGFnO1xuICAgIHJldHVybihcbiAgICA8bGkgY2xhc3NOYW1lPVwidGltZWxpbmVvbGxpXCI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW0gdGltZS1tZXRhIG1vcmV0b3BcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCIgc3R5bGU9e3twYWRkaW5nTGVmdDogXCIxMHB4XCIsIHBhZGRpbmdSaWdodDogXCIxNXB4XCJ9fT5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2NsfSBjb2wtNiB0LXRhZyBgfT5cbiAgICAgICAgICAgICAgICAgIHt0YWd9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTYgdC10YWdcIiBzdHlsZT17e2NvbG9yOiBcImJsYWNrXCIsIGJhY2tncm91bmRDb2xvcjogXCIjZTJkYWQ3XCJ9fT5cbiAgICAgICAgICAgICAgICAgIHttb250aH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgXG4gICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsbHVwLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlciBmaWxsdXBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiID5cbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1jdWJlXCIgc3JjPXtwaWN9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XG4gICAgICAgICAgICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyIGhwYnV0dG9ucm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiMTBweFwifX0+e2F1dGhvcn08L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0YWJcIj5cbiAgICAgICAgICAgICAgICA8TmV3SFBNb3JlQnV0dG9uIHRhYj17dGFiaWR9IHNjcm9sbD17YCR7dGFiaWR9LWhlYWRpbmdgfS8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIFxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG4gICAgKVxuICB9XG4gIFxuICBleHBvcnQgZnVuY3Rpb24gQ29tYmlUaW1lSG9yaSh7dGFiMSwgdGFiMn06e3RhYjE6IHN0cmluZywgdGFiMjogc3RyaW5nfSl7XG4gICAgbGV0IG5vZDsgXG5cbiAgICBcbiAgICAgIC8qIGNvbnNvbGUubG9nKFwiVGFiXCIpICovXG4gICAgICBub2QgPSBnZXRJdGVtc0J5VHlwZXModGFiMSwgdGFiMik7XG4gICAgXG4gICAgcmV0dXJuKFxuICAgIDxkaXY+XG4gIDxzZWN0aW9uIGNsYXNzTmFtZT1cInRpbWVsaW5lXCI+XG4gIDxvbCBjbGFzc05hbWU9XCJ0aW1lbGluZW9sXCI+XG4gICAgICB7bm9kfVxuICAgIDxsaSBjbGFzc05hbWU9XCJ0aW1lbGluZW9sbGlcIj48L2xpPlxuICA8L29sPlxuICBcbiAgXG4gIDwvc2VjdGlvbj5cbiAgPC9kaXY+XG4gICAgKVxuICBcbiAgfVxuIGV4cG9ydCBmdW5jdGlvbiBnZXRJdGVtc0J5VHlwZXModGFiaWQxOiBzdHJpbmcsIHRhYmlkMjogc3RyaW5nKSB7XG4gICAgICAgIGxldCByb3dzOiBKU1guRWxlbWVudFtdICA9IFtdXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGltZWxpbmVkYXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAodGFiaWQxID09PSB0aW1lbGluZWRhdGFbaV0udGFnIHx8IHRhYmlkMiA9PT0gdGltZWxpbmVkYXRhW2ldLnRhZykge1xuICAgICAgICAgICAgICB2YXIgbmFtZTogc3RyaW5nOyBcbiAgICAgICAgICAgICAgaWYgKHRpbWVsaW5lZGF0YVtpXS50aXRsZSkge1xuICAgICAgICAgICAgICAgIG5hbWUgPSB0aW1lbGluZWRhdGFbaV0udGl0bGUhICsgXCIgXCIgKyB0aW1lbGluZWRhdGFbaV0udm9ybmFtZSArIFwiIFwiICsgIHRpbWVsaW5lZGF0YVtpXS5uYWNobm5hbWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgZWxzZXtcbiAgICAgICAgICAgICAgICBuYW1lID0gIHRpbWVsaW5lZGF0YVtpXS52b3JuYW1lICsgXCIgXCIgKyAgdGltZWxpbmVkYXRhW2ldLm5hY2hubmFtZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJvd3MucHVzaCg8VGltZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGtleT17aX1cbiAgICAgICAgICAgICAgICAgIHRpdGxlPXt0aW1lbGluZWRhdGFbaV0uaGVhZGluZ31cbiAgICAgICAgICAgICAgICAgIHBpYz17dGltZWxpbmVkYXRhW2ldLnBpY3R1cmV1cmx9XG4gICAgICAgICAgICAgICAgICB0YWc9e3RpbWVsaW5lZGF0YVtpXS50YWd9XG4gICAgICAgICAgICAgICAgICBhdXRob3I9e25hbWV9XG4gICAgICAgICAgICAgICAgICB0YWJpZD17dGltZWxpbmVkYXRhW2ldLmludGVydmlld3RhYmlkfSBcbiAgICAgICAgICAgICAgICAgIG1vbnRoPXt0aW1lbGluZWRhdGFbaV0ubW9udGhzfSAgPlxuICAgICAgICAgICAgICAgICAgICB7dGltZWxpbmVkYXRhW2ldLmNhcmR0ZXh0fVxuICAgICAgICAgICAgICAgIDwvVGltZUl0ZW0+KVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByb3dzOyBcbiAgICB9XG4gIFxuICBleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBUaW1lSG9yaSh7dGFifTp7dGFiOiBzdHJpbmd9KXtcbiAgICBsZXQgbm9kOyBcbiAgICAvKiBjb25zb2xlLmxvZyhcIlRpbWVIb3JpXCIpICovXG4gICAgaWYgKHRhYiA9PT0gXCJcIil7ICBcbiAgICAgIG5vZCA9IDxBbGxJdGVtcz48L0FsbEl0ZW1zPlxuICAgICAgLyogY29uc29sZS5sb2coXCJUYWIgPSAnJ1wiKSAqL1xuICAgIH1cbiAgICBlbHNle1xuICAgICAgLyogY29uc29sZS5sb2coXCJUYWJcIikgKi9cbiAgICAgIG5vZCA9IGdldEl0ZW1zQnlUeXBlKHRhYik7XG4gICAgfVxuICAgIHJldHVybihcbiAgICA8ZGl2PlxuICA8c2VjdGlvbiBjbGFzc05hbWU9XCJ0aW1lbGluZVwiPlxuICA8b2wgY2xhc3NOYW1lPVwidGltZWxpbmVvbFwiPlxuICAgICAge25vZH1cbiAgICA8bGkgY2xhc3NOYW1lPVwidGltZWxpbmVvbGxpXCI+PC9saT5cbiAgPC9vbD5cbiAgXG4gIFxuICA8L3NlY3Rpb24+XG4gIDwvZGl2PlxuICBcbiAgICApXG4gIH1cbiAgXG5cbiAgXG4gICAgICBcbiAgICAgIGludGVyZmFjZSBJdGVtUHJvcHMge1xuICAgICAgICB0aXRsZTogc3RyaW5nICxcbiAgICAgICAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgICAgICAgdGFnOiBzdHJpbmcsIFxuICAgICAgICBwaWM6IHN0cmluZyxcbiAgICAgICAgYXV0aG9yOiBzdHJpbmcsIFxuICAgICAgICB0YWJpZDogc3RyaW5nXG4gICAgICAgIG1vbnRoOiBzdHJpbmdcbiAgICAgICAgfVxuICAgIFxuICAgICAgICBcblxuXG4gICAgICBmdW5jdGlvbiBBbGxJdGVtcygpe1xuICAgICAgICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxuICAgICAgICBmb3IgKCBsZXQgaSA9IDA7ICBpIDwgdGltZWxpbmVkYXRhLmxlbmd0aDsgaSsrICl7XG4gICAgICAgICAgaWYgKHRpbWVsaW5lZGF0YVtpXS50eXBlID09PSBcIm1ldGFcIil7XG4gICAgICAgICAgICB2YXIgbmFtZTogc3RyaW5nOyBcbiAgICAgICAgICAgIGlmICh0aW1lbGluZWRhdGFbaV0udGl0bGUpIHtcbiAgICAgICAgICAgICAgbmFtZSA9IHRpbWVsaW5lZGF0YVtpXS50aXRsZSEgKyBcIiBcIiArIHRpbWVsaW5lZGF0YVtpXS52b3JuYW1lICsgXCIgXCIgKyAgdGltZWxpbmVkYXRhW2ldLm5hY2hubmFtZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAgIG5hbWUgPSAgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcm93cy5wdXNoKDxUaW1lSXRlbU1ldGEgXG4gICAgICAgICAgICAgIHRpdGxlPXt0aW1lbGluZWRhdGFbaV0uaGVhZGluZ31cbiAgICAgICAgICAgICAgcGljPXt0aW1lbGluZWRhdGFbaV0ucGljdHVyZXVybH1cbiAgICAgICAgICAgICAgdGFnPXt0aW1lbGluZWRhdGFbaV0udGFnfVxuICAgICAgICAgICAgICBhdXRob3I9e25hbWV9XG4gICAgICAgICAgICAgIHRhYmlkPXt0aW1lbGluZWRhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9XG4gICAgICAgICAgICAgIG1vbnRoPXt0aW1lbGluZWRhdGFbaV0ubW9udGhzfSAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt0aW1lbGluZWRhdGFbaV0uY2FyZHRleHR9XG4gICAgICAgICAgICAgIDwvVGltZUl0ZW1NZXRhPilcbiAgICAgICAgICB9XG4gICAgICAgICAgZWxzZXtcbiAgICAgICAgICAgIHZhciBuYW1lOiBzdHJpbmc7IFxuICAgICAgICAgICAgaWYgKHRpbWVsaW5lZGF0YVtpXS50aXRsZSkge1xuICAgICAgICAgICAgICBuYW1lID0gdGltZWxpbmVkYXRhW2ldLnRpdGxlISArIFwiIFwiICsgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZXtcbiAgICAgICAgICAgICAgbmFtZSA9ICB0aW1lbGluZWRhdGFbaV0udm9ybmFtZSArIFwiIFwiICsgIHRpbWVsaW5lZGF0YVtpXS5uYWNobm5hbWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByb3dzLnB1c2goPFRpbWVJdGVtIFxuICAgICAgICAgICAgICB0aXRsZT17dGltZWxpbmVkYXRhW2ldLmhlYWRpbmd9XG4gICAgICAgICAgICAgIHBpYz17dGltZWxpbmVkYXRhW2ldLnBpY3R1cmV1cmx9XG4gICAgICAgICAgICAgIHRhZz17dGltZWxpbmVkYXRhW2ldLnRhZ31cbiAgICAgICAgICAgICAgYXV0aG9yPXtuYW1lfVxuICAgICAgICAgICAgICB0YWJpZD17dGltZWxpbmVkYXRhW2ldLmludGVydmlld3RhYmlkfSBcbiAgICAgICAgICAgICAgbW9udGg9e3RpbWVsaW5lZGF0YVtpXS5tb250aHN9ICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7dGltZWxpbmVkYXRhW2ldLmNhcmR0ZXh0fVxuICAgICAgICAgICAgICA8L1RpbWVJdGVtPilcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJvd3M7IFxuICAgICAgfVxuXG4gICAgICBcbiAgICAgIGV4cG9ydCBmdW5jdGlvbiBnZXRJdGVtc0J5VHlwZSh0YWJpZDogc3RyaW5nKSB7XG4gICAgICAgIGxldCByb3dzOiBKU1guRWxlbWVudFtdICA9IFtdXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGltZWxpbmVkYXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAodGFiaWQgPT09IHRpbWVsaW5lZGF0YVtpXS50YWcpIHtcbiAgICAgICAgICAgICAgdmFyIG5hbWU6IHN0cmluZzsgXG4gICAgICAgICAgICAgIGlmICh0aW1lbGluZWRhdGFbaV0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICBuYW1lID0gdGltZWxpbmVkYXRhW2ldLnRpdGxlISArIFwiIFwiICsgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICAgICAgbmFtZSA9ICB0aW1lbGluZWRhdGFbaV0udm9ybmFtZSArIFwiIFwiICsgIHRpbWVsaW5lZGF0YVtpXS5uYWNobm5hbWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByb3dzLnB1c2goPFRpbWVJdGVtXG4gICAgICAgICAgICAgICAgICBrZXk9e2l9XG4gICAgICAgICAgICAgICAgICB0aXRsZT17dGltZWxpbmVkYXRhW2ldLmhlYWRpbmd9XG4gICAgICAgICAgICAgICAgICBwaWM9e3RpbWVsaW5lZGF0YVtpXS5waWN0dXJldXJsfVxuICAgICAgICAgICAgICAgICAgdGFnPXt0aW1lbGluZWRhdGFbaV0udGFnfVxuICAgICAgICAgICAgICAgICAgYXV0aG9yPXtuYW1lfVxuICAgICAgICAgICAgICAgICAgdGFiaWQ9e3RpbWVsaW5lZGF0YVtpXS5pbnRlcnZpZXd0YWJpZH0gXG4gICAgICAgICAgICAgICAgICBtb250aD17dGltZWxpbmVkYXRhW2ldLm1vbnRoc30gID5cbiAgICAgICAgICAgICAgICAgICAge3RpbWVsaW5lZGF0YVtpXS5jYXJkdGV4dH1cbiAgICAgICAgICAgICAgICA8L1RpbWVJdGVtPilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcm93czsgXG4gICAgfVxuICAgIFxuICAgICAiLCAiaW1wb3J0IHsgVGFiQnV0dG9uUm93IH0gZnJvbSBcIi4vQnV0dG9uc1wiO1xuaW1wb3J0IFRpbWVIb3JpLCB7IENvbWJpVGltZUhvcmkgfSBmcm9tIFwiLi9Ib3Jpem9udGFsVGltZWxpbmVcIjtcbmltcG9ydCB7IEJGSFN0eWxlVGFicywgQnV0dG9uUm93VGFicyB9IGZyb20gXCIuL1RhYnNcIjtcbmltcG9ydCB7IHRpbWVsaW5lZGF0YSB9IGZyb20gXCIuLi9kYXRhL2hwdGltZWxpbmVkYXRhXCI7XG5leHBvcnQgZnVuY3Rpb24gSFBUaW1lbGluZSgpe1xuICAgIHJldHVybihcbiAgICAgIDxzZWN0aW9uIGlkPVwiVGltZWxpbmVcIiBjbGFzc05hbWU9XCJzZWN0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2VudGVyXCI+XG4gICAgICAgIDwvZGl2PiBcbiAgICAgICAgPFRhYkJ1dHRvblJvdyBkYXRhPXt0aW1lbGluZWJ1dHRvbnJvd2RhdGF9IGNsYXNzeT1cIlwiIG9wZW50eXBlPVwidGltZWxpbmVjYXJkdGFic1wiIGNsb3Npbmc9XCJ0aW1lbGluZXBlcnNvbnRhYnNcIiAvPlxuICAgICAgICA8QnV0dG9uUm93VGFicyBjbGE9XCJ0aW1lbGluZWNhcmR0YWJzXCIgZGF0YT17dGltZWxpbmVidXR0b25yb3dkYXRhfS8+IFxuICAgICAgICA8QkZIU3R5bGVUYWJzIGNsYT1cInRpbWVsaW5lcGVyc29udGFic1wiIGRhdGE9e3RpbWVsaW5lZGF0YX0+PC9CRkhTdHlsZVRhYnM+IFxuICAgICAgPC9zZWN0aW9uPlxuICAgIClcbiAgfVxuXG4gIGxldCB0aW1lbGluZWJ1dHRvbnJvd2RhdGEgPSBbXG4gICAge1xuICAgICAgYnV0dG9ubmFtZTogXCJBbGxcIiwgXG4gICAgICBub2RlOiA8VGltZUhvcmkgdGFiPVwiXCIgPjwvVGltZUhvcmk+LCBcbiAgICAgIGNzc25hbWU6IFwiRmlyc3RcIixcbiAgICAgIG1haW46IHRydWVcbiAgICAgIFxuICAgIH0sXG4gICAgeyBcbiAgICAgIG5vZGU6IDxUaW1lSG9yaSB0YWI9XCJQYXRpZW50XCIgPjwvVGltZUhvcmk+LFxuICAgICAgYnV0dG9ubmFtZTogXCJQYXRpZW50c1wiLCBcbiAgICAgIGNzc25hbWU6IFwiUGF0aWVudFwiXG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlOiA8VGltZUhvcmkgdGFiPVwiTWVkaWNhbCBQcm9mZXNzaW9uYWxcIiA+PC9UaW1lSG9yaT4sXG4gICAgICBidXR0b25uYW1lOiBcIk1lZGljYWwgUHJvZmVzc2lvbmFsc1wiLCBcbiAgICAgIGNzc25hbWU6IFwiTWVkaWNhbFwiXG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlOiA8VGltZUhvcmkgdGFiPVwiQWNhZGVtaWFcIiA+PC9UaW1lSG9yaT4sXG4gICAgICBidXR0b25uYW1lOiBcIkFjYWRlbWlhXCIsIFxuICAgICAgY3NzbmFtZTogXCJBY2FkZW1pYVwiXG4gICAgfSxcbiAgICB7IFxuICAgICAgbm9kZTogPFRpbWVIb3JpIHRhYj1cIkluZHVzdHJ5XCIgPjwvVGltZUhvcmk+LFxuICAgICAgYnV0dG9ubmFtZTogXCJJbmR1c3RyeVwiLCBcbiAgICAgIGNzc25hbWU6IFwiSW5kdXN0cnlcIlxuICAgIH0sXG4gICAgeyBcbiAgICAgIG5vZGU6IDxUaW1lSG9yaSB0YWI9XCJNaWxlc3RvbmVcIiA+PC9UaW1lSG9yaT4sXG4gICAgICBidXR0b25uYW1lOiBcIk1pbGVzdG9uZXNcIiwgXG4gICAgICBjc3NuYW1lOiBcIk1pbGVzdG9uZVwiXG4gICAgfSxcbiAgIHsgXG4gICAgICBub2RlOiA8Q29tYmlUaW1lSG9yaSB0YWIxPVwiRWR1Y2F0aW9uXCIgdGFiMj1cIk91dHJlYWNoXCIgPjwvQ29tYmlUaW1lSG9yaT4sXG4gICAgICBidXR0b25uYW1lOiBcIkVkdWNhdGlvbiAmIE91dHJlYWNoXCIsIFxuICAgICAgY3NzbmFtZTogXCJFZHVjYXRpb25cIlxuICAgIH0sXG4gICAgLypcbiAgICB7IFxuICAgICAgbm9kZTogPFRpbWVIb3JpIHRhYj1cIk91dHJlYWNoXCIgPjwvVGltZUhvcmk+LFxuICAgICAgYnV0dG9ubmFtZTogXCJPdXRyZWFjaFwiLCBcbiAgICAgIGNzc25hbWU6IFwiT3V0cmVhY2hcIlxuICAgIH0gKi9cbiAgXVxuICBcblxuLyogZXhwb3J0IGZ1bmN0aW9uIEhQdGltZWxpbmVOZXcoZGF0YTogQXJyYXk8Tm9kZURhdGVuc2F0ej4pe1xuICB2YXIgdGltZWxpbmVjYXJkczogUmVhY3QuUmVhY3ROb2RlOyBcbiAgdmFyIGludGVydmlld3RhYnM6IFxuXG59ICovIiwgImltcG9ydCBDb2xsYXBzaWJsZSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuaW1wb3J0IHsgSDUsIEg0IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhQY29uY2x1c2lvbigpe1xuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgICByZXR1cm4oXG4gICAgICAgIDw+XG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgaGFzIGV2b2x2ZWQgdGhyb3VnaCBhIGRlZXBseSBjb2xsYWJvcmF0aXZlIGFuZCBodW1hbi1jZW50ZXJlZCBhcHByb2FjaCwgaW50ZWdyYXRpbmcgZGl2ZXJzZSBmZWVkYmFjayBmcm9tIHBhdGllbnRzLCBjbGluaWNpYW5zLCByZXNlYXJjaGVycywgYW5kIGluZHVzdHJ5IGV4cGVydHMuIFRoZXNlIGluc2lnaHRzIHNoYXBlZCBub3Qgb25seSB0aGUgdGVjaG5pY2FsIGFzcGVjdHMgb2Ygb3VyIGdlbmUgdGhlcmFweSBmb3IgY3lzdGljIGZpYnJvc2lzIChDRikgYnV0IGFsc28gb3VyIGNvbW1pdG1lbnQgdG8gYWRkcmVzc2luZyByZWFsLXdvcmxkIHBhdGllbnQgbmVlZHMsIGV0aGljYWwgY29uc2lkZXJhdGlvbnMsIGFuZCB0aGUgZGlzcGFyaXRpZXMgaW4gQ0YgdHJlYXRtZW50IHdvcmxkd2lkZS4gRnJvbSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXhmaXJzdCcsICcnKX0+TWF4IEJlY2ttYW5uXHUyMDE5czwvYT4gcGF0aWVudCBwZXJzcGVjdGl2ZSB0byBleHBlcnQgZ3VpZGFuY2Ugb24gdGVjaG5pY2FsIGFuZCBldGhpY2FsIGlzc3VlcywgZWFjaCBzdGFrZWhvbGRlciBjb250cmlidXRlZCB0byByZWZpbmluZyBvdXIgc29sdXRpb24sIGVuc3VyaW5nIGl0IGlzIGJvdGggaW5ub3ZhdGl2ZSBhbmQgZW1wYXRoZXRpYy4gT3VyIGZvY3VzIG9uIGdlbmUgdGhlcmFweSB0YXJnZXRpbmcgQ0ZcdTIwMTlzIGNvbXBsZXggbXV0YXRpb25zLCBpbnRlZ3JhdGluZyBwaHlzaW90aGVyYXB5LCBhbmQgZW5zdXJpbmcgZ2xvYmFsIGFjY2Vzc2liaWxpdHkgZGVtb25zdHJhdGVzIG91ciBob2xpc3RpYyBhbmQgaW5jbHVzaXZlIHZpc2lvbiBmb3IgdGhpcyBwcm9qZWN0LiBJbXBvcnRhbnRseSwgdGhlIGNvbGxhYm9yYXRpb24gd2l0aCByZXNlYXJjaGVycyBpbiBuYW5vcGFydGljbGUgc3RhYmlsaXR5IGFuZCBnZW5lIHRoZXJhcHksIGFsb25nIHdpdGggdGhlIGRldmVsb3BtZW50IG9mIGJpbGluZ3VhbCBzdXJ2ZXlzIGFuZCBvdXRyZWFjaCBtYXRlcmlhbHMsIGhpZ2hsaWdodHMgb3VyIGVmZm9ydHMgdG8gbWFrZSBzY2llbmNlIG1vcmUgYWNjZXNzaWJsZSBhbmQgdHJhbnNwYXJlbnQsIGJyaWRnaW5nIGdhcHMgaW4ga25vd2xlZGdlIGFuZCBjYXJlLiAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiSHVtYW4gUHJhY3RpY2VzIEludGVncmF0aW9uIFwiLz5cbiAgICAgICAgICAgICAgICA8cD5Gcm9tIHRoZSBzdGFydCwgd2UgcHJpb3JpdGl6ZWQgZW5nYWdpbmcgd2l0aCBDRiBwYXRpZW50cywgbWFraW5nIHN1cmUgdGhhdCBvdXIgcHJvamVjdCBhbGlnbmVkIHdpdGggYm90aCB0aGVpciBuZWVkcyBhbmQgc2NpZW50aWZpYyBleHBlY3RhdGlvbnMuIEVhcmx5IGlucHV0IGZyb20gTWF4IEJlY2ttYW5uLCBhIENGIHBhdGllbnQgYW5kIGZyaWVuZCBvZiBvdXIgdGVhbSwgZ3VpZGVkIGtleSBkZXNpZ24gZGVjaXNpb25zLCBzdWNoIGFzIG91ciBmb2N1cyBvbiBsdW5nLXRhcmdldGVkIGdlbmUgdGhlcmFweS4gSGlzIGluc2lnaHRzIGFsc28gc2hhcGVkIGFzcGVjdHMgbGlrZSBoeWdpZW5lIHByb3RvY29scyBmb3IgaW1tdW5vY29tcHJvbWlzZWQgcGF0aWVudHMgYW5kIHRoZSBwb3J0cmF5YWwgb2YgQ0YgaW4gb3VyIG91dHJlYWNoIG1hdGVyaWFscy4gTWF4XHUyMDE5cyBvbmdvaW5nIGZlZWRiYWNrIHByb3ZpZGVkIGludmFsdWFibGUgZW1vdGlvbmFsIGluc2lnaHQsIGhlbHBpbmcgdXMgZ3JvdW5kIHRoZSBwcm9qZWN0IGluIHRoZSByZWFsLXdvcmxkIGV4cGVyaWVuY2VzIG9mIENGIHBhdGllbnRzLjwvcD5cbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlN0YWtlaG9sZGVyIEVuZ2FnZW1lbnQgXCIvPlxuICAgICAgICAgICAgICAgIDxwPldlIGNvbnN1bHRlZCB3aXRoIG1lZGljYWwgcHJvZmVzc2lvbmFscyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ29sYXJpdScsICcnKX0+RHIuIE9sYXJpdSA8L2E+ICB3aG8gZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBlYXJseSBkaWFnbm9zaXMgYW5kIG1lbnRhbCBoZWFsdGggc3VwcG9ydCBpbiBDRiB0cmVhdG1lbnQuIFRoZXNlIGluc2lnaHRzIGxlZCB1cyB0byBpbnRlZ3JhdGUgbWVudGFsIGhlYWx0aCBjb25zaWRlcmF0aW9ucyBpbnRvIG91ciB0aGVyYXB5IGRlc2lnbiBhbmQgZm9jdXMgb24gcmVkdWNpbmcgcmFjaWFsIGFuZCBnbG9iYWwgZGlzcGFyaXRpZXMgaW4gQ0YgY2FyZS4gUGh5c2lvdGhlcmFwaXN0IDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3dlc3Rob2ZmaW52JywgJycpfT5LYXRyaW4gV2VzdGhvZmY8L2E+ICBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgYSB1c2VyLWZyaWVuZGx5IGluaGFsYXRpb24tYmFzZWQgdGhlcmFweSBmb3IgeW91bmdlciBwYXRpZW50cywgdmFsaWRhdGluZyBvdXIgZGlyZWN0aW9uIHRvd2FyZHMgY3JlYXRpbmcgYWNjZXNzaWJsZSB0cmVhdG1lbnRzLiA8L3A+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJFdGhpY2FsLCBMZWdhbCwgYW5kIFJlZ3VsYXRvcnkgQ29uc2lkZXJhdGlvbnMgXCIvPlxuICAgICAgICAgICAgICAgIDxwPkNvbGxhYm9yYXRpb24gd2l0aCByZWd1bGF0b3J5IGV4cGVydHMsIHN1Y2ggYXMgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmVyZW5zJywgJycpfT4gRHIuIEV2YS1NYXJpYSBCZXJlbnMgPC9hPiAsIGVuc3VyZWQgb3VyIHdvcmsgYWRoZXJlZCB0byBldGhpY2FsIGFuZCBsZWdhbCBzdGFuZGFyZHMsIHBhcnRpY3VsYXJseSBpbiBwYXRpZW50IGNvbnNlbnQgYW5kIGJpb3NhZmV0eSBwcm90b2NvbHMuIFRocm91Z2ggZmVlZGJhY2sgZnJvbSBsZWdhbCBhbmQgYmlvZXRoaWNzIGNvbW1pdHRlZXMsIHdlIHJlZmluZWQgb3VyIGNvbnNlbnQgcHJvY2Vzc2VzIGFuZCBpbXByb3ZlZCBvdXIgbWFuYWdlbWVudCBvZiBwZXJzb25hbCBkYXRhLCBlbnN1cmluZyBvdXIgcHJvamVjdCBjb21wbGllZCB3aXRoIGJvdGggR2VybWFuIGFuZCBpbnRlcm5hdGlvbmFsIHJlZ3VsYXRpb25zLiA8L3A+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJUZWNobmljYWwgYW5kIFNjaWVudGlmaWMgQWRhcHRhdGlvbnMgXCIvPlxuICAgICAgICAgICAgICAgIDxwPldlIGNvbnRpbnVvdXNseSBpbnRlZ3JhdGVkIGV4cGVydCB0ZWNobmljYWwgZmVlZGJhY2sgaW50byB0aGUgcHJvamVjdC4gQ29udHJpYnV0aW9ucyBmcm9tIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3JuaGFsZScsICcnKX0+RHIuIEJlbmphbWluIFdpbmtlbGphbm48L2E+ICBhbmQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigna29sb25rb2ZpcnN0JywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIEthdGhhcmluYSBLb2xvbmtvPC9hPiAgaGVscGVkIHVzIGltcHJvdmUgdGhlIHN0YWJpbGl0eSBhbmQgc2NhbGFiaWxpdHkgb2Ygb3VyIHNwcmF5LWRyaWVkIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCB3aGljaCBhcmUgZXNzZW50aWFsIGZvciBSTkEgZGVsaXZlcnkuIFRoaXMgcHJhY3RpY2FsIGZvY3VzIG9uIHNjYWxhYmxlIHNvbHV0aW9ucyBhbGxvd2VkIHVzIHRvIGFkZHJlc3MgZ2xvYmFsIGNoYWxsZW5nZXMsIHN1Y2ggYXMgdGhlIG5lZWQgZm9yIHRyYW5zcG9ydGFibGUgdGhlcmFwaWVzLiBDb2xsYWJvcmF0aW5nIHdpdGggeWVhc3QgY3VsdGl2YXRpb24gZXhwZXJ0cyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ25iZXJlbHNtYW5uJywgJycpfT5OaWxzIEJlcmVsc21hbm48L2E+LCB3ZSBhbHNvIG9wdGltaXplZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ2xucHMnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PiBSTkEgZGVsaXZlcnkgU3lzdGVtcyA8L2E+IHRvIGVuc3VyZSBlZmZlY3RpdmUgbHVuZyBwZW5ldHJhdGlvbi4gPC9wPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiR2xvYmFsIEltcGFjdCBhbmQgSW5jbHVzaXZpdHkgXCIvPlxuICAgICAgICAgICAgICAgIDxwPlJlY29nbml6aW5nIHRoZSBkaXNwYXJpdGllcyBpbiBDRiBjYXJlIGFjcm9zcyBkaWZmZXJlbnQgcmVnaW9ucywgcGFydGljdWxhcmx5IGluIHVuZGVycmVwcmVzZW50ZWQgYXJlYXMgbGlrZSBBc2lhLCB3ZSBhZGp1c3RlZCBvdXIgYXBwcm9hY2ggdG8gY3JlYXRlIGEgbW9yZSBpbmNsdXNpdmUgdGhlcmFweS4gV2l0aCBmZWVkYmFjayBmcm9tIHN0YWtlaG9sZGVycyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2pvc2h1YScsICcnKX0+Sm9zaHVhIEJhdWRlcjwvYT4gZnJvbSBDRiBWZXN0IEludGVybmF0aW9uYWwgYW5kIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3NyaXJhbScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBTcmlyYW0gVmFpZHlhbmF0aGFuPC9hPiwgd2UgZW5zdXJlZCBvdXIgdGhlcmFweSBhZGRyZXNzZWQgYSB3aWRlciByYW5nZSBvZiBDRiBtdXRhdGlvbnMuIFRoaXMgZ2xvYmFsIGZvY3VzIGxlZCB0byBiaWxpbmd1YWwgc3VydmV5cyBhbmQgZXhwYW5kZWQgb3V0cmVhY2ggZWZmb3J0cyB0byByYWlzZSBhd2FyZW5lc3MgYWJvdXQgQ0YgYW5kIGdlbmUgdGhlcmFweS4gPC9wPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRmVlZGJhY2sgTG9vcHMgYW5kIFByb2plY3QgRXZvbHV0aW9uIFwiLz5cbiAgICAgICAgICAgICAgICA8cD5XZSBlbXBsb3llZCBhIHN0cnVjdHVyZWQgZmVlZGJhY2sgY3ljbGUgYmFzZWQgb24gR2liYnMnIFJlZmxlY3Rpb24gQ3ljbGUsIGVuc3VyaW5nIG91ciBkZXNpZ24gY29udGludW91c2x5IGV2b2x2ZWQgd2l0aCBzdGFrZWhvbGRlciBpbnB1dC4gRnJvbSBpbml0aWFsIGRlc2lnbiB0byBwdWJsaWMgb3V0cmVhY2gsIGV2ZXJ5IHBoYXNlIG9mIFByZUN5c2Ugd2FzIHNoYXBlZCBieSB0aGUgZmVlZGJhY2sgd2UgcmVjZWl2ZWQsIGFsbG93aW5nIHVzIHRvIGRldmVsb3AgYSBwYXRpZW50LWNlbnRlcmVkIGFuZCBnbG9iYWxseSByZWxldmFudCBzb2x1dGlvbi4gPC9wPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRG9jdW1lbnRhdGlvbiBhbmQgRnV0dXJlIEd1aWRhbmNlIFwiLz5cbiAgICAgICAgICAgICAgICA8cD5XZSBhcmUgY29tbWl0dGVkIHRvIHRyYW5zcGFyZW5jeSBhbmQgb3BlbiBzY2llbmNlLiBPdXIgZGV0YWlsZWQgZG9jdW1lbnRhdGlvbiBvZiBzdGFrZWhvbGRlciBpbnRlcmFjdGlvbnMgYW5kIG1ldGhvZHNcdTIwMTRpbmNsdWRpbmcgcHJvdG9jb2xzIGZvciB3b3JraW5nIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdDZWxsIEN1bHR1cmUzJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT4gaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyA8L2E+XHUyMDE0cHJvdmlkZXMgYSBmb3VuZGF0aW9uIGZvciBmdXR1cmUgaUdFTSB0ZWFtcy4gT3VyIG91dHJlYWNoIGVmZm9ydHMsIGluY2x1ZGluZyBlZHVjYXRpb25hbCBtYXRlcmlhbHMgYW5kIHB1YmxpYyBlbmdhZ2VtZW50IGNhbXBhaWducywgaGVscCBmb3N0ZXIgYSBicm9hZGVyIHVuZGVyc3RhbmRpbmcgb2YgQ0YgYW5kIGdlbmUgdGhlcmFweSwgcmVmbGVjdGluZyBpR0VNXHUyMDE5cyB2aXNpb24gb2YgcmVzcG9uc2libGUgYW5kIGltcGFjdGZ1bCBzY2llbnRpZmljIHByYWN0aWNlcy4gPC9wPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTmV4dCBTdGVwc1wiLz5cbiAgICAgICAgICAgICAgICA8b2w+XG4gICAgICAgICAgICAgICAgICAgIDxsaT48cD48Yj5BZHZhbmNlZCBUZXN0aW5nIGFuZCBQcmVjbGluaWNhbCBUcmlhbHM6PC9iPjwvcD4gIDxwPkZvbGxvd2luZyB0aGUgc3VjY2Vzc2Z1bCBpbiB2aXRybyBleHBlcmltZW50cywgb3VyIG5leHQgbWFqb3IgbWlsZXN0b25lIGlzIHRoZSBpbml0aWF0aW9uIG9mIGFuaW1hbCBzdHVkaWVzIHRvIGV2YWx1YXRlIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIG91ciBnZW5lIHRoZXJhcHkgYXBwcm9hY2gsIHBhcnRpY3VsYXJseSBpbiBDRiBsdW5nIG1vZGVscy48L3A+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpPjxwPjxiPkVuaGFuY2luZyBSTkEgRGVsaXZlcnkgU3lzdGVtczo8L2I+PC9wPiAgPHA+V2Ugd2lsbCBjb250aW51ZSBvcHRpbWl6aW5nIG91ciBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZm9ybXVsYXRpb25zLCBwYXJ0aWN1bGFybHkgZXhwbG9yaW5nIGNoaXRvc2FuIGludGVncmF0aW9uLCB0byBpbXByb3ZlIFJOQSBzdGFiaWxpdHksIGx1bmcgcGVuZXRyYXRpb24sIGFuZCBzY2FsYWJpbGl0eSBmb3IgYnJvYWRlciBnbG9iYWwgYXBwbGljYXRpb25zLjwvcD48L2xpPlxuICAgICAgICAgICAgICAgICAgICA8bGk+PHA+PGI+Q2xpbmljYWwgUGFydG5lcnNoaXBzOjwvYj48L3A+ICA8cD5Fc3RhYmxpc2ggc3Ryb25nZXIgdGllcyB3aXRoIGNsaW5pY2FsIGluc3RpdHV0aW9ucyB0byBtb3ZlIHRvd2FyZHMgaHVtYW4gdHJpYWxzLCBlbnN1cmluZyB0aGF0IG91ciB0aGVyYXB5IGlzIGFsaWduZWQgd2l0aCBjbGluaWNhbCBuZWVkcyBhbmQgcmVndWxhdG9yeSBzdGFuZGFyZHMuPC9wPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaT48cD48Yj5FeHBhbmRlZCBHbG9iYWwgT3V0cmVhY2g6PC9iPjwvcD4gIDxwPkluY3JlYXNlIGF3YXJlbmVzcyBhbmQgZWR1Y2F0aW9uIG9uIENGIGFuZCBnZW5lIHRoZXJhcHkgdGhyb3VnaCBtdWx0aWxpbmd1YWwgcGxhdGZvcm1zIGFuZCBjb2xsYWJvcmF0aW9uIHdpdGggaW50ZXJuYXRpb25hbCBDRiBjb21tdW5pdGllcywgcGFydGljdWxhcmx5IGluIHVuZGVycmVwcmVzZW50ZWQgcmVnaW9ucy48L3A+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpPjxwPjxiPkV0aGljYWwgYW5kIExlZ2FsIENvbnNpZGVyYXRpb25zOjwvYj48L3A+ICA8cD5GaW5hbGl6ZSBhbGwgYmlvZXRoaWNhbCBwcm90b2NvbHMgZm9yIHBhdGllbnQgc2FtcGxpbmcgYW5kIGRhdGEgbWFuYWdlbWVudCB0byBwYXZlIHRoZSB3YXkgZm9yIHNhZmUsIGNvbXBsaWFudCBmdXR1cmUgcmVzZWFyY2gsIGluY2x1ZGluZyB0aGUgZGV2ZWxvcG1lbnQgb2YgZ3VpZGVsaW5lcyBmb3IgZnV0dXJlIHRlYW1zLjwvcD48L2xpPlxuICAgICAgICAgICAgICAgIDwvb2w+XG4gICAgICAgICAgICAgICAgPHA+QnkgY29udGludWluZyB0aGlzIHBhdGllbnQtZHJpdmVuLCBzY2llbnRpZmljYWxseSByaWdvcm91cywgYW5kIGdsb2JhbGx5IGNvbnNjaW91cyB0cmFqZWN0b3J5LCB3ZSBhaW0gdG8gYWR2YW5jZSBjeXN0aWMgZmlicm9zaXMgY2FyZSBhbmQgbWFrZSBhIGxhc3RpbmcgaW1wYWN0IG9uIHBhdGllbnQgbGl2ZXMsIGVuc3VyaW5nIHRoYXQgb3VyIHByb2plY3QgcmVtYWlucyBwb2lzZWQgZm9yIGNsaW5pY2FsIHN1Y2Nlc3MuPC9wPlxuICAgICAgICAgICAgICAgIFxuXG48Lz5cbiAgICApXG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIEhQY29uVGFicygpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgICA8PlxuICAgICAgICA8QW5hbHlzZU1heC8+XG4gICAgICAgIDxBYWx5c2VPbGFyaXUvPlxuICAgICAgICA8QW5hbHlzZVdlc3Rob2ZmLz5cbiAgICAgICAgPEFuYWx5c2VKb3NodWEvPlxuICAgICAgICA8QW5hbHlzZVJuaGFsZS8+XG4gICAgICAgIDxBbmFseXNlS29sb25rby8+XG4gICAgICAgIDxBbmFseXNlTW9vci8+XG4gICAgICAgIDxBbmFseXNlV2ViZXIvPlxuICAgICAgICA8QW5hbHlzZUJlcmVucy8+XG4gICAgICAgIDxBbmFseXNlTWljaGFlbGEvPlxuICAgICAgICA8QW5hbHlzZU1hdHRpanMvPiBcbiAgICAgICAgPEFuYWx5c2VXaXNjaG1leWVyLz5cbiAgICAgICAgPEFuYWx5c2VJZ25hdG92YS8+XG4gICAgICAgIDxBbmFseXNlQmhhcnRpLz5cbiAgICAgICAgPEFuYWx5c2VTcmlyYW0vPlxuICAgICAgICA8QW5hbHlzZUtyaXN0aWFuLz5cbiAgICAgICAgPEFuYWx5c2VTYWl0by8+XG4gICAgICAgIDxBbmFseXNlTmlscy8+XG4gICAgICAgIDwvPlxuICAgIClcbn1cblxuLyogXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPiBcbiAgICBcdCAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIvPlxuICAgIFx0ICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gIFxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8L2Rpdj4gXG5cbiAgICAgICAgICAgIGZ1bmN0aW9uIEFuYWx5c2UoKXtcbiAgIHJldHVybihcbiAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJcIiBpZD1cIlwiPlxuICAgICAgICBcbiAgICA8L0NvbGxhcHNpYmxlPlxuICAgKSBcbn1cblxuXG4gICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgPGltZyBzcmM9XCJsaW5rXCIgYWx0PVwid2hhdCBpcyBpbiB0aGUgcGljXCIvPiBcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIHguPC9iPiAgRmlndXJlIENhcHRpb24gXG4gICAgICAgICAgICA8L2ZpZ2NhcHRpb24+IFxuICAgICAgICA8L2ZpZ3VyZT4gXG5cblxuXG4gICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB4LjwvYj4gQ2FwdGlvbiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgIDwvZmlndXJlPlxuKi9cblxuXG5mdW5jdGlvbiBBbmFseXNlTmlscygpe1xuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXG4gICAgcmV0dXJuKFxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJOaWxzIEJlcmVsc21hbm4gJiBIYWthbiBTb3l0XHUwMEZDcmsgLSBTcGVjaWFsaXN0cyBpbiB5ZWFzdCBjdWx0aXZhdGlvbiBcIiBpZD1cIm5pbHNhbmFseXNlQ1wiPlxuICAgICAgICAgPHA+TmlscyBCZXJlbHNtYW5uIGFuZCBIYWthbiBTb3l0XHUwMEZDcmssIHNwZWNpYWxpc3RzIGluIHllYXN0IGN1bHRpdmF0aW9uLCBwbGF5ZWQgcGl2b3RhbCByb2xlcyBpbiBhZHZhbmNpbmcgb3VyIHByb2plY3QuIE5pbHMgcHJvdmlkZWQgdXMgd2l0aCBhIHllYXN0IHN0cmFpbiBjb21wYXRpYmxlIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignc2FpdG8nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gU2FpdG8nczwvYT4gIHJlY29tbWVuZGF0aW9ucywgcGFydGljdWxhcmx5IG9uZSB0aGF0IGRvZXNuXHUyMDE5dCBleHByZXNzIHByb3RlYXNlcywgd2hpY2ggd291bGQgZGVncmFkZSBvdXIgbmlja2FzZSBjYW5kaWRhdGVzLiBUaGlzIHN0cmFpbiB3YXMgZXNzZW50aWFsIGZvciBtYWludGFpbmluZyB0aGUgaW50ZWdyaXR5IG9mIG91ciBlbmdpbmVlcmVkIGVuenltZXMuIDwvcD5cbiAgICAgICAgPHA+SGFrYW4gZXF1aXBwZWQgdXMgd2l0aCB0aGUgbWV0aG9kb2xvZ2ljYWwgZXhwZXJ0aXNlIG5lZWRlZCB0byB3b3JrIHdpdGggeWVhc3QsIGd1aWRpbmcgdXMgdGhyb3VnaCB0aGUgY29tcGxleGl0aWVzIG9mIHllYXN0IGN1bHRpdmF0aW9uLiBXaXRoIHRoZWlyIHN1cHBvcnQsIHdlIGFkYXB0ZWQgb3VyIGVuZ2luZWVyaW5nIGRlc2lnbiBzcGVjaWZpY2FsbHkgZm9yIHllYXN0IGV4cHJlc3Npb24uIE5pbHMgYWxzbyBzdXBwbGllZCB1cyB3aXRoIGEgdGFyZ2V0IHZlY3RvciBvcHRpbWl6ZWQgZm9yIHllYXN0IGV4cHJlc3Npb24sIHdoaWNoIHdlIHN1Y2Nlc3NmdWxseSB1c2VkIHRvIGludGVncmF0ZSBhIENhc1ggbmlja2FzZSBjYW5kaWRhdGUuIFRoaXMgcHJvdmVkIGVzcGVjaWFsbHkgdmFsdWFibGUgYXMgb3VyIFNwdSBjYW5kaWRhdGVzIHdlcmUgZGlmZmljdWx0IHRvIGludGVncmF0ZSBkdWUgdG8gdGhlIHVzZSBvZiBvdmVyaGFuZ3MuIFdlIGFyZSBzdGlsbCB3b3JraW5nIG9uIHRoaXMgY2hhbGxlbmdlLCBzdGF5aW5nIGluIGNsb3NlIGNvbnRhY3Qgd2l0aCB0aGUgZXhwZXJ0cyB0byByZWZpbmUgb3VyIHByb2Nlc3MuIDwvcD5cbiAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHguPC9iPiBDYXB0aW9uIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgPC9maWd1cmU+XG4gICAgICAgIDxwPjxzdHJvbmc+WWVhc3Qgc3RyYWluIHByb3Zpc2lvbjo8L3N0cm9uZz4gTmlscyBwcm92aWRlZCBhIHllYXN0IHN0cmFpbiBjb21wYXRpYmxlIHdpdGggRHIuIFNhaXRvJ3MgcmVjb21tZW5kYXRpb25zLCB3aGljaCBkb2VzIG5vdCBleHByZXNzIHByb3RlYXNlcyB0aGF0IHdvdWxkIGRlZ3JhZGUgb3VyIG5pY2thc2UgY2FuZGlkYXRlcywgbWFpbnRhaW5pbmcgdGhlIGludGVncml0eSBvZiBvdXIgZW5naW5lZXJlZCBlbnp5bWVzLjwvcD5cblxuPHA+PHN0cm9uZz5NZXRob2RvbG9naWNhbCBndWlkYW5jZTo8L3N0cm9uZz4gSGFrYW4gcHJvdmlkZWQgZXhwZXJ0aXNlIGluIHllYXN0IGN1bHRpdmF0aW9uLCBndWlkaW5nIHVzIHRocm91Z2ggdGhlIGNvbXBsZXhpdGllcyBvZiB3b3JraW5nIHdpdGggeWVhc3QuPC9wPlxuXG48cD48c3Ryb25nPkVuZ2luZWVyaW5nIGFkYXB0YXRpb24gZm9yIHllYXN0Ojwvc3Ryb25nPiBXaXRoIHRoZWlyIHN1cHBvcnQsIHdlIGFkYXB0ZWQgb3VyIGVuZ2luZWVyaW5nIGRlc2lnbiBzcGVjaWZpY2FsbHkgZm9yIHllYXN0IGV4cHJlc3Npb24uPC9wPlxuXG48cD48c3Ryb25nPlRhcmdldCB2ZWN0b3IgZm9yIHllYXN0Ojwvc3Ryb25nPiBOaWxzIHN1cHBsaWVkIGFuIG9wdGltaXplZCB0YXJnZXQgdmVjdG9yIGZvciB5ZWFzdCBleHByZXNzaW9uLCB3aGljaCBhbGxvd2VkIHN1Y2Nlc3NmdWwgaW50ZWdyYXRpb24gb2YgYSBDYXNYIG5pY2thc2UgY2FuZGlkYXRlLjwvcD5cblxuPHA+PHN0cm9uZz5DaGFsbGVuZ2Ugd2l0aCBTcHUgY2FuZGlkYXRlczo8L3N0cm9uZz4gSW50ZWdyYXRpb24gb2YgU3B1IGNhbmRpZGF0ZXMgcHJvdmVkIGRpZmZpY3VsdCBkdWUgdG8gb3ZlcmhhbmdzOyB3ZSBhcmUgc3RpbGwgd29ya2luZyBvbiB0aGlzIGNoYWxsZW5nZSBhbmQgYXJlIHN0YXlpbmcgaW4gY2xvc2UgY29udGFjdCB3aXRoIHRoZSBleHBlcnRzIHRvIHJlZmluZSB0aGUgcHJvY2Vzcy48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VTYWl0bygpe1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIE1ha290byBTYWl0byBcdTIwMTMgTGVhZGluZyBSZXNlYXJjaCBFeHBlcnQgZm9yIEZBTlpPUlwiIGlkPVwic2FpdG9hbmFseXNlQ1wiPlxuICAgICAgICAgPHA+RWFybHkgaW4gb3VyIHByb2plY3QgZGVzaWduLCB3ZSBkZWNpZGVkIHRvIG9wdGltaXplIHRoZSBQcmltZSBFZGl0aW5nIHRlY2hub2xvZ3kuIEZyb20gdGhlIGxpdGVyYXR1cmUsIHdlIGlkZW50aWZpZWQgRkFOWk9SLCBhIHNtYWxsLCBldWthcnlvdGljIFJOQS1iaW5kaW5nIEROQSBlbmRvbnVjbGVhc2UsIGFzIGEgcG90ZW50aWFsIGFsdGVybmF0aXZlIHRvIENhczkgZm9yIG91ciBhcHByb2FjaC4gVGhyb3VnaCBjb2xsYWJvcmF0aW9uIHdpdGggdGhlIGVuenltZVx1MjAxOXMgZGlzY292ZXJlciwgRHIuIE1ha290byBTYWl0bywgd2Ugd2VyZSBhYmxlIHRvIHJlZmluZSBvdXIgZW5naW5lZXJpbmcgc3RyYXRlZ3kuIERyLiBTYWl0byBlbmNvdXJhZ2VkIHVzIHRvIG1vZGlmeSB0aGUgVE5CIGRvbWFpbiBvZiBGQU5aT1IgdXNpbmcgc2l0ZS1kaXJlY3RlZCBtdXRhZ2VuZXNpcywgZW5zdXJpbmcgdGhlIG5vbi1jb2Rpbmcgc3RyYW5kIGlzIG5vdCBwb3NpdGlvbmVkIGluIHRoZSBhY3RpdmUgc2l0ZSBvZiB0aGUgUnV2QyBkb21haW4uIFRoaXMgYXBwcm9hY2ggbWlycm9ycyB0aGUgbmlja2FzZSBzdHJhdGVneSB1c2VkIGluIENhczEyIHZhcmlhbnRzLiA8L3A+XG4gICAgICAgICA8cD5Eci4gU2FpdG8gYWxzbyBtb3RpdmF0ZWQgdXMgdG8gZXhwcmVzcyBvdXIgcG90ZW50aWFsIG5pY2thc2UgdmFyaWFudHMgaW4gPGk+U2FjY2hhcm9teWNlcyBjZXJldmlzaWFlIDwvaT4gdG8gYmV0dGVyIGNoYXJhY3Rlcml6ZSB0aGVpciBmdW5jdGlvbmFsaXR5LiBIZSBwbGF5ZWQgYSBrZXkgcm9sZSBpbiBzdXBwb3J0aW5nIG91ciBkZWNpc2lvbiB0byBleHBsb3JlIGFkZGl0aW9uYWwgQ2FzIGVuZG9udWNsZWFzZSBjYW5kaWRhdGVzLCBzdWNoIGFzIENhc1gsIHdoaWNoIGlzIG1vcmUgY2xvc2VseSByZWxhdGVkIHRvIENhczkgYW5kIENhczEyLCBwcm92aWRpbmcgYWRkaXRpb25hbCBmbGV4aWJpbGl0eSBmb3Igb3VyIGdlbmUtZWRpdGluZyBnb2Fscy4gPC9wPlxuICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHguPC9iPiBDYXB0aW9uIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgPC9maWd1cmU+XG4gICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB4LjwvYj4gQ2FwdGlvbiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgIDwvZmlndXJlPlxuICAgICAgICA8cD48c3Ryb25nPkZBTlpPUiBhcyBDYXM5IGFsdGVybmF0aXZlOjwvc3Ryb25nPiBJZGVudGlmaWVkIEZBTlpPUiwgYSBzbWFsbCBldWthcnlvdGljIFJOQS1iaW5kaW5nIEROQSBlbmRvbnVjbGVhc2UsIGFzIGEgcHJvbWlzaW5nIGFsdGVybmF0aXZlIHRvIENhczkgZm9yIFByaW1lIEVkaXRpbmcuPC9wPlxuXG48cD48c3Ryb25nPkNvbGxhYm9yYXRpb24gd2l0aCBEci4gU2FpdG86PC9zdHJvbmc+IFdvcmtlZCBjbG9zZWx5IHdpdGggdGhlIGVuenltZVx1MjAxOXMgZGlzY292ZXJlciwgRHIuIE1ha290byBTYWl0bywgdG8gcmVmaW5lIG91ciBlbmdpbmVlcmluZyBzdHJhdGVneSBmb3IgRkFOWk9SLjwvcD5cblxuPHA+PHN0cm9uZz5UTkIgZG9tYWluIG1vZGlmaWNhdGlvbjo8L3N0cm9uZz4gRHIuIFNhaXRvIHN1Z2dlc3RlZCBtb2RpZnlpbmcgdGhlIFROQiBkb21haW4gdmlhIHNpdGUtZGlyZWN0ZWQgbXV0YWdlbmVzaXMgdG8gcHJldmVudCB0aGUgbm9uLWNvZGluZyBzdHJhbmQgZnJvbSBlbnRlcmluZyB0aGUgUnV2QyBhY3RpdmUgc2l0ZSwgZm9sbG93aW5nIHRoZSBuaWNrYXNlIHN0cmF0ZWd5IHVzZWQgaW4gQ2FzMTIgdmFyaWFudHMuPC9wPlxuXG48cD48c3Ryb25nPlllYXN0IGV4cHJlc3Npb24gZm9yIGZ1bmN0aW9uYWxpdHk6PC9zdHJvbmc+IFJlY29tbWVuZGVkIGV4cHJlc3Npbmcgbmlja2FzZSB2YXJpYW50cyBpbiBTYWNjaGFyb215Y2VzIGNlcmV2aXNpYWUgdG8gYXNzZXNzIHRoZWlyIGZ1bmN0aW9uYWxpdHkgbW9yZSBlZmZlY3RpdmVseS48L3A+XG5cbjxwPjxzdHJvbmc+RXhwbG9yYXRpb24gb2Ygb3RoZXIgZW5kb251Y2xlYXNlczo8L3N0cm9uZz4gU3VwcG9ydGVkIHRoZSBleHBsb3JhdGlvbiBvZiBhZGRpdGlvbmFsIGVuZG9udWNsZWFzZXMgbGlrZSBDYXNYLCBvZmZlcmluZyBncmVhdGVyIGZsZXhpYmlsaXR5IGFuZCBhZGFwdGFiaWxpdHkgaW4gb3VyIGdlbmUtZWRpdGluZyBhcHByb2FjaC48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VLcmlzdGlhbigpe1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIEtyaXN0aWFuIE1cdTAwRkNsbGVyIFx1MjAxMyBFeHBlcnQgZm9yIFN5bnRoZXRpYyBCaW9sb2d5LCBHZW5ldGljIGRlc2lnbiwgY2xvbmluZyBzdHJhdGVnaWVzLCBtb2xlY3VsYXIgYW5kIGNlbGx1bGFyIGJpb3RlY2hub2xvZ3kgXCIgaWQ9XCJrcmlzdGlhbmFuYWx5c2VDXCI+XG4gICAgICAgICA8cD5JbiBjbG9zZSBjb2xsYWJvcmF0aW9uIHdpdGggUHJvZi4gTVx1MDBGQ2xsZXJcdTIwMTlzIGxhYiwgd2UgbGVhcm5lZCBib3RoIGJhc2ljIGFuZCBhZHZhbmNlZCBjbG9uaW5nIHN0cmF0ZWdpZXMgd2l0aGluIHN5bnRoZXRpYyBiaW9sb2d5LiBFYXJseSBvbiwgUHJvZi4gTVx1MDBGQ2xsZXIgc3VnZ2VzdGVkIG1ha2luZyBvdXIgUHJpbWUgRWRpdGluZyBjb21wbGV4IHNtYWxsZXIgYW5kIG1vcmUgc3RhYmxlLCBlbmhhbmNpbmcgaXRzIHN1aXRhYmlsaXR5IGZvciB2YXJpb3VzIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucy4gSGlzIGNvbnRpbnVvdXMgc3VwcG9ydCB3YXMgY3J1Y2lhbCBpbiBndWlkaW5nIHVzIHRocm91Z2ggdGhlIGNsb25pbmcgb2YgYWxsIGNvbnN0cnVjdHMsIGFuZCBhcyBhbiBleHBlcnQgaW4gZ2VuZSB0aGVyYXB5LCBoZSBwcm92aWRlZCBvbmdvaW5nIGZlZWRiYWNrIG9uIHRoZSBzYWZldHkgYXNwZWN0cyBvZiBvdXIgcmVzZWFyY2guIDwvcD5cbiAgICAgICAgIDxwPldpdGggYWNjZXNzIHRvIGEgQlNMMiBsYWJvcmF0b3J5IHByb3ZpZGVkIGJ5IE1cdTAwRkNsbGVyXHUyMDE5cyB0ZWFtLCB3ZSB3ZXJlIGFibGUgdG8gc3VjY2Vzc2Z1bGx5IGN1bHRpdmF0ZSBwcmltYXJ5IGNlbGwgY3VsdHVyZXMuIFRvIGVuc3VyZSBzYWZlIHdvcmsgY29uZGl0aW9ucywgd2UgdW5kZXJ3ZW50IHRyYWluaW5nIGZvciBiaW9zYWZldHkgcHJvY2VkdXJlcyBhbmQgcm91dGluZWx5IHRlc3RlZCBmb3IgSFBWLCBISVYsIEhCViwgYW5kIE15Y29wbGFzbWEgY29udGFtaW5hdGlvbi4gVGhhbmtzIHRvIE1cdTAwRkNsbGVyXHUyMDE5cyBndWlkYW5jZSwgd2UgY29udHJpYnV0ZWQgYSBjb21wb3NpdGUgcGFydCB0byB0aGUgaUdFTSByZWdpc3RyeS4gT3VyIFByZUN5c2UgY2Fzc2V0dGUgYWxsb3dzIGZvciBtb2R1bGFyIFByaW1lIEVkaXRpbmcgc3lzdGVtcyB0aGF0IGFyZSBwYXJ0aWN1bGFybHkgZWZmaWNpZW50LCBzdGFibGUsIGFuZCBzYWZlIGJhc2VkIG9uIG91ciByZXNlYXJjaC4gPC9wPlxuXG4gICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB4LjwvYj4gQ2FwdGlvbiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgIDwvZmlndXJlPlxuICAgICAgICA8ZGl2PkthcnVzc2VsbDwvZGl2PlxuICAgICAgICA8cD48c3Ryb25nPkNsb25pbmcgc3RyYXRlZ2llczo8L3N0cm9uZz4gUHJvdmlkZWQgYm90aCBiYXNpYyBhbmQgYWR2YW5jZWQgY2xvbmluZyB0cmFpbmluZywgY3J1Y2lhbCBmb3IgZGV2ZWxvcGluZyBvdXIgUHJpbWUgRWRpdGluZyBjb21wbGV4IHdpdGhpbiBzeW50aGV0aWMgYmlvbG9neS48L3A+XG5cbjxwPjxzdHJvbmc+T3B0aW1pemF0aW9uIG9mIFByaW1lIEVkaXRpbmcgY29tcGxleDo8L3N0cm9uZz4gU3VnZ2VzdGVkIG1ha2luZyB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IHNtYWxsZXIgYW5kIG1vcmUgc3RhYmxlLCBlbmhhbmNpbmcgaXRzIHN1aXRhYmlsaXR5IGZvciB0aGVyYXBldXRpYyBhcHBsaWNhdGlvbnMuPC9wPlxuXG48cD48c3Ryb25nPk9uZ29pbmcgZmVlZGJhY2sgb24gc2FmZXR5Ojwvc3Ryb25nPiBBcyBhIGdlbmUgdGhlcmFweSBleHBlcnQsIFByb2YuIE1cdTAwRkNsbGVyIGdhdmUgY29udGludW91cyBmZWVkYmFjayBvbiB0aGUgc2FmZXR5IGFzcGVjdHMgb2Ygb3VyIHJlc2VhcmNoLjwvcD5cblxuPHA+PHN0cm9uZz5BY2Nlc3MgdG8gQlNMMiBsYWI6PC9zdHJvbmc+IEVuYWJsZWQgdXMgdG8gc3VjY2Vzc2Z1bGx5IGN1bHRpdmF0ZSBwcmltYXJ5IGNlbGwgY3VsdHVyZXMgaW4gYSBCU0wyIGxhYiwgd2l0aCB0cmFpbmluZyBpbiBiaW9zYWZldHkgcHJvY2VkdXJlcy48L3A+XG5cbjxwPjxzdHJvbmc+Q29udGFtaW5hdGlvbiB0ZXN0aW5nOjwvc3Ryb25nPiBSZWd1bGFybHkgdGVzdGVkIGZvciBIUFYsIEhJViwgSEJWLCBhbmQgTXljb3BsYXNtYSBjb250YW1pbmF0aW9uIHRvIGVuc3VyZSBzYWZlIHdvcmtpbmcgY29uZGl0aW9ucy48L3A+XG5cbjxwPjxzdHJvbmc+Q29udHJpYnV0aW9uIHRvIGlHRU0gcmVnaXN0cnk6PC9zdHJvbmc+IFdpdGggUHJvZi4gTVx1MDBGQ2xsZXIncyBndWlkYW5jZSwgd2UgZGV2ZWxvcGVkIGFuZCBjb250cmlidXRlZCB0aGUgUHJlQ3lzZSBjYXNzZXR0ZSwgYSBtb2R1bGFyIGFuZCBlZmZpY2llbnQgUHJpbWUgRWRpdGluZyBzeXN0ZW0sIGVuaGFuY2luZyBzdGFiaWxpdHkgYW5kIHNhZmV0eSBiYXNlZCBvbiBvdXIgZmluZGluZ3MuPC9wPlxuXG4gICAgIDwvQ29sbGFwc2libGU+XG4gICAgKSBcbiB9XG5mdW5jdGlvbiBBbmFseXNlU3JpcmFtKCl7XG4gICAgcmV0dXJuKFxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJEci4gU3JpcmFtIFZhaWR5YW5hdGhhbiBcdTIwMTMgRXhwZXJ0IG9uIFBlZGlhdHJpYyBtZWRpY2luZSBhbmQgQ0YgaW4gQXNpYVwiIGlkPVwic3JpcmFtYW5hbHlzZUNcIj5cbiAgICAgICAgIDxwPm4gb3VyIGRpc2N1c3Npb25zIHdpdGggRHIuIFNyaXJhbSBWYWlkeWFuYXRoYW4sIHdlIGRlZXBlbmVkIG91ciB1bmRlcnN0YW5kaW5nIG9mIHRoZSBnZW5ldGljIGRpdmVyc2l0eSBvZiBDRiBtdXRhdGlvbnMsIGVzcGVjaWFsbHkgaW4gQXNpYW4gcG9wdWxhdGlvbnMuIEhlIGhpZ2hsaWdodGVkIHRoYXQgd2hpbGUgdGhlIEY1MDhkZWwgbXV0YXRpb24gaXMgY29tbW9uIHdvcmxkd2lkZSwgbWFueSByYXJlIENGVFIgbXV0YXRpb25zIGNvbXBsaWNhdGUgZGlhZ25vc2lzIGFuZCB0cmVhdG1lbnQgaW4gc3BlY2lmaWMgcmVnaW9ucy48L3A+XG4gICAgICAgIDxwPlRoaXMgaW5zaWdodCBwdXNoZWQgdXMgdG8gYWRhcHQgb3VyIGdlbmUgdGhlcmFweSBhcHByb2FjaCB0byBiZSBtb3JlIGluY2x1c2l2ZS4gV2UgYWRqdXN0ZWQgb3VyIHN0cmF0ZWd5IHRvIGVuc3VyZSBvdXIgdGhlcmFweSBjb3VsZCB0YXJnZXQgYSBicm9hZGVyIHJhbmdlIG9mIENGIG11dGF0aW9ucywgbWFraW5nIGl0IG1vcmUgZ2xvYmFsbHkgYXBwbGljYWJsZS4gRHIuIFZhaWR5YW5hdGhhblx1MjAxOXMgaW5wdXQgc2hhcGVkIG91ciBlZmZvcnRzIHRvIGNyZWF0ZSBhIHRyZWF0bWVudCB0aGF0IGFkZHJlc3NlcyBDRlx1MjAxOXMgZGl2ZXJzZSBnZW5ldGljIGxhbmRzY2FwZS4gPC9wPlxuICAgICAgICA8cD48c3Ryb25nPkNvbnRhbWluYXRpb24gY2hhbGxlbmdlOjwvc3Ryb25nPiBIZWxwZWQgdXMgYWRkcmVzcyBhIG1ham9yIGlzc3VlIHdpdGggZnVuZ2FsIGNvbnRhbWluYXRpb24gaW4gb3VyIENGIGNlbGwgY3VsdHVyZXMsIHdoaWNoIHdlcmUgdW5zdGFibGUgYW5kIHByb25lIHRvIGluZmVjdGlvbi48L3A+XG5cbjxwPjxzdHJvbmc+QW50aWJpb3RpYyBzb2x1dGlvbjo8L3N0cm9uZz4gUmVjb21tZW5kZWQgYSBzcGVjaWZpYyBhbnRpYmlvdGljIGNvbXBvc2l0aW9uIGVmZmVjdGl2ZSBhZ2FpbnN0IGZ1bmdhbCBpbmZlY3Rpb25zLjwvcD5cblxuPHA+PHN0cm9uZz5TdWNjZXNzZnVsIGltcGxlbWVudGF0aW9uOjwvc3Ryb25nPiBBcHBsaWVkIHRoZSBhbnRpYmlvdGljIG1peHR1cmUsIHdoaWNoIHJlc29sdmVkIHRoZSBjb250YW1pbmF0aW9uIHByb2JsZW0sIGFsbG93aW5nIHVzIHRvIG1haW50YWluIHN0YWJsZSBDRiBjZWxsIGxpbmVzLjwvcD5cblxuPHA+PHN0cm9uZz5Qcm9qZWN0IGFkdmFuY2VtZW50Ojwvc3Ryb25nPiBUaGlzIGJyZWFrdGhyb3VnaCBlbmFibGVkIHVzIHRvIHByb2NlZWQgd2l0aCB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGVmZmVjdGl2ZWx5LCBhZHZhbmNpbmcgb3VyIHByb2plY3QgdG8gdGhlIGZpbmFsIHN0YWdlcyBvZiBpbiB2aXRybyB0ZXN0aW5nLjwvcD5cblxuPHA+PHN0cm9uZz5OZXh0IHN0ZXBzOjwvc3Ryb25nPiBUaGFua3MgdG8gRHIuIEJoYXJ0aVx1MjAxOXMgaW5zaWdodHMsIHdlIGFyZSBub3cgcG9zaXRpb25lZCB0byBjb25zaWRlciBwb3RlbnRpYWwgYW5pbWFsIHN0dWRpZXMgYXMgdGhlIG5leHQgcGhhc2Ugb2Ygb3VyIHJlc2VhcmNoLjwvcD5cblxuICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICkgXG4gfVxuZnVuY3Rpb24gQW5hbHlzZUJoYXJ0aSgpe1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIE5pa2hpbCBCaGFydGkgXHUyMDEzIEV4cGVydCBpbiBQcmltYXJ5IGN1bHR1cmUgXCIgaWQ9XCJiaGFydGlhbmFseXNlQ1wiPlxuICAgICAgICAgPHA+RHIuIE5pa2hpbCBCaGFydGkncyBleHBlcnRpc2UgaGVscGVkIHVzIG92ZXJjb21lIGEgbWFqb3IgY2hhbGxlbmdlIHdpdGggb3VyIENGIGNlbGwgY3VsdHVyZXMsIHdoaWNoIHdlcmUgY29uc2lzdGVudGx5IGJlY29taW5nIGNvbnRhbWluYXRlZCB3aXRoIGZ1bmdpIGR1ZSB0byB0aGVpciBpbnN0YWJpbGl0eS4gSGUgcmVjb21tZW5kZWQgYSBzcGVjaWZpYyBhbnRpYmlvdGljIGNvbXBvc2l0aW9uIGVmZmVjdGl2ZSBhZ2FpbnN0IGZ1bmdhbCBpbmZlY3Rpb25zLiA8L3A+XG4gICAgICAgIDxwPldlIGltbWVkaWF0ZWx5IGFwcGxpZWQgdGhpcyBhbnRpYmlvdGljIG1peHR1cmUgdG8gb3VyIGNlbGwgY3VsdHVyZXMsIHdoaWNoIHJlc29sdmVkIHRoZSBjb250YW1pbmF0aW9uIGlzc3VlIGFuZCBhbGxvd2VkIHVzIHRvIG1haW50YWluIHN0YWJsZSBDRiBjZWxsIGxpbmVzLiBUaGlzIGJyZWFrdGhyb3VnaCBlbmFibGVkIHVzIHRvIHByb2NlZWQgd2l0aCB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGVmZmVjdGl2ZWx5LiBUaGFua3MgdG8gRHIuIEJoYXJ0aSdzIGluc2lnaHRzLCB3ZSBhZHZhbmNlZCBvdXIgcHJvamVjdCB0byBhIHN0YWdlIHdoZXJlIHdlIHJlYWNoZWQgdGhlIGxpbWl0IG9mIGluIHZpdHJvIHRlc3RpbmcsIGFuZCB0aGUgbmV4dCBzdGVwIHdvdWxkIGJlIHBvdGVudGlhbCBhbmltYWwgc3R1ZGllcy4gPC9wPlxuICAgICAgICBcbiAgICAgICAgPHA+PHN0cm9uZz5Db250YW1pbmF0aW9uIGNoYWxsZW5nZTo8L3N0cm9uZz4gSGVscGVkIHVzIGFkZHJlc3MgYSBtYWpvciBpc3N1ZSB3aXRoIGZ1bmdhbCBjb250YW1pbmF0aW9uIGluIG91ciBDRiBjZWxsIGN1bHR1cmVzLCB3aGljaCB3ZXJlIHVuc3RhYmxlIGFuZCBwcm9uZSB0byBpbmZlY3Rpb24uPC9wPlxuXG48cD48c3Ryb25nPkFudGliaW90aWMgc29sdXRpb246PC9zdHJvbmc+IFJlY29tbWVuZGVkIGEgc3BlY2lmaWMgYW50aWJpb3RpYyBjb21wb3NpdGlvbiBlZmZlY3RpdmUgYWdhaW5zdCBmdW5nYWwgaW5mZWN0aW9ucy48L3A+XG5cbjxwPjxzdHJvbmc+U3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbjo8L3N0cm9uZz4gQXBwbGllZCB0aGUgYW50aWJpb3RpYyBtaXh0dXJlLCB3aGljaCByZXNvbHZlZCB0aGUgY29udGFtaW5hdGlvbiBwcm9ibGVtLCBhbGxvd2luZyB1cyB0byBtYWludGFpbiBzdGFibGUgQ0YgY2VsbCBsaW5lcy48L3A+XG5cbjxwPjxzdHJvbmc+UHJvamVjdCBhZHZhbmNlbWVudDo8L3N0cm9uZz4gVGhpcyBicmVha3Rocm91Z2ggZW5hYmxlZCB1cyB0byBwcm9jZWVkIHdpdGggdGVzdGluZyBvdXIgcHJpbWUgZWRpdGluZyBhcHByb2FjaCBlZmZlY3RpdmVseSwgYWR2YW5jaW5nIG91ciBwcm9qZWN0IHRvIHRoZSBmaW5hbCBzdGFnZXMgb2YgaW4gdml0cm8gdGVzdGluZy48L3A+XG5cbjxwPjxzdHJvbmc+TmV4dCBzdGVwczo8L3N0cm9uZz4gVGhhbmtzIHRvIERyLiBCaGFydGlcdTIwMTlzIGluc2lnaHRzLCB3ZSBhcmUgbm93IHBvc2l0aW9uZWQgdG8gY29uc2lkZXIgcG90ZW50aWFsIGFuaW1hbCBzdHVkaWVzIGFzIHRoZSBuZXh0IHBoYXNlIG9mIG91ciByZXNlYXJjaC48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VJZ25hdG92YSgpe1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIElnbmF0b3ZhIFx1MjAxMyBDRiBFeHBlcnQgJiBSZXNlYXJjaGVyXCIgaWQ9XCJpZ25hdG92YWFuYWx5c2VDXCI+XG4gICAgICAgICA8cD5UaHJvdWdoIG91ciBjb2xsYWJvcmF0aW9uIHdpdGggPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvaGFtYnVyZy9cIiB0aXRsZT1cImlHRU0gSGFtYnVyZ1wiID4gaUdFTSBIYW1idXJnPC9hPiwgd2Ugd2VyZSBpbnRyb2R1Y2VkIHRvIFByb2YuIElnbmF0b3ZhLCBhIGxlYWRpbmcgZXhwZXJ0IGluIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHJlc2VhcmNoLiBJbml0aWFsbHksIHdlIGNvbnN1bHRlZCBoZXIgdG8gZ2FpbiBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIG9mIENGLiBMYXRlciwgd2hlbiB0aGUgSEVLIGNlbGxzIGZyb20gTGV1dmVuIHByb3ZlZCB1bnN1aXRhYmxlIGZvciBvdXIgdGVzdHMsIHdlIHJlYWNoZWQgb3V0IGFnYWluIHRvIGV4cGxvcmUgYWx0ZXJuYXRpdmUgY2VsbCBtb2RlbHMuIDwvcD5cbiAgICAgICAgIDxwPlByb2YuIElnbmF0b3ZhIHByb3ZpZGVkIGFjY2VzcyB0byB0aGUgQ0ZCRTQxby0gY2VsbCBsaW5lLCBpbW1vcnRhbGl6ZWQgQ0YgY2VsbHMgZGVyaXZlZCBmcm9tIGEgQ0YgcGF0aWVudCwgd2hpY2ggd2Ugb2J0YWluZWQgd2l0aCBwZXJtaXNzaW9uIGZyb20gUHJvZi4gS2FybCBLdW56ZWxtYW5uIGF0IHRoZSBVbml2ZXJzaXR5IG9mIFJlZ2Vuc2J1cmcuIFRoaXMgY2VsbCBsaW5lIG9mZmVyZWQgdXMgYSBuZXcsIHJlbGlhYmxlIHRlc3Rpbmcgc3lzdGVtLCBhbmQgd2Ugc3VjY2Vzc2Z1bGx5IGN1bHRpdmF0ZWQgdGhlIGNlbGxzIGluIG91ciBsYWIsIGFsdGhvdWdoIHRoZXkgcmVxdWlyZWQgc2lnbmlmaWNhbnQgdGltZSB0byBhY2NsaW1hdGUgYW5kIGdyb3cuIDwvcD5cbiAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3pveWEtMS53ZWJwXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFg8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi8vVE9ETyAoSVNJKVwiIGFsdD1cIlwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFk8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VXaXNjaG1leWVyKCl7XG4gICAgcmV0dXJuKFxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJQcm9mIERyLiBFYmVyaGFyZCBXaXNjaG1leWVyIC0gQWNhZGVtaWMgRXhwZXJ0IG9uIFBhdGNoLUNsYW1wIFRlY2huaXF1ZXNcIiBpZD1cIndpc2NobWV5ZXJhbmFseXNlQ1wiPlxuICAgICAgICAgPHA+UHJvZi4gRHIuIEVyaGFyZCBXaXNjaG1leWVyIHByb3ZpZGVkIGNyaXRpY2FsIGd1aWRhbmNlIG9uIHRoZSBwYXRjaC1jbGFtcCB0ZWNobmlxdWUgZm9yIG1lYXN1cmluZyBDRlRSIGZ1bmN0aW9uYWxpdHkuIEhpcyBleHBlcnRpc2UsIGFsb25nc2lkZSB0aGUgaGFuZHMtb24gc3VwcG9ydCBvZiBEci4gT2xpdmVyIERyXHUwMEU0Z2VyIGZyb20gaGlzIGxhYiwgaGVscGVkIHVzIG9wdGltaXplIHRoZSBwYXRjaC1jbGFtcCBleHBlcmltZW50cyB1c2luZyBIRUsgY2VsbHMgcHJvdmlkZWQgYnkgVW5pIExldXZlbi4gVG9nZXRoZXIsIHdlIGNvbmR1Y3RlZCBlbGVjdHJvcGh5c2lvbG9naWNhbCBtZWFzdXJlbWVudHMgdG8gY2hhcmFjdGVyaXplIHRoZSBmdW5jdGlvbmFsaXR5IG9mIENGVFIgbXV0YXRpb25zLCBzcGVjaWZpY2FsbHkgY29tcGFyaW5nIHRoZSBkZWx0YSA1MDggQ0ZUUiBtdXRhbnQgd2l0aCBvdmVyZXhwcmVzc2VkIGhlYWx0aHkgQ0ZUUiBjZWxscy4gPC9wPlxuICAgICAgICAgPHA+VGhlIGV4cGVyaW1lbnRzIHNob3dlZCBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBiZXR3ZWVuIENGVFItZGVmaWNpZW50IGNlbGxzIGFuZCBoZWFsdGh5IGNvbnRyb2xzLCBidXQgd2UgYmVnYW4gcXVlc3Rpb25pbmcgdGhlIHN1aXRhYmlsaXR5IG9mIHRoZSBkZWx0YSA1MDggb3ZlcmV4cHJlc3Npb24gY2VsbHMgYXMgYSBmdW5jdGlvbmFsIHRlc3Qgc3lzdGVtLiBBZnRlciBhZGp1c3RpbmcgdGhlIGN1bHR1cmUgY29uZGl0aW9ucyBpbiBjb25zdWx0YXRpb24gd2l0aCBMZXV2ZW4sIHdlIHJlcGVhdGVkIHRoZSBtZWFzdXJlbWVudHMgYnV0IHN0aWxsIGZvdW5kIG5vIG1lYW5pbmdmdWwgZGlmZmVyZW5jZXMuIDwvcD5cbiAgICAgICAgIDxwPlVsdGltYXRlbHksIHRoZSBmZWVkYmFjayBjeWNsZSB3aXRoIGJvdGggTGV1dmVuIGFuZCBXaXNjaG1leWVyJ3MgbGFiIGNvbmZpcm1lZCB0aGF0IHBhdGNoLWNsYW1wIHdhcyBpbnN1ZmZpY2llbnQgZm9yIG91ciBwdXJwb3NlcywgbGVhZGluZyB1cyB0byBjb25zaWRlciBVc3NpbmcgY2hhbWJlciBtZWFzdXJlbWVudHMgYXMgYSBtb3JlIHN1aXRhYmxlIG1ldGhvZCBmb3IgYXNzZXNzaW5nIENGVFIgZnVuY3Rpb24uIDwvcD5cbiAgICAgICAgIFxuICAgICAgICA8cD48c3Ryb25nPlBhdGNoLWNsYW1wIHRlY2huaXF1ZSBndWlkYW5jZTo8L3N0cm9uZz4gUHJvdmlkZWQgY3JpdGljYWwgZ3VpZGFuY2Ugb24gdXNpbmcgdGhlIHBhdGNoLWNsYW1wIHRlY2huaXF1ZSB0byBtZWFzdXJlIENGVFIgZnVuY3Rpb25hbGl0eSwgb3B0aW1pemluZyBvdXIgZXhwZXJpbWVudHMuPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9wYXRjaC1jbGFtcC53ZWJwIFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBYPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIvL1RPRE8gKElTSSlcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBZPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG48cD48c3Ryb25nPlN1cHBvcnQgZnJvbSBEci4gT2xpdmVyIERyXHUwMEU0Z2VyOjwvc3Ryb25nPiBIYW5kcy1vbiBzdXBwb3J0IGZyb20gRHIuIERyXHUwMEU0Z2VyIGhlbHBlZCB1cyBwZXJmb3JtIHBhdGNoLWNsYW1wIGV4cGVyaW1lbnRzIHVzaW5nIEhFSyBjZWxscyBwcm92aWRlZCBieSBVbmkgTGV1dmVuLjwvcD5cblxuPHA+PHN0cm9uZz5DRlRSIGZ1bmN0aW9uYWxpdHkgYXNzZXNzbWVudDo8L3N0cm9uZz4gQ29uZHVjdGVkIGVsZWN0cm9waHlzaW9sb2dpY2FsIG1lYXN1cmVtZW50cyB0byBjb21wYXJlIGRlbHRhIDUwOCBDRlRSIG11dGFudHMgd2l0aCBvdmVyZXhwcmVzc2VkIGhlYWx0aHkgQ0ZUUiBjZWxscywgcmV2ZWFsaW5nIHNpZ25pZmljYW50IGRpZmZlcmVuY2VzIGJldHdlZW4gQ0ZUUi1kZWZpY2llbnQgY2VsbHMgYW5kIGhlYWx0aHkgY29udHJvbHMuPC9wPlxuXG48cD48c3Ryb25nPlN1aXRhYmlsaXR5IGNvbmNlcm5zOjwvc3Ryb25nPiBEZXNwaXRlIGFkanVzdG1lbnRzIHRvIGN1bHR1cmUgY29uZGl0aW9ucywgcmVwZWF0ZWQgbWVhc3VyZW1lbnRzIHJhaXNlZCBkb3VidHMgYWJvdXQgdGhlIGRlbHRhIDUwOCBvdmVyZXhwcmVzc2lvbiBjZWxscyBhcyBhIGZ1bmN0aW9uYWwgdGVzdCBzeXN0ZW0uPC9wPlxuXG48cD48c3Ryb25nPkZlZWRiYWNrIGN5Y2xlIHdpdGggTGV1dmVuIGFuZCBXaXNjaG1leWVyOjwvc3Ryb25nPiBDb25maXJtZWQgdGhhdCBwYXRjaC1jbGFtcCB3YXMgbm90IHN1aXRhYmxlIGZvciBvdXIgbmVlZHMsIHByb21wdGluZyB1cyB0byBleHBsb3JlIFVzc2luZyBjaGFtYmVyIG1lYXN1cmVtZW50cyBhcyBhIG1vcmUgYXBwcm9wcmlhdGUgbWV0aG9kIGZvciBhc3Nlc3NpbmcgQ0ZUUiBmdW5jdGlvbi48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VNYXR0aWpzKCl7XG4gICAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiTWF0dGppcyBCdWxjYWVuIFx1MjAxMyBVbml2ZXJzaXR5IG9mIExldXZlbiwgQ0YgYW5kIFByaW1lIEVkaXRpbmcgRXhwZXJ0XCIgaWQ9XCJtYXR0aWpzYW5hbHlzZUNcIj5cbiAgICAgICAgPHA+TWF0dGlqcyBCdWxjYWVuLCBiZWluZyBhIHJlc2VhcmNoZXIgd29ya2luZyBvbiBhIHRvcGljIHZlcnkgY2xvc2UgdG8gb3VycywgcHJvdmlkZWQgaW52YWx1YWJsZSBndWlkYW5jZSBpbiB0aGUgZWFybHkgc3RhZ2VzIG9mIG91ciBwcm9qZWN0LiBIZSBnYXZlIHVzIGFuIGluc2lnaHQgaW50byB0aGUgY3VycmVudCBhZHZhbmNlcyBpbiB0aGUgZmllbGQgdGhhdCB3ZSB0aGF0IHdlIHdlcmUgYWJsZSB0byBtYWtlIHVzZSBvZiBsYXRlciBvbi4gSGUgcmV2aWV3ZWQgd2l0aCB1cyBvdXIgb3duIGlkZWFzIGFuZCBjb25zaWRlcmF0aW9ucywgc3VjaCBhcyB0aGUgdXNlIG9mIHRoZSBQRUFSIHJlcG9ydGVyIHN5c3RlbS4gRm9sbG93aW5nIG91ciBpbnRlcnZpZXcgd2l0aCBNYXR0aWpzIHdlIGludGVncmF0ZWQgdGhlIHN0cnVjdHVyYWwgbW90aWYgdHJldm9wcmVRMSBpbnRvIHRoZSBwZWdSTkEsIHdoaWNoIGVuaGFuY2VkIHRoZSBwcmltZSBlZGl0aW5nIGVmZmljaWVuY3kgLSBhIGNyaXRpY2FsIGltcHJvdmVtZW50IHdlIHN1Y2Nlc3NmdWxseSB0ZXN0ZWQgYW5kIGRlbW9uc3RyYXRlZCBpbiBvdXIgcmVzdWx0cy4gIDwvcD5cbiAgICAgICAgIDxwPk91ciBkZWNpc2lvbiBvZiBmaXJzdCB0ZXN0aW5nIHByaW1lIGVkaXRpbmcgaW4gSEVLMjkzIGNlbGxzIGluc3RlYWQgb2Ygb3RoZXIgY2VsbCBsaW5lcyBvciBwcmltYXJ5IGNlbGxzIHdhcyBhbHNvIGJhc2VkIG9uIGhpcyBzdGF0ZW1lbnQgdGhhdCBIRUsgY2VsbHMgYXJlIGJ5IGZhciB0aGUgZWFzaWVzdCB0byBhcmNoaWV2ZSBlZGl0aW5nIGluLiBNYXR0aWpzIGFkZGl0aW9uYWxseSByZWNvbW1lbmRlZCB0aGUgdXNlIG9mIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT4gSEVLMjkzVCBjZWxsIGxpbmVzIDwvYT4gb3ZlcmV4cHJlc3NpbmcgQ0ZUUiBhbmQgQ0ZUUiBGNTA4ZGVsLiBIb3dldmVyLCBhZnRlciBjb25kdWN0aW5nIHBhdGNoIGNsYW1wIG1lYXN1cmVtZW50cywgd2UgZm91bmQgdGhhdCB0aGUgSEVLIGNlbGxzIHdlcmUgdW5zdWl0YWJsZSBmb3Igb3VyIG5lZWRzLCByZXF1aXJpbmcgdXMgdG8gYWRqdXN0IG91ciB0ZXN0aW5nIHN5c3RlbS4gQXMgYSByZXN1bHQsIHdlIHN3aXRjaGVkIHRvIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2lnbmF0b3ZhJywgJy9odW1hbi1wcmFjdGljZXMnKX0+SWduYXRvdmEnczwvYT4gY2VsbHMgZnJvbSBIYW1idXJnIGZvciBmdXJ0aGVyIGV4cGVyaW1lbnRzLiA8L3A+XG4gICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9tYXR0aWpzLmpwZ1wiLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFg8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ5LnBuZ1wiLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFk8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLy9UT0RPIChJU0kpXCIgYWx0PVwiXCIvPlxuICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5GaWd1cmUgWjwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VNaWNoYWVsYSgpe1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiTWljaGFlbGEgQmllbmVydCBcdTIwMTMgU2NpZW50aWZpYyBTYWxlcyBSZXByZXNlbnRhdGl2ZSBhdCBTdGVtY2VsbCBUZWNobm9sb2dpZXNcIiBpZD1cIm1pY2hhZWxhYW5hbHlzZUNcIj5cbiAgICAgICAgPHA+VGhyb3VnaCBoYW5kcy1vbiBleHBlcmllbmNlIHdpdGggTWljaGFlbGEgQmllbmVydCBhbmQgSnVsaWUgV2F0c29uLCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgY3VsdGl2YXRpb24gbWV0aG9kcyBvZiBBaXItTGlxdWlkIEludGVyZmFjZSAoQUxJKSBhbmQgYXBpY2FsLW91dCBvcmdhbm9pZHMuIFdlIGV2YWx1YXRlZCB0aGUgYWR2YW50YWdlcyBhbmQgbGltaXRhdGlvbnMgb2YgZGlmZmVyZW50IGN1bHR1cmluZyB0ZWNobmlxdWVzLCB3aGljaCBlbmFibGVkIHVzIHRvIG1ha2UgaW5mb3JtZWQgZGVjaXNpb25zIGFib3V0IHRoZWlyIGltcGxlbWVudGF0aW9uIGluIG91ciByZXNlYXJjaC4gV2l0aCB0aGUgcHJvdG9jb2xzIGFuZCByZXNvdXJjZXMgcHJvdmlkZWQsIHdlIHN1Y2Nlc3NmdWxseSBnZW5lcmF0ZWQgQUxJIGN1bHR1cmVzIGFuZCBvcmdhbm9pZHMgZnJvbSBwcmltYXJ5IGNlbGxzIG9mIENGIHBhdGllbnRzIGFuZCBoZWFsdGh5IGNvbnRyb2wgZG9ub3JzLCB3aGljaCB3ZSB3ZXJlIGFibGUgdG8gdGVzdCB0aHJvdWdob3V0IHRoZSBjb3Vyc2Ugb2Ygb3VyIHByb2plY3QuIDwvcD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvcHJpbWFyeS1jdWx0dXJlcy53ZWJwIFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBYPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZ2lmLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3cvNVV4OU1maUtuTFlqRXdTRFczVnpVUVwiIGFsdD1cIlwiLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFk8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDxwPjxzdHJvbmc+SGFuZHMtb24gZXhwZXJpZW5jZTo8L3N0cm9uZz4gR2FpbmVkIHByYWN0aWNhbCBpbnNpZ2h0cyBmcm9tIE1pY2hhZWxhIEJpZW5lcnQgYW5kIEp1bGllIFdhdHNvbiBpbnRvIHRoZSBjdWx0aXZhdGlvbiBtZXRob2RzIGZvciBBaXItTGlxdWlkIEludGVyZmFjZSAoQUxJKSBhbmQgYXBpY2FsLW91dCBvcmdhbm9pZHMuPC9wPlxuXG48cD48c3Ryb25nPkV2YWx1YXRpb24gb2YgY3VsdHVyaW5nIHRlY2huaXF1ZXM6PC9zdHJvbmc+IEFzc2Vzc2VkIHRoZSBhZHZhbnRhZ2VzIGFuZCBsaW1pdGF0aW9ucyBvZiBkaWZmZXJlbnQgY3VsdGl2YXRpb24gdGVjaG5pcXVlcywgYWxsb3dpbmcgdXMgdG8gbWFrZSBpbmZvcm1lZCBkZWNpc2lvbnMgYWJvdXQgd2hpY2ggbWV0aG9kcyB0byB1c2UgaW4gb3VyIHJlc2VhcmNoLjwvcD5cblxuPHA+PHN0cm9uZz5TdWNjZXNzZnVsIGdlbmVyYXRpb24gb2YgY3VsdHVyZXM6PC9zdHJvbmc+IFVzaW5nIHRoZSBwcm90b2NvbHMgYW5kIHJlc291cmNlcyBwcm92aWRlZCwgd2Ugc3VjY2Vzc2Z1bGx5IGdlbmVyYXRlZCBBTEkgY3VsdHVyZXMgYW5kIG9yZ2Fub2lkcyBmcm9tIHByaW1hcnkgY2VsbHMgb2YgQ0YgcGF0aWVudHMgYW5kIGhlYWx0aHkgY29udHJvbCBkb25vcnMuPC9wPlxuXG48cD48c3Ryb25nPlRlc3RpbmcgYW5kIGV4cGVyaW1lbnRhdGlvbjo8L3N0cm9uZz4gVGhlc2UgY3VsdHVyZXMgYW5kIG9yZ2Fub2lkcyB3ZXJlIHRlc3RlZCB0aHJvdWdob3V0IHRoZSBwcm9qZWN0LCBjb250cmlidXRpbmcgc2lnbmlmaWNhbnRseSB0byBvdXIgcmVzZWFyY2ggb3V0Y29tZXMuPC9wPlxuXG4gICAgICAgICBcbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VCZXJlbnMoKXtcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIEV2YS1NYXJpYSBCZXJlbnMgXHUyMDEzIEhlYWQgb2YgZXRoaWNzIGNvbW1pdHRlZSBhdCBVbml2ZXJzaXR5IG9mIEJpZWxlZmVsZFwiIGlkPVwiYmVyZW5zYW5hbHlzZUNcIj5cbiAgICAgICAgPHA+SW4gb3VyIHB1cnN1aXQgb2YgZ2VuZXJhdGluZyBwcmltYXJ5IGN1bHR1cmVzIGZyb20gaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyBmb3IgdGVzdGluZywgd2Ugc291Z2h0IGFkdmljZSBmcm9tIHRoZSBCaW9zYWZldHkgYW5kIFNlY3VyaXR5IENvbW1pdHRlZSBvZiBpR0VNLCBhcyB3ZWxsIGFzIGNvbnN1bHQgd2l0aCBEci4gRXZhLU1hcmlhIEJlcmVucywgb3VyIGV0aGljcyBvZmZpY2VyLiBUaHJvdWdoIGluLWRlcHRoIGRpc2N1c3Npb25zIHdpdGggRHIuIEJlcmVucywgd2UgY2FyZWZ1bGx5IGFzc2Vzc2VkIHRoZSByaXNrcyBhbmQgbGVnYWwgb2JsaWdhdGlvbnMgYXNzb2NpYXRlZCB3aXRoIG91ciBwcm9qZWN0LiBXZSBsZWFybmVkIHRoYXQsIGdpdmVuIHRoZSBtaW5pbWFsIGludmFzaXZlbmVzcyBvZiB0aGUgcHJvY2VkdXJlLCBubyBmb3JtYWwgYmlvZXRoaWNzIGFwcGxpY2F0aW9uIHdhcyBuZWNlc3NhcnkuIEhvd2V2ZXIsIHdlIHJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgZGV2ZWxvcGluZyBhIGxlZ2FsbHkgc291bmQgaW5mb3JtZWQgY29uc2VudCBmb3JtIGZvciBwYXJ0aWNpcGFudHMsIGVuc3VyaW5nIHRoYXQgd2UgYWRoZXJlZCB0byB0aGUgcmVsZXZhbnQgbGVnYWwgZnJhbWV3b3Jrcy4gPC9wPlxuICAgICAgICAgPHA+SW4gY29sbGFib3JhdGlvbiB3aXRoIHZhcmlvdXMgbGVnYWwgaW5zdGl0dXRpb25zLCB3ZSBkcmFmdGVkIGEgY29tcHJlaGVuc2l2ZSBpbmZvcm1lZCBjb25zZW50IGZvcm0gdGhhdCBjb21wbGllcyB3aXRoIGJvdGggbmF0aW9uYWwgcmVndWxhdGlvbnMgaW4gR2VybWFueSBhbmQgdGhlIHNwZWNpZmljIHBvbGljaWVzIG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5LiBBcyB0aGUgZmlyc3QgaUdFTSB0ZWFtIHRvIHRhY2tsZSB0aGUgY29tcGxleCBjdWx0aXZhdGlvbiBvZiBodW1hbiBwcmltYXJ5IG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMsIHdlIHdlcmUgY29tbWl0dGVkIHRvIHBhdmluZyB0aGUgd2F5IGZvciBmdXR1cmUgdGVhbXMuIFRvIHN1cHBvcnQgdGhpcywgd2UgY3JlYXRlZCBhIGd1aWRlbGluZSBkb2N1bWVudGluZyB0aGUgcHJvcGVyIGhhbmRsaW5nIG9mIGh1bWFuIGJpb21hdGVyaWFsIG9idGFpbmVkIHRocm91Z2ggdGhlc2UgdHlwZXMgb2Ygc2FtcGxlIGNvbGxlY3Rpb24uIDwvcD5cbiAgICAgICAgIDxwPkFkZGl0aW9uYWxseSwgd2Ugd29ya2VkIHdpdGhcdTIwMkZNci4gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigndGltbScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBUaW1tIFdlYmVyIDwvYT4gLCB3aG8gaXMgd29ya2luZyBmb3IgdGhlIGxvY2FsIGJpb2JhbmsgT1dMLCB0byBlc3RhYmxpc2ggIHByb3RvY29scyBmb3IgdGhlIG1hbmFnZW1lbnQgYW5kIHN0b3JhZ2Ugb2Ygc2Vuc2l0aXZlLCBwZXJzb25hbGx5IGlkZW50aWZpYWJsZSBkYXRhLiBXaGlsZSBubyBzcGVjaWFsIHByb2NlZHVyZXMgd2VyZSByZXF1aXJlZCBmb3Igb3VyIHNwZWNpZmljIHByb2plY3QsIHdlIG5vbmV0aGVsZXNzIG1hZGUgaXQgYSBwcmlvcml0eSB0byBpbXBsZW1lbnQgYW5vbnltaXplZCBtZXRob2RzIHRvIHByb3RlY3QgcGFydGljaXBhbnQgcHJpdmFjeS4gPC9wPlxuICAgICAgICA8cD5UaGUgaW5wdXQgYW5kIGZlZWRiYWNrIGZyb20gRHIuIEJlcmVucyBhbmQgTXIuIFdlYmVyIGZvcm1lZCB0aGUgYmFzaXMgb2Ygb3VyIGV0aGljYWwgY29uc2lkZXJhdGlvbiBvZiBvdXIgcHJvamVjdC4gV2l0aCB0aGVpciBoZWxwLCB3ZSB3ZXJlIGFibGUgdG8gaW1wcm92ZSBvdXIgdGVjaG5vbG9neSBvbiBwcmltYXJ5IGN1bHR1cmVzIHdpdGggYSBoaWdoZXIgbGV2ZWwgb2Ygc2FmZXR5IGFuZCBhbiBhZGFwdGVkIGd1aWRsaW5lLiBJbiBhZGRpdGlvbiwgb3VyIGJpb3NhZmV0eSBjb250cmlidXRpb25zIHdlcmUgc2lnbmlmaWNhbnRseSBpbXByb3ZlZCBhcyB3ZSB3ZXJlIGFibGUgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhbGwgbGVnYWwgYW5kIGV0aGljYWwgc3RhbmRhcmRzLi4gPC9wPlxuICAgICAgICA8cD5IYXZpbmcgZXN0YWJsaXNoZWQgdGhlIG5lY2Vzc2FyeSBldGhpY2FsIGFuZCBsZWdhbCBncm91bmR3b3JrLCB3ZSB0dXJuZWQgb3VyIGZvY3VzIHRvIHRoZSBwcmFjdGljYWwgYXNwZWN0cyBvZiBoYW5kbGluZyBhbmQgY3VsdGl2YXRpbmcgcGF0aWVudCBzYW1wbGVzLiBUaGlzIHJlcXVpcmVkIHNwZWNpYWxpemVkIGV4cGVydGlzZSwgd2hpY2ggbGVkIHVzIHRvIHNlZWsgYXNzaXN0YW5jZSBmcm9tIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21pY2hhZWxhJywgJy9odW1hbi1wcmFjdGljZXMnKX0+U3RlbWNlbGwgVGVjaG5vbG9naWVzPC9hPiBlbnN1cmUgdGhlIHN1Y2Nlc3NmdWwgY3VsdGl2YXRpb24gYW5kIG1haW50ZW5hbmNlIG9mIHRoZSBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzLiBUaGVpciBzdXBwb3J0IHdhcyBlc3NlbnRpYWwgaW4gZW5hYmxpbmcgdXMgdG8gcHVzaCBmb3J3YXJkIHdpdGggb3VyIHRlc3RpbmcgYW5kIGJyaW5nIG91ciBwcm9qZWN0IGNsb3NlciB0byByZWFsLXdvcmxkIGFwcGxpY2F0aW9ucy4gPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL2ludGVydmlldy1iZXJlbnMud2VicFwiIHN0eWxlPXt7aGVpZ2h0OlwiOTAlXCIsIHdpZHRoOlwiYXV0b1wifX0gLz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFg8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL2RlY2tibGF0dC1zYWZldHktZ3VpZGVsaW5lLndlYnBcIiBzdHlsZT17e2hlaWdodDpcIjkwJVwiLCB3aWR0aDpcImF1dG9cIn19Lz5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIFk8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2JlbmNoLXBpcGV0dGllcmVuLndlYnBcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBaPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8cD48c3Ryb25nPkV0aGljYWwgY29uc3VsdGF0aW9uOjwvc3Ryb25nPiBDb25zdWx0ZWQgd2l0aCBEci4gRXZhLU1hcmlhIEJlcmVucywgb3VyIGV0aGljcyBvZmZpY2VyLCB0byBhc3Nlc3MgdGhlIHJpc2tzIGFuZCBsZWdhbCBvYmxpZ2F0aW9ucyBvZiBnZW5lcmF0aW5nIHByaW1hcnkgY3VsdHVyZXMgZnJvbSBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzLiBJdCB3YXMgZGV0ZXJtaW5lZCB0aGF0IG5vIGZvcm1hbCBiaW9ldGhpY3MgYXBwbGljYXRpb24gd2FzIHJlcXVpcmVkIGR1ZSB0byB0aGUgbWluaW1hbCBpbnZhc2l2ZW5lc3Mgb2YgdGhlIHByb2NlZHVyZS48L3A+XG5cbjxwPjxzdHJvbmc+SW5mb3JtZWQgY29uc2VudDo8L3N0cm9uZz4gQ29sbGFib3JhdGVkIHdpdGggbGVnYWwgaW5zdGl0dXRpb25zIHRvIGRyYWZ0IGEgY29tcHJlaGVuc2l2ZSBpbmZvcm1lZCBjb25zZW50IGZvcm0gdGhhdCBjb21wbGllcyB3aXRoIEdlcm1hbiBuYXRpb25hbCByZWd1bGF0aW9ucyBhbmQgQmllbGVmZWxkIFVuaXZlcnNpdHkgcG9saWNpZXMuPC9wPlxuXG48cD48c3Ryb25nPkd1aWRlbGluZSBjcmVhdGlvbiBmb3IgZnV0dXJlIHRlYW1zOjwvc3Ryb25nPiBBcyB0aGUgZmlyc3QgaUdFTSB0ZWFtIHRvIHdvcmsgd2l0aCBodW1hbiBwcmltYXJ5IG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMsIHdlIGRldmVsb3BlZCBhIGd1aWRlbGluZSBmb3IgaGFuZGxpbmcgaHVtYW4gYmlvbWF0ZXJpYWwgdG8gYWlkIGZ1dHVyZSB0ZWFtcyBpbiBzaW1pbGFyIHByb2plY3RzLjwvcD5cblxuPHA+PHN0cm9uZz5EYXRhIHByaXZhY3kgcHJvdG9jb2xzOjwvc3Ryb25nPiBXb3JrZWQgd2l0aCBNcy4gR2FicmllbGUgQW50b24gdG8gZXN0YWJsaXNoIHByb3RvY29scyBmb3IgbWFuYWdpbmcgYW5kIHN0b3Jpbmcgc2Vuc2l0aXZlIHBlcnNvbmFsIGRhdGEsIHByaW9yaXRpemluZyBhbm9ueW1pemF0aW9uIHRvIHByb3RlY3QgcGFydGljaXBhbnQgcHJpdmFjeS48L3A+XG5cbjxwPjxzdHJvbmc+RXRoaWNhbCBhbmQgbGVnYWwgZm91bmRhdGlvbjo8L3N0cm9uZz4gSW5wdXQgZnJvbSBEci4gQmVyZW5zIGFuZCBNcy4gQW50b24gd2FzIGNydWNpYWwgaW4gYnVpbGRpbmcgdGhlIGV0aGljYWwgYW5kIGxlZ2FsIGZvdW5kYXRpb24gb2Ygb3VyIHByb2plY3QsIGVuc3VyaW5nIGNvbXBsaWFuY2Ugd2l0aCBhbGwgc3RhbmRhcmRzIGFuZCBlbmFibGluZyB1cyB0byBwcm9jZWVkIHdpdGggb2ZmaWNpYWwgYXBwcm92YWwuPC9wPlxuXG48cD48c3Ryb25nPlByYWN0aWNhbCBleHBlcnRpc2U6PC9zdHJvbmc+IEFmdGVyIHNlY3VyaW5nIHRoZSBldGhpY2FsIGFuZCBsZWdhbCBmcmFtZXdvcmssIHdlIHNvdWdodCBhc3Npc3RhbmNlIGZyb20gU3RlbWNlbGwgVGVjaG5vbG9naWVzIGZvciBwcmFjdGljYWwgZ3VpZGFuY2UgaW4gaGFuZGxpbmcgYW5kIGN1bHRpdmF0aW5nIHBhdGllbnQgc2FtcGxlcywgd2hpY2ggd2FzIGVzc2VudGlhbCBmb3IgYWR2YW5jaW5nIG91ciB0ZXN0aW5nIGFuZCBwdXNoaW5nIHRoZSBwcm9qZWN0IHRvd2FyZCByZWFsLXdvcmxkIGFwcGxpY2F0aW9ucy48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VXZWJlcigpe1xuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgICByZXR1cm4oXG4gICAgIDxDb2xsYXBzaWJsZSB0aXRsZT1cIlByb2YuIERyLiBXZWJlciBhbmQgRHIuIEdyb1x1MDBERmUtT25uZWJyaW5rIFwiIGlkPVwid2ViZXJhbmFseXNlQ1wiPlxuICAgICAgICAgPHA+UHJvZi4gV2ViZXIgYW5kIERyLiBHcm9cdTAwREZlLU9ubmVicmluayBlbXBoYXNpemVkIHRoZSBwb3RlbnRpYWwgb2YgdGFyZ2V0aW5nIGlvbm9jeXRlcyBkdWUgdG8gdGhlaXIgY3J1Y2lhbCByb2xlIGluIENGVFIgZXhwcmVzc2lvbiB3aGlsZSBoaWdobGlnaHRpbmcgdGhlIGNoYWxsZW5nZXMgb2YgYWNjZXNzaW5nIHRoZXNlIGNlbGxzIGFuZCBwZW5ldHJhdGluZyB0aGUgbXVjdXMgYmFycmllci4gQWRkaXRpb25hbGx5LCB0aGV5IHN1Z2dlc3RlZCB1c2luZyBhbiBVc3NpbmcgY2hhbWJlciB0byBhc3Nlc3MgQ0ZUUiBmdW5jdGlvbiwgYWx0aG91Z2ggdGhleSBub3RlZCBpdHMgbGltaXRhdGlvbnMsIGFuZCByZWNvbW1lbmRlZCBleHBsb3JpbmcgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBhcyBhIHNhZmVyIGFsdGVybmF0aXZlIHRvIFBFRy1saXBpZCBzeXN0ZW1zLiA8L3A+XG4gICAgICAgICA8cD5JbiByZXNwb25zZSB0byB0aGVpciBpbnNpZ2h0cywgd2UgY29udGludWVkIHRvIGV4cGxvcmUgaW9ub2N5dGVzIGJ1dCBleHBhbmRlZCBvdXIgZm9jdXMgdG8gaW5jbHVkZSBvdGhlciBjZWxsIHR5cGVzIHRvIGVuaGFuY2UgdGVzdGluZyBmbGV4aWJpbGl0eS4gV2UgZnVydGhlciBpbnZlc3RpZ2F0ZWQgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBhbmQgb3B0aW1pemVkIHRoZWlyIHNpemUgZm9yIGJldHRlciBsdW5nIHBlbmV0cmF0aW9uLiBXZSBwbGFuIHRvIHV0aWxpemUgdGhlIFVzc2luZyBjaGFtYmVyIGZvciBDRlRSIG1lYXN1cmVtZW50cyBhbmQgYXJlIGFsc28gY29uc2lkZXJpbmcgcGF0Y2ggY2xhbXBpbmcgZm9yIGRldGFpbGVkIHRyYW5zZmVjdGlvbiBhbmFseXNpcy4gPC9wPlxuICAgICAgICAgPHA+UHJvZi4gV2ViZXIgaGlnaGxpZ2h0ZWQgdGhlIGlubm92YXRpdmUgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCwgcGFydGljdWxhcmx5IHJlZ2FyZGluZyBjZWxsIGN1bHR1cmUgbWV0aG9kcy4gSGUgYWR2aXNlZCB1cyB0byBjb25zaWRlciB0aGUgZXRoaWNhbCBhbmQgbGVnYWwgaW1wbGljYXRpb25zLCB3aGljaCBsZWQgdXMgdG8gY29uc3VsdCB3aXRoIHRoZSBoZWFkIG9mIHRoZSBldGhpY3MgY29tbWl0dGVlIGF0IHRoZSBVbml2ZXJzaXR5IG9mIEJpZWxlZmVsZCwgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmVyZW5zJywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIEV2YS1NYXJpYSBCZXJlbnM8L2E+LiBEdWUgdG8gbGVnYWwgY29uY2VybnMsIHRoZSBjb21taXR0ZWUgaXMgdW5hYmxlIHRvIHN1cHBvcnQgb3VyIHByb2plY3QgZGlyZWN0bHksIGFzIHRoZXkgaGF2ZSBhbiBpbnRlcmVzdCBpbiBkZXZlbG9waW5nIHRoZWlyIG93biBDaGl0b3NhbiBMTlBzLCB3aGljaCBjb25mbGljdHMgd2l0aCB0aGUgb3Blbi1zb3VyY2UgbmF0dXJlIG9mIHRoZSBpR0VNIGNvbXBldGl0aW9uLiBOZXZlcnRoZWxlc3MsIHRoZXkgcHJvdmlkZWQgdXMgd2l0aCB2YWx1YWJsZSBpbmZvcm1hdGlvbiB1cCB0byB0aGF0IHBvaW50LCBndWlkaW5nIG91ciB1bmRlcnN0YW5kaW5nIGFuZCBhcHByb2FjaCB0byB0aGUgcHJvamVjdC4gPC9wPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9wci1zZW50YXRpb24tdWttLndlYnBcIiBhbHQ9XCJcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5GaWd1cmUgWDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvb3JpZW50aWVydW5nLndlYnBcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBZPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICBcbiAgICAgICAgPHA+PHN0cm9uZz5UYXJnZXRpbmcgaW9ub2N5dGVzOjwvc3Ryb25nPiBFbXBoYXNpemVkIHRoZSBwb3RlbnRpYWwgb2YgdGFyZ2V0aW5nIGlvbm9jeXRlcyBkdWUgdG8gdGhlaXIgY3JpdGljYWwgcm9sZSBpbiBDRlRSIGV4cHJlc3Npb24sIHdoaWxlIGFsc28gaGlnaGxpZ2h0aW5nIHRoZSBjaGFsbGVuZ2VzIG9mIGFjY2Vzc2luZyB0aGVzZSBjZWxscyBhbmQgcGVuZXRyYXRpbmcgdGhlIG11Y3VzIGJhcnJpZXIgaW4gQ0YgcGF0aWVudHMuPC9wPlxuXG48cD48c3Ryb25nPlVzc2luZyBjaGFtYmVyIHJlY29tbWVuZGF0aW9uOjwvc3Ryb25nPiBTdWdnZXN0ZWQgdXNpbmcgdGhlIFVzc2luZyBjaGFtYmVyIHRvIGFzc2VzcyBDRlRSIGZ1bmN0aW9uLCBub3RpbmcgaXRzIGxpbWl0YXRpb25zLCBhbmQgcmVjb21tZW5kZWQgZXhwbG9yaW5nIHBhdGNoIGNsYW1waW5nIGZvciBtb3JlIGRldGFpbGVkIHRyYW5zZmVjdGlvbiBhbmFseXNpcy48L3A+XG5cbjxwPjxzdHJvbmc+Q2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlczo8L3N0cm9uZz4gRW5jb3VyYWdlZCBpbnZlc3RpZ2F0aW5nIGNoaXRvc2FuLWJhc2VkIG5hbm9wYXJ0aWNsZXMgYXMgYSBzYWZlciBhbHRlcm5hdGl2ZSB0byBQRUctbGlwaWQgc3lzdGVtcywgd2hpY2ggbGVkIHVzIHRvIG9wdGltaXplIGNoaXRvc2FuIG5hbm9wYXJ0aWNsZSBzaXplIGZvciBiZXR0ZXIgbHVuZyBwZW5ldHJhdGlvbi48L3A+XG5cbjxwPjxzdHJvbmc+RXhwYW5kZWQgY2VsbCB0YXJnZXRpbmc6PC9zdHJvbmc+IEJhc2VkIG9uIHRoZWlyIGluc2lnaHRzLCB3ZSBleHBhbmRlZCBvdXIgZm9jdXMgYmV5b25kIGlvbm9jeXRlcyB0byBpbmNsdWRlIG90aGVyIGNlbGwgdHlwZXMgdG8gaW5jcmVhc2UgZmxleGliaWxpdHkgaW4gdGVzdGluZy48L3A+XG5cbjxwPjxzdHJvbmc+RXRoaWNhbCBhbmQgbGVnYWwgZ3VpZGFuY2U6PC9zdHJvbmc+IFByb2YuIFdlYmVyIGFkdmlzZWQgdXMgdG8gY29uc2lkZXIgZXRoaWNhbCBhbmQgbGVnYWwgY29uY2VybnMsIGxlYWRpbmcgdG8gY29uc3VsdGF0aW9ucyB3aXRoIERyLiBCZXJlbnMsIGhlYWQgb2YgdGhlIGV0aGljcyBjb21taXR0ZWUgYXQgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkLiBMZWdhbCBjb25jZXJucyBhcm91bmQgY29uZmxpY3RpbmcgaW50ZXJlc3RzICh0aGUgdW5pdmVyc2l0eSdzIG93biBjaGl0b3NhbiBMTlAgZGV2ZWxvcG1lbnRzKSBsaW1pdGVkIGRpcmVjdCBzdXBwb3J0LCBidXQgdGhlIGNvbW1pdHRlZSBwcm92aWRlZCB2YWx1YWJsZSBndWlkYW5jZS48L3A+XG5cbjxwPjxzdHJvbmc+SW5ub3ZhdGl2ZSBjZWxsIGN1bHR1cmUgbWV0aG9kczo8L3N0cm9uZz4gUHJvZi4gV2ViZXIgcHJhaXNlZCB0aGUgaW5ub3ZhdGl2ZSBhc3BlY3RzIG9mIG91ciBwcm9qZWN0LCBwYXJ0aWN1bGFybHkgb3VyIGFwcHJvYWNoIHRvIGNlbGwgY3VsdHVyZSwgZnVydGhlciB2YWxpZGF0aW5nIG91ciBwcm9qZWN0XHUyMDE5cyBzY2llbnRpZmljIGRpcmVjdGlvbi48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VNb29yKCl7XG4gICAgcmV0dXJuKFxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJCZW5qYW1pbiBXaWxsZW0gTW9vcmxhY2ggXHUyMDEzIENoaXRvc2FuIEV4cGVydCBcIiBpZD1cIm1vb3JsYWNoYW5hbHlzZUNcIj5cbiAgICAgICAgPHA+V2UgZ2FpbmVkIHZhbHVhYmxlIGluc2lnaHRzIGludG8gdGhlIHVuaXF1ZSBwcm9wZXJ0aWVzIG9mIGNoaXRvc2FuLCBhIGNhdGlvbmljIHBvbHltZXIgd2l0aCBzaWduaWZpY2FudCBwb3RlbnRpYWwgdG8gc3RhYmlsaXplIFJOQSBpbiBvdXIgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApIGZvcm11bGF0aW9ucy4gQ2hpdG9zYW4gb2ZmZXJzIHJvYnVzdCBwcm90ZWN0aW9uIGFnYWluc3QgUk5hc2VzIGFuZCBleGhpYml0cyBoZWF0IHN0YWJpbGl0eSwgbWFraW5nIGl0IHN1aXRhYmxlIGZvciBwcm9jZXNzaW5nIG1ldGhvZHMgbGlrZSBzcHJheSBkcnlpbmcuIEFkZGl0aW9uYWxseSwgaXRzIG11Y29hZGhlc2l2ZSBwcm9wZXJ0aWVzIGVuYWJsZSBvcHRpbWFsIGNob2ljZSBhcyBMTlAgY29tcG9uZW50LiA8L3A+XG4gICAgICAgIDxwPkEgY3JpdGljYWwgaW5zaWdodCB3YXMgdGhlIG5lY2Vzc2l0eSBmb3IgY2hpdG9zYW4gdG8gYmUgaW4gYW4gYWNpZGljIGVudmlyb25tZW50IChwSCA0LTYpIHRvIG1haW50YWluIGl0cyBwb3NpdGl2ZSBjaGFyZ2UsIHdoaWNoIGlzIGVzc2VudGlhbCBmb3IgZWZmZWN0aXZlIFJOQSBpbnRlcmFjdGlvbi4gV2hpbGUgaXQgY2Fubm90IHJlcGxhY2UgUEVHIGR1ZSB0byBpdHMgaHlkcm9waGlsaWMgbmF0dXJlLCBjaGl0b3NhbiBpcyBpZGVhbCBmb3IgZm9ybWluZyBSTkEtY2hpdG9zYW4gY29tcGxleGVzLCB3aGljaCBjYW4gdGhlbiBiZSBlbmNhcHN1bGF0ZWQgd2l0aGluIExOUHMuIFRoaXMgYXBwcm9hY2ggc2lnbmlmaWNhbnRseSBlbmhhbmNlcyBSTkEgc3RhYmlsaXR5IGR1cmluZyBzcHJheSBkcnlpbmcsIGEgbWV0aG9kIHdlIGludGVuZCB0byBmdXJ0aGVyIHRlc3QgaW4gY29sbGFib3JhdGlvbiB3aXRoIDxhIGhyZWY9XCJodHRwczovL3JuaGFsZS5jb20vXCI+Um5oYWxlPC9hPi4gPC9wPlxuICAgICAgICA8cD4gSW4gdGVybXMgb2YgaW1wbGVtZW50YXRpb24sIEJlbmphbWluIGVkdWNhdGVkIHVzIG9uIHRoZSBjaGVtaWNhbCBhbmQgc3RydWN0dXJhbCBwcm9wZXJ0aWVzIG9mIGNoaXRvc2FuLCByZWluZm9yY2luZyBvdXIgYXBwcm9hY2ggdG8gaW1wcm92ZSBzdGFiaWxpdHksIHBhcnRpY3VsYXJseSBhZ2FpbnN0IGhlYXQsIGluIG91ciBMTlAgZm9ybXVsYXRpb25zLiBIZSBwcm92aWRlZCBndWlkYW5jZSBvbiBmb3JtdWxhdGluZyBjaGl0b3Nhbi1STkEgY29tcGxleGVzIGFuZCBkZXZlbG9wZWQgYSBwcm90b2NvbCBmb3IgaW50ZWdyYXRpbmcgdGhlbSBpbnRvIG91ciBMTlAgZm9ybXVsYXRpb24gd2l0aG91dCBhZmZlY3RpbmcgdGhlIGNoYXJnZSBvZiB0aGUgbmFub3BhcnRpY2xlcy4gQWRkaXRpb25hbGx5LCBoZSBzdXBwbGllZCB1cyB3aXRoIGNoaXRvc2FuIGluIHZhcmlvdXMgc2l6ZXMsIGVuYWJsaW5nIHVzIHRvIHRlc3QgZGlmZmVyZW50IGNoaXRvc2FuIGNvbXBsZXhlcyBmb3Igb3B0aW1hbCByZXN1bHRzLiA8L3A+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL2NoaXRvc2FuLndlYnBcIiBzdHlsZT17e2hlaWdodDpcIjUwJVwiLCB3aWR0aDpcImF1dG9cIn19IGFsdD1cIlwiLz5cbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSBYPC9maWdjYXB0aW9uPlxuICAgICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8cD48c3Ryb25nPkNoaXRvc2FuIHByb3BlcnRpZXM6PC9zdHJvbmc+IFByb3ZpZGVkIHZhbHVhYmxlIGluc2lnaHRzIGludG8gY2hpdG9zYW4sIGEgY2F0aW9uaWMgcG9seW1lciB3aXRoIHN0cm9uZyBwb3RlbnRpYWwgdG8gc3RhYmlsaXplIFJOQSBpbiBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZm9ybXVsYXRpb25zIGR1ZSB0byBpdHMgcm9idXN0IHByb3RlY3Rpb24gYWdhaW5zdCBSTmFzZXMgYW5kIGhlYXQgc3RhYmlsaXR5LjwvcD5cblxuPHA+PHN0cm9uZz5NdWNvYWRoZXNpdmUgcHJvcGVydGllczo8L3N0cm9uZz4gSGlnaGxpZ2h0ZWQgY2hpdG9zYW4ncyBtdWNvYWRoZXNpdmUgY2hhcmFjdGVyaXN0aWNzLCBtYWtpbmcgaXQgYW4gaWRlYWwgY29tcG9uZW50IGZvciBMTlBzIGluIHRlcm1zIG9mIFJOQSBkZWxpdmVyeS48L3A+XG5cbjxwPjxzdHJvbmc+QWNpZGljIGVudmlyb25tZW50IHJlcXVpcmVtZW50Ojwvc3Ryb25nPiBFbXBoYXNpemVkIHRoZSBuZWVkIGZvciBjaGl0b3NhbiB0byBtYWludGFpbiBhIHBvc2l0aXZlIGNoYXJnZSBpbiBhbiBhY2lkaWMgZW52aXJvbm1lbnQgKHBIIDQtNikgZm9yIGVmZmVjdGl2ZSBSTkEgaW50ZXJhY3Rpb24uPC9wPlxuXG48cD48c3Ryb25nPkNoaXRvc2FuIHZzLiBQRUc6PC9zdHJvbmc+IFdoaWxlIGNoaXRvc2FuIGNhbm5vdCByZXBsYWNlIFBFRyBkdWUgdG8gaXRzIGh5ZHJvcGhpbGljIG5hdHVyZSwgaXQgaXMgb3B0aW1hbCBmb3IgZm9ybWluZyBSTkEtY2hpdG9zYW4gY29tcGxleGVzLCB3aGljaCBjYW4gYmUgZW5jYXBzdWxhdGVkIHdpdGhpbiBMTlBzLjwvcD5cblxuPHA+PHN0cm9uZz5STkEgc3RhYmlsaXR5IGluIHNwcmF5IGRyeWluZzo8L3N0cm9uZz4gQ2hpdG9zYW4ncyB1c2UgaW4gUk5BLWNoaXRvc2FuIGNvbXBsZXhlcyBzaWduaWZpY2FudGx5IGVuaGFuY2VzIFJOQSBzdGFiaWxpdHkgZHVyaW5nIHNwcmF5IGRyeWluZywgYSBtZXRob2Qgd2Ugd2lsbCBjb250aW51ZSB0byB0ZXN0IHdpdGggUk5oYWxlLjwvcD5cblxuPHA+PHN0cm9uZz5JbXBsZW1lbnRhdGlvbiBndWlkYW5jZTo8L3N0cm9uZz4gQmVuamFtaW4gcHJvdmlkZWQgY2hlbWljYWwgYW5kIHN0cnVjdHVyYWwga25vd2xlZGdlIG9mIGNoaXRvc2FuLCBndWlkaW5nIHVzIG9uIGhvdyB0byBpbXByb3ZlIExOUCBzdGFiaWxpdHksIGVzcGVjaWFsbHkgYWdhaW5zdCBoZWF0LCBhbmQgZm9ybXVsYXRpbmcgY2hpdG9zYW4tUk5BIGNvbXBsZXhlcy4gSGUgYWxzbyBzdXBwbGllZCB2YXJpb3VzIHNpemVzIG9mIGNoaXRvc2FuLCBhbGxvd2luZyB1cyB0byB0ZXN0IGZvciBvcHRpbWFsIHJlc3VsdHMgaW4gb3VyIGZvcm11bGF0aW9ucy48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VLb2xvbmtvKCl7XG4gICAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIEthdGhhcmluYSBLb2xvbmtvIFx1MjAxMyBOYW5vcGFydGljbGUgUmVzZWFyY2hlciBcIiBpZD1cImtvbG9ua29hbmFseXNlQ1wiPlxuICAgICAgICAgPHA+RHIuIEtvbG9ua28ncyBleHBlcnRpc2UgaW4gbmFub3BhcnRpY2xlIHN0YWJpbGl0eSB3YXMgaW52YWx1YWJsZSBpbiByZWZpbmluZyBvdXIgZGVsaXZlcnkgc3lzdGVtLiBIZXIgcmVjb21tZW5kYXRpb24gdG8gdXRpbGl6ZSBjaGl0b3NhbiBmb3IgZ3JlYXRlciBzdGFiaWxpdHkgaW5mbHVlbmNlZCBvdXIgZm9ybXVsYXRpb24gY2hvaWNlIGFuZCB3ZSBmdXJ0aGVyIGludmVzdGlnYXRlZCBob3cgdG8gaW50ZWdyYXRlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21vb3JsYWNoJywgJy9odW1hbiBwcmFjdGljZXMnKX0+IGNoaXRvc2FuIGluIG91ciBMTlAgPC9hPi4gQWRkaXRpb25hbGx5LCBoZXIgaW5zaWdodHMgb24gY3l0b3RveGljaXR5IHRlc3RpbmcsIHBhcnRpY3VsYXJseSB0aGUgTVRUIGFzc2F5LCBhbmQgbWVkaXVtIGNvbmRpdGlvbnMgc3VjaCBhcyB1c2luZyBPcHRpTUVNIGZvciB0cmFuc2ZlY3Rpb24sIGdyZWF0bHkgaW1wcm92ZWQgb3VyIGV4cGVyaW1lbnRhbCBkZXNpZ24uIFdlIGV4cGxvcmVkIHRoZSBwb3RlbnRpYWwgYW5kIGltcG9ydGFuY2Ugb2YgY2hpdG9zYW4gaW4gbGlwaWQgbmFub3BhcnRpY2xlcywgbGVhcm5lZCB2YXJpb3VzIHRlY2huaXF1ZXMgZm9yIGNoYXJhY3Rlcml6aW5nIExOUHMsIGFuZCBpbXBsZW1lbnRlZCBlZmZlY3RpdmUgY3VsdGl2YXRpb24gdGVjaG5pcXVlcyBhbmQgdGlwcyBmb3IgY2VsbCBjdWx0dXJlLCB3aXRoIGEgZm9jdXMgb24gY29udGFtaW5hdGlvbiByaXNrcyBhbmQgdGhlIHVzZSBvZiBPcHRpTUVNIG1lZGl1bS4gT3ZlcmFsbCwgRHIuIEtvbG9ua29cdTIwMTlzIGd1aWRhbmNlIGhhcyBiZWVuIGluc3RydW1lbnRhbCBpbiBzaGFwaW5nIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIG91ciBwcm9qZWN0LiA8L3A+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8ZmlndXJlPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZmFuem9yL3NvcnQtbXR0LndlYnAgXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5GaWd1cmUgWDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4gICAgXG4gICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3B0aW1lbS0xLndlYnBcIiBzdHlsZT17e2hlaWdodDpcIjU1JVwiLCB3aWR0aDpcImF1dG9cIn19IGFsdD1cIlwiLz5cbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5GaWd1cmUgWTwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHA+PHN0cm9uZz5FeHBlcnRpc2UgaW4gbmFub3BhcnRpY2xlIHN0YWJpbGl0eTo8L3N0cm9uZz4gUHJvdmlkZWQgaW52YWx1YWJsZSBpbnNpZ2h0cyB0aGF0IHNpZ25pZmljYW50bHkgcmVmaW5lZCBvdXIgZGVsaXZlcnkgc3lzdGVtLjwvcD5cblxuPHA+PHN0cm9uZz5DaGl0b3NhbiByZWNvbW1lbmRhdGlvbjo8L3N0cm9uZz4gU3VnZ2VzdGVkIHRoZSB1c2Ugb2YgY2hpdG9zYW4gZm9yIGluY3JlYXNlZCBzdGFiaWxpdHkgaW4gbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcyksIGluZmx1ZW5jaW5nIG91ciBmb3JtdWxhdGlvbiBjaG9pY2UgYW5kIGxlYWRpbmcgdG8gZnVydGhlciBpbnZlc3RpZ2F0aW9ucyBpbnRvIGludGVncmF0aW5nIGNoaXRvc2FuIGluIG91ciBMTlAgc3lzdGVtLjwvcD5cblxuPHA+PHN0cm9uZz5DeXRvdG94aWNpdHkgdGVzdGluZyBpbXByb3ZlbWVudHM6PC9zdHJvbmc+IEhlciBndWlkYW5jZSBvbiBjeXRvdG94aWNpdHkgdGVzdGluZywgcGFydGljdWxhcmx5IHRoZSBNVFQgYXNzYXksIGdyZWF0bHkgZW5oYW5jZWQgdGhlIHJlbGlhYmlsaXR5IG9mIG91ciBleHBlcmltZW50cy48L3A+XG5cbjxwPjxzdHJvbmc+T3B0aW1pemVkIHRyYW5zZmVjdGlvbiBjb25kaXRpb25zOjwvc3Ryb25nPiBJbnRyb2R1Y2VkIHVzIHRvIHRoZSB1c2Ugb2YgT3B0aU1FTSBmb3IgdHJhbnNmZWN0aW9uLCBpbXByb3Zpbmcgb3VyIG1lZGl1bSBjb25kaXRpb25zIGFuZCBleHBlcmltZW50YWwgZGVzaWduLjwvcD5cblxuPHA+PHN0cm9uZz5DaGFyYWN0ZXJpemF0aW9uIGFuZCBjdWx0aXZhdGlvbiB0ZWNobmlxdWVzOjwvc3Ryb25nPiBIZWxwZWQgdXMgZXhwbG9yZSB0ZWNobmlxdWVzIGZvciBjaGFyYWN0ZXJpemluZyBMTlBzIGFuZCBpbXBsZW1lbnRpbmcgZWZmZWN0aXZlIGN1bHRpdmF0aW9uIG1ldGhvZHMsIGZvY3VzaW5nIG9uIGNvbnRhbWluYXRpb24gcmlza3MgYW5kIG9wdGltYWwgY2VsbCBjdWx0dXJlIHByYWN0aWNlcy48L3A+XG5cbjxwPjxzdHJvbmc+T3ZlcmFsbCBpbXBhY3Q6PC9zdHJvbmc+IERyLiBLb2xvbmtvJ3MgY29udHJpYnV0aW9ucyB3ZXJlIGluc3RydW1lbnRhbCBpbiBzaGFwaW5nIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIG91ciBwcm9qZWN0LCBpbXByb3ZpbmcgYm90aCB0aGUgc3RhYmlsaXR5IG9mIHRoZSBmb3JtdWxhdGlvbiBhbmQgdGhlIHF1YWxpdHkgb2Ygb3VyIGV4cGVyaW1lbnRhbCBwcm9jZXNzZXMuPC9wPlxuXG4gICAgIDwvQ29sbGFwc2libGU+XG4gICAgKSBcbiB9XG5mdW5jdGlvbiBBbmFseXNlUm5oYWxlKCl7XG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgICByZXR1cm4oXG4gICAgIDxDb2xsYXBzaWJsZSB0aXRsZT1cIkRyLiBCZW5qYW1pbiBXaW5rZWxqYW5uIFx1MjAxMyBSTmhhbGUsIEluZHVzdHJ5IEV4cGVydCAmIFJlc2VhcmNoZXIgXCIgaWQ9XCJybmhhbGVhbmFseXNlQ1wiPlxuICAgICAgICAgPHA+RHIuIEJlbmphbWluIFdpbmtlbGphbm4gZnJvbSA8YSBocmVmPVwiaHR0cHM6Ly9ybmhhbGUuY29tL1wiID5SbmhhbGU8L2E+IHByb3ZpZGVkIGNydWNpYWwgdGVjaG5pY2FsIGd1aWRhbmNlIHRoYXQgc2lnbmlmaWNhbnRseSBlbmhhbmNlZCBvdXIgcHJvamVjdC4gSGlzIGV4cGVydGlzZSBpbiBzcHJheS1kcmllZCBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBhbGxvd2VkIHVzIHRvIGltcHJvdmUgdGhlIHNoZWxmLWxpZmUgYW5kIHNjYWxhYmlsaXR5IG9mIG91ciBmb3JtdWxhdGlvbnMuIFdlIGxlYXJuZWQgYWJvdXQgdGhlIGxpbWl0YXRpb25zIG9mIENGIHRoZXJhcGllcyByZWdhcmRpbmcgaW50ZXJuYXRpb25hbCBhY2Nlc3MsIGNvc3QsIGFuZCBhdmFpbGFiaWxpdHksIHdoaWNoIGhpZ2hsaWdodGVkIHRoZSBuZWVkIGZvciBzdXN0YWluYWJsZSBzb2x1dGlvbnMuIDwvcD5cbiAgICAgICAgPHA+V2UgZGlzY292ZXJlZCB0aGF0IHNwcmF5IGRyeWluZyBpcyBhbiBlZmZlY3RpdmUgbWV0aG9kIGZvciBzdGFiaWxpemluZyBMTlBzLCBlbmFibGluZyB0cmFuc3BvcnQgd2l0aG91dCByZWZyaWdlcmF0aW9uIFx1MjAxNCBhIG1vcmUgZW52aXJvbm1lbnRhbGx5IGZyaWVuZGx5IGFwcHJvYWNoIHRoYXQgcmVkdWNlcyBlbmVyZ3kgY29uc3VtcHRpb24uICA8L3A+XG4gICAgICAgIDxwPk91ciBjbG9zZSBjb2xsYWJvcmF0aW9uIHdpdGggUk5oYWxlIHdpbGwgY29udGludWUgZXZlbiBhZnRlciB0aGUgd2lraSBmcmVlemUsIGZvY3VzaW5nIG9uIHByb2R1Y2luZyBzcHJheS1kcmllZCBMTlBzIGFuZCB0ZXN0aW5nIHRoZW0gb24gb3VyIHByaW1hcnkgY3VsdHVyZXMuIFdlIGFyZSBhbHNvIGludmVzdGlnYXRpbmcgaG93IHRvIGVuaGFuY2UgdGhlIHN0YWJpbGl0eSBvZiBMTlBzLCBwYXJ0aWN1bGFybHkgaW4gcHJvdGVjdGluZyBSTkEgZnJvbSBoZWF0IGRhbWFnZSwgYW5kIGFyZSBzZWVraW5nIGV4cGVydHMgaW4gY2hpdG9zYW4gZm9yIGZ1cnRoZXIgc3VwcG9ydC4gPC9wPlxuICAgICAgICA8cD5EdXJpbmcgZGlzY3Vzc2lvbnMgd2l0aCBhIHlvdW5nIHN0YXJ0dXAgZW50cmVwcmVuZXVyLCB3ZSBleHBsb3JlZCB0aGUgcG9zc2liaWxpdHkgb2YgcHVyc3VpbmcgYW4gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdGdXJ0aGVyIEVuZ2FnZW1lbnQzSCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBlbnRyZXBlbmV1c2hpcC1vcmllbnRlZCA8L2E+ICBwcm9qZWN0IGJ1dCB1bHRpbWF0ZWx5IGRlY2lkZWQgdG8gZm9jdXMgb24gYSBodW1hbi1jZW50ZXJlZCBhcHByb2FjaCB0aGF0IHByaW9yaXRpemVzIHRoZSBuZWVkcyBvZiBDRiBwYXRpZW50cyBvdmVyIGNvc3QtZHJpdmVuIGluZHVzdHJpYWwgcGF0aHdheXMuIDwvcD5cbiAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLXJuaGFsZS16b29tLnBuZ1wiIGFsdD1cIlwiLz5cbiAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDEuPC9iPiBEZWxpdmVyeSBUZWFtIFpvb20gY2FsbCB3aXRoIFJOaGFsZSA8L2ZpZ2NhcHRpb24+XG4gICAgICAgIDwvZmlndXJlPlxuICAgICAgICA8cD48c3Ryb25nPkV4cGVydGlzZSBpbiBzcHJheS1kcmllZCBMTlBzOjwvc3Ryb25nPiBQcm92aWRlZCBjcml0aWNhbCB0ZWNobmljYWwgZ3VpZGFuY2UsIGVuaGFuY2luZyB0aGUgc2hlbGYtbGlmZSBhbmQgc2NhbGFiaWxpdHkgb2Ygb3VyIGZvcm11bGF0aW9ucy48L3A+XG5cbjxwPjxzdHJvbmc+U3VzdGFpbmFibGUgc29sdXRpb25zOjwvc3Ryb25nPiBIaWdobGlnaHRlZCB0aGUgbGltaXRhdGlvbnMgb2YgQ0YgdGhlcmFwaWVzIHJlZ2FyZGluZyBpbnRlcm5hdGlvbmFsIGFjY2VzcywgY29zdCwgYW5kIGF2YWlsYWJpbGl0eSwgZW1waGFzaXppbmcgdGhlIG5lZWQgZm9yIHN1c3RhaW5hYmxlIGFsdGVybmF0aXZlcy48L3A+XG5cbjxwPjxzdHJvbmc+U3ByYXkgZHJ5aW5nIGJlbmVmaXRzOjwvc3Ryb25nPiBJbnRyb2R1Y2VkIHVzIHRvIHNwcmF5IGRyeWluZyBhcyBhbiBlZmZlY3RpdmUgbWV0aG9kIGZvciBzdGFiaWxpemluZyBMTlBzLCBlbmFibGluZyB0cmFuc3BvcnQgd2l0aG91dCByZWZyaWdlcmF0aW9uIGFuZCByZWR1Y2luZyBlbmVyZ3kgY29uc3VtcHRpb25cdTIwMTRhbiBlbnZpcm9ubWVudGFsbHkgZnJpZW5kbHkgc29sdXRpb24uPC9wPlxuXG48cD48c3Ryb25nPk9uZ29pbmcgY29sbGFib3JhdGlvbjo8L3N0cm9uZz4gQ29udGludWVkIGNvbGxhYm9yYXRpb24gd2l0aCBSTmhhbGUsIGZvY3VzaW5nIG9uIHByb2R1Y2luZyBhbmQgdGVzdGluZyBzcHJheS1kcmllZCBMTlBzIG9uIHByaW1hcnkgY3VsdHVyZXMsIHdoaWxlIGludmVzdGlnYXRpbmcgd2F5cyB0byBpbXByb3ZlIFJOQSBzdGFiaWxpdHkgYW5kIHByb3RlY3Rpb24gZnJvbSBoZWF0IGRhbWFnZS48L3A+XG5cbjxwPjxzdHJvbmc+RXhwbG9yYXRpb24gb2YgZW50cmVwcmVuZXVyc2hpcDo8L3N0cm9uZz4gRGlzY3Vzc2VkIHRoZSBwb3RlbnRpYWwgZm9yIGFuIGVudHJlcHJlbmV1cnNoaXAtb3JpZW50ZWQgcHJvamVjdCwgYnV0IHVsdGltYXRlbHkgcHJpb3JpdGl6ZWQgYSBodW1hbi1jZW50ZXJlZCBhcHByb2FjaCB0aGF0IGZvY3VzZXMgb24gdGhlIG5lZWRzIG9mIENGIHBhdGllbnRzIG92ZXIgaW5kdXN0cmlhbCBjb3N0LWRyaXZlbiBzdHJhdGVnaWVzLjwvcD5cblxuICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICkgXG4gfVxuZnVuY3Rpb24gQW5hbHlzZUpvc2h1YSgpe1xuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgIHJldHVybihcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiSm9zaHVhIFx1MjAxMyBWaWNlIHByZXNpZGVudCBvZiBDRiBWZXN0IGludGVybmF0aW9uYWwsIEZhdGhlciBvZiBhIENGIGNoaWxkXCIgaWQ9XCJqb3NodWFhbmFseXNlQ1wiPlxuICAgICAgICA8cD5UaHJvdWdoIGRpc2N1c3Npb25zIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYiAoJ2pvc2h1YScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBKb3NodWEgPC9hPiwgd2UgbGVhcm5lZCB0aGF0IENGIHN0YXRpc3RpY3MgYXJlIGluYWRlcXVhdGUsIHByaW1hcmlseSByZXByZXNlbnRpbmcgdGhlIHdoaXRlIHBvcHVsYXRpb24sIHdoaWNoIHNrZXdzIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGRpc2Vhc2UncyBwcmV2YWxlbmNlLiBXZSBkaXNjb3ZlcmVkIHRoYXQgaW4gQXNpYW4gY291bnRyaWVzIGxpa2UgVGhhaWxhbmQsIENGIGlzIHVuZGVycmVwcmVzZW50ZWQsIGxlYWRpbmcgdG8gaW5zdWZmaWNpZW50IGFjY2VzcyB0byB0aGVyYXBpZXMgYW5kIG1lZGljYXRpb25zLiA8L3A+XG4gICAgICAgIDxwPlRoaXMgYXdhcmVuZXNzIHNoYXJwZW5lZCBvdXIgZm9jdXMgb24gdGhlIG5lZWQgZm9yIGltcHJvdmVkIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBhbmQgaGlnaGxpZ2h0ZWQgdGhlIG9uZ29pbmcgaXNzdWVzIG9mIHJhY2lzbSBhbmQgZGlzY3JpbWluYXRpb24gd2l0aGluIHNjaWVudGlmaWMgcmVzZWFyY2guIEluIHJlc3BvbnNlLCB3ZSBhcmUgY29tbWl0dGVkIHRvIGVuaGFuY2luZyB0aGUgZGF0YSBsYW5kc2NhcGUgaW4gR2VybWFueSBieSBjcmVhdGluZyA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ291ci1zdXJ2ZXlzLW9uLWN5c3RpYy1maWJyb3Npcy1hbmQtZ2VuZS10aGVyYXB5JywgJy9odW1hbi1wcmFjdGljZXMnKX0+IHN1cnZleXMgPC9hPiBpbiBib3RoIEdlcm1hbiBhbmQgRW5nbGlzaCB0byBnYXRoZXIgYnJvYWRlciBpbnNpZ2h0cyBhbmQgaW5jcmVhc2Ugb3V0cmVhY2guIDwvcD5cbiAgICAgICAgPGZpZ3VyZT4gXG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9qb3NodWEtem9vbS53ZWJwXCIgYWx0PVwiXCIvPiBcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIHguPC9iPiAgRk9UTyBJbnRlcnZpZXdcbiAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgPHA+PHN0cm9uZz5JbmFkZXF1YXRlIENGIHN0YXRpc3RpY3M6PC9zdHJvbmc+IEhpZ2hsaWdodGVkIHRoYXQgY3VycmVudCBDRiBkYXRhIG1haW5seSByZXByZXNlbnRzIHRoZSB3aGl0ZSBwb3B1bGF0aW9uLCBza2V3aW5nIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGRpc2Vhc2VcdTIwMTlzIHRydWUgcHJldmFsZW5jZS48L3A+XG5cbjxwPjxzdHJvbmc+VW5kZXJyZXByZXNlbnRhdGlvbiBpbiBBc2lhOjwvc3Ryb25nPiBSZXZlYWxlZCB0aGF0IENGIGlzIHVuZGVycmVwb3J0ZWQgaW4gQXNpYW4gY291bnRyaWVzIGxpa2UgVGhhaWxhbmQsIGxlYWRpbmcgdG8gbGltaXRlZCBhY2Nlc3MgdG8gdGhlcmFwaWVzIGFuZCBtZWRpY2F0aW9ucy48L3A+XG5cbjxwPjxzdHJvbmc+Rm9jdXMgb24gc2NpZW5jZSBjb21tdW5pY2F0aW9uOjwvc3Ryb25nPiBUaGlzIGF3YXJlbmVzcyBzaGlmdGVkIG91ciBmb2N1cyB0byB0aGUgaW1wb3J0YW5jZSBvZiBpbXByb3Zpbmcgc2NpZW5jZSBjb21tdW5pY2F0aW9uIHRvIGFkZHJlc3MgdGhlc2UgZGlzcGFyaXRpZXMuPC9wPlxuXG48cD48c3Ryb25nPlJhY2lzbSBhbmQgZGlzY3JpbWluYXRpb24gaW4gcmVzZWFyY2g6PC9zdHJvbmc+IEJyb3VnaHQgYXR0ZW50aW9uIHRvIHRoZSBvbmdvaW5nIGlzc3VlcyBvZiByYWNpYWwgYmlhcyBhbmQgZGlzY3JpbWluYXRpb24gd2l0aGluIHNjaWVudGlmaWMgcmVzZWFyY2gsIHByb21wdGluZyB1cyB0byB0YWtlIGFjdGlvbi48L3A+XG5cbjxwPjxzdHJvbmc+Q29tbWl0bWVudCB0byBpbXByb3ZlIGRhdGEgbGFuZHNjYXBlOjwvc3Ryb25nPiBJbiByZXNwb25zZSwgd2UgYXJlIGRldmVsb3BpbmcgYmlsaW5ndWFsIChHZXJtYW4gYW5kIEVuZ2xpc2gpIHN1cnZleXMgdG8gZ2F0aGVyIG1vcmUgaW5jbHVzaXZlIGRhdGEgYW5kIGV4cGFuZCBvdXIgb3V0cmVhY2ggZWZmb3J0cywgZW5zdXJpbmcgYSBicm9hZGVyIHVuZGVyc3RhbmRpbmcgb2YgQ0YgcHJldmFsZW5jZSBhbmQgY2FyZSBuZWVkcy48L3A+XG5cbiAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICApIFxuIH1cbmZ1bmN0aW9uIEFuYWx5c2VXZXN0aG9mZigpe1xuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTtcbiAgIHJldHVybihcbiAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJLYXRyaW4gV2VzdGhvZmYgXHUyMDEzIFBoeXNpb3RoZXJhcGlzdCBhdCBsb2NhbCBjb21tdW5pdHkgXCIgaWQ9XCJ3ZXN0aG9mZmFuYWx5c2VDXCI+XG4gICAgICAgIDxwPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIgKCd3ZXN0aG9mZmludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBLYXRocmluIFdlc3Rob2ZmIGV4cGVydGlzZSA8L2E+ICBpbiBDRiBwaHlzaW90aGVyYXB5IHJlaW5mb3JjZWQgb3VyIGFwcHJvYWNoIHRvIGRldmVsb3AgYW4gaW5oYWxhdGlvbi1iYXNlZCB0aGVyYXB5LCBlc3BlY2lhbGx5IGZvciB5b3VuZyBwYXRpZW50cy4gSGVyIGV4cGVyaWVuY2Ugd2l0aCBjaGlsZHJlbiBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgYSBzaW1wbGUsIGFjY2Vzc2libGUgdHJlYXRtZW50LCBhcyB5b3VuZ2VyIHBhdGllbnRzIG1heSBzdHJ1Z2dsZSB3aXRoIHJlc3BvbnNpYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBpbiB0aGVyYXB5LiBUaGlzIHZhbGlkYXRlZCBvdXIgZGVjaXNpb24gdG8gZm9jdXMgb24gaW5oYWxhdGlvbiBkZWxpdmVyeSBmb3IgZWFzZSBvZiB1c2UuIDwvcD5cbiAgICAgICAgPHA+QWRkaXRpb25hbGx5LCB3ZSByZWNvZ25pemVkIHRocm91Z2ggaGVyIGluc2lnaHRzIHRoYXQgZ2VuZSB0aGVyYXB5LCB3aGlsZSBpbXBhY3RmdWwsIGlzIG5vdCBhIGNvbXBsZXRlIHNvbHV0aW9uLiBQaHlzaW90aGVyYXB5IHJlbWFpbnMgY3J1Y2lhbCBpbiBDRiBjYXJlLCBhbmQgb3VyIGFwcHJvYWNoIG5vdyBpbnRlZ3JhdGVzIHRoaXMgdW5kZXJzdGFuZGluZyBpbnRvIGEgbW9yZSBob2xpc3RpYyB0cmVhdG1lbnQgcGxhbi4gPC9wPlxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2Jlc3VjaC13ZXN0aG9mZi9tYXR0ZS53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6XCI1MCVcIiwgd2lkdGg6XCI1MCVcIn19Lz48L2Rpdj5cbiAgICAgICAgPHA+PHN0cm9uZz5FeHBlcnRpc2UgaW4gQ0YgcGh5c2lvdGhlcmFweTo8L3N0cm9uZz4gUmVpbmZvcmNlZCB0aGUgaW1wb3J0YW5jZSBvZiBkZXZlbG9waW5nIGFuIGluaGFsYXRpb24tYmFzZWQgdGhlcmFweSwgZXNwZWNpYWxseSBmb3IgeW91bmcgQ0YgcGF0aWVudHMuPC9wPlxuXG48cD48c3Ryb25nPkZvY3VzIG9uIGFjY2Vzc2liaWxpdHk6PC9zdHJvbmc+IEhlciBleHBlcmllbmNlIHdpdGggY2hpbGRyZW4gaGlnaGxpZ2h0ZWQgdGhlIG5lZWQgZm9yIGEgc2ltcGxlLCBlYXN5LXRvLXVzZSB0cmVhdG1lbnQsIHZhbGlkYXRpbmcgb3VyIGRlY2lzaW9uIHRvIGZvY3VzIG9uIGluaGFsYXRpb24gZGVsaXZlcnkuPC9wPlxuXG48cD48c3Ryb25nPlRoZXJhcHkgYWRoZXJlbmNlOjwvc3Ryb25nPiBBZGRyZXNzZWQgdGhlIGNoYWxsZW5nZXMgeW91bmdlciBwYXRpZW50cyBmYWNlIHdpdGggcmVzcG9uc2liaWxpdHkgYW5kIGNvbnNpc3RlbmN5IGluIHRoZXJhcHksIGluZmx1ZW5jaW5nIG91ciBkZXNpZ24gZm9yIGEgbW9yZSBhY2Nlc3NpYmxlIHNvbHV0aW9uLjwvcD5cblxuPHA+PHN0cm9uZz5HZW5lIHRoZXJhcHkgbGltaXRhdGlvbnM6PC9zdHJvbmc+IEhlciBpbnNpZ2h0cyBoZWxwZWQgdXMgcmVhbGl6ZSB0aGF0IHdoaWxlIGdlbmUgdGhlcmFweSBpcyBpbXBhY3RmdWwsIGl0IGFsb25lIGlzIG5vdCBlbm91Z2guPC9wPlxuXG48cD48c3Ryb25nPkhvbGlzdGljIGFwcHJvYWNoOjwvc3Ryb25nPiBJbnRlZ3JhdGVkIHBoeXNpb3RoZXJhcHkgaW50byBvdXIgdHJlYXRtZW50IHBsYW4sIGVuc3VyaW5nIGEgbW9yZSBjb21wcmVoZW5zaXZlIGFuZCBwYXRpZW50LWNlbnRlcmVkIGFwcHJvYWNoIHRvIENGIGNhcmUuPC9wPlxuXG4gICAgPC9Db2xsYXBzaWJsZT5cbiAgICkgXG59XG5mdW5jdGlvbiBBYWx5c2VPbGFyaXUoKXtcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gICByZXR1cm4oXG4gICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIE9sYXJpdSBcdTIwMTMgUGh5c2ljaWFuIGFuZCBDbGluaWNhbCBDRiBFeHBlcnQgXCIgaWQ9XCJvbGFyaXVhbmFseXNlQ1wiPlxuICAgICAgICA8cD5Qcm9mLiBPbGFyaW91J3MgY2xpbmljYWwgaW5zaWdodHMgc2hhcGVkIG91ciBwcm9qZWN0IGJ5IGVtcGhhc2l6aW5nIHRoZSBjb21wbGV4aXRpZXMgb2YgQ0YgdHJlYXRtZW50IGFuZCB0aGUgZW1vdGlvbmFsIGJ1cmRlbiBvbiBwYXRpZW50cyBhbmQgZmFtaWxpZXMuIEhpcyBmb2N1cyBvbiBlYXJseSBkaWFnbm9zaXMsIGluZmVjdGlvbiByaXNrcywgYW5kIHBzeWNob3NvY2lhbCBpbXBhY3RzIGxlZCB1cyB0byBkZXNpZ24gYSBzb2x1dGlvbiB0aGF0IHJlZHVjZXMgdGhlIGxvbmctdGVybSBjYXJlIGJ1cmRlbjwvcD5cbiAgICAgICAgPHA+Rm9sbG93aW5nIGhpcyBhZHZpY2UsIHdlIGNvbnN1bHRlZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiICgncHN5Y2hvbCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBwc3ljaG9sb2dpc3RzIDwvYT4gdG8gaW50ZWdyYXRlIG1lbnRhbCBoZWFsdGggY29uc2lkZXJhdGlvbnMgYW5kIHRhaWxvcmVkIG91ciB0aGVyYXB5IHRvIGFkZHJlc3MgZGlmZmVyZW50IGRpc2Vhc2Ugc2V2ZXJpdGllcy4gUHJvZi4gT2xhcml1IGFsc28gaGlnaGxpZ2h0ZWQgcmFjaWFsIGFuZCBnbG9iYWwgZGlzcGFyaXRpZXMgaW4gQ0YgY2FyZSwgcHJvbXB0aW5nIHVzIHRvIGV4cGxvcmUgdGhlc2UgaXNzdWVzIHRocm91Z2ggZnVydGhlciByZXNlYXJjaCBhbmQgaW50ZXJ2aWV3cy4gPC9wPlxuICAgICAgICA8cD4gPC9wPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9vbi1vdXItd2F5LXRvLWludGVydmlldy1wc3ljaG9sb2dpc3RzLndlYnBcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgPGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRlcnZpZXcgd2l0aCBEci4gQ3Jpc3RpYW4tR2FicmllbCBPbGFyaXUgKDIwMjQpIFtHZXJtYW5dXCIgaGVpZ2h0PVwiMzEwcHhcIiB3aWR0aD1cIjUwMHB4XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMGVhNzZiOWMtOWEwZS00ZjU4LTgyMzAtMzFhYjZiMGUwOGQ5XCIgc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+IFxuICAgICAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cD5IaXMgZ3VpZGFuY2Ugb24gYmFsYW5jaW5nIHRyZWF0bWVudCBlZmZlY3RpdmVuZXNzIHdpdGggY29zdCBhbmQgb3Zlcm1lZGljYXRpb24gY29uY2VybnMgZW5zdXJlZCBvdXIgcHJvamVjdCByZW1haW5lZCBwYXRpZW50LWNlbnRlcmVkIGFuZCBwcmFjdGljYWwuIFdlIGFsc28gZXhwYW5kZWQgb3VyIG91dHJlYWNoIGVmZm9ydHMsIHJhaXNpbmcgQ0YgYXdhcmVuZXNzIGFuZCBjb2xsZWN0aW5nIHB1YmxpYyBkYXRhIHRvIGFsaWduIG91ciBwcm9qZWN0IHdpdGggY29tbXVuaXR5IG5lZWRzLiA8L3A+IFxuICAgICAgICA8cD48c3Ryb25nPkNvbXBsZXhpdGllcyBvZiBDRiB0cmVhdG1lbnQ6PC9zdHJvbmc+IEVtcGhhc2l6ZWQgdGhlIG11bHRpZmFjZXRlZCBuYXR1cmUgb2YgQ0YgY2FyZSwgaW5jbHVkaW5nIHRoZSBlbW90aW9uYWwgYnVyZGVuIG9uIHBhdGllbnRzIGFuZCBmYW1pbGllcy48L3A+XG5cbjxwPjxzdHJvbmc+RWFybHkgZGlhZ25vc2lzICYgaW5mZWN0aW9uIHJpc2tzOjwvc3Ryb25nPiBGb2N1c2VkIG9uIHRoZSBpbXBvcnRhbmNlIG9mIGVhcmx5IGRldGVjdGlvbiBhbmQgbWFuYWdpbmcgaW5mZWN0aW9uIHJpc2tzLCB3aGljaCBzaGFwZWQgb3VyIHNvbHV0aW9uIHRvIHJlZHVjZSB0aGUgbG9uZy10ZXJtIGNhcmUgYnVyZGVuLjwvcD5cblxuPHA+PHN0cm9uZz5NZW50YWwgaGVhbHRoIGludGVncmF0aW9uOjwvc3Ryb25nPiBSZWNvbW1lbmRlZCBjb25zdWx0aW5nIHBzeWNob2xvZ2lzdHMsIGxlYWRpbmcgdXMgdG8gaW5jb3Jwb3JhdGUgbWVudGFsIGhlYWx0aCBjb25zaWRlcmF0aW9ucyBpbiBvdXIgdGhlcmFweSBhbmQgZGVzaWduIGl0IHRvIGFkZHJlc3MgdmFyeWluZyBkaXNlYXNlIHNldmVyaXRpZXMuPC9wPlxuXG48cD48c3Ryb25nPlJhY2lhbCBhbmQgZ2xvYmFsIGRpc3Bhcml0aWVzOjwvc3Ryb25nPiBIaWdobGlnaHRlZCBpbmVxdWl0aWVzIGluIENGIGNhcmUgYWNyb3NzIGRpZmZlcmVudCBwb3B1bGF0aW9ucywgcHJvbXB0aW5nIHVzIHRvIGV4cGxvcmUgdGhlc2UgaXNzdWVzIHRocm91Z2ggZnVydGhlciByZXNlYXJjaCBhbmQgaW50ZXJ2aWV3cy48L3A+XG5cbjxwPjxzdHJvbmc+QmFsYW5jZSBiZXR3ZWVuIGVmZmVjdGl2ZW5lc3MsIGNvc3QsIGFuZCBvdmVybWVkaWNhdGlvbjo8L3N0cm9uZz4gR3VpZGVkIHVzIGluIGNyZWF0aW5nIGEgdHJlYXRtZW50IHRoYXQgYmFsYW5jZXMgZWZmaWNhY3kgd2l0aCBwcmFjdGljYWwgY29uc2lkZXJhdGlvbnMgbGlrZSBjb3N0IGFuZCBhdm9pZGluZyBvdmVybWVkaWNhdGlvbi48L3A+XG5cbjxwPjxzdHJvbmc+UGF0aWVudC1jZW50ZXJlZCBmb2N1czo8L3N0cm9uZz4gSGlzIGZlZWRiYWNrIGVuc3VyZWQgdGhhdCBvdXIgcHJvamVjdCByZW1haW5lZCBncm91bmRlZCBpbiByZWFsLXdvcmxkIHBhdGllbnQgbmVlZHMsIG1ha2luZyBpdCBib3RoIHByYWN0aWNhbCBhbmQgYWNjZXNzaWJsZS48L3A+XG5cbjxwPjxzdHJvbmc+RXhwYW5kZWQgb3V0cmVhY2ggZWZmb3J0czo8L3N0cm9uZz4gRW5jb3VyYWdlZCB1cyB0byByYWlzZSBhd2FyZW5lc3MgYW5kIGNvbGxlY3QgcHVibGljIGRhdGEsIGhlbHBpbmcgYWxpZ24gb3VyIHByb2plY3Qgd2l0aCB0aGUgYnJvYWRlciBDRiBjb21tdW5pdHlcdTIwMTlzIG5lZWRzLjwvcD5cblxuICAgIDwvQ29sbGFwc2libGU+XG4gICApIFxufVxuXG5mdW5jdGlvbiBBbmFseXNlTWF4KCl7XG4gICAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgIHJldHVybihcbiAgICAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiTWF4IEJlY2ttYW5uIFx1MjAxMyBDRiBQYXRpZW50IGFuZCBmZWxsb3cgc3R1ZGVudFwiIGlkPVwibWF4YW5hbHlzZUNcIj5cbiAgICAgICAgICAgIDxwPk1heCdzIGlucHV0IGFzIGEgY3lzdGljIGZpYnJvc2lzIChDRikgcGF0aWVudCBkaXJlY3RseSBpbmZsdWVuY2VkIHNldmVyYWwga2V5IGFzcGVjdHMgb2Ygb3VyIHByb2plY3QuIEFmdGVyIGxlYXJuaW5nIGFib3V0IHRoZSBkYWlseSBjaGFsbGVuZ2VzIG9mIGxpdmluZyB3aXRoIENGLCB3ZSBhZGFwdGVkIG91ciBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggdG8gdGFyZ2V0IHRoZSBsdW5ncywgYWxpZ25pbmcgb3VyIHRyZWF0bWVudCB3aXRoIHBhdGllbnQgbmVlZHMuIEhpcyBpbnNpZ2h0cyBvbiB0aGUgc2hvcnRjb21pbmdzIG9mIGV4aXN0aW5nIHRoZXJhcGllcyBzdHJlbmd0aGVuZWQgb3VyIGZvY3VzIG9uIGRldmVsb3BpbmcgYSBtb3JlIGVmZmVjdGl2ZSBzb2x1dGlvbi48L3A+XG4gICAgICAgICAgICA8cD5Gb2xsb3dpbmcgTWF4J3MgZmVlZGJhY2ssIHdlIGltcGxlbWVudGVkIGNoYW5nZXMgdG8gb3VyIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIgKCdQYXRpZW50IE1hdHRlcnNIJywgJy9jb250cmlidXRpb24nKX0+IGh5Z2llbmUgcGxhbjwvYT4sIGVuc3VyaW5nIGl0IG1lZXRzIHRoZSBuZWVkcyBvZiBpbW11bm9jb21wcm9taXNlZCBpbmRpdmlkdWFscyB3aGljaCB3ZSBsYXRlciBwcmVzZW50ZWQgdG8gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYiAoJ2pvaGFubmZ1bmtlJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1yLiBKb2hhbm5mdW5rZTwvYT4sIGNvbnRhY3QgcGVyc29uIGZvciBzdHVkZW50cyB3aXRoIGRpc2FiaWxpdGllcyBhbmQgaW1wYWlybWVudHMgYXQgdGhlIHVuaXZlcnNpdHkgb2YgYmllbGVmZWxkLCBhbmQgY2hlY2tlZCBpdHMgZmVhc2liaWxpdHkuIE1heFx1MjAxOXMgcGVyc3BlY3RpdmUgYWxzbyBzaGFwZWQgdGhlIGNvbnRlbnQgb2Ygb3VyIG91dHJlYWNoIG1hdGVyaWFscywgaGVscGluZyB1cyBwb3J0cmF5IENGIGluIGEgbW9yZSByZWFsaXN0aWMgYW5kIHJlc3BlY3RmdWwgd2F5IGR1cmluZyB0aGUgd2hvbGUgcHJvamVjdC4gPC9wPlxuICAgICAgICAgICAgPHA+QWRkaXRpb25hbGx5LCBNYXggY29udHJpYnV0ZWQgdG8gdGhlIHByb2plY3QgYnkgZG9uYXRpbmcgY2VsbHMgZm9yIG91ciBleHBlcmltZW50cywgd2hpY2ggYWxsb3dlZCB1cyB0byB0ZXN0IG91ciBtb2RlbCBzeXN0ZW1zIGVmZmVjdGl2ZWx5LiBPdXIgb25nb2luZyBjb21tdW5pY2F0aW9uIHdpdGggaGltIGhhcyBlbnN1cmVkIHRoYXQgd2Ugc3RheSBwYXRpZW50LWZvY3VzZWQgdGhyb3VnaG91dCwgY29udGludWFsbHkgcmVmaW5pbmcgb3VyIGFwcHJvYWNoIGJhc2VkIG9uIGhpcyBleHBlcmllbmNlcy4gPC9wPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj4gXG4gICAgXHQgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IFxuICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9tYXgtemVsbHNwZW5kZS53ZWJwXCIgYWx0PVwiQ2VsbCBEb25hdGlvblwiLz4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSAxLiA8L2I+ICBDZWxsIGRvbmF0aW9uIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPiBcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuICAgIFx0ICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gIFxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpZnJhbWUgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy93LzNLTk1TdmlUUnZhS3VOelFqeERaN1JcIiB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRlcnZpZXcgd2l0aCBNYXggQmVja21hbm4gKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTAwcHhcIiBoZWlnaHQ9XCIzMTVcIi8+IFxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPjxzdHJvbmc+SW52YWx1YWJsZSBmaXJzdC1oYW5kIGluc2lnaHRzOjwvc3Ryb25nPiBQcm92aWRlZCBkaXJlY3QgZXhwZXJpZW5jZSBvZiBsaXZpbmcgd2l0aCBDRiwgc2hhcGluZyBvdXIgcHJvamVjdC48L3A+XG5cbjxwPjxzdHJvbmc+SHlnaWVuZSBhbmQgbWVkaWNhbCBuZWVkczo8L3N0cm9uZz4gSGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29uc3RhbnQgaHlnaWVuZSwgZnJlcXVlbnQgbWVkaWNhbCBjaGVja3VwcywgYW5kIHRoZSB2YXJpYWJpbGl0eSBpbiBDRiBzeW1wdG9tcy48L3A+XG5cbjxwPjxzdHJvbmc+TmVlZCBmb3IgZmxleGlibGUgc29sdXRpb25zOjwvc3Ryb25nPiBTdHJlc3NlZCB0aGUgbmVlZCBmb3IgcGF0aWVudC1jZW50ZXJlZCwgYWRhcHRhYmxlIHRoZXJhcGllcy48L3A+XG5cbjxwPjxzdHJvbmc+R2VuZSB0aGVyYXB5IGZvY3VzOjwvc3Ryb25nPiBTdXBwb3J0ZWQgb3VyIGZvY3VzIG9uIGdlbmUgdGhlcmFweSB0YXJnZXRpbmcgdGhlIGx1bmdzIGR1ZSB0byBjdXJyZW50IHRyZWF0bWVudCBpbmFkZXF1YWNpZXMuPC9wPlxuXG48cD48c3Ryb25nPk91dHJlYWNoIGluZmx1ZW5jZTo8L3N0cm9uZz4gQ29udGludWFsbHkgcHJvdmlkZWQgZmVlZGJhY2sgb24gaG93IENGIGlzIHBvcnRyYXllZCBpbiBvdXRyZWFjaCBtYXRlcmlhbHMsIGluZmx1ZW5jaW5nIG91ciBoeWdpZW5lIHBsYW4gYW5kIHByZXNlbnRhdGlvbiB2aWRlby48L3A+XG5cbjxwPjxzdHJvbmc+RGVlcGVuZWQgZW1vdGlvbmFsIHVuZGVyc3RhbmRpbmc6PC9zdHJvbmc+IEhlbHBlZCB1cyBkZXZlbG9wIGVtb3Rpb25hbCBpbnRlbGxpZ2VuY2UgcmVnYXJkaW5nIHRoZSBidXJkZW5zIENGIHBhdGllbnRzIGZhY2UsIGVuaGFuY2luZyBvdXIgc2NpZW5jZSBjb21tdW5pY2F0aW9uIGVmZm9ydHMuPC9wPlxuXG48cD48c3Ryb25nPlRoZXJhcHkgYWxpZ25tZW50Ojwvc3Ryb25nPiBHdWlkZWQgdXMgaW4gZm9jdXNpbmcgb3VyIHRoZXJhcHkgb24gc3BlY2lmaWMgQ0YgbXV0YXRpb25zLCBlbnN1cmluZyBhIGh1bWFuLWNlbnRlcmVkIGFwcHJvYWNoLjwvcD5cblxuPHA+PHN0cm9uZz5Db21tdW5pdHkgYWNjZXNzOjwvc3Ryb25nPiBQcm92aWRlZCBhY2Nlc3MgdG8gdmFyaW91cyBDRiBjb21tdW5pdGllcywgaW5mbHVlbmNpbmcgdGhlIGRpcmVjdGlvbiBvZiBvdXIgcHJvamVjdC48L3A+XG5cbjxwPjxzdHJvbmc+Q2VsbCBkb25hdGlvbjo8L3N0cm9uZz4gRG9uYXRlZCBjZWxscyBmb3IgY3J1Y2lhbCBtb2RlbCBleHBlcmltZW50czsgd2Ugc3VjY2Vzc2Z1bGx5IGN1bHR1cmVkIHRoZXNlIGNlbGxzIGZvciB0ZXN0aW5nLjwvcD5cblxuPHA+PHN0cm9uZz5PbmdvaW5nIGNvbGxhYm9yYXRpb246PC9zdHJvbmc+IFJlZ3VsYXIgZmVlZGJhY2ssIGluY2x1ZGluZyBvbiBhc3BlY3RzIGxpa2UgaHlnaWVuZSBwcm90b2NvbHMsIGVuc3VyaW5nIHRoZSBwcm9qZWN0IHJlbWFpbnMgZ3JvdW5kZWQgaW4gcmVhbC13b3JsZCBwYXRpZW50IG5lZWRzLjwvcD5cblxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIFxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgIClcbn0iLCAiXG5pbXBvcnQgKiBhcyBHcmFwaCBmcm9tICcuLi8uLi9jb21wb25lbnRzL0dyYXBoJztcbmltcG9ydCB7IEg0LCBINSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3MnO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSAnLi4vLi4vY29tcG9uZW50cy9wcmVjeXNlJztcbmltcG9ydCB7IEhQY29uVGFicyB9IGZyb20gJy4vQ29uY2xpc3Vpbic7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gSFBGZWVkYmFjaygpe1xuICAgIGNvbnN0IHtnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpOyBcbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8cD5UaHJvdWdoIG91ciBwcm9qZWN0LCB0aGUgaW5zaWdodHMgYW5kIGZlZWRiYWNrIGZyb20gdmFyaW91cyBzdGFrZWhvbGRlcnMgYW5kIGV4cGVydHMgcGxheWVkIGEgY3J1Y2lhbCByb2xlIGluIHNoYXBpbmcgYW5kIHJlZmluaW5nIG91ciBhcHByb2FjaC4gV2UgYWN0aXZlbHkgaW50ZWdyYXRlZCB0aGVpciBpbnB1dCBpbnRvIHRoZSBkZXNpZ24sIGV4ZWN1dGlvbiwgYW5kIHB1YmxpYyBlbmdhZ2VtZW50IGFzcGVjdHMgb2Ygb3VyIHdvcmssIGVuc3VyaW5nIGEgaHVtYW4tY2VudGVyZWQsIHNjaWVudGlmaWNhbGx5IHNvdW5kIHNvbHV0aW9uLiBCZWxvdywgd2UgaGlnaGxpZ2h0IGtleSBjb250cmlidXRvcnMgYW5kIGhvdyB0aGVpciBmZWVkYmFjayBpbXBhY3RlZCB0aGUgcHJvamVjdCdzIGRldmVsb3BtZW50IGFjcm9zcyBtdWx0aXBsZSBwaGFzZXMuIDwvcD5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPEg0IHRleHQ9XCJPdXIgc3VydmV5cyBvbiBjeXN0aWMgZmlicm9zaXMgYW5kIGdlbmUgdGhlcmFweVwiPjwvSDQ+XG4gICAgICAgICAgICA8cD5Gcm9tIG91ciBvdXRyZWFjaCBlZmZvcnRzLCB3ZSBsZWFybmVkIHRoYXQgbWFueSBwZW9wbGUgbGFjayBrbm93bGVkZ2UgYWJvdXQgY3lzdGljIGZpYnJvc2lzIGFuZCBkZXNpcmUgbW9yZSBlZHVjYXRpb24gb24gdGhlIHN1YmplY3QuIFRoZSBzYW1lIGFwcGxpZXMgdG8gZ2VuZSB0aGVyYXB5LCB3aXRoIG1vc3QgaW5kaXZpZHVhbHMgZXhwcmVzc2luZyBvcGVubmVzcyB0byB0cmVhdG1lbnQgb3B0aW9ucywgd2hpY2ggcmVpbmZvcmNlcyBvdXIgY29tbWl0bWVudCB0byBwdXJzdWluZyB0aGlzIGFwcHJvYWNoLiA8L3A+XG4gICAgICAgICAgICA8cD5Ib3dldmVyLCB3ZSByZWNvZ25pemUgdGhlIGltcG9ydGFuY2Ugb2YgaGFuZGxpbmcgdGhlIHB1YmxpYydzIHRydXN0IGFuZCBsYWNrIG9mIGtub3dsZWRnZSByZXNwb25zaWJseS4gV2UgYWltIHRvIGVkdWNhdGUgdGhlIGNvbW11bml0eSBhYm91dCBzYWZldHkgYW5kIGV0aGljYWwgY29uc2lkZXJhdGlvbnMgc3Vycm91bmRpbmcgZ2VuZSB0aGVyYXB5LiA8L3A+XG4gICAgICAgICAgICA8cD5JbiByZXNwb25zZSwgd2UgaGF2ZSBkZWNpZGVkIHRvIGltcGxlbWVudCBmZWVkYmFjayBieSBjcmVhdGluZyBpbmZvcm1hdGl2ZSBtYXRlcmlhbHMgc3VjaCBhcyBmbHllcnMgYW5kIHV0aWxpemluZyBwbGF0Zm9ybXMgbGlrZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOiAnbXVrb21vdmUnLCBzY3JvbGxUb0lkOiBcImNmLW1vbnRoXCIgLCBwYXRoOiAnL2h1bWFuLXByYWN0aWNlcyd9KX0+bXVrb01PVkU8L2E+LCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOiAndGV1dG9ydWZ0Jywgc2Nyb2xsVG9JZDogXCJ0ZXVyb3J1ZnQtaGVhZGluZ1wiICwgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnfSl9Plx1MjAxRFRldXRvIHJ1ZnQhXHUyMDFEPC9hPiwgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDogJ2FrYWRlbWllJywgc2Nyb2xsVG9JZDogXCJzdHVkZW50LWFjYWRlbXktaGVhZGluZ1wiICwgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnfSl9PlNjaFx1MDBGQ2xlcklubmVuYWthZGVtaWU8L2E+LCBhbmQgPGEgaHJlZj0naHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9pZ2VtLmJpZWxlZmVsZC8/aGw9ZGUnPnNvY2lhbCBtZWRpYTwvYT4gdG8gcmFpc2UgYXdhcmVuZXNzIGFuZCBwcm92aWRlIGVkdWNhdGlvbi4gPC9wPlxuICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHguPC9iPiBDYXB0aW9uIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHguPC9iPiBDYXB0aW9uIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIHguPC9iPiBDYXB0aW9uIDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPHA+PHN0cm9uZz5MYWNrIG9mIGtub3dsZWRnZSBhYm91dCBDRjo8L3N0cm9uZz4gTWFueSBwZW9wbGUgYXJlIHVuZmFtaWxpYXIgd2l0aCBjeXN0aWMgZmlicm9zaXMgYW5kIGV4cHJlc3NlZCBhIG5lZWQgZm9yIG1vcmUgZWR1Y2F0aW9uIG9uIHRoZSBzdWJqZWN0LjwvcD5cblxuPHA+PHN0cm9uZz5HZW5lIHRoZXJhcHkgb3Blbm5lc3M6PC9zdHJvbmc+IE1vc3QgaW5kaXZpZHVhbHMgc2hvd2VkIG9wZW5uZXNzIHRvIGdlbmUgdGhlcmFweSB0cmVhdG1lbnRzLCByZWluZm9yY2luZyBvdXIgY29tbWl0bWVudCB0byBwdXJzdWluZyB0aGlzIHRoZXJhcGV1dGljIGFwcHJvYWNoLjwvcD5cblxuPHA+PHN0cm9uZz5CdWlsZGluZyBwdWJsaWMgdHJ1c3Q6PC9zdHJvbmc+IFJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgaGFuZGxpbmcgdGhlIHB1YmxpYydzIHRydXN0IGFuZCBhZGRyZXNzaW5nIHRoZSBrbm93bGVkZ2UgZ2FwIGFib3V0IGdlbmUgdGhlcmFweSBpbiBhIHJlc3BvbnNpYmxlIGFuZCB0cmFuc3BhcmVudCBtYW5uZXIuPC9wPlxuXG48cD48c3Ryb25nPkVkdWNhdGlvbiBhbmQgZXRoaWNhbCBjb25zaWRlcmF0aW9uczo8L3N0cm9uZz4gQ29tbWl0dGVkIHRvIGVkdWNhdGluZyB0aGUgcHVibGljIG9uIHNhZmV0eSBhbmQgZXRoaWNhbCBhc3BlY3RzIG9mIGdlbmUgdGhlcmFweSB0byBmb3N0ZXIgdW5kZXJzdGFuZGluZyBhbmQgdHJ1c3QuPC9wPlxuXG48cD48c3Ryb25nPkltcGxlbWVudGF0aW9uIG9mIGZlZWRiYWNrOjwvc3Ryb25nPiBDcmVhdGVkIGluZm9ybWF0aXZlIG1hdGVyaWFscyAoZmx5ZXJzKSBhbmQgZXhwYW5kZWQgb3V0cmVhY2ggdGhyb3VnaCBwbGF0Zm9ybXMgbGlrZSBNdWtvIE1vdmUsIFRldXRvIHJ1ZnQsIFNjaFx1MDBGQ2xlcklubmVuYWthZGVtaWUsIGFuZCBzb2NpYWwgbWVkaWEgdG8gaW5jcmVhc2UgYXdhcmVuZXNzIGFuZCBwcm92aWRlIGVkdWNhdGlvbi48L3A+XG5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiY29sbGFwc2libGUxXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiRnVsbCByZXN1bHRzIG9mIG91ciBzdXJ2ZXlzXCI+XG4gICAgICAgICAgICAgICAgPHA+IFdlIGFyZSBwcm91ZCBvZiBvdXIgc3VydmV5cyBvbiBnZW5lIHRoZXJhcHkgYW5kIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLCB3aGljaCBleHBsb3JlIGtub3dsZWRnZSBhYm91dCB0aGUgZGlzZWFzZSBhbmQgd2lsbGluZ25lc3MgdG8gZW1icmFjZSBnZW5lIFxuICAgICAgICAgICAgICAgICAgICB0aGVyYXB5IGFzIGEgcG90ZW50aWFsIHRyZWF0bWVudC4gU2luY2Ugd2Ugd2FudGVkIHRvIGRpZmZlcmVudGlhdGUgYmV0d2VlbiB0aGUgZ2VuZXJhbCBwdWJsaWMgYW5kIGFmZmVjdGVkIENGIHBhdGllbnRzLCB3ZSBjcmVhdGVkIHR3byBkaWZmZXJlbnQgXG4gICAgICAgICAgICAgICAgICAgIHN1cnZleXMuIDE4NyBwZW9wbGUgcGFydGlwaXBhdGVkIGluIHRoZSBzdXJ2ZXkgZm9yIHRoZSBnZW5lcmFsIHB1YmxpYyBhbmQgMTg1IHBlb3BsZSBwYXJ0aWNpcGF0ZWQgaW4gdGhlIHN1cnZleSBmb3IgcGF0aWVudHMgYW5kIG5leHQgb2Yga2luLjwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgZ3JhcGhzJyA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEdyYXBoLkhvd09mdGVuVHJlYXRtZW50YXRpZW50cy8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEdyYXBoLk9wZW5Ub0dlbmVUaGVyYXB5YXRpZW50cy8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEdyYXBoLk1vcmVJbmZvT25UaGVyYXB5Qm90aC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIG1ham9yaXR5IG9mIHJlc3BvbmRlbnRzICg2Mi43MCUpIGluZGljYXRlZCB0aGF0IHRoZXkgb3IgdGhlaXIgcmVsYXRpdmUgcmVxdWlyZSBtZWRpY2FsIHRyZWF0bWVudCBvciB0aGVyYXB5IGRhaWx5LiBXZWVrbHkgdHJlYXRtZW50IHdhcyBuZWNlc3NhcnkgZm9yIDE0LjU5JSwgd2hpbGUgOS43MyUgbmVlZGVkIHRoZXJhcHkgc2V2ZXJhbCB0aW1lcyBwZXIgd2Vlay4gT25seSA2LjQ5JSByZXBvcnRlZCBuZWVkaW5nIHRyZWF0bWVudCBlaXRoZXIgbW9udGhseSBvciByYXJlbHkuIFRoZSBoaWdoIGZyZXF1ZW5jeSBvZiBkYWlseSB0cmVhdG1lbnRzIGhpZ2hsaWdodHMgdGhlIGhlYXZ5IGJ1cmRlbiBvZiBtYW5hZ2luZyBjeXN0aWMgZmlicm9zaXMgYW5kIHJlaW5mb3JjZXMgdGhlIHBvdGVudGlhbCBhcHBlYWwgb2YgZ2VuZSB0aGVyYXB5LCB3aGljaCBjb3VsZCByZWR1Y2UgdGhlIG5lZWQgZm9yIGNvbnN0YW50IG1lZGljYWwgaW50ZXJ2ZW50aW9uLiA8L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gICAgXG4gICAgICAgICAgICAgICAgICAgIDxwPkEgc2lnbmlmaWNhbnQgbWFqb3JpdHksIDc4LjcyJSwgaW5kaWNhdGVkIHRoYXQgdGhleSB3b3VsZCBiZSBvcGVuIHRvIGdlbmUgdGhlcmFweSBpZiBpdCBzaWduaWZpY2FudGx5IGltcHJvdmVkIHN5bXB0b21zLCB3aGlsZSBvbmx5IDEuNDIlIHNhaWQgbm8uIFRoaXMgb3ZlcndoZWxtaW5nIHN1cHBvcnQgYWxpZ25zIHdpdGggdGhlIGhvcGUgcGF0aWVudHMgaGF2ZSBmb3IgbGVzcyBpbnZhc2l2ZSBhbmQgbW9yZSBlZmZlY3RpdmUgdHJlYXRtZW50cy4gVGhpcyBhbHNvIHJlZmxlY3RzIHRoZSBwb3NzaWJpbGl0eSBvZiBnZW5lIHRoZXJhcHkgYmVjb21pbmcgYSBjZW50cmFsIHRyZWF0bWVudCBtZXRob2QsIGVzcGVjaWFsbHkgZ2l2ZW4gdGhlIGhlYXZ5IHRoZXJhcGV1dGljIGxvYWQgQ0YgcGF0aWVudHMgYWxyZWFkeSBjYXJyeS48L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXG4gICAgICAgICAgICAgICAgICAgIDxwPkEgdmFzdCBtYWpvcml0eSwgOTMuNDglLCBleHByZXNzZWQgaW50ZXJlc3QgaW4gbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBnZW5lIHRoZXJhcHkuIFRoaXMgbWlycm9ycyB0aGUgZ2VuZXJhbCBwdWJsaWNcdTIwMTlzIGRlc2lyZSBmb3IgZnVydGhlciBlZHVjYXRpb24gYW5kIHN1Z2dlc3RzIHRoYXQgd2hpbGUgdGhlcmUgaXMgc3Ryb25nIHN1cHBvcnQgZm9yIGdlbmUgdGhlcmFweSwgcGVvcGxlIHN0aWxsIGZlZWwgdGhleSBsYWNrIHN1ZmZpY2llbnQga25vd2xlZGdlIHRvIG1ha2UgZnVsbHkgaW5mb3JtZWQgZGVjaXNpb25zLiBQYXRpZW50cyBlc3BlY2lhbGx5IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2Ygc2FmZXR5IGFuZCBsb25nLXRlcm0gZWZmaWNhY3ksIGFyZWFzIHRoYXQgc2hvdWxkIGJlIGZvY2FsIHBvaW50cyBpbiBmdXR1cmUgY29tbXVuaWNhdGlvbnMuIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkNvbmNsdWRpbmcgdGhvdWdodHMgXCI+PC9INT5cbiAgICAgICAgICAgICAgICA8cD5UaGUgc3VydmV5cyB3aXRoIGJvdGggdGhlIGdlbmVyYWwgcHVibGljIGFuZCBDRiBwYXRpZW50cyBzaG93IHByb21pc2luZyBvcGVubmVzcyB0b3dhcmRzIGdlbmUgdGhlcmFweSwgdGhvdWdoIGNvbmNlcm5zIGFib3V0IHNhZmV0eSBhbmQgbG9uZy10ZXJtIGVmZmVjdHMgcmVtYWluLiBFbW90aW9uYWwgc3RyZXNzIHdhcyBoaWdobGlnaHRlZCBhcyBhIGdyZWF0ZXIgYnVyZGVuIHRoYW4gcGh5c2ljYWwgc3ltcHRvbXMsIHJlaW5mb3JjaW5nIHRoZSBhcHBlYWwgb2YgZ2VuZSB0aGVyYXB5IHRvIHJlZHVjZSBib3RoIHBoeXNpY2FsIGFuZCBlbW90aW9uYWwgY2hhbGxlbmdlcy4gTW9zdCBwYXRpZW50cyByZXF1aXJlIGRhaWx5IG9yIGZyZXF1ZW50IHRoZXJhcGllcyBsaWtlIG1lZGljYXRpb24sIHBoeXNpb3RoZXJhcHksIGFuZCBpbmhhbGF0aW9uLCBtYWtpbmcgYSBsZXNzIGZyZXF1ZW50IG9yIGV2ZW4gb25lLXRpbWUgZ2VuZSB0aGVyYXB5LCBhcyBwcm9wb3NlZCBpbiBvdXIgcmVzZWFyY2gsIGhpZ2hseSBhdHRyYWN0aXZlLiBQYXJ0aWNpcGFudHMgYWRkZWQgY29tbWVudHMgc3VjaCBhcyA8c3Ryb25nPlx1MjAxQ1RoZSBkcmVhbSBvZiBoZWFsaW5nIHN0aWxsIGV4aXN0cyFcdTIwMUQ8L3N0cm9uZz4sIGVuY291cmFnaW5nIHVzIGluIG91ciByZXNlYXJjaC48L3A+XG4gICAgICAgICAgICAgICAgPHA+Qm90aCBncm91cHMgYXJlIHJlYWR5IGZvciBnZW5lIHRoZXJhcHksIHdpdGggcGF0aWVudHMgc2hvd2luZyBmZXdlciBcIm5vIGNvbmNlcm5zLFwiIGxpa2VseSBkdWUgdG8gdGhlaXIgZmFtaWxpYXJpdHkgd2l0aCByaXNrcyBhbmQgb2ZmLXRhcmdldCBlZmZlY3RzLiBUaGlzIHVuZGVyc2NvcmVzIHRoZSBpbXBvcnRhbmNlIG9mIG91ciBmb2N1cyBvbiBzYWZldHkgYW5kIHByZWNpc2lvbiB0byBtaW5pbWl6ZSByaXNrcy4gT3VyIHJlc2VhcmNoIGlzIGRlc2lnbmVkIHRvIGFkZHJlc3MgdGhlc2UgY29uY2VybnMgdGhyb3VnaCB0YXJnZXRlZCBhcHByb2FjaGVzIFx1MjAxMyA8c3Ryb25nPndlIGFyZSA8UHJlQ3lzZS8+ITwvc3Ryb25nPjwvcD5cbiAgICAgICAgICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHRoZXJlXHUyMDE5cyBhIGNsZWFyIGRlbWFuZCBmb3IgbW9yZSBpbmZvcm1hdGlvbiwgZXNwZWNpYWxseSB2aWEgcGxhdGZvcm1zIGxpa2UgVFYsIHNvY2lhbCBtZWRpYSwgYW5kIHRoZSBpbnRlcm5ldC4gVGFyZ2V0ZWQgZWR1Y2F0aW9uYWwgY2FtcGFpZ25zIHRocm91Z2ggdGhlc2UgY2hhbm5lbHMgd2lsbCBiZSBjcnVjaWFsIHRvIGluY3JlYXNlIGF3YXJlbmVzcyBhbmQgdW5kZXJzdGFuZGluZywgaGVscGluZyB0byBidWlsZCBvbiB0aGUgZXhpc3Rpbmcgb3B0aW1pc20gYW5kIGZvc3RlciBncmVhdGVyIGFjY2VwdGFuY2Ugb2YgZ2VuZSB0aGVyYXB5LCBsaWtlIHdlIGRvIGluIG91ciB2YXJpb3VzIHB1YmxpYyBvdXRyZWFjaCBlZmZvcnRzIGZvciBzY2llbmNlIGNvbW11bmljYXRpb24uPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIkRldGFpbGVkIEFuYWx5c2lzXCI+PC9INT5cbiAgICAgICAgICAgIDxkZXRhaWxzPlxuICAgICAgICAgICAgICAgIDxzdW1tYXJ5PkNsaWNrIHRvIHNlZTwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICA8RGV0YWlsZWRBbmFseXNpcy8+XG4gICAgICAgICAgICA8L2RldGFpbHM+XG5cbiAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8SDQgdGV4dD1cIlN0YWtlaG9sZGVyIEFuYWx5c2VzXCI+PC9IND5cbiAgICAgICAgICAgIDxIUGNvblRhYnMvPlxuICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cblxuZnVuY3Rpb24gRGV0YWlsZWRBbmFseXNpcygpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgICA8PlxuICAgICAgICBcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hvQWZmZWN0ZWRhdGllbnRzLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sLTQnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Ib3dEaWRZb3VMZWFyblB1YmxpYy8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLkhlYXJkT2ZDRlB1YmxpYy8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+NTYuNzYlIG9mIHJlc3BvbmRlbnRzIHJlcG9ydGVkIHRoYXQgdGhleSBhcmUgcmVsYXRlZCB0byBzb21lb25lIHdpdGggQ0YsIHdoaWxlIDQzLjI0JSBzdGF0ZWQgdGhleSBhcmUgYWZmZWN0ZWQgYnkgQ0YgdGhlbXNlbHZlcy4gVGhpcyBsaWtlbHkgcmVmbGVjdHMgdGhlIGZhY3QgdGhhdCBtYW55IHBhcmVudHMgY29tcGxldGVkIHRoZSBzdXJ2ZXkgb24gYmVoYWxmIG9mIHRoZWlyIGNoaWxkcmVuLCBhcyBDRiBpcyB0eXBpY2FsbHkgZGlhZ25vc2VkIGF0IGEgeW91bmcgYWdlLiBUaGUgaGlnaCBpbnZvbHZlbWVudCBvZiBwYXJlbnRzIHVuZGVyc2NvcmVzIGhvdyB0aGUgZGlzZWFzZSBpbXBhY3RzIG5vdCBqdXN0IHRoZSBwYXRpZW50cyB0aGVtc2VsdmVzIGJ1dCBhbHNvIHRoZWlyIGZhbWlsaWVzLCB3aG8gYXJlIGRlZXBseSBpbnZvbHZlZCBpbiB0aGUgZGF5LXRvLWRheSBtYW5hZ2VtZW50IG9mIENGLiBUaGlzIGhpZ2hsaWdodHMgdGhlIGltcG9ydGFuY2Ugb2YgY29uc2lkZXJpbmcgYm90aCB0aGUgcGVyc3BlY3RpdmVzIG9mIHlvdW5nIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcyB3aGVuIGRpc2N1c3NpbmcgZ2VuZSB0aGVyYXB5IGFuZCBDRiB0cmVhdG1lbnRzLCBhcyBwYXJlbnRzIG9mdGVuIHBsYXkgYSBjcml0aWNhbCByb2xlIGluIGRlY2lzaW9uLW1ha2luZyByZWdhcmRpbmcgbmV3IHRyZWF0bWVudCBvcHRpb25zLjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+ODIuODklIG9mIHJlc3BvbmRlbnRzIGhhdmUgaGVhcmQgb2YgY3lzdGljIGZpYnJvc2lzLCB3aGlsZSAxNy4xMSUgaGFkIG5vdC4gVGhlIGhpZ2ggbGV2ZWwgb2YgYXdhcmVuZXNzIGFib3V0IENGIHN1Z2dlc3RzIHRoYXQgdGhlIGdlbmVyYWwgcHVibGljIGlzIHJlbGF0aXZlbHkgaW5mb3JtZWQgYWJvdXQgdGhlIGNvbmRpdGlvbiwgcG9zc2libHkgZHVlIHRvIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNlYXNlIHRocm91Z2ggbWVkaWEsIGhlYWx0aCBjYW1wYWlnbnMsIG9yIHBlcnNvbmFsIGNvbm5lY3Rpb25zIHRvIGFmZmVjdGVkIGluZGl2aWR1YWxzLiBIb3dldmVyLCB0aGUgMTclIHVuZmFtaWxpYXIgd2l0aCBDRiBpbmRpY2F0ZXMgdGhhdCBmdXJ0aGVyIG91dHJlYWNoIGlzIG5lY2Vzc2FyeSwgcGFydGljdWxhcmx5IGZvY3VzaW5nIG9uIHRoaXMgZGVtb2dyYXBoaWMgdG8gc3ByZWFkIGtub3dsZWRnZSBhYm91dCB0aGUgZGlzZWFzZSBhbmQgcG90ZW50aWFsIHRyZWF0bWVudHMsIGluY2x1ZGluZyBnZW5lIHRoZXJhcHkuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgbWFqb3JpdHkgb2YgcmVzcG9uZGVudHMgKDQ0LjE3JSkgbGVhcm5lZCBhYm91dCBDRiB0aHJvdWdoIG1lZGlhIGNoYW5uZWxzLCBzdWNoIGFzIHRlbGV2aXNpb24sIG5ld3MsIG9yIHRoZSBpbnRlcm5ldC4gT3RoZXIgc2lnbmlmaWNhbnQgc291cmNlcyBvZiBpbmZvcm1hdGlvbiBpbmNsdWRlIGZhbWlseSBhbmQgZnJpZW5kcyAoMjUuMTUlKSwgYXMgd2VsbCBhcyBlZHVjYXRpb25hbCBpbnN0aXR1dGlvbnMgKDIwLjg2JSkuIEludGVyZXN0aW5nbHksIG9ubHkgMy42OCUgb2YgcmVzcG9uZGVudHMgbGVhcm5lZCBhYm91dCBDRiBmcm9tIGhlYWx0aGNhcmUgcHJvdmlkZXJzLCBzdWdnZXN0aW5nIHRoYXQgdGhlIGRpc2Vhc2UgaXMgbW9yZSBjb21tb25seSB1bmRlcnN0b29kIHRocm91Z2ggZXh0ZXJuYWwgc291cmNlcyByYXRoZXIgdGhhbiBkaXJlY3QgbWVkaWNhbCBlZHVjYXRpb24uIFRoaXMgcmVsaWFuY2Ugb24gbWVkaWEgYW5kIHBlcnNvbmFsIGNvbm5lY3Rpb25zIGhpZ2hsaWdodHMgdGhlIGltcG9ydGFuY2Ugb2YgYWNjdXJhdGUgYW5kIGFjY2Vzc2libGUgaW5mb3JtYXRpb24gaW4gdGhlIHB1YmxpYyBkb21haW4sIGVzcGVjaWFsbHkgd2hlbiBjb25zaWRlcmluZyB0aGUgaW50cm9kdWN0aW9uIG9mIGdlbmUgdGhlcmFweSBhcyBhIHRyZWF0bWVudCBvcHRpb24uIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguQWdlRGlhZ25vc2lzYXRpZW50cy8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLkhvd011Y2hEb2VzSXRBZmZlY3RZb3VhdGllbnRzLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hpY2hTeW1wdG9tc2F0aWVudHMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+MjYuMjMlIG9mIHJlc3BvbmRlbnRzIGluZGljYXRlZCB0aGF0IENGIHdhcyBkaWFnbm9zZWQgZWl0aGVyIHRocm91Z2ggbmV3Ym9ybiBzY3JlZW5pbmcgb3IgYmV0d2VlbiB0aGUgYWdlcyBvZiAxIGFuZCAxMC4gQW5vdGhlciAyMS44NiUgcmVwb3J0ZWQgZGlhZ25vc2lzIGEgZmV3IG1vbnRocyBhZnRlciBiaXJ0aCwgYW5kIDE4LjAzJSB3ZXJlIGRpYWdub3NlZCBhYm91dCBvbmUgd2VlayBhZnRlciBiaXJ0aC4gVGhpcyBoaWdobGlnaHRzIHRoZSBlYXJseSBkZXRlY3Rpb24gb2YgQ0YsIG9mdGVuIHJlcXVpcmluZyBsaWZlbG9uZyBtYW5hZ2VtZW50LCB3aGljaCBjYW4gYmUgZW1vdGlvbmFsbHkgY2hhbGxlbmdpbmcgZm9yIGZhbWlsaWVzLiBFYXJseSBkaWFnbm9zaXMgaW5jcmVhc2VzIHRoZSBhcHBlYWwgb2YgdHJlYXRtZW50cyBsaWtlIGdlbmUgdGhlcmFweSwgd2hpY2ggY291bGQgb2ZmZXIgbG9uZy10ZXJtIGJlbmVmaXRzIHdpdGggZmV3ZXIgaW50ZXJ2ZW50aW9ucy48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD40Mi4xNiUgb2YgcmVzcG9uZGVudHMgcmF0ZWQgdGhlIGltcGFjdCBvZiBjeXN0aWMgZmlicm9zaXMgb24gZGFpbHkgbGlmZSBhcyBhIDMgb3V0IG9mIDUsIGluZGljYXRpbmcgYSBtb2RlcmF0ZSBlZmZlY3QuIEFkZGl0aW9uYWxseSwgMzIuOTclIHJhdGVkIHRoZSBpbXBhY3QgYXMgYSAyLCB3aGlsZSAxMi40MyUgcmF0ZWQgaXQgYXMgYSA0LiBPbmx5IDQuMzIlIG9mIHJlc3BvbmRlbnRzIGZlbHQgdGhhdCBDRiBoYWQgYSB2ZXJ5IHN0cm9uZyBpbXBhY3QgKHJhdGluZyBpdCBhIDUpLCBhbmQgOC4xMSUgcmF0ZWQgaXQgYSAxLCBzdWdnZXN0aW5nIGxpdHRsZSB0byBubyBkYWlseSBlZmZlY3QuIFRoZXNlIHJlc3VsdHMgaW5kaWNhdGUgdGhhdCBmb3IgbWFueSBwYXRpZW50cyBhbmQgZmFtaWxpZXMsIENGIGhhcyBhIG5vdGFibGUgYnV0IHZhcmllZCBpbXBhY3Qgb24gZGFpbHkgbGlmZSwgcmVpbmZvcmNpbmcgdGhlIGltcG9ydGFuY2Ugb2YgdHJlYXRtZW50cyBsaWtlIGdlbmUgdGhlcmFweSB0aGF0IGNvdWxkIGFsbGV2aWF0ZSB0aGUgYnVyZGVuLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGlzIGNoYXJ0IHNob3dzIHRoYXQgMjMuMTklIG9mIHJlc3BvbmRlbnRzIGlkZW50aWZpZWQgYWJkb21pbmFsIHBhaW4gYXMgdGhlIG1vc3QgZnJlcXVlbnQgc3ltcHRvbSwgZm9sbG93ZWQgYnkgY2hyb25pYyBjb3VnaCAoMTguOTUlKSBhbmQgZnJlcXVlbnQgbHVuZyBpbmZlY3Rpb25zICgxMy43MiUpLiBJbnRlcmVzdGluZ2x5LCBzeW1wdG9tcyBsaWtlIG11c2NsZSB3ZWFrbmVzcyAoMiUpIGFuZCBkZWxheWVkIGdyb3d0aCAoNi4yMyUpIHdlcmUgbGVzcyBjb21tb25seSByZXBvcnRlZC4gVGhlIGVtcGhhc2lzIG9uIGNocm9uaWMgcmVzcGlyYXRvcnkgYW5kIGdhc3Ryb2ludGVzdGluYWwgc3ltcHRvbXMgYWxpZ25zIHdpdGggQ0YgYmVpbmcgYSBtZXRhYm9saWMgZGlzZWFzZSBhZmZlY3RpbmcgdGhlIHdob2xlIGJvZHkgbGlrZSBleHBlcnRzIHN1Y2ggYXMgRHIuIE9sYXJpdSBleHBsYWluZWQgdG8gdXMsIHJlaW5mb3JjaW5nIHRoZSBuZWVkIGZvciBjb21wcmVoZW5zaXZlIHRyZWF0bWVudHMgbGlrZSBnZW5lIHRoZXJhcHkgdGhhdCB0YXJnZXQgbXVsdGlwbGUgYXNwZWN0cyBvZiB0aGUgZGlzZWFzZSBhdCB0aGUgY2VsbHVsYXIgbGV2ZWwuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5XaGljaFRoZXJhcHlEb1lvdVVzZWF0aWVudHMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Nb3N0U3RyZXNzZnVsRm9yUmVsYXRpdmVhdGllbnRzLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBtb3N0IGNvbW1vbiB0aGVyYXBpZXMgdXNlZCBieSByZXNwb25kZW50cyBpbmNsdWRlZCBtZWRpY2F0aW9uICgyOS4yMCUpLCBwaHlzaW90aGVyYXB5ICgyNi4zMiUpLCBhbmQgaW5oYWxhdGlvbiB0aGVyYXB5ICgyNi42MyUpLiBUaGVzZSB0cmVhdG1lbnRzIGFyZSBwcm9taW5lbnRseSByZXByZXNlbnRlZCBpbiBDRiBjYXJlLCBidXQgdGhleSBhbHNvIHJlZmxlY3QgYSBidXJkZW5zb21lIHJlZ2ltZW4gdGhhdCByZXF1aXJlcyBjb25zdGFudCBtYW5hZ2VtZW50LiBUaGUgZnJlcXVlbmN5IHdpdGggd2hpY2ggcGF0aWVudHMgbXVzdCB1bmRlcmdvIHRoZXNlIHRyZWF0bWVudHMgbWF5IGluY3JlYXNlIHRoZWlyIGludGVyZXN0IGluIGdlbmUgdGhlcmFweSwgd2hpY2ggY291bGQgb2ZmZXIgYSBsZXNzIGRlbWFuZGluZyBvcHRpb24gd2l0aCBwb3RlbnRpYWxseSBsb25nZXItbGFzdGluZyByZXN1bHRzPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgc3VydmV5IHJldmVhbHMgdGhhdCAzNi43OSUgb2YgcmVzcG9uZGVudHMgaWRlbnRpZmllZCBlbW90aW9uYWwgc3RyZXNzIGFzIHRoZSBtb3N0IHN0cmVzc2Z1bCBhc3BlY3Qgb2YgY3lzdGljIGZpYnJvc2lzLCBjbG9zZWx5IGZvbGxvd2VkIGJ5IHBoeXNpY2FsIHN5bXB0b21zIGF0IDMyLjc4JS4gU29jaWFsIHJlc3RyaWN0aW9ucyB3ZXJlIG5vdGVkIGJ5IDE3LjczJSBvZiByZXNwb25kZW50cywgYW5kIGZpbmFuY2lhbCBidXJkZW4gd2FzIGEgY29uY2VybiBmb3IgMTEuMzclLiBPbmx5IDEuMzQlIGNpdGVkIG90aGVyIGZhY3RvcnMuIFRoZXNlIHJlc3VsdHMgc2hvdyB0aGF0IGVtb3Rpb25hbCBhbmQgcGh5c2ljYWwgY2hhbGxlbmdlcyBkb21pbmF0ZSB0aGUgc3RyZXNzb3JzIGZvciBwYXRpZW50cyBhbmQgZmFtaWxpZXMsIGhpZ2hsaWdodGluZyB0aGUgbmVlZCBmb3IgdHJlYXRtZW50cyBsaWtlIGdlbmUgdGhlcmFweSB0aGF0IGNvdWxkIHJlZHVjZSBib3RoIHRoZSBwaHlzaWNhbCBhbmQgZW1vdGlvbmFsIGJ1cmRlbnMgb2YgbWFuYWdpbmcgQ0YuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguSGVhZHJvZkdlbmVUaGVyYXB5UGF0aWVudHMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5IZWFkT2ZHZW5lVGhlcmFweVB1YmxpYy8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5BbW9uZyB0aGlzIGdyb3VwLCA3Ni43NiUgb2YgcmVzcG9uZGVudHMgaGFkIGhlYXJkIG9mIGdlbmUgdGhlcmFweSwgd2hpY2ggaXMgYSBoaWdoZXIgYXdhcmVuZXNzIHJhdGUgdGhhbiBzZWVuIGluIHRoZSBnZW5lcmFsIHB1YmxpYyBzdXJ2ZXkuIEhvd2V2ZXIsIDIzLjI0JSByZW1haW4gdW5mYW1pbGlhciB3aXRoIGl0LCBwb2ludGluZyB0byBhIG5lZWQgZm9yIGZ1cnRoZXIgZWR1Y2F0aW9uLiBUaGUgaGlnaGVyIGZhbWlsaWFyaXR5IGhlcmUgY291bGQgYmUgYXR0cmlidXRlZCB0byB0aGUgZmFjdCB0aGF0IHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcyBhcmUgbW9yZSBlbmdhZ2VkIHdpdGggbWVkaWNhbCBhZHZhbmNlbWVudHMgZHVlIHRvIHRoZSBzZXZlcmUgbmF0dXJlIG9mIENGLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPldoZW4gYXNrZWQgYWJvdXQgZ2VuZSB0aGVyYXB5LCA2Ny41OCUgb2YgcmVzcG9uZGVudHMgaW5kaWNhdGVkIGZhbWlsaWFyaXR5IHdpdGggdGhlIGNvbmNlcHQsIHdoaWxlIDMyLjQyJSBoYWQgbm90IGhlYXJkIG9mIGl0LiBUaGlzIGRlbW9uc3RyYXRlcyBhIG1vZGVyYXRlIGxldmVsIG9mIGF3YXJlbmVzcywgYnV0IGl0IGlzIGNsZWFyIHRoYXQgYSB0aGlyZCBvZiB0aGUgcG9wdWxhdGlvbiByZW1haW5zIHVuYXdhcmUgb2YgZ2VuZSB0aGVyYXB5LiBUaGlzIGdhcCBpbiBrbm93bGVkZ2UgcmVwcmVzZW50cyBhIHNpZ25pZmljYW50IG9wcG9ydHVuaXR5IGZvciBlZHVjYXRpb25hbCBlZmZvcnRzLCBhcyB0aGUgbGFjayBvZiBmYW1pbGlhcml0eSBjb3VsZCBpbXBhY3QgdGhlIGFjY2VwdGFuY2UgYW5kIHN1cHBvcnQgZm9yIGdlbmUgdGhlcmFweSBhcyBhIHZpYWJsZSB0cmVhdG1lbnQgb3B0aW9uIGZvciBDRi4gVGhlIGNvbW1lbnRzIHN1Z2dlc3QgdGhhdCBtYW55IHNlZSBnZW5lIHRoZXJhcHkgYXMgYW4gZW1lcmdpbmcgZmllbGQsIGJ1dCB0aGVyZSBpcyBzb21lIGNvbmZ1c2lvbiByZWdhcmRpbmcgaXRzIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMuPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Ib3dXZWxsSW5mb3JtZWRBYm91dENGUHVibGljLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hhdE1lYXN1cmVzUHVibGljLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+SW4gdGVybXMgb2Yga25vd2xlZGdlIGFib3V0IENGLCA1OC42MCUgb2YgcmVzcG9uZGVudHMgc3RhdGVkIHRoYXQgdGhleSBhcmUgc29tZXdoYXQgd2VsbCBpbmZvcm1lZCwgYW5kIG9ubHkgMjEuNjYlIGZlbHQgZXh0cmVtZWx5IHdlbGwgaW5mb3JtZWQgKHNlZSBkaWFncmFtIDIpLiBBIHNtYWxsZXIgcG9ydGlvbiwgMTMuMzglLCBpbmRpY2F0ZWQgdGhhdCB0aGV5IGFyZSBub3QgdmVyeSBpbmZvcm1lZCwgYW5kIDYuMzclIGFkbWl0dGVkIHRvIGJlaW5nIG5vdCBpbmZvcm1lZCBhdCBhbGwuIFRoaXMgc3VnZ2VzdHMgdGhhdCB3aGlsZSBDRiBpcyByZWNvZ25pemVkIGJ5IGEgbGFyZ2UgcG9ydGlvbiBvZiB0aGUgcHVibGljLCBkZWVwZXIga25vd2xlZGdlIGFib3V0IHRoZSBkaXNlYXNlIGlzIGxhY2tpbmcuIFRoYXQgaXMgd2h5IHdlIGFyZSBkb2luZyBzY2llbmNlIGNvbW11bmljYXRpb24gYXQgb3VyIHZhcmlvdXMgcHVibGljIG91dHJlYWNoIGV2ZW50cyEgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5SZXNwb25kZW50cyB3ZXJlIGFza2VkIHdoYXQgYWN0aW9ucyBjb3VsZCBiZSB0YWtlbiB0byBpbXByb3ZlIENGIGF3YXJlbmVzcyAoc2VlIGRpYWdyYW0gNCkuIFRoZSBtb3N0IHBvcHVsYXIgb3B0aW9uLCBjaG9zZW4gYnkgMjIuODclLCB3YXMgcHVibGljaXR5IGNhbXBhaWducyBvbiBUViwgcmFkaW8sIGFuZCBvdGhlciBtYXNzIG1lZGlhIG91dGxldHMuIEluZm9ybWF0aW9uIGV2ZW50cyBhdCBzY2hvb2xzIGFuZCB1bml2ZXJzaXRpZXMgZm9sbG93ZWQgYXQgMTMuMjAlLCBhbG9uZyB3aXRoIGRvY3VtZW50YXJ5IGZpbG1zIGFuZCBzaG9ydCBtb3ZpZXMgYWJvdXQgbGlmZSB3aXRoIENGICgxNC4wMSUpLiBUaGVzZSBmaW5kaW5ncyBzdWdnZXN0IHRoYXQgdGhlIHB1YmxpYyBzZWVzIG1lZGlhIGFzIHRoZSBtb3N0IGVmZmVjdGl2ZSB3YXkgdG8gc3ByZWFkIGF3YXJlbmVzcywgYSBzdHJhdGVneSB0aGF0IGNvdWxkIGFsc28gYmUgZW1wbG95ZWQgdG8gZWR1Y2F0ZSBhYm91dCBnZW5lIHRoZXJhcHkuIFRoZSBwdWJsaWMgYXBwZWFycyB0byBmYXZvciB2aXN1YWwgYW5kIGFjY2Vzc2libGUgZm9ybWF0cywgd2hpY2ggY291bGQgYmUgdXNlZCB0byBoaWdobGlnaHQgdGhlIGJlbmVmaXRzIG9mIG5ldyB0cmVhdG1lbnRzIGxpa2UgZ2VuZSB0aGVyYXB5LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguQmFzaWNQb3NpdGlvbmF0aWVudHMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5XaGF0Q29jZXJuc0Fib3V0R2VuZVRoZXJhcHlhdGllbnRzLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hhdENvY2VybnNBYm91dEdlbmVUaGVyYXB5UHVibGljLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBzdXJ2ZXkgcmV2ZWFscyB0aGF0IDM1LjAwJSBvZiByZXNwb25kZW50cyBoYWQgYSB2ZXJ5IHBvc2l0aXZlIHZpZXcgb2YgZ2VuZSB0aGVyYXB5LCBhbmQgMzAuMDAlIHJhdGVkIGl0IGEgNCBvdXQgb2YgNSAoc2VlIGRpYWdyYW0gMjApLiBPbmx5IDUuNzElIHJhdGVkIGl0IGEgMiBvciBsb3dlci4gVGhlIG92ZXJhbGwgcG9zaXRpdml0eSBzdWdnZXN0cyB0aGF0IG1hbnkgcGF0aWVudHMgYW5kIGZhbWlsaWVzIGFyZSBob3BlZnVsIGFib3V0IHRoZSBwb3RlbnRpYWwgb2YgZ2VuZSB0aGVyYXB5LCBwZXJoYXBzIGJlY2F1c2Ugb2YgdGhlaXIgZmFtaWxpYXJpdHkgd2l0aCB0aGUgbGltaXRhdGlvbnMgb2YgY3VycmVudCB0cmVhdG1lbnRzLiBUaGlzIG9wdGltaXNtIGNvdWxkIGJlIGxldmVyYWdlZCB0byBzdXBwb3J0IGZ1dHVyZSBjbGluaWNhbCB0cmlhbHMgb3IgZWR1Y2F0aW9uYWwgaW5pdGlhdGl2ZXMuPC9wPiAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5Db25jZXJucyBhYm91dCBnZW5lIHRoZXJhcHkgcHJpbWFyaWx5IHJldm9sdmVkIGFyb3VuZCBzYWZldHkgYW5kIHNpZGUgZWZmZWN0cyBhbmQgbG9uZy10ZXJtIGVmZmVjdHMgKGJvdGggNTkuNDYlKSAoc2VlIGRpYWdyYW0gMjIpLiBDb3N0IGFuZCBhY2Nlc3NpYmlsaXR5IGFsc28gcmVtYWluIGltcG9ydGFudCBpc3N1ZXMgZm9yIDMyLjQzJSBvZiByZXNwb25kZW50cy4gT25seSAwLjU0JSBleHByZXNzZWQgbm8gY29uY2VybnMsIHNob3dpbmcgdGhhdCB3aGlsZSB0aGVyZSBpcyBvcHRpbWlzbSwgdGhlcmUgYXJlIHNpZ25pZmljYW50IGZlYXJzIHRvIGFkZHJlc3MuIFRoZXNlIGNvbmNlcm5zIHdlcmUgc2ltaWxhcmx5IGV4cHJlc3NlZCBpbiB0aGUgZ2VuZXJhbCBwdWJsaWMgc3VydmV5IGJ1dCBhcmUgbW9yZSBwcm9ub3VuY2VkIGFtb25nIHBhdGllbnRzLCBsaWtlbHkgZHVlIHRvIHRoZWlyIGZpcnN0aGFuZCBleHBlcmllbmNlIHdpdGggbG9uZy10ZXJtIHRyZWF0bWVudHMuPC9wPiAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBtb3N0IGNvbW1vbiBjb25jZXJuLCBzaGFyZWQgYnkgMjguNzclIG9mIHJlc3BvbmRlbnRzLCB3YXMgcmVsYXRlZCB0byB0aGUgc2FmZXR5IGFuZCBzaWRlIGVmZmVjdHMgb2YgZ2VuZSB0aGVyYXB5LCBmb2xsb3dlZCBieSBsb25nLXRlcm0gZWZmZWN0cyAoMjcuODUlKSBhbmQgY29zdHMgb3IgYWNjZXNzaWJpbGl0eSAoMjQuMjAlKSAoc2VlIGRpYWdyYW0gOSkuIEV0aGljYWwgcXVlc3Rpb25zIHdlcmUgcmFpc2VkIGJ5IDE0LjYxJSBvZiBwYXJ0aWNpcGFudHMsIHdoaWxlIG9ubHkgNC41NyUgaGFkIG5vIGNvbmNlcm5zIGF0IGFsbC4gVGhlc2UgY29uY2VybnMgZWNobyBjb21tZW50cyBtYWRlIGluIG90aGVyIHBhcnRzIG9mIHRoZSBzdXJ2ZXksIHdoZXJlIHJlc3BvbmRlbnRzIGV4cHJlc3NlZCBpbnRlcmVzdCBpbiBsZWFybmluZyBtb3JlIGFib3V0IHRoZSBzYWZldHkgcHJvdG9jb2xzIGFuZCByZWd1bGF0b3J5IG1lYXN1cmVzIHN1cnJvdW5kaW5nIGdlbmUgdGhlcmFweS4gQ2xlYXJseSwgYWRkcmVzc2luZyB0aGVzZSBjb25jZXJucyBpbiBmdXR1cmUgcHVibGljIGVuZ2FnZW1lbnRzIHdpbGwgYmUgY3JpdGljYWwgdG8gZm9zdGVyaW5nIHdpZGVyIGFjY2VwdGFuY2UuIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hhdENvdWxkR2VuZVRoZXJhcHlNZWFuRm9yTWVkaWNpbmVQdWJsaWMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Xb3VsZFlvdURvR2VuZVRoZXJhcHlQdWJsaWMvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5XaGF0Rm9ybU1vcmVJbmZvUHVibGljLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5lYXJseSBoYWxmICg0OS41OSUpIG9mIHJlc3BvbmRlbnRzIGJlbGlldmUgdGhhdCBnZW5lIHRoZXJhcHkgcmVwcmVzZW50cyBhIG1ham9yIGFkdmFuY2UgaW4gdGhlIHRyZWF0bWVudCBvZiBkaXNlYXNlcywgd2hpbGUgNDcuOTclIGFja25vd2xlZGdlZCB0aGF0IGdlbmUgdGhlcmFweSBvZmZlcnMgc29tZSBwcm9ncmVzcyBidXQgYWxzbyBjYXJyaWVzIHJpc2tzIChzZWUgZGlhZ3JhbSA3KS4gTGVzcyB0aGFuIDIlIG9mIHJlc3BvbmRlbnRzIGV4cHJlc3NlZCBjb25jZXJuIHRoYXQgZ2VuZSB0aGVyYXB5IGNvdWxkIGJyaW5nIG1vcmUgcmlza3MgdGhhbiBiZW5lZml0cy4gVGhpcyBvdmVyYWxsIHBvc2l0aXZlIG91dGxvb2sgb24gZ2VuZSB0aGVyYXB5IGlzIGVuY291cmFnaW5nLCBidXQgaXQgYWxzbyB1bmRlcnNjb3JlcyB0aGUgbmVlZCB0byBhZGRyZXNzIGNvbmNlcm5zIGFib3V0IHNhZmV0eSBhbmQgbG9uZy10ZXJtIGVmZmVjdHMsIHdoaWNoIHdlcmUgb2Z0ZW4gbWVudGlvbmVkIGluIHRoZSBjb21tZW50cy4gVGhlIG9wdGltaXNtIHNob3duIGhlcmUgY2FuIGJlIGEgc3Ryb25nIGZvdW5kYXRpb24gZm9yIHByb21vdGluZyBnZW5lIHRoZXJhcHksIGVzcGVjaWFsbHkgd2l0aCBhcHByb3ByaWF0ZSBlZHVjYXRpb24gb24gbWl0aWdhdGluZyByaXNrcy48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QSBzdHJvbmcgbWFqb3JpdHksIDg1LjIyJSBvZiByZXNwb25kZW50cywgaW5kaWNhdGVkIHRoYXQgdGhleSB3b3VsZCBjb25zaWRlciBvcHRpbmcgZm9yIGdlbmUgdGhlcmFweSwgd2l0aCBvbmx5IDEuNzQlIHNheWluZyB0aGV5IHdvdWxkIG5vdCwgYW5kIDEzLjA0JSByZXNwb25kaW5nIHdpdGggXCJtYXliZS5cIiAoc2VlIGRpYWdyYW0gOCkuIFRoaXMgcmVzdWx0IGRlbW9uc3RyYXRlcyBjb25zaWRlcmFibGUgb3Blbm5lc3MgdG8gZ2VuZSB0aGVyYXB5IGFtb25nIHRoZSBwdWJsaWMsIHRob3VnaCB0aGUgbWlub3JpdHkgZXhwcmVzc2luZyBoZXNpdGF0aW9uIHN1Z2dlc3RzIHRoZXJlIGFyZSBsaW5nZXJpbmcgZG91YnRzLiBDb21tZW50cyBmcmVxdWVudGx5IG1lbnRpb25lZCBjb25jZXJucyBvdmVyIHNhZmV0eSBhbmQgbG9uZy10ZXJtIGVmZmVjdHMsIHN1Z2dlc3RpbmcgdGhhdCB0aGVzZSBpc3N1ZXMgbmVlZCB0byBiZSBhZGRyZXNzZWQgdG8gY29udmVydCBcIm1heWJlXCIgcmVzcG9uc2VzIGludG8gbW9yZSBjb25maWRlbnQgc3VwcG9ydCBmb3IgZ2VuZSB0aGVyYXB5LjwvcD4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5XaGVuIGFza2VkIGhvdyB0aGV5IHdvdWxkIHByZWZlciB0byByZWNlaXZlIG1vcmUgaW5mb3JtYXRpb24sIDIyLjYyJSBvZiByZXNwb25kZW50cyBzZWxlY3RlZCBUViBkb2N1bWVudGFyaWVzIGFuZCBwcm9ncmFtcyBhcyB0aGVpciBwcmVmZXJyZWQgbWVkaXVtLCB3aGlsZSAxNi42MyUgZXhwcmVzc2VkIGludGVyZXN0IGluIHdlYnNpdGVzIGFuZCBvbmxpbmUgcmVzb3VyY2VzIChzZWUgZGlhZ3JhbSAxMSkuIFRoaXMgcHJlZmVyZW5jZSBmb3IgdmlzdWFsIGFuZCBvbmxpbmUgZm9ybWF0cyBhbGlnbnMgd2l0aCB0aGUgcHVibGljXHUyMDE5cyBnZW5lcmFsIHJlbGlhbmNlIG9uIG1lZGlhIGZvciBsZWFybmluZyBhYm91dCBDRiBhbmQgb3RoZXIgbWVkaWNhbCB0b3BpY3MuIFNvY2lhbCBtZWRpYSBhbmQgb25saW5lIGNvbW11bml0aWVzICgxNS45NiUpIGFsc28gcmFua2VkIGhpZ2hseSwgaW5kaWNhdGluZyB0aGF0IGRpZ2l0YWwgcGxhdGZvcm1zIGFyZSBhbiBlZmZlY3RpdmUgd2F5IHRvIHJlYWNoIGEgYnJvYWQgYXVkaWVuY2UuIFRoZXNlIGZpbmRpbmdzIGNhbiBndWlkZSBmdXR1cmUgZWZmb3J0cyB0byBjcmVhdGUgZW5nYWdpbmcgYW5kIGluZm9ybWF0aXZlIGNvbnRlbnQgYWJvdXQgQ0YgYW5kIGdlbmUgdGhlcmFweS48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj48Lz5cbiAgICApXG59IiwgImltcG9ydCB7IG9wZW5DbGFzc2VzIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL29wZW5DbGFzc1wiO1xuXG5cblxuZXhwb3J0IGNvbnN0IEhQM25ldyA9ICgpID0+IChcbiAgPHN2Z1xuICAgIHZpZXdCb3g9XCIwIDAgMTI1NS4wNDAzIDc4MFwiXG4gICAgd2lkdGg9ezEyNTUuMDQwM31cbiAgICB4bWxTcGFjZT1cInByZXNlcnZlXCJcbiAgICBpZD1cInN2ZzJcIlxuICAgIGlua3NjYXBlOmV4cG9ydC1maWxlbmFtZT1cIkRlc2lnbi1JSFAtMy5zdmdcIlxuICAgIGlua3NjYXBlOmV4cG9ydC14ZHBpPXs5Nn1cbiAgICBpbmtzY2FwZTpleHBvcnQteWRwaT17OTZ9XG4gICAgeG1sbnNYbGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPGRlZnMgaWQ9XCJkZWZzNlwiPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNlwiXG4gICAgICAgICAgZD1cIk0gMCwyLjQ0MTRlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMjAyIEggMCBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDI4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDI2XCJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEggNi4xMDM1ZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDQwXCJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEggMS4yMjA3ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDc2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDc0XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoODZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoODRcIlxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg5NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg5NFwiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEwNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMDRcIlxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTE0XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTI2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDEyNFwiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEzNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMzRcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTQ0XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTU2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE1NFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE2NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNjRcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNzZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTc0XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTg2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE4NFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE5NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxOTRcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjA0XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjE2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDIxNFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIyNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyMjRcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMzZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjM0XCJcbiAgICAgICAgICBkPVwiTSA2MDEuMDgsNjExLjQgSCA4MDUuNDQgViA4MTUuNzYgSCA2MDEuMDggWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPG1hc2tcbiAgICAgICAgaWQ9XCJtYXNrMjQwXCJcbiAgICAgICAgaGVpZ2h0PXsxfVxuICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgeT17MH1cbiAgICAgICAgeD17MH1cbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxuICAgICAgPlxuICAgICAgICA8aW1hZ2VcbiAgICAgICAgICBpZD1cImltYWdlMjQyXCJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVlBQUFBR0FDQUFBQUFDQnJPcGpBQUFBQVhOQ1NWUUk1Z3BibVFBQUVWcEpSRUZVZUp6dG5YdDhWZFdWeDNjU2dnRUNDSUk4RkJVd1FCTDJEZ0VmbzVaYTN6aGo2OHlVYWJWRmhQckFPclRvV0p5MnpqaGxXdHJhK3FsaWRXWnFSMVRBNTFTbi9XaW50Z3BTbi8xQTViRjNMaEFJNGFueVRua2xKSkRjK1FNL0pqazVlNTE5N3ozN3JpVDM5LzBubjV4OTFqbjdydDlkZSsyejl6NzdDZ0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnTTVPSG5jRnVobDVaeXFwNUxkLzYyelF3Mk5sY294aUpaV2MyRWNJSVNvZ1FGYnBPVm9xZWQ3dzFnUFMzUllDWk1aUXFhU1NRUzhxOXdzZ0I2UkwzN0ZLcWtuOVE4dU9GemU1WGdZUmtEb0Y1eWlwNUJqaWpNTFN0YTRYZ3dBcE1WQkpKU2VjRW5tZWdnQngwMnVNVkhMU1lNZXozYk13Qklna2I0UlVVcFhtcDJJREFlS2hyMVJTVmZaSjNkQzlHNFJlVURpRjV5cXBKcDZSdHYzQU9zY1RFUUVkR0txa2toMjY5aW1pL3VoNElnUm9ROTl4VXNtSnA4WnhLUWlRR2dVanBaS3FKTDRMT21kaENIQ2FWRkpWUkhmdFU4TlpnRnhPd3IzR0tLa211bmJ0VStOdy82VGJpYmtwUU40SUpaVk1yV3VmSXFOcjNjN0x1U1pvUUpsVU1wMnVmWXBJQ0JDa3NFUk9MRlZuKzdqMFBxUFZaZTBQeWQrNG1lYUdBTU9ra3FxODBNT1ZtelpvcmMxSFF0d1pFTUQxV2JpN0M5QjNuSktxTXBhdWZaQVB0ZGE2K3Znbi95VUNwYTdkb082YmhBdEdLcW5rdVQ0KzROR0UxdG9jYUhkczhKNzI1elQzYVhTNlZyY1U0RFFsbFZSRkhxNmNyTlZhNjlxV2tLSTlnZjdzcEZWT1YreG1UVkN2c1ZKVnl0TjlYZjd1WHg2MUZRMEpaaGlaWXdMa25TV1ZWT044ZHUzRnF3L2J5NTRNNWhuSEpOQWRCQmhRcHFTcUtQWituMzIzMmN0bVh4czg0dGdONnRvNW9MQkVTU1c5ZE8xRG1QcVN0YWowZzE3QlE3dUdPVjIweXdvd1RFa2x2WFR0YlN5ZWJpM3ErYWZLamdjSDdYZTVhaGRzZ29yTHBKSVRCbVQ3dGp1L2FTLzdmb2ovUmNVeWw4dDJLUUVLUmtrbEs4L3hFclVmR2JOKy9sQjdlWExtWDZ4bG4vdFcyRkhaclFRWUpKVlUwa2ZYWGh4SmFHUDBBU0YrUVBoZlBQcUd0ZWpVUmFGOUw3ZHVVT2ZQQVVYamxGUVR2SFR0bTJ1ME1YckxKeVAzRjcxZFlEOTE0NFFHYTltek40WWVYbkdoU3gwNnN3QjVaeW1wNUZqQ0xlbXpXeHVqMXgxcmM2UjR6V2o3NmMwWHI3Q1dmWFZKK1BHamZWM21aRHBwRXpTZ1hDcnBwMnRmbnpEYW1MMGRqajlNK0YvTXQvdi83TWNzQlgxRzF6aFVwOU1KVURpdVhFbDFscGRySDF5cWpka2NOcEFqeFBXM0VJYXJmbUF0eWw4Y3ZrQmFDQ0ZkQk9oTURMOW03cUkxVFVsL1hHKy85NUE5aEYxRG1kM3dPM2F6ZjR2ZlJiNG92dURXQlc4ZWlOM2hBUjRuYXZBS1pYaTMzVzRTOFlYNVZleCs4a0JCeVJlLzkvS21scmg5SFVZTmtWTHVvQXlYMjNzcXZkY1RkdFVlL0JVbmd5NmY4OFNLaHBpOWJPZkVSZmFxbEJ3aERBOFJZMDMvUWQyeHVjUDRVR2VocUhMNmc3L2ZIYk9Eby9oM2UzMTYvSWt5bkdFMy9CdjZsdWZGN3JtTXlSdjUrZnVlWDNjaVRzZCt5bjR5ZjY4aytudmZvd3lKMVEyblIzeUpaanA0Skh2ZDBBSGxTaXJaMThlbEd6Y1lvODJFVjRsVDZxZWRzSlpkZUI5aHVKZVlCSGdpNHZuY1pVb2dHd0lVamxGU1NUOWQrMjNHYUZOOVFnZ3grQW5xdkcvWk0yS2Z4WlFUWnUyeEZ0MXhYVVRsVW5oZDJCZkRwOHhkN0tsclgvZjJZM2RjMHEvMVZyK21UdjQvb282L29BeWZzdHVOUFJwVnhkME9IdkkyRmxSY0xwV3M4REpxZjd4YUc2TjN0RDk0Nnk4SmkzMXlsN1hzdWxjSXcrM3FvSzJvOFAxSmhPRkpoa1pMNEtFSnlqOVhLcWxHZVpGMnB6Wkdiemplc1dEVVE1VFo3WGIvRC81dndpNDUwK3AvTVMvYS8wSzZ4RUNjREw3OHJvVXI2MU50VEZ4NVlySjFoVnZCZTVUaFFxTEt2NkVNaVZVUWs1c2Rha3c4UXNkTlVlWE5ELzVoVjByK1RKVlZ4QVR3djFLR3RVVFg2MWJLY0wzOVNhcmZWcGNxVThySFJ0NDVYN2p2QlU5ZCs3WlFJMkxuVVhtKytUTjJ3OUdIQ2NQanhJUFVZcWM2L3psdHI3cHg2dVE3Lyt2ZFF5bTVNWDIrWWE5SHJ3MlU0WHk3SWQxeUVhT1pON2pWdWQ3Yk9ySEM4VGYrNk5YdDd0N0xuRDhRU2YweHl2Q0RkRnN1NHRsNVJKMWpyYWtkUGRMbGpDbjNMbDdiNk95NG1OZy8zRjZqS1pSaGZhbmQ4THpqaEdIRE9LdGQvcHV1MVo2YWdhTTdVbnpoYlk4czMrOTY3OVRZczJ6QngxVDVQOWlyZFJwcE9OdHUyTHVhTXB4ak41enIvTEhtcGUvdGR1U1BtVHJ2ZjJ2OGpObzNySHJxbnF1SENqR0RPdWxwb25JdlVZYS9KMW91Y2l4NXFkMXdnbnY4dnh6cDJzakhwY0ZLS2xudVpXUTd1VlViYlRZMUN5R0VHTG1tbi8zTWJlcVF0V3dtMWRjN0lEK3lsbDFMalU4Y1ZOdkRDd1pOcUp4RlRkKzNaL081VVdjUVQ4SkZaVkpKTmNUNVpxbHd3Qmh0cW82MEhzaC9tdkIveTgxMi80OWNRTjFubHQzL2c4aE8ramREL0QraXNuSmk1UWpLcWdPaitsaGZLSWhtbm5PZ3BVTGptc1Z6cDNUY2hlVGJsTTBEOWtybXYwMFpVaTNYeTVSaG9PbklIM3ZEQTYvdlMrZmpYcENlNzRVUVFreE41NFlVVzErWmYwTjVlTWlSemVxYW52WktFb3NTa3NtdFJGVE5wQXgzdDc1dTFMUHlhNCsrUzgxWTB0eWFydmVGRUdQU3ZtczR4TUJJVVlLd096YmVibGhKUGdKLzFtNDRrbngrL0lJUVFvamlTMll2WEozaFdEclpRRVpRRU8rRStUSWkzeStnRE8reTJ4V3Rvd3gvYkRmTWY0Y3lYQ2dHWFhYdjg5Vng5UHFjVmtqYitITU1GZmlVdWpQdE43cUsrcWh2RU1JOVF0MXhOZEZ5ZlplczYvSWQ2WHpDVURvdWdVeUJKMk9yUmpLWkRGOUJMSVFRWXNCT3dvNFM3bXBLdUlaeXUrRkVuK3Z2MnVQMm9sSTRkOGRZajJlSis3eEFHZDVndHh2NElXVkl0Rnk5eUpZclhxNU8yLzFDWEJsZk5YWVFtd1hjUkJrK1E5VHZSY3J3OVhSYnJoalo5ZnJQWmxBdmZRaEJQd2tQc1Uva3RhTitYU0tSeUgrSmFIS1RWOXFUMFZuYXVyeFlpQjNLL21MUWRLcVhYeWMvdEpaZC9acjN0eUtPcnRmR3JIRjVTNCthRTk2OU4ybzNxV01iRWxXSnhKYWtFS2VzSlB3dkhyTDdQLzlwd3YvSm0rMytQL3ZuVk0yK2J2Zi93Q2Q5K3IrbFZodWpheHozeTRyZ0RYdDBOZXJuL3VWdlMxcm5HeDZrUXRFUU83S1JJNHNQMnUzeS8wZ1pXbDVhRVdMd1pYUElIbWdtN0YzNjhJenpVeDAxSTc4TUQ0VWxzaE9iRWxXSnhLYjJDODArUi9YeW15NndiMld0cU1neDU5dDNITG1YR0o4UU8yVEgxUXhGcFVwS0ZkVWtwMGZEZXFQTld2c1NMZ0p5V1lvSjN1ZTFSS0pxWThqVytQMFhVVUxlWi9mL0tjOFEvbStjWnZkL3hmZUpHeWFudC9OLzNrZ3BwU3J4OHE1WlMyMUNHN014L0syYmpEay9FR01IYkNjK1EwWG1jbUppOUdlVTRUMTJ1NklxeXJDMTVScDQ2ZXpIMzZjbTNqTmcvL0pIYnZ1cjNtazUxcFhld2JVdmx2V2RYNmJxK1JkaVVlamwxSlBVbTRSd0QxRjMxS2NJSVhwV1RQdko3NmdudkF4b1dMMW83alV4TldaMGgyQmpZQy9aejRjdVFEN0RVQ3NRYjdJbVJIR3FKa2JYclZNaVFvZ3JxRjUrMDlTa2tuS3NsMlhIeVpPTGdadDlYRHVNNEd4ZjZEcnV2TmVwYjhzTHhPV2ZwUXkvYXJjYkVOOVlqVHY3MzNwczFzWCs5OFJwVC9ETmhSZkRUcnFMcXZiT2dmYXIzMGdaUGs5VTY3bU12WmtTalhySlAvODFNU1Rsa2I4UFZDVnNrWDA1TldyZGNwWDk0bWRTaTJ0MkVxM2FWMkp3cWlQYlgvM1JWOFl6dmt0ZEVxaFBjOGVrMzNNMTlRR0kxYTE1U3dtN2xpdnRoczZyb2pLaTdwMy92UE16eEl4YWRzZ1ByblR1T01YNUFQVXBFc1QySnY5RUdSS0x6Zk9XWmV4Y21xYXE1NzV6WGJaMjRZcGlaYUJ5SFY2WStpeTFTcnNwYkIralR4aC9qRENzSW9TN0p3WWYyOWo1dXdlbVZXUnpGNjdJRnpSMFlJRndSYUM4WC9oV09aOXcvMnByVWM4bHhQaFEwN1JqWVlkN2xFaXA1RG5FRGRQblVNSVlzOVkrOU9lTkNBR0NneEZCQVg1T2hlcmJQN0dYelE5ZXFTMzNyd2tlR1NhbGttVngvOHFDRUVLSUU1dU0wV2FMajB1N0VERXllMFZnbjZpRDdTZFdwdjRQWVh0WWJiV1dYYnFNaUp5M0xtc3p0TktuWEVtcFRpUHVrejRmRzZQTk9yY3RobjBSSWNEcHdaZWNSclg5cWd3M1JDOWZ6TEJQbVBUWHhQakVJYlZOQ0NGRXdXZ2xmYjFyZG1TZE5tYXRkV3dyaTBRMFFYdDJCNVltcWpZQzVEMUorZjhsWXNMcVVlcWw0VzlzRTBPa2xLck15NExVNXMzYUdGMGJ6NFJKREVROVpKaUFBQlZ0M3R5ZlRVMDRmenpMWHZhbGFaUmg1WFJQbXovdjBicEtKMEx6ZStjbE9GN2NadlBZVXZKMXlDbjJhNTdoNlIwRE8wZFhMcnpyQ2orLzFwTXBrUkVRK0wrMTgxSzRoR29pSG4zTldrUzNYREhUVW11ME1UV2VKa3l5d0tUQWQ2bmwwL0hBSDFKZk9lSUZUekhINDFlOUxYdVhQWHpMQlg0blRHSWdxby9SNjBpZ3YzangreWYvWHZJVzBaRThmdEVIMXJLeUQ3eHN2OXFXWSt1TTBUcmJiNm1uUjFRVDFGQVRlTkd2NHFRQWZSZFRqOER6N1A0dlhPTFQvOGt0cHZXbG15NUI1RkNyQ1FwdzhzK0NrWVROZTlaMXlmM0gzMEtNRDJYRS9pcHRqTW5naFJRZUlnWFFYMnovLzBrQi9vN2FET3JJVFNIZndNSXhTbnJhRDdSeGd6WkcyMTlHNnRSRVIwRGdmNW1YRkdJb3RRT2ttQlA0RWJrenBWU3kxTWNnWTNLN05rWnZ0RytHMWZsSldZRGlVWnVGV0RpSXNQaDE2OXR2ZmNkTEphV1hUWVBxcW96UjVyQ1BTMmVWU0FGcTZ3TTl1WXJONHM0T1A1alNodDIzQ1NGRWp4S3BwUFN5MVg5VHRkSEc3SWcrc1VzUUtVQkxWV0FXck9MbHNUK2xETDVXZUkyVXF0VEwwUEVPbzQwSjI2K3A2eEk5NFd5Q0F2UllRajNkSEYva1plajRrREZHRy92K1ZWMFdCd0VDLzFmY1QrNUhXaGkzLzA5VUc2UE50cGl2Mm1tSWJxUXZYeG80ME94bGxXc1lIeHFqemZxUXhjRGRpR2dCZ3I5U21SVU9KN1F4dW83aHp0bkdvWnZ5c1o4MTlSYWFOMmxqOU5aT00ySGlHNGRWWHlaYkF1elN4bWptS2RxczR5SUFzYnd3Sm80bWpEWm1uL2Y3ZEVJY0JOQSs3OTlTWTdReG0zT214ZW1BU3dSNHV2VWVvNDFKMkgrZUt6ZHdTTUpGUjdMVzcreXVQRzVmb2VDd3NlV3hydlpyVEYwS2w1MUZ2U2FCWE1kRkFGOUpBQWdJd0E0RVlNWkZnTm91TjlQZGhYQVJJRm5sdlJxNWk5UCs2bWlEL0FFQm1IRVNBQThDL25BU2dHTktKbGR3RXFEckx1N3UvRGdKa0x1RHhmNkJBTXhBQUdhUUE1aEJCREFEQVppQkFNd2dCekNEQ0dBR0FqQURBWmhCRG1BR0VjQU1CR0FHQWpDREhNQU1Jb0FaQ01BTUJHQUdPWUFaUkFBekVJQVpDTUFNY2dBemlBQm1JQUF6RUlBWjVBQm1FQUhNUUFCbUlBQXp5QUhNT0FrQS9PRW1BTm9nYjBBQVp0d0VRQkx3QmlLQUdRakFEQVJnSmpzNTRQRzhyZzN4bzNTWmdnaGdCZ0l3QXdHWXdYTUFNNGdBWmlBQU14Q0FHZVFBWmhBQnpFQUFaaUFBTThnQnpDQUNtSUVBekVBQVpwQURtRUVFTUFNQm1JRUF6Q0FITUlNSVlBWUNNQU1CbUVFT1lBWVJ3QXdFWUFZQ01JTWN3QXdpZ0JrSXdBd0VZQVk1Z0JsRUFETVFnQmtJd0F4eUFET0lBR1lnQURNUWdCbmtBR1lRQWN4QUFHWWdBRFBJQWN3Z0FwaUJBTXhBQUdaNk9KMlZhUTY0L2ZZTUw5QjlRUVF3QXdHWWdRRE00RG1BR1VRQU14Q0FHUWpBREhJQU00Z0FaaUFBTXhDQUdlUUFaaEFCekVBQVppQUFNOGdCekNBQ21JRUF6RUFBWnBBRG1FRUVNQU1CbUlFQXpDQUhNSU1JWUFZQ01BTUJtRUVPWUFZUndBd0VZQVlDTUlNY3dBd2lnQmtJd0F3RVlBWTVnQmxFQURNUWdCa0l3QXh5QURPSUFHWWdBRE1RZ0Jua0FHWVFBY3hBQUdZZ0FEUElBY3dnQXBpQkFNeEFBR2FRQTVoQkJEQURBWmlCQU13Z0J6Q0RDR0FHQWpBREFaaEJEbUFHRWNBTUJHQUdBakNESE1BTUlvQVpDTUFNQkdER1RZQmpubXZSM1dteUY3a0pjQ2ltaXVRcUIrMUZiZ0pzanFraXVVcXR2Y2hOZ0dxMFFSbXh4bDdrSmtEanV6SFZKRGM1a0xFQTRzVjRhcEtqL0lwNGtNMXp1MFMvN2YzanFVdE9NbW1WdmN3eEFnNHRpS2NxT2NsdkNmKzdSb0RvdmU3c09PcVNpelRLVFVTcFl3U0krdW5OY1ZRbUY3bVg4cjhvY0wzTXRycHJNNjlMTHZMVWQ4bGlad0hFaXFZck1xMUxMdkw4VEhvczMxMEE4YzZXYXdvenJFM09rZnp4UDBiTXBiZ21ZU0dFRUtXL21KeEpiWEtQbXErL0VYV0theElXUWdpeC90THIzMHUvTmpuSHhqdktJLzJmV2dRSUlVVEpkWlBMaGhXbnBGdnVrYXpmVy8zZWF5dTRxd0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnSGo0ZjlBY2RZSDJGUjVEQUFBQUFFbEZUa1N1UW1DQ1wiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIFxuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjUyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDI1MFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDI2NFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyNjJcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyNzZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjc0XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjg4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDI4NlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDMwMFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyOThcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgzMTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMzEwXCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzI0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDMyMlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDMzNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgzMzRcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgzNDhcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMzQ2XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzc0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDM3MlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDM4NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgzODRcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgzOThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMzk2XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDEwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDQwOFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQyMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg0MjBcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0MzRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNDMyXCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDQ2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDQ0NFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQ1OFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg0NTZcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0NzBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNDY4XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDgyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDQ4MFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQ5NFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg0OTJcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1MDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNTA0XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNTE4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDUxNlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDUzMFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg1MjhcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1NDJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNTQwXCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNTU0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDU1MlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDU2NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg1NjRcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1NzhcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNTc2XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNTkwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDU4OFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDYwMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg2MDBcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2MTRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNjEyXCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjI2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDYyNFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDYzOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg2MzZcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2NTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNjQ4XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjYyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDY2MFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDY3NFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg2NzJcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2ODZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNjg0XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjk4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDY5NlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDcxMFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg3MDhcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3MjJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNzIwXCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzM0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDczMlwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDc1MFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg3NDhcIlxuICAgICAgICAgIGQ9XCJNIDU5Mi41Niw2MDguMDQgSCA4NDEuMiBWIDgyMi42IEggNTkyLjU2IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxtYXNrXG4gICAgICAgIGlkPVwibWFzazc1NFwiXG4gICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgIHk9ezB9XG4gICAgICAgIHg9ezB9XG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcbiAgICAgID5cbiAgICAgICAgPGltYWdlXG4gICAgICAgICAgaWQ9XCJpbWFnZTc1NlwiXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFySUFBQUpVQ0FBQUFBRE1ENXJEQUFBQUFYTkNTVlFJNWdwYm1RQUFJQUJKUkVGVWVKenRuWGRnVk1YMng4L2RiSHFoaHhZNmhGNEZSQkRCaW9EMFpnRWJDaXJZeTN2K3NDQVc3UGllaXFLZzZCT3hJMFVCa2Q1N2t3NGhsVTRDSkNGdGQrZjN4L1o3Wis3ZXRyZHN6dWVmSlBmT3pEMXo5NXZaTSswTUFJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ2lObmhqRFpBTHAzZk1kb0NIMDZYcTZ5ODdHcFI4WlZMbHdyT255OXdFcU10cWhUWWpUWkFMalZ1TmRvQ0ZvNnpaL0t5czdOT25MaU0wZzBubHBPc2ViSFhyMzhOQUFDY1AzTG8wUDU5NXd3MkoySkJ5V3BQclZyWEE4RHBYVHQzYkR0cnRDMFJpT1Y4MlZ0V0dHMkJERWpHcHZWcmp4cHRSWVNCa2cwN2VhdFdyRGhqdEJFUkJFcFdEMXk3bHl6ZWhaMHliVURKNmtYMmdsODJ1WXcySWhKQXllcEl6ay96ZGh0dGcvV3hHVzFBWmFMQnN6djNQcDFxdEJWV0J5V3JLMXlIRDdQbTk3SGNWNXVwUU1ucVRkeWRhL1krbkdpMEZSWUdKV3NBN2IvSW1GckxhQ01zQzByV0VGSmZ6WmlSWnJRUkZnVWxheEJKVHgzOWJ6MmpqYkFrS0ZuRGlILzg2TnZWalRiQ2dxQmtEU1R4WDBlZWlqWGFDTXVCa2pXVW1qUDJETVFoTDNtZ1pBMm0xZUlGVFl5MndWcWdaSTJHRzdMdnVXaWpqYkFTS0ZualNYcHZZMGVqYmJBUUtGa3owRzNMaTlqUVNnVWxhd3JpM2xyWjFHZ2JyQUpLMWlUMDNqSEdhQk1zQWtyV0xGU2IvMG04MFRaWUFwU3NhZUFtcldwb3RBMVdBQ1ZySW5wczZXMjBDUllBSldzbTZ2NTF2OUVtbUIrVXJLbUltek1OUDVFUTRBc3lGN2FYWjhjWWJZUEpRY21halFkK1NqRGFCSE9Ea2pVZFF4YWxHRzJDcVVISm1vK2JsMVF4MmdRemc1STFJYjBYWXp2TEJpVnJSbm92d0YzalRGQ3lwdVNtNzNIY2dBVksxcHdNL2h3L0dRYjRZa3pLQTY4WmJZRlpRY21hbGY5N3dHZ0xUQXBLMXF6WVp1SWFHU29vV2RNUzl5T3VSYVNCa2pVdmRYK0lNOW9FTTRLU05USFhtZWNrU1JPQmtqVXprNGNiYllFSlFjbWFHZHVzQmthYllENVFzcWFtNXV3b28wMHdIU2haYzNQYkkwWmJZRHBRc2labk9vYms0SUdTTlRuSk0vRWpDZ2JmaDlucGQ2ZlJGcGdNbEt6cGViZXEwUmFZQzVTczZhbi9rdEVXbUF2TFJUMVhmWWJ0N1U3Vk5rVFpZK0lUVTZyVnFGVzNmcDJZOEwvQnNvNUh3djRNQzJFMzJnRGRXZW5Rc3JTWXRHYXQyblJvbjZ4bG1YeGkzeG9SenVLdFJ1VnJaYU0xbGF3YmUrdHJyKy9iTUd6djB0VjdVN2lLUnNMUExVUWxZZnRlU1orOHJGU3RjUXhXV3E1bFFmeVlWN0lBVVBYZXBSVmFTSlNQNjZZd0dvMkVHVk5MRmdEcS85OUpEVFRLWjFWNGpVYkNpZGtsQ3hBMWZKTVdLZzNDMVN2Y1Zsc0hISmZWSE9kdlBXOWFyM0daM1BNYUYyaGhVTExoWVBVTkF3OXFXK0xBVnRxV1oyRlFzdUhoejQ1UFg5R3lQUHRrTFV1ek5DalpNT0g0cU4yZldwWTNGcU1oZWtESmhvMmNPeDY1cWwxcFZlN1dyaXhyZzVJTkgyVFd0WWUxSysxaG5FNXdnNUlOSi8vMCtFT3pzanAxMXF3b2E0T1NEU3VYaDM2cVZWSGNPSzFLc2pnbzJmRGltS3haQk1QUmVKZzRBS0JrdzgvVUtSb1ZWSytQUmdWWkhKUnMySG5yVFkwS0dxMVJPUllISlJ0K1h2NUttM0lHb1djQWdKTFZBL0xvR2szS3FYT3RKc1ZZSFpTc0RwU1B5ZEdrbkRzMEtjWHFvR1QxNE54WVRYYnY5TmVpRU11RGt0V0ZkWnBFaW0yYnBrVXBWZ2NscXcrdjc5ZWdrS2diTlNqRThxQms5YUhzTVpjR3BmVFZvQXpMZzVMVmlRM3pOQ2dFSnhNQUphc2ZMMm13RXJFeE9yTW9XZjNJbnFXK2pLanU2c3V3UENoWjNYaS9SSDBaS0ZtVXJJNmMrcC82TXJxcUw4THlvR1QxNHhQMWd3WWQ4Zk5DeWVySS9vMnFpNmlPL1MrVXJKNm9YOUZsYTZ1QkdSWUhKYXNqQzlTUGM3WFJ3QXlMZzVMVmtjdC9xUzRDZzhhZ1pIVmxvZW9TbW10Z2hjVkJ5ZXJKY3RYbk5EVFR3Z3hyZzVMVms5UC9xQzJoVnFJV2RsZ2FsS3l1ckZWYndGOWhPT25CWXFCa2RVWHR5T3lpc1dXYTJHRmxVTEs2c3BPb3lyNW9YS0ZHaGxnWWxLeXVuQ3hRazN2eHZackdyTFVvS0ZsZGNha0o3cjFrN0dYTkRMRXdLRmw5VVJHOWMvRTkyTVlDb0dUMTVvVGluSXZHb1dJQkFDV3JONWxLTXk2K0Y3MENONVh2MkdWanlWT1liOGxZYkdNOVlDdXJMMmVVWlZ1TWl2V0JrdFdYQWtXckRCYVBRNi9BQjBwV1h3cVZUTGorZ1lvTkFDV3JMMlVWOHZNc3VZZXVXUHNZWElwb0JjeC83TEk0NTJRYnZJUnhTSjM5UGFmajc5R3grcHFQeU1mcWtzMlZyZGlxOUlLaTMzWVNRa2plMUhyNlZnQ1JpOVVsbXlYVDNEOVliZXgwcHlkRnlkZnQ5YTBDSWcrclN6WkhJOFcrNi9RbmNpN3FnVWN2bWhlclMvYVVQTVV5dkFMN084NmdkSzdsMStsYkRVUTZWcGRzdmh4Yi8yUXA5aTBuUDZscmNVZDlLNEpJeGVLU3RWMlZvMWlXVi9DMlFMR0VFTWMzRGZTdEN5SU5pMHMycVZ5R1lobHRiQlJWc1lTUW9xbTRtZEdFV0Z5eTlSaHFrNkZZaWxmZzQrUXc3SWVaRG90THRyMWtPNWV5dkFJUnhSSkNGamZTdDBKSVNDd3UyZHNrSzVibEZZZ3JscEFyaitNa3ZMbXd1R1FmbEdnbDB5dVlIdHF6V0lzaFpVeUZ4U1U3VFpxUnkxaUtmVU9LTDF6NE1IcTBKc0xpa3AwdnlVYW1ZdCtVMkh2N3RicSsxVUpFc0xoazkwZ3hrYVhZS0FsZWdZZXNudnJXQzJGamJjbkdTcGxKV0ZhTm50bitoa042TmN1ZlJPZkFKRmhic3Awa0dMaWMxY2ErTG4xTWx4QkM1aVhvV3plRWdiVWxPeUcwZlV5dlFLb2Y2Mk1uVHVDYUFtdEw5cHVRNWkxbmVRVnZ5dkFLUEp6cXBtL3RFQ3FXbGl3WGNvRTNVN0V5dlFJM1JZUDFyUjlDdzlLU2JlMEtZWnhXZnF5WGlnbjZWaENoWUduSlBodkN0dVdNNGRRb09XTUZRYmorRHdjT2pNYlNrdDBnYmhwTHNiSkd0L2hNUjgwYWpKVWwyMGhjZVgreC9OaHB5cndDRHgraVpvM0Z5cEo5VWRTd0ZTeXZZSnFLTnBZUVFtYWdaZzNGd3BLMUhSR3o2NjhhOUZ4UnI2dFVMQ0Z2bzJhTnhNS1M3U2RtRnF1TnRiK21XckdFVE5HM29rZ1FGcGJzTWhHcm1GN0JWQTBVUzF5UDZGdFRKQkRyU3JhclNDZnFyM0Q1c1I0cWh1bGJWeVFBNjBwMk1kdW1GUXcvVmhPdmdCQkNTRkVQZlN1TCtMR3NaUHV3Wjc3K1ppbjJWYTBVUzhqcHhycldGdkZqVmNuYXR6TXQranVzZnF5WDNjbjZWaGp4WWxYSlRtSWF4R3hqTmZNSzNQeUlPMitOd2FLU2JYeVpaYy9LbXZRYzlsY3IxRmFWeC9QNlZobnhZRTNKUnExaW1iT1NOWVB3aXJadExDR2tySSsrbFViY1dGT3lyN0NzWVNwV1V6L1dRMDV0Zld1TkFJQkZKVHVBcFQrV1Y4Qk5raEZ1VGpxTDBKMDFBQ3RLdGwwQnc1WlZETVVDUkRVYy92N1dVclYxRlRCWnoyb2piaXdvMllhWkRGTldNYndDTDlXSHpwSjd0RUlJaWxyclUyVWtBT3RKdHQ0aGhpVXNyeUFRZTQ4UHM5WFdPSkJOMGVHdk1CS001U1Ria0tWWXRsY1FURXkvbjByVVZ0b1BqblRwanRVazI0N2xGYXlXcUZnQWdMVFh6cWl0dHBlaTlQRFZGYUZpTWNuMlp4M25JYldOOVpEMGhGYit3WEljTmRBWlMwazJhZ3ByQmt1S0h4dE13dFB5enhLbGNtYzRhb3F3c1pKazA1YXpqRmhUUzBGeDFXZVVxYTA4SVlSa015TGFJMkhDT3BLMTNYdUJaWU1jUHphUUR1dlYxcDRRUXFaclcwOGtCSmFSYk5zVlRCTld5MjlqR3ovODJtTXRPYkEvV2FpMi9vUVVZMkI2WGJHSVpPdCt3djRTWDVNcXQ3U29SODhSUWdwZXNBTzAyYUgyQlJBeVB4dzFSbGhZUXJKMTM3bkNObUN0L0RaMnJIdkZnZU54QUlqL05GUmdyNUE0TEIwUjBYSTczRzlab2JLQWFJY21kb2pRN3ZHeEl0R0lkNDI3d0x2aXpDY0FzU0tkb3JpL1c3aC9PZFg1SEFEY1B6TmVwWVhMK3hPVkpSZ0lTbFpqa29jODFGdDA1UE55QmY5SytaUzVrUHlqU01zWFZkWHpNWkhiL3dJQTZQV3J5bFdFNU1hMTZncEFaR0JxeHlCcDhQOHVLVEJwUGtDNnRHN1ZLUGR6MG84cGVFb2dLeTNYVlBreCtLajNDQ0txNmMyMzM1Z1NJdEhCM1pTTEpSOEJuSGorZW5hdW1LR2V4U3lPSFBmUG8zMlh0Vk5pbzQ4YnIxK3ZLajhpQTFPMnNrblhUcDZYS2FGWHRGYjJXQUVBQU5pWGV2SnZpL05lcXIxWDNWdjRRN082STZFd2wyUmphblc5ODVVZi9wRzQwa3FoWWdIYXVCY1luT251djFTSHRVQk1HbzVPbXRUZkNDem4wNmp1ZnQzc1ZKZWZzMFZGeDhZbkpWZXRYck4yM2RRcU1sN2dodUhubFQ2MDVSdTNKSmF1ZVhsdndLVkc2MVVkT1BQdGZXcHlHMG5sazZ4aHJCK2hXTEVBdGxyVkxwOFBIdXZvdUZiTllvR1M1cWRVNURZU1hJbW1GK3RIcWxBc3VNNGVQczBibmR0N3Q1cmh1bmpMSHZ5Qmt0V0pEYVBPYVYza255K3B5VDArVmlzN2RBWWxxdzhiaDU5TmFaNWVUYjRmbHRTNFpRMVdydmQrVjJGUjJpQVZtUkVacUI0eE1JVDFxZFduWjVhVm5mNWNacGNwNWVWanBXWG52Mm5PdUYyZHRVdEhDc3RVZnhhSUpDd3AyUTIxNjI5ei8zYThqWnpLVnYvYm5Tdm5Xa2FDUGlwaXlwUTNWdjlwSUJLd29tUTNwTm9YZUgvZkl1UDhidHNYM2x5SFdSRVBQbEJoRnA2Z29BOFdsT3lHVkxqT0Y2L0lPZHJHeDEweFRuRGQxcXJJVjhZa3h1dElPS3JjcmdQVzdNamdHb093czNINE9lamppM2hoKy9obFhtL0tOZjhkRjBDREw5TUVPWk1TZmIvZTlpbTk4S3VQL2FWNGFMMU5seDFLc3hvSlNqYmNiQnB4RGlCZ3BqWlZNR3RiL1pOQ2dJSDlSRXVwWm5QUmIvejl3MTJLVFJ1TmtrV0ViQnA2SGdETytpK2M0ODhvdU9ZVkE4Q1NJY0xCaE9TR3ZsOExHSW9GK05mZ1JOYXRVSXg0VWVYa05TSUZpL215RzkxdGFnKy9MenNxaW9mWGwrVmZqNHBLOS91eWo3SGZ5R3ZLcmJ0R2h3OE1zWlprTjNxMkQ5aC84MTdaTEdmRTRFdHZMdWFJQVFBa24xVnMzdXZxUGd0RUVwYVM3Q2JmaHBkNlc5MVhaSTdMcm5BdndzM3RMcGJxYWNYMjdiYmNxaWdyWWlYSmJncm9hVldmbnVGdzVIeFdUMTV0azZZY0xuZWUrVVk4OEVEOEthVUdPaG9wK0FRUW1WaElzcHVDTnhXbU5HdFJUWDU5RTV1MHFCbXFMWHhPc1lrUHlUY0lrWXQxSkx0WlpCdXNQVEZSYkt3bXlpN3JHenVaRlY0eEpEL0plWXhKc09ZRWlCWFlPdVFzNjFiTkY3ZG1abTUrbnRIbWN0Zk1XTDM1cHdkbHJOOHUvRkt1Y1Y3NllGRHY4R09WVmxha2plMXkySjFrZjN2YTNmaDMzVHZKOW90MnVZSnBxUGhVTyt0dUFiTU9GcEhzNWpyTUdqVHlyUmc4UXVtTVJYM3MzYWw3cXEzMHQvSWJ3NHlRUEtYZ0kwRGtZUTNKYm1XM3NkeFgvbVFmQzEzV0FmNER2NVpMLzlidXA5VFFYeFI5Q0lnY0xDSFpMU0k5cjdvQndiaFBwVVpIUjBlN2RSc1ZIUjBkSFIyOXlIKzNUUHJrVkpUU3RkNjVVV28vRU4zQk5RWmhZTXN3WnM4TG9GbkFSRmFkN1E0QTEvL2VjQUUwL3RxOW9DQmdQVmRNejUxU24rajg5bVhaVmdJQVFMMkdKNVZsUkNSamdWWjJTMTJ4Q3R3c2lDcVRtd3dBajFBS21pcjl0YVFyTlhhTXVvL0RBTENWMVp4dFE4K0kzYjVZRWVQNzNiSGZBVUIrTEFLQVJmM3FBd0JBMjRBMUNETDI1QjdkcVhDSnl6VS9Lc3VIU01iMHJld1c5bGdCQUFERUgvQ24zUjdIY1p5bkM4YTUrY1YvdDdTRGpQZnlna0p6clJmSkJLY1NOR2JyTU5FMkZxRGtJOS9TVjhkSHBZUVFUM1JpajRSbWx2bFNMajhvNDdtL3lqRXlnUGI0UFJ0dVRON0tiZzI5N2lYbUs0ODM2NXhKR2NXeVRYZDZpanJaUXRhTDJhZk1ZR2Q5V1U4eEFmZy9waW5iaHA0T21hWjhVdGFUMVFESXhROW1lQUo2Yy9HMVl5OWNjb2NyY3IxYTlFSUtBTGkyVFRnbTY5SC9HU0RYV0RkVjhwVGxNd3pMTFpnMGRSaTViY01reFdiajBtNUxoOE4vZWJYUytza0IxVzFsZTJmL1V1cSsyMnJVdGZFWlM1ZGVEWmVWaUw2WTJUR1E0QlVJc1Uzd3JNTnkvdUViSE9NczE1SWdiRXdzMlcyaTQ3RXN4dnNQQ0Z1SFIzVkdJdWFWckRMRnBwOFBLT0p0YkYxRGc0TmNXckZ0V09pZUY0VkhBbyt6ZlZDSloxSFpRTWxxeFBiaGlucmVjVUg5L0ZvOXRURW1va0hKYXNPT29jckdpbEtDdlFrWlMyUXJMU2haVGRnK1ZPSEpBN3hOWGxhTnJLMG5LRmt0MkRGTTZYaDhZWEhRbjFucWJZbDRVTElhc0ZPaFZ3QUF4VnNEL3lyZHB0NllpQWNscTU0ZFEyUXFsa3Z0MEsyMWV3eldOU2Z3V0puMSs5ejM0K054dEN0eU1OKzQ3SFpoWUZoUmJMMS9PZTF3bG1kOG1nNEFFUDI5djZTTDF3QUExMnpLNm9PSE5yelpEbHVUQ01GMGtwV3IySVQzdk1lSG5oOXZBNERxUzczYkZQS0hjd0J4VXp6enQ0WHZoenJER2JFR1pwUHNkcG1MOTJMbStEZlNsRDNLQVVEU3k2ZGNoSkNTdjY0QmdQaTV2dHV1cFFyaUlTSG13MlNTM1NHempZVUpnV2ZJWE80S0FNQ2xEbnZwellsZDdBREF2UmE0TSt4TDYyMS9SWVNZUzdJNzVCNTlYQzBqS1AvdlBJZTE3ZVhBdTZVM2F2YmFJZ2owOGRXd2MxaU96QnczTmhiN0UrNEw4bDlqSitEQWdSRGNsYUNDWFVOejVXYnBGU3pDbEg4ZEJlQ3lmcStBdUZHcEFOd0lYdW9xbDFRWmlKZ0JFemtHc3IwQ0FHNCtyU0RIUUlBSmd2QUdoSkJTK1UrSWZMQ1ZWY3d1MlY0QkFQRFBvM2NSQUxoeUFlRDAxVGdBNFBXM09PeC9DVUhKS21YM0VObGVBUURKNVAzOTJDNEF1SkFKOEVlWEtnQXh2QkR6eGJqL0t3SXdpMk93VTlsM051K2M1Tk84Yyt0K0NIN0lPb3hZTEtUeXRiSnJpQmFsWEh4V2dWY0FBRnQzQkIzNi9UUHYzTHJ2UmdhNkFtUitoYUtISUtaQ2RTdHI4RC9wVGNVQnRtVHdwODVpbGdXYXVodW5iQ01CcTB1V2U3VEVaOHFaM29MYnpZNzVMVDEzTFNVL1lqbXNMbG13amZCTWdEazNkNmJjYnJQTk85cDFHRGVDUlFhV2x5eEE2dVBMTXM0YyttVTAvV2pRS2svdkxYRTRTbzlNcmVXOXd1RVVaU0NXbXhGVUhlQW9tajgwcWdzSmRaT2MrV2U5QjNOSEpVUlZYR1YyQStQVEduTzUyVVh1UDJLdnViVjU4cVdEeS8vQlE3MnRpaFZiV2E3Rit3ZUxuWTd6YSs2WGV3NDkxMmVkKzN5a2tvVnlnczBpWnNLQ2tvMSs4cUxuMmE2dDhzN1ppbnJXUDc1d2NZemx2aEVSQUxDaVpLTm5CRXdmbk80bEl5YzNPZkFJdXFKQllUTVJDU2ZXayt6alFSTmVKeHRLejlucFVwRGxXUmoreUpKWVRyS056d2MvL3l2Si9YL2JUenpUcDRmVFRzdUE0eWZoWm56TjRMOUhOcFdhczlHdHZBdWpjRFlNVUxKaEozb3c3MEx5N1ZLemRxN0t1OUJJc3RvakdlTUgxaU9jMm9JVlh3ODI0Vjg1K1dVWkpEL0NQM3lKQ0U3eWltcTJSMFBMckFwS05zd2tKL092ZEJiTTA3cnlGc0Q5NzBnWXc4SW9jNENTRFRzT0ovOFZPOHI1YWZKUEFCeTRJSmhtaU9JcmxNZzRiakZ5UWNtR21Zc1grVU5UWDMvSVQ1Ti9EbUJWWjBGejNPRjczajZhcTBjMU5jMmlvR1REVFA1ZW5tVEpvc1BVaE1KUWRMbkhXd1pmMkt3d2lHMWtnU01HNFdhdUsvanZvK3VrNWl6NlBIamxqT05qUTFiMElDcXgzRlJDM0xxZ3h6c2VrSjQxYVgxUTFubjRsV2hKTENkWmFITXE4UEZ6NWV4QWJIWXdJT2ZxR21FekVRa24xcE1zWEh2UzkzRG5kMG15c2paYzRsMmdVRDRiNHlCYUZBdEtGaHJNTFhJL08rTmh1YnU4WTRZdE8rY2tqcnlmKzJJVURnK1dXNE5weVYwSlhJdUJuV3VYWmE1ZXJTREVGcGRhTy9icTZYenRqYklxNk5IckFUbDZGR3pnQ3AyUWx2ZnNXWTJ0c1Rnb1diMVFKbGhFQUk3TEloWURXMWtGY0YxMlNrMXFiOXc4alR0MUpNdkFTRVhKN1d0ekJRZHdlWUpobUdERWdCdS9VR0xLK1BzM1hTV0VrS3ZiSHBhN3QxWXJFb2QrbTFudU9MdndvVnFoMHlKaHdYakpjdmVYL0M0dFplY3RUdTlUWFR1NnFYMnVFcUpHN1BjR244bDloaDdxQXdrM2hrdVd1NitFL0NBcFpiK2dYVi81QTFVK1dBSHgvd25Zb3V0YVhqZDBEa1I3akpZczkwQUpJZDlLU2RtSnQwK3hvSWU2SjhzbitxdmdhUFpiYTRiT2cyaU93WkxsN3I5S0NKa2pJV1hpVnY2VGR3dFd4SWFacDV3OEM3N0YzcllCR0N0Wjd0NnJoQkF5UzBMUzhZTHpPbHlUMVR4YVBrM1A4eTJvaUlUb0hUZ3VLd2Z1M2xueEFKS21CZXlQQ3ViQ3VmSHgycHNrd21NQ1A4RCtkQVJFc2tmSnlvQzc3N000QUpBazJmVFd3bXR0bXdtdmhZK0VJY0pyMTBYQXRuSjBicVREamZ0VWVqUFpsaktrRkQweVZYZ1JBRTRmVm5OK1ErSUkrckxFNnBRRFNHTDdIbEh4SkhPQWtwVU1OM1pXbk9kWENkOU4xUGhacjlEVFh1bS9XYUZOQUFDUFNkbE83b0ZycStKQkpnRWxLeFh1M3MvaWZMK0hUazVWTlNOZkFqOHNqQ3dLbmZUL0lJNzJORlZQTWdjb1dZbHc5ODcwZXdVUzNocDFUdi9yWGRTMHVhcldBTS9aUTNkWHVyOU51VmlvNWtubUFDVXJEZTZlendLRUlhSGZmYmc4Um5ETk5YT0hoaVo1cWRoQ3YzNkZZZ0ZZMzVYRkVRTnBjR08vREd6S0tGcmdjK0NrOEZxR3JxRXpEcDhSWGl0ZnJhY0Y0UUVsS3dWdTNPZHhnWC9Ic1JMNktmMUdlRzMrRmEwTWtrTHhFdUcxWFJodlJuK01tUDNpeGhZSGw3RlVRcWFhSi9oUHp0WjVXVXE3eTN3TG5QZm9hd0VDWUloa3VYdXU4c3FRRlBEbERsNnUwcEd5bjZ5UzEvbHp4bjlJOEdnUXJkRmZzb0kybGhCSm14SzRTYVdCZWNxZTFIMDNjOEtpWUxNUEt6dmRIRkdIN3BMbHhna1VTNlI1aE55b1BIK1cwM2NiMEcxSStUbHdMZGRPWGVlTEVTOTZTNWE3UjZoWVF1bUxVMm40MFNrWElZUzR6bnpTV0c1Rk5TSG1pUnl2YzNEcGd3Z0prSVNoTjhUaDdwcE5HYWd2cWlheEVLNUc5NjUxNGZUdXJlZlZyQ0pRUStxb0llbEozTlZUeTc0N2JwUUpsUjE5VzFtS0gwc0lJV1ZXbXZlMDFlelNMUzJDcG93aXFDcGhnTHY3YytvZXYrZ2tCWkdLak1KMTRZTFJKbWdLVGlXSXdOMzFCWDB2TnhjaGJxRWx3VmFXRFhmM2w2ejFzWG9HQmVEaTdlV2xPajdQN0tCa21YRDNmTTVjMFUxZnFzM0czcVJWemZLOGZRWHllMEQxaHZkckhGOTRmUEVTakgxb1ZYVHJmbkYzRmJFTGVVYVd6ZlpCcTY4UVFoeW5QcFc3anlYbUNVOEljTmV4TVJoZzFxTG9KVm51THVwWWdZZjM1SmhjOVJ0ZkFJd3pkOHJxUENSODdaOEtLSitHMzRqV1JDZkpjbmVMdExHRXpKTmhjZkt5Z0l3bEQ4Z1lDWS82YitBaUFjZlRsaHRFUndEMGtxeW9WMEFrcm92eEZQVlJVTTVMWGFWbjdWOFduTFdkOUt5SWVkQkZzdHdZTWErQUVKSWgzZUF1dkFWZHl5U0hFckN2NFQzMUsyeG1BVWNNcUhCajVvU0lFbGduVHZLdzB3VGVzTU9OMSt6akp5bHpBa0MwUU1xdHV2TXVES2dSV1pNQ3lrREpDdUh1L0RKVVhNdTRPcGtTQzR1L2lYY2g1bWZCM29TOEIvS2d6YXpxL01zSi9ERzJtczFSc2hZay9JNEJOMGJjanlXRUVIS2pWSHNiRjBxdzZTNkE1eVVrYzQxUjkrNGlBMnhsK1hDanZwSVFPN2laMUgxL0NZSjlZcGNFdTF4UHJBRDRxYWRnbTAzZGhnTGJKRDQwb2tISjh1REd6SllTN2JxRjFQSkt5L212ZU5tOS9Ea3dsd3NnYTRSZ3hIYnMxN3dMSkZmcVV5TVpsR3d3M09ndkpaMXEwREowRWpmbnpqYmhYVGxLUCtyREpZaE50NmNzTnZoQy9qR3BUNDFrY0NWWEVOeklPZElPbVcwbHRjU2lqYndMenIra1pqMjBoM2ZoNy9OU3N5SW1JcnpkcjlFaHhtTjlsRWcrWWFaUGVYRE9UUktDSUhnWVZSR1VzNWcvNklWWWduQktWdEpZZ1llT1VnMk8raTRvWDhrdDB1dHFueHVZMHprVmUxK1dKSXlTNVVaSkdaRHlJRDJJUmVyT2dHeU9GK1hvcnNydi9rVUd6azlpUTJkQVRFZ1lKVHRTZWhzcmF5MVgvYjk5d2l0NlZsNS9OK0gxUzU2Y3B4K0xnSmp4bFpQd1NYYTBITVVTeVowb0FFaVlmTGlDRU9JcVh0eEQ3bmM3bHo1dHcrbUNuSlhQMVplWk1YS3huSHVrZGxQNGlYVDZRUWZjeUsra2pSVjRPRi9YS1NOMVVxY3VOU3F5TjJWNjlwTFg3dGdxT21kM0Jxc0VlMnFLODZKdkIwTjBZcFNqU003REVIT2hzcFU5VGpsMUF3Q0FrK1VWRUVLY3lrT3YxUDNQR1JjaHBQaVBhNmtOUnNwam15NVdsT1g4ZWl1T21VY0c2aVI3bkRHZUtsdXhoQ2llNys5MjNGdEUwV1RLNXBocmRuczgzL0s1Vm9xV2dEQlJKZGtUakRZVzVJd1ZlSmloc0FLdGMvMWxsSTBYM081MnhuOTdtZDdITVNMaFFJMWtqN2RoRkRwU3ZtSUpJOXg3S0dKV0JoWnlnYjlXb2RxK3dOc3pjSEl5QWxBaFdXWWJPMXkyVjBBSUtWSFdCTjRlUEtQMU1jK2RmUzdvYm1FRW5IbUVLSmRzQmt1eDh2MVlRb2lNSmJOQnpBNHVKRE9GOHg1MnhIRWNGN3N2K1BZMFpTOHBvcWs4dmRJVGd3OVJyM01qdnBhOFhpQ0l2a3FPeW9qcUhQeDMycytsQUJtdlhvSGEwK29BUUF5dmU5alhKdUhzVWNUY0tHMWxNeGgrTERkTWdSOUxDSkcxeTlaUDRsRktTYTR4ZkkvQXl4R2M4aEpRV1ZyWnpJSDBOaFlHL2s5Wkd3dlFMVVhCQVRQODZGcmtnaE1nYnh2QXlvUFZBU0M2ZXJCdlN6QW1ySUJLSXRrTWhsY0EwRk9wWWlHdTl4L3lNMVdjYUIvMGQzNzN5d0FscFFDN3U4VUNRTDFOS1VHMzg5QXZFRkE1UmxFeUJ4OWczZHFtdk5SK1NqSXREbTQzMTJZWEZCU1VBZ0JjTFNnb0tEaDZPRGoxU3BTczlWSGl5MmF5eGdvQW9MNURRWUZ1amlsWm9GRTF5Smt0Njh1N1BUSG8zS01DUEpBakFsQWdXVmJQeTQzZ1JEbkpPRVgrRTlnTUNvd2U4NGtOQUdJSHpOcThhOG5URFFBQUVqY0czSFc5YkxsVlM0Z1ErWkk5S1I3SzZsdkZraVV2S0trQTk2aFBzNjc1aVFEUVpyVzdvVC8vaEIwQVd2cFdJQkRYOTlMMzNDRG1SYlprUXlnV0ppaVhMSDhub2pTNG0zZTZRM0NlZWlZT0FEcmxlSXR6dmhNRkFNMVhlQUowRnIwdFpYYzZZbnJrU3Zaa3FEblAxdnhUTTZWVG9mQzB3dmgrSHk1WTh0Vjl0UUVBcXV3S0tPOHVBSURZWWI5bEZWLys1NVBPNkJWRUJqSWxHNnFOQmJEbGhTNkZ4UlBLNitIVjQrVEEvNWdEN2xYbXRxUWExWmd4N3hHcklVK3lKOXVITG5HZWNzbHVVRjJkNkEyQjVUbjRNZWNRSVpFOUxwczFlSC9vUkN1Vmw5OUQ5U0JVVXRCb1J0UTFhc3VyQkVTMFpMUHVrS0JZV0tWOHVEN3FUc1ZaUFNRRVR6L1dWRnRlSlNDU0paczE2QjhweVRJRmtRaWxNMDd0KzdzYWZCZ3VucFFVbWdpV2JLWVVyd0FBWUxueVo2VDNVcDRYQUFDS2d2NWZYTHRVRmxjWmlGekpaZzhXQkhobjhLZnloM0FQS2M4TEFBQVZQd2F1T1RpbWNIY09ZbWFramhoSUdTdndFRitnZk15Z1NPMXB0dFgyK3d1cnVGZGxZWldDU0YxOG1EbEVvbGNBQUNVclJ5aCtUdUo5SHlyT0N3QUFCZU4vOTRidmRzMzhYa1ZCTHc1V2xtLzhRUlVQUlNRZ3JaWE42aUNuekhIS1cxbHlUTkUvZlZSTWpNOGw2N1RKUFVPYi82OFk3eVdiZkg4dDVwd3krd3NWcnhjMmlzaHNaU1gzdk53czVZZkxsa0h6TzM2WG5TZmw3aEhwY1Bqbkh3c0JBR0RQTGJjUGJSZDdldlVQR1c2M2xtczV1bk44OXJMbHhiTEtIS1R3OFBKZDhoNkR5RWRLSzVzcE9maXJoK1hLV2loQ2lKSXRZSzEzdUFnaHhMWEpkd2d6WjR2eXRhc3hMMThtaEJEblJua2J3cGNxTkgrcWJQTVJtVWlRYkpaY3hjTERDajl2UWdoeHlSM25xbmZZbTNVUHBXVzB2ZU05YWZtRTVDTkVBS0NKMHBYcU44aTBIcEZOYU1sbXl2SmpBUUFndFZUaEIwNElJWXZsUFl2NzFKLzFYZUh0bS95bS9DN0RhNXV1MFBoTHVQd203SVNVckd5dkFBRGdUNFdmT0NHRU9PVXRERWdOQ0xxVlhjTXJudUo3QUFBZ0FFbEVRVlJ1dDl2dEhBQ0F6VzYzMiszMlgveDNTNlRYSkY1aDU0c3NrdmVlekVERWRiK3loKzVWa092Ny9zcWZhSHRWMXZCUzh3QnZJRzFWR1FEQW1wZktvZkYvNndBQWNBRWViRnd2eVZXNVcySG5TODNNSHlLUkVLMXNWaWRGcGFaY1Z0aEtFVUtJczRlc0NnaVhsSmMwb3g4SU9sVnFtYlo5bE55U1RHOGF1bkN6RVdHdGJNNFEvbGxaMHJpeWNKenloOXJldkVWR2hJeDhoejhDalBPRUV3QmdVeDdBNGtIdVZWeE5BOGJiTGtvdHM3LzBxYjVnRHB4VW1CR1JqbWdybTlVNWRBRjBibExZVEJGQ0NIRU5sUEdrcElCZDRYdXF4TWJHeHNaeUFBQlJzYkd4c2JGeGkveDN5eVE3eVd1Vld2Nm03QmVGeUVaTXNsbGRGQmNiZFZ5azNKQWNpQW45QkI5UCtqd0RCMlZSVFgvL3lYYkxwWmJhUjdIaDNXVFlqU2hFUkxMWnl2eFlOeThwL3RnSkllUXBHVStLLzhXaldkZi9LSk51OXBsZVJaK1MrbTNQclZKcWRrYUUrWVhtaEMzWmJNVmVBUUJBbXBxaFdWSWdPSmxlaE9RUEN3a2g1UExiMU9uOWhQZXVFa0tJYTUva1R0M05pczErWDRiVmlGS1lrbFhoRlFBQXdLK0tQM2hDQ0pHMUJzdlcrdG5aWHo2ZHp0ajBiZXYrMGNhZEN4NnFJcm0wcllxdHhrTng5WUFsMlJ5VmlsWFJWaEZDaUd1QXZLZUp4eWpnYkRKaUdOeXAyT2pEbEFOeEVNMWhTRmFkVndBQVlOdFBMMWtpV2FGT1BJcHFPWEJRTzlrUmpybWFYWHMyRmwyS21IQlNzYzFUNVZxREtJRXUyV3dOZGxOUFZQelJFMElJbVNOZWVzdmZDd201dWxwbUY3M21CM2tWcnZ5Rll2M0tWeFZiN0VpWFp3eWlES3BrYzdUWS81OTBWdkdIVHdnaHJtRmloWGZJY3FmS2wzRzJQVUNkYmU1YzUyOW1KbWxlck5qaU5YSk1RUlJEazZ4cVA5Yk5OTVVmUGlHRWtQTWlFYnJpZkRFNGo4c0lWUkRsQzJSenNnNGppVzJaY29QdmsvVjJFS1ZRSkt1UllxR09zc09VZkt4aGU2cTMrWmF6dWg1TkZCQUZBQkFydk43Rkg0cjJhVWJCOXlzMzk0S3NZNmJOUXdTTUplY08xV2ozLzVtNWsxVGw3L1BHdjFpM3J2UDF6Ym5wendsR0E5WlBMSVcyYzFJRnVSTDhpMWx2b3A4LzJrREZac252aTVUblJXUWdhR1Z6dW1wV2RoTlYwd21FT0VlelN2NUFORjlKTTlZaFNqN1dVVWNOb2xZb045WmgxWk1iTGQvSzVnN2RxVmxaSitjOXFDcS9iYzV4Um9PZjQvLzFlQ2EvbFNXYnNnRit2RWE0NUxWR1IxL1NDOVRBWWMvSjZzd0ZzNHA1NGdtaUxieFdWc00yRmdDYXEyeG1TWFlhdmVDMnZuNTl4VzJjQUhjYTRmVm1WN3k1WE1JanhRR2dkem5kQ2tuY29lV0xRMFFJbHF5MmlnWDRVb1VHQ0NHRTdLSFBLTmcrOFM1MldTUmowWmZ0STIrdTNiVHAyM3E1S2d3OVlQbnZWOHNRSk5sY3JlT3hOcjdLK29pbHNwcCt3RUh5RDA1Q0NIR3RabzFXMFhQOTV0YnNVZG9PelBoTmF1eDhXTW5yUVpRUUtObGNqZHRZQUppaFJnYUVFRUtXME1ONHhJNWRlZWJjaGtreVk3UEVQN0s3NEhMbWgvVW90Mndxb284VGtvTTdhM1VqUUxLNVlWaWduSnF2VnJMa2QwYm9tYWo0UkFWZnh0R3BEZUpwYTJTNHQxVVorYXg4U3hDRitDVWJEc1VDL0Z1dFlnbFpva2NMOXB6eWczUUlJV2VTZFRBUmNlT1RiQmk4QWdDQWhBejFtbDB0ZWEycllpWTdRNXNod3ZOaE54RHg0WlZzbUJRTE1FYTlaTWx1eGxpWFpqeWhUckY1Mk1qcWlFZXllV0ZiVUc5VHZKTXFnT3lBWlE5eFZSSzFPSFF1T2lYWk93UEdUVkhsRlJBeVdRTjdFS200SlhzcWpGdERPNVJwb05raTcxazFWVjdlbDMvOHM4WnFqYktQWFhmdTFJTHJPUUFBK3ljcWpUdUdaK1BxeVMyRUVKSVgxczNNNzJzZ1dlS2FFUU1BVUgwZElVUlJhTHNnN0I4NUNDR2s2RjRBcUxwRXJXM01wUkJJT0xpRmhOTXJBQUNBbEV5MW1pQ0VFTEtsT1FCODdQbGprN3FHYlpSbjhlS0Y1dERtb0ZyRE5sajdUQmZMSGUxNzh6STRPM3hiZUo4eGFLRW1yNlh3bVRrMUQzcFdkTHUrRUlsV2xQOTFBU1RjVDVzdjhNQU45UjdDK0VybXAycTdUczVlVzFXV2dKZ1BWUk5MQVN3YkpLMW5QdzNnRVdrOUtoV0g1M2dKc1VrTnNTU3BwOVVyZ3hCQ2lIK3BsVXVFMHZzQStoZUtwZERJSEVJSXVTQmNTbTR0TE9jWTZNT0luelYrTVNWRDh0ZzN5MDY2Z0dzb3N2eUF2RHBHTTBzbWZxRlpVWWlaK0ViRGRvMFFRbWFwNi9KMDBzQWhjTE1XdzIxRUtGVlBhS1VSUWdoeC9xaTJ6M1NYbXRYY0FWeHRyY25yUVV6STlScHB4TTNXTzJYSGlRbWt4a3ZxWWl6NCtiZFc3d2N4SCtxaWR3ckllMTF4alBldXM1V0gxK0N4Q2ZjaVJEQjJOZWZYMFhDdWUwUkJaejN0bVQzYW1WRFlVdnYzaEppSDJ0bmFhY1ZEeFpwbjI4b1lpdURhUHI5QjNaSXRIaEd4ZXdZSHVkajBYS1g4YUZzMnVXdldiVHJzREpuTTFyelhEVGMxMVBiUlA0K1JjUXlKYVVISmlqRHhzekM5bml0Nzl1NC9mUHdNUTBBMW03WnUxNmxMTmMyZm5kRzFRT3NpalFBbEt3TDM2YU5oTEowVVorZWVQbmV4b0xDNHROd0Z0dWk0aE9TcTFWUHJwRFdzRXA1bEt5VTM3QWhMdVhxRGtoVWo1azkybEV6TE1lRkxveTNRQnBTc0tEWFdSOHpRKzZ4SEk4R1JCWlJzS0pwdGtCVXJ3N3lzN1ZkbXRBa2FnWklOUWJlL1U0dzJRUXVPOXpwbnRBbGFZZTBGNmpxd2ZYU3AwU1pvd01YQkVhTll3SFU5b1RoeGRLamxYMUxKNE1nWUxBQUFsS3dFRHVZTXN2aDNrZU9lcFVhYm9DRW8yZERzT1RQQTBwcDFQVExQYUJPMEJDVXJnWjFuKzF0WXMrVFptVWFib0Nrb1dTbnN6QjFvV2MyU2YzOWd0QW1JRWR5cE5pUzlVYmd3WWx4bFpXQ2gwZUpUaFBNcG8xOGNZaGc5dGRyTG9pY1ZEeG45MnJRSFo3OGswM0p4QzZOTmtFdkp1RitOTmtGN1VMTFNTZjM1QnFOTmtNZkZFV3VOTmlFTTRJaUJkSXAvck5mWmFCdmtjUHkyQ0pyejhvT1NsWUZqMGFXYnJQUEMxdmJQTXRvRXhBVGNlTXJvSHBWRVhKK0ZZK01hWWtIcXJ6WmFqSks0K2xERTlsS3M4ejFuRWdxL2g1N21mMm5IQnY1aHRBbUlpZWg3MHVnMk5CVHo2U2ZwSXBXVzZ0OXFHZkJWY3k0L0VMRk9BYUlVYm5pZTBicGtzNmFaMGE4SE1TTTF2OVkwOHBCMkZENkprZUlRT3JjZU1scWROSlpoRTRzd2lYL0pkSXU3OHU2MjdMSmVSQmNhenplVmQxRDZBUTRVSUtIb3RjRm9uZnB3TFdwbDlOdEFySUJ0MkQ2anRlcG04NDFHdndyRUt0akhtcUFmdG1jb09yR0lkS0x2TnJpbDNUWFMvRlBJaUxtSUdyek9zUGt3NTFycjd2NUZESVRyTWMrUVBiaWw4M3NZWFhYRXN0Ui9KVk52d2VhODFzRG9XaU9XSm5yZ2J6bzJ0V1ZMaHNZWVhXUEUrcVJPM3V6UVE2L08zYy9WTjdxdUJvSEwxRFNuK2NpUm5jTGJnM2NkK3VYbkEyRjlncGxCeVlhRHBvTUc5d3JYMXF1SzdRc1hINDZRWXc4VWdaSU5FMVZ2Nm5kckk2MUhuOGlwVmN2K2pweDQzTXBBeVlZUHJsbmZHM28zMUVxMjVQU0dkV3NPdVRRcXpjS2daTU5Ndys0OXVuVk1VZm1haS9idjJMSTFveko3QXdHZ1pIWEEzcnhqaDNadEdpb1prcXJJTzdoLy83NGo1WnJiWkYxUXNycVIyQ1M5V2RQR2pkSVNwQXduT0V0eXNyTk9aQnpMS0F5N1hWWURKYXMzWFBYYWRWSlRhOVNvV2pVNU9TRWhMamJhRGdCQW5HWGxaY1hGeFpjdlg4cS9jUDdjNlhNRjZMVXlRTWthRHNmWmlBdjlWQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCSklKaDVMU2xhb09HZFd0V1RZeUpjcFlYWDc1NE9pZTdBQVBFYVl3T2tvMUpsWlRNNWF3b0xiSHk1NXZjclZmWERuVjVwM3BVbk4yL1kvT1dBbU1zaWt4MGtHeXZEZExTRVVmRjFkTlp4LzdaZWJnc3ZBYUZnL3BEQi9kS1pOMHMzYnBvd1VrOXJVSFUwVXZ1TVd3WEZ6L1cwR2lqWlJFemZHbFppRHBWckxvelhLY3FJWm9qVzdLRWtQSlY5OFFiYmJkVUVwL0lrRlNucktlWXpUQmlMcFJJbGhDUzgxeVMwWlpMd1Q0K1czS1ZzdThMNzZtTGlFWW9sQ3doT2ZlYS94UHV1azFXbGRhMU50cGdSQUtLSlV2SWlzWkdHeTlPekxSUVBpeWZva2UxUG5FUjBSNFZraVVYaGhodHZSaHA2eFJVNlpzRW84MUdRcUZHc3FUaWVmTk9kblRMVlZTbGRUV01OaHdKZ1NySkV0Y2JadFhzN1ZjVVZtbTN0TGtWeEREVVNaYTRYalM2QW5RR2xTaXUwdllxUmh1UGlLSlNzc1F4MnVnYTBMajVxb29xL1JGdHRQbUlHR29sU3k2bEcxMEZJZTN6VlZWcHV0SDJJMktvbGl4Wlp6ZTZEbnhxSEZOWEkwYy9vMnRnWFN3eFN0ajdYcU10NEdHYjAxeGRBVkZmb0R0cll0UzNzaVRIWkxQemo2bXYwZ3lqNjJCWlRMVDRVSXpKbjZvdlF6dWE3a2tXdTExd0tMZVFTNm5mc3ByWXl5M3JlRVJqcXhETllMYXlMaDhoMjZTRFpscHR3QzBTc2ZUQ2U5MDh3d0gyVGxQRlZzek1NN1lTaUFnc3lSNUw4OUdvM2ExUHpMOGdwdGxlUnRjaWdBSHNmN0h5dDROODFMaG5DdGxKVmJyRGxSWURIWVBEdkZWTjhhTmVhY1lzNUtPbjVUM1UzcXhUaTdUcUJSUEYwbkJKTFpvM3JGTTlPUzZLbEJVWG5NdkpPSExCSmFYb0hSMVp0ODZNNHRlMXpVS21Najk0VHNMRFZNSWxObXZXb0U3MUt2SFJuTE9zc09CY2JzYlJpMUxxeUNlcWRzc21hYWxWRTJNNFowbmh4ZE5aeDA1YzFkeFdxWmhJc2dDSkh6L0FLdVJ3RzkrMnNJUzIxQlRGQjMyL3h2WWZlWE1kQUlDakxabFcxYnVsNzdYTlk0S3Z1WEszci8zcldLaVBkUFNQckR1bmJoTDZwL1hYTjJHa1B0dTQxUDFMSjliRXdoVmhjZEdkNkVuM0NUY2ZjV20zM05DZFgwVWd1VHMzckRqZ1pEeVJocjNUTGIyNzFPWUpwZlRRcGxXckxza294Vkt3SElORHdxUzJXYXl2VVVkZFg2S085QlJaM3Z0VnB1UjVyN0Y2T0RVbmIzUXdIdVQ2NXlYeFhUeTJuU3diaTYraHBlL0VuTmdkNEVteGtKVWdTemdFZVFNOTVRV0I2bXMvczkzSktwZGt2TnRXWWx2RmRma1AweUcvdW1oVWhHNE9raUZaaVB1SDlYNEcrTkswWTd4QTkrdXozWGZHZjQwdTJmUXZpcGdmSmlHRWxQM1lXYVE2TnpMelBVYlA4Q29yL1plZUJHTllDWnpDYWI4cDlKUnplY2xhZlIxaUJZUno1VzBTUkJzMVlwTjQxemp2eFlnY1g1WWpXUmpGZWpuUCtwSzBwQ2R3MUFZQXFMNGc4QnBOc25Wbmw0dC9tb1FReHp4MlMvc3pLOU1teHJSTTRobEdocE9lWVpEa1M2d2lIeElVdG95ZU1IaFpjWTNQUWxlUmtGVU1IOE1IZDl2dTBLV2NtMlM2cVVuMXlKSnNMR3ZjNEdOZmttYU1GT2tBME9SUTBDV2haRzBUQzBKL0RJU1F5NnpkQTZtczVzdDFBK3NGdk1aNmlMZTMrUjByd1hmOG9tTG8xaGNHTFJzZmNFcFNGVW41NjN4SE40amFQNFFlZkNTRWtPM3R4RXF4SkxJa0M0c1pxZjE5bnNhTUZOMEFHbVVHWHhKSXRvYllrR293QzZwUzdYdVVsWDRkOHdVMFozMzBkM2tTREdDVm1jMy92N21HbnU3WGdDVGNxMndmbHMvYU9reWo0ZGJUVWtzcGZwQmRpaldSSjlsM0dhbVgrVkkwWktTNENWTDI4Uzd4SmR2NnVOU1BnUkR5VDJPYWZhdFl5ZStpcFhhem41SEZ1NTRybHVVNnVQZ2pIay9UMDQzenA3RE5sRkZGY293MXJNZzlWU0dqbUEvMFhLcGl1bVV4K1l6ci9pNHhheEFxa2Z1a3ZYalozZGV6QjM2RnRGM2JRbml4Sm10TzQvSkNka21ybkhTOFE3Wmx2ekV5Y3IxNUYvaC91Nm40dy8vNzlFZlpkZ2hwL25jRCtvUGZtaUhIUlgxbXRwbG1KOVVqcjVYOU55UDFDbCtLZW93VW8rNFFmQUVIdDdLZDVhNXhQWmttTUkvWnUvOUI1QTNFMTZDVDRrM1FtMVhxdDhFRjJlbGYxdjUzQTNmTHJDTFpSVnR4eEwwbHQ1aFB6THJkU1JIYU9BYitScXdPSThVREJ3V1hnaVRiVUdLdkpJQWRncytUT1hCOHY1cFhaR2ZGbXprWi9DM0lHQ3laNUV1UXhoeDhZUElGeFo3SjBqcGVnY2ljblRRMzhpVEw2aC9OOWFWZ1NYYTU4RktnWk9PMnkvNFlDSm5EczQ0VC9sdTRjVFZWOVk3ZVpoVHJEQzUyUEQyUi84dGd2dndxT204V1dOTlh5aGdaajRyclZiMEFjNkhOSUpkLzYwa3FJd1dsWlFpVTdBejVId01ocnVIQjV0VmtkVXBPcS90aTdNUnExb0lYdDM5RlRiUFZkNys5OU1FQ1A3djVYbXNONlNHYkFzalFLeDZWMmJwZlExaWIvRU1IdXhRWHpmVlBLTEFHdVA4R3orNTBZSFZLOXFpTGpMdjNBT05HMEdBdjE1T2Fab0h2dDhlVmZKeWRCdkV1ZkVEdmtvV2d5VFFsdVJSZ01zbkd2OGE2YzVCMVF4cFJNOWsxZFJZN21QZnFCMjlKWnc1SnFEU1AyWHU3SWZBZnNUWmxDQVBBNytiSGpxRVhzdmU5Q1hlTmUvYXJMUHBkbUJUODV3M2o2TWtBQU1xdXN2ODFKN1BYSUZrTk9jdGl2bUY5N1pUNkIvWlpqZ0VGdjJOQTl3SUpJVHNudG9nQ1c0Tzdsak8rbW92cUJScjRPYXNZV1VOTEZGb3dsdWs0Nmdja0drcE40djl2dVkxNi81SjNOcGNiY0ppYW9EeG9ZTVMybVZIRnNybjlhd0RFZFo2U3cwZ2dObWhpTGFSTHRzcVBqS1NFYlBPblVpTFo2SlAwQkNVVGZhM1lJTVlRMkR1QkZxNWdQV21nMnJmRUVzcklnRFR2VVZPODVicy9qWHIvVG44QktldXBLWUtXZkE1a0dMTEh0MVkwZ2ZHUDZ6RGg1bjFsU0pWczhpU1JHRmV2KzlNcGtTeGp1TEo4UU1EemU5Q0RhVndJN0ZZY1pUMUpiTzJYSkI1bkZQeFJRSm9OMUJUZGZmZXBxeGdMQWhjUzFLT3VVWmdka0lKYlE3ZGpkK0Q4OWFmME5QOVYreExNQWt1eUoxcjVhTnRqK0pRbHhZeDBoQkRpQ3BCRVRaRjBQSHlTM1VpL0grdzVNeGIyQmJoMmpGVXBoTGdVOVZnQ3FjY0krN25EbnlTZXVtWXl4KytrNzZIZHp3cnFsbEpIMDdZR0pPaEFIM1FvRG5LajQ0NVFFMTIwVE9UMUVHaXdLWnpzQ25qdk5hUm44MHEyRmYxMlhuRGN6Q1Q2QUp0L2RRTlVZUzBNcjFDL2JKUXlyRXhJa0JOL0xUWEJKLzRpcUU1bVJkQk9ubXZPVXRnYmtPQUR1aGxCN2hIQS9mUlV2Q0ZCeTZLRlpBTVhqaXFRN0t2MDIvemhDZnJVVm9sLzNLMEI2MEZsNm9Oc01WUkFidk9sZUlwNlAyQW00Q3cxd2Q2Z0JwS2o0Yjl0ejZLV1VjRmJQNXhJWHlRdldDd1pEa3cyeU1VZ1MrNE9hdGVGWTd1M2JkdDEzUE1uSTdEeVQ3eS8vNkttaXJ2Ujkyc0tOUUVBT0N2a1dFZGxZVEg5dW44czlqcmE3WXZyL2IvVGplaXc3NHV1ZmxGU3BlWlAzSVcrdG4xcmR2RGZ4UnVweVc2TmtOVXhHclN5OXdlV0Y2cVZQVGYzL282SlFmK0tkZWdEV0tmNEw3Z0pQZDFNWDRKdXJHZGUxdUE5L1VJdjJyZm14WlpKdXgyNGNPWVFMUUVoaExpT2ZuQ3J0SUE3TDlNTGVKMmZqckZ1SnRSR0I0dWdYckpyZzdRbEx0bURkd3UzMERHV1h5M2xwNHVqZjkzdDhTVzRqdlZVTFk1UEhFNHZPdC9iNDY5UC9ZY2FGbEFDbzdQdjV1cmExL3RWQzJuRVNucm1ZZngwakhGdXh2WTNUYkhDeHAwckQwdmV3K3g2NXpYSzBZelViMVNBRS93THBaZW9UVkY2Y3FIbk4rYWNzQmIrMWJMODZyVEwxZHA0L21XNjBaNWVITER3RUU3MEVTaysvb1lid0hGdy9icDFaMFFTeFhhaFh4ZThLa1loMUQzR0dtTUJ5Ym9tSHBXYzlKRXZhWmNabjhNRndaaE1FVFZkZlBQZDN2SlpEeGJkUkNXUnF3dnBVUng2ZWlSN0xlM21pa0NUZDRYYTBXTHYwR0dTYzkreXhkdFliVUJUK3U0aDF4WCtxMktjMlJwaWpiMVZVT3NZdk1RclQ4UXhlSXRxQUZ5a3AzYVU4V0ZNMnZxbTdqdXpIbHltaFdadm9aZnQ3WVpUdC9EY0YxaEFhL2FiQ1NiM3Z6M29YeGdqR1JuSytXK0tzYUx0WW1UMHYxUWU3L0VXLytXeUpmc1BQUktFakxrSE9pOTRTMHBucFhDRTloSkRFME9mL1R2aGZnRXh0QW5sc3BwQkpmRDN2ckZ4SFhpS1p2TC9TUzZBQWIyVjFoU3pEM0k1L3oxRitySytxZlN2cTBacWpmQXRUV0VPRE5pMGlFQlIvaXYxY2tQM050Z1dOSWx0dUJEMDV5ZVVKSFM0TmpOT3ZpdmNYNnZkcXdvZkpwZnN4ZUh2U2xkc0xtUEhZRDM2WmVuNG1yS2lVa1lLcnBiYVp3QUF6S2ZXMWQ0VkFBQzYwdTR0Q1A1ejdqRVpUNnZ5L05GWCtNZm1hZmVxd29lNUpidTB5eUlacVg5ampPZXJmbzIrR1lUU0s2d2txajlyQUlEdHg2bVhld0FBWGJJdTN1c3BueWduUGh3a3Y3YUhOOGFnM2FzS0gyYVc3SWt4ZDJTSFR1V0hQbm1sd1d2MHRVWE9VNndramRVK0F3REFTWStweUpic0x2NzdXZjJLdkNlMitQdmxvQTZUZHE4cWZKaFhza2NmYWZlVHJGQ29qdTJNRzZvUFd2Q1BCR2F5a21nVDMvZ0hhb1U3eHdCQVBDMk0wQUxCbGVreXoyQ3dUL3M2Y0xCRHcxY1ZOa3dxMmVKZkJyYWR4WEljR1p3N3g3aWg0Ymx3ekJGaWVzeGJ1UnpjUzd0YUxSMEEwaW03QVluUWVTZlAvcDhzM3dCZzNKeUFkdFlLUitpWlVMS3U0N05IcDQzNms3MGZpMEZHT0l3QkFBQi9yNGk1eGF1akpnT1NaRDcxY2plZ1Q0Y2NwV3h5Sk5QdllIb3ZkTVpPOGYrdU9vQ0d1bDJia2pEUDdKZkxXVmFjbjVkMWRQK2VzMHBDb3dQa3NXN0lGajhmZjdlTzJnb0NBRlJMcDRkbGtNblBiOUUra0s1ZkE5QzJQZnhPTFdOWis3Zkd5L3BZWC9wcmkvZFgxUXZTMUs5b0M0bUJrajNhUGVoUDRuSlV5UHhPQzRZVnpRc1lxL3FrNHkvZ3lCVkdCNFhybzRsa016ZlJRbjUyQlhvclM1Y3M1RC95MmJTQk1scjk2QSt2OXpZU0dyNnFzR0dnWkYxYXJOZ0xnTDVBQUFCVWgvUS83L3V0WkRkcjVVbi96OW41YXpJNlo4NmRndStUK1RUSnRva3ZpV2tqdkp6TDZtL0MzaUVkbnhvdHZmTiszUzNld1JZTlgxWFlNSTlqb0pweTFnMVd0K3hocVExamdNdXhoaVhabTFPWVk3WXcrVlg2OVdQQ25mKy96WWdUcGt0SzM5dUlNdmUxV09STGFlOERMOXc5cnJQVW5zb0VyMlFacitvWTg5Z1ZQdnVsSmpRMThtSnloWWExeG1BcUswTjdSZ1o2NUV0bGxlSHRyQTZHdGVIN2UwcmFKYlNFOThNSXl0VmJROWpLdFo2eVRWcVUyQ3ZlNFlpUDZmZFZCaGJSRmhPT0dHaE9KcU1ieTRxbEpNYjJzNnc3anpKNzJ3MjZNVzdRVHBlaXlSZzZRZ2ZoeFh4MjNIQTM1TkNiM1p2Y1B5ODNkQzgrMmJ2T2xUSHFvdVJOaFkzS0lObkNIUHAxSld0QXlwZXc3blFWUmhEME1JN1JGU0tyS0JlWDBQeUw5alRKL3NsWXN4cEU3amRqRzdkKzZLdURJWHJ5M3M3ZFlmcnRhbVk2ZDZZeVNCYjIwQzhyV285TUh6a0ZBTzR0aGpMaldidExUdEFtSnE3OFFibll4a2FacW1DTUZ3aHdIcGt6dmwzYTBJOE9pSXdkZXZ1SGUrbHBvczBVYnF0U1NKYlJzKzZwWk9COEhUTUVZemVHTkNlekZ1UXRwT3FEOWo5UnE3Rnc0MnN4YTBrRkRYSnU0ZFB0VzcrY3licnZYWVo0aHZHRlpLWWpoQ3VGWkJsT1h5c2xNYVFxK0ZHUy9ieE4zYkRUZ3JWU2hSRjJiUVdsMTI0ZkpseTh2ckpRbUU0VWN2U04xaTh3bkFudmFMT0xjWGpyWUpuUENpY1JOTWpGWmd0OUFvQjc4Ri9CRjJyOFNQMXVyeGdaNkYvTy9qY3I5bS9DNzMyRjNaZXFQN09TNzkxRnZWejYrd1RoeGZlRmx3Uit3YTNVSUVzL0JKNlBYUHJlK2ErcEQvV3RMVmh4RC9WKzczU2VFek4yUERYZHlqZW9sNjJHNFlOY0FEL1JjMXppTGN1bmgyTUpqTG9Jd0J3SUlvU1FMTUcwYWkxR05EQkNDT3NVOHo3czhnTW9UK1hubTBOTk56UTRVUlExR0lJL1dFTHRVdnJqdmdrdXhzWTR1RlY0SEtRbE1ZRmthYU9haEJEeVk1QmZsTUlJblBwOGNHRU5SRTdBTFg0bWVOL2lMU2VaU1UrekZ2cEYwMVhGWTdVZzM3UFVkQ3Q0RGpzOTFzRXZ2dnVNMEdDT2ZrR2wzRWxQVmFiSjVnempNWUZrNDg0ejhyd1c4SUhhdm1aOER2eXV6M1JHWVlRUVFvNU04alYvY2YzL0ZEbTc0QVZnUVE4ankwTVlSNTl4aURqdkNEMzYrU1QvOGQxbm5jSjBQakFRVENQRzJYcFNCekhNamdra3l6eWFpWHpqMnpwU2pSVkJYSENPWEJWV0dHczNaZHMrLy9jakU1NTVmeWxqTDdxYkxQWnBHRjBrSEdIa2JDTElGa3R2L1l1QzJzZU85TmlOL2lEa0NheWpwZ3JHK2h6OW5xd3puMjRYK1Fpc2hCa2syNERob2hHUy84bkFKdFZxdFI3Nk1hc2hkZ25uZFVmSVB4WkxnTWo1b2JZRG9iUHZwT1Q3alo2MC9GMy81RlZ6UnRFQnUzUmVZajV6OXpQWDFxNVd2L3ZFcGF5UXBmc2laZnpKREpJRldTZTdCc0YzQmdHQW02ZTROQzkvaW4yNnI0VE96NDlIQXNEMjJNbVYrUk42TmEzYnNNczkzekRDVHA4TjhNQ3JzZjUzUXpOYTJnZG9ma3doMmJxWEZYNE1GYlFGQXRXT0tTek55d1Y2VEV3UExWbk5tQThYYmVZdVd0eGhFU0ZvckpseHRITm9OdXZUeUVaS1V4NkswMU1WWnB4Tm16b3JHTTFjbkNzSjUzalJyY05IYVYvN1FSejdoM0t4Z2pKNkt3a1NORmc3YzUreVVoeFBLTnROSXBmS0lsbjRlSk9pYkNkZnBGN2VmWitxM1RuVFJJNFZCK1lXc0FBV1VsZG56Vks0L1cxajBMc3BtOEJjZVN6Sys4d1Y1NWJERkk0QlFGTzU1NFFUUWtncDgyVFdpVXJPM3ZRd08xUkRrY1k0NjhNSC9aaEZ1RjFSdjlEQjN3bnhMeVdsYktZSFJMTWtKcEVzOUplMjNEa1FsMGlJMzBraEhVNFczNFdlSmY5YnZJUTgxczR1a1prNU5vS3p3bTNzODllWTVLbytrOGRFbUVXeU1FRjJ3L2ltMkZxdnNTVnlpM1B6bVlSMUhRK0tGOEhjWnhZckdzaWJ6cjVrUVRFSnNvdkpqNUNRODI1TUkxbDRYSjVtWGUrSXIwNjg0YlNzNHR5VVB5ZGx5V01Oc1VQUUNPbkh6Rmh0bDF5RDhwcFJpcW15VGw0aEY3cFRDckV1NXBHc3ZJYXg0cGxRNGtwam5Dd2dRaTV6NzBJd2pHa0JOL21VTFkxZXF0UFAvR1NTVFk5ems3UkFUaUVudEFtV1l4cE1KRm5vU1QvV2lzWVpDYk9QVVU5ZWtmUEpFdWYvcElZV0hDVldqT2lSVXZGZnllbURiV2Z0SnJKUGsrNzYvNkZEaUU1ZE1aTmtvY1ozMGo1UTE2OTFKUm5UYUw0TVoyTzN4Q1lXQUpMRXhqZEdpZWU5NjV4VWd5bytFRG5DODBhSjh5V1hKMFhjU0ttcEpBdHdtNVRvN1BzSFN0NWswMzJ4Uk5IdXYxdE8zQzdXSWgxQ1NIR29rSnExWm9ZYUpDT0VFT0phTCs2QkpyNVdHTG9ReDl3MEdiV3lDQ2FUTE5qdjJSdmlvOXg1bDZ6Tkd1MC92eFR5a3kxZjFGOWVXOVNQWFpiNFBBUUFBRFQ3TEtUYW5IL2ZIdkxmc3U3N3JIT21QWlRNalRBdjFvM1pKQXZBOVpuTC9pak9mbjZkN0cyTVNYY3ZFSk5JNmFySjB0eU1BR0paaXdDRGppNW5VKzNSdFNMT3FPdkltNjBsbVZGbDRnYm0rTE56eDdPMTVWWkxBMVJIWnd4TmRVWlVscUtWeXNxTDZVKy9mb1N4Q1o5S1hKL2JibWpQbjY4aGhUdlhyOWlxTEhoZlFzKysxM1d1S25pZDVNcmVMZXZYSzRrKzl2Rmt4bzJTK2hMUGNxeDljOThlTFlXbk96bXp0bTFZZVVSNlZNMjAyMi91VlovL0ZlSEsyYno2cjB6SlpXaUpEcEkxTFFtdFdqVk5TNjJhR01NNVN3cnp6K2FjT0p5aExxNm5yV0hMcGczcTFraEppT0djNWNXWEw1N0p6VGlXclhTdHlIUHZNVzRzSE1xNFFTTWhQYjFSL1ZyVmt1THN4RkZhZE9uQ3Flemp4eFRFaXF2VE5yMVIzWm9wOFhaU2NmWFNoZE9aeHc3cEVDOE9zUmJSekRPVXg0VE9qQ0Q2TTVHbDJBTFY1eGtnU0Job3oxeVNUajJsRjBFTTVqcm1lSUhMVExHR0VBUUFBTGlPWDdESHAvWlg1ZzR6QUZTU0FFZld3RDYvSXY5eWVYVFZScDNGRG9LZHFjT1pMd2dpaWVqUWMyaUVYQlF1YnExc1JOeUtoZ2hubHR4NGh3Z1NOcVMwc29WR3pKQ2FER3hsTGNYSHpLTWFFRVIzSkxTeVp5bEhLVlU2c0pXMUVsTWtMb2hCRUQwSTNjcXUwdVJzWndUUmlKQ1N2ZGpZYUJOTkFUb0dsc0Z4WDZiUkppQklJQ0ZhV1JkcnlUZUNHSVM0WkozUEdHMGZndkFRbFd5UlNOUnZCREVHTWNsdWEyZTBkUWdpZ0MzWm5FZWlRMmRIRUwxaFNOYTU4UUdSa0M2VkVGd3ZhMlpjdVZiYU0wd0FBQUEyU1VSQlZOdFhMYzNFRmJKQlZQbzE3dWFCNjFXemVwVXFLVWxKQ1RIZ0xDa3FPSitYY2V5Q1BzY1BJQWlDSUFpQ0lBaWlBLzhQNnhDNnhUMDRqTmdBQUFBQVNVVk9SSzVDWUlJPVwiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIFxuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDItM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg0MC02XCJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEggMS4yMjA3ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQyLTMtNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg0MC02LTJcIlxuICAgICAgICAgIGQ9XCJNIDAsMTQxNy4zMiBIIDE0MTcuMzIgViAzLjY2MjFlLTQgSCAxLjIyMDdlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDItMy02LTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNDAtNi0yLTlcIlxuICAgICAgICAgIGQ9XCJNIDAsMTQxNy4zMiBIIDE0MTcuMzIgViAzLjY2MjFlLTQgSCAxLjIyMDdlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg3NC02XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoODYtN1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg4NC01XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg5NC01XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTA2LTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTA0LTJcIlxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMTYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMTQtMVwiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEyNi0yXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDEyNC03XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTM2LTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTM0LTlcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNDYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNDQtNlwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE1Ni0wXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE1NC02XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTY2LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTY0LTZcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNzYtMVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNzQtOFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE4Ni03XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE4NC05XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTk2LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTk0LTBcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMDYtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyMDQtM1wiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIxNi03XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDIxNC01XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjI2LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjI0LTJcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMzYtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyMzQtOFwiXG4gICAgICAgICAgZD1cIk0gNjAxLjA4LDYxMS40IEggODA1LjQ0IFYgODE1Ljc2IEggNjAxLjA4IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxtYXNrXG4gICAgICAgIGlkPVwibWFzazI0MC05XCJcbiAgICAgICAgaGVpZ2h0PXsxfVxuICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgeT17MH1cbiAgICAgICAgeD17MH1cbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxuICAgICAgPlxuICAgICAgICA8aW1hZ2VcbiAgICAgICAgICBpZD1cImltYWdlMjQyLTdcIlxuICAgICAgICAgIHhsaW5rSHJlZj1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBWUFBQUFHQUNBQUFBQUNCck9wakFBQUFBWE5DU1ZRSTVncGJtUUFBRVZwSlJFRlVlSnp0blh0OFZkV1Z4M2NTZ2dFQ0NJSThGQlV3UUJMMkRnRWZvNVphM3poajY4eVVhYlZGaFByQU9yVG9XSnkyempobFd0cmErcWxpZFdacVIxVEE1MVNuL1dpbnRncFNuLzFBNWJGM0xoQUk0YW55VG5rbEpKRGMrUU0vSmprNWU1MTk3ejM3cmlUMzkvMG5uNXg5MWpuN3J0OWRlKzJ6OXo3N0NnRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdNNU9IbmNGdWhsNVp5cXA1TGQvNjJ6UXcyTmxjb3hpSlpXYzJFY0lJU29nUUZicE9Wb3FlZDd3MWdQUzNSWUNaTVpRcWFTU1FTOHE5d3NnQjZSTDM3Rktxa245UTh1T0Z6ZTVYZ1lSa0RvRjV5aXA1Qmppak1MU3RhNFhnd0FwTVZCSkpTZWNFbm1lZ2dCeDAydU1WSExTWU1lejNiTXdCSWdrYjRSVVVwWG1wMklEQWVLaHIxUlNWZlpKM2RDOUc0UmVVRGlGNXlxcEpwNlJ0djNBT3NjVEVRRWRHS3Fra2gyNjlpbWkvdWg0SWdSb1E5OXhVc21KcDhaeEtRaVFHZ1VqcFpLcUpMNExPbWRoQ0hDYVZGSlZSSGZ0VThOWmdGeE93cjNHS0trbXVuYnRVK053LzZUYmlia3BRTjRJSlpWTXJXdWZJcU5yM2M3THVTWm9RSmxVTXAydWZZcElDQkNrc0VST0xGVm4rN2owUHFQVlplMFB5ZCs0bWVhR0FNT2trcXE4ME1PVm16Wm9yYzFIUXR3WkVNRDFXYmk3QzlCM25KS3FNcGF1ZlpBUHRkYTYrdmduL3lVQ3BhN2RvTzZiaEF0R0txbmt1VDQrNE5HRTF0b2NhSGRzOEo3MjV6VDNhWFM2VnJjVTREUWxsVlJGSHE2Y3JOVmE2OXFXa0tJOWdmN3NwRlZPVit4bVRWQ3ZzVkpWeXROOVhmN3VYeDYxRlEwSlpoaVpZd0xrblNXVlZPTjhkdTNGcXcvYnk1NE01aG5ISk5BZEJCaFFwcVNxS1BaK24zMjMyY3RtWHhzODR0Z042dG81b0xCRVNTVzlkTzFEbVBxU3RhajBnMTdCUTd1R09WMjB5d293VEVrbHZYVHRiU3llYmkzcSthZktqZ2NIN1hlNWFoZHNnb3JMcEpJVEJtVDd0anUvYVMvN2Zvai9SY1V5bDh0MktRRUtSa2tsSzgveEVyVWZHYk4rL2xCN2VYTG1YNnhsbi90VzJGSFpyUVFZSkpWVTBrZlhYaHhKYUdQMEFTRitRUGhmUFBxR3RlalVSYUY5TDdkdVVPZlBBVVhqbEZRVHZIVHRtMnUwTVhyTEp5UDNGNzFkWUQ5MTQ0UUdhOW16TjRZZVhuR2hTeDA2c3dCNVp5bXA1RmpDTGVteld4dWoxeDFyYzZSNHpXajc2YzBYcjdDV2ZYVkorUEdqZlYzbVpEcHBFelNnWENycHAydGZuekRhbUwwZGpqOU0rRi9NdC92LzdNY3NCWDFHMXpoVXA5TUpVRGl1WEVsMWxwZHJIMXlxamRrY05wQWp4UFczRUlhcmZtQXR5bDhjdmtCYUNDRmRCT2hNREw5bTdxSTFUVWwvWEcrLzk1QTloRjFEbWQzd08zYXpmNHZmUmI0b3Z1RFdCVzhlaU4zaEFSNG5hdkFLWlhpMzNXNFM4WVg1VmV4KzhrQkJ5UmUvOS9LbWxyaDlIVVlOa1ZMdW9BeVgyM3NxdmRjVGR0VWUvQlVuZ3k2Zjg4U0tocGk5Yk9mRVJmYXFsQndoREE4UlkwMy9RZDJ4dWNQNFVHZWhxSEw2ZzcvZkhiT0RvL2gzZTMxNi9Ja3luR0UzL0J2Nmx1ZkY3cm1NeVJ2NStmdWVYM2NpVHNkK3luNHlmNjhrK252Zm93eUoxUTJuUjN5SlpqcDRKSHZkMEFIbFNpcloxOGVsR3pjWW84MkVWNGxUNnFlZHNKWmRlQjlodUplWUJIZ2k0dm5jWlVvZ0d3SVVqbEZTU1Q5ZCsyM0dhRk45UWdneCtBbnF2Ry9aTTJLZnhaUVRadTJ4RnQxeFhVVGxVbmhkMkJmRHA4eGQ3S2xyWC9mMlkzZGMwcS8xVnIrbVR2NC9vbzYvb0F5ZnN0dU5QUnBWeGQwT0h2STJGbFJjTHBXczhESnFmN3hhRzZOM3REOTQ2eThKaTMxeWw3WHN1bGNJdyszcW9LMm84UDFKaE9GSmhrWkw0S0VKeWo5WEtxbEdlWkYycHpaR2J6amVzV0RVUTVUWjdYYi9ELzV2d2k0NTArcC9NUy9hLzBLNnhFQ2NETDc4cm9VcjYxTnRURng1WXJKMWhWdkJlNVRoUXFMS3Y2RU1pVlVRazVzZGFrdzhRc2ROVWVYTkQvNWhWMHIrVEpWVnhBVHd2MUtHdFVUWDYxYktjTDM5U2FyZlZwY3FVOHJIUnQ0NVg3anZCVTlkKzdaUUkyTG5VWG0rK1ROMnc5R0hDY1BqeElQVVlxYzYvemx0cjdweDZ1UTcvK3ZkUXltNU1YMitZYTlIcncyVTRYeTdJZDF5RWFPWk43alZ1ZDdiT3JIQzhUZis2Tlh0N3Q3TG5EOFFTZjB4eXZDRGRGc3U0dGw1UkoxanJha2RQZExsakNuM0xsN2I2T3k0bU5nLzNGNmpLWlJoZmFuZDhMempoR0hET0t0ZC9wdXUxWjZhZ2FNN1VuemhiWThzMys5Njc5VFlzMnpCeDFUNVA5aXJkUnBwT050dTJMdWFNcHhqTjV6ci9MSG1wZS90ZHVTUG1UcnZmMnY4ak5vM3JIcnFucXVIQ2pHRE91bHBvbkl2VVlhL0oxb3VjaXg1cWQxd2dudjh2eHpwMnNqSHBjRktLbG51WldRN3VWVWJiVFkxQ3lHRUdMbW1uLzNNYmVxUXRXd20xZGM3SUQreWxsMUxqVThjVk52REN3Wk5xSnhGVGQrM1ovTzVVV2NRVDhKRlpWSkpOY1Q1WnFsd3dCaHRxbzYwSHNoL212Qi95ODEyLzQ5Y1FOMW5sdDMvZzhoTytqZEQvRCtpc25KaTVRaktxZ09qK2xoZktJaG1ubk9ncFVMam1zVnpwM1RjaGVUYmxNMEQ5a3JtdjAwWlVpM1h5NVJob09uSUgzdkRBNi92UytmalhwQ2U3NFVRUWt4TjU0WVVXMStaZjBONWVNaVJ6ZXFhbnZaS0Vvc1Nrc210UkZUTnBBeDN0NzV1MUxQeWE0KytTODFZMHR5YXJ2ZUZFR1BTdm1zNHhNQklVWUt3T3piZWJsaEpQZ0ovMW00NGtueCsvSUlRUW9qaVMyWXZYSjNoV0RyWlFFWlFFTytFK1RJaTN5K2dETyt5MnhXdG93eC9iRGZNZjRjeVhDZ0dYWFh2ODlWeDlQcWNWa2piK0hNTUZmaVV1alB0TjdxSytxaHZFTUk5UXQxeE5kRnlmWmVzNi9JZDZYekNVRG91Z1V5QkoyT3JSaktaREY5QkxJUVFZc0JPd280UzdtcEt1SVp5dStGRW4rdnYydVAyb2xJNGQ4ZFlqMmVKKzd4QUdkNWd0eHY0SVdWSXRGeTl5SllyWHE1TzIvMUNYQmxmTlhZUW13WGNSQmsrUTlUdlJjcnc5WFJicmhqWjlmclBabEF2ZlFoQlB3a1BzVS9rdGFOK1hTS1J5SCtKYUhLVFY5cVQwVm5hdXJ4WWlCM0svbUxRZEtxWFh5Yy90SlpkL1pyM3R5S09ydGZHckhGNVM0K2FFOTY5TjJvM3FXTWJFbFdKeEpha0VLZXNKUHd2SHJMN1AvOXB3di9KbSszK1Avdm5WTTIrYnZmL3dDZDkrcitsVmh1amF4ejN5NHJnRFh0ME5lcm4vdVZ2UzFybkd4NmtRdEVRTzdLUkk0c1AydTN5LzBnWldsNWFFV0x3WlhQSUhtZ203RjM2OEl6elV4MDFJNzhNRDRVbHNoT2JFbFdKeEtiMkM4MCtSL1h5bXk2d2IyV3RxTWd4NTl0M0hMbVhHSjhRTzJUSDFReEZwVXBLRmRVa3AwZkRlcVBOV3ZzU0xnSnlXWW9KM3VlMVJLSnFZOGpXK1AwWFVVTGVaL2YvS2M4US9tK2NadmQveGZlSkd5YW50L04vM2tncHBTcng4cTVaUzIxQ0c3TXgvSzJiakRrL0VHTUhiQ2MrUTBYbWNtSmk5R2VVNFQxMnU2SXF5ckMxNVJwNDZlekgzNmNtM2pOZy8vSkhidnVyM21rNTFwWGV3YlV2bHZXZFg2YnErUmRpVWVqbDFKUFVtNFJ3RDFGMzFLY0lJWHBXVFB2Sjc2Z252QXhvV0wxbzdqVXhOV1owaDJCallDL1p6NGN1UUQ3RFVDc1FiN0ltUkhHcUprYlhyVk1pUW9ncnFGNSswOVNra25Lc2wyWEh5Wk9MZ1p0OVhEdU00R3hmNkRydXZOZXBiOHNMeE9XZnBReS9hcmNiRU45WWpUdjczM3BzMXNYKzk4UnBUL0ROaFJmRFRycUxxdmJPZ2ZhcjMwZ1pQazlVNjdtTXZaa1NqWHJKUC84MU1TVGxrYjhQVkNWc2tYMDVOV3JkY3BYOTRtZFNpMnQyRXEzYVYySndxaVBiWC8zUlY4WXp2a3RkRXFoUGM4ZWszM00xOVFHSTFhMTVTd203bGl2dGhzNnJvaktpN3AzL3ZQTXp4SXhhZHNnUHJuVHVPTVg1QVBVcEVzVDJKdjlFR1JLTHpmT1daZXhjbXFhcTU3NXpYYloyNFlwaVphQnlIVjZZK2l5MVNyc3BiQitqVHhoL2pEQ3NJb1M3SndZZjI5ajV1d2VtVldSekY2N0lGelIwWUlGd1JhQzhYL2hXT1o5dy8ycHJVYzhseFBoUTA3UmpZWWQ3bEVpcDVEbkVEZFBuVU1JWXM5WSs5T2VOQ0FHQ2d4RkJBWDVPaGVyYlA3R1h6UTllcVMzM3J3a2VHU2Fsa21WeC84cUNFRUtJRTV1TTBXYUxqMHU3RURFeWUwVmduNmlEN1NkV3B2NFBZWHRZYmJXV1hicU1pSnkzTG1zenROS25YRW1wVGlQdWt6NGZHNlBOT3JjdGhuMFJJY0Rwd1plY1JyWDlxZ3czUkM5ZnpMQlBtUFRYeFBqRUliVk5DQ0ZFd1dnbGZiMXJkbVNkTm1hdGRXd3JpMFEwUVh0MkI1WW1xallDNUQxSitmOGxZc0xxVWVxbDRXOXNFME9rbEtyTXk0TFU1czNhR0YwYno0UkpERVE5WkppQUFCVnQzdHlmVFUwNGZ6ekxYdmFsYVpSaDVYUlBtei92MGJwS0owTHplK2NsT0Y3Y1p2UFlVdkoxeUNuMmE1N2g2UjBETzBkWExyenJDaisvMXBNcGtSRVErTCsxODFLNGhHb2lIbjNOV2tTM1hESFRVbXUwTVRXZUpreXl3S1RBZDZubDAvSEFIMUpmT2VJRlR6SEg0MWU5TFh1WFBYekxCWDRuVEdJZ3FvL1I2MGlndjNqeCt5Zi9YdklXMFpFOGZ0RUgxckt5RDd4c3Y5cVdZK3VNMFRyYmI2bW5SMVFUMUZBVGVOR3Y0cVFBZlJkVGo4RHo3UDR2WE9MVC84a3RwdldsbXk1QjVGQ3JDUXB3OHMrQ2tZVE5lOVoxeWYzSDMwS01EMlhFL2lwdGpNbmdoUlFlSWdYUVgyei8vMGtCL283YURPcklUU0hmd01JeFNucmFEN1J4Z3paRzIxOUc2dFJFUjBEZ2Y1bVhGR0lvdFFPa21CUDRFYmt6cFZTeTFNY2dZM0s3TmtadnRHK0cxZmxKV1lEaVVadUZXRGlJc1BoMTY5dHZmY2RMSmFXWFRZUHFxb3pSNXJDUFMyZVZTQUZxNndNOXVZck40czRPUDVqU2h0MjNDU0ZFanhLcHBQU3kxWDlUdGRIRzdJZytzVXNRS1VCTFZXQVdyT0xsc1QrbERMNVdlSTJVcXRUTDBQRU9vNDBKMjYrcDZ4STk0V3lDQXZSWVFqM2RIRi9rWmVqNGtERkdHL3YrVlYwV0J3RUMvMWZjVCs1SFdoaTMvMDlVRzZQTnRwaXYybW1JYnFRdlh4bzQwT3hsbFdzWUh4cWp6ZnFReGNEZGlHZ0JncjlTbVJVT0o3UXh1bzdoenRuR29adnlzWjgxOVJhYU4ybGo5TlpPTTJIaUc0ZFZYeVpiQXV6U3htam1LZHFzNHlJQXNid3dKbzRtakRabW4vZjdkRUljQk5BKzc5OVNZN1F4bTNPbXhlbUFTd1I0dXZVZW80MUoySCtlS3pkd1NNSkZSN0xXNyt5dVBHNWZvZUN3c2VXeHJ2WnJURjBLbDUxRnZTYUJYTWRGQUY5SkFBZ0l3QTRFWU1aRmdOb3VOOVBkaFhBUklGbmx2UnE1aTlQKzZtaUQvQUVCbUhFU0FBOEMvbkFTZ0dOS0psZHdFcURyTHU3dS9EZ0prTHVEeGY2QkFNeEFBR2FRQTVoQkJEQURBWmlCQU13Z0J6Q0RDR0FHQWpBREFaaEJEbUFHRWNBTUJHQUdBakNESE1BTUlvQVpDTUFNQkdBR09ZQVpSQUF6RUlBWkNNQU1jZ0F6aUFCbUlBQXpFSUFaNUFCbUVBSE1RQUJtSUFBenlBSE1PQWtBL09FbUFOb2diMEFBWnR3RVFCTHdCaUtBR1FqQURBUmdKanM1NFBHOHJnM3hvM1NaZ2doZ0JnSXdBd0dZd1hNQU00Z0FaaUFBTXhDQUdlUUFaaEFCekVBQVppQUFNOGdCekNBQ21JRUF6RUFBWnBBRG1FRUVNQU1CbUlFQXpDQUhNSU1JWUFZQ01BTUJtRUVPWUFZUndBd0VZQVlDTUlNY3dBd2lnQmtJd0F3RVlBWTVnQmxFQURNUWdCa0l3QXh5QURPSUFHWWdBRE1RZ0Jua0FHWVFBY3hBQUdZZ0FEUElBY3dnQXBpQkFNeEFBR1o2T0oyVmFRNjQvZllNTDlCOVFRUXdBd0dZZ1FETTREbUFHVVFBTXhDQUdRakFESElBTTRnQVppQUFNeENBR2VRQVpoQUJ6RUFBWmlBQU04Z0J6Q0FDbUlFQXpFQUFacEFEbUVFRU1BTUJtSUVBekNBSE1JTUlZQVlDTUFNQm1FRU9ZQVlSd0F3RVlBWUNNSU1jd0F3aWdCa0l3QXdFWUFZNWdCbEVBRE1RZ0JrSXdBeHlBRE9JQUdZZ0FETVFnQm5rQUdZUUFjeEFBR1lnQURQSUFjd2dBcGlCQU14QUFHYVFBNWhCQkRBREFaaUJBTXdnQnpDRENHQUdBakFEQVpoQkRtQUdFY0FNQkdBR0FqQ0RITUFNSW9BWkNNQU1CR0RHVFlCam5tdlIzV215RjdrSmNDaW1pdVFxQisxRmJnSnNqcWtpdVVxdHZjaE5nR3EwUVJteHhsN2tKa0RqdXpIVkpEYzVrTEVBNHNWNGFwS2ovSXA0a00xenUwUy83ZjNqcVV0T01tbVZ2Y3d4QWc0dGlLY3FPY2x2Q2YrN1JvRG92ZTdzT09xU2l6VEtUVVNwWXdTSSt1bk5jVlFtRjdtWDhyOG9jTDNNdHJwck02OUxMdkxVZDhsaVp3SEVpcVlyTXExTEx2TDhUSG9zMzEwQThjNldhd296ckUzT2tmenhQMGJNcGJnbVlTR0VFS1cvbUp4SmJYS1BtcSsvRVhXS2F4SVdRZ2l4L3RMcjMwdS9Oam5IeGp2S0kvMmZXZ1FJSVVUSmRaUExoaFducEZ2dWthemZXLzNlYXl1NHF3RUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdIajRmOUFjZFlIMkZSNURBQUFBQUVsRlRrU3VRbUNDXCJcbiAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXG4gICAgICAgICAgXG4gICAgICAgICAgaGVpZ2h0PXsxfVxuICAgICAgICAgIHdpZHRoPXsxfVxuICAgICAgICAvPlxuICAgICAgPC9tYXNrPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3NTAtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg3NDgtNlwiXG4gICAgICAgICAgZD1cIk0gNTkyLjU2LDYwOC4wNCBIIDg0MS4yIFYgODIyLjYgSCA1OTIuNTYgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPG1hc2tcbiAgICAgICAgaWQ9XCJtYXNrNzU0LTFcIlxuICAgICAgICBoZWlnaHQ9ezF9XG4gICAgICAgIHdpZHRoPXsxfVxuICAgICAgICB5PXswfVxuICAgICAgICB4PXswfVxuICAgICAgICBtYXNrVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXG4gICAgICA+XG4gICAgICAgIDxpbWFnZVxuICAgICAgICAgIGlkPVwiaW1hZ2U3NTYtMlwiXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFySUFBQUpVQ0FBQUFBRE1ENXJEQUFBQUFYTkNTVlFJNWdwYm1RQUFJQUJKUkVGVWVKenRuWGRnVk1YMng4L2RiSHFoaHhZNmhGNEZSQkRCaW9EMFpnRWJDaXJZeTN2K3NDQVc3UGllaXFLZzZCT3hJMFVCa2Q1N2t3NGhsVTRDSkNGdGQrZjN4L1o3Wis3ZXRyZHN6dWVmSlBmT3pEMXo5NXZaTSswTUFJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ2lObmhqRFpBTHAzZk1kb0NIMDZYcTZ5ODdHcFI4WlZMbHdyT255OXdFcU10cWhUWWpUWkFMalZ1TmRvQ0ZvNnpaL0t5czdOT25MaU0wZzBubHBPc2ViSFhyMzhOQUFDY1AzTG8wUDU5NXd3MkoySkJ5V3BQclZyWEE4RHBYVHQzYkR0cnRDMFJpT1Y4MlZ0V0dHMkJERWpHcHZWcmp4cHRSWVNCa2cwN2VhdFdyRGhqdEJFUkJFcFdEMXk3bHl6ZWhaMHliVURKNmtYMmdsODJ1WXcySWhKQXllcEl6ay96ZGh0dGcvV3hHVzFBWmFMQnN6djNQcDFxdEJWV0J5V3JLMXlIRDdQbTk3SGNWNXVwUU1ucVRkeWRhL1krbkdpMEZSWUdKV3NBN2IvSW1GckxhQ01zQzByV0VGSmZ6WmlSWnJRUkZnVWxheEJKVHgzOWJ6MmpqYkFrS0ZuRGlILzg2TnZWalRiQ2dxQmtEU1R4WDBlZWlqWGFDTXVCa2pXVW1qUDJETVFoTDNtZ1pBMm0xZUlGVFl5MndWcWdaSTJHRzdMdnVXaWpqYkFTS0ZualNYcHZZMGVqYmJBUUtGa3owRzNMaTlqUVNnVWxhd3JpM2xyWjFHZ2JyQUpLMWlUMDNqSEdhQk1zQWtyV0xGU2IvMG04MFRaWUFwU3NhZUFtcldwb3RBMVdBQ1ZySW5wczZXMjBDUllBSldzbTZ2NTF2OUVtbUIrVXJLbUltek1OUDVFUTRBc3lGN2FYWjhjWWJZUEpRY21halFkK1NqRGFCSE9Ea2pVZFF4YWxHRzJDcVVISm1vK2JsMVF4MmdRemc1STFJYjBYWXp2TEJpVnJSbm92d0YzalRGQ3lwdVNtNzNIY2dBVksxcHdNL2h3L0dRYjRZa3pLQTY4WmJZRlpRY21hbGY5N3dHZ0xUQXBLMXF6WVp1SWFHU29vV2RNUzl5T3VSYVNCa2pVdmRYK0lNOW9FTTRLU05USFhtZWNrU1JPQmtqVXprNGNiYllFSlFjbWFHZHVzQmthYllENVFzcWFtNXV3b28wMHdIU2haYzNQYkkwWmJZRHBRc2labk9vYms0SUdTTlRuSk0vRWpDZ2JmaDlucGQ2ZlJGcGdNbEt6cGViZXEwUmFZQzVTczZhbi9rdEVXbUF2TFJUMVhmWWJ0N1U3Vk5rVFpZK0lUVTZyVnFGVzNmcDJZOEwvQnNvNUh3djRNQzJFMzJnRGRXZW5Rc3JTWXRHYXQyblJvbjZ4bG1YeGkzeG9SenVLdFJ1VnJaYU0xbGF3YmUrdHJyKy9iTUd6djB0VjdVN2lLUnNMUExVUWxZZnRlU1orOHJGU3RjUXhXV3E1bFFmeVlWN0lBVVBYZXBSVmFTSlNQNjZZd0dvMkVHVk5MRmdEcS85OUpEVFRLWjFWNGpVYkNpZGtsQ3hBMWZKTVdLZzNDMVN2Y1Zsc0hISmZWSE9kdlBXOWFyM0daM1BNYUYyaGhVTExoWVBVTkF3OXFXK0xBVnRxV1oyRlFzdUhoejQ1UFg5R3lQUHRrTFV1ek5DalpNT0g0cU4yZldwWTNGcU1oZWtESmhvMmNPeDY1cWwxcFZlN1dyaXhyZzVJTkgyVFd0WWUxSysxaG5FNXdnNUlOSi8vMCtFT3pzanAxMXF3b2E0T1NEU3VYaDM2cVZWSGNPSzFLc2pnbzJmRGltS3haQk1QUmVKZzRBS0JrdzgvVUtSb1ZWSytQUmdWWkhKUnMySG5yVFkwS0dxMVJPUllISlJ0K1h2NUttM0lHb1djQWdKTFZBL0xvR2szS3FYT3RKc1ZZSFpTc0RwU1B5ZEdrbkRzMEtjWHFvR1QxNE54WVRYYnY5TmVpRU11RGt0V0ZkWnBFaW0yYnBrVXBWZ2NscXcrdjc5ZWdrS2diTlNqRThxQms5YUhzTVpjR3BmVFZvQXpMZzVMVmlRM3pOQ2dFSnhNQUphc2ZMMm13RXJFeE9yTW9XZjNJbnFXK2pLanU2c3V3UENoWjNYaS9SSDBaS0ZtVXJJNmMrcC82TXJxcUw4THlvR1QxNHhQMWd3WWQ4Zk5DeWVySS9vMnFpNmlPL1MrVXJKNm9YOUZsYTZ1QkdSWUhKYXNqQzlTUGM3WFJ3QXlMZzVMVmtjdC9xUzRDZzhhZ1pIVmxvZW9TbW10Z2hjVkJ5ZXJKY3RYbk5EVFR3Z3hyZzVMVms5UC9xQzJoVnFJV2RsZ2FsS3l1ckZWYndGOWhPT25CWXFCa2RVWHR5T3lpc1dXYTJHRmxVTEs2c3BPb3lyNW9YS0ZHaGxnWWxLeXVuQ3hRazN2eHZackdyTFVvS0ZsZGNha0o3cjFrN0dYTkRMRXdLRmw5VVJHOWMvRTkyTVlDb0dUMTVvVGluSXZHb1dJQkFDV3JONWxLTXk2K0Y3MENONVh2MkdWanlWT1liOGxZYkdNOVlDdXJMMmVVWlZ1TWl2V0JrdFdYQWtXckRCYVBRNi9BQjBwV1h3cVZUTGorZ1lvTkFDV3JMMlVWOHZNc3VZZXVXUHNZWElwb0JjeC83TEk0NTJRYnZJUnhTSjM5UGFmajc5R3grcHFQeU1mcWtzMlZyZGlxOUlLaTMzWVNRa2plMUhyNlZnQ1JpOVVsbXlYVDNEOVliZXgwcHlkRnlkZnQ5YTBDSWcrclN6WkhJOFcrNi9RbmNpN3FnVWN2bWhlclMvYVVQTVV5dkFMN084NmdkSzdsMStsYkRVUTZWcGRzdmh4Yi8yUXA5aTBuUDZscmNVZDlLNEpJeGVLU3RWMlZvMWlXVi9DMlFMR0VFTWMzRGZTdEN5SU5pMHMycVZ5R1lobHRiQlJWc1lTUW9xbTRtZEdFV0Z5eTlSaHFrNkZZaWxmZzQrUXc3SWVaRG90THRyMWtPNWV5dkFJUnhSSkNGamZTdDBKSVNDd3UyZHNrSzVibEZZZ3JscEFyaitNa3ZMbXd1R1FmbEdnbDB5dVlIdHF6V0lzaFpVeUZ4U1U3VFpxUnkxaUtmVU9LTDF6NE1IcTBKc0xpa3AwdnlVYW1ZdCtVMkh2N3RicSsxVUpFc0xoazkwZ3hrYVhZS0FsZWdZZXNudnJXQzJGamJjbkdTcGxKV0ZhTm50bitoa042TmN1ZlJPZkFKRmhic3Awa0dMaWMxY2ErTG4xTWx4QkM1aVhvV3plRWdiVWxPeUcwZlV5dlFLb2Y2Mk1uVHVDYUFtdEw5cHVRNWkxbmVRVnZ5dkFLUEp6cXBtL3RFQ3FXbGl3WGNvRTNVN0V5dlFJM1JZUDFyUjlDdzlLU2JlMEtZWnhXZnF5WGlnbjZWaENoWUduSlBodkN0dVdNNGRRb09XTUZRYmorRHdjT2pNYlNrdDBnYmhwTHNiSkd0L2hNUjgwYWpKVWwyMGhjZVgreC9OaHB5cndDRHgraVpvM0Z5cEo5VWRTd0ZTeXZZSnFLTnBZUVFtYWdaZzNGd3BLMUhSR3o2NjhhOUZ4UnI2dFVMQ0Z2bzJhTnhNS1M3U2RtRnF1TnRiK21XckdFVE5HM29rZ1FGcGJzTWhHcm1GN0JWQTBVUzF5UDZGdFRKQkRyU3JhclNDZnFyM0Q1c1I0cWh1bGJWeVFBNjBwMk1kdW1GUXcvVmhPdmdCQkNTRkVQZlN1TCtMR3NaUHV3Wjc3K1ppbjJWYTBVUzhqcHhycldGdkZqVmNuYXR6TXQranVzZnF5WDNjbjZWaGp4WWxYSlRtSWF4R3hqTmZNSzNQeUlPMitOd2FLU2JYeVpaYy9LbXZRYzlsY3IxRmFWeC9QNlZobnhZRTNKUnExaW1iT1NOWVB3aXJadExDR2tySSsrbFViY1dGT3lyN0NzWVNwV1V6L1dRMDV0Zld1TkFJQkZKVHVBcFQrV1Y4Qk5raEZ1VGpxTDBKMDFBQ3RLdGwwQnc1WlZETVVDUkRVYy92N1dVclYxRlRCWnoyb2piaXdvMllhWkRGTldNYndDTDlXSHpwSjd0RUlJaWxyclUyVWtBT3RKdHQ0aGhpVXNyeUFRZTQ4UHM5WFdPSkJOMGVHdk1CS001U1Ria0tWWXRsY1FURXkvbjByVVZ0b1BqblRwanRVazI0N2xGYXlXcUZnQWdMVFh6cWl0dHBlaTlQRFZGYUZpTWNuMlp4M25JYldOOVpEMGhGYit3WEljTmRBWlMwazJhZ3ByQmt1S0h4dE13dFB5enhLbGNtYzRhb3F3c1pKazA1YXpqRmhUUzBGeDFXZVVxYTA4SVlSa015TGFJMkhDT3BLMTNYdUJaWU1jUHphUUR1dlYxcDRRUXFaclcwOGtCSmFSYk5zVlRCTld5MjlqR3ovODJtTXRPYkEvV2FpMi9vUVVZMkI2WGJHSVpPdCt3djRTWDVNcXQ3U29SODhSUWdwZXNBTzAyYUgyQlJBeVB4dzFSbGhZUXJKMTM3bkNObUN0L0RaMnJIdkZnZU54QUlqL05GUmdyNUE0TEIwUjBYSTczRzlab2JLQWFJY21kb2pRN3ZHeEl0R0lkNDI3d0x2aXpDY0FzU0tkb3JpL1c3aC9PZFg1SEFEY1B6TmVwWVhMK3hPVkpSZ0lTbFpqa29jODFGdDA1UE55QmY5SytaUzVrUHlqU01zWFZkWHpNWkhiL3dJQTZQV3J5bFdFNU1hMTZncEFaR0JxeHlCcDhQOHVLVEJwUGtDNnRHN1ZLUGR6MG84cGVFb2dLeTNYVlBreCtLajNDQ0txNmMyMzM1Z1NJdEhCM1pTTEpSOEJuSGorZW5hdW1LR2V4U3lPSFBmUG8zMlh0Vk5pbzQ4YnIxK3ZLajhpQTFPMnNrblhUcDZYS2FGWHRGYjJXQUVBQU5pWGV2SnZpL05lcXIxWDNWdjRRN082STZFd2wyUmphblc5ODVVZi9wRzQwa3FoWWdIYXVCY1luT251djFTSHRVQk1HbzVPbXRUZkNDem4wNmp1ZnQzc1ZKZWZzMFZGeDhZbkpWZXRYck4yM2RRcU1sN2dodUhubFQ2MDVSdTNKSmF1ZVhsdndLVkc2MVVkT1BQdGZXcHlHMG5sazZ4aHJCK2hXTEVBdGxyVkxwOFBIdXZvdUZiTllvR1M1cWRVNURZU1hJbW1GK3RIcWxBc3VNNGVQczBibmR0N3Q1cmh1bmpMSHZ5Qmt0V0pEYVBPYVYza255K3B5VDArVmlzN2RBWWxxdzhiaDU5TmFaNWVUYjRmbHRTNFpRMVdydmQrVjJGUjJpQVZtUkVacUI0eE1JVDFxZFduWjVhVm5mNWNacGNwNWVWanBXWG52Mm5PdUYyZHRVdEhDc3RVZnhhSUpDd3AyUTIxNjI5ei8zYThqWnpLVnYvYm5Tdm5Xa2FDUGlwaXlwUTNWdjlwSUJLd29tUTNwTm9YZUgvZkl1UDhidHNYM2x5SFdSRVBQbEJoRnA2Z29BOFdsT3lHVkxqT0Y2L0lPZHJHeDEweFRuRGQxcXJJVjhZa3h1dElPS3JjcmdQVzdNamdHb093czNINE9lamppM2hoKy9obFhtL0tOZjhkRjBDREw5TUVPWk1TZmIvZTlpbTk4S3VQL2FWNGFMMU5seDFLc3hvSlNqYmNiQnB4RGlCZ3BqWlZNR3RiL1pOQ2dJSDlSRXVwWm5QUmIvejl3MTJLVFJ1TmtrV0ViQnA2SGdETytpK2M0ODhvdU9ZVkE4Q1NJY0xCaE9TR3ZsOExHSW9GK05mZ1JOYXRVSXg0VWVYa05TSUZpL215RzkxdGFnKy9MenNxaW9mWGwrVmZqNHBLOS91eWo3SGZ5R3ZLcmJ0R2h3OE1zWlprTjNxMkQ5aC84MTdaTEdmRTRFdHZMdWFJQVFBa24xVnMzdXZxUGd0RUVwYVM3Q2JmaHBkNlc5MVhaSTdMcm5BdndzM3RMcGJxYWNYMjdiYmNxaWdyWWlYSmJncm9hVldmbnVGdzVIeFdUMTV0azZZY0xuZWUrVVk4OEVEOEthVUdPaG9wK0FRUW1WaElzcHVDTnhXbU5HdFJUWDU5RTV1MHFCbXFMWHhPc1lrUHlUY0lrWXQxSkx0WlpCdXNQVEZSYkt3bXlpN3JHenVaRlY0eEpEL0plWXhKc09ZRWlCWFlPdVFzNjFiTkY3ZG1abTUrbnRIbWN0Zk1XTDM1cHdkbHJOOHUvRkt1Y1Y3NllGRHY4R09WVmxha2plMXkySjFrZjN2YTNmaDMzVHZKOW90MnVZSnBxUGhVTyt0dUFiTU9GcEhzNWpyTUdqVHlyUmc4UXVtTVJYM3MzYWw3cXEzMHQvSWJ3NHlRUEtYZ0kwRGtZUTNKYm1XM3NkeFgvbVFmQzEzV0FmNER2NVpMLzlidXA5VFFYeFI5Q0lnY0xDSFpMU0k5cjdvQndiaFBwVVpIUjBlN2RSc1ZIUjBkSFIyOXlIKzNUUHJrVkpUU3RkNjVVV28vRU4zQk5RWmhZTXN3WnM4TG9GbkFSRmFkN1E0QTEvL2VjQUUwL3RxOW9DQmdQVmRNejUxU24rajg5bVhaVmdJQVFMMkdKNVZsUkNSamdWWjJTMTJ4Q3R3c2lDcVRtd3dBajFBS21pcjl0YVFyTlhhTXVvL0RBTENWMVp4dFE4K0kzYjVZRWVQNzNiSGZBVUIrTEFLQVJmM3FBd0JBMjRBMUNETDI1QjdkcVhDSnl6VS9Lc3VIU01iMHJld1c5bGdCQUFERUgvQ24zUjdIY1p5bkM4YTUrY1YvdDdTRGpQZnlna0p6clJmSkJLY1NOR2JyTU5FMkZxRGtJOS9TVjhkSHBZUVFUM1JpajRSbWx2bFNMajhvNDdtL3lqRXlnUGI0UFJ0dVRON0tiZzI5N2lYbUs0ODM2NXhKR2NXeVRYZDZpanJaUXRhTDJhZk1ZR2Q5V1U4eEFmZy9waW5iaHA0T21hWjhVdGFUMVFESXhROW1lQUo2Yy9HMVl5OWNjb2NyY3IxYTlFSUtBTGkyVFRnbTY5SC9HU0RYV0RkVjhwVGxNd3pMTFpnMGRSaTViY01reFdiajBtNUxoOE4vZWJYUytza0IxVzFsZTJmL1V1cSsyMnJVdGZFWlM1ZGVEWmVWaUw2WTJUR1E0QlVJc1Uzd3JNTnkvdUViSE9NczE1SWdiRXdzMlcyaTQ3RXN4dnNQQ0Z1SFIzVkdJdWFWckRMRnBwOFBLT0p0YkYxRGc0TmNXckZ0V09pZUY0VkhBbyt6ZlZDSloxSFpRTWxxeFBiaGlucmVjVUg5L0ZvOXRURW1va0hKYXNPT29jckdpbEtDdlFrWlMyUXJMU2haVGRnK1ZPSEpBN3hOWGxhTnJLMG5LRmt0MkRGTTZYaDhZWEhRbjFucWJZbDRVTElhc0ZPaFZ3QUF4VnNEL3lyZHB0NllpQWNscTU0ZFEyUXFsa3Z0MEsyMWV3eldOU2Z3V0puMSs5ejM0K054dEN0eU1OKzQ3SFpoWUZoUmJMMS9PZTF3bG1kOG1nNEFFUDI5djZTTDF3QUExMnpLNm9PSE5yelpEbHVUQ01GMGtwV3IySVQzdk1lSG5oOXZBNERxUzczYkZQS0hjd0J4VXp6enQ0WHZoenJER2JFR1pwUHNkcG1MOTJMbStEZlNsRDNLQVVEU3k2ZGNoSkNTdjY0QmdQaTV2dHV1cFFyaUlTSG13MlNTM1NHempZVUpnV2ZJWE80S0FNQ2xEbnZwellsZDdBREF2UmE0TSt4TDYyMS9SWVNZUzdJNzVCNTlYQzBqS1AvdlBJZTE3ZVhBdTZVM2F2YmFJZ2owOGRXd2MxaU96QnczTmhiN0UrNEw4bDlqSitEQWdSRGNsYUNDWFVOejVXYnBGU3pDbEg4ZEJlQ3lmcStBdUZHcEFOd0lYdW9xbDFRWmlKZ0JFemtHc3IwQ0FHNCtyU0RIUUlBSmd2QUdoSkJTK1UrSWZMQ1ZWY3d1MlY0QkFQRFBvM2NSQUxoeUFlRDAxVGdBNFBXM09PeC9DVUhKS21YM0VObGVBUURKNVAzOTJDNEF1SkFKOEVlWEtnQXh2QkR6eGJqL0t3SXdpMk93VTlsM051K2M1Tk84Yyt0K0NIN0lPb3hZTEtUeXRiSnJpQmFsWEh4V2dWY0FBRnQzQkIzNi9UUHYzTHJ2UmdhNkFtUitoYUtISUtaQ2RTdHI4RC9wVGNVQnRtVHdwODVpbGdXYXVodW5iQ01CcTB1V2U3VEVaOHFaM29MYnpZNzVMVDEzTFNVL1lqbXNMbG13amZCTWdEazNkNmJjYnJQTk85cDFHRGVDUlFhV2x5eEE2dVBMTXM0YyttVTAvV2pRS2svdkxYRTRTbzlNcmVXOXd1RVVaU0NXbXhGVUhlQW9tajgwcWdzSmRaT2MrV2U5QjNOSEpVUlZYR1YyQStQVEduTzUyVVh1UDJLdnViVjU4cVdEeS8vQlE3MnRpaFZiV2E3Rit3ZUxuWTd6YSs2WGV3NDkxMmVkKzN5a2tvVnlnczBpWnNLQ2tvMSs4cUxuMmE2dDhzN1ppbnJXUDc1d2NZemx2aEVSQUxDaVpLTm5CRXdmbk80bEl5YzNPZkFJdXFKQllUTVJDU2ZXayt6alFSTmVKeHRLejlucFVwRGxXUmoreUpKWVRyS056d2MvL3l2Si9YL2JUenpUcDRmVFRzdUE0eWZoWm56TjRMOUhOcFdhczlHdHZBdWpjRFlNVUxKaEozb3c3MEx5N1ZLemRxN0t1OUJJc3RvakdlTUgxaU9jMm9JVlh3ODI0Vjg1K1dVWkpEL0NQM3lKQ0U3eWltcTJSMFBMckFwS05zd2tKL092ZEJiTTA3cnlGc0Q5NzBnWXc4SW9jNENTRFRzT0ovOFZPOHI1YWZKUEFCeTRJSmhtaU9JcmxNZzRiakZ5UWNtR21Zc1grVU5UWDMvSVQ1Ti9EbUJWWjBGejNPRjczajZhcTBjMU5jMmlvR1REVFA1ZW5tVEpvc1BVaE1KUWRMbkhXd1pmMkt3d2lHMWtnU01HNFdhdUsvanZvK3VrNWl6NlBIamxqT05qUTFiMElDcXgzRlJDM0xxZ3h6c2VrSjQxYVgxUTFubjRsV2hKTENkWmFITXE4UEZ6NWV4QWJIWXdJT2ZxR21FekVRa24xcE1zWEh2UzkzRG5kMG15c2paYzRsMmdVRDRiNHlCYUZBdEtGaHJNTFhJL08rTmh1YnU4WTRZdE8rY2tqcnlmKzJJVURnK1dXNE5weVYwSlhJdUJuV3VYWmE1ZXJTREVGcGRhTy9icTZYenRqYklxNk5IckFUbDZGR3pnQ3AyUWx2ZnNXWTJ0c1Rnb1diMVFKbGhFQUk3TEloWURXMWtGY0YxMlNrMXFiOXc4alR0MUpNdkFTRVhKN1d0ekJRZHdlWUpobUdERWdCdS9VR0xLK1BzM1hTV0VrS3ZiSHBhN3QxWXJFb2QrbTFudU9MdndvVnFoMHlKaHdYakpjdmVYL0M0dFplY3RUdTlUWFR1NnFYMnVFcUpHN1BjR244bDloaDdxQXdrM2hrdVd1NitFL0NBcFpiK2dYVi81QTFVK1dBSHgvd25Zb3V0YVhqZDBEa1I3akpZczkwQUpJZDlLU2RtSnQwK3hvSWU2SjhzbitxdmdhUFpiYTRiT2cyaU93WkxsN3I5S0NKa2pJV1hpVnY2VGR3dFd4SWFacDV3OEM3N0YzcllCR0N0Wjd0NnJoQkF5UzBMUzhZTHpPbHlUMVR4YVBrM1A4eTJvaUlUb0hUZ3VLd2Z1M2xueEFKS21CZXlQQ3ViQ3VmSHgycHNrd21NQ1A4RCtkQVJFc2tmSnlvQzc3N000QUpBazJmVFd3bXR0bXdtdmhZK0VJY0pyMTBYQXRuSjBicVREamZ0VWVqUFpsaktrRkQweVZYZ1JBRTRmVm5OK1ErSUkrckxFNnBRRFNHTDdIbEh4SkhPQWtwVU1OM1pXbk9kWENkOU4xUGhacjlEVFh1bS9XYUZOQUFDUFNkbE83b0ZycStKQkpnRWxLeFh1M3MvaWZMK0hUazVWTlNOZkFqOHNqQ3dLbmZUL0lJNzJORlZQTWdjb1dZbHc5ODcwZXdVUzNocDFUdi9yWGRTMHVhcldBTS9aUTNkWHVyOU51VmlvNWtubUFDVXJEZTZlendLRUlhSGZmYmc4Um5ETk5YT0hoaVo1cWRoQ3YzNkZZZ0ZZMzVYRkVRTnBjR08vREd6S0tGcmdjK0NrOEZxR3JxRXpEcDhSWGl0ZnJhY0Y0UUVsS3dWdTNPZHhnWC9Ic1JMNktmMUdlRzMrRmEwTWtrTHhFdUcxWFJodlJuK01tUDNpeGhZSGw3RlVRcWFhSi9oUHp0WjVXVXE3eTN3TG5QZm9hd0VDWUloa3VYdXU4c3FRRlBEbERsNnUwcEd5bjZ5UzEvbHp4bjlJOEdnUXJkRmZzb0kybGhCSm14SzRTYVdCZWNxZTFIMDNjOEtpWUxNUEt6dmRIRkdIN3BMbHhna1VTNlI1aE55b1BIK1cwM2NiMEcxSStUbHdMZGRPWGVlTEVTOTZTNWE3UjZoWVF1bUxVMm40MFNrWElZUzR6bnpTV0c1Rk5TSG1pUnl2YzNEcGd3Z0prSVNoTjhUaDdwcE5HYWd2cWlheEVLNUc5NjUxNGZUdXJlZlZyQ0pRUStxb0llbEozTlZUeTc0N2JwUUpsUjE5VzFtS0gwc0lJV1ZXbXZlMDFlelNMUzJDcG93aXFDcGhnTHY3YytvZXYrZ2tCWkdLak1KMTRZTFJKbWdLVGlXSXdOMzFCWDB2TnhjaGJxRWx3VmFXRFhmM2w2ejFzWG9HQmVEaTdlV2xPajdQN0tCa21YRDNmTTVjMFUxZnFzM0czcVJWemZLOGZRWHllMEQxaHZkckhGOTRmUEVTakgxb1ZYVHJmbkYzRmJFTGVVYVd6ZlpCcTY4UVFoeW5QcFc3anlYbUNVOEljTmV4TVJoZzFxTG9KVm51THVwWWdZZjM1SmhjOVJ0ZkFJd3pkOHJxUENSODdaOEtLSitHMzRqV1JDZkpjbmVMdExHRXpKTmhjZkt5Z0l3bEQ4Z1lDWS82YitBaUFjZlRsaHRFUndEMGtxeW9WMEFrcm92eEZQVlJVTTVMWGFWbjdWOFduTFdkOUt5SWVkQkZzdHdZTWErQUVKSWgzZUF1dkFWZHl5U0hFckN2NFQzMUsyeG1BVWNNcUhCajVvU0lFbGduVHZLdzB3VGVzTU9OMSt6akp5bHpBa0MwUU1xdHV2TXVES2dSV1pNQ3lrREpDdUh1L0RKVVhNdTRPcGtTQzR1L2lYY2g1bWZCM29TOEIvS2d6YXpxL01zSi9ERzJtczFSc2hZay9JNEJOMGJjanlXRUVIS2pWSHNiRjBxdzZTNkE1eVVrYzQxUjkrNGlBMnhsK1hDanZwSVFPN2laMUgxL0NZSjlZcGNFdTF4UHJBRDRxYWRnbTAzZGhnTGJKRDQwb2tISjh1REd6SllTN2JxRjFQSkt5L212ZU5tOS9Ea3dsd3NnYTRSZ3hIYnMxN3dMSkZmcVV5TVpsR3d3M09ndkpaMXEwREowRWpmbnpqYmhYVGxLUCtyREpZaE50NmNzTnZoQy9qR3BUNDFrY0NWWEVOeklPZElPbVcwbHRjU2lqYndMenIra1pqMjBoM2ZoNy9OU3N5SW1JcnpkcjlFaHhtTjlsRWcrWWFaUGVYRE9UUktDSUhnWVZSR1VzNWcvNklWWWduQktWdEpZZ1llT1VnMk8raTRvWDhrdDB1dHFueHVZMHprVmUxK1dKSXlTNVVaSkdaRHlJRDJJUmVyT2dHeU9GK1hvcnNydi9rVUd6azlpUTJkQVRFZ1lKVHRTZWhzcmF5MVgvYjk5d2l0NlZsNS9OK0gxUzU2Y3B4K0xnSmp4bFpQd1NYYTBITVVTeVowb0FFaVlmTGlDRU9JcVh0eEQ3bmM3bHo1dHcrbUNuSlhQMVplWk1YS3huSHVrZGxQNGlYVDZRUWZjeUsra2pSVjRPRi9YS1NOMVVxY3VOU3F5TjJWNjlwTFg3dGdxT21kM0Jxc0VlMnFLODZKdkIwTjBZcFNqU003REVIT2hzcFU5VGpsMUF3Q0FrK1VWRUVLY3lrT3YxUDNQR1JjaHBQaVBhNmtOUnNwam15NVdsT1g4ZWl1T21VY0c2aVI3bkRHZUtsdXhoQ2llNys5MjNGdEUwV1RLNXBocmRuczgzL0s1Vm9xV2dEQlJKZGtUakRZVzVJd1ZlSmloc0FLdGMvMWxsSTBYM081MnhuOTdtZDdITVNMaFFJMWtqN2RoRkRwU3ZtSUpJOXg3S0dKV0JoWnlnYjlXb2RxK3dOc3pjSEl5QWxBaFdXWWJPMXkyVjBBSUtWSFdCTjRlUEtQMU1jK2RmUzdvYm1FRW5IbUVLSmRzQmt1eDh2MVlRb2lNSmJOQnpBNHVKRE9GOHg1MnhIRWNGN3N2K1BZMFpTOHBvcWs4dmRJVGd3OVJyM01qdnBhOFhpQ0l2a3FPeW9qcUhQeDMycytsQUJtdlhvSGEwK29BUUF5dmU5alhKdUhzVWNUY0tHMWxNeGgrTERkTWdSOUxDSkcxeTlaUDRsRktTYTR4ZkkvQXl4R2M4aEpRV1ZyWnpJSDBOaFlHL2s5Wkd3dlFMVVhCQVRQODZGcmtnaE1nYnh2QXlvUFZBU0M2ZXJCdlN6QW1ySUJLSXRrTWhsY0EwRk9wWWlHdTl4L3lNMVdjYUIvMGQzNzN5d0FscFFDN3U4VUNRTDFOS1VHMzg5QXZFRkE1UmxFeUJ4OWczZHFtdk5SK1NqSXREbTQzMTJZWEZCU1VBZ0JjTFNnb0tEaDZPRGoxU3BTczlWSGl5MmF5eGdvQW9MNURRWUZ1amlsWm9GRTF5Smt0Njh1N1BUSG8zS01DUEpBakFsQWdXVmJQeTQzZ1JEbkpPRVgrRTlnTUNvd2U4NGtOQUdJSHpOcThhOG5URFFBQUVqY0czSFc5YkxsVlM0Z1ErWkk5S1I3SzZsdkZraVV2S0trQTk2aFBzNjc1aVFEUVpyVzdvVC8vaEIwQVd2cFdJQkRYOTlMMzNDRG1SYlprUXlnV0ppaVhMSDhub2pTNG0zZTZRM0NlZWlZT0FEcmxlSXR6dmhNRkFNMVhlQUowRnIwdFpYYzZZbnJrU3Zaa3FEblAxdnhUTTZWVG9mQzB3dmgrSHk1WTh0Vjl0UUVBcXV3S0tPOHVBSURZWWI5bEZWLys1NVBPNkJWRUJqSWxHNnFOQmJEbGhTNkZ4UlBLNitIVjQrVEEvNWdEN2xYbXRxUWExWmd4N3hHcklVK3lKOXVITG5HZWNzbHVVRjJkNkEyQjVUbjRNZWNRSVpFOUxwczFlSC9vUkN1Vmw5OUQ5U0JVVXRCb1J0UTFhc3VyQkVTMFpMUHVrS0JZV0tWOHVEN3FUc1ZaUFNRRVR6L1dWRnRlSlNDU0paczE2QjhweVRJRmtRaWxNMDd0KzdzYWZCZ3VucFFVbWdpV2JLWVVyd0FBWUxueVo2VDNVcDRYQUFDS2d2NWZYTHRVRmxjWmlGekpaZzhXQkhobjhLZnloM0FQS2M4TEFBQVZQd2F1T1RpbWNIY09ZbWFramhoSUdTdndFRitnZk15Z1NPMXB0dFgyK3d1cnVGZGxZWldDU0YxOG1EbEVvbGNBQUNVclJ5aCtUdUo5SHlyT0N3QUFCZU4vOTRidmRzMzhYa1ZCTHc1V2xtLzhRUlVQUlNRZ3JaWE42aUNuekhIS1cxbHlUTkUvZlZSTWpNOGw2N1RKUFVPYi82OFk3eVdiZkg4dDVwd3krd3NWcnhjMmlzaHNaU1gzdk53czVZZkxsa0h6TzM2WG5TZmw3aEhwY1Bqbkh3c0JBR0RQTGJjUGJSZDdldlVQR1c2M2xtczV1bk44OXJMbHhiTEtIS1R3OFBKZDhoNkR5RWRLSzVzcE9maXJoK1hLV2loQ2lKSXRZSzEzdUFnaHhMWEpkd2d6WjR2eXRhc3hMMThtaEJEblJua2J3cGNxTkgrcWJQTVJtVWlRYkpaY3hjTERDajl2UWdoeHlSM25xbmZZbTNVUHBXVzB2ZU05YWZtRTVDTkVBS0NKMHBYcU44aTBIcEZOYU1sbXl2SmpBUUFndFZUaEIwNElJWXZsUFl2NzFKLzFYZUh0bS95bS9DN0RhNXV1MFBoTHVQd203SVNVckd5dkFBRGdUNFdmT0NHRU9PVXRERWdOQ0xxVlhjTXJudUo3QUFBZ0FFbEVRVlJ1dDl2dEhBQ0F6VzYzMiszMlgveDNTNlRYSkY1aDU0c3NrdmVlekVERWRiK3loKzVWa092Ny9zcWZhSHRWMXZCUzh3QnZJRzFWR1FEQW1wZktvZkYvNndBQWNBRWViRnd2eVZXNVcySG5TODNNSHlLUkVLMXNWaWRGcGFaY1Z0aEtFVUtJczRlc0NnaVhsSmMwb3g4SU9sVnFtYlo5bE55U1RHOGF1bkN6RVdHdGJNNFEvbGxaMHJpeWNKenloOXJldkVWR2hJeDhoejhDalBPRUV3QmdVeDdBNGtIdVZWeE5BOGJiTGtvdHM3LzBxYjVnRHB4VW1CR1JqbWdybTlVNWRBRjBibExZVEJGQ0NIRU5sUEdrcElCZDRYdXF4TWJHeHNaeUFBQlJzYkd4c2JGeGkveDN5eVE3eVd1Vld2Nm03QmVGeUVaTXNsbGRGQmNiZFZ5azNKQWNpQW45QkI5UCtqd0RCMlZSVFgvL3lYYkxwWmJhUjdIaDNXVFlqU2hFUkxMWnl2eFlOeThwL3RnSkllUXBHVStLLzhXaldkZi9LSk51OXBsZVJaK1MrbTNQclZKcWRrYUUrWVhtaEMzWmJNVmVBUUJBbXBxaFdWSWdPSmxlaE9RUEN3a2g1UExiMU9uOWhQZXVFa0tJYTUva1R0M05pczErWDRiVmlGS1lrbFhoRlFBQXdLK0tQM2hDQ0pHMUJzdlcrdG5aWHo2ZHp0ajBiZXYrMGNhZEN4NnFJcm0wcllxdHhrTng5WUFsMlJ5VmlsWFJWaEZDaUd1QXZLZUp4eWpnYkRKaUdOeXAyT2pEbEFOeEVNMWhTRmFkVndBQVlOdFBMMWtpV2FGT1BJcHFPWEJRTzlrUmpybWFYWHMyRmwyS21IQlNzYzFUNVZxREtJRXUyV3dOZGxOUFZQelJFMElJbVNOZWVzdmZDd201dWxwbUY3M21CM2tWcnZ5Rll2M0tWeFZiN0VpWFp3eWlES3BrYzdUWS81OTBWdkdIVHdnaHJtRmloWGZJY3FmS2wzRzJQVUNkYmU1YzUyOW1KbWxlck5qaU5YSk1RUlJEazZ4cVA5Yk5OTVVmUGlHRWtQTWlFYnJpZkRFNGo4c0lWUkRsQzJSenNnNGppVzJaY29QdmsvVjJFS1ZRSkt1UllxR09zc09VZkt4aGU2cTMrWmF6dWg1TkZCQUZBQkFydk43Rkg0cjJhVWJCOXlzMzk0S3NZNmJOUXdTTUplY08xV2ozLzVtNWsxVGw3L1BHdjFpM3J2UDF6Ym5wendsR0E5WlBMSVcyYzFJRnVSTDhpMWx2b3A4LzJrREZac252aTVUblJXUWdhR1Z6dW1wV2RoTlYwd21FT0VlelN2NUFORjlKTTlZaFNqN1dVVWNOb2xZb045WmgxWk1iTGQvSzVnN2RxVmxaSitjOXFDcS9iYzV4Um9PZjQvLzFlQ2EvbFNXYnNnRit2RWE0NUxWR1IxL1NDOVRBWWMvSjZzd0ZzNHA1NGdtaUxieFdWc00yRmdDYXEyeG1TWFlhdmVDMnZuNTl4VzJjQUhjYTRmVm1WN3k1WE1JanhRR2dkem5kQ2tuY29lV0xRMFFJbHF5MmlnWDRVb1VHQ0NHRTdLSFBLTmcrOFM1MldTUmowWmZ0STIrdTNiVHAyM3E1S2d3OVlQbnZWOHNRSk5sY3JlT3hOcjdLK29pbHNwcCt3RUh5RDA1Q0NIR3RabzFXMFhQOTV0YnNVZG9PelBoTmF1eDhXTW5yUVpRUUtObGNqZHRZQUppaFJnYUVFRUtXME1ONHhJNWRlZWJjaGtreVk3UEVQN0s3NEhMbWgvVW90Mndxb284VGtvTTdhM1VqUUxLNVlWaWduSnF2VnJMa2QwYm9tYWo0UkFWZnh0R3BEZUpwYTJTNHQxVVorYXg4U3hDRitDVWJEc1VDL0Z1dFlnbFpva2NMOXB6eWczUUlJV2VTZFRBUmNlT1RiQmk4QWdDQWhBejFtbDB0ZWEycllpWTdRNXNod3ZOaE54RHg0WlZzbUJRTE1FYTlaTWx1eGxpWFpqeWhUckY1Mk1qcWlFZXllV0ZiVUc5VHZKTXFnT3lBWlE5eFZSSzFPSFF1T2lYWk93UEdUVkhsRlJBeVdRTjdFS200SlhzcWpGdERPNVJwb05raTcxazFWVjdlbDMvOHM4WnFqYktQWFhmdTFJTHJPUUFBK3ljcWpUdUdaK1BxeVMyRUVKSVgxczNNNzJzZ1dlS2FFUU1BVUgwZElVUlJhTHNnN0I4NUNDR2s2RjRBcUxwRXJXM01wUkJJT0xpRmhOTXJBQUNBbEV5MW1pQ0VFTEtsT1FCODdQbGprN3FHYlpSbjhlS0Y1dERtb0ZyRE5sajdUQmZMSGUxNzh6STRPM3hiZUo4eGFLRW1yNlh3bVRrMUQzcFdkTHUrRUlsV2xQOTFBU1RjVDVzdjhNQU45UjdDK0VybXAycTdUczVlVzFXV2dKZ1BWUk5MQVN3YkpLMW5QdzNnRVdrOUtoV0g1M2dKc1VrTnNTU3BwOVVyZ3hCQ2lIK3BsVXVFMHZzQStoZUtwZERJSEVJSXVTQmNTbTR0TE9jWTZNT0luelYrTVNWRDh0ZzN5MDY2Z0dzb3N2eUF2RHBHTTBzbWZxRlpVWWlaK0ViRGRvMFFRbWFwNi9KMDBzQWhjTE1XdzIxRUtGVlBhS1VSUWdoeC9xaTJ6M1NYbXRYY0FWeHRyY25yUVV6STlScHB4TTNXTzJYSGlRbWt4a3ZxWWl6NCtiZFc3d2N4SCtxaWR3ckllMTF4alBldXM1V0gxK0N4Q2ZjaVJEQjJOZWZYMFhDdWUwUkJaejN0bVQzYW1WRFlVdnYzaEppSDJ0bmFhY1ZEeFpwbjI4b1lpdURhUHI5QjNaSXRIaEd4ZXdZSHVkajBYS1g4YUZzMnVXdldiVHJzREpuTTFyelhEVGMxMVBiUlA0K1JjUXlKYVVISmlqRHhzekM5bml0Nzl1NC9mUHdNUTBBMW03WnUxNmxMTmMyZm5kRzFRT3NpalFBbEt3TDM2YU5oTEowVVorZWVQbmV4b0xDNHROd0Z0dWk0aE9TcTFWUHJwRFdzRXA1bEt5VTM3QWhMdVhxRGtoVWo1azkybEV6TE1lRkxveTNRQnBTc0tEWFdSOHpRKzZ4SEk4R1JCWlJzS0pwdGtCVXJ3N3lzN1ZkbXRBa2FnWklOUWJlL1U0dzJRUXVPOXpwbnRBbGFZZTBGNmpxd2ZYU3AwU1pvd01YQkVhTll3SFU5b1RoeGRLamxYMUxKNE1nWUxBQUFsS3dFRHVZTXN2aDNrZU9lcFVhYm9DRW8yZERzT1RQQTBwcDFQVExQYUJPMEJDVXJnWjFuKzF0WXMrVFptVWFib0Nrb1dTbnN6QjFvV2MyU2YzOWd0QW1JRWR5cE5pUzlVYmd3WWx4bFpXQ2gwZUpUaFBNcG8xOGNZaGc5dGRyTG9pY1ZEeG45MnJRSFo3OGswM0p4QzZOTmtFdkp1RitOTmtGN1VMTFNTZjM1QnFOTmtNZkZFV3VOTmlFTTRJaUJkSXAvck5mWmFCdmtjUHkyQ0pyejhvT1NsWUZqMGFXYnJQUEMxdmJQTXRvRXhBVGNlTXJvSHBWRVhKK0ZZK01hWWtIcXJ6WmFqSks0K2xERTlsS3M4ejFuRWdxL2g1N21mMm5IQnY1aHRBbUlpZWg3MHVnMk5CVHo2U2ZwSXBXVzZ0OXFHZkJWY3k0L0VMRk9BYUlVYm5pZTBicGtzNmFaMGE4SE1TTTF2OVkwOHBCMkZENkprZUlRT3JjZU1scWROSlpoRTRzd2lYL0pkSXU3OHU2MjdMSmVSQmNhenplVmQxRDZBUTRVSUtIb3RjRm9uZnB3TFdwbDlOdEFySUJ0MkQ2anRlcG04NDFHdndyRUt0akhtcUFmdG1jb09yR0lkS0x2TnJpbDNUWFMvRlBJaUxtSUdyek9zUGt3NTFycjd2NUZESVRyTWMrUVBiaWw4M3NZWFhYRXN0Ui9KVk52d2VhODFzRG9XaU9XSm5yZ2J6bzJ0V1ZMaHNZWVhXUEUrcVJPM3V6UVE2L08zYy9WTjdxdUJvSEwxRFNuK2NpUm5jTGJnM2NkK3VYbkEyRjlncGxCeVlhRHBvTUc5d3JYMXF1SzdRc1hINDZRWXc4VWdaSU5FMVZ2Nm5kckk2MUhuOGlwVmN2K2pweDQzTXBBeVlZUHJsbmZHM28zMUVxMjVQU0dkV3NPdVRRcXpjS2daTU5Ndys0OXVuVk1VZm1haS9idjJMSTFveko3QXdHZ1pIWEEzcnhqaDNadEdpb1prcXJJTzdoLy83NGo1WnJiWkYxUXNycVIyQ1M5V2RQR2pkSVNwQXduT0V0eXNyTk9aQnpMS0F5N1hWWURKYXMzWFBYYWRWSlRhOVNvV2pVNU9TRWhMamJhRGdCQW5HWGxaY1hGeFpjdlg4cS9jUDdjNlhNRjZMVXlRTWthRHNmWmlBdjlWQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCSklKaDVMU2xhb09HZFd0V1RZeUpjcFlYWDc1NE9pZTdBQVBFYVl3T2tvMUpsWlRNNWF3b0xiSHk1NXZjclZmWERuVjVwM3BVbk4yL1kvT1dBbU1zaWt4MGtHeXZEZExTRVVmRjFkTlp4LzdaZWJnc3ZBYUZnL3BEQi9kS1pOMHMzYnBvd1VrOXJVSFUwVXZ1TVd3WEZ6L1cwR2lqWlJFemZHbFppRHBWckxvelhLY3FJWm9qVzdLRWtQSlY5OFFiYmJkVUVwL0lrRlNucktlWXpUQmlMcFJJbGhDUzgxeVMwWlpMd1Q0K1czS1ZzdThMNzZtTGlFWW9sQ3doT2ZlYS94UHV1azFXbGRhMU50cGdSQUtLSlV2SWlzWkdHeTlPekxSUVBpeWZva2UxUG5FUjBSNFZraVVYaGhodHZSaHA2eFJVNlpzRW84MUdRcUZHc3FUaWVmTk9kblRMVlZTbGRUV01OaHdKZ1NySkV0Y2JadFhzN1ZjVVZtbTN0TGtWeEREVVNaYTRYalM2QW5RR2xTaXUwdllxUmh1UGlLSlNzc1F4MnVnYTBMajVxb29xL1JGdHRQbUlHR29sU3k2bEcxMEZJZTN6VlZWcHV0SDJJMktvbGl4Wlp6ZTZEbnhxSEZOWEkwYy9vMnRnWFN3eFN0ajdYcU10NEdHYjAxeGRBVkZmb0R0cll0UzNzaVRIWkxQemo2bXYwZ3lqNjJCWlRMVDRVSXpKbjZvdlF6dWE3a2tXdTExd0tMZVFTNm5mc3ByWXl5M3JlRVJqcXhETllMYXlMaDhoMjZTRFpscHR3QzBTc2ZUQ2U5MDh3d0gyVGxQRlZzek1NN1lTaUFnc3lSNUw4OUdvM2ExUHpMOGdwdGxlUnRjaWdBSHNmN0h5dDROODFMaG5DdGxKVmJyRGxSWURIWVBEdkZWTjhhTmVhY1lzNUtPbjVUM1UzcXhUaTdUcUJSUEYwbkJKTFpvM3JGTTlPUzZLbEJVWG5NdkpPSExCSmFYb0hSMVp0ODZNNHRlMXpVS21Najk0VHNMRFZNSWxObXZXb0U3MUt2SFJuTE9zc09CY2JzYlJpMUxxeUNlcWRzc21hYWxWRTJNNFowbmh4ZE5aeDA1YzFkeFdxWmhJc2dDSkh6L0FLdVJ3RzkrMnNJUzIxQlRGQjMyL3h2WWZlWE1kQUlDakxabFcxYnVsNzdYTlk0S3Z1WEszci8zcldLaVBkUFNQckR1bmJoTDZwL1hYTjJHa1B0dTQxUDFMSjliRXdoVmhjZEdkNkVuM0NUY2ZjV20zM05DZFgwVWd1VHMzckRqZ1pEeVJocjNUTGIyNzFPWUpwZlRRcGxXckxza294Vkt3SElORHdxUzJXYXl2VVVkZFg2S085QlJaM3Z0VnB1UjVyN0Y2T0RVbmIzUXdIdVQ2NXlYeFhUeTJuU3diaTYraHBlL0VuTmdkNEVteGtKVWdTemdFZVFNOTVRV0I2bXMvczkzSktwZGt2TnRXWWx2RmRma1AweUcvdW1oVWhHNE9raUZaaVB1SDlYNEcrTkswWTd4QTkrdXozWGZHZjQwdTJmUXZpcGdmSmlHRWxQM1lXYVE2TnpMelBVYlA4Q29yL1plZUJHTllDWnpDYWI4cDlKUnplY2xhZlIxaUJZUno1VzBTUkJzMVlwTjQxemp2eFlnY1g1WWpXUmpGZWpuUCtwSzBwQ2R3MUFZQXFMNGc4QnBOc25Wbmw0dC9tb1FReHp4MlMvc3pLOU1teHJSTTRobEdocE9lWVpEa1M2d2lIeElVdG95ZU1IaFpjWTNQUWxlUmtGVU1IOE1IZDl2dTBLV2NtMlM2cVVuMXlKSnNMR3ZjNEdOZmttYU1GT2tBME9SUTBDV2haRzBUQzBKL0RJU1F5NnpkQTZtczVzdDFBK3NGdk1aNmlMZTMrUjByd1hmOG9tTG8xaGNHTFJzZmNFcFNGVW41NjN4SE40amFQNFFlZkNTRWtPM3R4RXF4SkxJa0M0c1pxZjE5bnNhTUZOMEFHbVVHWHhKSXRvYllrR293QzZwUzdYdVVsWDRkOHdVMFozMzBkM2tTREdDVm1jMy92N21HbnU3WGdDVGNxMndmbHMvYU9reWo0ZGJUVWtzcGZwQmRpaldSSjlsM0dhbVgrVkkwWktTNENWTDI4Uzd4SmR2NnVOU1BnUkR5VDJPYWZhdFl5ZStpcFhhem41SEZ1NTRybHVVNnVQZ2pIay9UMDQzenA3RE5sRkZGY293MXJNZzlWU0dqbUEvMFhLcGl1bVV4K1l6ci9pNHhheEFxa2Z1a3ZYalozZGV6QjM2RnRGM2JRbml4Sm10TzQvSkNka21ybkhTOFE3Wmx2ekV5Y3IxNUYvaC91Nm40dy8vNzlFZlpkZ2hwL25jRCtvUGZtaUhIUlgxbXRwbG1KOVVqcjVYOU55UDFDbCtLZW93VW8rNFFmQUVIdDdLZDVhNXhQWmttTUkvWnUvOUI1QTNFMTZDVDRrM1FtMVhxdDhFRjJlbGYxdjUzQTNmTHJDTFpSVnR4eEwwbHQ1aFB6THJkU1JIYU9BYitScXdPSThVREJ3V1hnaVRiVUdLdkpJQWRncytUT1hCOHY1cFhaR2ZGbXprWi9DM0lHQ3laNUV1UXhoeDhZUElGeFo3SjBqcGVnY2ljblRRMzhpVEw2aC9OOWFWZ1NYYTU4RktnWk9PMnkvNFlDSm5EczQ0VC9sdTRjVFZWOVk3ZVpoVHJEQzUyUEQyUi84dGd2dndxT204V1dOTlh5aGdaajRyclZiMEFjNkhOSUpkLzYwa3FJd1dsWlFpVTdBejVId01ocnVIQjV0VmtkVXBPcS90aTdNUnExb0lYdDM5RlRiUFZkNys5OU1FQ1A3djVYbXNONlNHYkFzalFLeDZWMmJwZlExaWIvRU1IdXhRWHpmVlBLTEFHdVA4R3orNTBZSFZLOXFpTGpMdjNBT05HMEdBdjE1T2Fab0h2dDhlVmZKeWRCdkV1ZkVEdmtvV2d5VFFsdVJSZ01zbkd2OGE2YzVCMVF4cFJNOWsxZFJZN21QZnFCMjlKWnc1SnFEU1AyWHU3SWZBZnNUWmxDQVBBNytiSGpxRVhzdmU5Q1hlTmUvYXJMUHBkbUJUODV3M2o2TWtBQU1xdXN2ODFKN1BYSUZrTk9jdGl2bUY5N1pUNkIvWlpqZ0VGdjJOQTl3SUpJVHNudG9nQ1c0Tzdsak8rbW92cUJScjRPYXNZV1VOTEZGb3dsdWs0Nmdja0drcE40djl2dVkxNi81SjNOcGNiY0ppYW9EeG9ZTVMybVZIRnNybjlhd0RFZFo2U3cwZ2dObWhpTGFSTHRzcVBqS1NFYlBPblVpTFo2SlAwQkNVVGZhM1lJTVlRMkR1QkZxNWdQV21nMnJmRUVzcklnRFR2VVZPODVicy9qWHIvVG44QktldXBLWUtXZkE1a0dMTEh0MVkwZ2ZHUDZ6RGg1bjFsU0pWczhpU1JHRmV2KzlNcGtTeGp1TEo4UU1EemU5Q0RhVndJN0ZZY1pUMUpiTzJYSkI1bkZQeFJRSm9OMUJUZGZmZXBxeGdMQWhjUzFLT3VVWmdka0lKYlE3ZGpkK0Q4OWFmME5QOVYreExNQWt1eUoxcjVhTnRqK0pRbHhZeDBoQkRpQ3BCRVRaRjBQSHlTM1VpL0grdzVNeGIyQmJoMmpGVXBoTGdVOVZnQ3FjY0krN25EbnlTZXVtWXl4KytrNzZIZHp3cnFsbEpIMDdZR0pPaEFIM1FvRG5LajQ0NVFFMTIwVE9UMUVHaXdLWnpzQ25qdk5hUm44MHEyRmYxMlhuRGN6Q1Q2QUp0L2RRTlVZUzBNcjFDL2JKUXlyRXhJa0JOL0xUWEJKLzRpcUU1bVJkQk9ubXZPVXRnYmtPQUR1aGxCN2hIQS9mUlV2Q0ZCeTZLRlpBTVhqaXFRN0t2MDIvemhDZnJVVm9sLzNLMEI2MEZsNm9Oc01WUkFidk9sZUlwNlAyQW00Q3cxd2Q2Z0JwS2o0Yjl0ejZLV1VjRmJQNXhJWHlRdldDd1pEa3cyeU1VZ1MrNE9hdGVGWTd1M2JkdDEzUE1uSTdEeVQ3eS8vNkttaXJ2Ujkyc0tOUUVBT0N2a1dFZGxZVEg5dW44czlqcmE3WXZyL2IvVGplaXc3NHV1ZmxGU3BlWlAzSVcrdG4xcmR2RGZ4UnVweVc2TmtOVXhHclN5OXdlV0Y2cVZQVGYzL282SlFmK0tkZWdEV0tmNEw3Z0pQZDFNWDRKdXJHZGUxdUE5L1VJdjJyZm14WlpKdXgyNGNPWVFMUUVoaExpT2ZuQ3J0SUE3TDlNTGVKMmZqckZ1SnRSR0I0dWdYckpyZzdRbEx0bURkd3UzMERHV1h5M2xwNHVqZjkzdDhTVzRqdlZVTFk1UEhFNHZPdC9iNDY5UC9ZY2FGbEFDbzdQdjV1cmExL3RWQzJuRVNucm1ZZngwakhGdXh2WTNUYkhDeHAwckQwdmV3K3g2NXpYSzBZelViMVNBRS93THBaZW9UVkY2Y3FIbk4rYWNzQmIrMWJMODZyVEwxZHA0L21XNjBaNWVITER3RUU3MEVTaysvb1lid0hGdy9icDFaMFFTeFhhaFh4ZThLa1loMUQzR0dtTUJ5Ym9tSHBXYzlKRXZhWmNabjhNRndaaE1FVFZkZlBQZDN2SlpEeGJkUkNXUnF3dnBVUng2ZWlSN0xlM21pa0NUZDRYYTBXTHYwR0dTYzkreXhkdFliVUJUK3U0aDF4WCtxMktjMlJwaWpiMVZVT3NZdk1RclQ4UXhlSXRxQUZ5a3AzYVU4V0ZNMnZxbTdqdXpIbHltaFdadm9aZnQ3WVpUdC9EY0YxaEFhL2FiQ1NiM3Z6M29YeGdqR1JuSytXK0tzYUx0WW1UMHYxUWU3L0VXLytXeUpmc1BQUktFakxrSE9pOTRTMHBucFhDRTloSkRFME9mL1R2aGZnRXh0QW5sc3BwQkpmRDN2ckZ4SFhpS1p2TC9TUzZBQWIyVjFoU3pEM0k1L3oxRitySytxZlN2cTBacWpmQXRUV0VPRE5pMGlFQlIvaXYxY2tQM050Z1dOSWx0dUJEMDV5ZVVKSFM0TmpOT3ZpdmNYNnZkcXdvZkpwZnN4ZUh2U2xkc0xtUEhZRDM2WmVuNG1yS2lVa1lLcnBiYVp3QUF6S2ZXMWQ0VkFBQzYwdTR0Q1A1ejdqRVpUNnZ5L05GWCtNZm1hZmVxd29lNUpidTB5eUlacVg5ampPZXJmbzIrR1lUU0s2d2txajlyQUlEdHg2bVhld0FBWGJJdTN1c3BueWduUGh3a3Y3YUhOOGFnM2FzS0gyYVc3SWt4ZDJTSFR1V0hQbm1sd1d2MHRVWE9VNndramRVK0F3REFTWStweUpic0x2NzdXZjJLdkNlMitQdmxvQTZUZHE4cWZKaFhza2NmYWZlVHJGQ29qdTJNRzZvUFd2Q1BCR2F5a21nVDMvZ0hhb1U3eHdCQVBDMk0wQUxCbGVreXoyQ3dUL3M2Y0xCRHcxY1ZOa3dxMmVKZkJyYWR4WEljR1p3N3g3aWg0Ymx3ekJGaWVzeGJ1UnpjUzd0YUxSMEEwaW03QVluUWVTZlAvcDhzM3dCZzNKeUFkdFlLUitpWlVMS3U0N05IcDQzNms3MGZpMEZHT0l3QkFBQi9yNGk1eGF1akpnT1NaRDcxY2plZ1Q0Y2NwV3h5Sk5QdllIb3ZkTVpPOGYrdU9vQ0d1bDJia2pEUDdKZkxXVmFjbjVkMWRQK2VzMHBDb3dQa3NXN0lGajhmZjdlTzJnb0NBRlJMcDRkbGtNblBiOUUra0s1ZkE5QzJQZnhPTFdOWis3Zkd5L3BZWC9wcmkvZFgxUXZTMUs5b0M0bUJrajNhUGVoUDRuSlV5UHhPQzRZVnpRc1lxL3FrNHkvZ3lCVkdCNFhybzRsa016ZlJRbjUyQlhvclM1Y3M1RC95MmJTQk1scjk2QSt2OXpZU0dyNnFzR0dnWkYxYXJOZ0xnTDVBQUFCVWgvUS83L3V0WkRkcjVVbi96OW41YXpJNlo4NmRndStUK1RUSnRva3ZpV2tqdkp6TDZtL0MzaUVkbnhvdHZmTiszUzNld1JZTlgxWFlNSTlqb0pweTFnMVd0K3hocVExamdNdXhoaVhabTFPWVk3WXcrVlg2OVdQQ25mKy96WWdUcGt0SzM5dUlNdmUxV09STGFlOERMOXc5cnJQVW5zb0VyMlFacitvWTg5Z1ZQdnVsSmpRMThtSnloWWExeG1BcUswTjdSZ1o2NUV0bGxlSHRyQTZHdGVIN2UwcmFKYlNFOThNSXl0VmJROWpLdFo2eVRWcVUyQ3ZlNFlpUDZmZFZCaGJSRmhPT0dHaE9KcU1ieTRxbEpNYjJzNnc3anpKNzJ3MjZNVzdRVHBlaXlSZzZRZ2ZoeFh4MjNIQTM1TkNiM1p2Y1B5ODNkQzgrMmJ2T2xUSHFvdVJOaFkzS0lObkNIUHAxSld0QXlwZXc3blFWUmhEME1JN1JGU0tyS0JlWDBQeUw5alRKL3NsWXN4cEU3amRqRzdkKzZLdURJWHJ5M3M3ZFlmcnRhbVk2ZDZZeVNCYjIwQzhyV285TUh6a0ZBTzR0aGpMaldidExUdEFtSnE3OFFibll4a2FacW1DTUZ3aHdIcGt6dmwzYTBJOE9pSXdkZXZ1SGUrbHBvczBVYnF0U1NKYlJzKzZwWk9COEhUTUVZemVHTkNlekZ1UXRwT3FEOWo5UnE3Rnc0MnN4YTBrRkRYSnU0ZFB0VzcrY3licnZYWVo0aHZHRlpLWWpoQ3VGWkJsT1h5c2xNYVFxK0ZHUy9ieE4zYkRUZ3JWU2hSRjJiUVdsMTI0ZkpseTh2ckpRbUU0VWN2U04xaTh3bkFudmFMT0xjWGpyWUpuUENpY1JOTWpGWmd0OUFvQjc4Ri9CRjJyOFNQMXVyeGdaNkYvTy9qY3I5bS9DNzMyRjNaZXFQN09TNzkxRnZWejYrd1RoeGZlRmx3Uit3YTNVSUVzL0JKNlBYUHJlK2ErcEQvV3RMVmh4RC9WKzczU2VFek4yUERYZHlqZW9sNjJHNFlOY0FEL1JjMXppTGN1bmgyTUpqTG9Jd0J3SUlvU1FMTUcwYWkxR05EQkNDT3NVOHo3czhnTW9UK1hubTBOTk56UTRVUlExR0lJL1dFTHRVdnJqdmdrdXhzWTR1RlY0SEtRbE1ZRmthYU9haEJEeVk1QmZsTUlJblBwOGNHRU5SRTdBTFg0bWVOL2lMU2VaU1UrekZ2cEYwMVhGWTdVZzM3UFVkQ3Q0RGpzOTFzRXZ2dnVNMEdDT2ZrR2wzRWxQVmFiSjVnempNWUZrNDg0ejhyd1c4SUhhdm1aOER2eXV6M1JHWVlRUVFvNU04alYvY2YzL0ZEbTc0QVZnUVE4ankwTVlSNTl4aURqdkNEMzYrU1QvOGQxbm5jSjBQakFRVENQRzJYcFNCekhNamdra3l6eWFpWHpqMnpwU2pSVkJYSENPWEJWV0dHczNaZHMrLy9jakU1NTVmeWxqTDdxYkxQWnBHRjBrSEdIa2JDTElGa3R2L1l1QzJzZU85TmlOL2lEa0NheWpwZ3JHK2h6OW5xd3puMjRYK1Fpc2hCa2syNERob2hHUy84bkFKdFZxdFI3Nk1hc2hkZ25uZFVmSVB4WkxnTWo1b2JZRG9iUHZwT1Q3alo2MC9GMy81RlZ6UnRFQnUzUmVZajV6OXpQWDFxNVd2L3ZFcGF5UXBmc2laZnpKREpJRldTZTdCc0YzQmdHQW02ZTROQzkvaW4yNnI0VE96NDlIQXNEMjJNbVYrUk42TmEzYnNNczkzekRDVHA4TjhNQ3JzZjUzUXpOYTJnZG9ma3doMmJxWEZYNE1GYlFGQXRXT0tTek55d1Y2VEV3UExWbk5tQThYYmVZdVd0eGhFU0ZvckpseHRITm9OdXZUeUVaS1V4NkswMU1WWnB4Tm16b3JHTTFjbkNzSjUzalJyY05IYVYvN1FSejdoM0t4Z2pKNkt3a1NORmc3YzUreVVoeFBLTnROSXBmS0lsbjRlSk9pYkNkZnBGN2VmWitxM1RuVFJJNFZCK1lXc0FBV1VsZG56Vks0L1cxajBMc3BtOEJjZVN6Sys4d1Y1NWJERkk0QlFGTzU1NFFUUWtncDgyVFdpVXJPM3ZRd08xUkRrY1k0NjhNSC9aaEZ1RjFSdjlEQjN3bnhMeVdsYktZSFJMTWtKcEVzOUplMjNEa1FsMGlJMzBraEhVNFczNFdlSmY5YnZJUTgxczR1a1prNU5vS3p3bTNzODllWTVLbytrOGRFbUVXeU1FRjJ3L2ltMkZxdnNTVnlpM1B6bVlSMUhRK0tGOEhjWnhZckdzaWJ6cjVrUVRFSnNvdkpqNUNRODI1TUkxbDRYSjVtWGUrSXIwNjg0YlNzNHR5VVB5ZGx5V01Oc1VQUUNPbkh6Rmh0bDF5RDhwcFJpcW15VGw0aEY3cFRDckV1NXBHc3ZJYXg0cGxRNGtwam5Dd2dRaTV6NzBJd2pHa0JOL21VTFkxZXF0UFAvR1NTVFk5ems3UkFUaUVudEFtV1l4cE1KRm5vU1QvV2lzWVpDYk9QVVU5ZWtmUEpFdWYvcElZV0hDVldqT2lSVXZGZnllbURiV2Z0SnJKUGsrNzYvNkZEaUU1ZE1aTmtvY1ozMGo1UTE2OTFKUm5UYUw0TVoyTzN4Q1lXQUpMRXhqZEdpZWU5NjV4VWd5bytFRG5DODBhSjh5V1hKMFhjU0ttcEpBdHdtNVRvN1BzSFN0NWswMzJ4Uk5IdXYxdE8zQzdXSWgxQ1NIR29rSnExWm9ZYUpDT0VFT0phTCs2QkpyNVdHTG9ReDl3MEdiV3lDQ2FUTE5qdjJSdmlvOXg1bDZ6Tkd1MC92eFR5a3kxZjFGOWVXOVNQWFpiNFBBUUFBRFQ3TEtUYW5IL2ZIdkxmc3U3N3JIT21QWlRNalRBdjFvM1pKQXZBOVpuTC9pak9mbjZkN0cyTVNYY3ZFSk5JNmFySjB0eU1BR0paaXdDRGppNW5VKzNSdFNMT3FPdkltNjBsbVZGbDRnYm0rTE56eDdPMTVWWkxBMVJIWnd4TmRVWlVscUtWeXNxTDZVKy9mb1N4Q1o5S1hKL2JibWpQbjY4aGhUdlhyOWlxTEhoZlFzKysxM1d1S25pZDVNcmVMZXZYSzRrKzl2Rmt4bzJTK2hMUGNxeDljOThlTFlXbk96bXp0bTFZZVVSNlZNMjAyMi91VlovL0ZlSEsyYno2cjB6SlpXaUpEcEkxTFFtdFdqVk5TNjJhR01NNVN3cnp6K2FjT0p5aExxNm5yV0hMcGczcTFraEppT0djNWNXWEw1N0p6VGlXclhTdHlIUHZNVzRzSE1xNFFTTWhQYjFSL1ZyVmt1THN4RkZhZE9uQ3Flemp4eFRFaXF2VE5yMVIzWm9wOFhaU2NmWFNoZE9aeHc3cEVDOE9zUmJSekRPVXg0VE9qQ0Q2TTVHbDJBTFY1eGtnU0Job3oxeVNUajJsRjBFTTVqcm1lSUhMVExHR0VBUUFBTGlPWDdESHAvWlg1ZzR6QUZTU0FFZld3RDYvSXY5eWVYVFZScDNGRG9LZHFjT1pMd2dpaWVqUWMyaUVYQlF1YnExc1JOeUtoZ2hubHR4NGh3Z1NOcVMwc29WR3pKQ2FER3hsTGNYSHpLTWFFRVIzSkxTeVp5bEhLVlU2c0pXMUVsTWtMb2hCRUQwSTNjcXUwdVJzWndUUmlKQ1N2ZGpZYUJOTkFUb0dsc0Z4WDZiUkppQklJQ0ZhV1JkcnlUZUNHSVM0WkozUEdHMGZndkFRbFd5UlNOUnZCREVHTWNsdWEyZTBkUWdpZ0MzWm5FZWlRMmRIRUwxaFNOYTU4UUdSa0M2VkVGd3ZhMlpjdVZiYU0wd0FBQUEyU1VSQlZOdFhMYzNFRmJKQlZQbzE3dWFCNjFXemVwVXFLVWxKQ1RIZ0xDa3FPSitYY2V5Q1BzY1BJQWlDSUFpQ0lBaWlBLzhQNnhDNnhUMDRqTmdBQUFBQVNVVk9SSzVDWUlJPVwiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIFxuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzYtMVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg3NC01XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoODYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg4NC00XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg5NC0wXCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTA2LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTA0LTFcIlxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMTYtN1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMTQtN1wiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEyNi0xXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDEyNC0xXCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTM2LTVcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTM0LTk3XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTQ2LTdcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTQ0LTY3XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTU2LTNcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTU0LTY1XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTY2LTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTY0LTNcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNzYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNzQtNFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE4Ni04XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE4NC0xXCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTk2LTI5XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE5NC0zXCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjA2LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjA0LTBcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMTYtOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgyMTQtOFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIyNi01XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDIyNC0wXCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjM2LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjM0LTZcIlxuICAgICAgICAgIGQ9XCJNIDYwMS4wOCw2MTEuNCBIIDgwNS40NCBWIDgxNS43NiBIIDYwMS4wOCBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8bWFza1xuICAgICAgICBpZD1cIm1hc2syNDAtM1wiXG4gICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgIHk9ezB9XG4gICAgICAgIHg9ezB9XG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcbiAgICAgID5cbiAgICAgICAgPGltYWdlXG4gICAgICAgICAgaWQ9XCJpbWFnZTI0Mi04XCJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVlBQUFBR0FDQUFBQUFDQnJPcGpBQUFBQVhOQ1NWUUk1Z3BibVFBQUVWcEpSRUZVZUp6dG5YdDhWZFdWeDNjU2dnRUNDSUk4RkJVd1FCTDJEZ0VmbzVaYTN6aGo2OHlVYWJWRmhQckFPclRvV0p5MnpqaGxXdHJhK3FsaWRXWnFSMVRBNTFTbi9XaW50Z3BTbi8xQTViRjNMaEFJNGFueVRua2xKSkRjK1FNL0pqazVlNTE5N3ozN3JpVDM5LzBubjV4OTFqbjdydDlkZSsyejl6NzdDZ0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnTTVPSG5jRnVobDVaeXFwNUxkLzYyelF3Mk5sY294aUpaV2MyRWNJSVNvZ1FGYnBPVm9xZWQ3dzFnUFMzUllDWk1aUXFhU1NRUzhxOXdzZ0I2UkwzN0ZLcWtuOVE4dU9GemU1WGdZUmtEb0Y1eWlwNUJqaWpNTFN0YTRYZ3dBcE1WQkpKU2VjRW5tZWdnQngwMnVNVkhMU1lNZXozYk13Qklna2I0UlVVcFhtcDJJREFlS2hyMVJTVmZaSjNkQzlHNFJlVURpRjV5cXBKcDZSdHYzQU9zY1RFUUVkR0txa2toMjY5aW1pL3VoNElnUm9ROTl4VXNtSnA4WnhLUWlRR2dVanBaS3FKTDRMT21kaENIQ2FWRkpWUkhmdFU4TlpnRnhPd3IzR0tLa211bmJ0VStOdy82VGJpYmtwUU40SUpaVk1yV3VmSXFOcjNjN0x1U1pvUUpsVU1wMnVmWXBJQ0JDa3NFUk9MRlZuKzdqMFBxUFZaZTBQeWQrNG1lYUdBTU9ra3FxODBNT1ZtelpvcmMxSFF0d1pFTUQxV2JpN0M5QjNuSktxTXBhdWZaQVB0ZGE2K3Znbi95VUNwYTdkb082YmhBdEdLcW5rdVQ0KzROR0UxdG9jYUhkczhKNzI1elQzYVhTNlZyY1U0RFFsbFZSRkhxNmNyTlZhNjlxV2tLSTlnZjdzcEZWT1YreG1UVkN2c1ZKVnl0TjlYZjd1WHg2MUZRMEpaaGlaWXdMa25TV1ZWT044ZHUzRnF3L2J5NTRNNWhuSEpOQWRCQmhRcHFTcUtQWituMzIzMmN0bVh4czg0dGdONnRvNW9MQkVTU1c5ZE8xRG1QcVN0YWowZzE3QlE3dUdPVjIweXdvd1RFa2x2WFR0YlN5ZWJpM3ErYWZLamdjSDdYZTVhaGRzZ29yTHBKSVRCbVQ3dGp1L2FTLzdmb2ovUmNVeWw4dDJLUUVLUmtrbEs4L3hFclVmR2JOKy9sQjdlWExtWDZ4bG4vdFcyRkhaclFRWUpKVlUwa2ZYWGh4SmFHUDBBU0YrUVBoZlBQcUd0ZWpVUmFGOUw3ZHVVT2ZQQVVYamxGUVR2SFR0bTJ1ME1YckxKeVAzRjcxZFlEOTE0NFFHYTltek40WWVYbkdoU3gwNnN3QjVaeW1wNUZqQ0xlbXpXeHVqMXgxcmM2UjR6V2o3NmMwWHI3Q1dmWFZKK1BHamZWM21aRHBwRXpTZ1hDcnBwMnRmbnpEYW1MMGRqajlNK0YvTXQvdi83TWNzQlgxRzF6aFVwOU1KVURpdVhFbDFscGRySDF5cWpka2NOcEFqeFBXM0VJYXJmbUF0eWw4Y3ZrQmFDQ0ZkQk9oTURMOW03cUkxVFVsL1hHKy85NUE5aEYxRG1kM3dPM2F6ZjR2ZlJiNG92dURXQlc4ZWlOM2hBUjRuYXZBS1pYaTMzVzRTOFlYNVZleCs4a0JCeVJlLzkvS21scmg5SFVZTmtWTHVvQXlYMjNzcXZkY1RkdFVlL0JVbmd5NmY4OFNLaHBpOWJPZkVSZmFxbEJ3aERBOFJZMDMvUWQyeHVjUDRVR2VocUhMNmc3L2ZIYk9Eby9oM2UzMTYvSWt5bkdFMy9CdjZsdWZGN3JtTXlSdjUrZnVlWDNjaVRzZCt5bjR5ZjY4aytudmZvd3lKMVEyblIzeUpaanA0Skh2ZDBBSGxTaXJaMThlbEd6Y1lvODJFVjRsVDZxZWRzSlpkZUI5aHVKZVlCSGdpNHZuY1pVb2dHd0lVamxGU1NUOWQrMjNHYUZOOVFnZ3grQW5xdkcvWk0yS2Z4WlFUWnUyeEZ0MXhYVVRsVW5oZDJCZkRwOHhkN0tsclgvZjJZM2RjMHEvMVZyK21UdjQvb282L29BeWZzdHVOUFJwVnhkME9IdkkyRmxSY0xwV3M4REpxZjd4YUc2TjN0RDk0Nnk4SmkzMXlsN1hzdWxjSXcrM3FvSzJvOFAxSmhPRkpoa1pMNEtFSnlqOVhLcWxHZVpGMnB6Wkdiemplc1dEVVE1VFo3WGIvRC81dndpNDUwK3AvTVMvYS8wSzZ4RUNjREw3OHJvVXI2MU50VEZ4NVlySjFoVnZCZTVUaFFxTEt2NkVNaVZVUWs1c2Rha3c4UXNkTlVlWE5ELzVoVjByK1RKVlZ4QVR3djFLR3RVVFg2MWJLY0wzOVNhcmZWcGNxVThySFJ0NDVYN2p2QlU5ZCs3WlFJMkxuVVhtKytUTjJ3OUdIQ2NQanhJUFVZcWM2L3psdHI3cHg2dVE3Lyt2ZFF5bTVNWDIrWWE5SHJ3MlU0WHk3SWQxeUVhT1pON2pWdWQ3Yk9ySEM4VGYrNk5YdDd0N0xuRDhRU2YweHl2Q0RkRnN1NHRsNVJKMWpyYWtkUGRMbGpDbjNMbDdiNk95NG1OZy8zRjZqS1pSaGZhbmQ4THpqaEdIRE9LdGQvcHV1MVo2YWdhTTdVbnpoYlk4czMrOTY3OVRZczJ6QngxVDVQOWlyZFJwcE9OdHUyTHVhTXB4ak41enIvTEhtcGUvdGR1U1BtVHJ2ZjJ2OGpObzNySHJxbnF1SENqR0RPdWxwb25JdlVZYS9KMW91Y2l4NXFkMXdnbnY4dnh6cDJzakhwY0ZLS2xudVpXUTd1VlViYlRZMUN5R0VHTG1tbi8zTWJlcVF0V3dtMWRjN0lEK3lsbDFMalU4Y1ZOdkRDd1pOcUp4RlRkKzNaL081VVdjUVQ4SkZaVkpKTmNUNVpxbHd3Qmh0cW82MEhzaC9tdkIveTgxMi80OWNRTjFubHQzL2c4aE8ramREL0QraXNuSmk1UWpLcWdPaitsaGZLSWhtbm5PZ3BVTGptc1Z6cDNUY2hlVGJsTTBEOWtybXYwMFpVaTNYeTVSaG9PbklIM3ZEQTYvdlMrZmpYcENlNzRVUVFreE41NFlVVzErWmYwTjVlTWlSemVxYW52WktFb3NTa3NtdFJGVE5wQXgzdDc1dTFMUHlhNCsrUzgxWTB0eWFydmVGRUdQU3ZtczR4TUJJVVlLd096YmVibGhKUGdKLzFtNDRrbngrL0lJUVFvamlTMll2WEozaFdEclpRRVpRRU8rRStUSWkzeStnRE8reTJ4V3Rvd3gvYkRmTWY0Y3lYQ2dHWFhYdjg5Vng5UHFjVmtqYitITU1GZmlVdWpQdE43cUsrcWh2RU1JOVF0MXhOZEZ5ZlplczYvSWQ2WHpDVURvdWdVeUJKMk9yUmpLWkRGOUJMSVFRWXNCT3dvNFM3bXBLdUlaeXUrRkVuK3Z2MnVQMm9sSTRkOGRZajJlSis3eEFHZDVndHh2NElXVkl0Rnk5eUpZclhxNU8yLzFDWEJsZk5YWVFtd1hjUkJrK1E5VHZSY3J3OVhSYnJoalo5ZnJQWmxBdmZRaEJQd2tQc1Uva3RhTitYU0tSeUgrSmFIS1RWOXFUMFZuYXVyeFlpQjNLL21MUWRLcVhYeWMvdEpaZC9acjN0eUtPcnRmR3JIRjVTNCthRTk2OU4ybzNxV01iRWxXSnhKYWtFS2VzSlB3dkhyTDdQLzlwd3YvSm0rMytQL3ZuVk0yK2J2Zi93Q2Q5K3IrbFZodWpheHozeTRyZ0RYdDBOZXJuL3VWdlMxcm5HeDZrUXRFUU83S1JJNHNQMnUzeS8wZ1pXbDVhRVdMd1pYUElIbWdtN0YzNjhJenpVeDAxSTc4TUQ0VWxzaE9iRWxXSnhLYjJDODArUi9YeW15NndiMld0cU1neDU5dDNITG1YR0o4UU8yVEgxUXhGcFVwS0ZkVWtwMGZEZXFQTld2c1NMZ0p5V1lvSjN1ZTFSS0pxWThqVytQMFhVVUxlWi9mL0tjOFEvbStjWnZkL3hmZUpHeWFudC9OLzNrZ3BwU3J4OHE1WlMyMUNHN014L0syYmpEay9FR01IYkNjK1EwWG1jbUppOUdlVTRUMTJ1NklxeXJDMTVScDQ2ZXpIMzZjbTNqTmcvL0pIYnZ1cjNtazUxcFhld2JVdmx2V2RYNmJxK1JkaVVlamwxSlBVbTRSd0QxRjMxS2NJSVhwV1RQdko3NmdudkF4b1dMMW83alV4TldaMGgyQmpZQy9aejRjdVFEN0RVQ3NRYjdJbVJIR3FKa2JYclZNaVFvZ3JxRjUrMDlTa2tuS3NsMlhIeVpPTGdadDlYRHVNNEd4ZjZEcnV2TmVwYjhzTHhPV2ZwUXkvYXJjYkVOOVlqVHY3MzNwczFzWCs5OFJwVC9ETmhSZkRUcnFMcXZiT2dmYXIzMGdaUGs5VTY3bU12WmtTalhySlAvODFNU1Rsa2I4UFZDVnNrWDA1TldyZGNwWDk0bWRTaTJ0MkVxM2FWMkp3cWlQYlgvM1JWOFl6dmt0ZEVxaFBjOGVrMzNNMTlRR0kxYTE1U3dtN2xpdnRoczZyb2pLaTdwMy92UE16eEl4YWRzZ1ByblR1T01YNUFQVXBFc1QySnY5RUdSS0x6Zk9XWmV4Y21xYXE1NzV6WGJaMjRZcGlaYUJ5SFY2WStpeTFTcnNwYkIralR4aC9qRENzSW9TN0p3WWYyOWo1dXdlbVZXUnpGNjdJRnpSMFlJRndSYUM4WC9oV09aOXcvMnByVWM4bHhQaFEwN1JqWVlkN2xFaXA1RG5FRGRQblVNSVlzOVkrOU9lTkNBR0NneEZCQVg1T2hlcmJQN0dYelE5ZXFTMzNyd2tlR1NhbGttVngvOHFDRUVLSUU1dU0wV2FMajB1N0VERXllMFZnbjZpRDdTZFdwdjRQWVh0WWJiV1dYYnFNaUp5M0xtc3p0TktuWEVtcFRpUHVrejRmRzZQTk9yY3RobjBSSWNEcHdaZWNSclg5cWd3M1JDOWZ6TEJQbVBUWHhQakVJYlZOQ0NGRXdXZ2xmYjFyZG1TZE5tYXRkV3dyaTBRMFFYdDJCNVltcWpZQzVEMUorZjhsWXNMcVVlcWw0VzlzRTBPa2xLck15NExVNXMzYUdGMGJ6NFJKREVROVpKaUFBQlZ0M3R5ZlRVMDRmenpMWHZhbGFaUmg1WFJQbXovdjBicEtKMEx6ZStjbE9GN2NadlBZVXZKMXlDbjJhNTdoNlIwRE8wZFhMcnpyQ2orLzFwTXBrUkVRK0wrMTgxSzRoR29pSG4zTldrUzNYREhUVW11ME1UV2VKa3l5d0tUQWQ2bmwwL0hBSDFKZk9lSUZUekhINDFlOUxYdVhQWHpMQlg0blRHSWdxby9SNjBpZ3YzangreWYvWHZJVzBaRThmdEVIMXJLeUQ3eHN2OXFXWSt1TTBUcmJiNm1uUjFRVDFGQVRlTkd2NHFRQWZSZFRqOER6N1A0dlhPTFQvOGt0cHZXbG15NUI1RkNyQ1FwdzhzK0NrWVROZTlaMXlmM0gzMEtNRDJYRS9pcHRqTW5naFJRZUlnWFFYMnovLzBrQi9vN2FET3JJVFNIZndNSXhTbnJhRDdSeGd6WkcyMTlHNnRSRVIwRGdmNW1YRkdJb3RRT2ttQlA0RWJrenBWU3kxTWNnWTNLN05rWnZ0RytHMWZsSldZRGlVWnVGV0RpSXNQaDE2OXR2ZmNkTEphV1hUWVBxcW96UjVyQ1BTMmVWU0FGcTZ3TTl1WXJONHM0T1A1alNodDIzQ1NGRWp4S3BwUFN5MVg5VHRkSEc3SWcrc1VzUUtVQkxWV0FXck9MbHNUK2xETDVXZUkyVXF0VEwwUEVPbzQwSjI2K3A2eEk5NFd5Q0F2UllRajNkSEYva1plajRrREZHRy92K1ZWMFdCd0VDLzFmY1QrNUhXaGkzLzA5VUc2UE50cGl2Mm1tSWJxUXZYeG80ME94bGxXc1lIeHFqemZxUXhjRGRpR2dCZ3I5U21SVU9KN1F4dW83aHp0bkdvWnZ5c1o4MTlSYWFOMmxqOU5aT00ySGlHNGRWWHlaYkF1elN4bWptS2RxczR5SUFzYnd3Sm80bWpEWm1uL2Y3ZEVJY0JOQSs3OTlTWTdReG0zT214ZW1BU3dSNHV2VWVvNDFKMkgrZUt6ZHdTTUpGUjdMVzcreXVQRzVmb2VDd3NlV3hydlpyVEYwS2w1MUZ2U2FCWE1kRkFGOUpBQWdJd0E0RVlNWkZnTm91TjlQZGhYQVJJRm5sdlJxNWk5UCs2bWlEL0FFQm1IRVNBQThDL25BU2dHTktKbGR3RXFEckx1N3UvRGdKa0x1RHhmNkJBTXhBQUdhUUE1aEJCREFEQVppQkFNd2dCekNEQ0dBR0FqQURBWmhCRG1BR0VjQU1CR0FHQWpDREhNQU1Jb0FaQ01BTUJHQUdPWUFaUkFBekVJQVpDTUFNY2dBemlBQm1JQUF6RUlBWjVBQm1FQUhNUUFCbUlBQXp5QUhNT0FrQS9PRW1BTm9nYjBBQVp0d0VRQkx3QmlLQUdRakFEQVJnSmpzNTRQRzhyZzN4bzNTWmdnaGdCZ0l3QXdHWXdYTUFNNGdBWmlBQU14Q0FHZVFBWmhBQnpFQUFaaUFBTThnQnpDQUNtSUVBekVBQVpwQURtRUVFTUFNQm1JRUF6Q0FITUlNSVlBWUNNQU1CbUVFT1lBWVJ3QXdFWUFZQ01JTWN3QXdpZ0JrSXdBd0VZQVk1Z0JsRUFETVFnQmtJd0F4eUFET0lBR1lnQURNUWdCbmtBR1lRQWN4QUFHWWdBRFBJQWN3Z0FwaUJBTXhBQUdaNk9KMlZhUTY0L2ZZTUw5QjlRUVF3QXdHWWdRRE00RG1BR1VRQU14Q0FHUWpBREhJQU00Z0FaaUFBTXhDQUdlUUFaaEFCekVBQVppQUFNOGdCekNBQ21JRUF6RUFBWnBBRG1FRUVNQU1CbUlFQXpDQUhNSU1JWUFZQ01BTUJtRUVPWUFZUndBd0VZQVlDTUlNY3dBd2lnQmtJd0F3RVlBWTVnQmxFQURNUWdCa0l3QXh5QURPSUFHWWdBRE1RZ0Jua0FHWVFBY3hBQUdZZ0FEUElBY3dnQXBpQkFNeEFBR2FRQTVoQkJEQURBWmlCQU13Z0J6Q0RDR0FHQWpBREFaaEJEbUFHRWNBTUJHQUdBakNESE1BTUlvQVpDTUFNQkdER1RZQmpubXZSM1dteUY3a0pjQ2ltaXVRcUIrMUZiZ0pzanFraXVVcXR2Y2hOZ0dxMFFSbXh4bDdrSmtEanV6SFZKRGM1a0xFQTRzVjRhcEtqL0lwNGtNMXp1MFMvN2YzanFVdE9NbW1WdmN3eEFnNHRpS2NxT2NsdkNmKzdSb0RvdmU3c09PcVNpelRLVFVTcFl3U0krdW5OY1ZRbUY3bVg4cjhvY0wzTXRycHJNNjlMTHZMVWQ4bGlad0hFaXFZck1xMUxMdkw4VEhvczMxMEE4YzZXYXdvenJFM09rZnp4UDBiTXBiZ21ZU0dFRUtXL21KeEpiWEtQbXErL0VYV0theElXUWdpeC90THIzMHUvTmpuSHhqdktJLzJmV2dRSUlVVEpkWlBMaGhXbnBGdnVrYXpmVy8zZWF5dTRxd0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnSGo0ZjlBY2RZSDJGUjVEQUFBQUFFbEZUa1N1UW1DQ1wiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIFxuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzUwLTVcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNzQ4LTYxXCJcbiAgICAgICAgICBkPVwiTSA1OTIuNTYsNjA4LjA0IEggODQxLjIgViA4MjIuNiBIIDU5Mi41NiBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8bWFza1xuICAgICAgICBpZD1cIm1hc2s3NTQtMTVcIlxuICAgICAgICBoZWlnaHQ9ezF9XG4gICAgICAgIHdpZHRoPXsxfVxuICAgICAgICB5PXswfVxuICAgICAgICB4PXswfVxuICAgICAgICBtYXNrVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXG4gICAgICA+XG4gICAgICAgIDxpbWFnZVxuICAgICAgICAgIGlkPVwiaW1hZ2U3NTYtOVwiXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFySUFBQUpVQ0FBQUFBRE1ENXJEQUFBQUFYTkNTVlFJNWdwYm1RQUFJQUJKUkVGVWVKenRuWGRnVk1YMng4L2RiSHFoaHhZNmhGNEZSQkRCaW9EMFpnRWJDaXJZeTN2K3NDQVc3UGllaXFLZzZCT3hJMFVCa2Q1N2t3NGhsVTRDSkNGdGQrZjN4L1o3Wis3ZXRyZHN6dWVmSlBmT3pEMXo5NXZaTSswTUFJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ2lObmhqRFpBTHAzZk1kb0NIMDZYcTZ5ODdHcFI4WlZMbHdyT255OXdFcU10cWhUWWpUWkFMalZ1TmRvQ0ZvNnpaL0t5czdOT25MaU0wZzBubHBPc2ViSFhyMzhOQUFDY1AzTG8wUDU5NXd3MkoySkJ5V3BQclZyWEE4RHBYVHQzYkR0cnRDMFJpT1Y4MlZ0V0dHMkJERWpHcHZWcmp4cHRSWVNCa2cwN2VhdFdyRGhqdEJFUkJFcFdEMXk3bHl6ZWhaMHliVURKNmtYMmdsODJ1WXcySWhKQXllcEl6ay96ZGh0dGcvV3hHVzFBWmFMQnN6djNQcDFxdEJWV0J5V3JLMXlIRDdQbTk3SGNWNXVwUU1ucVRkeWRhL1krbkdpMEZSWUdKV3NBN2IvSW1GckxhQ01zQzByV0VGSmZ6WmlSWnJRUkZnVWxheEJKVHgzOWJ6MmpqYkFrS0ZuRGlILzg2TnZWalRiQ2dxQmtEU1R4WDBlZWlqWGFDTXVCa2pXVW1qUDJETVFoTDNtZ1pBMm0xZUlGVFl5MndWcWdaSTJHRzdMdnVXaWpqYkFTS0ZualNYcHZZMGVqYmJBUUtGa3owRzNMaTlqUVNnVWxhd3JpM2xyWjFHZ2JyQUpLMWlUMDNqSEdhQk1zQWtyV0xGU2IvMG04MFRaWUFwU3NhZUFtcldwb3RBMVdBQ1ZySW5wczZXMjBDUllBSldzbTZ2NTF2OUVtbUIrVXJLbUltek1OUDVFUTRBc3lGN2FYWjhjWWJZUEpRY21halFkK1NqRGFCSE9Ea2pVZFF4YWxHRzJDcVVISm1vK2JsMVF4MmdRemc1STFJYjBYWXp2TEJpVnJSbm92d0YzalRGQ3lwdVNtNzNIY2dBVksxcHdNL2h3L0dRYjRZa3pLQTY4WmJZRlpRY21hbGY5N3dHZ0xUQXBLMXF6WVp1SWFHU29vV2RNUzl5T3VSYVNCa2pVdmRYK0lNOW9FTTRLU05USFhtZWNrU1JPQmtqVXprNGNiYllFSlFjbWFHZHVzQmthYllENVFzcWFtNXV3b28wMHdIU2haYzNQYkkwWmJZRHBRc2labk9vYms0SUdTTlRuSk0vRWpDZ2JmaDlucGQ2ZlJGcGdNbEt6cGViZXEwUmFZQzVTczZhbi9rdEVXbUF2TFJUMVhmWWJ0N1U3Vk5rVFpZK0lUVTZyVnFGVzNmcDJZOEwvQnNvNUh3djRNQzJFMzJnRGRXZW5Rc3JTWXRHYXQyblJvbjZ4bG1YeGkzeG9SenVLdFJ1VnJaYU0xbGF3YmUrdHJyKy9iTUd6djB0VjdVN2lLUnNMUExVUWxZZnRlU1orOHJGU3RjUXhXV3E1bFFmeVlWN0lBVVBYZXBSVmFTSlNQNjZZd0dvMkVHVk5MRmdEcS85OUpEVFRLWjFWNGpVYkNpZGtsQ3hBMWZKTVdLZzNDMVN2Y1Zsc0hISmZWSE9kdlBXOWFyM0daM1BNYUYyaGhVTExoWVBVTkF3OXFXK0xBVnRxV1oyRlFzdUhoejQ1UFg5R3lQUHRrTFV1ek5DalpNT0g0cU4yZldwWTNGcU1oZWtESmhvMmNPeDY1cWwxcFZlN1dyaXhyZzVJTkgyVFd0WWUxSysxaG5FNXdnNUlOSi8vMCtFT3pzanAxMXF3b2E0T1NEU3VYaDM2cVZWSGNPSzFLc2pnbzJmRGltS3haQk1QUmVKZzRBS0JrdzgvVUtSb1ZWSytQUmdWWkhKUnMySG5yVFkwS0dxMVJPUllISlJ0K1h2NUttM0lHb1djQWdKTFZBL0xvR2szS3FYT3RKc1ZZSFpTc0RwU1B5ZEdrbkRzMEtjWHFvR1QxNE54WVRYYnY5TmVpRU11RGt0V0ZkWnBFaW0yYnBrVXBWZ2NscXcrdjc5ZWdrS2diTlNqRThxQms5YUhzTVpjR3BmVFZvQXpMZzVMVmlRM3pOQ2dFSnhNQUphc2ZMMm13RXJFeE9yTW9XZjNJbnFXK2pLanU2c3V3UENoWjNYaS9SSDBaS0ZtVXJJNmMrcC82TXJxcUw4THlvR1QxNHhQMWd3WWQ4Zk5DeWVySS9vMnFpNmlPL1MrVXJKNm9YOUZsYTZ1QkdSWUhKYXNqQzlTUGM3WFJ3QXlMZzVMVmtjdC9xUzRDZzhhZ1pIVmxvZW9TbW10Z2hjVkJ5ZXJKY3RYbk5EVFR3Z3hyZzVMVms5UC9xQzJoVnFJV2RsZ2FsS3l1ckZWYndGOWhPT25CWXFCa2RVWHR5T3lpc1dXYTJHRmxVTEs2c3BPb3lyNW9YS0ZHaGxnWWxLeXVuQ3hRazN2eHZackdyTFVvS0ZsZGNha0o3cjFrN0dYTkRMRXdLRmw5VVJHOWMvRTkyTVlDb0dUMTVvVGluSXZHb1dJQkFDV3JONWxLTXk2K0Y3MENONVh2MkdWanlWT1liOGxZYkdNOVlDdXJMMmVVWlZ1TWl2V0JrdFdYQWtXckRCYVBRNi9BQjBwV1h3cVZUTGorZ1lvTkFDV3JMMlVWOHZNc3VZZXVXUHNZWElwb0JjeC83TEk0NTJRYnZJUnhTSjM5UGFmajc5R3grcHFQeU1mcWtzMlZyZGlxOUlLaTMzWVNRa2plMUhyNlZnQ1JpOVVsbXlYVDNEOVliZXgwcHlkRnlkZnQ5YTBDSWcrclN6WkhJOFcrNi9RbmNpN3FnVWN2bWhlclMvYVVQTVV5dkFMN084NmdkSzdsMStsYkRVUTZWcGRzdmh4Yi8yUXA5aTBuUDZscmNVZDlLNEpJeGVLU3RWMlZvMWlXVi9DMlFMR0VFTWMzRGZTdEN5SU5pMHMycVZ5R1lobHRiQlJWc1lTUW9xbTRtZEdFV0Z5eTlSaHFrNkZZaWxmZzQrUXc3SWVaRG90THRyMWtPNWV5dkFJUnhSSkNGamZTdDBKSVNDd3UyZHNrSzVibEZZZ3JscEFyaitNa3ZMbXd1R1FmbEdnbDB5dVlIdHF6V0lzaFpVeUZ4U1U3VFpxUnkxaUtmVU9LTDF6NE1IcTBKc0xpa3AwdnlVYW1ZdCtVMkh2N3RicSsxVUpFc0xoazkwZ3hrYVhZS0FsZWdZZXNudnJXQzJGamJjbkdTcGxKV0ZhTm50bitoa042TmN1ZlJPZkFKRmhic3Awa0dMaWMxY2ErTG4xTWx4QkM1aVhvV3plRWdiVWxPeUcwZlV5dlFLb2Y2Mk1uVHVDYUFtdEw5cHVRNWkxbmVRVnZ5dkFLUEp6cXBtL3RFQ3FXbGl3WGNvRTNVN0V5dlFJM1JZUDFyUjlDdzlLU2JlMEtZWnhXZnF5WGlnbjZWaENoWUduSlBodkN0dVdNNGRRb09XTUZRYmorRHdjT2pNYlNrdDBnYmhwTHNiSkd0L2hNUjgwYWpKVWwyMGhjZVgreC9OaHB5cndDRHgraVpvM0Z5cEo5VWRTd0ZTeXZZSnFLTnBZUVFtYWdaZzNGd3BLMUhSR3o2NjhhOUZ4UnI2dFVMQ0Z2bzJhTnhNS1M3U2RtRnF1TnRiK21XckdFVE5HM29rZ1FGcGJzTWhHcm1GN0JWQTBVUzF5UDZGdFRKQkRyU3JhclNDZnFyM0Q1c1I0cWh1bGJWeVFBNjBwMk1kdW1GUXcvVmhPdmdCQkNTRkVQZlN1TCtMR3NaUHV3Wjc3K1ppbjJWYTBVUzhqcHhycldGdkZqVmNuYXR6TXQranVzZnF5WDNjbjZWaGp4WWxYSlRtSWF4R3hqTmZNSzNQeUlPMitOd2FLU2JYeVpaYy9LbXZRYzlsY3IxRmFWeC9QNlZobnhZRTNKUnExaW1iT1NOWVB3aXJadExDR2tySSsrbFViY1dGT3lyN0NzWVNwV1V6L1dRMDV0Zld1TkFJQkZKVHVBcFQrV1Y4Qk5raEZ1VGpxTDBKMDFBQ3RLdGwwQnc1WlZETVVDUkRVYy92N1dVclYxRlRCWnoyb2piaXdvMllhWkRGTldNYndDTDlXSHpwSjd0RUlJaWxyclUyVWtBT3RKdHQ0aGhpVXNyeUFRZTQ4UHM5WFdPSkJOMGVHdk1CS001U1Ria0tWWXRsY1FURXkvbjByVVZ0b1BqblRwanRVazI0N2xGYXlXcUZnQWdMVFh6cWl0dHBlaTlQRFZGYUZpTWNuMlp4M25JYldOOVpEMGhGYit3WEljTmRBWlMwazJhZ3ByQmt1S0h4dE13dFB5enhLbGNtYzRhb3F3c1pKazA1YXpqRmhUUzBGeDFXZVVxYTA4SVlSa015TGFJMkhDT3BLMTNYdUJaWU1jUHphUUR1dlYxcDRRUXFaclcwOGtCSmFSYk5zVlRCTld5MjlqR3ovODJtTXRPYkEvV2FpMi9vUVVZMkI2WGJHSVpPdCt3djRTWDVNcXQ3U29SODhSUWdwZXNBTzAyYUgyQlJBeVB4dzFSbGhZUXJKMTM3bkNObUN0L0RaMnJIdkZnZU54QUlqL05GUmdyNUE0TEIwUjBYSTczRzlab2JLQWFJY21kb2pRN3ZHeEl0R0lkNDI3d0x2aXpDY0FzU0tkb3JpL1c3aC9PZFg1SEFEY1B6TmVwWVhMK3hPVkpSZ0lTbFpqa29jODFGdDA1UE55QmY5SytaUzVrUHlqU01zWFZkWHpNWkhiL3dJQTZQV3J5bFdFNU1hMTZncEFaR0JxeHlCcDhQOHVLVEJwUGtDNnRHN1ZLUGR6MG84cGVFb2dLeTNYVlBreCtLajNDQ0txNmMyMzM1Z1NJdEhCM1pTTEpSOEJuSGorZW5hdW1LR2V4U3lPSFBmUG8zMlh0Vk5pbzQ4YnIxK3ZLajhpQTFPMnNrblhUcDZYS2FGWHRGYjJXQUVBQU5pWGV2SnZpL05lcXIxWDNWdjRRN082STZFd2wyUmphblc5ODVVZi9wRzQwa3FoWWdIYXVCY1luT251djFTSHRVQk1HbzVPbXRUZkNDem4wNmp1ZnQzc1ZKZWZzMFZGeDhZbkpWZXRYck4yM2RRcU1sN2dodUhubFQ2MDVSdTNKSmF1ZVhsdndLVkc2MVVkT1BQdGZXcHlHMG5sazZ4aHJCK2hXTEVBdGxyVkxwOFBIdXZvdUZiTllvR1M1cWRVNURZU1hJbW1GK3RIcWxBc3VNNGVQczBibmR0N3Q1cmh1bmpMSHZ5Qmt0V0pEYVBPYVYza255K3B5VDArVmlzN2RBWWxxdzhiaDU5TmFaNWVUYjRmbHRTNFpRMVdydmQrVjJGUjJpQVZtUkVacUI0eE1JVDFxZFduWjVhVm5mNWNacGNwNWVWanBXWG52Mm5PdUYyZHRVdEhDc3RVZnhhSUpDd3AyUTIxNjI5ei8zYThqWnpLVnYvYm5Tdm5Xa2FDUGlwaXlwUTNWdjlwSUJLd29tUTNwTm9YZUgvZkl1UDhidHNYM2x5SFdSRVBQbEJoRnA2Z29BOFdsT3lHVkxqT0Y2L0lPZHJHeDEweFRuRGQxcXJJVjhZa3h1dElPS3JjcmdQVzdNamdHb093czNINE9lamppM2hoKy9obFhtL0tOZjhkRjBDREw5TUVPWk1TZmIvZTlpbTk4S3VQL2FWNGFMMU5seDFLc3hvSlNqYmNiQnB4RGlCZ3BqWlZNR3RiL1pOQ2dJSDlSRXVwWm5QUmIvejl3MTJLVFJ1TmtrV0ViQnA2SGdETytpK2M0ODhvdU9ZVkE4Q1NJY0xCaE9TR3ZsOExHSW9GK05mZ1JOYXRVSXg0VWVYa05TSUZpL215RzkxdGFnKy9MenNxaW9mWGwrVmZqNHBLOS91eWo3SGZ5R3ZLcmJ0R2h3OE1zWlprTjNxMkQ5aC84MTdaTEdmRTRFdHZMdWFJQVFBa24xVnMzdXZxUGd0RUVwYVM3Q2JmaHBkNlc5MVhaSTdMcm5BdndzM3RMcGJxYWNYMjdiYmNxaWdyWWlYSmJncm9hVldmbnVGdzVIeFdUMTV0azZZY0xuZWUrVVk4OEVEOEthVUdPaG9wK0FRUW1WaElzcHVDTnhXbU5HdFJUWDU5RTV1MHFCbXFMWHhPc1lrUHlUY0lrWXQxSkx0WlpCdXNQVEZSYkt3bXlpN3JHenVaRlY0eEpEL0plWXhKc09ZRWlCWFlPdVFzNjFiTkY3ZG1abTUrbnRIbWN0Zk1XTDM1cHdkbHJOOHUvRkt1Y1Y3NllGRHY4R09WVmxha2plMXkySjFrZjN2YTNmaDMzVHZKOW90MnVZSnBxUGhVTyt0dUFiTU9GcEhzNWpyTUdqVHlyUmc4UXVtTVJYM3MzYWw3cXEzMHQvSWJ3NHlRUEtYZ0kwRGtZUTNKYm1XM3NkeFgvbVFmQzEzV0FmNER2NVpMLzlidXA5VFFYeFI5Q0lnY0xDSFpMU0k5cjdvQndiaFBwVVpIUjBlN2RSc1ZIUjBkSFIyOXlIKzNUUHJrVkpUU3RkNjVVV28vRU4zQk5RWmhZTXN3WnM4TG9GbkFSRmFkN1E0QTEvL2VjQUUwL3RxOW9DQmdQVmRNejUxU24rajg5bVhaVmdJQVFMMkdKNVZsUkNSamdWWjJTMTJ4Q3R3c2lDcVRtd3dBajFBS21pcjl0YVFyTlhhTXVvL0RBTENWMVp4dFE4K0kzYjVZRWVQNzNiSGZBVUIrTEFLQVJmM3FBd0JBMjRBMUNETDI1QjdkcVhDSnl6VS9Lc3VIU01iMHJld1c5bGdCQUFERUgvQ24zUjdIY1p5bkM4YTUrY1YvdDdTRGpQZnlna0p6clJmSkJLY1NOR2JyTU5FMkZxRGtJOS9TVjhkSHBZUVFUM1JpajRSbWx2bFNMajhvNDdtL3lqRXlnUGI0UFJ0dVRON0tiZzI5N2lYbUs0ODM2NXhKR2NXeVRYZDZpanJaUXRhTDJhZk1ZR2Q5V1U4eEFmZy9waW5iaHA0T21hWjhVdGFUMVFESXhROW1lQUo2Yy9HMVl5OWNjb2NyY3IxYTlFSUtBTGkyVFRnbTY5SC9HU0RYV0RkVjhwVGxNd3pMTFpnMGRSaTViY01reFdiajBtNUxoOE4vZWJYUytza0IxVzFsZTJmL1V1cSsyMnJVdGZFWlM1ZGVEWmVWaUw2WTJUR1E0QlVJc1Uzd3JNTnkvdUViSE9NczE1SWdiRXdzMlcyaTQ3RXN4dnNQQ0Z1SFIzVkdJdWFWckRMRnBwOFBLT0p0YkYxRGc0TmNXckZ0V09pZUY0VkhBbyt6ZlZDSloxSFpRTWxxeFBiaGlucmVjVUg5L0ZvOXRURW1va0hKYXNPT29jckdpbEtDdlFrWlMyUXJMU2haVGRnK1ZPSEpBN3hOWGxhTnJLMG5LRmt0MkRGTTZYaDhZWEhRbjFucWJZbDRVTElhc0ZPaFZ3QUF4VnNEL3lyZHB0NllpQWNscTU0ZFEyUXFsa3Z0MEsyMWV3eldOU2Z3V0puMSs5ejM0K054dEN0eU1OKzQ3SFpoWUZoUmJMMS9PZTF3bG1kOG1nNEFFUDI5djZTTDF3QUExMnpLNm9PSE5yelpEbHVUQ01GMGtwV3IySVQzdk1lSG5oOXZBNERxUzczYkZQS0hjd0J4VXp6enQ0WHZoenJER2JFR1pwUHNkcG1MOTJMbStEZlNsRDNLQVVEU3k2ZGNoSkNTdjY0QmdQaTV2dHV1cFFyaUlTSG13MlNTM1NHempZVUpnV2ZJWE80S0FNQ2xEbnZwellsZDdBREF2UmE0TSt4TDYyMS9SWVNZUzdJNzVCNTlYQzBqS1AvdlBJZTE3ZVhBdTZVM2F2YmFJZ2owOGRXd2MxaU96QnczTmhiN0UrNEw4bDlqSitEQWdSRGNsYUNDWFVOejVXYnBGU3pDbEg4ZEJlQ3lmcStBdUZHcEFOd0lYdW9xbDFRWmlKZ0JFemtHc3IwQ0FHNCtyU0RIUUlBSmd2QUdoSkJTK1UrSWZMQ1ZWY3d1MlY0QkFQRFBvM2NSQUxoeUFlRDAxVGdBNFBXM09PeC9DVUhKS21YM0VObGVBUURKNVAzOTJDNEF1SkFKOEVlWEtnQXh2QkR6eGJqL0t3SXdpMk93VTlsM051K2M1Tk84Yyt0K0NIN0lPb3hZTEtUeXRiSnJpQmFsWEh4V2dWY0FBRnQzQkIzNi9UUHYzTHJ2UmdhNkFtUitoYUtISUtaQ2RTdHI4RC9wVGNVQnRtVHdwODVpbGdXYXVodW5iQ01CcTB1V2U3VEVaOHFaM29MYnpZNzVMVDEzTFNVL1lqbXNMbG13amZCTWdEazNkNmJjYnJQTk85cDFHRGVDUlFhV2x5eEE2dVBMTXM0YyttVTAvV2pRS2svdkxYRTRTbzlNcmVXOXd1RVVaU0NXbXhGVUhlQW9tajgwcWdzSmRaT2MrV2U5QjNOSEpVUlZYR1YyQStQVEduTzUyVVh1UDJLdnViVjU4cVdEeS8vQlE3MnRpaFZiV2E3Rit3ZUxuWTd6YSs2WGV3NDkxMmVkKzN5a2tvVnlnczBpWnNLQ2tvMSs4cUxuMmE2dDhzN1ppbnJXUDc1d2NZemx2aEVSQUxDaVpLTm5CRXdmbk80bEl5YzNPZkFJdXFKQllUTVJDU2ZXayt6alFSTmVKeHRLejlucFVwRGxXUmoreUpKWVRyS056d2MvL3l2Si9YL2JUenpUcDRmVFRzdUE0eWZoWm56TjRMOUhOcFdhczlHdHZBdWpjRFlNVUxKaEozb3c3MEx5N1ZLemRxN0t1OUJJc3RvakdlTUgxaU9jMm9JVlh3ODI0Vjg1K1dVWkpEL0NQM3lKQ0U3eWltcTJSMFBMckFwS05zd2tKL092ZEJiTTA3cnlGc0Q5NzBnWXc4SW9jNENTRFRzT0ovOFZPOHI1YWZKUEFCeTRJSmhtaU9JcmxNZzRiakZ5UWNtR21Zc1grVU5UWDMvSVQ1Ti9EbUJWWjBGejNPRjczajZhcTBjMU5jMmlvR1REVFA1ZW5tVEpvc1BVaE1KUWRMbkhXd1pmMkt3d2lHMWtnU01HNFdhdUsvanZvK3VrNWl6NlBIamxqT05qUTFiMElDcXgzRlJDM0xxZ3h6c2VrSjQxYVgxUTFubjRsV2hKTENkWmFITXE4UEZ6NWV4QWJIWXdJT2ZxR21FekVRa24xcE1zWEh2UzkzRG5kMG15c2paYzRsMmdVRDRiNHlCYUZBdEtGaHJNTFhJL08rTmh1YnU4WTRZdE8rY2tqcnlmKzJJVURnK1dXNE5weVYwSlhJdUJuV3VYWmE1ZXJTREVGcGRhTy9icTZYenRqYklxNk5IckFUbDZGR3pnQ3AyUWx2ZnNXWTJ0c1Rnb1diMVFKbGhFQUk3TEloWURXMWtGY0YxMlNrMXFiOXc4alR0MUpNdkFTRVhKN1d0ekJRZHdlWUpobUdERWdCdS9VR0xLK1BzM1hTV0VrS3ZiSHBhN3QxWXJFb2QrbTFudU9MdndvVnFoMHlKaHdYakpjdmVYL0M0dFplY3RUdTlUWFR1NnFYMnVFcUpHN1BjR244bDloaDdxQXdrM2hrdVd1NitFL0NBcFpiK2dYVi81QTFVK1dBSHgvd25Zb3V0YVhqZDBEa1I3akpZczkwQUpJZDlLU2RtSnQwK3hvSWU2SjhzbitxdmdhUFpiYTRiT2cyaU93WkxsN3I5S0NKa2pJV1hpVnY2VGR3dFd4SWFacDV3OEM3N0YzcllCR0N0Wjd0NnJoQkF5UzBMUzhZTHpPbHlUMVR4YVBrM1A4eTJvaUlUb0hUZ3VLd2Z1M2xueEFKS21CZXlQQ3ViQ3VmSHgycHNrd21NQ1A4RCtkQVJFc2tmSnlvQzc3N000QUpBazJmVFd3bXR0bXdtdmhZK0VJY0pyMTBYQXRuSjBicVREamZ0VWVqUFpsaktrRkQweVZYZ1JBRTRmVm5OK1ErSUkrckxFNnBRRFNHTDdIbEh4SkhPQWtwVU1OM1pXbk9kWENkOU4xUGhacjlEVFh1bS9XYUZOQUFDUFNkbE83b0ZycStKQkpnRWxLeFh1M3MvaWZMK0hUazVWTlNOZkFqOHNqQ3dLbmZUL0lJNzJORlZQTWdjb1dZbHc5ODcwZXdVUzNocDFUdi9yWGRTMHVhcldBTS9aUTNkWHVyOU51VmlvNWtubUFDVXJEZTZlendLRUlhSGZmYmc4Um5ETk5YT0hoaVo1cWRoQ3YzNkZZZ0ZZMzVYRkVRTnBjR08vREd6S0tGcmdjK0NrOEZxR3JxRXpEcDhSWGl0ZnJhY0Y0UUVsS3dWdTNPZHhnWC9Ic1JMNktmMUdlRzMrRmEwTWtrTHhFdUcxWFJodlJuK01tUDNpeGhZSGw3RlVRcWFhSi9oUHp0WjVXVXE3eTN3TG5QZm9hd0VDWUloa3VYdXU4c3FRRlBEbERsNnUwcEd5bjZ5UzEvbHp4bjlJOEdnUXJkRmZzb0kybGhCSm14SzRTYVdCZWNxZTFIMDNjOEtpWUxNUEt6dmRIRkdIN3BMbHhna1VTNlI1aE55b1BIK1cwM2NiMEcxSStUbHdMZGRPWGVlTEVTOTZTNWE3UjZoWVF1bUxVMm40MFNrWElZUzR6bnpTV0c1Rk5TSG1pUnl2YzNEcGd3Z0prSVNoTjhUaDdwcE5HYWd2cWlheEVLNUc5NjUxNGZUdXJlZlZyQ0pRUStxb0llbEozTlZUeTc0N2JwUUpsUjE5VzFtS0gwc0lJV1ZXbXZlMDFlelNMUzJDcG93aXFDcGhnTHY3YytvZXYrZ2tCWkdLak1KMTRZTFJKbWdLVGlXSXdOMzFCWDB2TnhjaGJxRWx3VmFXRFhmM2w2ejFzWG9HQmVEaTdlV2xPajdQN0tCa21YRDNmTTVjMFUxZnFzM0czcVJWemZLOGZRWHllMEQxaHZkckhGOTRmUEVTakgxb1ZYVHJmbkYzRmJFTGVVYVd6ZlpCcTY4UVFoeW5QcFc3anlYbUNVOEljTmV4TVJoZzFxTG9KVm51THVwWWdZZjM1SmhjOVJ0ZkFJd3pkOHJxUENSODdaOEtLSitHMzRqV1JDZkpjbmVMdExHRXpKTmhjZkt5Z0l3bEQ4Z1lDWS82YitBaUFjZlRsaHRFUndEMGtxeW9WMEFrcm92eEZQVlJVTTVMWGFWbjdWOFduTFdkOUt5SWVkQkZzdHdZTWErQUVKSWgzZUF1dkFWZHl5U0hFckN2NFQzMUsyeG1BVWNNcUhCajVvU0lFbGduVHZLdzB3VGVzTU9OMSt6akp5bHpBa0MwUU1xdHV2TXVES2dSV1pNQ3lrREpDdUh1L0RKVVhNdTRPcGtTQzR1L2lYY2g1bWZCM29TOEIvS2d6YXpxL01zSi9ERzJtczFSc2hZay9JNEJOMGJjanlXRUVIS2pWSHNiRjBxdzZTNkE1eVVrYzQxUjkrNGlBMnhsK1hDanZwSVFPN2laMUgxL0NZSjlZcGNFdTF4UHJBRDRxYWRnbTAzZGhnTGJKRDQwb2tISjh1REd6SllTN2JxRjFQSkt5L212ZU5tOS9Ea3dsd3NnYTRSZ3hIYnMxN3dMSkZmcVV5TVpsR3d3M09ndkpaMXEwREowRWpmbnpqYmhYVGxLUCtyREpZaE50NmNzTnZoQy9qR3BUNDFrY0NWWEVOeklPZElPbVcwbHRjU2lqYndMenIra1pqMjBoM2ZoNy9OU3N5SW1JcnpkcjlFaHhtTjlsRWcrWWFaUGVYRE9UUktDSUhnWVZSR1VzNWcvNklWWWduQktWdEpZZ1llT1VnMk8raTRvWDhrdDB1dHFueHVZMHprVmUxK1dKSXlTNVVaSkdaRHlJRDJJUmVyT2dHeU9GK1hvcnNydi9rVUd6azlpUTJkQVRFZ1lKVHRTZWhzcmF5MVgvYjk5d2l0NlZsNS9OK0gxUzU2Y3B4K0xnSmp4bFpQd1NYYTBITVVTeVowb0FFaVlmTGlDRU9JcVh0eEQ3bmM3bHo1dHcrbUNuSlhQMVplWk1YS3huSHVrZGxQNGlYVDZRUWZjeUsra2pSVjRPRi9YS1NOMVVxY3VOU3F5TjJWNjlwTFg3dGdxT21kM0Jxc0VlMnFLODZKdkIwTjBZcFNqU003REVIT2hzcFU5VGpsMUF3Q0FrK1VWRUVLY3lrT3YxUDNQR1JjaHBQaVBhNmtOUnNwam15NVdsT1g4ZWl1T21VY0c2aVI3bkRHZUtsdXhoQ2llNys5MjNGdEUwV1RLNXBocmRuczgzL0s1Vm9xV2dEQlJKZGtUakRZVzVJd1ZlSmloc0FLdGMvMWxsSTBYM081MnhuOTdtZDdITVNMaFFJMWtqN2RoRkRwU3ZtSUpJOXg3S0dKV0JoWnlnYjlXb2RxK3dOc3pjSEl5QWxBaFdXWWJPMXkyVjBBSUtWSFdCTjRlUEtQMU1jK2RmUzdvYm1FRW5IbUVLSmRzQmt1eDh2MVlRb2lNSmJOQnpBNHVKRE9GOHg1MnhIRWNGN3N2K1BZMFpTOHBvcWs4dmRJVGd3OVJyM01qdnBhOFhpQ0l2a3FPeW9qcUhQeDMycytsQUJtdlhvSGEwK29BUUF5dmU5alhKdUhzVWNUY0tHMWxNeGgrTERkTWdSOUxDSkcxeTlaUDRsRktTYTR4ZkkvQXl4R2M4aEpRV1ZyWnpJSDBOaFlHL2s5Wkd3dlFMVVhCQVRQODZGcmtnaE1nYnh2QXlvUFZBU0M2ZXJCdlN6QW1ySUJLSXRrTWhsY0EwRk9wWWlHdTl4L3lNMVdjYUIvMGQzNzN5d0FscFFDN3U4VUNRTDFOS1VHMzg5QXZFRkE1UmxFeUJ4OWczZHFtdk5SK1NqSXREbTQzMTJZWEZCU1VBZ0JjTFNnb0tEaDZPRGoxU3BTczlWSGl5MmF5eGdvQW9MNURRWUZ1amlsWm9GRTF5Smt0Njh1N1BUSG8zS01DUEpBakFsQWdXVmJQeTQzZ1JEbkpPRVgrRTlnTUNvd2U4NGtOQUdJSHpOcThhOG5URFFBQUVqY0czSFc5YkxsVlM0Z1ErWkk5S1I3SzZsdkZraVV2S0trQTk2aFBzNjc1aVFEUVpyVzdvVC8vaEIwQVd2cFdJQkRYOTlMMzNDRG1SYlprUXlnV0ppaVhMSDhub2pTNG0zZTZRM0NlZWlZT0FEcmxlSXR6dmhNRkFNMVhlQUowRnIwdFpYYzZZbnJrU3Zaa3FEblAxdnhUTTZWVG9mQzB3dmgrSHk1WTh0Vjl0UUVBcXV3S0tPOHVBSURZWWI5bEZWLys1NVBPNkJWRUJqSWxHNnFOQmJEbGhTNkZ4UlBLNitIVjQrVEEvNWdEN2xYbXRxUWExWmd4N3hHcklVK3lKOXVITG5HZWNzbHVVRjJkNkEyQjVUbjRNZWNRSVpFOUxwczFlSC9vUkN1Vmw5OUQ5U0JVVXRCb1J0UTFhc3VyQkVTMFpMUHVrS0JZV0tWOHVEN3FUc1ZaUFNRRVR6L1dWRnRlSlNDU0paczE2QjhweVRJRmtRaWxNMDd0KzdzYWZCZ3VucFFVbWdpV2JLWVVyd0FBWUxueVo2VDNVcDRYQUFDS2d2NWZYTHRVRmxjWmlGekpaZzhXQkhobjhLZnloM0FQS2M4TEFBQVZQd2F1T1RpbWNIY09ZbWFramhoSUdTdndFRitnZk15Z1NPMXB0dFgyK3d1cnVGZGxZWldDU0YxOG1EbEVvbGNBQUNVclJ5aCtUdUo5SHlyT0N3QUFCZU4vOTRidmRzMzhYa1ZCTHc1V2xtLzhRUlVQUlNRZ3JaWE42aUNuekhIS1cxbHlUTkUvZlZSTWpNOGw2N1RKUFVPYi82OFk3eVdiZkg4dDVwd3krd3NWcnhjMmlzaHNaU1gzdk53czVZZkxsa0h6TzM2WG5TZmw3aEhwY1Bqbkh3c0JBR0RQTGJjUGJSZDdldlVQR1c2M2xtczV1bk44OXJMbHhiTEtIS1R3OFBKZDhoNkR5RWRLSzVzcE9maXJoK1hLV2loQ2lKSXRZSzEzdUFnaHhMWEpkd2d6WjR2eXRhc3hMMThtaEJEblJua2J3cGNxTkgrcWJQTVJtVWlRYkpaY3hjTERDajl2UWdoeHlSM25xbmZZbTNVUHBXVzB2ZU05YWZtRTVDTkVBS0NKMHBYcU44aTBIcEZOYU1sbXl2SmpBUUFndFZUaEIwNElJWXZsUFl2NzFKLzFYZUh0bS95bS9DN0RhNXV1MFBoTHVQd203SVNVckd5dkFBRGdUNFdmT0NHRU9PVXRERWdOQ0xxVlhjTXJudUo3QUFBZ0FFbEVRVlJ1dDl2dEhBQ0F6VzYzMiszMlgveDNTNlRYSkY1aDU0c3NrdmVlekVERWRiK3loKzVWa092Ny9zcWZhSHRWMXZCUzh3QnZJRzFWR1FEQW1wZktvZkYvNndBQWNBRWViRnd2eVZXNVcySG5TODNNSHlLUkVLMXNWaWRGcGFaY1Z0aEtFVUtJczRlc0NnaVhsSmMwb3g4SU9sVnFtYlo5bE55U1RHOGF1bkN6RVdHdGJNNFEvbGxaMHJpeWNKenloOXJldkVWR2hJeDhoejhDalBPRUV3QmdVeDdBNGtIdVZWeE5BOGJiTGtvdHM3LzBxYjVnRHB4VW1CR1JqbWdybTlVNWRBRjBibExZVEJGQ0NIRU5sUEdrcElCZDRYdXF4TWJHeHNaeUFBQlJzYkd4c2JGeGkveDN5eVE3eVd1Vld2Nm03QmVGeUVaTXNsbGRGQmNiZFZ5azNKQWNpQW45QkI5UCtqd0RCMlZSVFgvL3lYYkxwWmJhUjdIaDNXVFlqU2hFUkxMWnl2eFlOeThwL3RnSkllUXBHVStLLzhXaldkZi9LSk51OXBsZVJaK1MrbTNQclZKcWRrYUUrWVhtaEMzWmJNVmVBUUJBbXBxaFdWSWdPSmxlaE9RUEN3a2g1UExiMU9uOWhQZXVFa0tJYTUva1R0M05pczErWDRiVmlGS1lrbFhoRlFBQXdLK0tQM2hDQ0pHMUJzdlcrdG5aWHo2ZHp0ajBiZXYrMGNhZEN4NnFJcm0wcllxdHhrTng5WUFsMlJ5VmlsWFJWaEZDaUd1QXZLZUp4eWpnYkRKaUdOeXAyT2pEbEFOeEVNMWhTRmFkVndBQVlOdFBMMWtpV2FGT1BJcHFPWEJRTzlrUmpybWFYWHMyRmwyS21IQlNzYzFUNVZxREtJRXUyV3dOZGxOUFZQelJFMElJbVNOZWVzdmZDd201dWxwbUY3M21CM2tWcnZ5Rll2M0tWeFZiN0VpWFp3eWlES3BrYzdUWS81OTBWdkdIVHdnaHJtRmloWGZJY3FmS2wzRzJQVUNkYmU1YzUyOW1KbWxlck5qaU5YSk1RUlJEazZ4cVA5Yk5OTVVmUGlHRWtQTWlFYnJpZkRFNGo4c0lWUkRsQzJSenNnNGppVzJaY29QdmsvVjJFS1ZRSkt1UllxR09zc09VZkt4aGU2cTMrWmF6dWg1TkZCQUZBQkFydk43Rkg0cjJhVWJCOXlzMzk0S3NZNmJOUXdTTUplY08xV2ozLzVtNWsxVGw3L1BHdjFpM3J2UDF6Ym5wendsR0E5WlBMSVcyYzFJRnVSTDhpMWx2b3A4LzJrREZac252aTVUblJXUWdhR1Z6dW1wV2RoTlYwd21FT0VlelN2NUFORjlKTTlZaFNqN1dVVWNOb2xZb045WmgxWk1iTGQvSzVnN2RxVmxaSitjOXFDcS9iYzV4Um9PZjQvLzFlQ2EvbFNXYnNnRit2RWE0NUxWR1IxL1NDOVRBWWMvSjZzd0ZzNHA1NGdtaUxieFdWc00yRmdDYXEyeG1TWFlhdmVDMnZuNTl4VzJjQUhjYTRmVm1WN3k1WE1JanhRR2dkem5kQ2tuY29lV0xRMFFJbHF5MmlnWDRVb1VHQ0NHRTdLSFBLTmcrOFM1MldTUmowWmZ0STIrdTNiVHAyM3E1S2d3OVlQbnZWOHNRSk5sY3JlT3hOcjdLK29pbHNwcCt3RUh5RDA1Q0NIR3RabzFXMFhQOTV0YnNVZG9PelBoTmF1eDhXTW5yUVpRUUtObGNqZHRZQUppaFJnYUVFRUtXME1ONHhJNWRlZWJjaGtreVk3UEVQN0s3NEhMbWgvVW90Mndxb284VGtvTTdhM1VqUUxLNVlWaWduSnF2VnJMa2QwYm9tYWo0UkFWZnh0R3BEZUpwYTJTNHQxVVorYXg4U3hDRitDVWJEc1VDL0Z1dFlnbFpva2NMOXB6eWczUUlJV2VTZFRBUmNlT1RiQmk4QWdDQWhBejFtbDB0ZWEycllpWTdRNXNod3ZOaE54RHg0WlZzbUJRTE1FYTlaTWx1eGxpWFpqeWhUckY1Mk1qcWlFZXllV0ZiVUc5VHZKTXFnT3lBWlE5eFZSSzFPSFF1T2lYWk93UEdUVkhsRlJBeVdRTjdFS200SlhzcWpGdERPNVJwb05raTcxazFWVjdlbDMvOHM4WnFqYktQWFhmdTFJTHJPUUFBK3ljcWpUdUdaK1BxeVMyRUVKSVgxczNNNzJzZ1dlS2FFUU1BVUgwZElVUlJhTHNnN0I4NUNDR2s2RjRBcUxwRXJXM01wUkJJT0xpRmhOTXJBQUNBbEV5MW1pQ0VFTEtsT1FCODdQbGprN3FHYlpSbjhlS0Y1dERtb0ZyRE5sajdUQmZMSGUxNzh6STRPM3hiZUo4eGFLRW1yNlh3bVRrMUQzcFdkTHUrRUlsV2xQOTFBU1RjVDVzdjhNQU45UjdDK0VybXAycTdUczVlVzFXV2dKZ1BWUk5MQVN3YkpLMW5QdzNnRVdrOUtoV0g1M2dKc1VrTnNTU3BwOVVyZ3hCQ2lIK3BsVXVFMHZzQStoZUtwZERJSEVJSXVTQmNTbTR0TE9jWTZNT0luelYrTVNWRDh0ZzN5MDY2Z0dzb3N2eUF2RHBHTTBzbWZxRlpVWWlaK0ViRGRvMFFRbWFwNi9KMDBzQWhjTE1XdzIxRUtGVlBhS1VSUWdoeC9xaTJ6M1NYbXRYY0FWeHRyY25yUVV6STlScHB4TTNXTzJYSGlRbWt4a3ZxWWl6NCtiZFc3d2N4SCtxaWR3ckllMTF4alBldXM1V0gxK0N4Q2ZjaVJEQjJOZWZYMFhDdWUwUkJaejN0bVQzYW1WRFlVdnYzaEppSDJ0bmFhY1ZEeFpwbjI4b1lpdURhUHI5QjNaSXRIaEd4ZXdZSHVkajBYS1g4YUZzMnVXdldiVHJzREpuTTFyelhEVGMxMVBiUlA0K1JjUXlKYVVISmlqRHhzekM5bml0Nzl1NC9mUHdNUTBBMW03WnUxNmxMTmMyZm5kRzFRT3NpalFBbEt3TDM2YU5oTEowVVorZWVQbmV4b0xDNHROd0Z0dWk0aE9TcTFWUHJwRFdzRXA1bEt5VTM3QWhMdVhxRGtoVWo1azkybEV6TE1lRkxveTNRQnBTc0tEWFdSOHpRKzZ4SEk4R1JCWlJzS0pwdGtCVXJ3N3lzN1ZkbXRBa2FnWklOUWJlL1U0dzJRUXVPOXpwbnRBbGFZZTBGNmpxd2ZYU3AwU1pvd01YQkVhTll3SFU5b1RoeGRLamxYMUxKNE1nWUxBQUFsS3dFRHVZTXN2aDNrZU9lcFVhYm9DRW8yZERzT1RQQTBwcDFQVExQYUJPMEJDVXJnWjFuKzF0WXMrVFptVWFib0Nrb1dTbnN6QjFvV2MyU2YzOWd0QW1JRWR5cE5pUzlVYmd3WWx4bFpXQ2gwZUpUaFBNcG8xOGNZaGc5dGRyTG9pY1ZEeG45MnJRSFo3OGswM0p4QzZOTmtFdkp1RitOTmtGN1VMTFNTZjM1QnFOTmtNZkZFV3VOTmlFTTRJaUJkSXAvck5mWmFCdmtjUHkyQ0pyejhvT1NsWUZqMGFXYnJQUEMxdmJQTXRvRXhBVGNlTXJvSHBWRVhKK0ZZK01hWWtIcXJ6WmFqSks0K2xERTlsS3M4ejFuRWdxL2g1N21mMm5IQnY1aHRBbUlpZWg3MHVnMk5CVHo2U2ZwSXBXVzZ0OXFHZkJWY3k0L0VMRk9BYUlVYm5pZTBicGtzNmFaMGE4SE1TTTF2OVkwOHBCMkZENkprZUlRT3JjZU1scWROSlpoRTRzd2lYL0pkSXU3OHU2MjdMSmVSQmNhenplVmQxRDZBUTRVSUtIb3RjRm9uZnB3TFdwbDlOdEFySUJ0MkQ2anRlcG04NDFHdndyRUt0akhtcUFmdG1jb09yR0lkS0x2TnJpbDNUWFMvRlBJaUxtSUdyek9zUGt3NTFycjd2NUZESVRyTWMrUVBiaWw4M3NZWFhYRXN0Ui9KVk52d2VhODFzRG9XaU9XSm5yZ2J6bzJ0V1ZMaHNZWVhXUEUrcVJPM3V6UVE2L08zYy9WTjdxdUJvSEwxRFNuK2NpUm5jTGJnM2NkK3VYbkEyRjlncGxCeVlhRHBvTUc5d3JYMXF1SzdRc1hINDZRWXc4VWdaSU5FMVZ2Nm5kckk2MUhuOGlwVmN2K2pweDQzTXBBeVlZUHJsbmZHM28zMUVxMjVQU0dkV3NPdVRRcXpjS2daTU5Ndys0OXVuVk1VZm1haS9idjJMSTFveko3QXdHZ1pIWEEzcnhqaDNadEdpb1prcXJJTzdoLy83NGo1WnJiWkYxUXNycVIyQ1M5V2RQR2pkSVNwQXduT0V0eXNyTk9aQnpMS0F5N1hWWURKYXMzWFBYYWRWSlRhOVNvV2pVNU9TRWhMamJhRGdCQW5HWGxaY1hGeFpjdlg4cS9jUDdjNlhNRjZMVXlRTWthRHNmWmlBdjlWQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCSklKaDVMU2xhb09HZFd0V1RZeUpjcFlYWDc1NE9pZTdBQVBFYVl3T2tvMUpsWlRNNWF3b0xiSHk1NXZjclZmWERuVjVwM3BVbk4yL1kvT1dBbU1zaWt4MGtHeXZEZExTRVVmRjFkTlp4LzdaZWJnc3ZBYUZnL3BEQi9kS1pOMHMzYnBvd1VrOXJVSFUwVXZ1TVd3WEZ6L1cwR2lqWlJFemZHbFppRHBWckxvelhLY3FJWm9qVzdLRWtQSlY5OFFiYmJkVUVwL0lrRlNucktlWXpUQmlMcFJJbGhDUzgxeVMwWlpMd1Q0K1czS1ZzdThMNzZtTGlFWW9sQ3doT2ZlYS94UHV1azFXbGRhMU50cGdSQUtLSlV2SWlzWkdHeTlPekxSUVBpeWZva2UxUG5FUjBSNFZraVVYaGhodHZSaHA2eFJVNlpzRW84MUdRcUZHc3FUaWVmTk9kblRMVlZTbGRUV01OaHdKZ1NySkV0Y2JadFhzN1ZjVVZtbTN0TGtWeEREVVNaYTRYalM2QW5RR2xTaXUwdllxUmh1UGlLSlNzc1F4MnVnYTBMajVxb29xL1JGdHRQbUlHR29sU3k2bEcxMEZJZTN6VlZWcHV0SDJJMktvbGl4Wlp6ZTZEbnhxSEZOWEkwYy9vMnRnWFN3eFN0ajdYcU10NEdHYjAxeGRBVkZmb0R0cll0UzNzaVRIWkxQemo2bXYwZ3lqNjJCWlRMVDRVSXpKbjZvdlF6dWE3a2tXdTExd0tMZVFTNm5mc3ByWXl5M3JlRVJqcXhETllMYXlMaDhoMjZTRFpscHR3QzBTc2ZUQ2U5MDh3d0gyVGxQRlZzek1NN1lTaUFnc3lSNUw4OUdvM2ExUHpMOGdwdGxlUnRjaWdBSHNmN0h5dDROODFMaG5DdGxKVmJyRGxSWURIWVBEdkZWTjhhTmVhY1lzNUtPbjVUM1UzcXhUaTdUcUJSUEYwbkJKTFpvM3JGTTlPUzZLbEJVWG5NdkpPSExCSmFYb0hSMVp0ODZNNHRlMXpVS21Najk0VHNMRFZNSWxObXZXb0U3MUt2SFJuTE9zc09CY2JzYlJpMUxxeUNlcWRzc21hYWxWRTJNNFowbmh4ZE5aeDA1YzFkeFdxWmhJc2dDSkh6L0FLdVJ3RzkrMnNJUzIxQlRGQjMyL3h2WWZlWE1kQUlDakxabFcxYnVsNzdYTlk0S3Z1WEszci8zcldLaVBkUFNQckR1bmJoTDZwL1hYTjJHa1B0dTQxUDFMSjliRXdoVmhjZEdkNkVuM0NUY2ZjV20zM05DZFgwVWd1VHMzckRqZ1pEeVJocjNUTGIyNzFPWUpwZlRRcGxXckxza294Vkt3SElORHdxUzJXYXl2VVVkZFg2S085QlJaM3Z0VnB1UjVyN0Y2T0RVbmIzUXdIdVQ2NXlYeFhUeTJuU3diaTYraHBlL0VuTmdkNEVteGtKVWdTemdFZVFNOTVRV0I2bXMvczkzSktwZGt2TnRXWWx2RmRma1AweUcvdW1oVWhHNE9raUZaaVB1SDlYNEcrTkswWTd4QTkrdXozWGZHZjQwdTJmUXZpcGdmSmlHRWxQM1lXYVE2TnpMelBVYlA4Q29yL1plZUJHTllDWnpDYWI4cDlKUnplY2xhZlIxaUJZUno1VzBTUkJzMVlwTjQxemp2eFlnY1g1WWpXUmpGZWpuUCtwSzBwQ2R3MUFZQXFMNGc4QnBOc25Wbmw0dC9tb1FReHp4MlMvc3pLOU1teHJSTTRobEdocE9lWVpEa1M2d2lIeElVdG95ZU1IaFpjWTNQUWxlUmtGVU1IOE1IZDl2dTBLV2NtMlM2cVVuMXlKSnNMR3ZjNEdOZmttYU1GT2tBME9SUTBDV2haRzBUQzBKL0RJU1F5NnpkQTZtczVzdDFBK3NGdk1aNmlMZTMrUjByd1hmOG9tTG8xaGNHTFJzZmNFcFNGVW41NjN4SE40amFQNFFlZkNTRWtPM3R4RXF4SkxJa0M0c1pxZjE5bnNhTUZOMEFHbVVHWHhKSXRvYllrR293QzZwUzdYdVVsWDRkOHdVMFozMzBkM2tTREdDVm1jMy92N21HbnU3WGdDVGNxMndmbHMvYU9reWo0ZGJUVWtzcGZwQmRpaldSSjlsM0dhbVgrVkkwWktTNENWTDI4Uzd4SmR2NnVOU1BnUkR5VDJPYWZhdFl5ZStpcFhhem41SEZ1NTRybHVVNnVQZ2pIay9UMDQzenA3RE5sRkZGY293MXJNZzlWU0dqbUEvMFhLcGl1bVV4K1l6ci9pNHhheEFxa2Z1a3ZYalozZGV6QjM2RnRGM2JRbml4Sm10TzQvSkNka21ybkhTOFE3Wmx2ekV5Y3IxNUYvaC91Nm40dy8vNzlFZlpkZ2hwL25jRCtvUGZtaUhIUlgxbXRwbG1KOVVqcjVYOU55UDFDbCtLZW93VW8rNFFmQUVIdDdLZDVhNXhQWmttTUkvWnUvOUI1QTNFMTZDVDRrM1FtMVhxdDhFRjJlbGYxdjUzQTNmTHJDTFpSVnR4eEwwbHQ1aFB6THJkU1JIYU9BYitScXdPSThVREJ3V1hnaVRiVUdLdkpJQWRncytUT1hCOHY1cFhaR2ZGbXprWi9DM0lHQ3laNUV1UXhoeDhZUElGeFo3SjBqcGVnY2ljblRRMzhpVEw2aC9OOWFWZ1NYYTU4RktnWk9PMnkvNFlDSm5EczQ0VC9sdTRjVFZWOVk3ZVpoVHJEQzUyUEQyUi84dGd2dndxT204V1dOTlh5aGdaajRyclZiMEFjNkhOSUpkLzYwa3FJd1dsWlFpVTdBejVId01ocnVIQjV0VmtkVXBPcS90aTdNUnExb0lYdDM5RlRiUFZkNys5OU1FQ1A3djVYbXNONlNHYkFzalFLeDZWMmJwZlExaWIvRU1IdXhRWHpmVlBLTEFHdVA4R3orNTBZSFZLOXFpTGpMdjNBT05HMEdBdjE1T2Fab0h2dDhlVmZKeWRCdkV1ZkVEdmtvV2d5VFFsdVJSZ01zbkd2OGE2YzVCMVF4cFJNOWsxZFJZN21QZnFCMjlKWnc1SnFEU1AyWHU3SWZBZnNUWmxDQVBBNytiSGpxRVhzdmU5Q1hlTmUvYXJMUHBkbUJUODV3M2o2TWtBQU1xdXN2ODFKN1BYSUZrTk9jdGl2bUY5N1pUNkIvWlpqZ0VGdjJOQTl3SUpJVHNudG9nQ1c0Tzdsak8rbW92cUJScjRPYXNZV1VOTEZGb3dsdWs0Nmdja0drcE40djl2dVkxNi81SjNOcGNiY0ppYW9EeG9ZTVMybVZIRnNybjlhd0RFZFo2U3cwZ2dObWhpTGFSTHRzcVBqS1NFYlBPblVpTFo2SlAwQkNVVGZhM1lJTVlRMkR1QkZxNWdQV21nMnJmRUVzcklnRFR2VVZPODVicy9qWHIvVG44QktldXBLWUtXZkE1a0dMTEh0MVkwZ2ZHUDZ6RGg1bjFsU0pWczhpU1JHRmV2KzlNcGtTeGp1TEo4UU1EemU5Q0RhVndJN0ZZY1pUMUpiTzJYSkI1bkZQeFJRSm9OMUJUZGZmZXBxeGdMQWhjUzFLT3VVWmdka0lKYlE3ZGpkK0Q4OWFmME5QOVYreExNQWt1eUoxcjVhTnRqK0pRbHhZeDBoQkRpQ3BCRVRaRjBQSHlTM1VpL0grdzVNeGIyQmJoMmpGVXBoTGdVOVZnQ3FjY0krN25EbnlTZXVtWXl4KytrNzZIZHp3cnFsbEpIMDdZR0pPaEFIM1FvRG5LajQ0NVFFMTIwVE9UMUVHaXdLWnpzQ25qdk5hUm44MHEyRmYxMlhuRGN6Q1Q2QUp0L2RRTlVZUzBNcjFDL2JKUXlyRXhJa0JOL0xUWEJKLzRpcUU1bVJkQk9ubXZPVXRnYmtPQUR1aGxCN2hIQS9mUlV2Q0ZCeTZLRlpBTVhqaXFRN0t2MDIvemhDZnJVVm9sLzNLMEI2MEZsNm9Oc01WUkFidk9sZUlwNlAyQW00Q3cxd2Q2Z0JwS2o0Yjl0ejZLV1VjRmJQNXhJWHlRdldDd1pEa3cyeU1VZ1MrNE9hdGVGWTd1M2JkdDEzUE1uSTdEeVQ3eS8vNkttaXJ2Ujkyc0tOUUVBT0N2a1dFZGxZVEg5dW44czlqcmE3WXZyL2IvVGplaXc3NHV1ZmxGU3BlWlAzSVcrdG4xcmR2RGZ4UnVweVc2TmtOVXhHclN5OXdlV0Y2cVZQVGYzL282SlFmK0tkZWdEV0tmNEw3Z0pQZDFNWDRKdXJHZGUxdUE5L1VJdjJyZm14WlpKdXgyNGNPWVFMUUVoaExpT2ZuQ3J0SUE3TDlNTGVKMmZqckZ1SnRSR0I0dWdYckpyZzdRbEx0bURkd3UzMERHV1h5M2xwNHVqZjkzdDhTVzRqdlZVTFk1UEhFNHZPdC9iNDY5UC9ZY2FGbEFDbzdQdjV1cmExL3RWQzJuRVNucm1ZZngwakhGdXh2WTNUYkhDeHAwckQwdmV3K3g2NXpYSzBZelViMVNBRS93THBaZW9UVkY2Y3FIbk4rYWNzQmIrMWJMODZyVEwxZHA0L21XNjBaNWVITER3RUU3MEVTaysvb1lid0hGdy9icDFaMFFTeFhhaFh4ZThLa1loMUQzR0dtTUJ5Ym9tSHBXYzlKRXZhWmNabjhNRndaaE1FVFZkZlBQZDN2SlpEeGJkUkNXUnF3dnBVUng2ZWlSN0xlM21pa0NUZDRYYTBXTHYwR0dTYzkreXhkdFliVUJUK3U0aDF4WCtxMktjMlJwaWpiMVZVT3NZdk1RclQ4UXhlSXRxQUZ5a3AzYVU4V0ZNMnZxbTdqdXpIbHltaFdadm9aZnQ3WVpUdC9EY0YxaEFhL2FiQ1NiM3Z6M29YeGdqR1JuSytXK0tzYUx0WW1UMHYxUWU3L0VXLytXeUpmc1BQUktFakxrSE9pOTRTMHBucFhDRTloSkRFME9mL1R2aGZnRXh0QW5sc3BwQkpmRDN2ckZ4SFhpS1p2TC9TUzZBQWIyVjFoU3pEM0k1L3oxRitySytxZlN2cTBacWpmQXRUV0VPRE5pMGlFQlIvaXYxY2tQM050Z1dOSWx0dUJEMDV5ZVVKSFM0TmpOT3ZpdmNYNnZkcXdvZkpwZnN4ZUh2U2xkc0xtUEhZRDM2WmVuNG1yS2lVa1lLcnBiYVp3QUF6S2ZXMWQ0VkFBQzYwdTR0Q1A1ejdqRVpUNnZ5L05GWCtNZm1hZmVxd29lNUpidTB5eUlacVg5ampPZXJmbzIrR1lUU0s2d2txajlyQUlEdHg2bVhld0FBWGJJdTN1c3BueWduUGh3a3Y3YUhOOGFnM2FzS0gyYVc3SWt4ZDJTSFR1V0hQbm1sd1d2MHRVWE9VNndramRVK0F3REFTWStweUpic0x2NzdXZjJLdkNlMitQdmxvQTZUZHE4cWZKaFhza2NmYWZlVHJGQ29qdTJNRzZvUFd2Q1BCR2F5a21nVDMvZ0hhb1U3eHdCQVBDMk0wQUxCbGVreXoyQ3dUL3M2Y0xCRHcxY1ZOa3dxMmVKZkJyYWR4WEljR1p3N3g3aWg0Ymx3ekJGaWVzeGJ1UnpjUzd0YUxSMEEwaW03QVluUWVTZlAvcDhzM3dCZzNKeUFkdFlLUitpWlVMS3U0N05IcDQzNms3MGZpMEZHT0l3QkFBQi9yNGk1eGF1akpnT1NaRDcxY2plZ1Q0Y2NwV3h5Sk5QdllIb3ZkTVpPOGYrdU9vQ0d1bDJia2pEUDdKZkxXVmFjbjVkMWRQK2VzMHBDb3dQa3NXN0lGajhmZjdlTzJnb0NBRlJMcDRkbGtNblBiOUUra0s1ZkE5QzJQZnhPTFdOWis3Zkd5L3BZWC9wcmkvZFgxUXZTMUs5b0M0bUJrajNhUGVoUDRuSlV5UHhPQzRZVnpRc1lxL3FrNHkvZ3lCVkdCNFhybzRsa016ZlJRbjUyQlhvclM1Y3M1RC95MmJTQk1scjk2QSt2OXpZU0dyNnFzR0dnWkYxYXJOZ0xnTDVBQUFCVWgvUS83L3V0WkRkcjVVbi96OW41YXpJNlo4NmRndStUK1RUSnRva3ZpV2tqdkp6TDZtL0MzaUVkbnhvdHZmTiszUzNld1JZTlgxWFlNSTlqb0pweTFnMVd0K3hocVExamdNdXhoaVhabTFPWVk3WXcrVlg2OVdQQ25mKy96WWdUcGt0SzM5dUlNdmUxV09STGFlOERMOXc5cnJQVW5zb0VyMlFacitvWTg5Z1ZQdnVsSmpRMThtSnloWWExeG1BcUswTjdSZ1o2NUV0bGxlSHRyQTZHdGVIN2UwcmFKYlNFOThNSXl0VmJROWpLdFo2eVRWcVUyQ3ZlNFlpUDZmZFZCaGJSRmhPT0dHaE9KcU1ieTRxbEpNYjJzNnc3anpKNzJ3MjZNVzdRVHBlaXlSZzZRZ2ZoeFh4MjNIQTM1TkNiM1p2Y1B5ODNkQzgrMmJ2T2xUSHFvdVJOaFkzS0lObkNIUHAxSld0QXlwZXc3blFWUmhEME1JN1JGU0tyS0JlWDBQeUw5alRKL3NsWXN4cEU3amRqRzdkKzZLdURJWHJ5M3M3ZFlmcnRhbVk2ZDZZeVNCYjIwQzhyV285TUh6a0ZBTzR0aGpMaldidExUdEFtSnE3OFFibll4a2FacW1DTUZ3aHdIcGt6dmwzYTBJOE9pSXdkZXZ1SGUrbHBvczBVYnF0U1NKYlJzKzZwWk9COEhUTUVZemVHTkNlekZ1UXRwT3FEOWo5UnE3Rnc0MnN4YTBrRkRYSnU0ZFB0VzcrY3licnZYWVo0aHZHRlpLWWpoQ3VGWkJsT1h5c2xNYVFxK0ZHUy9ieE4zYkRUZ3JWU2hSRjJiUVdsMTI0ZkpseTh2ckpRbUU0VWN2U04xaTh3bkFudmFMT0xjWGpyWUpuUENpY1JOTWpGWmd0OUFvQjc4Ri9CRjJyOFNQMXVyeGdaNkYvTy9qY3I5bS9DNzMyRjNaZXFQN09TNzkxRnZWejYrd1RoeGZlRmx3Uit3YTNVSUVzL0JKNlBYUHJlK2ErcEQvV3RMVmh4RC9WKzczU2VFek4yUERYZHlqZW9sNjJHNFlOY0FEL1JjMXppTGN1bmgyTUpqTG9Jd0J3SUlvU1FMTUcwYWkxR05EQkNDT3NVOHo3czhnTW9UK1hubTBOTk56UTRVUlExR0lJL1dFTHRVdnJqdmdrdXhzWTR1RlY0SEtRbE1ZRmthYU9haEJEeVk1QmZsTUlJblBwOGNHRU5SRTdBTFg0bWVOL2lMU2VaU1UrekZ2cEYwMVhGWTdVZzM3UFVkQ3Q0RGpzOTFzRXZ2dnVNMEdDT2ZrR2wzRWxQVmFiSjVnempNWUZrNDg0ejhyd1c4SUhhdm1aOER2eXV6M1JHWVlRUVFvNU04alYvY2YzL0ZEbTc0QVZnUVE4ankwTVlSNTl4aURqdkNEMzYrU1QvOGQxbm5jSjBQakFRVENQRzJYcFNCekhNamdra3l6eWFpWHpqMnpwU2pSVkJYSENPWEJWV0dHczNaZHMrLy9jakU1NTVmeWxqTDdxYkxQWnBHRjBrSEdIa2JDTElGa3R2L1l1QzJzZU85TmlOL2lEa0NheWpwZ3JHK2h6OW5xd3puMjRYK1Fpc2hCa2syNERob2hHUy84bkFKdFZxdFI3Nk1hc2hkZ25uZFVmSVB4WkxnTWo1b2JZRG9iUHZwT1Q3alo2MC9GMy81RlZ6UnRFQnUzUmVZajV6OXpQWDFxNVd2L3ZFcGF5UXBmc2laZnpKREpJRldTZTdCc0YzQmdHQW02ZTROQzkvaW4yNnI0VE96NDlIQXNEMjJNbVYrUk42TmEzYnNNczkzekRDVHA4TjhNQ3JzZjUzUXpOYTJnZG9ma3doMmJxWEZYNE1GYlFGQXRXT0tTek55d1Y2VEV3UExWbk5tQThYYmVZdVd0eGhFU0ZvckpseHRITm9OdXZUeUVaS1V4NkswMU1WWnB4Tm16b3JHTTFjbkNzSjUzalJyY05IYVYvN1FSejdoM0t4Z2pKNkt3a1NORmc3YzUreVVoeFBLTnROSXBmS0lsbjRlSk9pYkNkZnBGN2VmWitxM1RuVFJJNFZCK1lXc0FBV1VsZG56Vks0L1cxajBMc3BtOEJjZVN6Sys4d1Y1NWJERkk0QlFGTzU1NFFUUWtncDgyVFdpVXJPM3ZRd08xUkRrY1k0NjhNSC9aaEZ1RjFSdjlEQjN3bnhMeVdsYktZSFJMTWtKcEVzOUplMjNEa1FsMGlJMzBraEhVNFczNFdlSmY5YnZJUTgxczR1a1prNU5vS3p3bTNzODllWTVLbytrOGRFbUVXeU1FRjJ3L2ltMkZxdnNTVnlpM1B6bVlSMUhRK0tGOEhjWnhZckdzaWJ6cjVrUVRFSnNvdkpqNUNRODI1TUkxbDRYSjVtWGUrSXIwNjg0YlNzNHR5VVB5ZGx5V01Oc1VQUUNPbkh6Rmh0bDF5RDhwcFJpcW15VGw0aEY3cFRDckV1NXBHc3ZJYXg0cGxRNGtwam5Dd2dRaTV6NzBJd2pHa0JOL21VTFkxZXF0UFAvR1NTVFk5ems3UkFUaUVudEFtV1l4cE1KRm5vU1QvV2lzWVpDYk9QVVU5ZWtmUEpFdWYvcElZV0hDVldqT2lSVXZGZnllbURiV2Z0SnJKUGsrNzYvNkZEaUU1ZE1aTmtvY1ozMGo1UTE2OTFKUm5UYUw0TVoyTzN4Q1lXQUpMRXhqZEdpZWU5NjV4VWd5bytFRG5DODBhSjh5V1hKMFhjU0ttcEpBdHdtNVRvN1BzSFN0NWswMzJ4Uk5IdXYxdE8zQzdXSWgxQ1NIR29rSnExWm9ZYUpDT0VFT0phTCs2QkpyNVdHTG9ReDl3MEdiV3lDQ2FUTE5qdjJSdmlvOXg1bDZ6Tkd1MC92eFR5a3kxZjFGOWVXOVNQWFpiNFBBUUFBRFQ3TEtUYW5IL2ZIdkxmc3U3N3JIT21QWlRNalRBdjFvM1pKQXZBOVpuTC9pak9mbjZkN0cyTVNYY3ZFSk5JNmFySjB0eU1BR0paaXdDRGppNW5VKzNSdFNMT3FPdkltNjBsbVZGbDRnYm0rTE56eDdPMTVWWkxBMVJIWnd4TmRVWlVscUtWeXNxTDZVKy9mb1N4Q1o5S1hKL2JibWpQbjY4aGhUdlhyOWlxTEhoZlFzKysxM1d1S25pZDVNcmVMZXZYSzRrKzl2Rmt4bzJTK2hMUGNxeDljOThlTFlXbk96bXp0bTFZZVVSNlZNMjAyMi91VlovL0ZlSEsyYno2cjB6SlpXaUpEcEkxTFFtdFdqVk5TNjJhR01NNVN3cnp6K2FjT0p5aExxNm5yV0hMcGczcTFraEppT0djNWNXWEw1N0p6VGlXclhTdHlIUHZNVzRzSE1xNFFTTWhQYjFSL1ZyVmt1THN4RkZhZE9uQ3Flemp4eFRFaXF2VE5yMVIzWm9wOFhaU2NmWFNoZE9aeHc3cEVDOE9zUmJSekRPVXg0VE9qQ0Q2TTVHbDJBTFY1eGtnU0Job3oxeVNUajJsRjBFTTVqcm1lSUhMVExHR0VBUUFBTGlPWDdESHAvWlg1ZzR6QUZTU0FFZld3RDYvSXY5eWVYVFZScDNGRG9LZHFjT1pMd2dpaWVqUWMyaUVYQlF1YnExc1JOeUtoZ2hubHR4NGh3Z1NOcVMwc29WR3pKQ2FER3hsTGNYSHpLTWFFRVIzSkxTeVp5bEhLVlU2c0pXMUVsTWtMb2hCRUQwSTNjcXUwdVJzWndUUmlKQ1N2ZGpZYUJOTkFUb0dsc0Z4WDZiUkppQklJQ0ZhV1JkcnlUZUNHSVM0WkozUEdHMGZndkFRbFd5UlNOUnZCREVHTWNsdWEyZTBkUWdpZ0MzWm5FZWlRMmRIRUwxaFNOYTU4UUdSa0M2VkVGd3ZhMlpjdVZiYU0wd0FBQUEyU1VSQlZOdFhMYzNFRmJKQlZQbzE3dWFCNjFXemVwVXFLVWxKQ1RIZ0xDa3FPSitYY2V5Q1BzY1BJQWlDSUFpQ0lBaWlBLzhQNnhDNnhUMDRqTmdBQUFBQVNVVk9SSzVDWUlJPVwiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIFxuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzYtMS0wXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDc0LTUtMlwiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDg2LTktMVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg4NC00LTBcIlxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg5Ni05LTVcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoOTQtMC0xXCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTA2LTktMVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMDQtMS0wXCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTE2LTctOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMTQtNy01XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTI2LTEtMFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMjQtMS02XCJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTM2LTUtNFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMzQtOTctNlwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE0Ni03LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTQ0LTY3LTVcIlxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNTYtMy04XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE1NC02NS02XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTY2LTYtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNjQtMy04XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTc2LTktNFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxNzQtNC03XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTg2LTgtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxODQtMS00XCJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTk2LTI5LTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMTk0LTMtNlwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIwNi05LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjA0LTAtOVwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIxNi04LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjE0LTgtMFwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIyNi01LThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoMjI0LTAtMVwiXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDc1MC01LTNcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNzQ4LTYxLTFcIlxuICAgICAgICAgIGQ9XCJNIDU5Mi41Niw2MDguMDQgSCA4NDEuMiBWIDgyMi42IEggNTkyLjU2IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICA8L2RlZnM+XG4gICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDEuMzMzMzMzMywwLDAsLTEuMzMzMzMzMywtNTQyLjIzOTk5LDEzMzUuMDQpXCIgaWQ9XCJnMTBcIj5cbiAgICAgIDxwYXRoXG4gICAgICAgIGlkPVwicGF0aDM0XCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDQwNi42OCw3MDguMyBjIDAsMTYxLjI4IDEzMS45NSwyOTIuMDIgMjk0LjcyLDI5Mi4wMiAxNjIuNzcsMCAyOTQuNzIsLTEzMC43NCAyOTQuNzIsLTI5Mi4wMiAwLC0xNjEuMjggLTEzMS45NSwtMjkyLjAyIC0yOTQuNzIsLTI5Mi4wMiAtMTYyLjc3LDAgLTI5NC43MiwxMzAuNzQgLTI5NC43MiwyOTIuMDIgelwiXG4gICAgICAvPlxuICAgICAgPGdcbiAgICAgICAgaWQ9XCJhbnRpY2lwYXRlLWJnXCJcbiAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGFudGljaXBhdGUtdmVyc2lvblwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDIpXCIgaWQ9XCJnMzhcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgaWQ9XCJwYXRoNDRcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgZD1cIm0gMTI4NS45Niw4OTAuMDQgYyAzMi4xOSwwIDU4LjI4LC0yNi4wOSA1OC4yOCwtNTguMjggViA1OTguNjQgYyAwLC0zMi4xOSAtMjYuMDksLTU4LjI4IC01OC4yOCwtNTguMjggSCA5NDEuNiBjIC0zMi4xOSwwIC01OC4yOCwyNi4wOSAtNTguMjgsNTguMjggdiAyMzMuMTIgYyAwLDMyLjE5IDI2LjA5LDU4LjI4IDU4LjI4LDU4LjI4IHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICAgIDxnXG4gICAgICAgIGlkPVwiYWN0LWJnXCJcbiAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGFjdC12ZXJzaW9uXCJcbiAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDIuNjIwNTI0NCwxLjIyNjU0NDkpXCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8Z1xuICAgICAgICAgIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQyLTMpXCJcbiAgICAgICAgICBpZD1cImczOC0zXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGlkPVwicGF0aDQ0LTVcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgZD1cIm0gMTI4NS45Niw4OTAuMDQgYyAzMi4xOSwwIDU4LjI4LC0yNi4wOSA1OC4yOCwtNTguMjggViA1OTguNjQgYyAwLC0zMi4xOSAtMjYuMDksLTU4LjI4IC01OC4yOCwtNTguMjggSCA5NDEuNiBjIC0zMi4xOSwwIC01OC4yOCwyNi4wOSAtNTguMjgsNTguMjggdiAyMzMuMTIgYyAwLDMyLjE5IDI2LjA5LDU4LjI4IDU4LjI4LDU4LjI4IHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICAgIDxnXG4gICAgICAgIGlkPVwiZW5nYWdlLWJnXCJcbiAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGVuZ2FnZS12ZXJzaW9uXCJcbiAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDMuNzIwMjc5MiwwLjk0MjQ5MjY0KVwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICBmaWxsOiBcIiNjZTlmYzlcIixcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGdcbiAgICAgICAgICBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0Mi0zLTYpXCJcbiAgICAgICAgICBpZD1cImczOC0zLTJcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiNjZTlmYzlcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgaWQ9XCJwYXRoNDQtNS03XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxuICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGQ9XCJtIDEyODUuOTYsODkwLjA0IGMgMzIuMTksMCA1OC4yOCwtMjYuMDkgNTguMjgsLTU4LjI4IFYgNTk4LjY0IGMgMCwtMzIuMTkgLTI2LjA5LC01OC4yOCAtNTguMjgsLTU4LjI4IEggOTQxLjYgYyAtMzIuMTksMCAtNTguMjgsMjYuMDkgLTU4LjI4LDU4LjI4IHYgMjMzLjEyIGMgMCwzMi4xOSAyNi4wOSw1OC4yOCA1OC4yOCw1OC4yOCB6XCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgICA8Z1xuICAgICAgICBpZD1cInJlZmxlY3QtYmdcIlxuICAgICAgICBjbGFzc05hbWU9XCJocDMgcmVmbGVjdC12ZXJzaW9uXCJcbiAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0wLjAyNTc1NTE1LDMuMjM2ODUxNSlcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxnXG4gICAgICAgICAgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDItMy02LTApXCJcbiAgICAgICAgICBpZD1cImczOC0zLTItMFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBpZD1cInBhdGg0NC01LTctNlwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkPVwibSAxMjg1Ljk2LDg5MC4wNCBjIDMyLjE5LDAgNTguMjgsLTI2LjA5IDU4LjI4LC01OC4yOCBWIDU5OC42NCBjIDAsLTMyLjE5IC0yNi4wOSwtNTguMjggLTU4LjI4LC01OC4yOCBIIDk0MS42IGMgLTMyLjE5LDAgLTU4LjI4LDI2LjA5IC01OC4yOCw1OC4yOCB2IDIzMy4xMiBjIDAsMzIuMTkgMjYuMDksNTguMjggNTguMjgsNTguMjggelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPHBhdGhcbiAgICAgICAgaWQ9XCJwYXRoNDZcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDQzMiw3MDYuMzIgYyAwLDE2MC4xOCAxMjYuMjgsMjkwLjA0IDI4Mi4wNiwyOTAuMDQgMTU1Ljc4LDAgMjgyLjA2LC0xMjkuODYgMjgyLjA2LC0yOTAuMDQgQyA5OTYuMTIsNTQ2LjE0IDg2OS44NCw0MTYuMjggNzE0LjA2LDQxNi4yOCA1NTguMjgsNDE2LjI4IDQzMiw1NDYuMTQgNDMyLDcwNi4zMiBaXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGg1MFwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICB9fVxuICAgICAgICBkPVwibSA0NTcuMjYsNzY1LjYgYyAwLDEyOS42IDExMi42MSwyMzQuNjYgMjUxLjUyLDIzNC42NiBDIDg0Ny42OSwxMDAwLjI2IDk2MC4zLDg5NS4yIDk2MC4zLDc2NS42IDk2MC4zLDYzNiA4NDcuNjksNTMwLjk0IDcwOC43OCw1MzAuOTQgNTY5Ljg3LDUzMC45NCA0NTcuMjYsNjM2IDQ1Ny4yNiw3NjUuNiBaXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGg1MlwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICBmaWxsOiBcIm5vbmVcIixcbiAgICAgICAgICBzdHJva2U6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgc3Ryb2tlV2lkdGg6IDIuMDQsXG4gICAgICAgICAgc3Ryb2tlTGluZWNhcDogXCJidXR0XCIsXG4gICAgICAgICAgc3Ryb2tlTGluZWpvaW46IFwicm91bmRcIixcbiAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0OiAxMCxcbiAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6IFwibm9uZVwiLFxuICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDEsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDQ1Ny4yNiw3NjUuNiBjIDAsMTI5LjYgMTEyLjYxLDIzNC42NiAyNTEuNTIsMjM0LjY2IEMgODQ3LjY5LDEwMDAuMjYgOTYwLjMsODk1LjIgOTYwLjMsNzY1LjYgOTYwLjMsNjM2IDg0Ny42OSw1MzAuOTQgNzA4Ljc4LDUzMC45NCA1NjkuODcsNTMwLjk0IDQ1Ny4yNiw2MzYgNDU3LjI2LDc2NS42IFpcIlxuICAgICAgLz5cbiAgICAgIDxnXG4gICAgICAgIGlkPVwiYW50aWNpcGF0ZVwiXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgIH19XG4gICAgICAgIFxuICAgICAgPiA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJhbnRpY2lwYXRlLWFudGljaXBhdGVcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiNiODViZDFcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDg5NC41LDg5MC4wMyAtNi40OCwtNTEuOCAtNDkuNTcsLTYuMTkgYyAzMS42MywtMzIuNTcgNTEuMTIsLTc3LjAxIDUxLjEyLC0xMjYuMDEgMCwtNDAuMTcgLTEzLjEsLTc3LjI3IC0zNS4yNCwtMTA3LjI4IGwgNi41LC01Mi4xMSA1MC4yLC02LjI4IGMgMzYuOTcsNDUuMTEgNTkuMTcsMTAyLjggNTkuMTcsMTY1LjY3IDAsNzEuNzYgLTI4LjkxLDEzNi43NiAtNzUuNywxODQgelwiXG4gICAgICAgIC8+IDwvYT5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgYWN0LXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJhbnRpY2lwYXRlLWFjdFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzA4LjcsOTY3LjQzIGMgLTcxLjczLDAgLTEzNi43MSwtMjguOSAtMTgzLjk0LC03NS42OSBsIDUxLjc4LC02LjQ4IDYuMTksLTQ5LjU4IGMgMzIuNTcsMzEuNjQgNzcsNTEuMTMgMTI1Ljk3LDUxLjEzIDQwLjE2LDAgNzcuMjUsLTEzLjEgMTA3LjI1LC0zNS4yNSBsIDUyLjEsNi41MSA2LjI3LDUwLjIxIGMgLTQ1LjA5LDM2Ljk2IC0xMDIuNzYsNTkuMTUgLTE2NS42Miw1OS4xNSB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBlbmdhZ2UtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cImFudGljaXBhdGUtZW5nYWdlXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjY2U5ZmM5XCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA1MDYuNDEsODcxLjY3IGMgLTM2Ljk3LC00NS4xIC01OS4xNiwtMTAyLjc5IC01OS4xNiwtMTY1LjY2IDAsLTcxLjc2IDI4LjksLTEzNi43NiA3NS43LC0xODQgbCA2LjQ2LDUxLjc5IDQ5LjU5LDYuMiBjIC0zMS42NCwzMi41NyAtNTEuMTMsNzcuMDEgLTUxLjEzLDEyNi4wMSAwLDQwLjE2IDEzLjEsNzcuMjYgMzUuMjUsMTA3LjI4IGwgLTYuNTEsNTIuMTEgelwiXG4gICAgICAgIC8+IDwvYT5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgcmVmbGVjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwiYW50aWNpcGF0ZS1yZWZsZWN0XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA4MzQuNjgsNTc2LjIzIGMgLTMyLjU3LC0zMS42MyAtNzcuMDEsLTUxLjEyIC0xMjYuMDEsLTUxLjEyIC00MC4xNiwwIC03Ny4yNiwxMy4xIC0xMDcuMjcsMzUuMjQgbCAtNTIuMTIsLTYuNSAtNi4yNywtNTAuMiBjIDQ1LjEsLTM2Ljk4IDEwMi43OCwtNTkuMTcgMTY1LjY2LC01OS4xNyA3MS43NiwwIDEzNi43NSwyOC45MSAxODQuMDEsNzUuNyBsIC01MS44MSw2LjQ4IHpcIlxuICAgICAgICAvPiA8L2E+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjJcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzA4LjczLDgzNC41OSBjIC04Ljc5LDAgLTE3LjQ0LC0xLjQxIC0yNS42OSwtNC4yMSAtMi44MSwtMC45NSAtNC4zMiwtNCAtMy4zNSwtNi43OSAwLjc2LC0yLjIyIDIuODQsLTMuNjIgNS4wOSwtMy42MiAwLjU3LDAgMS4xNiwwLjA5IDEuNzQsMC4yOSA3LjE0LDIuNDEgMTQuNiwzLjYzIDIyLjIxLDMuNjMgMi45OCwwIDUuMzksMi40IDUuMzksNS4zNiAwLDIuOTYgLTIuNDEsNS4zNCAtNS4zOSw1LjM0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDY0XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDY4Ni4xNyw5MjYuNiAtMS4zMywtNy43OSA1LjM3LDAuOTggeiBtIC0yLjksNC4yMiA0LjIxLDAuNzcgMTEuNDgsLTE4LjI1IC00LjMzLC0wLjc5IC0yLjUzLDQuMTYgLTcuODcsLTEuNDQgLTAuODEsLTQuNzcgLTQuMjIsLTAuNzcgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjZcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzE2Ljc5LDkzNC4xOCBjIDIuNDUsLTAuMDIgNC40MywtMC43NyA1Ljk0LC0yLjIzIDAuOSwtMC44NyAxLjU3LC0yLjEgMi4wMSwtMy43MSBsIC00LjAxLC0wLjkxIGMgLTAuMjMsMS4wNCAtMC43MSwxLjg2IC0xLjQ2LDIuNDcgLTAuNzQsMC42MSAtMS42NSwwLjkyIC0yLjcyLDAuOTMgLTEuNDksMC4wMiAtMi43LC0wLjUgLTMuNjMsLTEuNTYgLTAuOTQsLTEuMDYgLTEuNDIsLTIuNzcgLTEuNDQsLTUuMTYgLTAuMDMsLTIuNTMgMC40MSwtNC4zNCAxLjMxLC01LjQyIDAuOSwtMS4wOCAyLjA3LC0xLjYzIDMuNTMsLTEuNjUgMS4wNywtMC4wMSAyLDAuMzIgMi43OCwxIDAuNzgsMC42NyAxLjM1LDEuNzQgMS43LDMuMiBsIDMuOTEsLTEuMjggYyAtMC42MywtMi4xOCAtMS42NCwtMy43OSAtMy4wNSwtNC44NCAtMS40MSwtMS4wNCAtMy4xOSwtMS41NSAtNS4zNCwtMS41MyAtMi42NSwwLjAzIC00LjgzLDAuOTYgLTYuNTIsMi43OSAtMS42OSwxLjgzIC0yLjUyLDQuMzIgLTIuNDksNy40NyAwLjA0LDMuMzMgMC45Miw1LjkxIDIuNjYsNy43NCAxLjc0LDEuODIgNC4wMSwyLjcyIDYuODIsMi42OSB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGg2OFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3MzcuMzksOTMyLjQyIDE1LjYyLC0zLjAxIC0wLjY0LC0zLjMzIC01LjgyLDEuMTMgLTMuMTUsLTE2LjMzIC0zLjk3LDAuNzcgMy4xNSwxNi4zMiAtNS44MywxLjEzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8ZyBpZD1cImc3MFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDc2KVwiIGlkPVwiZzcyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGg3OFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDk0LjM4LDYyNS4zNyAtMy45NywxNC4zIDMuMjYsMC45MSAyLjg5LC0xMC40MSA0LjI3LDEuMTkgLTIuNjksOS42OCAzLjI1LDAuOSAyLjY5LC05LjY4IDUuMjUsMS40NiAtMi45OSwxMC43NyAzLjI1LDAuOTEgNC4wNywtMTQuNjcgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImc4MFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDg2KVwiIGlkPVwiZzgyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGg4OFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDg3LjUzLDY1Mi41IC0wLjY1LDMuODggMTEuODMsMTAuMjkgLTEzLjE4LC0yLjIxIC0wLjYzLDMuNyAxOS43NCwzLjMxIDAuNjcsLTQgLTExLjU0LC0xMC4xMSAxMi44OCwyLjE1IDAuNjIsLTMuNyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzkwXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoOTYpXCIgaWQ9XCJnOTJcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDk4XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODIuNDgsNjkwLjkyIGMgLTAuMTQsMi40OCAwLjI3LDQuNDUgMS4yMyw1LjkgMC45NiwxLjQ1IDIuMzUsMi40MyA0LjE2LDIuOTMgbCAwLjk4LC0zLjk2IGMgLTAuOTcsLTAuMzQgLTEuNzEsLTAuOTEgLTIuMjQsLTEuNzIgLTAuNTIsLTAuODEgLTAuNzUsLTEuNzkgLTAuNjksLTIuOTYgMC4xLC0xLjc2IDAuNzQsLTMuMTMgMS45MiwtNC4xMSAxLjE3LC0wLjk4IDIuODYsLTEuNCA1LjA2LC0xLjI4IDIuMzcsMC4xMyA0LjEyLDAuNzYgNS4yNSwxLjg4IDEuMTIsMS4xMiAxLjY0LDIuNTQgMS41NCw0LjI1IC0wLjA0LDAuODQgLTAuMjYsMS42OCAtMC42NCwyLjUxIC0wLjM4LDAuODMgLTAuODIsMS41NCAtMS4zMywyLjEyIGwgLTIuNTMsLTAuMTQgMC4yNiwtNC42MiAtMy4zNywtMC4xOSAtMC40OSw4LjY5IDcuOTYsMC40NSBjIDAuODcsLTAuOCAxLjY2LC0xLjk4IDIuMzcsLTMuNTUgMC43MSwtMS41NyAxLjEyLC0zLjE4IDEuMjEsLTQuODIgMC4xMiwtMi4wOSAtMC4yMiwtMy45NCAtMS4wMSwtNS41NCAtMC43OSwtMS42MSAtMS45OCwtMi44NCAtMy41NywtMy43MiAtMS41OCwtMC44NyAtMy4zMywtMS4zNiAtNS4yNSwtMS40NyAtMi4wOCwtMC4xMiAtMy45NiwwLjIyIC01LjYyLDEgLTEuNjcsMC43OCAtMi45OCwxLjk5IC0zLjk0LDMuNjIgLTAuNzQsMS4yNCAtMS4xNiwyLjgyIC0xLjI2LDQuNzMgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMDBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMDYpXCIgaWQ9XCJnMTAyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDhcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny40Myw3MjAuNTYgNy4yOCwtMy4wOSAwLjI5LDUuNDUgeiBtIC00Ljc3LC0xLjg0IDAuMjMsNC4yNyAyMC40MSw2Ljk1IC0wLjI0LC00LjM5IC00LjYzLC0xLjUxIC0wLjQyLC03Ljk5IDQuNDUsLTEuODkgLTAuMjMsLTQuMjggelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMTBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMTYpXCIgaWQ9XCJnMTEyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMThcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ4NS43Niw3NTEuNjEgYyAwLjQsMi40NSAxLjIzLDQuMjggMi40OCw1LjQ5IDEuMjYsMS4yMSAyLjgzLDEuODcgNC43MSwxLjk3IGwgMC4wOSwtNC4wOSBjIC0xLjAyLC0wLjEyIC0xLjg3LC0wLjUxIC0yLjU2LC0xLjE5IC0wLjY5LC0wLjY4IC0xLjEyLC0xLjU5IC0xLjMxLC0yLjc0IC0wLjI5LC0xLjc0IDAuMDQsLTMuMjIgMC45NywtNC40MyAwLjk0LC0xLjIxIDIuNDksLTEuOTkgNC42NywtMi4zNSAyLjM0LC0wLjM4IDQuMTgsLTAuMTUgNS41MywwLjcgMS4zNCwwLjg1IDIuMTUsMi4xMiAyLjQzLDMuODEgMC4xMywwLjgzIDAuMTEsMS43IC0wLjA4LDIuNTkgLTAuMTksMC44OSAtMC40NywxLjY4IC0wLjg0LDIuMzYgbCAtMi41MSwwLjQxIC0wLjc0LC00LjU3IC0zLjMzLDAuNTUgMS40MSw4LjYgNy44NywtMS4zIGMgMC42NywtMC45NiAxLjE4LC0yLjI5IDEuNTQsLTMuOTggMC4zNSwtMS42OCAwLjM5LC0zLjM0IDAuMTMsLTQuOTcgLTAuMzQsLTIuMDYgLTEuMDcsLTMuNzkgLTIuMTksLTUuMTggLTEuMTIsLTEuNCAtMi41NSwtMi4zNSAtNC4yOSwtMi44NiAtMS43MywtMC41IC0zLjU1LC0wLjYgLTUuNDUsLTAuMjkgLTIuMDUsMC4zNCAtMy44MSwxLjA3IC01LjI3LDIuMTkgLTEuNDUsMS4xMyAtMi40NywyLjU5IC0zLjA1LDQuMzkgLTAuNDUsMS4zOCAtMC41MiwzLjAxIC0wLjIxLDQuODkgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMjBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMjYpXCIgaWQ9XCJnMTIyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMjhcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5MC40Miw3NzIuOTkgMy45NywxNC4zIDMuMjYsLTAuOSAtMi44OSwtMTAuNDEgNC4yOCwtMS4xOSAyLjY5LDkuNjkgMy4yNCwtMC45MSAtMi42OCwtOS42OCA1LjI1LC0xLjQ1IDIuOTksMTAuNzcgMy4yNSwtMC45IC00LjA3LC0xNC42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzEzMFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEzNilcIiBpZD1cImcxMzJcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDEzOFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTEyLjc3LDgxMC4yIC03Ljg5LC0wLjUgMi4xOSwtNSB6IG0gMy40NCwzLjc5IDEuNzEsLTMuOTIgLTE1LjEyLC0xNS4zNiAtMS43Niw0LjAyIDMuNDYsMy40MyAtMy4yLDcuMzIgLTQuODMsLTAuMyAtMS43MiwzLjkyIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTQwXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTQ2KVwiIGlkPVwiZzE0MlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ4XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MjQuOTEsNzkyLjM4IDEuMTcsLTMuNzUgLTEwLjMxLC0xMS44MSAxMi43NiwzLjk5IDEuMTIsLTMuNTggLTE5LjExLC01Ljk3IC0xLjIxLDMuODcgMTAuMDUsMTEuNTkgLTEyLjQ1LC0zLjg5IC0xLjEyLDMuNTggelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNTBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNTYpXCIgaWQ9XCJnMTUyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNThcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzMi41Nyw3NjUuODggMy4xNSwtMTUuNTkgLTMuMzIsLTAuNjcgLTEuMTcsNS44MSAtMTYuMywtMy4yOSAtMC44LDMuOTYgMTYuMywzLjI5IC0xLjE4LDUuODIgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNjBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNjYpXCIgaWQ9XCJnMTYyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNjhcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzNy4yNiw3MzkuMjcgMC40OCwtNC4wMSAtMTkuODcsLTIuMzkgLTAuNDgsNC4wMSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzE3MFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE3NilcIiBpZD1cImcxNzJcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE3OFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTM5LjU4LDcxNC4yOSBjIDAuMDgsLTIuNDQgLTAuNTcsLTQuNDYgLTEuOTcsLTYuMDMgLTAuODIsLTAuOTQgLTIuMDMsLTEuNjYgLTMuNjIsLTIuMTcgbCAtMS4wOCwzLjk3IGMgMS4wMywwLjI3IDEuODMsMC43OSAyLjQsMS41NiAwLjU4LDAuNzcgMC44NSwxLjY5IDAuODEsMi43NiAtMC4wNSwxLjQ5IC0wLjYyLDIuNjcgLTEuNzEsMy41NiAtMS4xLDAuODkgLTIuODQsMS4yOSAtNS4yMiwxLjIxIC0yLjUzLC0wLjA4IC00LjMyLC0wLjYgLTUuMzYsLTEuNTQgLTEuMDQsLTAuOTUgLTEuNTQsLTIuMTUgLTEuNDksLTMuNiAwLjAzLC0xLjA4IDAuNDEsLTEuOTkgMS4xMSwtMi43NCAwLjcxLC0wLjc1IDEuOCwtMS4yNyAzLjI4LC0xLjU2IGwgLTEuMTEsLTMuOTUgYyAtMi4yMSwwLjUyIC0zLjg2LDEuNDcgLTQuOTcsMi44MyAtMS4xLDEuMzYgLTEuNjksMy4xMSAtMS43Niw1LjI2IC0wLjA5LDIuNjYgMC43NCw0Ljg3IDIuNSw2LjY0IDEuNzYsMS43NyA0LjIxLDIuNzEgNy4zNiwyLjgxIDMuMzMsMC4xMSA1Ljk0LC0wLjY2IDcuODQsLTIuMzIgMS45LC0xLjY1IDIuOSwtMy44OCAyLjk5LC02LjY5IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTgwXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTg2KVwiIGlkPVwiZzE4MlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg4XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzkuMSw2OTQuMjcgLTAuMjIsLTQuMDMgLTE5Ljk4LDEuMDkgMC4yMSw0LjAzIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTkwXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTk2KVwiIGlkPVwiZzE5MlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTk4XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzMuOTgsNjc0LjI1IC01LjYyLDAuNzkgLTAuMzEsLTIuMTkgYyAtMC4yMiwtMS41OCAtMC4yNiwtMi42NSAtMC4xMywtMy4yMSAwLjEzLC0wLjU2IDAuNCwtMS4wMiAwLjgsLTEuMzggMC40LC0wLjM3IDAuODksLTAuNTkgMS40OCwtMC42NyAwLjcyLC0wLjEgMS4zNCwwLjAyIDEuODcsMC4zOCAwLjUzLDAuMzYgMC45LDAuODYgMS4xMSwxLjQ5IDAuMTUsMC40NiAwLjMzLDEuNDIgMC41MywyLjg2IHogbSAzLjkyLDMuNTMgLTAuOSwtNi40MiBjIC0wLjM0LC0yLjQzIC0wLjY2LC00IC0wLjk2LC00LjcxIC0wLjQ2LC0xLjEgLTEuMjQsLTEuOTYgLTIuMzQsLTIuNTkgLTEuMTEsLTAuNjIgLTIuNDUsLTAuODMgLTQuMDMsLTAuNiAtMS4yMSwwLjE3IC0yLjIsMC41MyAtMi45NywxLjA5IC0wLjc3LDAuNTYgLTEuMzQsMS4yMSAtMS43MiwxLjk1IC0wLjM4LDAuNzUgLTAuNTksMS40OSAtMC42NSwyLjIxIC0wLjA1LDAuOTggMC4wNCwyLjM4IDAuMyw0LjE5IGwgMC4zNiwyLjYxIC03LjQ3LDEuMDUgMC41Niw0IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMjAwXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjA2KVwiIGlkPVwiZzIwMlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA4XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MjcuMDEsNjQ0LjM3IC02LjUzLDQuNDUgLTEuMzUsLTUuMjkgeiBtIDUuMDQsMC44OCAtMS4wNSwtNC4xNSAtMjEuMzgsLTIuODMgMS4wOSw0LjI2IDQuODMsMC41NyAxLjk3LDcuNzYgLTQsMi43MiAxLjA2LDQuMTUgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcyMTBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMTYpXCIgaWQ9XCJnMjEyXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgyMThcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNi4wNyw2MjQuMTkgLTUuNTIsLTE0LjkyIC0zLjE4LDEuMTggMi4wNiw1LjU2IC0xNS41OSw1Ljc3IDEuNCwzLjc5IDE1LjU5LC01Ljc3IDIuMDYsNS41NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIyMFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIyNilcIiBpZD1cImcyMjJcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTE2LjA2LDU5OC44OCAtNi41MywtMTMuMzMgLTMuMDQsMS40OSA0Ljc1LDkuNyAtMy45OCwxLjk1IC00LjQyLC05LjAzIC0zLjAzLDEuNDkgNC40Miw5LjAyIC00LjksMi40IC00LjkxLC0xMC4wNSAtMy4wMywxLjQ5IDYuNjksMTMuNjcgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcyMzBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMzYpXCIgaWQ9XCJnMjMyXCI+XG4gICAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJtYXRyaXgoMjA0LjM2LDAsMCwyMDQuMzYsNjAxLjA4LDYxMS40KVwiIGlkPVwiZzIzOFwiPlxuICAgICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgICBpZD1cImltYWdlMjQ0XCJcbiAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNtYXNrMjQwKVwiXG4gICAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFZQUFBQUdBQ0FZQUFBQ2t4N1cvQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBSUFCSlJFRlVlSnp0M1dsejIwaldwdUVISUlGTVVJdTFTN1prbHlybWpaaVltUC8vZDZhOXlJdXN6WklzWWlQQStRREs1ZXB5MmJKSUpKTENmVVYwOUlmcUl1QzJoQWZNUEhsT0lHa3FBRUR2aEYzZkFBQ2dHd1FBQVBRVUFRQUFQVVVBQUVCUEVRQUEwRk1FQUFEMEZBRUFBRDFGQUFCQVR4RUFBTkJUQkFBQTlCUUJBQUE5UlFBQVFFOFJBQURRVXdRQUFQUVVBUUFBUFVVQUFFQlBFUUFBMEZNRUFBRDBGQUVBQUQxRkFBQkFUeEVBQU5CVEJBQUE5QlFCQUFBOVJRQUFRRThSQUFEUVV3UUFBUFFVQVFBQVBVVUFBRUJQRVFBQTBGTUVBQUQwRkFFQUFEMUZBQUJBVHhFQUFOQlRCQUFBOUJRQkFBQTlSUUFBUUU4UkFBRFFVd1FBQVBRVUFRQUFQVVVBQUVCUEVRQUEwRk1FQUFEMEZBRUFBRDFGQUFCQVR4RUFBTkJUQkFBQTlCUUJBQUE5TmV6NkJnQmdXVVZocE1RYUpiR1ZqWTFHY2FMM2w1OTBNLzdhOWEwOUNBRUFBTDhRS3BRMVZpTVRLNGtTSmJHUk5TTU5CLzljUkxGUm9oc1JBQUN3VkFJRk1zTll4aGdseG1vVUc0MU1vbmdZUC9nelJzYTBlSWVMUlFBQTZLWGhZQ2diR1kxaUl4dGJqYXhWRWljS2dtQ3V6N1VFQUFENElRZ0MyU2hXWWhLTllxc2tOaHFaa1FhRFFTdlhTeUtyUUlHbW1yYnkrWXRFQUFCNE11SkJMR3VOUnBIOXRqR2JHT3YwSG9JZ2tJMWpwVVh1OUxxUFFRQUFXRHFEWUtERVdObDQ5bVlmR1Zsck5RamFlYXYvWFRaT0NBQUFtRmNTR3lYM2IvVFdLREVqeFFPL0gxMmp5T2lxNjV0NEFMLy9Yd1RRRzlFd2Fzb3I0NmF1UGpGV2RtZ1Voc3QzWHRYYTVkZ0lKZ0FBT0JVRWdaSzRxYVVmeFZhSk1iTHhqMnZxbDFVU3U5MTNlQ3dDQUVCcjdMQjVtemYzRzdNMmtSbEdYZDlXNitKaHJFRVlxcXJycm0vbHB3Z0FBSE1iRG9aTkxYMFV5OXBFbzlnc3BLWittU1dSMGRjODdmbzJmb29BQVBCZ1RZbGo4MVovWDFOdjQ1R2lvUi9WTno2eHhoSUFBSmFUR2NReTFpaUptaVpuMXBpbFdkdjJ3Y2p4K1lQSElBQ0FuZ3ZEVUtNNG1XM0dXaVdSVWVKUlRmMnlTdUtrNjF2NEpRSUE2SkZteWFZNU9KVllLMnNTNzJ2cWw1V05IOTVBcml2OHpRTlBVRk5UMzV5VXZWKytXZGFhK21VMUNJZUtoNUdLU2RuMXJmd3JBZ0JZWW9Nd2xJMk5iR1MvdFM5K2FqWDF5OHhHbGdBQU1MLzdtbnByWit2MHNaR0psK1BFNlRLWlZLWFNJbGVhWjBxTTFWcXkrdWpQU3F6UlRYcTd3THRiTEFJQThNeDlUWDB5T3lXYlJNMVFrajdYMUxlaG1sYks4MUxqSWxOV1prcXpWR21SYVZKWDMvNDMyK3ViY3dYQXlQT05ZQUlBNk1oOVRmMG9haXB3RW1ObG80U2EraGJrazFKcG5pb3JNbzJMWEdtUktYOUF0ODQ4eithNmJoTDVYUXBLQUFBT21FR3N4RmlaT05iSUpMS3hrUm5HYk1vdTJLU3FsUldwMGpKdkh2aDVwclFvVkUyclgvL0xQNUROMmRMWlJINVhBaEVBd0FLRllhZ2thc1lMMnNoK2EzZ1d0alI5cXEvcXVsWlpsVXJ6NW0wK3padi81Rld4ME90TXByV0thdkxvVXRrZ0RKVEVWbWt4M3plSnRoQUF3Q00xWlpaV0l4TXJpUlBaT0ZFODVGZXFiZS9PUHVqODV0TEp3TVZCR0NxWXpqc2ptQUFBbGxZMEhEWVArTWhxWkF3MTlSMjYvbnFqczV0TFo5ZjdZKzlvN2oyWkpMYmVEb2NoQUlDWis1cjY1bTNlZkt2Q0dZYjhtdmhnVXBWNmMvN0IyZlYyMTdhMHNiSSs5K2Y0dkJITVR6WjZ5UTVOTXp3OE5rcWkyYVlzTmZWZWUzUDJRWk5xNHVSYWRtaDB1SDJ3a004YWVkd1NnZ0RBa3pZY0RKVkVSdFlremZJTk5mVkw2ZUwyU3RkM2JnNVVCUXAwZkhDb2NFR25xYU9vcWZhcVBSd09Rd0RnU1FnVnlzd3FibXhzTmJLR212b25JcCtVT2puLzZPeDZCMXQ3R3BuUlFqOHpNWW51MHJ1RmZ1WWlFQUJZT3ZFd21yVXZ0dC9XN09QaGtFM1pGaFNUUWxtUkt5MVNwVVdodzgwOVJRNXIyK3U2MXR2UDc1eU5WbHkxSzlwL3RyM3d6MDBpU3dBQXYrTytwajR4elFEeFpncVZvYWErQlpONm9qelBsWmFaeG5tbXJDaVU1dG5mRGxBZGJMbDkrRXZTK2UyVmJ0T3hrMnNOd2xESCs0ZXR2RWdrbnU0dkVRRG9YQkFFc3JQbVprM3ZtNlRwVTA5Ti9jSk42Nm55c2xCYVpyTURWS25TSXY5bHg4cFJiUFg4MmE2anUyeWtlZVowNmVkbzU3bmlZVHNCUndBQWFtcnFSNUdWaVpObW5UNDJTb1pXUWNpbTdLSVY1VVJwa1gzWEdpRlRWdWFhVG4vdkNGV29VSDhldkhUNmR6U3RwM3I5K2IyejYyMnVybXQ3YmJPMXo3ZWVOb1VqQU5DS3BxWisxdEV5bnEzVlUxUGZpcnFxbTQ2V1JhNXhrU2t0TStWWnFzbDBNZXZtaHpzSE1wSGJOOWlQWHo0ckxkd01WSStHUTczYU9XejFHc05CS0RPSUY5NnFZbDc4Tm1KdUpwNHQzMFJKVTFkdmpHTEhENHkrcUtwS04rbFhqZk5VZVZGb1hLU3REaHhaVDlhMCsyeXJ0Yy8va1hHZTZ0UFZtYlByL2JsN3BJR0RmU1ZqamZJN0FnQkxhaGdPbWpkNjIyektOcTBSTERYMUR2M245TVRaZ0pGQkdPclZmcnR2eHYrdHJpcTkvblRpN0hwN0c5dGFIVDIrMy8vdlNDS2pHL2sxSElZQXdEL2MxOVFuc3hMTHhEWnY5OVRVZCt2ODVzTHBkS25qM1NQbkErTS9YSDFXTnBtdkJmTkRqWXpWNGRaaVR2cys2SG9lN2dNUUFEMFhENlBaTE5ta1dhczNzZUlCZmVwOWs1ZTVUczVPblYxdmUyMVR6MWJuNzRQek8yN1NPMzIrdm5CeXJTQUlkTHo3MHVtM1YrdGhKUkFCMEJOaEdEYjE5SkdkblpZMTFOUXZpV2s5MVg4K3ZWTXRONGVoNG1Ha3crM25UcTUxcjZvbmV2UDVuYlBySFc0ZnlCcTNEMlFmaDhNUUFFOU1FQVROOEhBejYzOHo2NE5EVGYzeStuajFXV09IL2VULzNEdlNjRUY5Y0I3cTNma25sUk0zamQ3V1I2dmFhK0cwNzYrRVlhZ2tOa3JubkRLMlNEd1ZsbGcwakRTS1p1MkxiWE5TMWc0Tk5mVXRLQ2VsaG9PaDh3M3Z1eXpWcHkvdUttS2ViKzVwSlZseGRqMUorbkozcmN2YkwwNnVOUmdNOUdyM3lNbTFmbVFVV3dJQXYrZStwcjVadGtsa1RiTjhNNkNtZnVHcWFhVXNMNVFXdWZJeVZacm5HdWVaUnRicWY1NGZPNzJYdXFyMSt2TmJaOWRMNGtRSG0yNVAreGJWUkcvTzNQWDRQOTQ1N1BUYmNHSVM2ZXQxWjlmL2J6eEJQR09pN3pwYUdxc2tqcW1wYjBsZTVMUERVN25TMmNNK0wvLzVkallNUXIzYWNmL1dlSEw1U1huWlhvMy85d0pKeC91SHpyL2h2RDE3cjZwNjNNRDIzOVhGeHZaLzgyMGptQURveURBY2FHUVNXZlBkOEhCcTZsdFJUcXEvM3VhTFRGbVphWnhsbWo1d3F1ekwvVVBGa2R0ZmxTOTNOenAzT1BydzVlNXpKYkhieVZYbjE1ZTZjZFRqMzBTUlhqcmUyUDRSMzFwQ0VBQXQrNzZtZm1Sbm93YXBxVy9GZERxZHZkR25zeGJHbWRJc1Yxay8vaTE2YTNWRG15dlBGbmlYdnphcFNyMTF1Q3l5UGxyVHpycmJUZEdpekhWeStjblo5ZjdjZjdXd0FTL3ppSWRERGNMUVdYdnJYeUVBRnNoRTBiZitOMDIvZXFOb0VGRlQzNEo4VWpiTnpZcFVhWkZwWE9US0Y3eTVGZzhqSGUyNk95aDA3N1hEMFlmTjhwYmowNzUxcmYrY2ZYQTJJZXY1NXI1R3hwODM3NUd4emxwYy93b0I4QWpESUpTeGY1VllqbUtySkRKZXZHRThaZWZYVjdxNHZWSldaazdlb0k3M1h6cHZYbmQyYytWc1dVU1NYbld3dkhWK2MrbHNPTXFLR1dsL3czM0o1ODhrY1VJQUxJUDdtbnByWjEwdG8rYS9YZi9DUUJyblk3MDlkOWNlK0dCelY2dDJzV01CZnlVckNwMmN1MXY2MlZyZDBJYmo1YTBzejNWeTRXYnBKMUNnNDcxMkJyek13emplYS9rWm5tUXo4YkJadmhsRlZvbHRTaTZwcWZkRDB5RE0zY00vaVkyZWIrNDV1NTdVTEl1OE9UdjU3Vjc5anhVUFl1ZkxXOVBwVlA5eFdOYjZjdmRReHJPcUcwbGFNUVJBWndaaEtCdlpXUzA5TmZYTDRPVHlrN01HWVpMMDU5NHI1OVZZbjYvUGRKZTVXeFk0UGpoeXZyejE0ZkxVMlNHb2pkVjE3YXh2T0xuVzc3SkRmMExwU1QvMVRHdzArdTVobnhqVDJzZzN0T1A2N3F2T2I2NmNYZS9sOW5QblBXTEdlYW9QbCs1TyszYXh2SFdYcFRyOWN1N2tXbEVZNmVXMjI0M3QzeEVPUXBrb2NuYkc0MmVlUkFBTXcyRnphTW9ZbWFqWmxEVW0waUNnMUhLWmxaUFNhWU93OVdSVnU0NDNET3VxZHRyL3ZwUGxyYXB5ZXFMNWo0TkQ3OHVza3lnaEFIN1hmVTE5ODdCdlRzc21VYXhvR0hWOWEwOVNVVTJVRjVuR1dhNnQxVFZGanJzWnZqdi9xRW50NXBSb0dJYjZZL2VGazJ0OTcvMkZ1K1d0SUFoMHZPZTJCYklrblZ4K2R2YXcyOXZZMFhyaVpzRExQS3d4a2dlRlFONEdnSWtpSmRGc2pkNDBFNmlvcVc5SFhWWEtKcm5HV2Fhc3lEUXVDMlZGOXEwV2ZXdHRRMUhrOXMzNC9QWktYKzV1bkYzdmo5MUQ1d0YzYzNlcnMxdDNwMzBQdHcrVU9ONkF2QjNmNnZ6R1RZLy9KTFo2dnVXMmw5RmorVEljcHZNQUdBYWg3T3dCVDAxOXUrcTZWakdaS0MxVFpWbXV0TXlVRnVsUDM4NmlZYVNYTzI2clJmSWkxN3ZQN3NvaHQxZWZhWFBWYlRsa09TbjErck83cFo4dVdpQlhWYVhYTFo5b0RzTlFLOFlxTVNQdHJtOHV6Ykp2NG5pZjZkODRDNEFnQ0dRakkydHNjNEJxTm9HS212cDJsSk5TYVZrMEoyWHpwaTFDbHVlL1BWVGt6OTFEcHhWU2RWM3J6ZWVUQi9mcG1WYzBqSFMwNjc1SHpMc3p4OHRiTys2WHQ5NmRmMUM1d0lIMVVSZ3BzVTNmckJXYmFHU1NwUzNxaUFhUkFzblJUL20vYy9hYnZiK3hveGRiKzY0dTF4dmZ0eS9PeWt4Wm5tbWNaNXJVODdjUzJOL1ljVFl3Kzk3cDlZVys1cW16Ni8yNTV6YmdwTm55MXRqZDh0Yng3cEh6NWEwdlgyOTBPVWZiWXhORnpRUzdPTkVvVHJSaWpZYURwN1BYRjRhaGJKd29MZHo5clArSXM1LzhMUGRuQ01LeXVtOWZuSlpwMDhMNFg5b1hMMElTV3gwNFhrKzl5MUo5dXZ6czdIcDdHOXRhZGJ4aDJNWHkxb2JqRnNqRlpLSzNEMXplQ3RTc0RDVFdhaVcyc2paUkVpWE9KNUoxb1prTzFwTUFTTXR1LzZETDd1VDhvOU9CMlgvc0h6cGRUNjJtbFY2ZnVWdjZTU0tyd3kyM2V4dDFYVHY5TTNhMXZQWDI3TDBtMDM4dU5ZWUtsVmlqVVpUSTJrU2p1Q253NkdzTDlDUk9KTG1aaFBadm5BVkFYcGFxcTRvaDVJOXdtMzUxOXZDWHBCZWJCODZyRkQ2Y255NjhtK2UvQ1lKQXh3ZEhIWnoyUGRkZDV1NUY2SGp2eVBueTF0bk5sVzdHdHdyRGNMWjBZNXVsbk1qS1JERlZmTjhaMmU0M2dwMytkR1NUUXFPQkgrVlB5NktjVkhyOXlkMWhxRlc3b3Qxbm04NnVKMGszNDF1ZE9SeCtjcmg5NEh6NHlWMDIxa2VIcDMzM251MXF6ZkZzWDBreVVhei8rOGYvbHVGc3ppOGxIdlFwY2hySHFjUE52YWZpNVB5RFNrZlZJb013MUIvN1IwN2Ywc3BKcFRlbjdzb2hWNU5WN2F5NURiam1KT3g3ZDh0YnNkWGh0dHZUdnZmV2t4VWUvZzgwSEVRYURycXRnblFiQUk2KzRqOFZGN2RYdXJwek4wRDYxZTZoODEvZWR4ZnYzUVZjTU5EeDNndm55eER2TDA5YjI2ei9rZU45OTh0YmVCemJjV3RvcC9IVDlZNzNNc2tucFU3T1B6cTczdWJxaHZQRFVCZTNWL3J5MVYwNTVLdTlGODdyeHEvdnZqcGQzanJhY1QvYkZ3OVhsSk5tVkdtUktpdHpaVVhXNmYwNERZQngzdTBmOWxmcXFsWmE1a3J6Vk5ta1VKcW5Db0pRZng0Y09hMklxZXRhcnorZk9Kc2JHZzBqdmRweFd5MVNUQXFuQWJmVnlXbmZTbThjbnZidFlua0xQemFwYXVWbHJqUnZIdmJwYkZhMXF6R1lEK1UwQUtxNlZsRk5GSGU4N2xWWGxkSXlWMTRVU21lSHA5SXlWL0dEVTR2LzUraC9uQjh2UDd1K2NEWXlUNUwrMkR2VXdHRjFWbDNYK3M4bmx3RTMxTXNPeWlGUHpqNHM1RURlUTNTMXZOVjNkVjJycUFxbGVYTkdaMXlrU3ZQc2g4OFNIemwvRW1kNXFuaTA1dVJhMWJSU1VaVE5WNjc3QjMzeDR3ZjlqN3pvb0hsV21tZDZmM25xN0hwZGRFLzhmSE9wdTl6aDhKUGRsODdMSVM5dnZ1aHEzTzcrelRBSVplS216SEp6ZFgxcDJ5SXNpMGxWenQ3b2M0MkxySG11ZUw2cThTdnVBNkRJdGI3Z0FKaE9wOHErZmQzS2xCZUZzaUtmcTgzdXFsM1IzdnJXQXUveTE2cHBwZGNPKzk4bmtYSGVQVEhOTTMxd05CTldrdlkzdHJVMmNsc09XVXdLdmIxWTNHbmYvNTVOUFlwTTB4M1hjWHVIdnFpcmV0WWRONTB0Q1RjdmtGWGxwbGpCSmVjQk1KNXowNk91YXQya1g1dS9sTW5zamI0b0ZscGlGNGFoanZmZEQ1UCtjSEhtdEZMcWVQK2wrOU8rcHc0RExqWTYySEkvMi9mMTZmdEhyL1hHdzBnMnNzMkoyZml2QTFUTXBsNjhiOHMzUmE0MHk1cVh5RjkweDMxcW5BZEFPbWNBVk5PcC90OXB1OU9GWHU0OGQvNTEraWE5MDltMW01RjVrdlJpYTkvNTh0Ykg4MU9sanNvaG0zWVdiamZ2cFdaNTYydjI2LzJiUVRCUUVzZEs0a1NKTlVyaVJDYU9uYy9wN1l1L3V1Tm0zMVlLMGlMVGROcDFQODV1ZGJJRVZOZjFvOSt1bytGQTBUQmFhSnZaNzIyT25tbmJjU1ZGVmJtdEZsbEpWcHozaHI5SnYrcXp5OU8rVy92TzIxbjhhSGtyVUNBYngwcWladm5HMnFZVk9vZWwybkZmNE5HOHplZEtaOHM0OThPTjhIZk9BMkE2blNxZkZIUFZLaWV4YlNVQWh1RlFSeDJNQlh4M3R0aSs2VDh6Q0VQOXVlZDJlYXNKdVBmT3JyZHFWN1RUd2Y3Tmg0dFBXaCt0eVVaV0kyTmtqVkVTV1E1bHRhQVpibFEyZTMxbHFqUXJtcGtYanNaclBoV2RmTi9NaW55dUFCaEZWamU2WGVBZE5mN1lPM0krVFBycTY3VXVIWjcyUGVwZ2VldnQrWHVuQWVlNm5ZWFVMT244cnhmSFRxL1pGK1drVkY3TTN1akxWT084VUpabnZ6M2NDUC9VV1FETUk3RldXdkF6YzNkOVM4OVdIUGVHbjVSNjY3QTMvT2FLKytXdHk2OWZkT1h3dE8vTG5SY3NyeXlwYjJYYmVUWXJzMHlWNVptelZpRjkxRWtBekZzN2E2UEZkdEV6a2RHaDQybGxkVjNyemVtSnFxbWJIKzRvSE9qSThWakFmRkxxWGNzelliKzNzZnBNVzJzYnpxNkh4eXNtemVHcDhleVViRk8remZLTmE1MEV3SGpPbmtBbWloVUV3VUoyOEFNRk90NDdkRDZuNFB5QjFTS0xjcnp2ZG5tcnJtdTkvZnpPM1duZk1OTExiZmY3Ti9pNWNsSTFvMHBucDJTem9xbXZkOVVaRlQvWFNRQVVrMUoxVlN0ODVOaTNNQXhsSTd1UTVuSUhXM3Rhc2FPNVArZDNqSXZVNlduZjNXZmJXbk4wK3ZyZStjMmxibE9IcDMwUERwM3YzK0F2MCtsMGR0cisva0ZmS0MxU2xST3FiM3pXV2RGeFd1WmFtV000ek1qTUh3QXJOdEcrNDNMSTZYU3FONS9lTzZzL05ySFJDOGU5NFYwSDNONzZsdFljdDdQb3MzeFNLaXRTamZOYytleVVMSzNlbDFOM0FaQm5XckZ6QkVCc05NK1F4RUNCam5mZFY0dDh1RHhWV3JycEgzTC9aM1I5MnZmTmFYc0JaNGRHeGhpTlpxZGxiWlFvSG5KNHFnMVZQVkZhRk1xS1ZHblduSkpOeTl6WnNoN2ExMTBBRktta3gxZWt6SHVLOWVYZUN4bkhJOW0ranIvcTlJdkQwNzdidTNPRjdHTjh2RGliKzdTM0pBMEhROW5ZYWhURjN3YUltOWc0UDluYkIvZTl0UDdxWnRsc3lyb3EzVVYzT2d5QU9VdEI1empsdVRGYWQ5NDN2YW9uZW4zbThEQ1VTYlM3dnVQc2VwSjBPNzdUNTk5c1p4RklzbkdpSkc3YUlZeHMwK2hzT0tDVXN3MWwyZlMrR1plNXNuejJzSGYwalJUKzZYQVBZTDRmdXNIZ2NTMGhodUdnazk3d2I4OC9PZXNSM2pTemM3dTgxUVRjenh1OW1TaFNFaVd5WnRib3pCaEZnNGdlOWkyWTFCTmxlZDYwUlNneWpiT21Fc2RWMlRHV1EyY0JVRldWaW5LaU9IcjhMU1RSNzdlRU9ONDdVdVQ0b05EVjdiV3Vicjg0dTk3UjlndkZDejRyOFN2dnpqNStxL2dZaEtGR3hzNGFuRm10R0NzN05JK3Urc0svbTlhelZ1akZyTlN5ekpSbHVZcXE2UHJXc0FRNjNUMUxpMHh4OVBqcWpaR3h1a2tmM2hKaVozMVQ2eXR1eXlITHN0Q2JjM2RMUDg5VzFyV3o3dll3VkZrV0dwbEVXMnNic2pHYnNtMHBKaE9sZWFhc1NKdXVsck9HWjMzdmFJbkg2emdBMHJuYUwvek9SckFkR2gxdHVWLzZlWFAyd2RrYzBHRTRkRDdiVjVLaUtOYmVodHY5aHFmc2ZqYjF1TWlhZGZxaVdhK2ZUS20rd1dKMUdnRDVuTlVpbzk4SWdPT0RJK2RMRUordnozV1RmblYydlQ4NldON0M0OTBQSk1ueXBwUGxlUFptMzZlQkpPaFd0OThBNWh3T0VnMGloUXAvMlJYdytlYStSc1p0T1dTVzV6bzVkemY2Y0dkOTIza3pPenpjcENxYm5qZDVOdXVCa3lrckdVaUNiblVhQU9NOG0yczRUQmlHc25IODB6R1RLemJSL29iNzA3Ni9xb2hacEdaNXkrMXBYL3hZWFZYS0pvWEdXZk0yUHk2YUExUWNub0tQT3QrdHk4dGlya05kaVVuK05RQ0NJTkFmdXkrZGx4bCt2UGlzOFp3ZFQzL0g4WUg3Wm5aOVY5ZTF5bXJTTE50aythd2RRci9teVdMNWRSNEFXWkhQRlFBamsramk5dXFILyt4bzU0VnM3SGI0eVcxMnAwL1haNjFmSnd4REpiSFIxdHFXUnNadE03dSttVlNseHNWL3paUE5VL3BaWXVsMUhnQnBrV2xUeng3OTcvOWJlS3l2ckdsMzNlMXAzMGs5MFp2VHhjLzJOWkhSS0xaTmE0VFlLREhHZVoxL0gxVFRTbGxlS0pzMU44dnlUT004MVlTQkpIaWlPZytBOFp3bmduLzBoajhjREhYY3dXemZremxQKzBiaFFJbWR0VVdJRXRuWUtqR0dtYklMVnRlMXlrbXpLWnVWcWNaRnJpekxtU2VMM3VrOEFQSnN2bCs2WVRoVVBJai9kdkx4MWU0TDU3MWt2dHpkNlBLQnAzMkRJRkFTR1kxc29pUXlzbkh6c0tlZi9lS1ZrMHI1Yk9wVU0yYXcyWlNsK2did0lRQ3FZcTdoTUZKekhxQVlOd0d3dmI2cGpaWDFSZDNlZ3hUbFJLOC8vM2pwNTc1OWNXS2E1WnY3OXNYMHYxbXMrM215ZjNXelRKWGxoY3FhVFZuZzMzUWVBRkl6UUdRMVdYbjB2MitOa2NaTnM3R1huWnoyZmFjd0NMVmlFMW5UTkRsTElpTnJhRi9jaG1KU2FEeDd5RE5QRm5nOEx3SWdMZks1QXVCK0kvaDQ3NVh6MDc3VDZWUi83aC9SdnJnRlZUM1JPTS8vTms4MkxUSm5yVFdBcDg2YkFKaEhFbGtkYkxnZmZpSTE2L2s4L09menQzbXllVDZyd21HZUxOQTJQd0pnN2tvZ28rZWJuSVJkQnZmelpMT3NlWnRQeTB4WlVXaEtWVDNnbkJjQmtHZnpEWGVYcENDa1ZOSW5WVDFSVmhUTk9qM3paQUV2ZVJFQWsybXRzaXdVUlc1UDdXSiswM3FxdkN5VWxrMDN5M1RXRm9GNXNvRC92QWdBU1JvWGhaNFJBRjc3ZnA1c1dtVEtzb3g1c3NBUzh5WUFzam1IdzJCeEpsV3RiRlppbVpYTlBObTBwUG9HZUdxOENZRHhuTE1COFB2cXVsWmVGdC9LSzhkbHBqekxsVE5QRnVnRmJ3SWdjOWcrdVkrS3lVUlprV3FjWjhxTDdGdGJCQUQ5NVU4QWxMbW05WlJxbnBiRXc2SGk0WnJXUjJ0ZDN3cUFuemkvdWREYnM0OU9ydVZOUTVycHRLa21BUUM0NFUwQVNQTWZDQU1BUEp4ZkFmQ1QyYjRBZ01YeUt3RHkrVThFQXdBZXhyTUFZQThBQUZ6eEtnQ0txdENrNHJBUkFMamdWUUJJVWw2d0RBUUFMbmdYQUp3SUJnQTN2QXVBakVvZ0FIREN1d0JJYzc0QkFJQUwzZ1hBaERHQUFPQ0Vkd0V3RGFnQ0FnQVh2QXNBQUlBYkJBQUE5SlIzQVRDZGRuMEhBTkFQM2dXQXBzd0RBQUFYL0F1QWdLOEFBT0NDZHdIQTR4OEEzUEF1QUZnQUFnQTN2QXNBdmdFQWdCdmVCWUE0QndZQVR2Z1hBQ1FBQURqaFhRQk0yUVVBQUNlOEN3Q2Uvd0RnaG44QkFBQnd3cnNBbUU3WkF3QUFGN3dMQUFXc0FRR0FDOTRGd0pSdWNBRGdoSGNCQUFCd3c3c0FDT2dHQ2dCT2VCY0FkQU1GQURlOEN3QWUvd0RnaG44QlVCTUJBT0NDZHdIQVNXQUFjTU83QUdBVEdBRGM4QzRBcG13Q0E0QVQvZ1VBQjhFQXdBbnZBaUNnRlFRQU9PRmRBUEFOQUFEYzhDNEFBQUJ1RUFBQTBGTUVBQUQwRkFFQUFEMUZBQUJBVHhFQUFOQlRYZ1pBWFRNWEdBRGE1bVVBQUFEYTUyVUFjQm9ZQU5yblpRQUFBTnJuWlFEVVlnOEFBTnJtWlFBQUFObzM3UG9HZmlTb0EyblE5VjEwNS96bVFtL1BQblo5RzBBbmR0WTM5V3Izc092YjZBVytBUUJBVDNrWkFPd0FBRUQ3dkF3QUJVUUFBTFROeXdEZ0ZBQUF0TS9MQU5DVUNBQ0F0bmtaQURWVElRR2dkVjRHQUFDZ2ZWNEdRTUFtTUFDMHpzc0FBQUMwejhzQXFLa0RBb0RXZVJrQVloTVlBRnJuWlFBRVUvWUFBS0J0WGdZQUFLQjlYZ1lBNThBQW9IMStCZ0Nid0FEUU9pOERJR0FYR0FCYTUyVUFhRW9BQUVEYnZBd0FudjhBMEQ0L0E2RHJHd0NBSHZBeUFJS0FUV0FBYUp1WEFjQjNBQUJvbjVjQk1DVUFBS0IxZmdZQXozOEFhSjJYQVJCd0ZCZ0FXdWRsQUFBQTJ1ZGxBRXdEMW9BQW9HMStCZ0Nid0FEUU9pOERnRDBBQUdpZmx3RUFBR2lmbHdGQUdTZ0F0TS9QQUdBUEFBQmE1MlVBQkZRQkFVRHJ2QXdBTVJFTUFGcm5hUUFBQU5ybVpRQ3dDUXdBN2ZNMEFPcXVid0VBbmp3dkE0QWRBQUJvbjVjQklDYUNBVURydkF3QXRnQUFvSDErQmdDN3dBRFFPaThESU9BN0FBQzB6c3NBNFBrUEFPM3pNZ0NtMUFFQlFPdjhEQUI2QVFGQTY3d01BTjcvQWFCOVhnWUF2U0FBb0gxZUJnQ1Bmd0JvMzdEckcvaVJhYzluQXUrc2IydG5mYnZyMndEd3hIbjVEWUJ6QUFEUVBpOERnRjFnQUdpZmx3SEFUR0FBYUorZkFkRHpQUUFBY01ITEFPRHhEd0R0OHpJQU9BY0FBTzN6TWdCNC9BTkErL3dNQUhvQkFVRHJ2QXlBZ0YwQUFHaWRsd0hBR2hBQXRNL0xBT0FjQUFDMHo4OEFvQW9JQUZyblpRQUVBWHNBQU5BMkx3TUFBTkErTHdPQVBRQUFhSitmQWNBZUFBQzB6c3NBQUFDMHo4c0FDT2dHQ2dDdDh6SUE2cTV2QUFCNndNc0FFTDJBQUtCMWZnWkFUUUFBUU51OERBRE9nUUZBKzd3TWdKcHVvQURRT2k4RGdJbGdBTkErUHdPQUx3QUEwRG92QXlDZ0ZRUUF0TTdMQUFBQXRNL0xBSmh5RWhnQVd1ZG5BTEFFQkFDdDh6SUFPQWdNQU8zek1nQ1lDZzhBN2ZNeUFLWWNCUWFBMXZrWkFMUURCWURXZVJrQUFac0FBTkE2THdNQUFOQStMd09BbWNBQTBENC9BNEJOWUFCb25aY0JFREFVRWdCYTUyVUFxT1liQUFDMHpjc0FtRklGQkFDdDh6TUF1cjRCQU9nQkx3TkFkQU1GZ05aNUdRQkJ3Q1l3QUxUTnl3Q1lzZ2tNQUszek13RFlCUUNBMW5rWkFBeUZCNEQyZVJrQUFRa0FBSzN6TWdEb0JRUUE3Zk15QVBnQ0FBRHQ4eklBMkFRR2dQWjVHUUFCWmFBQTBEb3ZBNkRtSUJnQXRNN0xBS0FLQ0FEYTUyVUFVQVFFQU8zek1nQVlDZzhBN2ZNeUFHcTZnUUpBNjd3TWdHREtKakFBdE0zTEFHQW9QQUMwejhzQTRQRVBBTzN6TWdCcTlvQUJvSFZlQmdCVlFBRFFQaThEZ0c2Z0FOQStMd01nb0F3VUFGcm5aUURVTEFFQlFPdThEQUI2QVFGQSs3d01BUFlBQUtCOVhnWUFWVUFBMEQ0dkE2RGkrUStncDJxSEt5QitCa0JkZFgwTEFOQ0pTZTJ1RjVxWEFWQVdSZGUzQUFDZEtFcDN6ejh2QXlBdGM5VVYzd0lBOUUrYVo4NnU1V1VBU05MWGZOejFMUUNBVStXa1ZGb1FBUHB5ZDlQMUxRQ0FVOWRqdDg4OWJ3UGc0dWFMS3BhQkFQVEkyZldWMCt0NUd3QlRUWFY2ZmQ3MWJRQ0FFOWQzdDA2WGZ5U1BBMENTVHIrY0t5L3lybThEQUZwVlRTdTlPLy9nL0xwZUI4QjBPdFhyc3hOTm1SQUQ0QW43Y0hHcVlsSTZ2NjdYQVNCSmQxbXFkeGZ1a3hFQVhMaTR1ZFRaOVdVbjEvWStBQ1RwL09aS0p4Y2Z1NzROQUZpb3k5c3ZlblBXM1F0dUlHbHAxbGUyVnAvcDFjNmh3c0ZTNUJZQS9GQmQxenI5Y3FHUFY2ZWQzc2RTQllBazJhSFJxOTNuV2gydGRuMHJBUERic2pMVHU3TVB1azI3UCt5NmRBRndiMzIwcHYzTkhhM1psYTV2QlFCK0tjMHpuZDJjNitMbVdsTlBIcnRMR3dEMzRtR2tqWlYxcmRvVjJjZ29pZ1lLRkNvTVdTWUM0RjVkMTZxbjBxUXFWVXp0NE5ZRUFBQUEra2xFUVZRS2ZVM0h1aDUvVlZxa1hkL2FQeXg5QUFBQUhvZlhaQURvS1FJQUFIcUtBQUNBbmlJQUFLQ25DQUFBNkNrQ0FBQjZpZ0FBZ0o0aUFBQ2dwd2dBQU9ncEFnQUFlb29BQUlDZUlnQUFvS2NJQUFEb0tRSUFBSHFLQUFDQW5pSUFBS0NuQ0FBQTZDa0NBQUI2aWdBQWdKNGlBQUNncHdnQUFPZ3BBZ0FBZW9vQUFJQ2VJZ0FBb0tjSUFBRG9LUUlBQUhxS0FBQ0FuaUlBQUtDbkNBQUE2Q2tDQUFCNmlnQUFnSjRpQUFDZ3B3Z0FBT2dwQWdBQWVvb0FBSUNlSWdBQW9LY0lBQURvS1FJQUFIcUtBQUNBbmlJQUFLQ25DQUFBNkNrQ0FBQjZpZ0FBZ0o0aUFBQ2dwd2dBQU9ncEFnQUFlb29BQUlDZSt2L3hvOG42S2xCbnFBQUFBQUJKUlU1RXJrSmdnZz09XCJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXG4gICAgICAgICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTRcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM1NlwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3NjkuMDYsNDg0LjU3IC0xNC41NCwtMi45NiAtMC42OCwzLjMyIDEwLjU4LDIuMTUgLTAuODgsNC4zNSAtOS44NSwtMi4wMSAtMC42NywzLjMxIDkuODQsMiAtMS4wOCw1LjM0IC0xMC45NiwtMi4yMyAtMC42NywzLjMxIDE0LjkxLDMuMDMgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzU4XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc0MS41NSw0NzkuNzEgLTEzLjY1LC0xLjM1IC0wLjM0LDMuMzcgOS42NCwwLjk1IC0wLjQ3LDQuNzEgLTguMzEsLTAuODIgLTAuMzQsMy4zNyA4LjMyLDAuODIgLTAuODQsOC40NyA0LjAyLDAuMzkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzYwXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcxNS4yMSw0NzcuOTMgaCAtNC4wNCBsIC0wLjAxLDE2LjQ4IGggLTEwLjA1IHYgMy4zNyBoIDE0LjA5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2MlwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2ODguODMsNDc4LjQgLTE0Ljc3LDEuNSAwLjM0LDMuMzcgMTAuNzUsLTEuMDkgMC40NSw0LjQxIC0xMCwxLjAyIDAuMzQsMy4zNSAxMCwtMS4wMSAwLjU1LDUuNDIgLTExLjEzLDEuMTMgMC4zNCwzLjM1IDE1LjE1LC0xLjU0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2NFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2NTIuNSw0ODMuMzkgYyAtMi4zOSwwLjUxIC00LjE4LDEuNjMgLTUuMzgsMy4zNiAtMC43MSwxLjAzIC0xLjEyLDIuMzcgLTEuMjMsNC4wMyBsIDQuMTEsMC4xIGMgMC4wMSwtMS4wNiAwLjMyLC0xLjk2IDAuOTMsLTIuNzEgMC42MSwtMC43NCAxLjQ0LC0xLjIyIDIuNDksLTEuNDUgMS40NSwtMC4zMSAyLjc0LC0wLjA0IDMuODcsMC44MSAxLjEyLDAuODUgMS45MywyLjQ0IDIuNDMsNC43NyAwLjUzLDIuNDggMC40Niw0LjM0IC0wLjIxLDUuNTggLTAuNjcsMS4yNCAtMS43MSwyLjAxIC0zLjEzLDIuMzEgLTEuMDYsMC4yMiAtMi4wMywwLjA4IC0yLjkzLC0wLjQyIC0wLjksLTAuNTEgLTEuNjYsLTEuNDQgLTIuMywtMi44MSBsIC0zLjU3LDIuMDMgYyAxLjA0LDIuMDEgMi4zNSwzLjM5IDMuOTQsNC4xNCAxLjU5LDAuNzUgMy40MywwLjkgNS41MywwLjQ1IDIuNiwtMC41NiA0LjU1LC0xLjkgNS44NSwtNC4wMyAxLjI5LC0yLjEzIDEuNjEsLTQuNzQgMC45NiwtNy44MiAtMC43LC0zLjI2IC0yLjA4LC01LjYxIC00LjE0LC03LjA1IC0yLjA3LC0xLjQ1IC00LjQ3LC0xLjg4IC03LjIyLC0xLjI5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2NlwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2MzMuNzQsNDg4LjM4IC0xNS4xMiw0LjkzIDEuMDUsMy4yMiA1LjYzLC0xLjgzIDUuMTYsMTUuOCAzLjg0LC0xLjI1IC01LjE2LC0xNS44MSA1LjY1LC0xLjg0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDc0MFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA1NzkuMDYsNzA4LjYgYyAwLDY3LjMgNTguMDgsMTIxLjg2IDEyOS43MiwxMjEuODYgNzEuNjQsMCAxMjkuNzIsLTU0LjU2IDEyOS43MiwtMTIxLjg2IDAsLTY3LjMgLTU4LjA4LC0xMjEuODYgLTEyOS43MiwtMTIxLjg2IC03MS42NCwwIC0xMjkuNzIsNTQuNTYgLTEyOS43MiwxMjEuODYgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNzQyXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJub25lXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgICBzdHJva2VXaWR0aDogMi4wNCxcbiAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA6IFwiYnV0dFwiLFxuICAgICAgICAgICAgc3Ryb2tlTGluZWpvaW46IFwicm91bmRcIixcbiAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ6IDEwLFxuICAgICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiBcIm5vbmVcIixcbiAgICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDEsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA1NzkuMDYsNzA4LjYgYyAwLDY3LjMgNTguMDgsMTIxLjg2IDEyOS43MiwxMjEuODYgNzEuNjQsMCAxMjkuNzIsLTU0LjU2IDEyOS43MiwtMTIxLjg2IDAsLTY3LjMgLTU4LjA4LC0xMjEuODYgLTEyOS43MiwtMTIxLjg2IC03MS42NCwwIC0xMjkuNzIsNTQuNTYgLTEyOS43MiwxMjEuODYgelwiXG4gICAgICAgIC8+XG4gICAgey8qICAgICA8ZyBpZD1cImc3NDRcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NTApXCIgaWQ9XCJnNzQ2XCI+XG4gICAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJtYXRyaXgoMjQ4LjY0LDAsMCwyMTQuNTYsNTkyLjU2LDYwOC4wNClcIiBpZD1cImc3NTJcIj5cbiAgICAgICAgICAgICAgPGltYWdlXG4gICAgICAgICAgICAgICAgaWQ9XCJpbWFnZTc1OFwiXG4gICAgICAgICAgICAgICAgbWFzaz1cInVybCgjbWFzazc1NClcIlxuICAgICAgICAgICAgICAgIHhsaW5rSHJlZj1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBcklBQUFKVUNBWUFBQURwWk1VZkFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUlBQkpSRUZVZUp6czNWbVFMTmQ5NS9mdk9TY3phK251MjNjSEx2YU5KQWdRSUVBU0FFbUF3bkNUcUNFbGNiUk5hS3daZXlMc043LzR5UzkrY0lRZnh2UGdDTWM0WWh5eXJCZzVwTkRZMGdSRkN1SUdpaUN4N3lBSUVMekVSdXpBQmU3ZTNiWGtjczdmRDVsWmxWVmQzWDBYQVBmV3ZmOFBJcEhkbGJWa1ZkZXQrdFcvVHY2UEFRU2xsRkpLS2FYbWpEM1RPNkNVVWtvcHBkU3AwQ0NybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNUZaM29IbERvZFp0UFBZbUhHYWJZNlhkZnZ4MXBPNi9KakJwQVBmVDNyK2FHVVVtcWVhSkJWYzh0Z2lVMkNGNkVPcldWQUVRQzY3Uzc5WVgvcVVsYlg3K002blBiMW1ORnZweGFIWmRQdEVaWmd3R0VJQnF6UVdBZTg1R0JBQXVPVU80TnpycnkvSVNBaUdPTnd6aEZDSUlUSlFHeU13Umd6T3YvR05FZ3JwZFRwMnVTbFc2bXpXeGxrWTBTa0NoVUZRUUpscFZCdzFqRU9DenFLNW9QZ1JSQURScGk1dHBnTnQ1Y3NZS2NDNW9tdUF5YklwdWREd2laQk4yQXNTTFV2TXVPVjBMazZrSUpNbk1GaWpCa0YzSW5IeE9kVDUzMC9iQlRWbFZMcS9LWkJWczAxVTYvTjVCUFptTm5CUkwxL3hHeDluczJ2WVB6alJrSDRoTmZNSGtKZ3plelRrZkc2eVZxTHRYWlVWUzJLWXJTdFdWMjExdUtjSTgvejBlL0dHRVJrZGhWMm84ZHFJdEJ2WnFNZ3EyRldLWFYrMHlDcjVscmNzaFErSUFHaUdJb0NySVZ1TjJGdE5jT3VMNWlwOTVISTZRWGFyZUxiaVg0WTJiZ2l2UDcwd0xnaUhFY2RKRmhFWkJSQ1JjSm9lRW9wWUl6QjJ2SDVKaXV1NjhPa2k4QTVTNVp0RW1xbFdqWjlGTFo2aERUTUtxWE9ieHBrMWZ3eWdJdkx0Qk5DV1lZRkVNRWxDVDRiY3FZUGhqcW4xK1owcjRjVENIS2JhUVM0VXpuaUN3dkVRUFBUVHZseWFMRVlJM2p4azdjekZScWRyUjhIRVBHamtHdHMrWFNjS001T0IvNU5nK3hHajBuelN1cXg0UnBrbFZMbkx3MnlhbzVGUUp1b3U0MmkzNGNvd2tVdC9IQlFsc1I4Z1paa1AyQWlHMzl0WG0vZjFCWWhWallMYVhVcTNlVGE0M2hVUFJXUnlRR3hBcEZOeW1xdENQVi81UmpyOG5aajU4aDlqakFPdE00NG9pakNXc01nN1kxT3Q2WThLRXdrNEVPT2lDOXZhM29YVDdvaXU3N0x3NWdHV2FYVStVMkRySnBqSGE2NzRjdDg4NXYvQ3U4Rjd6M3RkcGVWbFJVNjdRV0tvaUNLcGhwem1LazNmZEdEd0U2Vm1Pa0RvR2FjWjZzZ0cwN3Y4dFdoV0J0dXovTjhJc2cyRjB1ZzN6dU96ektHd3lHOS9pcTlYbzllYjVYQm9FZFJGTHo5emx2a2VVNmVweFFocXdKdWZYdUJkaHlUNVVOQ2RickY0cHdsaEtMc2lFQmdYZVYwdXFpNnFSTUpza29wZGY3UzlsdHFqam1Lb3N0SFB2WlpGcnBMcks3MldGeGNvdDhiMHVsMFNOTjg2cWp5T2toVTY0a1FleFo4VlQrSGF4R0RtSUFSTzNOTjJIaDdlWG5adEI2NWVmc3FxaUM4OFhtc0xhOTlPc1NLQ0FiQmhBR1dvbXFYRmFxMVlPejRlcjNQU2JNQmcwR2YxZFZWRGg4NXlNR0RCMWxkUGM3cnIvMmFJMGNPY2ZEZ1FYclphbmtKRCtWTGE4UTR3RGJDN0tqS3ZORyt6eHJLb0lGVkthVm0wU0NyNWxoRUNBbHh0SU0wTlNUSkR2TE00VnlMRUJJTUhnbFQzK3NhbWZxNnVoNnJlVHFIekovZmEwRXdZZ2dTc0dMd2xPdGdCSWZkY0R0R1JnZGZiV1NyUHF6TkVEd3hoR0IwK1UyMlMwRkVncVdvdWhpRWNpMGU4YUg2d0NNWVdyU1RMcTE0Tzl1M3dTVVhmYVI2TGdXTUJJd1ZpcUpnYlcyRmQ5ODl3R3V2djhMcnI3L0trU09IZVBHbFgrRkRqcGVjUU1Ga2VDMkFuQ3I1VHJEVzBtcTF5TEpoRmJ6RHFKSTdVYVRlb0tKYkRuMndaRm0yeWVPbmxGTHpUNE9zbW12QlFEQzJlbk8zR0dNSkdBS09nTUdzRzZBWW1EenFwNHBDb3o1ZXVqNlZkZG16MVV5dWdWQlBETERCZGd1WVRhUHNabU5nM1dRUHJjMGF3czdjSG9FNHlnTytHSC9BRVYrR1dHa09CNUR5OUhvN2dBbmtXZGtaSTRvVzJMVmpPN3QyWE1LMUg3c1o3M05DS0dpMVk5NTc3d0F2di93U0wvLzZSZDU4ODNVT0hIaWJROGNPRVVpQkZNaXJjYmZsYzlHSG5NSm5EQVlaRTZPL0JJd0Y1eHJITlliR2N4Z3d4aEJDbUdnYnBwUlM1eklOc21xT0JUQTVZZ2RsQ3lpSmdCaXhnaGlEMkRCK3h4K2R2L2xWYnhVQ2RKenNLWnVNbVRLMVp1cnhuOTRlcHMrOWpreVBhWjY0N2VsdE0yNS9zKzBDUWt5UXFQclZWMnRiblNXTSszUkpHQjI4VlZkMHJRUTY3UVZFeXRtOUN1K3JqZ1dDTlMyY2cvNWFuMjU3RHpkK1lqZWYvdFFkR0dQbzk5YzRkT2dReDQ2L3h5T1AvWlMzMzNtVjE5NTRqVFF2SzdhT05vbnI0RU5HcXhWVCtJd3NId0FCQ1FFL2NiZUZ1cUpiVDlCZ3pHYmhYeW1semkwYVpOVWNDMkF5c0NrRXkrZ3djR1BCNUdVSW1RNnlTQ1BNVW9aZnMvNnJYWFVxVGpiSXdwWmpQemNKc3VzdmY1SkJsbWp5cktNUE5QV0p0akVNeFRTMmg2cXFMT1NaeDVoeUxLeUlROFJUNUw2Y3VsWUtkdTNhVng0bzVzdXYrSzJGeFc2WDVNSmxkdS9heDdVZit3VEdlbFpYVjNqK2hmMDg4Y1JqdlBEaWZsWUhSekU0K3NPOHZHM2FnTWNnV0FzK0ZOUmplcHNCdTFtSmRjN2h2VDYzbFZMbk5nMnlhbzdWMWFnQ1REMGRiWG5RRHFZKzBLWVJUa1lCTmt3RkpLM0luaktaOVV2enhDMHFzbHNGMWMyMkM5VTQxYzF1ZitQOU0xQis2Qm05REk2cnIrdlp4bmFoRHJsRkxqaG5jUzdHdVhKV01FeW9KbGJ3SERtOHl2Z2dzbkoveTFuQkZsanNMdEh1UkJ3N2RoaEh6QzJmK2lwZitlSTNXVjA3eGkvM1A4UHpML3lDeHg5L21HSGFvejlZSWZkRHlxcHNnU0ZDeUhIV0VFUm16a1NtbEZMbkF3Mnk2aHhTanJnY0R4ZW9BZ2RRVnRIc09GZEo0ekk2dE9COWNySkI5blJOdDZVNjJZcHMvWE94eWZicHkwOTJ1bWgzRnNxdiszMU9ubWVqZzlQcTNCcThwZDFwMDJrdllCMFVSVUdXWlhqdjhZV3d1dEtuMWRyTzltMTdDQ0hqOE1FK1FTSStlczNOZk9LNlQvTkhmL0NudlBqU2ZoNTcvRUdlZWZabkhEajRKZ0ZIYkJ4SlcrZ05qbEJYcGVNNEpvcWlVWmpkc3VPRFVrcWRBelRJcWpsbUtBLzRpU0c0OG1lUzhvaDZpY3RoQTFLMTM2cU9RRWZDK3FFRjZyVFlVYUZ5ZmRlQTVuak5tZHUzYU9odnRncGpwM093VjFYUmxXcUdzc21KRTlaL3VCbFBsbEN1alpRSFpoR3FkbDdWR0ZYbkhOYVcxZGwyVzhqempHUEhqcE5sS1NFRWtpU2gwK21VSWRpbjRCMGVNS1pGN0ZvSUdTSXBlZXJ4WWNoVlYxelBkUisva1NBWmI3L3pCazgrK1NnUFBIZy9ieHg0Z1U1N2djSHdHRkQyekcyMm15dUhIYnhmSHhxVVV1cnNwTy9pYXI2SnBheVN1U3FVdXVvMFY0WFc2UXZZOFhGZW84dXFVMlVuY3RJcFZHU2Jmd3NUVG5odHBlNW5TelVVd0ZiZEJCcnI2YjYzamUybXVwNUEzY2UyUGdDdzdtSXhGYUNyWUd1cUdHdVFjdGlzQ0xZS3NDQ0VJQlJGanZlQkVEenRkZ2VBSkVsb3QxdFlXODc4VlJTZWxaVVY0cWlMTHd4NVZpQjRqQW00eUJGRlhheng1TGtsN2ZmcHIvVnhrYkI5OFNLK2RPYzMrTnl0WDJTWUh1ZS8vUDFmOHVaYnYrYkFlKytVZStiQlVJNmZKWURCVGs3aU1QM3ZvZXIyc2JueFk5SHM5eUdOaGdwS0tYV21hSkJWODIyaUM0RnRMTlUyQTVQZENtcU5JUWZxbE0ycStEV1A3d3BoczRPTlFobUdUTjI5d0FPQzFFRlR5cG15eG0yeHh1dXloVzA1Rm5YVUc5Z0lKc2prNzlLY2pHQzh0cFFoVnNUZ3EzUW5BbGJNVkovV3lRNEw5ZkdEVnNxV1lpS0Nwd3pJVWdkbEswU203SkVWUXRuS3kyQUp2aUI0UHpwZjVBQVo0bHpaVXF1ZUZsZkU0L05RUGFNZGlWMEExeTJydmtVNWljUml2STNGZUMvL3czLzN2M0Q0eURzODgrelBlZWloQi9qVkc4L2hLTXJ4czNpRWdtQnlNRms5SzI4WndLc1E2cXpCKzNwSURyU1NUam5zd1JlTngyeDgveTNsL2JZeXVWVXBwYzRVRGJKcXptMFFSSnRIbUp1cUVYMWQwV3VXcGJZOEtsNXRicXNvYzRJSGM1a3crcXAvMVBxSzlXc2o0OStOTUc2UHRkRjZxZ3BzUmFwc0txTXdPbkZBNEFhYWxlZjZaeXZncS8yM01yVy9abW85ZFQvcTg0dHRCSDBaNzJ1OVI2Yisxa0RLN1ZhYUh4NENxMGZYMkxOOE5iLzV4V3U0OVZOMzhzcnJML0xjTDUvbXNTY2Y0cjJWTjBoTVRDcmw4ejVPeXJDY1YwT0NkKzVzMFZzTk9CdVhsV1Jma0dZRHdHS0FKRXJJaXBUbUl6VDlXQ2lsMUptbVFWWXBwZWFVTlRGcENyYnd0SklsUG5yTkRWeDZ5ZVY4OHNhYmVQdTlOL2pMLy94bkxDUzd5WXNlV2RZamtKTWtGdThMamg1S3k2cXY5Y1J4REtadTMyVVJJQzN5NmlOZnFPWlFteDV1OFNIZldhV1Vta0dEckZKS3pTVkxLMW5BZTg5d21DSVNTRG94eTlzdVpIRnhtVXN1dVlKUDNYd3IzLy9CZDdqdndYdVFOS2JkaVZnYnJPRXBjRVlvWkloSUlNdFNSQ0NLd1RsRGx2b1p4OHcxeDVUWEEyUTNQMWhQS2FVK2FCcGtsVkpxTGxrTUNVbHNTWkl1VUJEd1pNT01ZUm9ZcG9KTll2N3RmLzNmOC92LzRrKzQ2N3ZmNFVmLzlIMEVpREVZVTJBamd6QWt6ejBZS0Fvb0NvOXpFRUkxMm1FMDFLTTZtSElVYUFPUW8wRldLWFVtYVpCVlNxazVKV0xJY3lHRWdxTElFT3VKSXN0Q2R6dkwyM2FRaFNHdnYzWVFLUGo2MS82STJ6LzdSUjU2NUVFZXVQOStEdmJlSUFTRFZMMlhyWUZRamQzMUhsb3RTRlBHeFZjQzR5RHJadStRVWtwOXlEVElLcVhVbkNxbm9DMTcxclphTGJ4NGdoUU0ram1ZZ2loeTdGeTZnTUlQeVljWmUzWmN4dTkrL1ZLdXUrWlRQUG56aDNqODJYczR0dklPZVJnU0dRTlJRWllOUjlYWnlYWmRvZW9jVVl4L1YwcXBNMHlEckZKS3pTbGpCTzhMUkh3NUVZT3pHQnpHbE4wWjhxd2M2K3BjbTloRkRQc0ZJUVF1dWZoS0xydnNNajc2OGF1NS8rRWY4N05uSHlYM09kWWJyQkdDcEdVYnRicHA3T2pudk9yWFBOMk5RU21semd3TnNrcXBFekpyWmk3YktObk4ycjZWazVsR1ZhcEdxQlBYYnpmZlByMS9NclY5c21Ycyt1MW1hbnR6UFgzN0crNXpkVVBOeTQ4bkdaTjE1eFdSY2RPd01QbFlUajYwQVU4QVYrNW5vTUQ0OG5SRE9iT1hxUWE3K3VETHlSdHdHR09yU2U0TUg3bnlacTY1K2pwdS9jVVgrTWZ2ZjR1M0R2MGFKR0xid2pMOTRjcW96MjBjTzRaRFh6MGdCYVp1NzZ1ZEM1UlNaNWdHV2FXVW1sdkY1Sy9yWnJLRDhZRlo0NDFHZ0JBVG13aWt6YWR2dklQTEwvc0lEejcwVC96NHA5K24xenNHSkd4YjZMTGFPOExRZTR5QkpJR3NxRUtzenV5bGxEb0xhSkJWU3FtNUZOWlA2REVWTEUyemhOdVlHOEtLSlFEdGVJSCtzRWVlWlZ5NDQzSisvK3YvRmRkOTdIcnUvdEZkUFBQeWsvUjdLWllPUVZLUVFKWldzNEtOYm1EOWJTcWwxSWRKZzZ4U1NzMjFqWkxrK3ZLc0ZUc2F3bURGY3VUZ0VYYnMySUhRWXVYWU1ib0xDVGQ5NHZNc0xXem5vc2N1NC80SDdtWWdLNVJWM1pRZ3hlaGFYUXhGL2tIY0g2V1VPbkVhWkpWU2FxN05IRTlBR1Q3cjBGcU92VFZpR3dOdExkc1hGekMrd0RqTFVudVJQRTA1TmxqamdsMVg4TWUvZndWWFhIb1Y5ei84SS9hLzhqUUJ3MExMa21ZckJLbUdCMnMxVmlsMWhtbVFWVXFwdVdSQk5qbmFUTVpCdGxRSDNuRzRYZDYyeU9IRGh4a09oeXh1VzJMYndqYjZ3NFEwN1RQMGdkcytjeWU3ZHUxaDkwTjdlT3pKK3hpazVkaFpaM044SmpxeVFDbDF4bW1RVlVxcE9SVk1HV1J0WS93clZKRlY3R2lNckJFYWcxdWxPbi9nd0R0djBPMTI2TzVZSWk4Q2E4ZDdZQTNPdENteWxBeTQ5cHFiV0Y1ZXBydXd3Qk5QM2N1eHRZT0VNQUF5dFAyV1V1cE0yNko1akZKS3pXWUV3a2JmYW4rSSszQ2k3SXp6V3BsY1lOdzIxY3k0bkpIeDByejhxYktOZFhPcGIydDZQNW5hdHY3MnEwdlByTlN1RDUzYmQrN0FXa3VhWjNqdmlhS0lLSXBvUlRIZDlnS1dpRVB2SG1WN2R5Ly84dmYvRy83NFgveGJkblF2QlpaWVRpN0V6cXFGbUJuTEJwdVZVdXAwYVVWV3FmUFlWa0Z3b21mcXVQbHB1UUpFL1BwNFpOWi9RalpUZlZRYlo1MnBEbWZpMTRldjVoZmtkZS9ZMFg1Sll6K25yMzlxLzZuMmY2UGJudDdYNmVzM01ua0UvOFQ5VzljOVlLTDUxZWpuNE12ZXJETGo4VEVDMXBqeGJVMXRGOEEwdWhhVXR5dUllSVQxbGRyeWNtVS8yZnBlOTdPeWo1WTFEcXdoNE1lOWEzM0FHR0VoV1NRTUMzd3czSExkbDlpM2ZCVjMzLzBESG5uaEp4aGlsaFlUVnRmNkFIUVcyZ3lHUXdoZzQ1aVExMGVEMmVxZWx6L1ZReElDUVljbUtLVk9pMVprbFZJZnV0T3RaTUxKVmZTMk91OVdWZGxtRmJZK2YzMzY2WnBWZVcxZWYzUDd4RDdOdkxibWpGdU54Y3hlQkl0Z0NkaUpTOVQvRnhFa2dIaUR6eHhXMmx5NCt5cnV1UFczK0ozYi80ZzJYZnByUXd5V0pHa3o2SmNodHJ1MFJBaStzYk1iZnlCUlNxblRvUlZacFpSU00xbHJzZGJpZ2FJb1NGTklrb1Nycjc2YVBSZDNHY1lIK1BFRC84aXdHT0o4Qk9JQlQ3OC9CQjhtcDdkdDFPNUZheWhLcWZlSnZwb29wWlNhS1lTQU1RYm5ITlphaXFJZ3l6SkVoRmF5d0plLzhOdjg4VGYvTlRzNmU4bTlZU0hlUnJ1MUFNV01VcldwaHhPTUZ4MVdvSlE2WFJwa2xWSkt6VlFVQlVWUklDSTQ1NGpqR0d0dEdXNU5UT0syY2VkbmY0dXYvK1lmMG1HWlBQZkV0SWxNVkkwbm5ycENNejVaUTZ4UzZ2MmdRVllwcGRSTWNSeGpqQ0dFUUFpaEhETmJMV0N4dnNOd0xlTDJXNy9Ndi9tVC81YnRyYjJrYVk0VlJ5dnVqaFByOU9EZUdXTm1sVkxxVkdpUVZVb3BOWk56RGxOMVRoQ1IwZENDb2lqQU96ckpNcjJqR1IyM3pHOTg5aXQ4NHplL3lmYldic0RnZ3NGUjk3Q3RybkFpMEFZOTRrc3BkZHIwWUMrbGxGSXpaVmtHZ0xNVzV4d2laV1hXWW5BdW9yZVNzbWZIcGZTT0hZWFZqQzk4L3Nzc2JldnluZS8rSFc4ZmV4VkRqQ1hITjROc3ZkYXhCVXFwOTRFR1dhWE9ZeE45VWo4QUlaUmZJWjlJbTZwWmZWak5SdHZyMHhwWFhGOXVZdnNXbDkvbzlrZDV5N3gvSmNPSjY1OE9kaHVvSDcrdHJuUDA4L1Q5bjlFVGQvTHhxWHZyVG02dlQyOVdZOHQ5S1ljVkJCR0M5M1NTQmZDV2JyTE1zRmdsN3czNDJKWFg4OVU3ZS96d0ozZHhZT1VOeWs2MVFxZVQwQitVL1dhSkk4aUx6ZSs4VWtxZEFCMWFvSlJTNnBTRUlsQmtCYjR3R085d3BzMzJwYjNjZU4ybitmcFhmNCtFUlhZdVhJQWpadERQYWJVV3dWcklDMXlTbk9uZFYwcWRBelRJS3FXVU9pWEdWRlhqSUJnVDRWTW9Vc3VPYlJkdzQzVzM4T1hQLzNPNnlVNHNMU3dKNlRBdjV6VTJCcDluWjNyM2xWTG5BQjFhb0pSUzZ1U1pBTllqaGNlWW1NUzE2QTh6K2lzNU5oR1FEdC80N1QrazN4OXkvUGdxZWVneG9FY1FJV25IcE1PaGpwTlZTcDAyRGJKS0thVk9nV0NzcDVBVWl4QkhYZHJKQWxtUjRnU01pVmhNRXI3MjFXOVNTT0Robjk5TFRBdFBJQjJrR0tNNVZpbDErblJvZ1ZKS3FWT1N0Qnd1Q29SUTRFTk84T0JJY0xaTFJJZkQ3NjF5NGU1THVmUDJyM0R0NWRjVENBZ1FXY2NIZkp5aFV1bzhvVUZXS2FYVUtRaUk5ZUFDMXBVOVp2TTh4M3NJQlJTNXhkTGgrSkVlbDE5eURiLzE1YTl4Nlo3TEFlZ2tMVzBocTVSNlgyaVFWV3FlaWQxa2lUWlk3SGpONlMxV29wbExmVnNtbE11NmZhQmNyRVNqNnhsZm42MjJ6MWhQN2I4SkRzUmdxbVhjY1g5cWtRMFd3SjVDWlRCTXBiQzZuWmFSOGM5V3hrdHoyNG0wSXB0bFZ2QnJYdGYwOVo3SS9acmVuL292dS9WZWxPdCt2MS8ybGJXV0tMTFl5T0dpaUNpS3NOYlM3UzRTdVRiWklPZnFLejdHNy96V045bWU3Q1liZW5ZczdNUmdUMkZTaE9aelVDbDF2dE14c2tyTks3RVlxZC9NNnpSZ0o3YlBaRUs1elFSTThPT3piOUZuMVZTMzBjd2RwbkVic3k1dnhXMTZGMElJWUF3aXR1eFpLcllNTjFnZ0lHS0FBRmhFREZLdHdXSWtZR3daeEt6TXZ2Mnd5ZmZYaGdLOFJ5aW1Ub2Y2Y1d6MmNTMzd0TnJSVitLR1VPMXpLQzlUOTUrdHp6RFYwOVdFK3ZUR2FjMCt0WFgvM09iMjVuNkZ5ZnRYaHVsR3o5MFoxeis2YlBONko3YVAvLzZ6YnIvZWc0bUxRL2szTU9VSENtY2ppZ0JGeU1GRkJEeTU5NGdOREFZcGkwdHRqcS8xaUlManhvOStocTk4N2dEZnUvY3VCcjBCRU5QcXhxVDlOVnhrOFVYNWVDOHNKUFI2amE0R28xMnFueHZOR1JWMHVsdWx6bWNhWkpXYVZ5WlFoenlnQ3E1MU1ESFY5dWt3R3hxWHBVbzQ5Zm44MURwc3NTNnZ6NDRDamt5czY5M1k5QzRRcW9Ua3E4cGd2Zi8xT2pSK2w4bTFBU3ZTbU9xMHZ0MkphUkEydm5HcEg3K1RZTXBKQVJDTEdIQ055emNmNldaVnRya25FOU8xd2dsWEk2MnN2eWRXeHBYaDZlMG5XdVEwSi9oUVRaajRnRlEvSDVxM0dDWXExbGxXa0VRSnZoZ1NyT05UTjN5T1k0Zld1UCs1ZTdBVTVIa0dsQ0UyYVRteXpOUHJaU1FKWkp0MjZOTEJDVW9wRGJKS3piRnFqT0lvVEoxQU5iYkpCQ1NNZzZ5SW4xaHZGV1N0VUJYRzZpQzljVVZ3by8wdncrUW1KcWVtbWpxdERKWGpPSE9TUWJZdTZzMDhTNzFmczY1THFndzFIZURVV1BrOFNaS0VmbitWN2tLQ2RVS1c5Ym5zc2l2NC9PZSt3UDVmUDhlYmcxVkNOdjVnWk1SaThBaVFKQzJ5TE4za052Um9NYVdVQmxtbDVwZ0F4Ymk2T3VFRXh3K2Via1cyRHJPalg1cnJFN245cmFZcDNTQklUdHoyZE9nODBZcXNyY2JWam9jeWpOZGIwYSt6dDJaSmtwalZ0ZU5JTUNTdERvUEJnTFhWbEF2Mlhzdy8vKzNmNVMrKzlSL3hlTFl0TGJLeWVwUTA5U1JKUkpZWERBYU5FRnQvNkRDaCtwTnVQbVJGS1hYKzBOSHlTczJ0S29UTk90QnJTM1o4MlZOZWw4SXBMcU43SWFlMmpHeDZ3TnNtQzQwUU8zMy8xaTFxSTViSkE5dWFTNUVXTExTV3dCdDhKclJjbTdUbm9YQjgrcE8zY3R0Tm44Y1FrL1lMMnZFaUJvdDRXMzZjbVA2TW84VnZwZFFNV3BGVmFtNVprTGp4Kytpb244MHZOaEYwNndOOERPQ20xckxwT2hqQjFWV3k1dTJmYUVWVzZuM1piSDgzcnNoYW9heW8xZ2V2NFNmWEpwVDcyemk0cmJtMmdEUVBscXZEYmZQeHFjZmdsdWZlWkovT1Q2UGhKWFY1ZlBTM0tCL0Rmci9IOHZJeS9jRUtnOVVCeTh2YlNKS013YUJISkJHLy9adS93OHV2dnNoN3g5NGhDZ2FMby9BZVp4MWUvTVkzZko0LzdrcXBNUTJ5U3MwcnNVQThEbDUxb0p3WW96cGovR3l6dEZVZjZZNkZlbXpzYUIyMlh0ZEh1amR2OXlUR3lKb1FObTBUMVR6cWYyWlhCV093WWVNeHZzMnVCN1BYWVlQVG16dXgyUmhnMmZxRHczbk0yb2lpS0pEZ2NMWUZPSnh0WTQwbkhRNjRlTTlsM1BuNUwvRzk3LzBEQStuUk1ndWswaU9FZ0xOUWJCcG1sVkpLdnpOVGFyNVYxUzlUZlYxZWZ1VnVxblVZZC8yc2k3VlY3OVR4MS9QbDVXMzE4OG1zVDZYLzZ2cDlQM1VHUnZ0VE90VTFqTVByUnNGLzFuSisyN3dmYnQxR2E0RmViMEFJZ1lXRkpmTE1zN3JhdzVpSWRyeklzWU5yM0g3TG5Wei9rVTlpaURIaU1FVGpGbWl6YnNOTS82MlVVdWN6cmNncU5jZjZ2UlYyNzk2Rnp3dUdlVW9vY25BUVdVTVVPNG8wUTB6QWlLM2FQOVhyS29pTnFweFF0elMxcGdxSnB0d3cyUUovTXNMNTROZDlHajZaaUdlTkwxdHdiVUFhWFEzcS9XdTJYaTM3dWxiM29kSCtxejdOV2x0ZGp6QzdQKzc0eW93eFdGdGVuL2VlRU1xajdvdWlLS3VLSWxnYllVeDlub0pPcDBXYURmRGVZNHdaWGRZWlM2dlZ3dnQ4L1MwMjdvQVAwOVhmNmZzLy92dk1xa2lQN3ZNRzI4ZlhzOEhsdythZlJqYXZpSmZQamZKRGxLbE9sL0p2Vm4yUXluMmduYlFBeU5PeWwxYnNFaEFvaGpsT0V2eGd5Si84NFoveTlMOTdtb0tVQmJmSW1qOVdWZGFWVW1wekdtU1ZtbE9HZ2lzdTM4VzdCdzdnbkNHSndNUkNuQmdHZ3o2K0NMallqbzd2ZGxVRjFJME9jcXFiNkcvODFidll6YithRnlsTHUwWU1NbU1kaWpEemRGT050VFZWdjlpNkorcjAyaG1aZWZxb2Q2MlltUUc3TmdwZm9Sd0dNVEZCZ2JHSWxNSFVHSU14aGhETStENVpRNi9mSjRvUzRpVEM0QWdoSUJKd3p0RnFkVWlIQTR3MXROdHQ0ampHZTg5Z01NRG5CV21hRXBseitFdXYwZmptNlRBY0dtM1pObWdOWndKR0REYkU3TnkxblRmZmZwV3YzLzROdnZ2Z2QwaDlEa1FUSDJMVzA2cXNVcXFrUVZhcGVXVnlubi9oQ2Y3OC8vcmZ5ZkloUlRGRUNHemIxbVYxN1JoSkVrMVY1NW9ITTFWQmRzTXhvaWM2eGhSZzR5QkxZT01nYTRUSWwwSGFWTWVSbmN3YW9Kd1lyQm91VVlYUjV1KzdkdTBpU1JJV0Z4Zlp2bjA3TzNic1lNZU9IU3d0TGRGdUxkR0tkeUxCVW5paEtBcDhJVGdYMFdxMWFDVnRnbmlzelRHMjZoa3JVQlE1MmFDczByYWo4bUE3YXkzT3VXcWZBbkVjRTBVUlBsdGZrVDNueUt5UEVHSHlrOFhNZ3dJdDFqdmFkcEZJRXI3OHhkL2k2Vjg4eGV2SFh5RW1KcVB4MkptcGl5cWxWRVdEckZMenloUmNmUEVpTDd6d0NFV2VnaDhBZ21rNUpPdVgvN3FMdW9kUlkxeW9HTXFOZFlpdER6MC9sZlZXKzdqSlFBT0JpU2xTWjExOGk0RUt6ZWtReGxQb2prOExNeXAycHZvUFluWnN1NFFMOTE3TzFWZGZ6UlZYWE1uZXZSZXliV2s3TGw3QStKU2w1UzY5WG8rMWZncGlhYmM3ZEJjN2RNVGlpNWlsOWpKNTdzbnpITzg5SWxJT01RaENsbVZWOWZ0ODFYanNUVDJEMi9pRFVEa2JXY0xha1FIYnU3dG9kV1B1dlAyTC9QWDNYaU55Q2FrZk1QbUJTU21sMXRNZ3E5U2NzZ2pXWmhURHcrQXNyZ1UrN3hOSENWbmVLNE5pczI5OGRTQllHV1pkZFVLeGVkbXpucnhxb3d5N1dWQ0Z6VHNZbkVBV1Bwa0MzSWsyL3lvZkJvTWg1dWpLcXh4ZWVaM25YbnFRK3JGcFIxMHUybmNKdTNkZHdQWFhmNUxMTDd1U0s2KzhobmFydytwcWo4TkhEeEhITVF2ZDdSeGZPWUtFc3ZMdG5DT0tJb3d4RkZsZUJsbDNici9FR3JHTllSNWxCd2ZaNEM4Z1ZhczNvUnhEYTRDV2FUTmNIZERkM3FWMzdCZzMzbmd6Vno1MVB5OGQyUC9oM1FtbDFGdzd0MTlsbFRxbkJRalZGTFcrS1B0dWhvS3NtaEhKT0pDY3ljQW9RdGxuZGFwdDFIUnJxUk5wb1dXMlBwOHhHOWR6WWV2UXVWVk9ab3RkNkhSaVJJUVFRclhVNXhkQ3lJQU1ZeHh4MU1JWWkvZENWdlI1NVkwanZQcEd6R05QMzRzaFp0ZnlIbTY4NFdadXUrMXpYSFhWTlVRTzFucUhXWWoyWXFvV1UxbVdrZWM1Y1J6anJLWGRiaFB5cldZdU81ZE4vMkZrWEptdCtzM0dMa0VjWklPTkdWcXJBQUFnQUVsRVFWUVViNFRPNGlKM2ZPNE8zdnoyeTZ4Si80enN0Vkpxdm1pUVZXcHVXZHB4RjBpSURCUmhTQmx1SVk0TkllVDQ2VEtsUVBuUHZoNHJXd1l0STFYQVBKbTFiRDN3d0dJM0hlTXFXM3h0dkZXT0RXSXdVMzBUbXVPQ0IvM20wSVh4K2F5MVdPY1JJNGg0TXQ4ZlB6Nmo0QjhERVpGcnM3TDJMdmM4OEkvYzg4RDNhVWRkYnZuTWJkeHcvVzE4NHByYjJiYTB3TUxDQW1tYTB1djF5b084ck1PNTgyRmdRZjJZVHY4ZG15RzJPVGEyT2NZYXdKQzRtS0ZQU1ZvSmFkcmpZeCs5bG11dnZZNG45ajlTbjBVcHBUYWtRVmFwZVNXR28wZFdBSXV4RnVNajR0aVE1UU9NTWZpc1BsOTlnZlZIMEJ0ak1OWDN2QWJXcmV2UXlxeDFmUjJqQThlbVQ2L21XNmpDNzdyMWlkekZMWWNlakNQek9DQUpCZ2NtRUxrRXdSTThCQ2xHNXl1N1hzbm8rTGVhZFkxcWNjaXhCbksvUnZsU2FiRTRmQWc4OU1pUGVlQ1IrOWkzNHk1dXV2RTJicjMxczF4ODhhVzRsc041TUVhdzFWaloyWDFycThkbzR2NU5oY0hSdU5LeVU0TmcxblZ2T0IzbUpQNE9wdm83QWxNWENoTmRKRFpXemJnMklSQWtwL0NCVnJ2RlFIS1FtTVh1Ym02Ni9oYWUzdjgwQlFFSnFiYnVWVXB0U0lPc1VuTXNXZWdBa1BzaEdFK1dENm93bTAyOTc5dEcvZ2lqWVFWeUVtRm1ZMmZ5WUp3dzQrZFFCZVpBWHFTczc3TFFIRkxCeEFNUVBGTVBTRTV6ZXRvQWhGR0N0THg5OUFuZXZ2Y3A3cjczTDducHBzL3doZHUvd3JVZitRVGRaRHY1TUVPQ0pjL0FtWVNGaFNVaUd6RWNaR1JaaGpFR0Y3blJkWS9HbUlyVXR6VFJFRURLanh5VW8xRHQ2RlBCS0VRMmhvV3NtNnhBSnJmWEp6V0hselQ3eEk0cTV0VnBSbWIzRVE2TXIyczBCcmJ4NmFQNUVVZWttcWlqdWxOQ3dMdVV0ZFhqTEhkMjBrNlc2Qjh2Mk5iZHhsVVgzc0MxRjk3SUN3ZCtqcldPWWVqVGFqdUdxY2ZHanBETEJzRmFLWFcrMFNDcjFKd0tadW85M0FTUXVtL3I5TGtiWHdHYlJtdWtjeVlFVElmVUUxeWYwUDJ2dXp2TVlNcnh5SVgwZWVMcG4vTGNMNS9tbXF1dTUvWmJ2c2dObi9nTTI3cDdXVnJxNG5QRDJ1b3FSZVpwSlYwNnJWWTFkcmVncm4wTEVHUlc1YkllN3hBUVl5Y3EydTRVLzM2am9McEZsWE82MGpyOXZCcGx5WG9zOU16OTJYaEtEZWVFcUdYeEV2QURUOGdNcGtqWXVYUUJuNzd4Tmw0NThDdnlrQkpoeURJLzNpbFRWZUtEZGpWUTZueW5RVllwcFU2VGRZN2dBNE5zbFdkLzlTVHZ2bm1BaHg5K21ELytneitsRTI5anFidURUbmVKYUxGTkNKQ2xHVVZSRUVYamwrQ05oMUhVRTFnMHptQk9Kb2lmdmJ6M0pFa3luaEhOR1h4UjBHbTF1T0g2RzNuNGlVdDQ5Y2l2U09JMi9YeFFEdTArM1RFVlNxbHp5ams4N1l4U1NuMncycDBPMXNZRVg0NUpLQ2VZeURtNDloYS9lT2x4L3VkLy96L3kyTS91SmRnZWcvUUl4MWJld1VVRm5hNWhNRnhsWGJXMzJVa0MyMWpXbTEzOW5DOXBtbzZtRVhiTzBlbDB5UE9jWHE5SHQ3UElUWi84REk0WUoyWGdkOVlnaFIrbmZxUFZXS1hPZHhwa2xWTHFGQTBIR2NGWFgzV2JnSkFDS1RDa0hYbUVGZjdMZC8rU2YvZnYveWVlZi9sbnRMcHc0T0RySERqNE92c3UyUVdtcU1KWW1CbGlqZGh5Zk9xNlpaUGhEbk1rWUJCakNWVWJ1VmFTWUlLUURqSkNJVngvN1hYczNYWWhhVkZnaWVpMHV0WGREaGluYjE5S0tRMnlTaWwxaXV4b2tLa3hoaVJ4SkltalBFQnNRTDg0U3V3S0xBUGVQdm84LytILy9sLzV6My8zRjhTdGdrc3UyODI3NzcwSnB1b0RiQW8yRHFiVFZkbjVEN0MxSkVrQUtJcHl5bC92UGM1WWtpUWhjUWs3dCsvaHFzcy9paUhHNERDbW5CSVlZVlRKVlVxZDMvU1ZRQ21sVHRHT25idHdVWXlFZ2l3ZGtPWERjWVdWbk13ZnA5M3hkTnVXUUk5N0h2MCsvK2VmLzIvYzk5RGRkSmNzWWpMRTVvanhpQW5sUXQwRndKYTlmcVhSLzFhMkduQXdaNHpCaHpBS3BYazZCS0FUdFNDQWxZUlBYdjhwV25TeHhJVGNqeDRQWDJRYlhxMVM2dnloQjNzcHBkUXBPbnJreU9objV3ekdDa1YxY0wyeDVUQ0EzbUFWV0tVYmIyZVFEOWovMnRPa1B4cFNGQVdmdnZrTG1GQjNKVEFnVVhuQlVYaXQxblVEM29uSkJSak5rRFdmRE40SFJDQ09Ja0lROGpURE9vTVJTekh3bU1UeTBhdXZaMGQzTDhQK0VKLzVzc2REMmNSaDdnOTJVMHFkdm5sOUJWUktxYk9LOTBKUnowaHJ5dU9SUEdXYnRBRDA4eFdFRkNIbDViZjI4MmQvL1IvNHlVKy9oMmVBdUpSZ01td3M5QWFyR0N1MDIyMUVwT3JyS3BnZ285OEo1VkwvL2tFdFRmVnA0K2wrdy90eS9jWVl2UGVFNElsaUJ6N2dNMDlrRTJ5SVNVeWJyMzdwYXhoaUFnR0xKWTRNT2tHQ1VnbzB5Q3FsMVB0am8yQlZGVnNEZ1lBbmtFTVZhSDk0ejEzODlkLzhPYTAyZExxVzR5dUh1UFN5ZllSUThPNjc3ekE1SHZhY0dWQXdrNkhadDlaaXhZS1BLRkxZczNNZmkyd3JaMnhEeDhjcXBjYjAxVUFwcFU1WlBhSTF6RHgxWWpFZ0ZPV1V1UlFFVW83MDN1S1JuLzJFdi9uYi84VGE4Q2k3ZGkveXpvSFhpZU9JYmN1TGpTdXM1c2lxdWhhY095L2NrL09FUVJoM1pnZ1JCRWN4aEl2M1hzWmwrNjdBa21Bd2lQYzZyRUFwQlp4THI0ZEtLZldoQ2t6MGdXMU9tVHJyNTVFeXpBb1pzZk1FZXZ6dzNtL3o0NTk4RHlGbE1GeWxQMWhoMjdiRjZRdXVNOCs5Wk1XTW91dlVER01CS3dZckJoTXNSbUlXTzl2NXlEVWZSeEFjTVhuT3FOS3RsRHEvYVpCVlNxbFRaQWpWSkFpVm1hWFlpUXRVUzBIWjFXQVZUdzlMd2JlLyszZDg3KzY3dU9TU2ZSUSs1ZURCOXhvZEVNYVZXQ3ZqdGwvemIvSXR5QkN3MUFIZFlrSkViRnZrbVhETlZSOGxKcVlkSjFnZzBuY3ZwUlFhWkpWUzZuM1VhSTRsbHJJeHpQbzJXc0JvM0t3MU9hMld4VFBrQnovOExvOCsrVEI3OXV6Q2g1eFJpSzB2MDJ6RjFmai91Y2hJT1U0MnRqRnBQK09DdlJlemI5ZkZaM3EzbEZKbm1YUDNWVkFwcFQ1VWRZaDFRRHkxT01iaGxsRmxOb29oN2xqNjZYRTZTY1JxZHBTLytxdS81S1dYZjhYeTh0S0d0M1N1MUdNM1ZzVjBHeUZpS1BMQVFtZVJqMy8wT3JJOHgxb0k1ODY4RUVxcDA2QkJWaW1sUG16VmtJTzhnRUUva0xRakJ0bHhoQUZIaDIveU4zLzdGeFNzSVRZRmt5R042V3ZONk1DdmFsYXh4dFZhYVI3NS84RTdtVEc2bTUxM3RHMnFjbTJNSVlTQU14R1JjVnh4eGRVSWhuYmNRY0o4anhGV1NyMC9OTWdxTmNmeVBJZW9uTmZFdUxJMVVaRUwycDNvd3pFNUJMWWV6K29wcDZsdExuNjh2VEYyTm81YUNKYkJNTVBGZ2NBS25pTWM2Yi9NWC8zZC80RnA5MGxsbFdHK1JxRHF2U29XSzY0Y00rdkwvckwxd2diTGRQL1dRTG1JRDZPbFBxK1JSaUNldWg0ajQyVzZwKzMwZGlNYjc4L28vSTE5TThFZ1lpYjIwemtoejFNV2w3b2NQWEtjS3k2Nm1vdVdyeVJMTFJFeCtoYW1sTkpYQWFXVWV0K0VxYVdZK3IzSmxrZmZWNzFSQTc1czBXVnkzajM2R3M4OS94Uy8rT1hqZExxT3FHWEo4NVNvK3RCaXJSMzFVaDIxcS9xUXE1TW44K2F4MmI1VjkyTGQ2V0xLQ1JmcXFxd0JuSXU0WVBjbEdGcEVkRTV5TDVSUzV5SjlGVkJLcVRQRU5PcTVVeE5wY2VqWWU5eDMzMDlaVzFzbGlpdytwQVFURUR6RmFBcXhjNSsxRnU4OWlDV0tFcTY4OGtvc0JxdHZYMG9wTk1ncXBkUVo0NXdqY3E0S2ErVnB4b0NwS3BTL2VQNFhQUDdVb3dnRmNUc2h6WG9ZQjhOOFFEZ0hqbmFxNjdCR3lxbDhvVnpYWTRLRGFRUlp3R0s0L0pMTEFGdE5WNnVVT3QvcDY0QlNTcDBoaGM4Sm9md0t2U1lDeGxvTVFrSEdmZmZmdzlGajc5THBPdkk4STQ0ZDN2dHpwNVhzaFBYaDNCaURlSEE0OExCcngyNlc3TGFxbG4xT1BnaEtxWk9nUVZZcHBjNmdJQUhuSExiT1pBSSs1QVFDZ1lJM0RyL0MvdWVmWTVEMnNMRWdMaEMzWW95Wjd4QlhqNXMxVXYrdkRyR0JldHBmRVQrNm44WllRb0JXM09YaUN5N0ZFbjM0TzYyVU91dG9rRlZLcVRNaWpHWUdFeEdpS0NLT0RlTjhHb2dRSU9lUngrN2x6YmRlSVc1Ymh0bUFwSk9RbjhQalpJT3BscXBhYmJBNDU4QmJUSUFyTHIwY1c0MlVWVXFkMy9SVlFDbWx6cEE0Y2tEQWUwK1dGUlM1akE3NnNpYmdTYkVFZnZYR0wzamo3WmVJV29hMXdTcHhrcEQ1ZktLLzdQd0xpQTBUMC9LR0VFWmpnWjJKcXVFRmpndDI3YU5GNnd6dXExTHFiS0ZCVnFrNU1lb0JXcjI1bndzSCs1enY4aUlIUmhOOWpUc1htRUFRajVBVFNJbncvUER1ZjJTdGQ1Uk9wOFZxZjVXazNacDRMb3o2dWpaTTk0K2RYbWFkZDlaMWZtQ0xMNURnQ2FFWW56YWVqeGVzR2JYZktvcUFFVXZJQTFkZGVoVTVCZm9XcHBUU1Z3R2xsRG9ibVFMd0NCazVBL3JaS2krOHRCK2N4OWoxUWZUY1VGVmpHNVhtc3Blc3c0akY0b2hkaXlUcXNOM3UwamN3cFpTK0RpaWwxSmxrTi9tdHJNaG1CSEo2K1RFZWYrSVJBZ1VZZytmY0NiSldKdSs1MUMyNHFra1JIUFdrQ0JHUmFkR0t1dXpiZXlINkZxYVUwbGNCcFpRNlEyYS9BRGRPTldDTUJ6SUNLYy91ZjVyK1lBMGM1MkJGdHU1V01PNWdZSzBkemU2RkY2eFlSQXdPeTk0OUY1M0puVlZLblNVMHlDcWwxTm5LQUVhd1JqQkFQNnp5NWp1dkUwSTk5ZTE4czVUVldCb1RJRFFYWXd3aWdyVVJ3VU1JSUVVZ0ZNS2UzYnZQNkw0cnBjNE9HbVNWVXVxc01WbU5oYkkrYVZ6QVJXV2w4cm45enpISUJtRE5hRGFzYzhQc0NuTVpaS3ZLcklCVWdYYlg4aTZkRGtFcHBVRldLYVhPV3RVcnRBOWhWSVY5NXBsbjZQZjdXSHV1djN5SFVSY0ZaeXhHTEE2THcyREZzcnk4SFozWlN5bWxVNk1vZFk0d2JGVFRtckg5WEJ0ZU9hZldEdzRJRTZmV2Z6TVJLTVFUNFhodjVVMkcrUXBpOTJKTzhDWGMxRU5QWWZKdlB5TUgycE40YmxoT2Q0QkRjMFl2MDdodEMySUpVclVCTXdHY1IySmZ0ZWtxYUMyMkVQeldUL3daSmk0eW1sRnRxdzhHOHorVVE2bHprUVpacGM0Z3M4VWI4S3hlc2ZYN3JnVTJtNlYwK20wNU1OMnI5SVIyVVgyQVpPS3ZWTGVlR20wc2Z4VVFzUmpqOEpJQmdjZCs5bE11L1oyTElHMkRLU2NHcUEvK3FyK0NiNTVtWkh5MXpUKzdoTVlUc0g1aU5FNmJlSXFJakZNMVZQMWVaWHllcWUxTnBubDZZM3VvSmord2dBUUgySW04bUNReHFSbVNoUjZ0SmN1aDFYZG9MVVI0TWw1Ni9YazgrYmdKYi8yWU5kZXo3Z2ZqQUQ3dVdXdkIyTVlKOWQrbDNwbDZQdDJwZjQvNmdWQ3BNKzVjLzI1S3FmUFNyS3BhL1k5ZDgrdlp3azR0TXdnWU05NGVLQkE4N3gxK2c4eXZiZmxKeU1ya2M4SEk1REp0cXc5V3AzcmUyUnJWWnludm94RURZckZTVm1UZmZmZGRkdS9aamlmbjNTTnZzZU9pWlpKdGpnY2V2NWUvKy9iL2QxbzFVcWtEOExwL0VIYURuNVZTWnlPdHlDcWwxRm1xV1hFM3hwU1RYV0Y1NDgzWFNkTjB6aWRwdGFPUWJjUlcxVndMU0JsUVRXRFhuaDMwaG12MGg2c3NMbmRJOHdGUC9PeGhIbnowUG5waERUQ1RWZEVOaGdlVVp4bkgzbENmT0JwalVHMHpGa1NIRUNnMVQvVGpwbEpLbmFWRXFnQkx2UmFjTXh3NmVvaCtmNDM1SDdkWlY1dWJpVDJBOFlqeGRKWmF2SHY0SFpMRmlPNXltL3NlL0RIZitmNjNPRjRjb1dXVDhySVNqWmZSOVRuV1Y3d3RaZTNHSXRWNkZHWU5qSWQyMUFPS20rTVU1djF4VnVyY3BVRldLYVhPVWlMMU9OZUFNZFhhbHV2ang0K2Q0YjA3ZlViTWFEZ0JZaEViRUNPSUNRUmI4TTdCTjFuYTBjWEVCWTg4Zmo4L3Z2ZHVlcXhpZ1g3b01RNnR6Y1V3RHNlTnhkaXBkYlVUemN4S0FPb2V2ZlVFRFJwaWxUcWJhWkJWU3FrenJoR1d0aGg3V2hRNUVIanY0SUVQZEk4K2VPTUFXLzVhQnNkUWhkaGdjNUt1STFtMFBQTEVBM3pyKzMvTEtrZUpqREJrRFJrRnpsbGpqQnVQWnowZ3VENlFTOHprdU5oWmc4WkhCM1ZwaUZYcWJLZEJWaW1sem1MMTBJSVFBdGFBbDV4V0hQSE9PMjl4TGdTdDhadFEzYWFoRExIQjVuaVg4c2dURC9ERG4zeVhBYXRFUnNnWTRNbnBkSk5xTk8zMFVwZFlQUmhmWFdmWStDaTM2Wk5HRmRyNmNvMUZLWFhXMFlPOWxGTHFqS2lEa1cyczY2UDRLYi85YmxRTFEvQlZCd05vdFdLT0hEbjBJZTNuQjZzK3NFdW9LckZtSEdLZmVlNHB2dnVqNzNEY0g2WVR4d3hEbjl3UEVXQ3R2MHI1RmxhSDEvcmF3dnFLNjhTQlhZMnhzWXhEN0tobFdiUEpiT044U3Ftemt3WlpwYzRTelQ2ZzZueXlRYVZQd0ZpTDl4NWpITTQ2Q2w4QWhqVHJjZkRRdStXc1Y1VFBtZko4QnVjY0JLRW9DaUxUcUhkV2ZWNmJ6eTlwaExTWjI5bHF1MnkrZmRRN2R2WWRORmJvOS90MEY5dEVzZVhZMmlwSjE1RXo0TVdYOS9QL2Z2K3Y4YVFJT2F0NXYydy9OdEVJdDhBMFBnQUlUQVJQNThDUEh0NEFPSEFHaW5KZjY5RzBjV1FJeHBMbmZoeG9tdy9DckJaZHpXNEhTcWt6Um9jV0tLWFVXYW9lVmlBaTVTeFdWZlV4QkUrV3BRaCtyai80ckt5dGNNRkZ1MGo5Z05mZStqVUx5MjJpTGp6MjFFUGM5Y08vSDRWWVQxSDEwSzFNQk12bWVOako2dzhlbklYRnhUYXhjL1VVYVZqamFFVWRPbkVIZ0x3UWZPN0x2Z1l1d2ptemRTRldLN1ZLblJXMElxdVVVbWZNaVZiMFF0V0tTeEFKK0pBekdQUW1abjVyaGw3VCtQM3NGZWdzeFJ6ckhXRlk5TmkxYndja0JZOC85VEEvZWZCSEhNMFBqa0lzK1BJaTB6TjRWVzFrVFQwVVkrb1dZbHVHMmNIcUVMQWt4SFRiMjhoelQxcWtlQUtHbUU3U0JpRE5CbmdmQ0RwbGwxSnpReXV5U2lsMWxwcittcjRNcDRFUUNnYnBnQkJDNC9UNUVrd2diam5lT2ZRVzdXMFJ5N3NYZU9peCsvaUhIM3lMby9sQkxBRlBUaUFubk1SWCtQVnNaazdLRUl0QVFreEVoQ0ZpTUV3cFBEaGl0cmQyazlBbHpRb0dXVWJBa05nV3NZbUJFeWk2enQvRHJ0UTVSeXV5U2lsMWxsb2ZaTWUvZTNLODk0Z3JUelBHaklMdFhCUVVUV0Jsc01LT0M3WlJtSXdmLy9SZTdycjcyL1Jab2VVY1BkOGZEeWVZR0JlN3ZqQTdxc3JXVjAwOS9ZSERZeEFpTGxqZXg4N2x2ZlJXVW80Y1d5Rmx3Rm82UkRBNFdrUkFRVTRlQ2dDc2lRaFNiTER2ek1kanJOUjVRSU9zVWtxZHBhYkh2MDcrR2dqQkk3YXN5RTRPTFRDaktXM1BWZ0pFTFVQU3RUencwQVBjOWFOdk02QkhaQXc5djdiK3dLNzZRaVBOTHhUTHdRQ1QweUZZV3RFQ2FaRURNUisvNWdadXYvV0xXQ0tlMy84U0wvNzZSWDc1K2pONE1rRHc1S05MQzJIYzRhRCtXYXV2U3AyVk5NZ3FwZFJaWTNaamYyUHFXYjVvbENObFhJR2RSMFpJaTVRbkgzMlNIOTk3TnlsOUZwSTJnMktWSUo0b2R1U0ZuNmgrMW5mZEV0V1B6T2lVVXJPbG1TTXRQUHUyWDhwdG43cURhejk2QXp1VzlpSWg0dVpQN09iNjYyN2luNlZmNUdmUFBzWmpUenhLUHhTQVphSFZKZmREMHFLL3ljNXJ0d0tsemhZYVpKV2FVL1ZidUttK1NiWXlmbnNOQm9Kc1BBaGV2eG1kSDJXMVZTWkNyREhnWlBaZnQreHdjSUxYM1pqdzZrVE9PM1ZMakNZTkVGdE9OUXZWMmxiN1VoNmtGYXJwZGNYVWt4YUF0eWt2L2ZvNWZuRHZQM0kwTzBTRTRYaDJGS0hBR292M3hmaG1adDQrbEpNZTBLaWVPaXdXUzRURDRZajV4TldmNXBQWGZvWk9za1R2VUlxelFpdFpJSW9TSVBEVjI3L0c1ejkxQnkrOHNKL0hubnFFdDQ2OVJnQmFMRkF3eE9NSkJFUTI2azlySi9hVHFiT1V4c0ZYLzkwcDlmN1NJS3ZVR1JSQ3dFNVZteWFHQTI1U2JSTXI0OWszcDdlWmNnbWJ2R3ZPdXB3Nit4aGpzTlpNZENnWXRXY1ZLZi9JellWRzBYYnFDV0FhMjBKOStkRkEwN0xid2NUNGhlYkZ3K2hHeTVYMUNPVjB1VVljVklzSkRxUjhhMmwxRmpoNCtEMTI3bHJDdFMzdnZQY0duYVdFT0RIODdMbEgrWC8rNFQvaVNRSEk2OVppZ0pXQWlLMzJkWDMxY3pUc29CcExrQ1FSSVFVS2FORm1nZTFrRlB6Qm5mK1N5eTY4Z3AzdVFpZ2luUE9BaGN6aWg0SGxaQ2Y1eWdBbk1iZDg1UE44OHNxYmVmWDFYL1BFTTQveXEzZC9pU0hDa2hMSWlTSUQxalBNOC9LaHFHOGZXMzBhTUNBT3k3aDhidkNOQnpHc3V6ZjY3MCtwMDZkQlZxa3p5SjdtTzlsV2wyOTBLWnE4SE9VYnFsWm16MzRpUWhpRlNFWi96STJPNURmR1lEQmJEam13akpwYWJXbldoNTZ5NVZVQUNSaGM5YTJBTFFPb0dNVEE4ZU9yWEh6SlBvNnNIdUxnNisrdzUrSWQyRGpuL29kK3dqMFAvWkNjRkRFcFZOWGw4ZlBVemhoa01YVi82OEt2aFd4WVlEenNTSGFUWndHUDhJMWJmNCtyTHZvSXk5MGQyQ3dteXdxQ055UkpqTEVPR3d4Ukp0aWloWmdZNXlJV1c5dElMdXV5WTJrM042M2N3bU5QUDh6aDR3YzRuTCtMTDNJRVg0Mi9CU0x3TmlsL0M1UXpMMGlvOHI3RklJM0pHc1pESHhyenR5bWwzZ2NhWkpWUzZxeXhQdUtJeU9SQlhvMVpBYXkxWjdEMWxpMHJzYmdxaU5ZTFNEVU9vTlYyRExNK3c2ekg4cTRGa3JiaGtTY2U1VWYzZkovajRYQjVOVE9HU0d6V2JxczU0MWFuRXpOWXl6RWVPcTdMTUJ2U1laRTdicmlkV3o5OUMyMjdoSldFSXZQa2VZNnhTZlY0bGVPTGZRREVJUmlLUWpBaXRKTWxMdDNYNXFLTEwrV2lpeTVtLzh2UDh2Tm5uK1RObGRjSk9BSUZFQ2h5QVlxcDhUdjFSNE15N25wa0lweXZIOHVya1ZhcDA2VkJWaW1semxMR1RGWlc2NE8rU2hacjNlZzg5Zm5xYmdYMXhBZ2ZLS25mUXV4VUlBMEVHM0N4Y1BEb095eHM3OUJhakhua2lmdjVoeDk4aTVWd21OaEFKbHNIT1NITS91WkF3QThFNDZGbDJvaUhEZ3ZjK1prdjhSdTNmaEVUSXJJc3h3cUlOemdiWTZNeStCZmVVeFFGaG5Jb2dDVWlGSUU4THdqREhHOERJU3JZc2JDWHozN3lEajUyOWNkNS91WDkvUHpaSjNscjVYVUNnaUZIR09KRFB2NUFZY3IrQ1NLK21zSFdWUHRkVjV6ck1ySkR3NnhTN3c4TnNrb3BkWlpxQnRseDViWDhQYWFGYzQ1Nk10VjZZb1J5YU1HSFFBeTJVWTBWRVlJQnNlVUJYV0k4eHdjcjdOeTlqYjQveGovOTlENys2YjRmY0x3NGhLR29RdXhrMkpaWm9hNE83ek5hY1lVTXRzZTdTUE9VaEE1ZnZlTnIzSGJqNTNEQllZS2h5RHl4amJFMndtQUlJaFJGUmtDd3Rqd2tER3cxRGxtSVRZSkhLRUpCNWxQOHdPTmFIZllzWGNLMjYzZHk2UVZYOHVLTEwvQ0xYejdMUWY4V2hvSkF3QVRBV1lJVHZIZ0tYKzJ2YlF3SkVZdGdNVVNNQi9Xa2FKQlY2dlJva0ZWS3FUbFFUM2dBRnVjY25hUlRWZ0psNi9Hd0g0eXFDbHRYWWtYQUJNUVVZRHplRmlRUm1IYk9vL2MveUYzMy9EMFpxOFRPTXZRcFlhc1J1dE1kQXRadGp1aXlqU0lYRWpyOHMwOTltVnR2K0N6ZFpJbDB0Y0JoYVNjdHJJa1JNUlErNElOSFJIQnhSSkpFT084UTc4a0xqekVPNThyRk9JTU5EaGRaVmxhTzBrLzdkSmZhZlB5eUc3bnFnbzl3OGE0citPVUxUL0g4MjAvUzR3Z2VqL2VDOTBYNWNKakdBaENxamdmQlRiU2sxVEhxU3AwK0RiSktLWFhHek80Yld4c0hWSXN4YnZSejVCSzZuVVdzdGFOaG1jMktMTlZRZ3crOE5pdFJkV0NYVU81SXFFSnNqdGlNbkFFL2VlQmVmbnovRDhsWXBaM0VETU1hbmh6bkRNRWJMSGIyZ1Z4VHMzbU5meTRmTTRkandTNVJCT0gyVDN5ZU8yLzdFcEZFcEtzRlMrMGxodjBjRnlYbGJvbFpOMmxFMmFhc0hPOXFFWUxQS1h5T0dJTXhEakhRVyt1eHZMaWRYY3Q3R0F4NkhIMzdPR0lDMTExeFBUZDkvSHErOTlNMkI0Njh4cXZ2dmthUE5jQ1FoeHpqSm9ZeVYwZFhCaWJIMEdvbFZxbjNnd1pacFpRNnk1WERCUngxMndKckhVblN3dURXamFQOXNOVjlhSU10aHhONFd5QTJ3N3VVbDE5NW51Lzkweit3R283UWFTV3NwTWNRQ2xwZFJ6b29KNDlkRitZM0NyR2pBOHBNMWZrcVpoZ0t2bkhMNzNMcnAyL0JTb3dKaHNnNGh2MmNkcXRMTnNpcmdPK0lvZ2puSEY0Q1JWR1EreFFRWXV0b3hURVNETjZYQjRFWkExaExxN3VBRWZEOUZGc0lpNjBGb2lnaXk0WWNYejNPNzMzbEQ5ai95aS9vL3Z3Sm5uOWpQOGM0aW1ESmZBNTJSdDlaVTRDTXV4ak1IRXFobERvcEdtU1YrcERVWWFNWk9xTEdFZWV6dG05MmVVTW9xei9WZFJSRjFVRGVWTVVmTlNjMnFNNFpSaE1odE50dEJvT1VkcXZETU0wd3hPemRleUhBcUw5czgzbGdaWHpRVjYyZUtLSDUvSm9vZE03WVBnNlJzNTZmQWc3Ni9RRUxpeTFpWnpqYVc2SFZOV1RTNTRXWGZzbC8rdGFmRWNnSnBLeWthMlVGMUVJNjlDZjJ2WHExdlJVdkVJcEFDSUhJSkNSUkM1OExmL3lsZjhYbGU2K2tiWmNJUWNqem9wd1F3Y1JrZy9JZ3JIb0loQytFWUh4NW9KWXhXR014a2hNa0VISmZqb3dRVzFhemd5Mlh4djRaQVlwQWthZFlESXV0UlZZUDUxeTE3M291M0hNRlY3NzBEQS8rN0FIZVdIc1ZZVURjaXVtbEsrT1dhWWF5VWx1MTZZb2lTMTdvUDFTbFRwY0dXYVdVT2lPYTdaaGdJc3hPalFnb3c2cXBQcUJZOHR5emM4ZnVEM3dQdDdLeWRweUxMOW5Ib1NQdjhlNjdiM0h4cFJjZ1NjcDk5ei9JQTQvOWRCUmlQVVVaWW1jT0RpM3Y5N3JxNUdoR3I1Z3N5N0JFYkV1MjA4OEdoTnp3alR0K2gwdjNYY0hPN201aTI2RUlCZGdJNXlLc1dES2ZNV3R1dTlFTVlhYWVsU3hVczNOVk8xVUZUek1SWXBzZk5xcTFXR0k2U0dwb1I0NlBYMzB6MjVaMzh0eXZuK0hwRjU3ZzJPQXdpV2tqdHNCVEVEeFlCMUViUWdHRmhsaWwzaGNhWkpWUzZpeFZWd1RycXFzdkJHZGljaC9ZdCs5aU5wNkUrRVBZTnhQb0xyVTQxanZDMFBmWWRlRU9KRWw1OUtrSCtjbURQK0pvOWw0anhQckdkR09OWmNNckwxZnRaSkUwVFhFa3RPa3d5SElTT3Z6R3pYZHkrMmQrZ3lSZElKRXVlZXJMVmxzMndqbExDT0M5WU0zazQyT2JOMXNGMW1ES21jVEFJTmp4bEwwbWpNSnN1YnZqd0cycVNRK2lxTVZnbUNKV1dGeGM1dU5YM2NDTzVlMHN0THY4OHVWbmVlUDRLOVYrR0l3TFpONlQrWEk0UmhSRGtXL3hPQ2lsdG5UbVhnV1ZVa3BWR2kvRmpXcnN1aUFySG12TGxsSDEwSUl6UjRoYWhnTUgzNlM5NUZqZTNlYkJ4LzUvOXQ3czJaTHJ1dFA3OXBDWlo3cER6YWdxRklZcUZFQUF4RHdTQUFHQ2s0SlVLNnpvYUVYTFZydmJFUjBkWVQ4b1duYUVIL3hraC84QVAxaU9hQS95MUcyM3V5VlJJaWsySjVFaXdCa2dBSUlFQ1FFRVFJeUZtcXZ1ZEliTTNIc3ZQK3pNTTl5aENxZ0NWVlZRZmhXbjh0NlQ1K1I4N3ZubDJtdjkxcE44Nld0ZjRHeHhESVhEVThZMnRtcXo2R09NU01kQ3IycitURzZzeGhVT2phVkZHMUNrdEhqc3prL3lxVWMrUzBvSDVST2NDeFI1d0pYZ3lrRHc0S3ZDdDNNemNWd0lhbjEwdk43RFN0aXFVQW5jU3N4cUFRTGVlMFFVdmd6a2F6bjVzbU11M2M0OU45M0g3Mzc2SDNIajlsdm9zSUNSRk8wU1dpWWRpM2pkV0JZME5Id2dOQkhaaG9hR2hzc1lheTNlUVMzOHZCZFMwMkt1TjM5cE4wd0ZWZ2NyTE83dTRkV0liejN4YmI3OGpiOWd3RmtTb3huNHdXdzZRWTNVUHFxd1paUGNLdUlwSXN5bkN3eUxralpkUHZQQVo3bjM5dnV4THNPSWpha1d5bUJUaXpKMVZ6RlFXbU5WT3I0QnFFdXI2aHpZOFdxMEpuNE42bkhqZ2hsbjJ5cWlxMVZzUGF1bjBvNkRGb3A4alNUSnlHeUxFQnpGY0VTUVFNZk9NemUzeU9jZStRYzgrNHRuZVBiWFAyRkVIM0dlVHBveWRHc1V4UVVjODRhR2hnMDBRcmFob2FIaE1zWVlnM08xNEZNRVlPL2V2YVJwQzhLbFRTMHdHYVFkK040UHY4K1h2L2tYakZqQmFzWEFUd3E3NG92cnFZV3FDVUhFejh5ZW9GRW9FbElHeFpBMlBSNjk1ekh1di9OQjV0SUZ5a0dKc2hZSkNtVU54bWkwMW5oZjRyMmZzVGVFZ2lZQUFDQUFTVVJCVk5yYUdnMTFpMTNxMWd3YVFTcExzWmduSzBvVElEb3lvS2ZTSkFMS0NxSmp3WmdTSWNGaU1laWdrVkk0c09NUWN3OHNzbTF4RjkvLzZaT2NsbE9VUlk0MlhVS29teUUwdWJJTkRSZERJMlFiR2hvYUxtT21CWm5WRmhmZ3VtdXZKMG1TMkJqcWtoSEl5d0hQUFBVczMzN2lHNHhZbzV0bEROd0tnc09reEVqeXpCQjZGSXVLaENoaXorMm5tbVZ0WEM0OGZOY2pQUGJRSjBoOGkzSlFNcDh0TWh3VW9CT2NENmdxOGhvUVFyUllRS0ZpYnVvbXcvZGFWTFhXWlBLa1JDdXdnS0JWM0NxdElLaUFsdmc4S3N6c2lza0N6aFc0QWt6UVdOVWlNeGxLR1VLQXdlb2FPN2Z0NVo3YnUrZ3M0VWN2L0loMzF0N0MrUkpqMm5nL1BPZitOelEwbko5R3lEWTBYQ0kyKzRKdCtQdkVleEF3ZGVTUEFCZ1NreUxCczNmSE5WamFhTmtZZGRUditicVNtS0dxUU1za0VqbnUxRFg5U2hXUVNzaUZxdkdCTnptdnZQWkx2dkhrVnpoVG5DUlJzSnd2RVNoUktsYm1WNnNacHdwTThMRjRTcm1KMEswZUNvc2hRV01vYzgvbkgvb0hmT3p1UjdDaFJVS0dOZ25EUVVHYXRpZ0ZuUGVFSU5FUndOcUpQWjJBOSt0VEZ3TGpGYXJ4QWQ2VUtudDJmRHdua252eWswajBvVldwd2txQ0NwcmdBNjRvY2NHVHBCbkxKMWV4UGNzRGR6ekNqaDA3K2M2UG4rQzFVNjhSZkU1Z0ZITnYzOE01MjJ4TG16OGhEUTJOa0cxb3VDak9KMFpuUFRsbFpscVZpMnl5MEMyWHRzVzA0WXFsTG9JYW44clpDS1Uya09kRjFRWWdvRXF3dExuMTBEM29vbzA0UFRZTkhoZmJ6OWhHcmJ2K2hNbjFwenlvTW9wa01mRVJESWhHaC9qVm9CTk5mN2hHdTVlQ2dlVzFzeVJ0VGVsSC9Pclh2K0JQL3ZLUDhWVll1SkF3MlJIUklHR1RTOWt6anNRcUJ4MmdqQnR2eFNDRklxVWRXODhDdi9mWVArYkEzdXZvc1IydE1seGU0akZnTklNaWRnZlRsVWVyQkQ5dVFiditlSXo5Y1lWWW5GVWQ4K243QUtGK24weDJvMXBXOU9VTlUxSmNWM3VqZ0lBU2pSTkJTU1hRVXpCb0JFY3J0WlNGaDFYNHlLNlBzT09oN2Z6d3FSL3g3UEduV0dOSW9Vb0FiQktqdU1GN0VPaDJ1d3o2dzNWclpMeHY4ZTlIYVA0S05QeTlwM0V0YUdob2FMaHNtRlRTMTE2bVd1SWZhb1BDNDdsNjhYcmFaZzU4V3ZtYlRuZy9VZjZvL3dLcUVweHhYUm9kZEl6TW9saGQ3WFBWM3Qza2JzUmJSOTZnczlnaTZRaFAvZlI3ZlBtYlg4Q1RJeXBIS0dQdTZEaG1xZEhZNmhIL1RmSkJBOVJGWUpXSXhVTnd3bzd1TGpRSkR2amNQYi9ONFdzK3dsVUwrOGpvSUxrZ0ljR2FsS1RWd21ScHRTY2I4MHhyZmJwNWREcHMrVkFTSC9YdnVucW95bkpyOXFIUm90Qml4a2RUVkJXOXJoN2FLcXkxcE1waW5TWjFDWHU2ZTdqL3B2dDQvTWJIMFJpc1R0SEs0Z29oT0VFcmkxS0tmcjlmV1g1dDNEZU4vazAzSDI1b3VHSm9JcklORFEwTmw1cHBqOVVwcEJvQjEwcGhKTUdqdWUyMjIyaTFXdUJqdXNFRkk3VThObFB0WCt2Sy83Z2gzVjdHeXRvU2VUbGc1MVdMS09ONCtya2Y4K1QzdjgyWjhzVFVjbVlKNTBpYm1QWngxUlpDQVhqSVRJdmwvaXBkZWp4OCs4ZTU3NTc3V0dqdHdFaEtXWlRrZVlIU1VieUc0SEhPWGZJdnNKa2JoMDBHU2x4UllxMUZTZXk0VmdRaHl6S3V1Zm9BODNzN0hBOXY4OUtSRjFnYXJxQUpXR1BJZlZFVm5zblU0dUlSclgxd0F4c3VsWWFHdjdjMEVkbUdob2FHeTRZcEFTaFYweWxBcXVwNmhlYVdtMjRtdGRrSHNqWWx0bklTc0ZVRi8yUTdnbllrbWVMb3liZHB6NlVzN09qd3c5b250anlCbm9yQW5vczZxcmloQjRJQWhVSjVSZHQwOEU2d3BEeHk5eWY0OUNkL2kxYmFKYzhMaXFLSWJYZTF4ZGpvUnVDOXB5enJxdi9MRitjY0lZU3hpNEp6amp6UDhkNlQ2SXpISC93VXR4Kzhpem5tc0NRb2J5dS9ocGp2VzdlMlJVMEVMRFFpdHFGaG1rdDlROXZRME5EUXNCNlovYkVhM0thckY5aXplejlLbWRuODF3dENnUmgwRlkwVkVZSUMwWlh3Vko3bDRUTGJkODdqVlo5dlAvbER2dmkxUDJmQU1pMWo2UHNSdFduVlpGczNFWmFxU3N2ZDRDY0x5aG0ydDNld091eVRrUEw0M1ovaWtRY2V4WWJZWmxhOFFodURUUkxFS21MSm1VY3BJVTNUcVBRdlk5STBSV3VOVWdwakRFb3BSQ1FLWER3THZXMDhlc2ZqTEdZNytONXpUOUNuVDBZSDB4SldSeXNiRW1NbFZHNEtsN21BYjJqNHU2UVJzZzBORFEyWGlscUxUb3M4RmRhRjNDeWFsSVFPdDk5eUYrMnNnN2k2K3Y3Q015VmpqdWRVVHE1VTlsTEtnZko0N2JBbWtIUVZULzd3K3pQTkR2cCtaZk5DeFprVmJQSHorQ21McGNWd1dOS2x4NlAzZnBKSEhuaVUrZFlpbzlVU0h6d2QyMFZyaTRUb1FPQ3FZaTVsVEhRb0tDL3ZyZ0xHR0VJSWxHV0ppS0IxOUxzRmFLa09nNVVWZGk3czRhNGI3cWJzbC96azVhZFpZWWw4TkVLaEsyZUhhbUhWellCSUU1bHRhSmltRWJJTkRRME5sNHIxQW05REsxZEw5RHBONkxXMmNmODlENktDeGp1UEpua2ZWbHRiSUxZeS94ZW9Vd1dVeCtzUzBRVWp2OGJUVC8rVWIzMzM2d3c0UzdmZFl1Qlc4TDdFV28xM3NmQm9RMDdzZW8wOWswc2FoWnpCTU1jaUh1SGhqejdDcHgvNUxGYWxGSDFQTyt0U3JKV0kwZmh4MjlsQWtERGpCSElSR2NJZkNPZkxrUTNPeHphMllTSTlSVUlVdEdnNk1rZHhKcWZYbXVkamR6eEVxOVhpaVovOURhczRNbU1ZaFVHMUlqWnRYZHpRME5BSTJZYUdob2JMRW9WRlk2citWaDNhclhrT0g3NFp5UTNpUVJuemdZVGthZ3Vxb0dNNmdkY08wVVgwaWYzMTMvTE5KNzdLcWVGUkVxTlpIcDRsVUlJQlB4Wm42MG90dGhLeDQ0SXlWVlhlSjVRSW43L250N243enJ1aFRGRGFSdE9xZ1dkaFlSdHJLNE1ZZ2NXUTJnUzB3a3ZBT1lkNEh6c1dYTWJVVVZockxWcnJjVnFCOXg0dG1oWXRUTEFRUEdrcjVkRFZOM0MyZjVhZi8vcDVsdndwRkRaMlNKdG1pOExBaG9hL3J6UkN0cUhoQTZLT0ZFMUhqTTdYSmxQT0UxbzUzL3lHSzV5cUNNaGFTMWxVdytRSzBxUVZ2VWRKU0dqaDBQeEh2LzBQR2F6a0xQVG1LSWM1U1dKd1lUSzhQL0ZKblZ3ejB4SnovWHhCVUZvWURrZjA1bHBZYTFnYUxKRm1NQXBEWG5ybEYvd2ZYL2lmQ1pRRWNnYStuTFNkbGZGSTk3bXBOaVcxSFh3WnQ5V3FsSGJXb1JnNWZ1K3hmOHkxVngxa29iMFRwVFJ1NUtLZGxUS3NMSzNGdk5LcXBhMzNnZ1NQS01iRDg3SisvNW5kLzFrYjNZM0haeWFndXNsOHRYNyt1dVVUM2x1dWFnaGgzSnhoMHJCQkk2V2liZHFNaWlGRm1iTm5jVDhmdjY5TDJrcDQ4aGQvQTBDV2RXSytySUtzMjRwQ3VIQWJkNkNoNGU4cGpXdEJRME5EdzZVaUtNUkhvWk5tQ1VxRHJxS01SbVZrcW9QSGNOdkJlOWkrc0pkMjFxUE1QWWt4T09mT3MvRHpzOXBmWWMrKzdZeGNuemZlZlkzdVhJWnBDMDg5OXdPKzhzMHZqa1dzeDBVUk8rNHlNTE1Ud0NhRlh1T09XQ2xsV2FJd2JHdnZBRkdNUmlXLzljRG5PSFR0amV4ZXZJcEV0YUlOVnpCWW05RksyMVV4MThhdnFHa3YxeXNkRVVGRW9jV1NxcFEwcEhSMGgydDJYOCs5Tnp4QVFrWXg4clIxQnlXYXZEL0NGdzZkcUl0TmtXNW8rTkRRUkdRYkdob2FMZ2thcFMwaUFlOGNRZW5ZZkNzSWhTdFFHSlJLVVdnZWZ1QVQ3RmpZVFN2cDBWL3AwODQ2NUtNQ2JTOG1TelRRN3FVczljOHc4bjIyNzFsRTBweW5udjBCZi9QOWIzSjZkR3hLeFByWkllME5YbHJycU9hMTBoNTVubU5JNlpvZWE4TVJDUzBldnUwUkhycm40eXphM1NTaFJWbVVsTG1QKzV3WUpDaThFOWJIV3FiRjZ5YmRlUzhKNTRvR25TZUZscUNpTVpsU0NrdUtLMHRTMitLYW5kZXliV0dSc3lmTzhQckthN2hRMGt2bVdTdlhFQnhKa3BCZjVvVnVEUTEvVnpRUjJZYUdob1pMaExVV25TUUFsUk5CUkZXOW0zTHhYTHZyQnE2OTVpRFdaaUNXVUlKVkptYWJYa1JVVXBTUXREVEhUeDJoTldkWTJObmllei8rRGwvODZwOXpldlF1R28rblJDZzNLVUtEdW9GQ21PNCtOVE1XcnlHQXhwTFJvdlNPaEl5UDMvWUpQdnZZNStpbGk1UTVGTG5ETzRWV0tkYW1nS2IwanJJc3o3bjlsME5FOXFLK1FGVkFXOEdwc25MWlZWQXFaQWh0dWx6VnU0cFBQZmhacm1sZFIwS0tsSkNaMkJBaUh4Uk5OTGFob2FLSnlEWTBORFJjSXNxaXhMYlM4YUM4c1pBbUtYay9SaVBidXN1blB2bGJ0Tkk1eEZtQ2VMUzJoUGVZbTNsdUFtdkRWUlozOTNBTStldnZmSXN2ZmUwTDlEbERhZzE5dHpxYlRsQWpsc21UVzFod0NZQ21MRXZta2dWR1pSU3huN25uczl4LzU0TmswaUdqUmU0RHlsb1NhNnNXdDFYdXJkRWtXWXBVUHJFVDBScWxveFlJbTRyckt3Y0JRaUs0S3Q4MXdXQXdPS2ZCZ3dxYVEzc084K0R0S3d5ZkhuS1M0OWlRb0pVbHFDcFgrY28rQkEwTkh3aE5STGFob2FIaEVxTFFVQlVGR2dORlVTRFZBUFJIYjcyTmUrNStJRmF2QzdnU01wdFI1dTY4aFlUblgzSEF0aFJaQjU1Njl2dFZzNE1sckZZVEVSdE5CaWFJSlpwZVZkM0E2cWMzTER6MnAxSm9odVdJakl4UDMvY1pQdjdBWSt6bzdVTGxDamNRMHJTRDBRbEtLWUtQKzE0VUJTRUVUSEx1T0lzV2pkb2toL1pLSWFoQVNZRXpCUUZQVUdDVUlWVXBTVWhSUTAyK1ZITEg0YnQ0NEk0SFNVZ3B4VTMyK1ZKN2p6VTBYQ1pjdVg4Rkdob2FHcTU0ZEl5dWppdml3VmMxWE5mdFA4aWpEeitLMWJacUNtQndMcEFrR2Q1N2pMcTRQOTlCQlFvMzVJZFBmWTl2UC9FTmhxelNTVk9DS2hBYzFTajJ1b2hzTk01U0pGR0FuK2NySk5VdE5Ba2Z2L3RSUHZIdzQ3UnNCemQwekdlTGhEd2dRVkdHUU81S3l1RHhJcmdRS0wybmNHNURIcXlXK0ZDWFM0THN4YUNFa2hLeGd0aUFjMFU4djZTa0tzT0VsREFJZEV5WFd3L2Z4bDJIN3FaRGh6RHVXM3lwZDZDaDRmS2dTUzFvYUxnQzJDd2ZVRTlOejlOamFRTk5aNkFQR3IxdXVwNndiaHAvVm9uZ1F6NFdKbFpsT1BIczZPN2pzWTk5aGxzUDNjbXA0OHNzZG5iaGd5TUVBUU1pSG0wVC9OaCtTbFhYaUVadlp0bFdEY09MaWkxZWd3SlJKYSs4OVFKLy9kMi80dVRvQ0lreXJCWm44WlFvRGFFMlJaaXBVaElVZ1hqRnVTMmNDalFLZ3lIRkIrRjNIdnR0N3IvOVlhU01ibFVKS2FOaFRyYzd4NkFvQ1JLTG5aSWtRYW1VRUFMT2VVSVFERHBHcDFVOFhuWGpCYTNpa2R6cStxMnR3WUxpbkUwamxGeDQwWmlTdWwzc2hhUEVZMDBLWGxYZXVBRnRNcXhPTUNnVzVoWlpXVnBsWWRzMjdyM3RQbzR2SFdWd2VrRGhRT283bmkwYVQyeTFXODFudnVIRFJpTmtHeG91QWhHWmZGSFdBbUpHU0d6MHBKd05jRTErbS9hcHJJVnJQVmNMRzMwc1ZRQTFlYTJ1Sk1iWTlraERyWE0yL2ZKcW9qb1hUVHcvRTZQLytDZFZUODBWTkdDTXd2a2NJV0FNS0EybEI1R0pkeXpCVWd3VHR0dDlmUFM2KzNqMHpzOVJuQllXOUNJeUVsSnRRRU9lRHpHdGhETFVSVUtWSjZsb3RDZ0lrMGlwOXg2dHdTUWFyeDBCaDBwZ2JlMHM3NXg4aGYvMTMvOFBlQVpBd0ZmZXNCb0k2NjYveVhYaTBEZ2dKd0FtQWUvamZJVUNNV2dNaG9SdDJTNGVlK2h4YnJyMkZ1YmJpMUFZS0RWWjJzRVh3cG1sSmJidjNGR2xFemlLWVk3V0ZxMHNTa1UzQjlFYUVZOVJIbXNUbFBZNFYxQ1VNZjFBbTNTOHIzRVR3emd0UXdrb1F2VngxQkFrN28vSTJOYkxyN3NGM09Cb1ZSOElZY1BudXo0azQ1dkNxYy9uZW5Hck5ubS9SdEJLRXdxSENZYlV4dmExWGh3U1hIUTBjQTdFMFY4YWN0WENIajczOE9lUjc4RGJxMi9pSmRDbkQ3cnF5RmFwZDJzMGlDQis4dzkzZFN0UTdVT1RaTnR3NWRNSTJZYUdpK0NpVzRTK3orV3JhZHVqODBTYkdpNGxrOXNXaGNiN2NpeXd2QWNUNGt0TUMvd0lDSkNhRGoyOWc1MXpWL1A3di92UGtLSEJCSXNLVVJ5TENnUVZFRFhsRURDK2lScmY4c1IxaHZpN2lHQlRTeGx5Vm9aTHBHMU55MXBlZmVzbC92S3IveFpQdnFtWWVhL1hsZmVUN2JBMlJZdEZPVTB2bTJlK084Y2RINzJEeGU0T2pETDBSeU9La1NPMEE1M1dITnV6UlU2Zk9rNmF0TWl5TmtwYnZBZFhCbnp3U0ZBNFYyQVFnZ280RjkwVGxQSllhN0hXTXNyRGxOZXNaK1A0Ukt5SVVqSjd6M1l4a2RocDZtVzhYd2VGV0t3R0p1anFmTVlQdHFpNDBCZ3hEeGlqU0ZTQ05ncWNNSmZNYy9PQm04bGZ6RG5PY2NDQzhzUXdmZHh2NzhNR1FkN2Nzelo4bUdtRWJFTkRROE1GVWtjQkl4cHdNSlU3R29mR3k5ald0WTZGNmZFb1BYNVl2VlNpaU90MjUvbWpQL3l2S0FlQnVWNkxvdHlZSjFvVG9DcjhtWDJCcUZDdFBtQk1RQ1dCMGRvS1dVZlJXOGo0NFUrK3g1Zit3eGRaS2s4ZzZBdU95YTNmcmxDblBxRG81MnNvMGZ4UC8rcC81TnA5MTNIb3VwdTRlczhCRnVjV0tKV2hYenAwTUN6dVdpU1VnU0lmNGZKQUNHQjBRbW96ak5HVWhjRlUreEpDSVBoNGZKVkFFRjNkMkUyTGVNWVJUelZ6WHRadHU2N21YZWJxTG9Rd0RnYVhVbUpWd3VGRE56SWNEam41K21rTUdoODBhSTFTQ2dsaGZHT2k5S1R4MkdZR0I1ZjVyamMwdkdjYUlkdlEwTkJ3TVNoQXBtV0NVRWNGdzlUL0VOQktZNHlLSFoxQ0lIaG8yUjVCVzFwNmpuLzZCLzhaNGhSN2RsM0ZrVGRQc05qWlBsNXFqTkpCVURLMXpGaDhOVmx2ak82SkNqRjZhV0ZwY0lwV3o2QmJnYWVmL3o1Zi92b1hXQ3BQa2xvYmN5M1I0NGpkKzVraUlWYk9WOUZsTHg0azVyV1dqRmdwUElhVUY5NWE0cGR2L1J5RlpaRUZydDUvZ01PSGJ1U2FmZGV4ZS90K2l0d1RRaUN6R1oxV0Y2MHQrV2pJYUZDUTJneFVnbEVhaXlGVXVjRGVlNHBSZ2M2U3FjTmVDZG9xUWp1UnI1ZnY4TG1jdzBKTVNVd1JDSzVFSlRFcFdGbkZydm5kM0hEdFlkNDQraWF2akY3Rml3RWZVTW9BYW54ekZWMHRaT3FxYUNLekRSOU9HaUhiME5EUWNLSE1KRDV2TE9pcUk2OEswRXFqdGNXN1FCQkZqTmNtbERuc25OdkZmLzFIL3cyNmJKSFlOa3RuVitsMjVwZzBIWmhsUEtUTnRBV1ZqNmtIZUZBZVVRNXRGYTdzSTBuR3N5ODh3Ly8xWjMrQ28yREgvQnduVms1VTBUdTlvZXZVZTUweTVXZXJGQ2dkSTZlNjJqcGZxVnlGd21JNXpaQ3pSMDd3aXlQUGt0SmxWM3MvTjk5MEs3ZmRkaHZkeFQwTWlyUGsvWUxVcEhRWDV4aXVyb0ZMQ1VGRE1CaWRrdG9NTFg0cUlsMXRVelcwTHRYQlVUT1IyT3FXUWsxeWFHY081R1dHRmsxUWdkUk9IQ3FNTnVSaGhKV0UvVHV2NXI3YjcrZm8wOGRZeHNjaU9CR01NbmdSaElDZ3h4M1pwRkt4MHFqWmhnOGhqWkJ0YUdob3VCRFdKeUZ1UmlVY0ZLQ1V3dmxBREdOcU5BWkZ5bUsyamYvaW4vOUxWSm13Wi90ZVZwZHlpbjdCem0yTERJZmxXSFNNSTJ0VlpEWkc3S3FIbW9obzBkRlJ3SnNTaktlM3JjVVBubjZDdi9yYUYzQ3NrUmpGNmJWanNXUFh1c0swOXhtVG5kM1Y2bWx0RkVvRVZQUTg5VUdxcElzU0VIejFYa2ZCeWFIaXlQUHY4T1R6ZjhQQnZkZHgxKzEzY01PMUIxR3BzRFFZTU4rYnh3YUZMNkVZakJBdkdHUFF4S0l3SkZUSGdpb1NHNlpFV3BTeVFVMkUvdVZJVUFHemlSK3VsbWpOcGtRVG5LQ05SZ2REdWVwSWtwUWJycjJCUSs4ZTVOWGpyOUV2VndrSVZwa1lHVWZINHJQTmttVWJHajVrTkVLMm9hR2g0V0xZVU9vK05hdlNmWEcycldSakFtaTZkb0dGOWs3KzVSLytsL2djZXVraUsyZEhxSkN3TUQ5SHZ6OUU2K3BQZEpVcXNMNVZiSjFZTUs2Y1YwSlFEdEVsb25QT3JwN2h5TWszK2ZxM3Y4U0tPODJ1M1lzc3Jaekc1VG05K1RacnE4TktBTlpMZVQ5VDBMcE9rNmpXTCtDcjFBcGYxNlNwS0NGVmRSeU1VZ1FSSENVRkFoaGFKTHh3OUZsZVBQb3N1MW83dWYrdSs3bmpsanM1dGJMS1luY25XZGJCaU1JWEpZVVVHQlh3T21BQU5VN3JFTFRvR1ZjUEpSc1RMK3JqZExsR1k2ZnhoWTlPQnQ3anZTZXhDWGxSVU9RbHJZVU9kOTU4TjRXVXZIemtGUlR4eGtHamlabXlmcU5WeWxTaGFCT1ZiZml3MEFqWmhvYUdodDhFRW9XZEVsQTZ3WWpGb1ZDa2RKTjV0cy92NWcvL3hSL2hSbkR3d0NIV1ZnYXNyWTNvdGxvb1VlTWhjbFRZb0RtbXErUW40aXdRdEVPVVIzU0pOem52bm5xSC8rL1AvelZMbzVOMHVnbkhUaHdCRFZsUHNkWWZqcGUvTVMzaXZVMUYxcm5OQWRwRW4xZVI2R293bmwwcFNwWEVaMXdSU0JLUGM0NjFNQnluMjU0WUhlVnJQL29ydnZtanIvR1orMytMNi9ZZDR1bzkxMkZNaDJBdG9ncEVGSkpFeTdDSi9WMjFMNkltRWRwS3pJcXEzQXhreXRWQWJSNVovcnRHVjlIWW9BUWoxWG1zbmxkSzBjN2FEUElCZU9pMDJ1aEMwKy8zVVNVY1BuQWpiNzM3TnU4Y2Vac1JJeERRbUNyVm9OclhTNytMRFEyL1VSb2gyOUR3SHRuZzR3cFZtY3lGdjM5OWhHMnI5MHhUdHlaVlNqVlJsVXVOTWRHc3R3NENWdDFtSlV4RXJGVWFRd1ppVVJoYTlQall2Wi9nZHo3M3V5U3VoVW9NeTZjSEtBK2RySWM0UlluSG1Oa2VwQ0tDSUxHelUyVXBGVU8rc1N0VVVBWGFBc3B4WnZVa3g4Kzh6Wi84di84S1R3NTQrdjBSU3NkQVpENmNERHVyT25keUtscFgyeHZYd2M1NmRGN1dYYTZ5eVdoOThMRXdEWmcxREtpZUsrdjNHQ2pOYUd6MjRFTk11VFVHbkZjRUhOOTQrcXQwMmNaRDkzeWNHdy9leW54M081MzJJc044aERVSmFkQjRGeHNxWkdrR1FSRUtGMXZjR2dOQnFpWVFzZXhwTXBYcFRabzZ2dXMrYzVXUDdGYjJXdVBYeXV6bmU4UEwxODhYcGhvOWJFNVFBUlVVdytFd1poa3J4YkEvSWhCb3BXMWNXYko4OUF5Zi90Z25PWHZ5REMrZmVKRlVaVGdwMEdpVU5yamFTTG8rRCtmcUl0SFFjSVhTdEtodGFHaG91RkM4QjZXeFdZSzFDdkd4STVZRTBLTFFXQ3c5SkNRRUVyWWx1L2xQZi8rZjgzdS8rNTh3V2d1b2tLRkNoZzRKU0lvS01YOTJsakNPbXVvNndsdEY4VmJYbHNteWhLeWRNQ29IYUJQb0xyUTVldXd0L3VLTGYwYTBBNHNGVGtwSkxNaFN6R1JEMUttVTArbXlXc1hJcWxLZ3FnaXIwbEZrYWh1bjF0WnZzclB0YXFmSzVHY0U0SWF3TWpFNEtrQUtxcTBSQlNNZmMybDc3UVZhcHNNYXEzenIyYi9tVDcvOHAvejg1WjlSbWlHMkp4UnF5R3ErakcwcDBwWmxiYmpDYW44Sll5QnRwWGdmUlp5YWp0Qk9iY2FsOWpMUW9tYUsxYlNvRFM0R1llcjNPbktySkJiNEdkRXNadk80bFlMYkR0M0NIbk1WdVF4SnF2UGg2czVmNjVrcFRHeG91UEpwSXJJTkRRME5GMEk5TWgwQ2JsUW5pY1lpTHFNdFZxZVVYdkNTb0VoNThQWkgrTnhuZjRkT2U1R3pKOWM0c1A4Z3F5ZlgwR0ttT2o5cE5wTmEwNDB3cG1YdTR2d2NvN3hQSUtjemw3SzhkcG9YZi9wenZ2L1VkempWUDA3QUliaHFxSms0dWc1akZXdHRqT3pIcm5DQ0QwSUlNUkJaRjFHSnJQdGRUYnAvcWFvQlF4ek9ycmV1VGp1WWRKdWFvYzdQMUVBQ3FtMVJIa0xmVlVQakdvOW1lZGl2dW9SWk10cWN6SS94bFIvOUZUOTc2V2ZjY2NkZDNQSFJ1NW5yOUNpS0VUNFA2RVNSWlMzUUNuRWVyYStNRVF0VmRXU3I0N2pUWWxhbTJsV3NqL01xVWJSMWl6UExmVzY1L2haT256ekZxVmRQSUNnY0RvK2JmY2QwQ29aQUkyWWJQaXcwUXJhaG9hSGhJdERHb0pWRmZDeGlVbGhDTUpSWXRtVzc2SFVXZWZ6UnovRGd2UTlCc0dpVmtyVmJISG45S1BPOVJXYkxrVFpqdXFsb0ZERDFhNDJGVVRrazdTUW9DNy8reGEvNDZ0ZSt6SEk0UmR1MEdQb1NRYVBIclhPbkxCQUloTkxoSzZPbTZLY1ExV3E5aHRUR1ZyaFVZdFlxRFFaVWlEbThXbVhVRFFwa090S25wc2V3d3lTeU9DWFNnZ0x2QXJMcVlzcENzSlZzVFdqUnBwVjB1UG5RelNSSmhyV1dOOTU0aTdmT3ZzT2JaOS9nK0JQSE9Ybm1CUGQ4OUY2MjliWXgxNXRIT1kwZmxkSFpRTXc0ekt5bWlycWlyWlhFa1BsbGtEdXF0eWc0RzR2WnFTanRXT2hPWFNjeUVsS2Ywak1kRHU0L3lLdHZ2c3E3NVR0VnMyUk5PWDdoMUhRcW8rRUswUGtORGVlbEViSU5EUTBORjBpdjIyTXdHT0dDUjVGZ2FkRXlQWFJJRVRIY2QrZkgrZXduUDgvT2JWZXh0TFRHWEhzZTBLd3VEVmljM3c1dU10d3R5RlEzcW1ueFdvdlAyZ3cwaWxsUndzbFRSMW5ZTnNjb1grTm56ejNIOTM3MEJNdGhDU0V3OG9NWWlSMmp4OU9xdkloZU5zOGdYME1RREpEb2hFQ1k1SE02TlJZOUdvbEZWazVRbFYrQ2w3aDlHcW5UU2F0dG5mWlNpSjY1azU4bmREdHo5QWVEMkN5aHRaMlF4M1hjZHVnT0hudjRFOHpQTHpJYXhSNitodytlNHEwamIvRGN6NTdqMVBBNFQvLzhCN3p6MWhzOC9PQmozSDd6SFlnWFJzV0lsdTZRbVRhdWNHUzZGUjBLcmtDQ2l1a2dOZXVGckJhZ0RPem9iR1BseERJNzV4YTU0OWJiT1BuOE1VYWNPMysvU1psdCtERFJDTm1HaG9hR0MyUnRiUTJGcHR0YW9CaDVCRU1uWGVTUmozMlNlKzk2aUVQWDNzaGJieHlodit5NGF2c0JUcDA4UXo3c016Ky9pRUhoWm9UbXVzb3BKWk1pc3FtSVdsMmxId2pzMzcrUDVlRVpYdmpsVDNuaXlXOXhaTzB0REFwRHdvaVNpUXl0cmIvMFZENXJZSlNYeEY1Y21rREFCMFdvVWdXa0VzNkdHQ210UmJIRHhXS2lxczFCemVZRkYvNmNiclRsd05HbWg2RElSdzVEd2wzWDM4ZERkei9DdGJzUDB1LzM2WGJtYUhWYmJOKytrL21GT1U0dm5lVFVTOGR3bEJ4WmVvZS9mdUliSEQxNmhQdnV2Sis5dS9iaCtvRlJmMGlXWkVqbHc3cmhzS29wdDROTHlFeERoN29iM0pSNERTcDJhVk9pTnhHeWlnUkRMK2x3NHVTN1pMdmEzSER0SVg3K3l2T3M5VmZqOG1xUDRhbnJwODZQdmd4MnY2SGhBNkVSc2cwTkRRMFh5SzRkTzFrK3M4cG9OT0xxUFlkNDRONlBjK2RISDJEWDlnTW9uN0d5bkxObjE3WDBsd2E4Ky9aSkZoZTIwOHNXV0YxZFJtdE5rbVRNZEFLcjBqcG5nNGhUdnExUWhXODFXbnRPbnpuT0N5LzlqSjg4OXhTbjFrNmlBWU5CR2Vpb0RyNGFYTlpTZHdBelZVNm1CUUlGSTVTT1ZmRGFLdnByQTNKR0tEUnRrekh5T1FaTnk3WkJDNzRNR0NtanVGM25xakJMSmRDQ3pPVFdUazhCY2hteHU3c0hOeFQ2WWNpQjdpRWV2dk14RHU2L2laV1R5MWpiSXM5TFZwZlA0TTJJM1R0M2MvY2RkL0xHbTY5eGNuaUtUdHJseE9nb1QvN3NOQVRGZzNjK1NDK1pSMnVEVFF4U2hPcDRYbmwxelZKMUlRc3FWRWtoNjFNTE5LbEtLUHNGcmFTTkRwcTVib2NiRGg3aStBdEhXU1kvcDJDOURESXJHaG8rRUJvaDI5QndnYnlmRWN0ek5YNjZjRUlWc1ltZG5FU0ZqZjVJNDJRNHQvbnpId1FYMGhUcWc1ait4cWdIWmFlN1h1bVorZkYvemZMcGdqdHZlWmlISDNxVVF3ZHZKalU5aWlFVWE0SFVLSHpoRVlaMFdsMDZtU1lmRGxGSzBXMTNFQkc4ektZU0lCcFZkV2JTNDFNWkJhUGc0L25XSG9oZXNWbVNjdU5IRG5QTndhdkJDaWFKSGJTY0svQlNrQ1RKZUErb0JXeFZMUzhxdmxhWjJGYjJ4SWxqL096blArV0ZGMzdPU0VaNEQvL2luLzduZE5zOU91MWViSzlibExGbHFrbElFa05lREdlT1hMM0pkWVg5WnZaeE5VckFCazBvQlhHYTFHUWt1b3NOR2ZsU1NkY3NVZ3h6ZGl3c2t2cytTOE9UWkpLeWZXRTdPM1l1Y1BMdFl5d1ZKK2lrUFNnQ1Q3N3dMZDQ1OGhhZi84VG5PYmp2TUtQVklWWW5tRG9nS2RQcjFqUGJPZDdXS2g5VlZUbkVzdVVISlVhMEx5WnI0WHdmd1hGTjNOUTJqdDlUUGVjMUxDOHYwZHUyeU1nUDhMbHdlTzloWG52OVZmcHJBenc1TG9RTkRkeGthaDhhR3E1MEdpSGI4UGVhODMwUnpYd1JqejBqNjhnSXNYdk9ob1Z1WEs0V052V1JuZjRhbVo0L1BaUzg1YmJoZ1J6SGlDd3o1RVgwNU5RbUpFQnRaZ0FBSUFCSlJFRlVQbHc1OGY4Y2I5cFU5VHN3U1YzY0FuV2ViOXNRdUNoQkt1ZVpyOVRHU041MFJHKzlibzhiemRobUtweXJLK25Vc1AzWVM3VWFkdGZVTmxnR1N3dUZxZElBTkJsdGJyNzVWZzVmZnlPUGYreXpLRWxBTkZKRXdadjV1QXpsZFBVSE51Q0tBUUMyT3Q0K09FVFZBKytNSTI1S2RMVGdrbWo0S21Jb1hNNzhmSThpRERsMTlsM201bHQwRjFKT25EcERxbHNrV1h6RUc1dTRQcEk0clMyb0prd0VYRkNRdEZzTThsV3NWYlN2bWVQNHlSUDgvSVVYQUpqdkxiQjlZUmZ0cEVjcm5TTlJLY0VveE1mallIVWdUNGFnWkN6NDZ0cWxNSk9GeWZpRTFjUDVpamhjbm9saE5NaVJGTnF0TGtqQ2FNMFJpa0JpTXlRSHM1cXlxOWRqTkZ4RjU1cGUxcVlzUjRqS2NhcGt4UTFSeW1ERTh0cVpYL0NYMzF6ajQzYy95b04zUGN5WlkwdjBzbm1zV1BKUkFhTHB0Tm9vcGNqenNrcXpxSytIQUVyRnNqY0pzZWhOSnZ0Vk42aVF5aVMzL2wrUGIwS20vajZNZjVUSjdrL05uM3dNSjgwdVpOM2ZGeFNZcVdLdzJwZDRZbDByNU5vUjJpWTZTSVNNc0N4Y3ZYQTlEOS82R0VlZk9nWUUydTJVMVh3QUJreWk4YU9BSXNNSFA5Nkdob1lybVViSU5qVDhCbG1maHpjdEpPczh2YUEydk8yOUlaclNsWWdQbEVxREdGQkM4SjRRUU90MVFtNjlpSVZvYUgreDBkbjFvdnY5VE5XNTUwLzV6VytjQ21oVEs2ZktwcWdTMWxJSjNqU3gwVVhWQjd6SWVENFRyWURSQ2FsSkNVRndQaUFZVEZXNFZlQVJMRHZucnVMbWo5ekdYWGZkdzNYWFhrK1dkQ2hIZ25HZEtHVFovRVpFalc5YXRoQUxhcktEU2lUZThLREdlYXdpd3ZadE8xbnVuMlhvVnRsN3pSN1dScWQ0NWhmUHNyUnlHcXRqdTl1dENHRnJrU0lvOHRKSEEzM2pHSlVydlA3R3I4aGxCU0d3dEhhUzUzLzJESW50MGpaekdDemlOT0xCS01Fb0NDcjYxQVkxRWJFQ2hPb09TdFpGT09zaXM3cGRyVnNyNmJSNzVLNmtQeHl3YlhFbk4xNTNDL01MOHd6UHJyQjcyMjdXVnZvc25lM2ppNENJWlRES0dib0NySW8zWWdMaVBkN0ZSSXFqYSsvdzgxLzlsS0lvdVBlMkIzQkZnWE1PWmFNamd2ZUNlQThCdEpvSWJxa3ZuK203by9FZHBZcHp4VkpmUElMR1hLVDd3VG1IL1d2LzI2a1g2Nm5QUkZEZ2phSlVBU2VnZ3lVSkthbTAyTkhleWZYZFE3emNmNUZpT0t6dnovREZWTi9nSnJtZzRVTkNJMlFiR3E1WU5OM09kcUJOY0FGdE1vSWZBUTZsQWxxRDByVXB2SzYrdDB3MWZGMTlnWituNHVWY1FnZ1Z4bDNHTHBTNkM5SldRVm10MUpielViSDVRTFdrT2lZNE52Z1hnYktZZW4wMVZhSXhPcmIvOU40alFWR0V1Z0FxUmx6M1g3V2ZuVHV1NHU2NzdtUFBybjNzMmIwUGExUDYvU0dyU3lPR21qaWtyUzg4OTFKSmRBS1llYUtLOEFzQmxDYUlzRG9xV0N1V3NWbGd1Yi9LVXo5OWtpZSsvOWVzcnAxaEZOWXVlUDBCalJEOVN5MkJnaUZRQWdFRkZQVDUrbmYvSEVneHBGV1V1bmFPRGRVeHJhMmhwbHJsc3I0YVBveVB2NTc2WFZjUjczbXpRT2tkYTR6WWtlNmlDSDF1UDN3MzdkNGNmWllZMEtmZGF0R1o2K0QwaUxlT3ZjUHhNMmZJZzV0eEZGTmFFMEtnSU9mbFl5OXo2dFFaZHV6WXhhNzUzU3kwdDBNSlJURWlrUlNqN093V3FvbEFmRDlIOEZLamlUZEEzdnRvT1VZMEFWNmNYK0NqTjkvS2E4LzhpaEdRSlFtRkt1TStHa1VJays1bURRMVhPbzJRYldpNFVoR0RjeWxXNzhDRkVjRjc0a2ZhWVpUQ2xRWHh5N1l1Rm9vU0pPYUF4bUtmMkdMMEFyK1E1U0xldTQ2dGhLeHM4ZnhFUHV0eFBETEdtRGIrazNYL0lJNGNDM0Q5M2tQczNyR1RBd2V1WmQrKy9lell2b3Y1M2dLZHpoeHAwbUoxZFlnV1F5Z05SYUZKOVR6ZDdUdHBKUzBTbTdGNmR1WGk5bnVjSnhGaTlIYnN2eHFIL3J1OURrZFBIV1BiemptU2p1TEpIenpCRXovOEpzZFdYa2NvTVdQWnFDOWdPcEgvQmZsWTFpZ2JQV05EQUpHeThwajFWVEJiOElRcThVTGpwMUpyNmkyZkZyV1RzeFRHcjZuUFZaM0NjY29QRVFLQzVuZ3g0Q2N2ZnBkMkwrR2VtKy9sM2JkUGtOcVVkRzRiYTZNMVhuLzlWenp6eStmcGh6em16L2d3WHJFMnNkQXRoSkljelhGM25LOS85MnM4Y3UrajNIN1RQQ0thdko5akVrV2FwTlZHVDhsdkZTWmIrQjZTWHk5OVBGUE5qZ0tvMk1hMktBclNUc3FCdlFmWU83ZVBYNisrUnZBT2F6U2xCTFRXaFBKY09UY05EVmNXalpCdGFMaFNFY3Z5R2NkSGJub1E1d3EwQ1pURmtDd3oyRVN4dkh5V0xJbEptZU1JckZSaVZpd1RjL29MRjZPeWFaTHE5UHh6QzRKeHBLNUtzVmcveFlkTm42OER5Wm9ZV2RWYWIzZ29wWmlibXlOTlV6cWREZ3NMQ3l3dUxyS3dzRUN2MTZPZFpuUzdDNVI1UVo2WGxFWE1zekNTNG5OTFhoaDJiYnVHdGVVMTFsWUhXSnZTN2ZVd3hqSllIYkt5Y29iRnVkNEZIN3U0L1l6SDVHVXNwQUpCZTBRRlJpR1F0Z05yeFJsZWZmVkZudmpSMXpteTlHczBPUUczV1liMis2S1ZwWVRnVUJKandVRk5DVkZkUFJjY0ltNWM4bFlOc3M5a2hZUjFQMC90RmpEUmhaTmJxZmhLbTJxOHp4RWQzUTNLUW5qbCtBdklzd1VyL1JQY2U5dkhTRFNzbEdmNDVWc3Y4cE5mUHNQTFIxNnFsbHBGSUNXMkt3c2hZRXdBYlJBWGo4MmJxNi9UZWFsTnU5Zm13SzdyYU0rM1VDVTR5Vkhhem5yZm5vTU51ZVd6ZDFPWERQRUJxKzFZeEFLVVpRbEZvTjFxYy9pNnc3ejV3aHM0VjFaNTE2RUsrZ2UwTVFSLzZhUEtEUTBYeTIrOC9yZWg0VGRIajRPM2ZJci85ci8vWXlRa0lCbUtsT0ExMW1RNFg2QlVBT1VZUjF4azZxdFVZbVBPY3pFdHhEWXIxdEpidkgvOHhUMzE2YXB6SjhmTHFkTTcxV1IrUFIwWHhhelBzWjNkT3JZdGRIbmpqVit6dUcyZUVFb0cvV1dTMUdLTTRIeEJabTIxbk9uQlhVMWQ5WXc2OS81dkxCYWFKcHc3OVlCenB5YW9LaS8wWE1Hdjh3bmhjcFRITDNIUm9DWDZuNm93bmhwbFkwRmVVQk0vem1vK3dOcmFBSTBtU1JKYVdZZk1abmp2R1F4RzVNTVJJdEJ1ZDJsbEhaUUl3MEZPVVJRWWs1Q21GZ25GK0JodW1pTzdUaWxONzZzRzhLWjZ2MGNvRWVYeHFveGlVZ2RjY0xUbUVuN3drKy94cGEvOGU1YmRjWVFSQVlmTll1ckVoUkx6TUNlL1NKMDJXWDByNkt6S3NaWVlvbzJpMjZPcUxCV2xpSzFsbWNxUEhSZDdNZlB0b3FmMlhjbmtjMUhJMURycjdSR3dRdVZmbTlGaEhxMFRWa0svYXJqcklETllDNUwzRVZkT1NxYnFEUXNLaGNHUVlrbTQ1YXBiZWZ5QlQzTEQvaHZ4ZlNqNm5yWnRWMzhEcWxXTGg3b1p4UHFMVWxSVjdCWHpsbXQvVmkzaG5PZS9mbTU5c2VmMDdvNVhzY244NmMyby95N1Vyd3NLdkhpVWlwRnRMUkNjcDVBQ1ozTkN4M055ZUl5L2V2TEx2SnUvUzBHSm55b3VNOWJpM1VWY1FBME5sd2xOUkxhaDRZcEZjZnpZR2VaNk8ybWxIWHdvc2FhTjBvSXZTK1o2R2NOaEg1aTI4SW5WOEdwR1BHOHRGdVY4TWIvZ3p5Mkd6eEd4cmI5NHp5Vms5VGx5Y0JWZzAwNjFIUk9oR3ZDVmdYekFxaVFPaTR2Z2c4TTdtUWhiRVhZdDdDTWZsWXhHSTFZSEJYMUtraVFoU2RwMDV1WXBpZ0x2aEg0K1JBa1lZMmxuWFpSU3lIbEUvSG1SeXQwZ2FFVFBMcXVPeUpZVXZQR3JWM25xSno5bTFhMGdDRW1hTUNwZGRHZTRLSHRVVFdiYVFFQlV3SVVTSDhKWVRJYThLaUNVT240YUJmZUd5R1J0dWcrenljalQreU42OHRyeEM2cllyNm1yL2lGcnFkZ1dkMWpnU29mQ004UkRNQ2hsOEZKR29lcEtYQkVqeVJhRDRLYUV1SUFSUkFMYUpMZ3k1NlZqZjh2Y0wrYlJHUFl1N0VObkNhVXZTWlJCeG1rV2szemY2YmEyOWJFQ21TcTJDdWY2MlB5ZG9DVm1WdGpFZ0k4M25kWVlNcFVnVWlMT005ZGE0S2JyUHNMcGw4OU10YlB3VWNUNlJzUTJmRGhvaEd4RHd4Vk11eldIVW9xbHBWVzhMK2wyT3hBQ3F5dXJhSjNnWGZ5SXkweHF3VlFBVE02ZFl5bDFBY2xXdVpZeU5WV2JUQU9iUDErOXo1TEdxUGtXN3c5KzYvZUxDb2dQVTFIYldpU1pTbU1ZQ3FtS3B3VEFvaFVZbGFKTWpOY3RueGxncmFXVnpxRXlSUWlCVURyS2thY2tpbXl0TlRiSjRxS0RJRldoVEcwTmRuSG9haGthUVJPVUgxZjZpNEozMzMyWGYvMXYveCtXM0NuQVlzbklpMVVBeW55eWpBdENOQ1B2S2tsWjNiQW9va2VZU3NCNUlHVVNvaVVxWjFYRTN3UEU0WDB6Q2U4cU50N1lUSStDVUplTHhaK3RzWlF1Qnh3S3dRMGNqbUlxTUN6a2pPSmVxaW9xS3FCTWhnU2hIbE14T2hsSHNxZHpJQW8zSUhZMTB6ei8ybk8wYk1iQ2ZZdnNYdGpONE93UVVkbkVXZUpDaXIzT002THhtMFpFWXM2ckQ0VGdNSW5GbUFUbmtoalo5aVVIZGwvTC9NdC9pK05VbGUwc0pLbkJqK3FGWE5KZGFHaTRhQXp3MzEzcWpXaG91REJTdHUwNnlDY2UvM3lNSEdGUkdFUVVXbHVDK05pcmZCd3RtaDdIckI0WGtPTlo1Nk1wRlV1SjFyODJEajNLekZRMis3SmNOeHpMeGxremdhM3A1ZGNQSDhDSGdEWWFtNlRWK2lCTld3UUJqWW01YzhvZ3FISGwrYVEwU2xmN1VSbWMxcTB3cDRXdm1uMWVSSkFRaTZnbUxWQ3JJVmQwRkhxaXhyOXZOUjhSZE5CVi9tRTFQOFJJcDFRUlU5WUo4UFZUTFFwZC9WTVNpN3VRR0ZHcmY0OTdPVFcvU2tVTklXQk5iTCtLUklzdXFtRmhyVFJhYVl6UzhSb1NrQkRyL0pGWTZ4OGx3U1E3ZFBiOGIzSCtaSEwrRU0xb1VMSmordzZXbDVmdzRtaDFVa3J4T085NC9lMDMrTC8vemI5aEdJWWtwQ3gwNTBtemhPQThpQ2ROVzNoUkpFbEtIVmhYMmxDcnVTVE5xaHhJZFk2SHdkYnBGd2pZeXJPdHpnMndhU3lJVWdxTUJsK0FCTFN0UGpyamlPMVVlWjVNNVJTSVJ0a0VYTHdHdXUwWUZmVkJTR2hocE0zZWhXdlFMa0dMSlNFak5yNDExQzY3OVNObU1GZkQvdDZoaUNraUNvVVhINi9QNlVUZStnUkl2UEVTaE5Veks2UW1ZZnUyN1ZoanlJYzU3VmFib3N6eElUQS9QMGZwU3ZxREFYUHpjN2d5cmxVTDQvTmU3WGpjdlMwLy84eXcvaU0rZXlPNXlmdkhUODVlUDlPcFNRQkdXY1RIbTFHbEZENEVuSGZqNjlMN3dKNDl1M24zNkZGT0QwOWhzSGdjaGVRYmx0L1FjS1hTUkdRYkdxNW9wajB2MXcxMzF0SFNjUVNzRnZMakYweTk3Z0ttSHdKMFBVdzgxYWxweHBaSVZmTnJOd0dCNllOY04yaTRFSUlLMk5SeSt1eHAydDBXV0U5L3VJSkpGYSsvK1RyLys3LzdQekZZSHI3M01lNjkveDUyN2Q2R05pV256aDdqMmVkK3pGUFAvSUM4T0VaWmpNalNObmt4ck83TEFncERXWXpZTXBKZVhRK3FLdHRLakltcEE4cmpGU0FPMjJyaGhnT2laUnRWTW5lOHhrTEpSR0VDZFFNQjZwelI2ckswV1lZS2lxQVZCTTFvMkVlaDJKYk9jOHROZDNMblJ4OWh6L2E5NEIxRnNjYXJyNzdFajMveVhVNE5qeEFJTVcrNFhyV2FuSktKVmwxL1RhOTdxcnFYTWtvVFhNbXluT1hucnp6UGpwM2J1ZlBtdXlpOElzK0hhSzN3RWxoZVBrdXJGUXNEVjFaV1NHMTJZU2YzVWxHZEF5MGFBclJVaG94Zy8vYjkvT3IweXpoeUJJbUZYcTV4TG1qNGNOQkVaQnV1WUQ2QWlPeEZoaVRVRnUvZklsVnc5dmYzR1pIZDdIZXBJbFNxS3F1V2FyaGJRZHp2YWpjVjlmektqa3BOMWRpb1NvVFUwYTU2dXY2eGZqNVVVYkZRTGV0OVRpV2dKZjQrRVl6dmI2ckdPYjRYOGxBeHdqcXB6Qm9mcDdqUHZoSjZrL2VvcWYyUHg3N2VsZ3M1ZjRwT3IwUGhDM0kzQU9zeG1lTHBaNS9pcTEvOUtsWW4vTWUvL3dmY2UvY0Q3TnEraDhIcUNIR2FxM2RmemFGcmJ1VFF3VU84ODlackRFZkxPRmVTNkJqbHRnbzZyVGJCRlNUYVlqVllwVGRPbGFwY0p6d2lCUUdaREZBb0NNNlJ0cUpyZ1VaSWt4ai9KTVR6bGxwaVJGMHB0QkkwQWEwQ1NsVzNUZ3BDNmNDWEtBa1lCSXRpMy9hOWZQb1RqL1A0STU4aGM0djA3SGJTa0xGemJoZFhiZC9IWEhjZVNzWEpsUk5FczY5QTBQVjFYUGRicXorOUV5L2NqUVZhMVl0VUhZbVA3MWdyMWlBRTl1N1p4Mkoza2VXenEyaWpTVnNadytFSVl5eXRyTVhxNm1wbDA2VmpYSCtxcFp5dWIyQzJTUEErMytkMldtZWY2LzNuWFk1VVl5TGphemd1TlJiVXFaZ2o3QnhabHZMdTIwZFlZaG1QeDV0eWNrL1QwSENGMHdqWmhpdVlSc2hLMVNKcHcrdlc1ZTZwVFg0U3RiWHJ3bnNqVkFrSk02RzU5enlOb21UU3lPRDl2aCsyMUJIdmtlb21vQjZTWmtySTFzdXZSWDRsWUtmbmk1SXRvN0h2NWZ5SkVrcVhvMnpBWk1MYTRBeHZ2UDBhWC83cWx6aVJIK2VmL040L1lmKythMUJZY0lxV2FaT3FqR0xnOFFOUFpsUDJYN3VMMTE3OUZhTjhGTnZiRWhNcGdxdWNHK29XWjhJbVUyaXBMa0xzenFXQkxJTzVMbGdMWlJuUGo0MGoxNGdQcUtBd1ZZSktKaGxoZkI2ckxOK3FzcjUrTEdSZFVwMWlKVUdoYU5QaVkzYzl4RDIzM1V2aVd5Uitqa3g2OU0vMnlmdU8rZTRjMSt3N2dES2FsMTU1a1lJaXVoUk1SV1JuaFd4OTFxYXZRV1l1RXlXNmFxc3JwQ3JCVTdLMnVvSXJIWWV2UGt5K1ZtQ3RvZDF1Z3doNVhoSjhJRWt5RkRyZWJOWExHOS9BVFVXRXovSDVQZC92RnlOa2xXaDBkYzVqd1Y1MU5JVHFlWTBSamZlQlRyZk44bkNGZDFiZVJ2Q1VVc2J4MkNZbzIvQWhvRWt0YUdpNFlxa1VCaE14WEgvaDFzMUFhNXVqU25wdDlwMTdTUkdZQ0hwbXArL3AvVk9DZmR6c1lJc2xySit2cTVXTjdjK3FvN2JaKzhmSFZYMkFhWVhLc3pKY0l1dG9GdWJuZWU2WHYrQXIvK0ZMbk03UGNPUCtqN0J6MTNiMlhiV2JwZE45aW9ISDJoUWxRamtvU1pNdVYrMVlSSFRPbm9WcldGNGUwYk05Q2xkUVVLRFJCTUpVdTRpTkJFQkppa0tSNFhIMDhYbWduNE5Ta0V3dUw5cTBDV2dTTWp3ZVJSU3lwbXFVQUlGSnZ2Q2tzVUNleDIxUUdGSXlEaXdjNU9DZW05aWU3V2JsN0lpV1NwaHZ0V2t0R0FhREFhUGxrdTVDeW9FOTEzUGI0WHY0NFN0UElKU2czUGc2Q1RJSnRzcllUbXJpZkRCOWdoUWFheXloRXVzMk0vamNzZUtYZVA2bG4vS1JQYmR5Y005aFdtbWI0WEJJWWhPQ0R4UkZRYmM3aHl0bWxWN3RXcUNtYkt3dVA2cDhjTkdFQUZaYkVNdjErNi9ueCsvOGdNeWtER1J3cVRleW9lRURveEd5RFExWE9tTVhnSnJwbit1NDFSYlI1Mm5ycFBlN1dwa2VtOVRFOE03MGRIMU81am5tUy9YODlQUWNiZ2FUN2I3dzhkRkFIUDZPSXZVOUxtUDk5bDBVZ2UyN2V2VExzenoxN0pOOC9XKyt3cW44WFZxMDJMZC9OM056YlU2ZVBFbXF1aXgwRmtoVmhnbVdPZVVvODRMK3lWWDI3TDJXZi9RNy80eEJmd1Fxa0k5S2JLS3hKbVd0djBLV3RyYzhma0ZCZnpCQ3A1Q2xqdGZlZkpFZlBmVWRWb1puNktRSjNnV3VPM0FEZDkzK0FMdTM3Y2NYaGxiYVEwckZhSkJqRXcxS0ViU3Jia2lpRCt0MGg2eUZ1ZTBNVmdkUVFHSmF0RXlIYm11ZWNpVWw4d21qWVo5OFpVUktpMTZueDNBNFpIVjVRTmJ0Y2VOTnQvSDlWMzVBZEVWd205N3d4SnEwU1c1NFhmcFhvMUNrS3NGcGpRc0ZhNlBWeWtZTVZ2d1N6enozRk5kODlscGE3UVhPbmwyaW5iYnBkUmNaRFVia2VVNXlCWDlGYW9tRmxRYUxjeVc3dHUxa3A5M0ZjVGsyZWRIRkQwbzFORnh5cnR4UGFVTkRRMFFtZGtheFlIemlKUkNvamR1cllxL3BpTlhZdGIwdTRwTFo2WWIxcko4ZkJaRWFMME5tcDRyWjZXYnpxZnhGMGRWeXA2ZnI1MjgyclVVeFV6dTIxVGZ6SnZPbm9uc2dWY1JWWmlMWms1Y0tLRjBaMWxmcnZ3Z3hHMVFnOTZ2ODdhdlA4NFV2L2hsblJpZXhhSEw2RkdXZmJkdm5XVGxWWU5HNG9tRFFMMGk4b1pOMmFKc09TaFJuM2ozRnR0NGhkdllzUlptREtOcWRGZ3JOS0IraWxXRmNrYlp1S2dyRWFEQUJyVWVzTGhjbzl3eWFuRkh1VUZqYWFpY0hkbjJFcS9mZXdHQ2xwSlhNazZnV3cvNG8yajdoQ05wVmUrUXJQOXlBcXBKdHhTbDY4eEFLSVZFWm5hU0hMNFRRVjdUYmx0NjJrdjdxTXRvN1dxa2xsQWxCQXFVRVhDbDRMQ2dMcXB3UnJHRjh2VTl5bEpWVTdoV1ZuSVVvWkozemFCMmZjNVhmckRZZ3p2UGEwcTk1K2VXWFNUL2FJbTJsbE03am5DTk5VL3I5SVltNXZMOGl4eDM3Wm9aYUFrb1NBQklNaFhkWU1TUW01Y1liRHZQbVMyOU03aWNiR2o0RVhONmYwb2FHRHpGYlZienJyWFRZcHN0WUg1RlVHNWN4U2ZHY3JBTzIxbnZuV3Q5bVQxNkE2NEdlL3AzM1BvM0hUSS9UbmMrM0M3T2QxV2FuNTl5bmpVdGlzcmJwaVBkRURhamFrVittRzFEVXhHRjMwYlh2YlVCMHprOWZmSnF2ZmV1TG5CNGRvNWQyV0N2V1VGZ1d0aTl3N05pN0xIYXVRb3FBVnREdHRqRWhRVXBoNUR3cU1ZQ21QMXhqZFhXVnNzeEowNVJ3T2xDV09VbVNFRUxZNUJyVDR5M3lHdko4Z0RJNVI0Ni9TNzhjNFZGMDdUd0ROK0NkNDBjNXVYUUttM1E0Y1hTSjFIUnB0M3VFSW1DdHhZZUNNT1Y3TzI2enEySWgzbWcwWXNmQ052TFZncnp2Mkx2akFJdWRuWGdIeGNCUjBzZVlCSnUwR09SRHpxNHRrYzFuWkcxTEdjcW90MFF4YnE4cTlWR3ZqKy9tTnhKMVdrVnFVb1oraUE5Q21pUzRNb3B1WlJYT09VWU1lZWFsSDdPNGJ4czNYWDh6cTZjR3JLMzFtV3N2a09sMHZEeFJBVUVJNHdMRDkzcmRiUHc4cTNVL3I3K0czMi82VCsxRFBEMDZVanVnS1d2d281eEVKL2d5Y04zKzY3RXZhVktkVWZpOGljWTJmQ2hvaEd6REZjOVlwRlYxRjJwNnV0bkl1cXg3Yi8zMEpqNk81LzFTZVIvZk90TStvdVBudEV3TmkyNWM1UHJ1VWZXK3pXNkFtZHB1bVYxK2lNVktTdXBDcHNteGdhcUY3UHFvNHFRNGU1Mm5aZFY2YzNyNU1NNVRuYzVCM2F4Rjc0eVNuQkx4azlPeTBTZHp1ck5YN2FNWjZxbWF2RnRQYjlkN2ppaFh1eXViekYrL0NQRXo4eFZVelF0R3hBaVlqY1ZXWXBHZzBaVy9xbk1PbTFtVWRZaFdERVpycEMzRHl0b1NKNWJlNFYvLzZmOUdzQVdla3VWaWhZUVdBZUhsbDEvai9ycy9qcWhBRVVZWUVYU1NJRUdSbHlWS2FXeGFJc2thLys1UC94ZCsrZG9MdEhWQ0hvYkkyTjgyak05S0xNK0twWFdoS3MveWVHSWpoT2hjUU9WQUFjS3lpem1VUndkdjhTZGYrR01tRm00VGdhNkJ1YVNMS3oxeEQ2QytGdEVPcFQzS094Q1B4WkxRNW1EdlJ2N2g1LzZBbTY2L25TTnZueUpOTzR4eVJ6S2ZrdnVja1IzUm1VOVpHcDdnclRkZndoSjl2cnhUTVRLN0xpZWMraElRS3BrNXdlTXBmVG4rZlZnTzQya1Y4SGw4VTU4Vi9qWi9rUjF2N0dMbnJsMTAwMFYwb2RCZUk5NFNUQ0FvaDJpUGlNY0VIWTlpTU9PMWpLL2pUVnJVMXBzM1BaLy9uNzMzZkxJa1MrL3pubk5PbW12S2RWVjdPNjVuZHN6T1lPd3VCb3NGRjBJQUN3WEZDREtnVUlRaUZQeEhGTklIVVdBUUFFTkJCY2pGQXVRQ3k0VVJDQ2tFa1FoUndJSndpL1hqZG14M3o3UjMxZDNscjgzTVkvVGhaRjVYVmQwOTNiTlQzZHZubWJpVDk2YlB2SGVtZnZtZTkvMjlaZHZpVFE4WUU4c24zMWMvOTlITmZOYzY2UXNQTGY1L2VKWEhOQTVuYzZKYWpGUUNwUlV6NlN3UFR6M0syZlpaQUFvSzNEWVBBNEhBL1VJUXNvSEFQY1NkVnVGUC9rMGNEbzI3TWlLN3pZNXZjMmg4MkpxejNHeVFsZkR4L2dpT1JvWS9qZ2ZyNlBIbHlOUnVzLzFXOStOV092ZmpJckZZNTcxWHF3aXNQNDRzVytTQ1VncUhJVktTeTljdXNyQi9oc0wxT0gvMUkvN0QvL01OREQyczAyVXhVdVFMbTFCY3ZYYUoxOTk2blMrODhrWGlXaDJURjZ4MmJpQnRRcTFXSjFJMStxTEx5UXMvNHVyYWFUUWJkS3h2YXFDa28xNUw2T2MrRWltVXIrelBpd2tWcEdJWUVYb0Fac3RJOHFoWDhjalV3VnJSOFE5R0trTEtoTndZSHprVkJRTTdBd2NSQllYTnVOZyt6US9mK3haeG84YjgvSDVpMVNSYjI2Q2RkVkYxeDl6K2FhZ1ZuRHR6aXJkUC9SQkJqaXFQYjl6SXNhdmY3Y1JJdzIyTHN2TGhWb3NDYlEwZm5IdVBGNTU4aVNTcFU0K21rVTV1aWpRN2JQbDdLM3VUV1ltUmp1Mml3cU8zYS9CNTVCbHBxOS8vNlBMYndaWnVHNXN1VDFRbGVCSnRjbkF4a1l5UVZyRnY3Z0NYMnBlOHJSa0dIWVJzNEQ3bko4ZlpQQkFJQkQ1Tm5FUzZDR2xqZk03dWlFMi84SkZ1cVN4VFV6VXVYN3ZJL2tPN3NiTGd6TGxUL01FZi94N0wzVVcwNitOc2pvK0lGa2hoZ0p4V3NjSVBYLzg3emw0OFFTZGJJVzA0YWxPT1pGcVRUam42ZXBuemx6L2cvL3ZtZjJSeCtSSVdUYTFXdzJJb3JLWFY3VkpvaDdYZVJpc3ZIQ3FXMUtjYnBOT3BEMkhZQWx3TUxoMitpTGQ0cGVVckx0ZVB3Zm9ZU0p4S1JBU0YwZVJGMzNjQksrL05vT3V0Z0xpV0VFY0pQYnE4ZCs1ZFRsNThoNVpiNWZMeVdVelVSZFVMY3Rvc3Q2N3k5dnMvNU8zM1hpT2pqYVBBVWdBRm9MMkFyZElYYnRHVjczWVFFWUJsdGJmTWlaTWZVRmhOWVROUWptTFlBNWhoSG5yNUhaZkZjanZOcmRLUWhQQXBGTVlZbEZJSTROQ0JRNlRVYitwb0VRamNUd1FmMmNCOXpDMThaRzNwSXpzdzBLOXlESWF2YlNPVnQ4c3RETkZ2NVNjNU9XUFQ4c2xoOE8xTzQyTitIdXgrbTJqTWJlL3Z4M3o5b2t3dDJQYjhSM3c5YjdxZmJiYmZqdHZmbjIvVEt3YS92MkhpcmhXR09GRmNYYjdNb2FQN1dPc3NjMlh4UEwvemUvK0d0bDFCWVRCMFFQaWhZSWxGS29GeEdnRzBleHQ4ZE9vVWhlN1JtSzdSbUU2UTBuQjkrVExmZmUzditJdS8vak91YnB4RDAwZmcyNU5hQjFKR3pFN3RJazNxSkhFTmg4UllnM01XWFJTWVlxVEt4eW1HcnF3M2UwMyt0K05EcmRyWmtkRnZCU0pDeFNseG5KSW1DVVdlSXl3VWhhR3czdDJnVlhSWVhWM2x4dklOOXV5ZFozYXVnWXR6RmxmT2MvTDBPL3pnamIvbjFOVVBzT1E0Tks2eStLb09mYWRmNmlRQzBucU15UzBSQ2EwYkxSNDdjcHg2M0NDV0ViMDhSOGFTZ1k5d1dVVHAvWHA5YTF3bjdPQTNPTEhyTFUveFkvLytiNXJQN1pzMCtPWW1WWU9POHVmbkJFSTRJaG1UNVgyRUJKVUkrcVpQT3BWeTV0d1oycmFGUms4a1pBUUM5eDhodFNBUUNBVHVDSW13c2U4T2hzQTU3MFRyaFkzR0NVZFhkMm5PeEt5M3IzRnQrVHkvOGR2L0hFdEdQVWxwNTJ0WUlGSmxxWTRGYmJMU0E3WUhLSlo3Vi9qbXQvK012LzcyTjB2SkxGRkVHQnc1WFl6ME9ick9nYlVDU1V3c0VqWmFQU3JYWUl0QXlSb1dqU01mbkgxVVUraU9GN1ZiRlIzZGpNbjEwMW9Ob3lXNkVOamNsWVBXRmtXRVFBOHlBQW9Na0hGbTdUVG4xeTd4dmZlL3phNW9GMXIzS2VoVHEwVnM5RmN3OUttbkNlMnNLSzI5N3V3YnVoWGErQlNJV3BTeVhxeng5Z2R2OCtVdkhLYlZicEhXNnlNK3hhSk1pNUZWcnNHV0FuYW44UTJIeDFGS1lZMURHTzh0MjZnMW1aK1paM0hsNms2Y1lpRHdpUlBHRmdLQlFPQU84QjJVb25LNFBhSnlZWERDNHFUQnloeVZHRVJxT0huMlBmN1ZWMzhkaGNhU1ViaVdIekl2Vlllc0RCMEFnMFVJaTZYdzY5S2p6d1l5elZGSlRwODFNbGF4ZERFMlF5bW9welY4QTFtRk1RSkZreG96ekNYN2FjbzVwRTBRTmlJU05TSWxRSUx1bTdMMHl3L2RpL0xGVFY2ajZ3Z3MwOU1OaElDc3B6R0ZveUdhTENTN21XV09tRG94RFdyTUVPRmJ2U1pwVE55SWNDcEgwd0Z5K21LRGRaYm9zRXBicjVIVHhXRnBaMzN2RlN1Mktvd2FlZDBGcG16KzBDdmFnT1BOODYvUk5XM2F4UVpwTTZIS0VSWmpxUVd5Ykk0bTdvbjBnZ0dETG9aVmdhZHZMNXpHdnBHRzFRNGxJb1NHZzNzUElWRkJBQVIrSWdnUjJVQWdFTGdqdktnUlRwYVJPeCtKUlJpc0xIQWlaN1d6d3RMcUZmN29UMzZQakJZelUzVVVDUnZ0Vldibm1yUTJPdGlDUVVqQlZyWkowaHNsU09FTHlnelF5dkl0enlCeUVwMXBKQW03R0lQUUFBQWdBRWxFUVZSN3B3NXgvT0duZWVySjUzam8yQ01ZWTdsdzhTenZmUEFHcDA2L3kzTHZHczRJcXJhOEVnYmgxVXFVQ2JZdVFvTE5PWm05VmdZMkppTGh5TUl4bmpyK0xFZjJITVVaNkhVNmZIRHFmVHJaT21kV1BrS1FrV1VGU091ekdTSkROMnRSRkYxOGtrdU8wZGxBbjBZUkRCcHJ1VzJtbndCUkpMQzVRZURJNlBIR3U2L3g3T1BQMDdlZHNuK0VLdStCYnducms1VStpWVlZbnlSYm40dldtbnE5U2Q0dHNOcFJxNmVzOWJzYzNYK1l4b2thWGRxZjhua0dBcDg4UWNnR0FvSEFuVklLRy9BTkRweHczcTVKNUJpVnNiSyt5TmYvNk4reG1pK1N4aEhMN1JzNE5NMlpsUFgxenNCT3pWcFFDcXp4QWs1S1FXNWNWVmZrY3pPOXM1S1hMRDdvNXMydWpFUVI4OWlCSi9tRkwvN1hQUEhZYzloQzBldm1DR040OXJHWGVPYjQwN3ovMFkvNDFuZS95WW1MYndNWlNTVElDalBJY1IwNHMwN21vcGJwc1pXSUhkTzROdUxRM0JGZWZ2N3pQUDNvTSt5ZTJrZHNFNFQyZS92Q0MxL2tuUS9meG4zclAzTjIvUXh4VXFObjE0ZjVya3BqbmNQWVlkNXVGUGs2cmx3em5wNDdKbDV2N2lON1czaGZNb3p4K2NsOSt1eGlpdSs4K3kwKzk3blBzYmF5d25ReWh4UVNhYjBiUldYUTZ2TlM3eldHbG1zZWhUR0dSRVgrUWNSQW9tSmNGM2JQN2FGQkU4SFN6cDF1SVBBSkVZcTlBdmN4SDYvWXkzbWpSWngxM2lwMEcxc3FJY1RnTmNxb1QrVGdoUjI4SDl2SHhIUnkvbFl6Um4xbUIvdmN6dk4wWkp0cXZjbnRuSE5qeFZKYm5mL29Ec2Q4ZENldWFkVGZ0VHBQWUN4UGNLdmxtM3g2Ui9ialY1Z3NYOW1hVGNldjlsbDU0MjZ6L0ZiYmo3TFYrWThjYU53bkZNQUpySFpFVVlTUUZxbWdwMXZFTlVjN1grUDY4aVgrNVcvL0t0MWlGVXRCWm52NGlLMHZmcXF1VjFCS2tLcEl6SUkyREFwM3F0TVpuRllWT1hVd0hVK0RGVHcwL3hqLytCLytkeHcvOGpTaUgxTVRzOFNtUmtOTllUSkhxaElTRWZINFk0OXgrZXhGT3IwV3FVekpiVVpVUm1hVjhpSlNqN2dOMUd1Z1M3T0FaajN4SjFsZXZ5UkYwZVMvL2VYL25oZWZmSVdrU0VueU9sR1JFdXNVMjRkRU5hakhEWjU0OGltV3J5OXpiZTJLTjNoSURHaC80ZGFPMzJ3N2VwMmJ4S3N2VGhOVllWMzE1ZHdGVWdMVzcwMVRrSkNpTTgxbmpuK0d2RmVRUm5Xc3RwamNvRlNFVWpIVytoeG9NU1ljaHd4K3g2Ty8xYTE4cEVlMjJXcTUyR2E1ZitHTHZRRHc5bURlYnE4c1RIT2daSVRWRnFSRVNJZFFpaVJOdUhaakVWZHpuRnM5aDB3a3h2Z3Z2V3FpRVFqY1Q0UVVtVUFnRUxnRGZPMlBvM0FaS012bEd4ZEo2cEtjUHVjdmZjalhmdiszc1dSWWlySmRnTjdHTjFmaUI4ZkdHdzZNcTV5dDMvZUxuRHJUUFAvWmx6aXc2ekExMGNSMFFiY2RrVTRSV1FRZGdlc281cHY3T0x4d2pPZWZmSVdFSmxvTFVwcFlGK09Jc2NhM2lLMUZDUkdxVEE4QVlTV1NtRjVQWUcyS29FbkVMRE5xTDg4ZWVvRjkwNGRJVFlQRTFJbHloY29sTmRHa3hqU201WmlPNTZtTEdaNSsvS2VJcVpQSUZQb2oxekZwa0xEcDNsVDNwM0pZMk55YzRZNFJZSFRaQ1V3b05JWTI2eXh2TE5IcXIrT2tRNXNjS1NWeEhQdEdBNmJBaWpJQ2YvZG5jTmRNcG52WUtrK1dFZGNQNjNOa25YWW9KMmdrRGVhbjV3RUdJaFltUkxUWTdyRXlFTGkzQ0VJMkVBZ0U3Z1JoY1ZKVGI4WmN1bjZCQTRmMzRHVEdtZk1uK01ZZmZZMGI3WXZiaTlpQlhwQSszN0tNY2JyeXRlWC9tcmNvY0pMRVRDZTdlUGFwNTZrbkRaU05rRm9oQzRuU2t1bGtpbnJjaEFKRW9XaXQ5dGc5dTVmNWVDK09CR2lpbUNGaEFja3N4alhSUllObWZSK1NPV0NHMmVZUnB0S0R3QnlDT1FTN2dGbjZKdWFubi85NTVtdDdFVmxFUXpXSlhJTFFpcGdFYVdKTVg5Q01aNGxkbmFlUFA4ZittWU0rN2FCcUtEYkllWlVUcjhpL0JsRllmMys4MXYyRVJDeVViWVhMTElOVTRiQVVGQ3l1WHVYcTBsVlVERnI3M09RMFRyRFdVbGlEVUE2THVVZnlaTXM4azRubUZVNzRUbTBEOXpBRExqY0lJMmdtVSt6ZXRadVllQ0JraFJCajBWZ3BnendJM0IrRUhObEFJQkM0SXl3cWdVdUw1emo2OEg1V1drdGNXejdQdi92R1YyaVpaWVJ2VDhCMmtkanhOSkd0WW52U0o0dE81b2tPaHR3akpBbHgwbUIyWm9GT3U0ZEtwa2lTaE1qRkNDdnBkRHBJNVJCU29aUWtLbUplZnVGejdEMndGeU1ObWZhdGMxV3NlUGZrZS96bFgzK1RIbDI2SFcrZXRXL2hNRC8zaFo5bjc4SmU4azdPM013Q2piaEJ2NXZSVUEybVpKUElSZGpNVXF2WGNaRkRGeHFzSU05emxFeks2NGlZYWM2eGUyNHZGemRPZTFrYWxZM0Z4cnFKVmU5dkZnMzg1TVNqYzhydlR3Z0tWNkNGUVRuSmFtZUZEOCtkNHZIRFQ1RDNMY0pWK1JabFdvbHlPR044VmQ2T1ljdEN3L0xUSUovSitZNTdSbzVFV0wybmhkRWFvU05pbVRDVnpqQlZtNkxWMy9DYmxVSldDREdXbGhRSTNPc0VJUnNJQkFKM2dCVU9yWHRNN1VwWjZ5NXhmZmtTdi81YnY0cWpUejJOMk1qYVRJcFlNUktKcmRqY2xHTGlzNnR5bklkVHZ3Y0JLRVFjUWF6UW9pQ3pmWVJMaUNPTmNCRktTS1FDYlN5OXJFZXIyeUV0SXFJNEphMUo2Z0prSEJFbEVYTlhwNGtqUlU5Nzc5SENhUGJ2MzgvRGp4emowTDRqdEZmYnhDTEZGZzZkRzNDQ1d0SkFGVkRZSEd2QkNZTVdsb0tjQWsyVXhMU3lIaXFPeUlvdXMvTzdFQmNnVVJHRjBhVWczMG9NYmlYc3pUYnY3eFNKUUtCVWluWTVSWjZYZXhiMDZQSFIrUS9KZnpwSHFSU25IWG5lUndpSFVoTHJOTVlaNGgwVnNsc3cxZ1BYWXExQVlGRklySWg4MjRUQ1FnUXFrc3pQelhOMThjcllMcVNVWStrR2djQzlUaEN5Z1VBZ2NFZFk0cHJBU2poMThnUmYrLzJ2RXVIb2s1TTVjR1ZoMTJhaVVvUlNSbXkzWjZ0R1ZsVmZMWUFjZzVIUXpYczBaMmR4Zlc5N0pXVkVvaURUUFp5eGlNaTNpVDB3ZnhBdE1tNnNyV0JjVGhRN3RNN0pUTWFWeGJOSVZZRE95RTBPT0M1Zk9jTTc3NzdHeXRJaXBtOUpaSTFVcEFpcmFFWXp0SFdOaGNadXJETDBpejRZaXhHV1FtcFVUWmJ6YzVLWmlMVitENkJzK09DSHVyY05Oay9jNTYzZmZ4SklwSXg4b3F6dzRrMHBiMXUxbEMxeFpmRXlSMllmUWtwQjBjK0oweFNVb0s4TFVMN0VTbTJkK0x5RFdFby9pN0lnMVh2S1JzS25UbWhyRUJwSUhIdjM3dVc5UlFicmduK0lNY1pzV3hRWkNOeHJCQ0ViQ0FRQ2QwaXJ0Y2ExMVV2OHdSOS9uUjRiVERWcUtCTFd1NnRNemRab3QvcCt4WkZJckk4RFJzTklyR1NUZXB0MHA1aU0rNGt5bDlaZ2FXVTlUcHc5eFhPZmVSNFZTWnpTT0ptVEcwdXRHWkVWQlNoRHU5dENDY2wzWC90Ny92enYvcHlNRFNKNldIb1lEQVpYdGl2MXJYSUZzTFI2aHIvNEx4ZXB4MU9ZekhyaFJsVDJGMnZ5VHo3L1QzbnA2VmRRY1VTUjkxQ1I5K2txWklhTkJVNUpuSFVVYU5aYmExeTRkQkVsRkxuUkF6c3hVV1lKMi9JNk4wdlYwYnpQaVVWM3BiVjhycTNScFh5V1FPeEZiSVFYZlNkT25PRGdTMGRJb3BpZTdwRTJVb3d6NUhtZlJyUEdMWjVEUGtYRzgyTXJwSlE0NHgwT3ZHK3dLdk9NSFFyRndzTENZTjFSSVF1RXFHemd2aUVJMlVEZ050Z3U1bkszTVl1eWhYdlovbko4ZnJYL3lhcms2bncrclhqSjVQSEZ4SGx1WjU1L08yeTEvY2M5dHp2dnJqUmFKQ05IV3BCU2RuS2FYTmY3eERwbk1JQ1RHVGZXTC9ON2YvUlZWb3RGSWlGWTZ5NWhLYWpYMDZHSXJYRGpiejlPai90SzVJM3Z5bUt4ckhmWGVPK0Q5emgyOENFV21udEo2Z21SaXVsM2V1UTlYL1NUMUJKMG9WRnh6TFcxNjdScEFSbWFOcjVXM3h1WlJVSjYreXZqaUNORkhFa0tYZERMV3NncXlrZUJJc1lDNzV4K2s0Y2ZlNVNGK2l5Rk04UnBEYlRCR2t1Qm81YWtHQ3RvRnkxV1dzdWNYVHBUNWc1RG1rcnkvcTN1d1krem1NcGJWaG1YbFk0SkVpVVV4aFNBSlNMaTdLWFQ5Rjk4RmRPWUlkdm9rc1l4MmxuNmRHakVDZFpvQnQyK25CbE1UUmwzZGxiNGdqQW5jUmlmMDFxdUJ4YnBoaExlWVhEQ0x4ZStFd09tbkc2OXZYZk5BT3U5aTNHK3E1eXdaZnFKUThRQ1cwVmhoWC9JY09WTFJOQ01HNE9jMklwUTVCVzQzd2hDTm5CZk0vQjdGV0tRTzdqWmg5Vy9uS3Vtak0vYm92SzRFbU9WUnBMYitKQ09iam5tTXpvNGx5M09lWFFiNjRhcWRIZ0JZOGNmdUdWTzdOOExRRHM0MzdGaDZLb0FwREthSHhXZms4Y2ZYc0NtNDQ5dFd5NnZ2SGR0dFhCeStkZytSL2N6ZmxPOFY2Z2QzMzcwUGpBaGlyZmFmblNkN2M2L1dubGlleTlNZXlBc3d2b1dzOUxHT0t2S2FuYUp0b1lraWJCQ2c3SjBzelpKWGRIcGJuQmo1VEwvNG5mK1p4dzlMSmJDK1RKOGg2WFgwMnlGRzhoWE40eklicUhWdG5vV3NCT2Z2THVCb1cvYm5MbHdpdTk4ZjVaWGYrcG5PYmJ2RVd3UGRHNlFVakk3TjRPb0NhNjFyL0JYZi9YbnZQdlJtK1QwY0dSRTBsSllYOENVaUFUclFLRlFSTjRqbHhoWENsMkxSV09BZ3JndUtIcUdkMis4VGZPTk9YN3VaNzdJNGYySEtWb1o2MnNkcEpIVWFqWDZXWXVvcnJoKzVTTGZmKzF2TVJSb2NsQ0NyS2dLMmV6QXdHQnJWOVpiM0pnN3hqSUlxVHA4V29RR1FZUkVrdEZqemF6eDd0VzNlWDRoUWg0VVhHOWZJWTVqYW5zVWE1M3IxRlFkSVV1bmhWSndWbE9KeGJuS0pYZ3k1aXdSenVJS2kzQ2JsMWNDOTJiYncyalUxUDg2clBSVDZVQkxTVTRPa1N6M1YxbHorZjkzYUpVVHh4SHo4L01zTHkrVEpBbEZVZERwZElqam1LSzRaOExOZ2NCTkNVSTI4QUJ6NjJqUGx0SElTZytKdTQwSWp1eHo1SGhqL1FLMm1EOG85cm1MWTFmWGRhdkJ3NjJHdU4zSSs4azdLTjN0YTQyN3pTeThtNmkwdjY1cU9OWWd5b2hzWlM4dm5jUUtYdzVrVElGSzRjcTFTeXdjbUVXN0xtY3ZuK0pQL3ZRYkdIbzRlaC9yMkc2YlllQmJiemVKSmEwSnNuNlBHeHVYZWZOdGkrbjJXVDMrSElkM0g2VXhOUVZZcnE5ZDR1S044N3o3NFk5NDUvVGJMUFVXY1dURTlkajNaNUFTZElSMkFrbEtneWJ6elhsQXN0YlpJTUhTcGtNY1JhU3BvNmM3MkJqSU1ycDJqWGZQdllaTGVqejE2Rk1jM1hlTXVUMnpTQlRPV0ZiWGJuRHl3eE44NzYxdmMzYjlJeHdaU1VPaVZZVHRGOVh6NVBCWjVtUGZsYnVrZW9ndHowT1ZpUjhBQm90V09aZFdMeUkrOGptOVJWWVF4ekdSaU1qN0JTbTFnVWpjaWx2bG1RcGpienFDY2F2dDc2WjVRUlpuTEVYWDZYUTYvbHdtSXJPQndQMUNFTEtCUU9BQlJTSmNWTm8vbGE4eXoyRVl1ZExVcDJxY3YzU2FBNGYza05rT3A4K2Q0dmYvNkd1czZldjhlSWUrYjRHdzVMb05BcXpMV081bXZQN3VPbGV2bmVIZ3dtRm1wK2V3MXJMZVd1UEs4aVd1M0xoRW0zVXNmaWpkbVJ4VENMenJhNDJqQjQ3eDFHUFA4dkRSUjVscHpQaDJ1TTZ4dExMRUcrKyt6c2x6SjFqcnJQb2toS0p5SE9pdzBqM0xhejlhWlBIYWh6eDIrQkYyeisxRldFRy8zMmR4OFJJWHJsNWdzWHNaVnpXSHlCajJOdGc2Y1AzcGNRdmQxallkM2p6eEJtK2RlQk9mbVN5SmlCRUlEQVpWcGx0c3YvdnREMUJGbjNkS09ob0twbmJWNlBmN201WUY2NjNBL1VRUXNvRkE0QUZGZ0ZQSU1vM0FlNHJDb0tXeHNLaEljSG54UEVjZk9zaEsrenFMU3hmNTNYLy9WVGIwTWdxSDJVa2hDMVNqMGtxQU14a2Jkb24ydFZWT1gvdUFxbldBeFdIUVdBcmZ3U29DNDBBWGpvaUVhYlhBOFllTzgvS0xuK2VaeDU0alVUV3lYb1lVRWRaYTlpd2NaTmZzQW9jUEhlVkhKOS9nbzZzZjRpdzBwMUw2dlJiVzlPaTVIbWV1Ym5EaDZnZkVwRDRpaTZNZ3c2R1JRdEpvUnBpOFFKY0tUc2lkRTNGYklaRCsvZ3ltVUkvcUZMckFZQkZsckxZZ0w5ZjMyYjRPV3hiZmZieXB3YUxMcWR4MDdFOWphdWl1TGdIQmNpdHdmeE9FYkNBUWVEQnhFdWxpbjA3Z2ZBbTlFN0tNb3VtQlQrejBYTXBhOXpyWFZpN3c2MS81WnpnSzZyV0VqWDc3cGhHM1Q0VXlpZG9KTUFLazAxZzBtZ0x2a0ZBVmxmbDJxa1lNODZlRkEwV2RWNTc5V1Y1OStWWDJMT3hINVFtcmEyMTByMkJxYW9aT3YwOTl1c1pEK3g5bFlXRVBzN096RkgrdnViUjhIdDAzWHZ3SUwwaUw4dGc1V2RtclRBd3lnWjJEVHFjTWVKZU56RnkrRXpkc2E4U0VMNFFyYzRKN3VrdFZ1Z1dVOG5hSXdSZFpWZGY2Y2FhbWZJZDBtTExpODFPZDRzb25JUzlrdGRhRDl5SEZJSEEvRVlSc0lCQjRJSkhnVXdzRytJaVVUeXN3T0ttSlk0ZVJsaE1mdnMvWHZ2RVZJbW5wMng2NXpYRDQ2dllkbzlJYWRwanJiRVRwTXlzRlFnbWtWR0F0V3VkWVI1bFM0TmVWU1BiV0R2RGNFeS95MFA0bldGdGF4eFNXaGVaK1ZOM2ZsN25HYmkvbStoblN4QnplYzRUSGpqek8xZVVyR0YwT1NZdnlMcFRaR1VMZ25RK2N3MW9mZWJXR1FWSjBIUGszUmZFeEVxby9SVWJkSktvSEZZY2pTUktjY2FYSExpaXBoaTRCZy9WdmYrcEd1MXhzeDQ5emlOOEJCbUlWYjJwTkc2S3pnZnVKSUdRRGdjQ0RpWk5sVkZhVzR0VkhZcjJJTFhBeVo2Mjd5dldWeS96QmYvZ2FiYnZHekV3ZGFSTmFuVldtWjZkb3JiZDM5aHBNR1NFVWdGQmVxRHFIc1Q1TXFpdlZTalFVUmM3NG9YMGEvUFFMWCtMUS9ESDZhNGJXVXA5ZDlYbml0RUcvMDZjb0NtOGxKVFVpZFloWWNlemd3eFRQWlp3OTh4R1hOczZDYXFKdEQvRHVFN3JLRnhnSUk0bHpBcFhXTUZxRHRoVDlLaWU1Y2czWXVZZUJ6WkhZU1c4SVA4L0FvUE5YaFhaM1dkVmZwVmg4ZWpZTlcrN2RTVGNRcmxVMDltNkt5QUtCVDVzZ1pBT0J3QU9NSERnL09HR3h3dUdFYnloZ1ZNYlMybFcrL29mL2x1WGVWZUpZc3JweEE0UW1iY2EwV2pzc1lwSDRpaWs1U0kwWWkrNVZmcURXRHF1S0hDQWp2NXBMT0hMb1lXTFJRQlNLUGJQN21LN3ZvclBhb2QvSjJMdDNMNTF1aTZnZWtia09OOWJXcURVaXBwc3p6TlNua1JzeHVUSCtIR1RrZDI2ZGR3SVFaV2cycVVFL3gyUzZMS3FMOFY0UUVvRXBKZUs5SzVwVUpMM2JiR1VwNXdBMTNnbjJwdHdpb0JxNVlhZTJyVXkyRk42WnBISW9tWndLdDcwNTErMU1OUXhTQ3NBWGVWVWl0dXJ3RlFqYzZ3UWhHN2l2R2ZXTUhmV0ozY3BIdHNKWDVGYnF4WTN0cTVvT3ZVa25EN2pGOFNkV0VVSU0vMzV0cy8vaHZQRS80cE9wYWNOdHR0NSs5QS9sMlBtem1iSHR5MTNZVy93NWRoUG43MjV5L0Z0dFA5aGtaTGpVamx4L2RWN2p4OXptL0t0NVd4ekxmL2VUSjdMNStwMXpXR1A4a0xGd0lDWDliSU9rRHExc2d4czNydkF2Zit0L3haVFY5djJpQU9IYnptYTk0dTc5d3o1UkpuM1N5a1JVWTBBcGhKUTRyU210Q0ZCS2taaUl3d2NPa25jMVFrYkVJcVd6M2lXS2F1eWFuYUs5MGFNNVBjTnFhd2xac3pUclUyVDlQckdNT1hyNEdHZXZmVVNmdnUvcEtnWG84cDZJVXRRNkI3bUdPUGFxcXhoKzEySlFPcld6VEVaZ0I1U25wczFJbStHQm9mUG0vMDV2Y29DYkwzT2Jkejg2ZGRYeHRwbHV0OTN0VExjNnRWSGhHa1JzNEg0aENObEFJUEJBWWdWSUJkcG1xRlN3ZU8wU3UvZk5rTHN1WnkrZTRrLys5QTh4K0Z4WVJ5bGk0ZVpLNEZQRmtpUUpSdnVITnFFa1Npa0tZNzFvQmFJMFJXZlpJTk96d2psSEpLSFg2ekNsR2lpcGZQUFNLTUlVQm1jY1NaTFNhclZJa29TNERubldCaUV3dGlETGVsZzBTZ2lFOGxGdFU2WVhZQ3hSdlVZY3gvUTJPbDVNbDdabVNpaUVjRmliM2ZQUldPRFdLdk11L2JQS05OWEI3ajd0YVNEd2swQVFzb0ZBNEFIRllqQk1UZFU1ZitrTSt3L3VKbk10VHA4OXdUZitqNit4bGwvSFZpS1dFUkY3RHltQXZCaDZnQW9OVnZzaXBLUldRMHBKcDl2eFE5Y0NvbGlTNTlvN0hEaE5YTFAwZFlmNTZiMElVNURuaG5vNmcwU2dyU1ZLSWx4bWlKSVk0L3BvVzlDc0ovUXlRYi9vWUNpUVpPUkZNZWdzVnpiWnczUzd2ZzF0RXBIbkkyYXhvc0NVZWplT0ZVVnhqd25aN1lMRW00WmRodk1uODJ4dkY0Y3Z6dHRaRld2dnFkOXpJSEFuQkNFYkNBUWVUSVFsU2dTWEY4OXg1S0Y5ckxhWHVicDBqcTk5NHl1czVVdEk2VEIySkJJTEU3a01uL29aYjBtYVFKTEVDQ1BKZWpuT09rdy93eUpJU3o5WDV5d20xMlBkMkRxOU5hN2Z1TXlCbWNQWVNORGU2QktybUxqV3dPWTVtUlpFallqQ1pteTBWOGhjajVta1JtK2p3L0xHTW9ZYzZ3b1UwRWhUSWhIUjcyZFk1MzFTcDlJcDJ0a0dTWG04cEJaVG1JS3NGRlB1bG4zbDdrRkdoV0FwWXVVZEN0bkIxWTlrT24yNlUzdlBCOFFEZ2RzaENObEFJUEJBNG9Rak4zMmF1MUxXdThzc0xsM2sxLzcxUHdOeUdvMllWcmM5bms0d05veGNpWmVkVlFMQ1FaNkR5UW9rRUJFekc4M1RyRTJUUkNscG10THV0cmplV3FTZ2o2YWdXVXZJYkk3TkxLKzk5VDBPN1RuR29YMUhFYW1oYjdzNEFZVW8wRVlqSTRFMmZXUU1TU3hwWld1Y1BuZUNpMWZQNExETU5PZnBkRHJrbWNWZ1VkU0k4UUt2eUN3cERXeHAvYS83QnBVb2hEQTRBWHAwVEgzSGJ1QXRsdDhzUjM2UVozNFh2NEdkVHhNT0JPNTdncEFOQkFJUEtCYVYrTHFvOTA1K3dPLysrNjhTUzBIUDloRkdEQXE3Tm91dGFGQ281TXI5N0JScEdtTnlRejFxY3VUQXd6ejMyRS94eENOUHNuL1hBWklvNWR5NWMvVHpIdWNYei9IdXliZjVhUGxEK3IwYzd6VVE4OEdsOTNubTRrbDI3NW1uUHAxZzh3SnRNMFFNU2ttS0lrUFdIRFBUMDdTeWpITVhQK1M5VSsvUnc2Y3N0RHNaZ3BROWpiMGNQM2FjSjQ4L3pZRTkrM0c1WVdOdG5RdVhMbkR1eW1sT1hUdEpUbzhpTDVES2w5M2J5dkhzZm1CQ3dONXBPc0VtTEVITUJnSjNTUkN5Z1VEZ2dhWFZYdVBhNmlYKzhJKy9Uc2V0TVRQVlFOcVVqZTRLemRrNm5WWnZZZ3VKUUNDSnlraWNZK2VFckNUTEpQTlQrM2pwczYvdy9KTXZjWFQzdzZTdVFkNHFXTzhXUEhINEZRd0ZEeDk5bG1OSG51TGJiLzRkYjV6NklZWWVhVlRINklMWDMvNHVXbXNlUGZJRUM5UDdrQ3BDSnBGMzFFZ2NoYzBwdWdXbkxwemt6UTkrd0lYTDUzQlk0cWlCTkROODRYUC9GYSsrOE5NMGtpYmRsUjZ1WlpsS0d1emU4ekNQSG5pV3k4dVgyWC9xVGQ0ODhVT3VGOWN3SmtNb2k0Z3NMcjlMTDlaUGdsRWh1WTFieWFSd3JWcTkrbFh2N1BzWGVIdXRuUkx6MVMvM2ZubVdDQVMySXdqWlFPQU8yYzVMVXQ3aFg0Yko3VzVuMUZVNlN0OU9CcFhodDBQbG5TcnRabi9LajhQbytzNlY1dTZqODhycGRtY21KaUpkY2d0cm8rMnZ5cFk3c0hpUDB1cWNobHNJTjVJVk9taDY0SHczSnBseFkvMHlYLy9EcjdMVXYwSWFLWlpiMTNFVTFKczFPaHNUSW5ia3ZPd1c3KzZhanpITTdYTXpZL2JPUHNRTHozeWVWMS84R1E0dUhLTFlNTFJXTTJxaXh1N1ozV1R0Z3JWMmk3aWhlT3F4bjZJNU80dVFLVytjZUkxTWQybUlHcWV2bitieTlhdDg4Zk0vejNQUHZNamN6QUpvUWIrZlU2L1hXVjY3d2RMVjYvemc5Vy96d2VWM3NSUUlFdEExdnZ3UGZvVkhqenpKZExRWDJ6Tk1SU2xUQzAya2plaDB1dWllNGFFRFR6TS9mNUJhYzQ3dnYvUDNYTzZjdytRZG5DaTJ2KzVQdThUK0R2ZC9weUoybE5JbzdWT3Y5N29QTTVRRGdTMEpRalp3WHlNZENPZHcxb0x4UGVXRmt3anJ2TWl5cGJxYTlKTXQxWkpnT0d0MFdnbTBVYUUxNldQcUFDZmQ1czQ4bzl0TWRNaXBxcnVIKzl6OG9kci8yTG9qN3dmK204SmlyV1lvcHVUd21zcjNZK2M2TUdIeTRrODRYMkZlL1NFVlcvcTRqbCtjR1I3QWkwNHo0bG03aGM5czVSa3IzZWI3NTg5eWkyTk5ISFBvNlR1KzNBcUxFeGxXYXFTTnZKaDFrYjlYWmV0WlovMStwNlpyWkZtWGJ0Wm1acmJKOWV2WFdldGY0OWUrOGo5UzREdFRkYlVkM0p0ZXA3K05nTElNNzZqbHJvV3MyT0w5Nkx4SVFtRVJLaXA5WUNXeGlyREdFcFB5K2MvOExFODkvQ0o3NjRjbzFxRG9XbWJxMDBReXBwZDFNY1l3TmRWQUpJTFZwWFYyTlJiNGhaLzVSWXF1NGUwTGIxQzRISTJtelFiLzcvZitJOTkrNzIvWXRURFAvUHc4VTFOVFhGdGNZbjExalpVYnEyZzBEUnBrNUVna1AvZnNML0hLNHorUE1uVmNKMGZaSEltZzMrMGhYSVFVQ1FLQnl4dm9mcCtuSG4ySjNYdDI4ZlgvOUs4eHBRVE1IV3c3U3IvVi9aamtiZ1h1TmhIWXphdHQzZkhyYmc5dHl0ZWROalM0MjJtSXhnWitFZ2hDTmhDNEM0UWJENFRldk4za1RmYkQrQitWangvVmxWdS9kOUpISXAwRXpIQmFyZU9HNXl5MkVwSzNjSDRYemcyT3RwVlFIVGU5bjFRTi9yeGsrYWZWT1RNMjNmeW4xMnd4TGEvUm0wd2huY0Fod0VrRWtPVVp1M2ZQc2JSOGpVeTMyYk4zaHV2TGw5am9yUEJidi9lL1kramhtRXdmbURqTlRYd0NBbmIwR0pOQ2JYU2VHYm1uVHFKRU5IaDQyTlZZNERNUFA4MitxUU1vblpCbk9SUUNpOEJHdnQyb0VBS3BCSG1lTXpNMVMxOTNhY1l6UFAvVWk3eDM0VjEwS1VwOU9WYkdqZFlpSzczcm5MbmkyNVJhSXhGT29vaFJKR1ZCVjh4RE00L3kvR2RlSmlsU2hGT0R5bjJCUWVEVnFRVmlsZUJzaEhJMUd0RU1zL1ZkUEx6d01CZVczL1lpOWxiM1lYVDY0K0lPOXY5SlJHSkhEMjEyYUJvSS9DUVFoR3dnY0wvaXFwNzFzRW04YmxwUFRFeEhGcGNDWWp4aXk2YjNrMWdIVWppRzNUczNiejhxWkNlWHkzTFkzNWJuNzBvQlZFM0hyMnVMNVM0R0o4cW92TVJaVVVaa2h6SFRlclBHNnNZS3FJTHBxWlNOL2dxZFlwVi84ZFgvQlUyWEhYY2RRRTRPRXBRTDdHQU5rRWpyQlhvcUk3UXBBTUdoL1FjNGZQZ29pV21pQzR1ekFpVmpuQVdyL1djaEpNNVlzbTVHYzdySmVpOEhLWGppOFNmWis5ZDd1WjVsU0JRT1M1OE9Gb25SbWtwWktpUk5OWVZ2OHVUajV3a3BoL2NkNXREK1E1aFdqcGZPR1lJQ1FlNGZKQkFvcDRBRW5XY0k1MGpUbElhWTRybG5YbUR4YjArUlUvZ0hPRCswd2RoM2NadnBKU0dpR0FnRWdwQU5CTzU3NUdieE9zYldacEt1K3RjZ3JEd3hGYmVZanE1L0IxbDZWdmhvcm5DYlJldHRUMjNOdjNXaWZGRXFJd3NZak5IMDh6YXp1MnIwaWpXdUxWM2tmL3ZOWDhQUVJWQ1UzYVYyaG5FUFVsRW1MUWd2MUVlK1R5VVYxaHB2cnlVVUJwOWJldVRRVWJDT0l0Tkk1Nk9ma1pTWXdtSnpuNHVpSW9XMklFVkNuaHUwQmhWTEdyVUdMejcvRXRlVzltQlVSaFJMakRTc3JpOXg5ZHBWdXYwMnNoU3V4eDkrbkpuNkhPUUNseXZxcXNsbkh2c01FUTVIZ2NRZ3lnNW9rcktMbC9OTHRjblJSaUtFS2J1SEtSNDU5Z2lDQkVtRXhGWkI1MDIvNGVyWEtzZm1EU1AwRG91OVpaUGxRQ0R3azA0UXNvSEEvY3pOQkt5dzQza1BXNDNWVnNib1F2cUUwdEVwMWlmUk12cFpqcTN2cXVXbHNCaWRqbTIveFhMaHlxcHZNWDVXMndtVFRjdWRSRGlGajFoSzM2WVZ3QlZsMHE4bE4xMW1adXVzZFc2dzBycktQLy9OL3dsSHh1ejBGQ3V0ZFhZK0lqdVVhMVdLeGFRdnFYS2lqTXVDczM3b1BoRUpjOU5URkxsQmFrMmlFcVJVWUJUVzV0NVhRU1ZJSVZFVVREZW42ZmY3MUpJYVVVMlJaUm1mZi9uenhQVlh5RTJYUnFORzFGQjhlUG9rMy95cmIvTEJtZmN3V0Y1NjZpWCt3UmUveE1HOVIxQXVKZTlvVE04eGxVN1RXbG1ub2FaUUZBZzB6cGxTamd0d0Z1RXN3aG1rOE5GazZjQVVtcW5wR1JRSlpjMCtvOS9CcUR2QVVPSXpNcSs2RXdKN2ozajVCZ0tCblNVSTJVRGdma1pzbDY5WlZlcVBqVmVYMCtFOEsreElQdTVXVW5MN2VKY1B6bTYxN3FoUU50c3VkNEpCV29KM1RYQVRVeWFtNDh1OW1LNEszOERuQUpmSEZCb25NMmFtNnR4WXZjUnkreksvOFp1KzJVR2FTRlphaXo1d3VORWlpVE1BQUNBQVNVUkJWTVBoUElmekJWR0Q3N0JLdFBBUEFnS0JjYnI4NWl6R0ZqZ3NTZ2w2Ulk4NFVTZ1NwSlBZd3FLMXdWbElWRXdjSi9SNlBVUUVjUnhSOUF1aVJrUVVLVGJXTjBqcWdsNm5RN3UzVHE4WFU4OFNPcTAyT3ZONXN3SkJtaVJvYlZsZFdVRzZsS3hkRU5tSVpuMktvc2dSMG80VkpjcEJpb2RQR2xFQ3BKSTRvWDBLZ3ZENXVvb0VSWXFsTzVMRFBjdzlIVDcreUxIMFdVdVZreDNpc0lGQXdCT0ViQ0J3dnlJc09EMGhGa2V0cHV4RTRWWVYraHdkdXJZREs2NnRpclVtWFF0R2tjNy95MDJzTzdhTkdNbVIzY0tWd1pXNW9MYWNQemF0NW0rekhCY2hoVVk0aVhVU2gwRTZXNG9oalpVWlY2NHZvV256RzcvNXEyaTY3SnFmNHZyS1ZaeUFlajJpMXgxcFAvc3A0MGJ5ZzhmblY1bkREaWw4ZEZNS2hYT09ITi9CcTZESDFXdVg0VG1IbEJJTUdGUGdyQ1JTTVVJSWlxSkFhNDJTaW42L2k1U1NvaWh3U3FOMXp2ZS85VjFPbm4ySFRMY1EwaUVpU2FlM3dYSnZHWUNZbU8rKzlSMU9mM1FXblJrYTZUUldTeFptZHZQbFgvZ3l1MmYyUVNZUjFzZFJIYUswWDNOUUZvQTU2UkRLWWsyQlE2QWl4MXE3RFlDcDBqcXFVWUhSZTFEK2hNYjlPTWJudWJGUGdVRGdRU1VJMlVEZ3ZzV0N6QmpVSUEraXMzWVlpWjEwSUtoeVdxc1VBYjhBeXVIZ3NTbHVOSkYyODlRTmt3VzIzVjdJYmZmdkdGcVh1Zkw4eHFiVi9HMlhDN0FqK2NIT2xQTFBteG81cWVsa04vZzN2LzJ2MEhRUldLNnZYTU1KaUJMbzlYZE94RmE0eVlpNkc0ODMrcWkxSllvaWhGRG9YR09BekZvV2w2L1N5enRnYW1XZXNTQ0tGRkdrTUlXaDErc1J4ekZ4S21sM2MrcXpDV3VkRHRaSVZDTDRtemYvaG96MWdkTkFRVkhlTzR0RW9zbXhXRGI2YS9SMVJxWnorcTdnV3Y4Nmp5OCtUck01UXlUcUtCS2ZxK29Na3NyQ1RHSUZPT0Z3YUFyZFFWaUZVbzUyZHdPREtmTmJxd2V2aVJzeitQbjU1VlVlN1hiR0JvRkE0TUVsQ05uQUE0TXJ2V1NkYzRPL2dOV1E3WFpZZS9zUm4ycS9ibEk4c3UzSExhT2Z6cm5CZXVJbUVVMWtUbHFIdi9uYnYyVGZ2bjJzYjZ5U3BqRkpFdE5xcjVPbThkajI1VWJsenZ6VTZKeWJPVTBhNDdaZExyRWpEUWUybmpvbmJySWNuTDd6WWl2aHdGbU5kRnQ4UjhKaGhlVjNmdmNyV0hJY0drUG1oWkVBclNuemFOazVOVFJNOS9TYVAvWUZhNjR3ZzNOS2FpbFpwc2wwRGdKRTVGdnFHdURzNWJNc2IxeG5WeEl4M1poRnhSRW1LK2dXR3Vra2NWMWhUSUVXUU9KWVdsOWllcTZPVllhMzMzcURuQjZhQWtjR1plRVVBeUU2cEdjN0ZEaTBXeU9taGtienhzblhlZkxKejdLKzFtR2hQa096bmxJVUdiMXVHMmNNVVJLaDRnZ2hIVDNkeGJpTXpFRFh0UG53N0FmMGFRR2xCL0oybGdTam1UQVRlZFNERDBISkJnSVBQRUhJQmdMM0xZNHJWOC96Si8vWDc3UFJYa09UQTRaRVJ1UzJUeXdVaGN2TGRVZHJ3RWNMYWlxaGVtZFVPbXo3NVRmdlNUODZkUHh4RGQwcFV3aWd5aUVkZHpWd1dDSWtoZ0pMdnFNT0JkdVJ6aVJrbmR3L0FHa0htS0hBRnBKK3J6ZjhqSDhRTXVWbEdLSDV6My94Wi96RFgvZ1ZEaDdaeitMbDYvUTIraHcrZUpSRzJ1RDZ0U1dtNTVxc2JxeGl5Wm5iTzRXaHo3c2Z2TVViNzN3UFRSOURoaUduU21qWUZDRjFZS0lJazJ0TW1lT3FuZVBLNmlYZWVPOTF2dlQwUHlKdldkYVhiMkN0WmJwZW96N1ZwREFGN1g0SG1Rb3kwNlV4bHhCTkNjNThlSm0zMzMrVGdoeUZBb3FoR0pYNFZCUTdmTkJFc1Ztc2xnOEF3dm02dmlCbUE0RUhteUJrQTRIN0ZzdlJZL3ZwOWRmUWRBQ054S0Z0RHlnb25FVU9CTW1veUt0Q2dXQzU4MTczVlREelpqcmkxaEo1YUFYMmNWOCtMbGtnMGVWbldWYTlEL2RwU3JOL3lpSHpMUTY5bzJSdEgya2x3azkxK1hKNFVlZTh6MnhTaTNIT1VCanRMeU9CbUlRVFY5NWw3NXY3U09xUytkbmRSSEdkMWRaMVZ0YWdLQXkyMnljWEdmV3BHQlBsbkRyOVB0OTU0Mis1c242QlJxcFl6ZktidDRvVm9FV0JFLzcrMlZoaDhvTFY3ZzIrLzg3M2VYVGY4eXdrKzJuT043RFdrbWNGV2IrTmtBWlhjM1Q2YXlUTmlFTGxuUHp3Qk4vNXdiZlljR3VBSlUxcjVKbjF1dFU1bkhXbGtCWkRIMTAzUEkrSnFxK1AwNUU1RUFqOEJCT0ViQ0J3SDdPMnZreFByd09PMmFrbXJmWWF0b3pNZ3NXNjBaaG5OYTJVa3kyN01OM0VtZUNteTBham8zZktpS2Z0eDU3NmE2emlyS0ljR2grV3NVa3NabEE4TmJnU2Q5Y24vY2tSNGMrbmlpdzZmTjZ2VU5UaUdscGJYK1RWTnd4RGtSWXk2THVjaElpL2UrZS9zTjViNWt0Zi9FV09IbmlJYmlzakVna0g5aDVnWldXRnFTaWgzVnZqZzdmZTQzdHYvRDFuRjA5aE1NUkdlQkU3RXZFZFkyQVZiQVlGV1Zab2tMNkk4T3J5UmY3MEwvNVBuanYrTXM4Ky9Rd3pVN1BrTGlQUGVpUlJSSzJ1Mkwwd3kwcDdpVE1YVHZIdDcvOE5aMjZjeHFDWnFqZFk3N1ZSSk1RdVFnQUdqU3RMNEt3ei9odlRlbkRaenEvRXlCY2NDQVFDUWNnR0F2Y3R3bEt2cFlCRDRjaUwza0RFMW1vUmVkNGYyRnY1RUZZNUhTaUJLZ0sydlNKUVNtMjdETGhsUzk2YnVSNTQ3azVSVm9GbVVZNUd5NEV1bDRNMGhFM2NRNUU4NmNCV3dXSUhhZFJBQ2tWaExEcHpnQ29mT3lJcUw0ZElSU2dsdkh0RFhtRHA4ZFpIUCtEcWpVc2NQL1lFUnc0OHpPenNQSmVXenRMcjlWaHJyWEwyd2lrK1BIZVMxZXdHamd5TFJXL2xqTVlXODBaeU9vd3VCb1dDMm1XY1huMkgvR1NMZFgyRlkwY2VZdi9DWGhvemRRcVgwZTUxYU4xWTRhMTNmc2hINXo5aXZidU1vY0JnNlJZWkVOR2dpU0JDVTZES0Znc09SeW9qcklTdTNzQTRpek5lVE12SVIydU5jMWk3elhrSEFvRUhpaUJrQTRIN0hvdEIwOHY2Z0VVSWg3WGF0NUNkMUltajVmREMzYktZelppYjU1WGV2U2E4ODdEYVFKZVB6TGhaaEhpc3JtdmN3MmxuY0dBem4wRlFUK3JZUW1BTGgwWFFZSm8wcmlHc29EazlpNG9FclhhYjlmNHFWbHUwdGxnMGFTTEpUUjlyQ2hiWEwzTHQ3VVdhNzc1SkxXNVNGQVZLS2RZTG55UHI4MkV6NGxTZ3BQZm4xZjFiM0lNeUNpb29DeFdkR3o2OWlCenREQmZXMytmaUd5ZEozNml6TUxPYm1lWU1wdEQwdXh1MHVodDBhV0V4V0RRQ1NSSW5hS3BIalpqRHlSR09QLzRvdS9jdW9HTEZhbnVGc3hmT2N1SEtlUVRRcCt1anRjNWlDNGVTTVVvNnROQ0RwSkpBSVBEZ0VvUnNJSEFmVXhRRlZRRlhQYTFSNkE1UkxEQzJCOEFtblRwUWZ4YWNMU091TjNOdHVEdWhzTWswWVJOM0U1R1ZPREhjWHJqS3h4U29taWRNUkp5RnFLeTg3dUt3bnhBQ1NGVk1KR04wMytDUVJNVHNuem5NQzgrK3hLT1BQTUdlaFQxRVNVcWU1OXhZdWNIaTlVVXVYYjNFMmJPbnViSitsbDdld2tyZjBTeE5Fb1JWdFBVYW5heUxRbUtzeGFGeDVNZ0l0SUhjdUhFaFgwYXd0L29kU0ZGR2pBR0VLdFdzTEwvWWd2cXNRSWdDbDJtNnZTN1p4aHFMRzFIWmdjc25kZFNpR0JsRmJQUXpISTZzc05UclU4dzNkdk0vZk9tZk1oZk5FY2NLYlF0STRQRmpUL0RTWjErbVczVDV3WnZmWmZIR0ZjNWZPVWZidEwyZ3RSWmhmVDZFdUdueVN5QVFlQkFJUWpid2dIUG5FY0hSQ045QVFJMStabVM0K3liYjNnMUNLQlFSQm8zV0dtMDAydmk4eDFwTmtXVWpFZFdxZ0dqNDRaWVIxN3ZsMXAyejdqTFJVWlQvY3BTRDB1VnM1emJ0ZVNCN0twdmJIVWZpYTdjTWdwamQ5WDI4K05tWGVlNlpGOWszdjkrSFRKM0M5aTJwVXp5MDUxRSs4OURUdERwdDNucnJMWDc0em5mNWNPa3RDdG80QVoyOGp5QkhvdkFacDE3a1MrbmRYWTNKdkY2dC9xOC8rT3A5dnZUV3lhZERuNGc0anRHNmJDc3NCUmpvZFlyaGoxbUNjUVlodlgyY3RSYXBvS1Y3dm9BTlNVeUtBSTRmZUlKLzhvdS9RbTJ0eGx3MEJ3cXlJc05hUzZRanNCRWlLL2lsVi84YlRwNytnTVEyT1hYNUJGM2FHQXJmSmV6ZStCSURnY0FPRTRSczRQN0dPVy9YNDB1ZjhlTzE1ZkNuYzV2LzFHMVoyelR1enpxYTE3a3Bvamk1clhVajVmdVZlaDBhL1kvVzBZenUzM2UxZ2tvMGpMYjVIRDJ1cmNKaG95SjU1RnkwZGdnVUlERm0zSXNveTN5NzBpR2pRdVhlczZMNitOaHRud2JjNUhxVWhXdVRWV003aWtTUUFoRjFNY1BQZmVHWGVlSHBsNGxKU0VXVFBNdUlwUm9XNnZjZHVtOUpYSk5YbnZnaXp6M3pDci96Zi84bTc1OS9remoyTFExMDBTZWRxVlBvaktMZkE2RXdBbDlBcGhRNE0venFIUWdSSVdTRU5kN1RWYVVKcGlnQWc0ampZZXFKa0JTNjhEOWFLWW1FOGtLNStvRU5UQVljaFIxeFlnQnFNeEg5RFUyRUFoUy8vT0tYZWU3NEM4em1zOFFxeGhtTHN5Q0pFRTVpZWc3aEVxYXAwN3VhOGZpZTU5ajNNOGRJdi9QbnZIN3BPejZ6VzJab2ErNk5yekVRQ093bzkwcnRiaUJ3M3pKYThDVGRlQVJXVE13ZlhiNVZwUFoycWJZVm16eUl0ak9ZajlqMG4vdFBSRURMM3NicjNzV1dlYUl2di9BekhIL2thWVN0VVl2bWtDWkZGREhLSmlqalg1RkpVQ1lkdkdKZDQ1ZS85STg0dlBBSXVoRG93djhvdXUwV1JaWjdEMWFNRjYvT2dTazdvVlVXWHdZL1RPOGNRamlFZ2tnQ3FoVCt1dkRiK2cvbGU0M0MrVjFYdGhXVC9ZUW42SGVxak5pRXgrYWY0Skc5ajdNM1BjQTB1MUEyS3YvNzhSM2FoRk1JNjY4N01pbDFNVTFpR3RSZGcwY1BQOGJCNW1IQVlxeEJoakJNSUJBZ1JHUURnVUJnaC9DK1VydHF1L244eTYveTBPRkhXTHEwaWtvaXBCTW9tVzVSMFFhVjZBUEo4YU1QODl3VHo3RHluY3MrQ0ZwTGFQZlhFUXBpRlpGYlArWXZ5bHhpNlFRSWdYQytqYkZ6bGxqa2FPc3dCbXpXSDB1TFVUQnd2cERWcUlFcGNLWWdSaUJGRFJCbGg3Y3FFY0YzQjdOT1k1d0ZLNGhJbUpQenZQTE01emk2K3hpeHJWSDBOS0tzUmhST0lnY2pGckxNZDVZb0tmMW9oWk04K3RDanJCVFh1UEQ2YVFTQ1NQcVVta0FnOEdBVElyS0JRQ0N3STBnU0VwNTc4am4yek8zQkZRSm5KTDFPRGk0bVVTbkNSZUFpY0JJMzBwWE5tMDVJaW5iQlo0OC96ZUZkUjN3RGlMNG1KcUptVTJ6Zm9veEFHUjlrVmJZY0ViQU81UnpLUW9Ra3Rpa0s2V1AyRmxJSE5TZVlTUk1pNDkvSHprYzlFaVFKa29pSW1BaGhGVmlGeEw4RUN1a1V3aXFraVlsdGpaZ2FNU2xOTmNPeC9ZL1FWRlBRVjlnTWxLM1dGd1B4S3NyTUlPa0FZOEU2YktHWm05bkZRMGNlOGlrSUNHeGhmeklHRlFLQndGMFJJcktCUUNDd0EvaTZxNVNYZityejVEM0hScWZEM05RQzdiVU9SR293VkMrbzhxbmQwRGdYL0ZCOEVYTnN6Nk04ZHZBNE4xYXZEa3EyR3JKT3k3UlF4SXcyRXBabEV3bFJydW1va2JnNnlwY0xBbERnMnhyckhpaHFSRVNrK0lLeG1CaE5nUU5pWW9veVdseTFJaDVHWkMxdXBIdEJTb1BkalQxTVJUTkVKa1hZaUNocW9HMFBLMzFabXFzcXhweEFPb2x3MGhlTVJRSXM2Tnl3YTNZWHUrSjVOb3lqYlZzL3JxOG1FQWpjUndRaEd3Z0VBanVDUktFNHVQOHczYlVjYlMxemM3dklOalRDS3ZKY0UwZFZ4d2ZBT1c5a1FHbTg0QlFtUzRsbG5XY2VmWVZkelQwVXJrdW1PNmhFa2RSaThrd1BqaVVjSUN4eTJBT1h2QzlSS2lsVFhRMnQ5Z1lmbmZtUWxjSzNrWjJOZHZINDQ0OHoxV2lROVF0cWNZbzFvUE9jUnFPQkZXYVljZ0JJNi8ySmpkUllZUkZDNEp4QW1aZzl6YjNVa2dZVUFxc2RVa2tFWHJSV3NycnF5MWFsTnlnRU9FZVMxT2oxT3RSbTZ1eWFtNk83M29JOHRQZ0tCQUpCeUFZQ2djQ09JSUI2MUtESU5NMzZGRVVQaW41QkxHdmdGR09lRjI2TFNpb1hZZk9VYnVZNGV2QWxqaHgrQnBVYUN0dGxvOU5pWm1hS1BOZCtIODYzdHBYT0lmQU9CUWhMVWtzeHhuaGhyQVJYcjE0bHl4d2I1OTVENEhqaThXZDQ5ZFZYMlRPL2gxYXJReTFPZk9leExLTldTK25tRzM2ZlRuaEI2eVJPV0t3MGZpcndRclZ2YVVaem1KN3gzcllPTWwwZzQ1dmRJWXVVaXFMSXFEVnF0THFyMUlRa2poTDZlZjZKZngrQlFPRCtKQWpaUUNBUTJDSHE5VG9icTJzY1BiU2JWcS9IeXNxYUY3SkFIS1hlTFVDTVJ4eXRHTFlXbnRrMXhmckdHaktHOWM0cVFoZlVwbUp5MDZMVnJjU2VIS1FrQ0RTeWpPbGFZZW0xTy9UekRDRWNhYjFHTzE5anZiZE1RUSt3WEYrNVJLOVlKN2RUZExJMXRFbUlwS0xmeitrYmhTdlRFWlNWWS9tcVR2aUliRmJrSkZFS1Z0S01ZWDFwallWR1FwU21SRUppTEFPUjdVL1FnaE00NGZOZkxZSXN6NWlKbWxock1SWUtvOUhvNENNYkNBU0FJR1FEOXpuT3ViRVh1SWw1dHZ3ak9mU1dIZldkc2grallidHozb2ZVYmVQeTc0KzM5ZkxSK1dQTHhlZzZJejZ6MngxLzVEeXNzS0ZjOHo0bnkzcElDV3RySzFpam1KdlpSWCtqUUd0Tm1rVG8zTGNKZHNMZ0lnZFM0S3loTUJyamNucjl5K3c2V09jdi92SS84ZnFQdm9kS0RQMmloUlhHNTlXNllYNnNxRHFlVlJGWkpFcE1vYTFBVzAxdU5Gcm5GRFl2VzhvYXpsOXY4Mi8vNEQxaVZTT1NDcVhpTXZMcUhSZU14ZS9IRGd1MUFKeXdPT0Z3MGxHdk4xbGJYZWVodlkvd2o3LzhLNmdhTEs4dHNXOXVIemJ6YlpKZEtheXJ4aFpXS2lJUmtXY1pTVDFoYldPTnRKNndlUDNpd0Q5V1NqWFNkaXdRQ0R5b0JDRWJDQVFDTzRERHNwcmY0TU96Si9qNUwvNFNXVWV3dnJyS1RHTU9Dc3ZLeWpMVDAwM2lOQUlGdWNucDUxMk1nSHE5U1RyZFlMM2Y1dkxLUjV5OStqNkwzYk9vcmlISG9LcGFzWkVHSUtOTk9vYXQ1ZGF4S0d6WkpjRXczbVNnWnd1d0lIVUxLUlRLTzhpV3ZUOEVqZ2hReUxMY1M0dzAzWEJZTklaYVVhZFB6bUxyQ3BkWExqSjFaSVo0VnRBeTY4UW9aQlNobENLT0lpeVdQTThwOGo1OTQ1aHFUTFBSWHFVMm0xS2Jqcmh4ZVluTFMxY3dXS0pJNFVLR1FTRHd3Qk9FYkNBUUNPd0lGa1BCVysvOWtCZGZlb1daeGp3M0Z0ZVptWm9oa2pHMVJvd2h4MmdESnNjSWk0cDh4TExYYjdPUkZUVDJ6SExtMVB0Y3VMcEJRWU9jREV0QllWd3BTWDNYdDZHdmdFOHZHTzhkYkFmTmZRZmpFMVY2YnJtYWNTQ2NLZE1TdkdCMTVSWGdUYmNHLzFSZEVtenBYNUE1aDhad3ZYZVZkOCs4dzl6Y0hMc2F1K20zT3FoNEdxTXpldjJDd2hZZ0hWRVVrZFJTRXFYbzlkcjBUWjgwU2xqZVdPYURqOTZuVHcrRExqdmFoVUt2UU9CQkp3alpRQ0FRMkFFc2prUkl6bHc3eGYvUDNwczF5WEZsZVg2L3U3aDdST1FLSklERVJwQUV1RlZ6WjRIVlpIRXA3dFhWNjh6SVRGOUVEM3FSSGtZeW1lbEYwaGZRSjlDTFpHTXpZNUxhMU5QVFU5M1ZYVldzS3JLNGd5REJCUUN4SkpCYlJQaHk3ejE2dU80UmtaRUpFQ1JBQWlEOFJ3dDZJTUxEbCt1ZUVYOC9mczcvL09hdFgvSFQ0ejlqZmsrUFliV0pKU1hwR0x3djBYWGRseVpXK2x1dDRoMTE4VnhhdmN5SlR6NWx0ZGdreWt4TndHQ01Sb0t2aThicUZzYTF5SXdDTU03WmJFbEExUUsyRm9lS2NkOWtGWjBGR21zc0NRRlFVYVpxQjBvSVBxNWpuTGRhNS9GcThMckMxeWtBSDN6eUR2djM3dVBSQjdyTUxNd3h1TFJCYWpxWUdZdlJjYnNBdkhmazVSQnRZRzVwaG8xaWxkKzk4MXMrT2ZzeEFVK1NXY3BxdUVWc3Q3UzAzSm0wUXJhbHBhWGxwaEFZeURxR2hGKzkrWi9adDIrWkg5MzdCUDNMT1hoUDVVRUhUNkkxU25uS3FzQlhIcHNhMHFSRG1taCs4OHQvNHAwUDNzUXh4Q2hQS1NWQ2haTkc0VmxpMUxLWmpndkZBaHBOTXRvV29JN1VobTNpTUV6RWMyT3dWZ01lcU9yMy9SYmYyQ2pUWXlRWDcxRUt2SGd1NTVkNDk4UWZtWjlkNE43bG8zUm5GekNpcVh6RllEaEE4Rmlyc2NvU2RDRHJkRkZHT1BIeENYNy83cHZrNUNnRlJUVmt0QWt0TFMxM05LMlFiV2xwYWJrcHhEelNUcmZMRnhjLzRXLy8vdjhobEpvOUN3YzRzT2NRSmxoQ1dlQmRUdWtLcklXWlhnL3ZQVitjUHNWSFg1N2c3VC8raHI2N0NGUW9EZmdLYlNCSUUwMTEwYnBMbWxZSmNiMWpOOXFtR0t6NU40eVRhcGxLUVdCcUdXNDhYNU5STUhHcmYvUk1nVTAwT21pa2NueDg1aU9zTjF6WWY1RW5mL1FUZXNrTXlvRHBhTFRSWkZtS1FWT1dKYWUrL0pRTEt4ZjQ1emQveFNWV01HaUdVb0lCM2RPRXplMml1NldsNWM2aUZiSXRMUzB0TjRGR09oWmhnTWZ5NFJmdjR2OU8rTkd4eDltOGU1UGwzY3QwMHdURUU0TEQrWko4ZmNEbHk1ZjV3MXR2OGZzUGZzc2FGNEdDeElTWVk2b2d5YUFvSnRjVUk3RGpybUNUclYxalNOTWdCQ1dvV3BRMmViSmhuSDBRTXcwVWFGRW9ETXI0UnNydUtDWTFSRkVOTUhJVmlXdis1Tnduckp4YjUvSzVEUTRmdkp2RFJ3Nnh1SHNla3hyNlJaL3pYNTNqL0Zmbk9IWHlGS2ZYdjJTVFRZUVFpOUZVQlRyR2xGdGFXbHBhSWR2eUE2RDVGWjM0WVZOWCs1SGIvcXU3azR2VnFNcTdtWDNpWTFvZ1RIbGs2YW5GWG92TDViZjV6Q1R5ZzdIUzNINEVycnhyOGRqSzVFemJEdWtvUkxqekFtVXlzbmlEK1FiSHhDYVFsNTY1emd6RHZPRGpDKy96MVlVei9PR1AvOHdEOXozSTR1d2MrL1lza2FTVzA2ZFA4OUdKRTV5N2NJNCtBeXB5SEFPRUNwdGE4anl1VzExcC9jM2ZoTVR6SnA3WFlSU1BWYlhEUVpEeGNCb3o0VmluNnNDdUVrUmNGTG1hTFdQZnpEcjZpNHkyc0ZTVm9LUWlVeDJzYUJ3VnExemtEMTl0OHVGWDc1SCtJY09MUTJ1dzFsS1ZKWDNwb3dGWEMvSFVwcXk2emJqZ0JCaGUremhmbGRFQVhHRjZWYmFldDNIb2R6Nm5aT3RNOGVsMGo0dnRDN3ZLZ2xwYVdxQVZzaTIzTmZHWFY5Yy9kTTNkVkNRS1JCRVplOGdTWXZFTGdvZ2FLVUFOOGNkL2h4OEhKZEZuZG90dEVlT0M3dEU2UnBzalc2WmJsaW1UbjFjVEg1bjQwYXY5WWJmZnptMWVIdnZJZXJiUHAxVHNYNnBVNDF1N2ZaOXVQZlNXNlhoazFKUkUyTDR6b1M0bWF2WXpUVFdoVXZnZ2dNWWFTK1hMWm5GYlJhL1NFNHY5OW1KMnRNaEo4Y01PMDhaQUFLZ0wvU0dBZDVyVWRzaGRoYVBDVTdES0dxdjl6em4xMWxzeGkxVlpSQlNPVUkrS1FXR2lPd0VGb2dJYitkaUhLdDlKNE8wZ2lxYVRDeG9tTDY2Q1l4dHVjbmtUMlFpVHlRbWpkVXllM2tBaEpSV3gyNWlpUURPSWVqVFVuL1VCL1BiTG1nQ0lDeU9ic0pHSXZkNXpYTEgxM0xqYThaUHBZWXpGZFkzaWJUSXM0alR1ZUdZVGhxNktIOWRna3BUS1ZmWENOTWFGMGJWQWFQYXozaDVsNi9HcngxQW5obERWMzJlaXlUb2Rpbnh3blFQUTBuTDcwd3JabHR1YTdRSTBYR05FTE96NCtlbC9Oei9xT3kxeU1tQXpIYnlaanJSZWlXbXhlMmN5S1Z2VXRsZmlxd3FweGNLV1lRcVFadUFkbEVWQWsyQzFSVVJ3M2swdWNub1YzLzE0MXhYL0tyV29JSVRLamRiWjZWaXNTdWx2VmxSQkdPZWJlckp1aGc4VlJSR0xwTXJhTExYYjdaS1lsT0VnSjRTaU5yZWFrbzdmWko4bUJuUHlQSTd1QS9HMWNkeDZJZ28rS2RpdkZsSGNBYWxiTFZ3WEU5NjRONHR4dkg5UzhVNWRXQkxiOEJxbFVFWlRlRTlWbHVPYzR2b0tyUEhmVlVvald2QVNxSUlnVmJ3NEV3TlZHUWlWQjRIWnVUbkt3bEhrK2ZlenN5MHR0eml0a0cxcGFibkpUQllpamYxTUo0bkNJWXltSXdSY1FSMk50eWdzSVdoQzNjTDB5bnBuY3AwM2dNa1ZiWW5pQ1pKWDllMTVoVkVXcFJSRlA4WlREUmtHUXplWnc0bW5kQU9LUVJPeHRLVFdVbFpSeUZhRm81UU5RcjB1clhSTUF4QVlTNnR2T3QwNjFsdkgrUnIzOTNibUdrVnhjMGoxeFA5SEN4aDFKQnVmbVpPTFRLMUJsQUVYWFIyTXNZaFdoTktUb0VaK0VnaG9iekVvTkFHUmdCVHhUT2hhUys1eUJNaUhKVXFQMTl2U2NxZlRDdG1XbHBaYmdFWUNqQ1hVT0UweGJLbXpud3dJQW1neGRZS0pwZHVabzl2dGNlbnlCWlR5QlBIeC91eU9tdlZHNU1mdUlQbDJFaGVpeVV3WHZNWkx3S0NZMVhQME9yUHMzYjJYaFlVNWZIQ3NYTDdNNWJWTGJBelhLU254bGRCUnM2Q0YzT2MwTjZBVkNwR1lvekJPd3ZnMjA3QWxIZlJxNC94RFJFMUkwNjN5L2xvWHNEWHEzeHg2WC85REtjaWRBM0hFbHNDV3JzbW9Lb2NBQ1pZRVE0OHVNNzA1c3F3TFFGR1c1RlhKcFhJbE5ndDJ3b3llb1pRcVh0aW9RRzltaHNGbS8vb0dvS1hsQjBBclpGdGFXbTRhYWtvMmJJbkhxbkdoMFk1VHdKQ2dTWUhZUHZXUmh4NW5lWG1aZi83dFAzRis1ZXlWVjN4RElsbE5qbVFzU1pyWXFkRTZFZ05hcFlqVGVCZTNjbmU2aDRjZmZKeGo5OTdIQS9jY2kya29ScU8xUm1sTmZ6amc4ek9uT1hQK05QLzRxMzlnR1BvNG42UFJHR3NSQ2lyZnBNWUkrbHQrallkYXhLTEd3N0Z0T3AxNk03V00yemtncUNZYTY2cUpiTmVkcm5uQzFMU3hUdHVXRnowMVFPTVViRTJDUlF0VVJZbEIwNkhMUFBQc1g5ekxYWWZ1WWYvZS9YU3pIbVZSMGUvM0dSWTVselpXT1hIcUk4N0xCVnh3cEtSNEhGNENnMEVyWWx0YW9CV3lMUzB0dHhSVE9jN1Q0bUJMU3FLbWF4WW9mY0NTOFpPZlBNTXJyN3pDNmJOZnNucDVFMFlpOHdveHRodWl3aVp2T285ZEFTRG1QNHVMVDVRWUxCbkg5ajdJQ3o5OWlmdnVmWWdFUzgvR3IrRFlMTXVnVEVKdkRycEhkck4vOXhHV2R4M2lYMzcvSzA2Y2ZnY1BXQ1VNcXpCMkp4Z3BwVytUV25DVlhkcWFOSHQ3SzlhckVuZFFSdFB0MUhKL3g2U1hwcmgwWklJeFhWUll2NWFZakZRU3ZLL3FDR3lQWTh2MzhzRGhCMW5zTHJBd3U1dVpySWNXaXhqQlowSlFnWTNoQmdjV0QzRHl6RWxPbnZ1NDl0STE4U0lrM0lnN0NpMHR0eit0a0cxcGFibXBYRkZxVGxlT1R5TUdTeGNQUFBVblArYkZaMTdobmlNUGN1TGpVNVRCa2VpRU1oUmJQejhkY3J3aDFIWG5FNVp2VFdSUDErdXlXQjY3OTBsZWVPWU5IcnJ2VWJTenJGNWFZK2hMWmpwZE1wdVJWNDY4cUJCajZIVjJNYmRuRDNjZk9zWnNkNDdzell3VHA5NW1VRjBlclVEcG1EVVJ0c1VMcjIwcXpVWERsWXJocHBrWU16MnF5Nzk5eFZUdFpUTDE2dmFZODNpT0VJL3hoRkJ0aWpyOVpHWGM1SG5iWEtDSUluaFBRc0tTWHVTQnUrL252b1AzY1hUL01WU2hxWXBBZGNsRFZXR1VKVFVwMmxxVVdCYjM3V1o1enpKTHAzZnhoMC9mNXV6d0N3SWFaVFNWMzhGV29xWGxEcU1Wc2kwdExUZUY2ZHU0elcxdXJqUnRDbk9rc2VwS3liM3c0bU92OEpkLy9UY29xMWc1dndaZW83Y2xMVXd0Qi9nV0daRTdzSVAvcll4dG1CSlNCTU85ZTQveXMrZGU0Y0Y3SG1iOXdvQnlDUHQyN1VQY0lIWmFMVUQ1aEk3dW9IUkNLSVhoTUtkU09ROGVmUlNiR1liNUdoK2YyU0JKQk5zUk5qYXJpZjM1ZG1JVzJCNTluWHcrWGNTMlJjeU9jMmx2VDZabGJMd2cyV0tQTnpIdlNNUk9XQkEzeHhxcHhleTBCNjB4NEMzZUNSYkxJb3M4ZHV4eEhqcjZBUHRtOTFLc0ZxaktZcjBoVlQwNlNRZUN4cFdCY2xEUTYvVVk5SWZNek16eDhORkhVU25rZit5ejRpL2lmYlJqMitaYzBkSnloOUVLMlpiYkdxMDEzbnU4VXhpVm9wUkNSQWdoSUNMUnAxV05IQnE1V2dtTDFENnVrOTZ3ZXZwOXRyNHZWM2kvbVVWTnVOUHY5UG5KdXZvZGwvODFackFpTW9vWlRjL2IrTW5lZGt5SVY1VW9wSkw2YnJpRkFGb1pzcXhMbFd0KzhleGY4Y1FqZjBvM25TZmcwYXJDbHg1REhZMmRabFNsZnFNY0M3WUt3aTFGYUlBbk1HOTI4ZGQvOFc5WW1qdUFHd1ptMDBVOGhsQ0E4b2FnSEVvc1ZtTEJXcWdVU2hHYkJ4aUxEY0x1dVQzOHF6Ly9yL2pmL3ZjUHFhcVNxcXFhN0lxclYyUjl6ZkZYa3RUblQwQWJGWDFhQXp2Zkl2K2hvVUFsSUs3T2RUVUtuQ0JvRW1QeDNsOTUxK3V4TVl4N1FvakVaaEpqZzVnUElnQUFJQUJKUkVGVXdhK2dWUFE2UGJ5cnNGZ2VQdm9vRHg5OW1LN3VVS3hXSkNIRGtHQXhLSitBVitBMXFWaXNzbWdQanBLcUNMakM4Y0RoQjNDaDR1L2UvdjhvcVlpOXpscGE3bXh1b1A5TVMwdEx5N2ZqU2w5RVVnbEtXOENpc2N6TjdFWWtvY3dEcnozN0JrOC8rUnhIRGg2bGEyY0lsY1pYNEwyYWlxdDlselRLZUN4b3g5cFNvOGw0OElHSDJidTBuMFJuNEEwRVRhSXpxandxUmlVV0pRb2xHaTBhRXhRNkdMUllRaEVZcmc5WjdPeG1hWDR2enozeFBDbGRVanB4ekNhdnozWjZYSFhUTFJxTkpVV1JFSndHdDhPUjJHRWdmeWh1QnVMcUtLdUJORTFST25yb0J1L3JsMVY5SnVsNDFUQnA2U0NnTVNNaGFrU2hncXJGYUl6RWFoTGNzQ0lsNVdCNmdMdVdEak5yNTBsZGg2Nlp4WGlEcVkrMUNlTnpRSWxDaThhVkh1ME5xY3F3M3BLRmpNTkxkM0hQek4xMHlaaHVHOUxTY2lmUy9oVzB0TFRjbWdnZ0toWk1pYUZqNWhqMFMxSTZ2UHowRzd6ODNNODV1Tzh1TXRNajd6dXF2SXBDSXNUU25VUW5YS2xCUmd3NFhxOGNDMU9QU1RTS2hBNHpQUDd3VXl6T0xrV0hCVEZVVllVeGhzbzdnaHJ0WnJ4WElQRit0WmFBRHRCTE0zemhTSlJCT2NWakQvMllEck5ZT2lUTVJCRXFWMzRneVJVZjBlY2hJNlBIcko3RllGRVlVdHZCSlBaMlRuKzlacFN0ZndJRGlJdVIvemd1dHY0dkpSbjlQMEdKaGFEQmc1RjRHYUJKMGFRWVVoS3gyR0F4UVdPREpaT2svbVRDc1lQSHVIdi9QZlRNTEZJcWxJc0NkcklwU2d6a0JrUjdVSUVnRG9LUW9MRmVRNkU0dEhpQWh3NC9SSThaekEvbWtxS2w1ZHZUcGhhMHRMVGNPa3ptYTBwZExpVUpxZTVRbGg1RGwxZWZlWjAvZi8wdjZKbzVRZzY1enlsOWliRUp0UWxBTElBS1Y3dnBlb01FUUZQZ3RTWDZHZHZJZ21WbVpvSERoNDVTbGg3dkFLdXBxaEtWQ2RacVJIbThDaWpSaUFwMXZtV3M1TktFYU5Oa01uenVDU1hzbXRuTFFyYUhpOFc1Mmp6SzhHMFZaNVJoQ2FCd1FiQ2tlRFJWV2NhOHk1RlQvMDdjNElZU053T0JSQnZLS29Cb3BBd2tKSFVjUFNNaG9TUTJvNGhCMkZCYmxubEVBaG85bXI5T0NzRlBGSWNwRkFrSkNzMHkrOWkvZUpEWlpCNlZLMVNWSUY3cUhtcVJvQVN0SFg3aU5XczByaW9SRHdrSncvNkFwSnR4Y1A0Z2M4eXh3cVh2Y2NCYVdtNU5XaUhiMHRKeUU3bEN3ZFdFaUYyWTI4M21SbzRoNWRYamIvREtzNitUaGhuRUdSSkpVTWFDVWFnMEVHeEZjQjRJZUtyeHNpZnlQZFZvclRHTDlZYXdKWjgwaWxoSTJMTjBnTm5aQmRiWGN5d2RsREdFNEtNTlUwZmpwQUxsMEJMRmI1Q0FDdU1TK0dGL3lNeGNSci9ZWks0elI0Y094eDk1aGxPZmYwSkZTYkFPVVZjV3NsZkxzVmFpNmRvZWc4MCtRVHRNUjdNNnZNeVp5MTlHcXk5dGNLRzZ5azdmL2lIYkt2Y1lMSXZkUlphWER0QWhCYWZKZElZS0Nxc1NJRjViQkJVUUZlcHBqUHBiRnlPcWs2K1AyMTlyckZnb1lPLzhmcFo2dXlrMktxeFB5T3dzUmlCSUdUK0xRN1JDQkdTVVZ4L0lzb3lxS3NFbHBEWWg3ME8xN2xpMGl4eVkyOC9uRzEvY2xIRnJhYm1WYUlWc1MwdkxUVWF6dGUyc3JyMmxEQnJMK3NhUWhJU2YvZmdWWG52eERmYnVPa0RaTDlIT2dBSnRGRm9Vdm5KNEtvUW9aSTB5dUdsRC93bkhnaHRXZGIvTkNhR0p5QnFXZGk5amRJWjNBN3BwUnNCakVrdmhoMWhyOFRpZ0xrcEVNRUVqU3RBaWRmcERJTE1KbDFZTGR2VVdTRzNLOHo5NW1TY2VPVTVuTGlOM2ZhNG1LSzhtWkxWb3hNTmd1RWs2azlDZFMvbmt6Q2Y4dzYvK2p2Yy9leDlYVmp2YmMzRUR4dXdXUUtGSk1IVG84TkRkRC9Ia0kwK3haMjRKU2dNVmhFSkliVGFhUDRwWlY0dldPQUxldytnc1V1TTBFMDJNc3FjcW85eDBaSFJJcFVmVkQrQUR2U1FoZUQ4eW9vMnBKUUd2dGg2elNoV0k5bFJlNkhVNlpEcEZGWXE1WkpibHhRT29qZHM4S3Q3U2NnTm9oV3hMUzhzdHdOUVBzalJ4VTRORzhlempML0NMVi8rQ3hlNGVRZzd6blVVR205R2hRTmtZT1N4VmdkSUJhMjNkcStrS1BxazNDalUyeEtlZWpodWV4Z0sxZ0NFdlBVbldRUnREVVpZa25SUXBBNVV2RUNzeG9ocWl3NFdvZ0ZKMVJGWWdUUzNlbFlnUEJDZVVWU0JVbWw0MnoweldJNVYwaTMvdE5GL25lbEg2SWJZelQzZTJTOUkxektRemROUForclo2dkNENG9hSkh5UlVKRkJvMUJJeUdTakNWUlh1TkRDY05Za045akJSS0NWNkRxM09hNHdHTUZ5V2FnRWpBQk1GclI3bFpraVVkc2s0R2VFTFFCSy94M3FFc28rUG42K1dJQ0tMamExVVZNQjJOS3h6ZWUxSWRuVmtTbFpHU2JrbE5hR201VTJtRmJNc1BBbFhiM2pRUnQ4bXBxSjJuTjJTOWZQdm8xRGY1Q2RJN3JPUldrQmpqTytyZkpETFVHUExIWE5heGozeU1aZ29HU0ZCWUZCay9mLzRYdlBEMFMvVFNSWFJJOEtWd2VhUFBUSGNHQUpzbEJBYytCSXlGeEhhaWpCVy96ZGRUUnVzSk4yVDhkam91a3dWZ2c4RW1lVDVnTGwxQWVTanlpdG01ZWNxeXBISWwySURDZ2RKMThWbGo2S1JqQk5CNWhubE8xczB3SGMxdzdSSy9mK2QzWEZwZFlWRDAwVnBmbDVCTlUwdnBDcHhVbENIbjNOb0Z6bDc2QWsrRlZuWFRnd21oM2d4bEdMOTBuVXlZc3NMWC8xSGMwRkJ3WEdkT3lYdWYvcEhMRjFjd3dlQUxJZE1abWVuaVNsOS9WOFFUU0hUMG5vMXBCQ0FtNWphanBCYXlEb1dnQkV4UXBDcWpHamlPSHJpZlIrOTdra3pQWXBYR29HSlV0MDVKaVBzMlljc1g0aDJEdkNpWm01dkRsejVHeURVb3JmQ1MweTgyYi9TQXRMVGNsclJDdHVYMkpnU01pb1pIRXVyKzV5RXFWZThjMWhEditrMEwzZnJqMFR0V21uL0U5M2Y0OGQveWVqME5Dc2I1Y0ZOKzhxclp2RG9IYzJLUld4cE43ZUFaS3lJamdUU3lWQlYyOEprTnFKdDRaekhHVEhXOUpYcnFKM1ZLa1NqWjRUYzNibjhRSnZiWFlPaWg2Q0FrdlBIc1gvTDRROGM1dUhRZjRnM0ZaazZpTy9SbUVrcFhvSlFIaE5KRElDTlJHcGZIUmdTQk1McHdHYXRXaTBDZFAzdWQrNzhsM3pZU3plbXIwZk5UbjM5SW1uaXlSTEYyYVpYZHZXVmMzNU5KRDZzdFpiaUlaNGhSWFZMYlJWd1N1M3Q1ZzdXV3plRWFoNDdzcGR3NHg1bExuMEduNUhjZi96MmZyWnpBNC9EMS9sd2ZUWSt1VUJjME5aSEJuZWUrY2RKSmoreWptbXI5TFJIMDZZNXNreXVXS1FIOExRZ0VLaW9jRlFVRi9ZMlBSaGRUWS91MGh2cEtLRXl2MGRUSFhPbzBrUmpGamtzeHBDU2twS1FiUGU2M0R6S1R6T0x5bk9BMWlWWDBwWXo1eWNGRUs2OWdJQ2lNZ0FURm5wbDV6cDM3aXJuRldXeXF1TEIyanNXOUN4U2g0dnp3VEwzT2xwWTdtMWJJdHR6MlRJcTlrVmhWVTYvdk1MMWV0RFJpOXR0OUZyNisxR2g2V3h2emRiaVZ1aXBOcXVscEFWdFBSK0h3clc5M09qQWN4dWNMTTRzTSt4NlBwY01zVHovNlBILzY1QXNzN3psSWFtWVo1Z1VTTEY1RnFSR0xZaHhCV1VDamxFR0N3cHB4WHFPbTdyZ2tFTC91YWtGeWc4Myt0NWFzQmVLUjFhQXF2amp6T2NjT2RPaDBNNHhTNUdWRm1YdTZNeHFiYUp5RHNpb1FiVkZpMEdRb1l6SFdzclJuSCtkV1ZzaWx6OExlT1U1KzhVZFdOcy9pNmRleXFiaHREZkhIVGJKVXZCQVN4dEhscXpaNWFBVHc5Z2F6MzRSNFFYTTlRakM2eU1hL3d6b2kyNWdJQ3hBQ1daSlNsQlhuKzE5eGJ1MGNpL3QyWVRzSlVuaTBNU0JOOXdscUQyR045ckdsTFVFWXJoVjBkSmRPMHFGa1NEREN3QSs1dExIQ3lzYUZXK0t1VEV2THphYk5GRzlwYWJsT0puOU9hOVdvbWpENHhFUEd0OXdWQVFVVWd5anFGWm9pRDNnVW1wVGpUenpEejMvK0N3NGNPSVExS2YzK2tMSXNVVXFodFVZcFFSczE2dVEyV3JzSVdaYmRvTVNCYTkvN3lZdUtTYXVteThOTGZIcnFCRjQ3eEFyOWNvTk9MeUhwS0xSVldOVWxvWWVoaTVZTXF6TXltNUVhRzhWNkNPU0RJWjIwUzVwMGVQLzlEOWtzK2lqUzcyMy92bHVhMktlSzRqVG9yUVBhbUFBRUlPallQQUpkeDNMSEVkMWJGcVB4QkM3SkttZk9uMkVZaHVpdXBsUTV1UzlRb2pIT1lJSkZlUTJoRWJGUjVpdWw2SGE3bE41UmxoV2Q3Z3hveGFYVnk2eXhjYlAzcnFYbGx1QVcveFpvYVdtNVZka2FEWnRzQ2pEZEtNREZhSldhbkdmODVkTkw1ekQwcUh6QTB1VzE1OS9ndFZkL3pwNmxaYXJLMCsvM0tZWTVXbXM2blE3R21OaVdPSmFNajRTc1Vvb1FBdDF1ZDhMTjg3dGxVcXBQajREVW5xTnZ2ZmNXcDg5K0FhYUMxRk9wSVVPL2dVb1ZsUk8wNnBLbGN5UzJnMVVXRWNFSFIrVnlMcTJ1c0xocm5sNHY0N1BQUHVNUGI3MU5RR1BvRW92SmJ2K3Y4RWFNanNUc1pBZXRrYUFkUzFlRFFkSGtGTi9hOUllYlNKMTI4UG41ejdtNGNRRnZIVlhpR0xwK25VYWswU0YyOHByTXVSWVJPcDBPb2hXYi9UNURWNUprbHY1d3lMbno1L0Z0UExhbEJXaUZiRXRMeTNVeExWckRGaHVpblRwcmpXOHBnNldIVkFtQ1JkUGwrR1BQOHR3ekw3Ri8vMkhXMXpmUnltQnRTcFpsZEx0ZHJMV0VFS2lxQXVmaWJXRVJRVVMrZHlFYnRaYmVGa0NNajVocm1pVVpaMWUvNUpmLy9QZGNYRHRQMGxPVWVzaW11NHhUQmNPaUluaURCRTNsQThOeVNPR0dlQ3FVY1hSN21wbjVoRFBudnVDZi91Vy9zTUVHbW9RQ1Y4ZTBmNkNJSGowbW83Q3E5aHJRSTV1em04M1Vka3ptOGlyd0NJbTFPRHhueXRPY09QMHhLOFVGWk1hVHpNZk9jeW9JcXNuUEo1N1BvYmJreW4xSmhVTXNxTXl5VVEzNDZMT1ArV1QxODdyNVFpdG1XMXJhSE5tV2xwWWJ5QTQ1amxPRmJtT1hBb3VsU3lrYVJjWkx6N3pHU3krOHpyN2RCeWo2SlVhbHNSV29pa0xHT1FjZXZQY1lZOUJHbzNDRWlZaXNpTkR0ZHV2bHErOWN6c2JsMXhteVUvc3NCRW8vUk5COGRPb0RlcitlNVprbm51Tkg5ejNNekd6SzZzb3FOcHRCbE1aTG9QSWxFTENweGlZR3JKQW1sbE5uUHVJZmYvT2YrTjNIdjhianNVcmhKWkRZRk8rRzMvRWVmbmZVcFl1MTZCKy84blZFcDR0YlFjU091Wko3aVFCZUJ6d2VoK0hFbHg4d096L0QwVVBIV09ydHd1Y0JJNkcrS0trSWFKVFdpQ2k4RHVUbGtIUXVvZHZ0c2hrMitmTE1HVDc4NGdScnJDTGYyMzJIbHBaYm0xYkl0clMwM0hnbUxLOGFsSXhyWVNDV3lqZzBIUlo1OHBIalBQZW5yM0w0MERIeXpRSmZCV1k3cy9UN1E2eU9vc1dYSGtJVXNUWkpVRG9Rbk51U0l4dEM3SWIwdmFOMmVDNkJNaFRNcHJQMHl6WGVmUHRYNUhtT3ArTHVnM2V6V1cweVA5dkJVeEpDUUZTRnFYc3BERnhCZjJPVnJ5NmQ0YmR2L1pxVG4zL0lrRTJzVWhTcXhFbUJNUW5pYnVlSVhOaTVVRzNLVHF3NXZFMG5ObzNDajl3VmJqWVRyWHBGYnl0VzB4WUc1WUFFaTZQaWZMakE3MC84bnFFYmNHVDNFWmJ0Y3YxcGg1Wm92ZGFjejA1NXZIRU1kTVhtY0pNdkwzekJoNmMrNER6bnFLaHVvVEZvYWJtNXRFSzJwYVhsVzdOTlJrMWJKelVtQVZ0RXJLNmZSNS9ZNTU1Nm1aZGZmcFdsM2Z0WVc5bUVZRWhVU2xGVXBEWWpTekswYUVwaXovbFJla0daays3d0RXYU0rUzUyOVFyVTBkaEd4RXdKV21NMHlnaU9paUY5L3ZqUjcvbm94SHY4N0xtWGVlemhweGpJWlpEWTV0UWtRamV6RkQ3bi9LV3puRG4vSmYveW0zL2sxS1dUS0JTT0ljRVlTbCtBaGlJVTEyZGtmQ3R3RlEvYzZYbWtIdWV4K0wxVlJQeE9MWmJycVZHSWl6bXk4NzE1TmdkRHpoWm5LVTdtYkd4c3NQaWplZkFlSmJHd0M5RWpjZXFVeDZhR0N4c3JmSEwyRTk3OTlJK3Nzb3JEWVpVbGwyR2JKOXZTUWl0a1cyNXp0TmJqSE1uNnRlYmZVZENNN1hVYXoxaVpzTHlKMFkvSnF2ZXR5dytoTVN2LyttMlo5SG5kS1h0eGl3L3NLTXAwOVFWUFYrVEwxSEpDQ0ZlOHdmZzFYdmpmSFJNN3IydGZVUEhRNUJOYVRMM0ZHWC8rL04vdzhJTlBzMmZYUVNRb1ZCQXltd0dhZkZDUUpaYXljTkYyck02RGJYSmpZOUZYaWJZcEdJUFVqZ1pabHFIUitPOUw0ZTNrZTFvTFRPY2RHMjZqM3A1QURoUXk0Ti8vOHQveDczLzVIemgyOEVmc1d6N0E4cjU5R09XNWZPazhaODU4d2JuenAxa3JMeE53U0JON3MxQXFOM1lSdXcxU1pLMnRpOWY4V0g1Ty9zMEMyL2RqVXB4UGo2bWFNbks5NlI1MHphMkhuUWxWdEhyekFwY0hxNmk2SGZPRjZpSnJweTl6OXZTWDdKMWQ1dUR5UVphWGwrbjFlampuMkJ6MDJTd0dmSExxSkpjSGw3bFFYYUNnd05VZXhVTVpYaW1lM2RKeXg5RUsyWmFXbHV0bVJ5MGgwT2wwR0E1eU5KYUZtUVVHL1J4QmtkTGgrQlBQYy96Slo5bTMrd2dkTzhOd09JUks0UVdNVVNRbW1UQyszNG10NzAySy9vVGtCclE4dUJiQzFIU0NwcHVZZ2lDaGp0MldVTXRhMEh4ODVqMCtPdk5PYk41QVFPTkh2YzNBbzVVbjZGQjNkR0xjVm11cVk5bXRTblBSMGRpbTZUcE5wQkczZ3FDVTN0S1lSQ21OTmpwZXBNbFV6cld3OWJEZjVJQmtFeXNlRlYzdGRDenFiZmNTTTJIOUtNYzNjSTRMckc2dThjWG1aNlNmWkdpdDhTSGd4RkhpTU5iU2Q1c01HZUp3ZUR6S1N1d0tOdTM3MXRKeWg5SUsyWmFXbGh2THhBL3JjRmdRdjJZTXhSQUNDUnJMMDArK3dKKzk5amZzVzdnTEhicmtnNHF5OEJBVVNtSnRlcElrWXlFMENwekhsaERScHNqWFRSSHExWXFndEFLQmJxZkxJUDhlOTNkYVVPNFFwQnUzNHgzM3ovSVVvQlNKc1hqblJxVlBUYTh0SmVCOWZFaFRLVmZuMGJMMWhzTXRUeU5lUjNjNWlPa2xlRENUQStZaCtBbkZPcGwzMmp5YWNZaU4zVzR0cmhSTmhwSGc5Ylduc2tianFPalRqeGR0dnBrOU9qU1Vya0pxQWV1SkZ6U2phN3V0WFRoYVd1NVlXaUhiMHRMeTNTQlJiY3lrODdneVVBWEJNc3VyejczTzg4Kyt5TDZsdzdnKytMSWdoQkNkQ05JazNuWjJncGhyVnlpTjlaWXlVY2pPemMyeDhuMEoyU3ZsZWU2dytaT05HcVFXSnVqWVlVcFU3TzZVbWc2cHNTaFJES29CRmtXdmt5SXFVSVNjMGdjb3I3eU9XNGswVFNuTGNtc3FRWTNHWURGWU1sS1R4UnpSSUhqeGxGS09icDBIRlFqYXhYOVBkcDI0NlNMdWF4S0RwZ1h0bExEMUVpaWsyT0tKcTlDWVdzYUtEcmhReGRTaFNaZXZ3Tld5R1ZwYTdqaGFJZHZTMG5JZFhDRXNWSXRZb3pxNFNuQVlMQjJPUC9vY1AzM21WUTRzMzhYNnlpWXp5VXdVc0luR1dvdjNucUlvY0w0QWE2TzRHYTBuZGdFVDJicmVSaUNGRUxEMS9QUHo4M0RodTl6dkdqVjFTM25pRnZoT3JaRHJMUjIvVU85R0NGSTNCdERnTmJrUGRUYnhUTHdObld0S2NpREQxREZib3pWT0ttNEJSWGRGSnFPdkFFbVNFRUtJeDBvc0NSbUdoT0FCcEE2NGFuck1FQWlVRlBqZzR4aWhRUHY2SktnWGVOT0YvTlRZNzVnS016SFBsS2oxTkozdVRMU1BDNEZxbkVDUFZxQzBCaTJvRU9vMnZsUExhbW01dzJtRmJFdEx5M1V5SldabGZQOWJLMHNWRkFvYmZXS2ZmNFBsUFlmSSt3NmpPNGhvZEMwK25YTXhiN0l1MUd1RTdiWFFlTWdxRllYRTdPenNqZDNGYjhoT0luYjdURUNBVHRlU3FpN1Z3Qk9DQmxMbVdHQTJtK1BRd2NNb3BjanpuSlhMSzZ3UFY2bUkwY29pOUZINFc5b1VmeklLYTR6QlRkbWw3VThPY1BmeWZSeTk5MTcyN3R1SHRaYTE5Y3Q4Y2ZvTHpsdzR6WmRudjJTVERRcGllTjBIUUFWa3V1anJaakdadTdzamV1SWlaMHJRS3NCb0NES09XTmVwTWMzZmhBOGhwaHY0aWZTS2VubmFRTGpwUXI2bDVlYlRDdG1XbHBadnpmaDNWRSs5RUJNWnF4RG9xQzVQUHZvc3p6N3pJb2NQSGFVWU9Gd1ZtTzBzVUd6R0hGRm9jaWNEaVRIYkxMUzJSbUt2NU5JZ293aHVyOWU3Y1R0NU5hWUw3eHVSTVRYYkZXM0tCSXErd3pGRWs5RmxsdnNQL1FtUFAzeWNldzRmUTRtbWsvV3cxcElYbTZ4dXJIRHE5Q24rOElmZjh2bkdTVHdWL2haUGxHMEt2U2JUQytibjU3bDM3ekgrOHNmL21wNmZqeWtGM3FGRmMyalhZZTdhZHpjQnorL2VmWk16RjA3ejZabFB1RmhkUUtNSlBoYkFCWEczUUVTMlprSmdxaTFIWHlGWFMyWWQrUURMcUJVdkFrckZ1eEdDR3pYd2pUWnZ6UWNENGRZKzdDMHQzeHV0a0cxcHFkRlRQNHJYVWhBKy9abHZzODV3UGJjSXJ5bjA5MDI1MXE1SjA0bUs0MGlzcW91NkZCblBQZjB5cjc3MEM1WVdEckordVEvZWt1Z3VaVm1ScG1rVXJVRW9YWVZSTVJMcm5HTTRITzdRM0tBcDAyNkVzMFdMUmhTbzRPTXRXaUMxWGNBU0d1OENWWDlXcGdYQmQwTXpLbGV0eHhHWTc4NHhHT1lZTXZiMUR2TFQ0eS94eE1OUHM1RHRacmhaa0NVOVJBU1hPekptT2JKdmtRTkxSOWczZjRnUFR2MlJ2My8zUDQ1eVNXVlMwTzRZS2RSYjNvcHZYOEZ0NFFyYmU4M3oxdmpnWThhbmFGUUFTOEo4dG91bi8rVEhQUFB3VDhrMlp1bVpHWlJWc1JCTVBLcFVWRU5QNVR5di92ZzFQdmowZlhTbGNXYzg2NnppaUtrWXQ4ZXQ5WWxCazRtellYU0NUT1FKS0VaZkJqNVV4TlFjaldyY0hOQW9aUWppa0pIdlFkc1NvYVdsRmJJdHR6ZEJ3QWRVMEdoVm0rNEhRU2xCUWtBMW9UelZoUFJreDVRMVlHVC8wMFNObElCUmFqU2ZUTDBQT3dzQkJWdjZwamZMR2htNzFqNnlVdnRpTnJKeGN2a2ppODJKZTRjcXJuRGNHVXVnbXZDUmpZYnE0OVVvOWZWZXN0djFUaU5HdCthbWpwbUlJS21BVXRFV1Ntb05GY3QzZWdSU0ZDay9mKzZ2ZVB5UnB6bTRkQi9pRE1IbFdKMWl4RkpWRmM1RXE2RW82T080dUxJQUlNblMwWmo0dXJOOGpNZldPeW1LRUF6V3BGU1ZJeldDRVVlKzBlZXVBL2VnNmVJSVFESDJJSlV3a2IrcWI5aHQrU3NOOHhYZGthUnVDRkZsV0JMMlpnZjQ2emYrRFlmMzNVTVd1c3lZZVliRnhaSGpyc1hpRWZ4UUkySTVldUF4N3JyckdLdmxHbStlK0Mra3hwRDdEYXlOQldUT004Nm5iQ0o5dGNnZnQzZjFpQW9ZRTg5RjM5UlNUUWxFbmNSenlUZjlGK3J4TThsRVFIRnlFQ1p6T0RWSUpVaUFCYk1MOFlwWEh2d3pqaDg1VHJLYVFGQjRRRVdqWWF3azhVSkVVbWJwc3ZIcEpnL3ZmWVJkVCs1aTk4d1MvM0RpUDlFbmtIVXN3Nks2K2ZaajI5WjlKV0U1blV0YlQvME95YjRUVHh2THJ0RXlaT3ZGWXl0aVcxcXVQZlRTMHZLRFpqcTRjNzJSMW10YTV5My9LN1RUMTBQeldoeXhidGZRMVBQc250K05wWVBIMEdHV1p4OTltV2VlZXBFakI0K1JxUmxDcVpCU0l5NVc1MXM5YnVuWlJLV0R1c1lJZGYwNXBRemVDeHFGMVJvZGhDeE5tZTB0QUFueFd0MXV0VzZhMkEvMUhYOEZYdTBRYXhTRkswbkllT3JSNHh6YWV4Y3p5Unk5ZEo1OEk2ZGpZa2N6TGZGOE5BSW1hRXd3R0o5Z1FzYnJQL3M1RHg3K0VTWm9PaVJZRktFRUFoZ1Z6ekZWWC94RXh5NWRWOGJINm5ndE90NmlibXJHQkt5Rk5OV2pMQTV4VWNRaWNabW1McUxIbTVpL0dRQ3ZJVFNQZXNjRDBSNU1vajlCNVIxUEhUN09mWHNmWUNIc1lwNWRtSkNNTGlxMDZLaDlSV085d2ZxRUdUMkRLUTJ6ZW83RGV3OXhlT0Z1UUZPV0pkaGJOU1FiZG5qVXlEVThwcFlqb3djVDAxYkV0clEwdEJIWmxwYVdIV2lVeVBScmJIbDlPUFNvRUtOOGczNkZRNkZJT1A3RU03engrcCt6Zi9kaEpGZzJOd2VVUllWVzBSUmZhY0ZxU3hXdXIyMkIxaHJuSEZtU0luaWNLK2trS1l0ejg3VnVWYmY4RC81ZHV3L3gxQk5Qc21mM0VzV214NkFZNW4xbXVyT0VxaHhkOGNUb2RFQ0xBaHhhQXZ0MzcrUG9nYnY0N012M1l5OHpKMUcrYTdBcERJZk5XbFJ0OGFRbXNqWU5YVFdEVGFPVFFML2FKRWhBQ29sUlVpQlJDZUtrYnRpZzZFZ0hYOGU1VlRBa01HRndXMStVaUNkSXdCTXdSck93TUUrK1ZxTFJQUFg0VSt5ZDJjT3dQeVRCZzVYNGNjWSt1d0VJS2w1aW1FUlR1aEtUR3ZZZjNNKzkrVDE4OEx2MzRxMTNlN1BEc1MwdExiY0NyWkJ0YWJsVHVhSUd1TXJ0ZHJVOXVqU1R6VkVVZ2NvTGlvelhubnVkRjU1OW5lVTlCM0JGb013SGlJdWR1aEtiamp4ZlJhNC96MUhyMkFFcXBwQm9xckxDZEF5OVhnK0xIZG10M3FvWURBL2Uvd0M3RjNZajNsUG1GVUg2WkRZajBTWnV2MEEwejVkYVRncGdNUUc2WVpialAzcVJyejQ3ei9wZ2hhODJUNUhVb25Vd0hKS1JFYkJvREdCSEVXaGRIMk1uZ2J5SWVheXo3TUxoUmc0QkZvdVRpbzdLc0RiQlZaNUVFclJTbE9KcTkxTTFrYXBBYlF6bWE3SHJxWHhGc1JZTnBlWlpJREVwYVpvaUEraGtIZnF1UC9ya0pLTHF4aEFDcnFvSVdTRHRaQnc0c014c09rTlJEcWJ5R2xwYVd1NVVXaUhiMG5JSEkxOWZYMzlWRW5yNHd0WjV1Z2xQUC9Jc3p6M3pFdnYzSDJiOThpWnozVVdzalMxSFU1dWl4VkNXSmNHVktLVlExbnp0T3E2S0diYzhGUkhFQjhSRFloTm1rbG55YWdNdk1YZjRWaXNPVWtCUGRYbncyQU5VZ3hMUkdxc1N5bjdCM3IyNzZXOXNZaVpyZ1FRVVVYUUd3SVNVQzU4Tk9iRDNZWDcybEpEMUZQMThoZTVjZ3UybWJBNzZkUUp6N0t3V3A4M2lBZ3BQMWxHc3JWMUNhMDNhU1RqejFXbCsvYnRmYzI3OUhBTGN1K2Nlbm56eVNmYnQzYy9tMmpyQkNaMjBpNGpDNXhXTHZYbjBoSGRxYkY3ZzhickVhMCtGSTAxVEJtc0RkbVZMek5nZVZpeTVMOGp6UEdaOVhDV29LdUpCUmQvWnNpeVpuMTlrY1g2UjFVdXJzU3RhUzB2TEhVOHJaRnRhN25nbVd3Wk5jQlhoMStRMUdqSXFMQnJMUzgrOHlrc3Z2TTYrcFlNVWd3cExpbml3eWtieEZRS3U4bmp2TVRvMlFIQnlIVkUxRmFPNm9sWHROeHZRMmlKdUNGYXp0TFNYUzErZEcrL2ZEb21GTjl1RE5UVVplM2J0d3hjZWF3Mnp2VG5XQjV0WTA2RWNydExyWktBY3NXcktSNXRSR2QvSTc5cFpiT2h5WlA5UnNwNmlDSHZZekZkeDR0bS9kNG15Y3JXQXRSTmF2czR2eHBGYUlkR0dicmZMN01JY3hpU2NQUGtwbDlaWFVRaExDM3M1dU84d2R4MDZ6T2JpQUY4RlpqbzlOSXBRQmZLMUhOUGtCaUFFQlY0N2dxN3cya0VTajAxdllZYjl1dzZ3L2tVZjBkQ3hIWlF5RUlyNjhNUTlpam15b09wbEdneEtLenllcXFqbzd1clJUYnRrU2NhZ0xOck1ncGFXbGxiSXRyVGMyVFFPQlZzVndZNGFkbUtXNWdhMXg5SmxrU2NmUGM0THo3N09rYnZ1SisrWGhOSXowNTFsTU1oSmRNeWg5VTVBUE1ZWUVwTkVsd1YvZlVMU2V4L3paS3VBTm9Fc1NSbTZISTFoLzU1bFRuNzFIdU1HOVZ2YnczN1hoVjVmajQ1bFZ6ckZaaDFDTHRnMG81c0p4YkFpc1IxQTE0NFhEbEY2NmpBRnVsM05jSGlPc2x6ajB5OC9JNXVGU25KS1g3S2dkck8ydm9sZ2FKSUo5SVNQZ2lLZ1JPUExDbU1WbkljdlQ1L20wcVdMZUNvQ2dZM0JCaWRQbldSMTlSTEJDVnFwYUhFV0ZFWVpVbTFRZFVIYWFLdEdVVmtIQnZLOHhFcENVaVFzcExzSlZVQlZpdUFDT3JNb3FSc2MxR0ZuSldvVTVkV1l1bjJ4eFFTTjFRaytENmdDakVwckQ5MDJ4YUNsNVU2bUZiSXRMWGMwV3d0MVJpL3RFT21hbG4yS0JFWEdzOGRmNXRXWFgyUFAwakxybHdmZ05GYW5GRVVWY3oxdGlzWlFxUW9KQ21NTXdjZGJ4U1pOcm12clEzQW8xZVRKS3BMRWtsY2FqV0wzcmwzajNia0ZVd3NBakU0b0M4ZmMzQndybDljb1RJVTFIUWI5a3BudVBGVVo4MVhqVHZnSi82dmE4Y0hrYkd5ZTU5U1pFL3lmdi93L0VISXlValpZUndDUHJkTkhWQzFrcFM2cWlsRmVTNElod1JDam5pVnVGS1cyV0Q0Kyt4NGZuNDBYQXhrZE1wVlFTSUZIU0Vpb0tFYVdYcE1YQm5XR0s0S2dVQ3l5d04xN2p2S1hMLzROQ3VobVhWUmlLRnlCS0VWUTlUbll1RkdNaEt4R2ZMUkxNQ29sSVdHd1BzUVRTSFZHN2wwYmxHMXB1Y05waFd6TGJjMms5MnFRVU45dW52WjhqWS9tK1hadlZkbTJyRzN6YkZ0bXpZUTRtbngvT3U5djJ6YjYxVDZxQUFBZ0FFbEVRVlRKMXM5TWYzNWJ4NmlKMTBmejFiZldEU2E2SERXZXRhcFozN2JodW5icUZldHR1NnF4S3EzOUxUTmVmL1l2ZU95UloxbGVPb3dFQlM1Z2RZTFdGbGM0bEZHNDBxTWt0cDdWUUtpaTZheTFsbkNGL1IrOVBHbXZLVEVUZCt1WWdiV0tKTXR3VlVHVnh5WUxLNWRYT0hMb0NERittT0JHL2xLUktLWnZ0Z1RTYkpaRCt2MEJQWnZUblozRkpCMVdMMnd3azNiSnNoNkR6U0hhS0l6VktLMEkzdU5EUUJsQldjakRKcnNPenZEN0UxL2hHTlI1b3ptT25KZzhVRUFka2ZVSXVoYVlxVkpZaytMY1lOUTdLbXl4ZTRLU1NiTTF6WkFoUTlHajRxN284bFVTaUkwT2RHM3VwU1lkRElCNU5jZUdiSERoNGptS1lzanlyZ09zZnJuR2ZIZUJ6SFR4b2NJRmh5Z0Zva2RXYXNZWWZPWEpCd1ZhTlBPTGMzejQ4UWRrdW9QQkVueWRjdEZHWkZ0YTdtaGFJZHZTY2hzVHhkMVVXb0JxM3J2KzVYYzZpandYRkRBL3UwaC9zeVNJSW1PVzQwKyt5RFBIbjJmdjB0Mmtwc2V3SENKZW96Qm9wVEhhMXJmMHZ4dTJlUEhYeFY0aHhGdlQzYlRML093Q0JqdFJGRFFPTmN1TkdKenJKdGIzZi96SlNmWWNQd3dCMXZ0ckxPM2RoOHM5cDgrZVkvZmlITTdudU9CaTF5dWpVY2JHYmw4NFF1TDQ5T3dYZkg3K0ZJNFNxYVdsdzZHandSVkdLOUFHTFI3bkE0Sm5LQUh0U3N5b0FjYWtrQjJQcmErbjR4WVp1bjZ1OFFTY3J0MFBxR0pUa3RxZkZocVBYazJsSzd6M0RCbHkvdkk1OXN3dVl6cUdJcFJRbGRHT3pTcTBNWWdFcXFvZ3p3UGlQWE56YzNTNlhVeFhVWVNDUzJ1cnJKYXJRSXo2RS9MdjQwQzF0TFRjd3JSQ3RxWGxOa2FweGgrVWlRNWY0NmhzOEZmNzlOZlRpRmlOcGRnTUNDbWFsS2VmZW9FL2UrMWZzYng0RkNRajc1ZFVwY2RnTUNvK3RMRUVGemVnOXRiZjhpeHkvZEUwa1hqN3VoR3lpVUFuN2JETDdxYW5lcFRTQjJKS2cvZHU5Sm5wQzREdm14ajFIUExXZTcvbmlhZU9Neit6aDY4dXJOREw1c2pTRGpPTHMxeGNXOEVtTWVxc2pFTHdkVWM0Y0hqU3VSNmZ2UE1GbjUwL1MyT0lWWkRqc1NobGNDTFJwV3JVSVc0OC9uN0tzRC9BYU5rd01aVmEwQW9vaVExeE5RR3ZpTDhnVGRmZkVQQSs0S1ZKV0lrQ3VjRGdnVFV1ODlGbkg3Sjdib25sMllOWVVTaG5DQjdLVU9LTEVyUmdVMDIzbDZLMVp2WFNaYnJ6UFlMeG5EcjlLU2MvL1lpaUZ1elgxZHE1cGFYbEIwTXJaRnRhYm1PMDFxUFd0STNENkEwSk5zbzRDdGRKZTFRbFZHZzBQVjc1NmM5NS9ybVgyYnQwQkY5b3FtRkI4SjRrU1VqVEZHZ0U5SGN2RkYySXhWN0VFaVFJQVJHRjFwWnUybUhYL0c3VzExYWkyNmxTZUhHZ1FJS2dsTHJKa1ZtUHArQ3p0Uk84L2Y2YlBIdjhKUmIzekxGWnJsT3BnazdTWVhiWERGbHFRSHZ5YXNCd21PT1V4K2dFc1k1enEyZjU1UFFIWEs0dUlGU0UycjhWbzFCV1ErbEFETEhGRnFDaXU0UFMwYm5NdVluTm1lNSsxZ1N3SjZhakxzL0MrQVJwSHJWR2pxMmlvNGoxUGpBSWcrZytBTHgvK3QwWVpYMHdaZS9jUWRiT3I1SWtHYVlUQ3dCUkRoRlB2eXB4ZVVWbEtucWREaGZXTHZMMmgyOXhjdjFqQWg2dEZIMi9lZE5kSjFwYVdtNCtyWkJ0YWJtTlVVckZoNHpEVTk4OFA3YXVaRmZiUllIRzRrcUZrS0RvOHZTZnZNRHp6N3pCd2IzM3NyRTZZTDZiZ2dsb28walQyT3lnTEV1Y0sxQktZWlVlTFduTGRvdXVLOVd2RHhHUEY0TWhkZ3lURUFndWlybWdBc3ZMeTN5MmRtSjZwMjZKdE1wQXdDaUhsd0gvNzkvL08zcTlEazgvK2p4VlgxRU5CNXhmdThqQzNDeEY2U25MQVZVb3NOYVNkRk5FUE1Pd3lqLzgrai95MFdlL0lWQWlxajZTR3JLdU1NeExkQVlpQVJYcTg0Sm9uU1pjb1ovQWRGSGM1UFBKWGhpTnVHM3lFSnBXdGFHSjdBYlFvQlB3VmFqVEZvUVZMdkNIVDkvRWRpM0hEdlJaWGp5RVZvb3FEQmxXQTF3b01FYUIxZ1RyNmMzM09EczR5L3VuM3VQa3lnbHljZ0tPMGhhSXI5cGVyUzB0TGEyUWJXbTVuZkhleHk1WlJHdWtiLzZqdm5NNS8waCtLa3VRNkZEdzBwKyt6c3N2L0FWN2w0NlFEeFZHOWZDbHhCdmFTbzIycGJIRXN0WWk3dXE1RFZvMDRUb0ViWXlxZWtSTTNIOE1FcUpYYlJEaDBLRzdVQi9GK09Db0dFN3JXeVNTRjhobHlHSnZqbzNCQmY3MlAvOEh4TVBoZlVjNXVPY3czZDQ4dzJHZklCNUpLbWF5ak41c2w5S1ZuRHoxS1IrY2VvZmZ2LzA3Q29rRlY4WkNjRkd3NWpreGNsckZhWE9ValFFSnNZZ3ZNSDV2eExSanhRNUZqNlBYQkhTby8rbkdsbXhBYkhVYmlPa0hKb3BycFlVaXp6bFRmTUZ2UGhMT1h6ekhpMCsrU2llZFFabEFsVldnQlowYUVNR1Zqazh2bk9TUDc3L0xoMmZlWjVNK2pvSWhReUJBU3F3NGE0VnNTOHNkVFN0a1cxcHVZNHFpd09HMnZOYmt4MTR6U3FLNjJRRW5ucTZhNDhuSG51UDU1MTdteU9IN0dRNUFLbUdtTzhOd2JZMUVLN1NCcW9yT0FNWVlqTEhqM01vdHE5STNLUGNoWW94QlJQRGVvNGpwQXRSZUJWcHJEdTAvRUZ1dFF0MDBJYVpqZU1KTkwvaHFJcWlWM2lBQVgyMTh6di85dC84WER4NTlqRCs1L3hFTzdqdE10NU9TZFF3b3c3RFk1TUxaTTV3K2U0WjMzbm1QOTc5Nmx4SU56R0FRVlBBZzBRN0xhb3YzUW1KN09CZHdqVjl2aUsxdXdXRUF3WXdrL2NndFE5V2gxUzJpdHZIaVpaU1RyUUhyeHVIdHhuNHJFREJvZ2drNEZVYXBCNFY0bElZaUJFNzNQMk85djg3Rmk1ZTVhL2tlRHQyOXpOeXVXWFFLdzlVQkY4NmQ1OXk1YzZ5c3JIQm0vUXdWSlNVVlRydW9uaTJRQU5WM2RuaGFXbHB1RTFvaDIvSURZa3NkKzVWblU2SE9HL3lhK1c0UWVtb1ZJMnN1RlZDMVpSaWk2L3UxUUJoWGttOFJGZ1JFZ1NnUENFRVhWR1dmK0d2dWtGbzJhcVZyYTY3SnRlNGdWTlhFNnhOUjBhWnJseUpEMCtYWnAxL250WmYraWoxTGgxaGZHNEkzR0pOU0ZFTk1va2tTaTlXYW9xcFFkY01EN3oxbFdZNXlacmR1UjB5d1ZNS082UVhUNDNVbE5LQ054amxIRUVjUWcxRWFwU3hhSnhpVHNUQzNnQ1ZCb1pGUVJjOTlUT3lXSmJkR2pzRkdIK1puT2d6N0JSZmRWMng4dE1sYkgvMk81VjM3V2RxMXlQekNMQkE0ZSs0TVo4OTl4ZEFQcWFJVUo0NmxpUkZtSDcxZVo1SlpkdS9ldzY2NTNTUkpsL1cxVFM1Y1dtRjllSW1LQW5DbzJvcXJISmx2TlVlbStkdlFFeGMzWXhPdXJjNEY4Ym5CRXBNN0RKYUVoQVJqTkZoaHZWaURCRGFMamJpbFJwRjFPMVJGd1hwWXBSaFduRDUxQm50SzRTZ0pCQkpqcUh5VXJoRDliTFcxZURmRVNSVWpzUW9vYUtPeExTMHRyWkJ0dWQySllsRFZIZWhWYmNBZXhWaEFnbzhGTGxJbjhvbEV3VGk2elJ6bjAxTStyNk9DN2FiYWUyZnIyUEg3OFlPajZSWWZXZG42dmhyTjV4SEtXc2hhbEJpZ25zcjRUMVByUUJWS1hDanA5VEtNMVh4NjZnUXpDNHIvOFgvNmIrbGtucUlvQ0JJVEZkM1dBTzFvbkhiQ1pCcGZ1dEYySmtZVG5NYlFRVEhISzAvL0ZULzU4Y3NjM1BNSWVWNVFEZ2ZNelhRdzFyR3hzVUhIekZDRmdQUFJ1RWtCenNVd21VNHNJWVRSK2h0LzNUak90WWpVYWp4V3pianNOS2IxODBrLzNuanZ2TVFBU21lb29BaGlrQkNOclFUTjB2dytkblVXS1BKMUZCYXZBcTRvNk13dWttOXUxc2ZtSm9sWkdWKzdyUGR6b2tETXFhaFFhRll2bjBOZkhtL2Y5RmFPcm9mcXhnWjdrajA4OTlTTFBITGY0OHhtOHhodkNVSG85RHFzckYvazNaTnY4LzZuNy9MNWhVL3BzejZLNUt0NnlXYmtBUnNkTUtKTVZuWGFpaWJMTXNvOG4wakwwS1IwQ1FRNnpQRFlQWS96OE5GSFdaclpReWZwME9sMHVMUitrVE1ycDNubnhGdThmL0U5Y3A5VERTc2swWlNod0JQUTlMZnU0WlMvYnc3Z2Fuc3dxVitZek5GdGFXbTVvMm1GYk10dHpiaUVhUEpuL2hxRXlUZ3MrdTNXVzMvODY5eXRwaHNqVEp0UHFlaGJOQ0YyNHkxY3FmZXNxZ3A2YWNxZ0xDaXJISjFVK0dMQXd1NHUvLzMvOE45UXVnMWNHQ0lUNlFXcU5wSzlsbHZudmxhOVdrTmlEUzRYRkFsemRpLzMzZk1FTHozL0MvWXMzb1ZWc3hpeEdCeDVNY0I0UjJJZ2pyVVpGZitJR2hjVVhaMmRqMUZUaUhSTnFGRDdOTVNPVmZWbEFqRXAwNkRFb3RIczMzZUFDNStmUm1Qd3dZUFNWTUdQeGRETlpNdDFVcWd0c1hhOEV0bUdxbDFiWjgwYzl4OTVpQi8vNkRnUEhYb1lVMlNFZGVpbXM2Z2dGQ3NGaTUwRmZ2cllUemx5K0JCdmZ2QmIzam54RnBlcUZUS3JDTVM4NWtxcWVybGpPN2RHdEhxQllUNXhqdFdpdDhMeDRMNkhlT0toSDNOcytSZ0x5UzVNbWFBS2hjODlkL1h1WmMvQi9TeDE5N0I4OWdBZm5uMmZUMVkvcHFvS3RGV2ppNTV2eE0wUG9yZTB0TnhDdEVLMnBlV21vU2NpcjZvV3NLb1dXUEhYT3UybVhGcGJJZXNxZHMzTmNIbjlIRUdHL0MvLzYvL002dUFpaWlGaFc0N3NwSVBCMXlnMXNTQ0I0RUNiRElWSGsvRFlJMC95bHovL3J6bThmSlI4VTloWVhVTXJRNVlrT085UVFkSHBkaW1ITjNBNHZqVlh1QmdSaFZhV1k4ZnU1KzNQM3dRMFNoa1FoeStybXk5aXJ4T054cEp5MzEwUDhwUEgvNVJqQisrblorWW9CaVVhUTVwMDBNREdZQU9iSk14MVp6bThmQVNuWXBlMWYzNy9sd3pkSmw2NVpvSHhORFRFWm1ETlZWcHprZUxpQlpleGRYZXZTbkhmM3Z0NCt0Rm5lT1QrUjBpcWxISzF3Z3FrYVVwWmxsUlZSV2UydzhFRGg4bDJwWFIzWjZ6OTloSVhpL01ZRERuNTdYNFlXbHBhYmpLdGtHMXB1YW5VdWJxaTJmTG5XT2ZGbGxWSjJvRTBFOHBxQTIwcS91Mi8vZTlZSFY1Z1lhYkhXdi9TdGlVMlhhNitGdEYxdm1zWDcwdktRdWlxR1g3eTFJdTg4dnlmY2VUUU1ZYnJGWVBOQ3U4MHZWNlBMTTJvYXBlRW0rNWpKWHJjeG16OElwTUtWU25Ea2NQM29ERlVWQmcwSGczZWozT1BiMU1scFZETXNzQ1A3bjJFWXdmdngrWEM1YzFWZW1hT1R0YkRPWWZWR210VERJckxLMnVVa25QWHZudFFEcjQ0L1RtZmIzeUM3Z2xvWVZnT0NhRTJFSTVwMkpFdzhieHhRa0JZTVBNODkrT2ZjZmZTUGFqQ3NIWnBIVDhJN09wbC9QL3N2Vm1RSGRsOTV2YzdTMmJlcFZhZ3NEV0FCaHBvb1BkdU5sZHhrMGp0a2lYWmNzU010eGVQWC96dUNDdkdqdkJvSlNsUnBFVE5rR09OeDU0WVA0ekRFWDZ5dzlaNHJORjR4cElvaWsyeTkwWTMwQUFhTzFCNzNicExMbWZ4dzhtODkxYWhnRzRBM1YxVjdQd1FGMWwxTTIvbXljeHpLNy96UDkvLys4czRsSmp0ZGp0RU1pSWpvNUUwT1BYd0tWYldsL25iVi82R3Z1a2h5d3BoTldyVXFIRy8rT0RxUjlhb1VlTmRVRVprZll3bllxVE1kVGhoY2JJZ04rdnMyZHNtTFRvc3JGemh0My8zNzdNNnVJSEMwQitzc0JVTGUrL1orSUU4dCtKSkVpWVJOSG5pMVBQODRzLzlHcWRQUHMzTnF3czRBNjFHbTZtSlNTS2x3Zm1RVU9VRmFUOWxaLzRKR1U5U2t1eVpuYU1sSndHRkZCb2xGVU5UMVYwTWllYkVvVk1jbVhtWXFXU1dsbXlUUkcyU3BBRklCb09VUVpZamhhWVJ0V2xGRTBRMG1KVFRISjU5bUNlUFBvMzBrcXlYazY3bitFd0VWVVBPS0JwYmtWZ0xEZEdrUlp1RUp0UE04dnlKVDNCczloZ04zNGFCcEswbjJETzVoMFFuMk1LUjV6bEprcERvQklYRUZ6Q1ZUUFA0MFNkNFpPOUpZcEtRZUZlalJvMGFENENkK0JTcVVlT2pBUy9EUEc2VkpWNTlIWVVGa1lNb21OM1Q0dWI4TytSbWpXLzl5ZSt6M0x0R29rQ3BuTUwxaGhyR1lZV3ZlNEpBa2RBZkZEZzBYLzdNTC9McnYvYWZzSC9QVWZxZGpDUnFneFhFVVlNb2lpaUtnc0ZnZ0RNT2ljTDcrOU1YdisvdzQzbjNHNk43M2ttU3BNMUQrNDhnME9BRVF1d010NElIaFVEeS9CUFBNNkduU0ZjTEl0dWdIYmV4bVNmUGN4cU5rSEJsclNQUERRM1pwQ21hOUZjeUlwUHc4Y2MvUlpOSm1yUnAwbUpDVEpMNEJzcHBoSlUwVkFOaEpjcHFZaEtVMVNTMGFESEJIdlp4ZFBvNGNkNUFwZ3B0SWlhaVNScXFpY21EWTRWU2dhUktLV2ttTGFUVEZIM0xudlplanU5N0JFMDByQUJXbzBhTkd2ZUxXbHBRbzhZMndsZkY2a3NiTGlkOHNJWVNCWWlDaGVVbEJ0a3lmL3l0MzJlOU4wOFNDd2I1S3FOU1N0eVJ3TDViQ2RZcVdVaVE4Tnlwai9GelgvcGxUcDk0Z3ZtYnl4UzlnZ056UjFsZDZTTmRzRUh5MWlDOHg3bFFCQ0ZTZW9QQndIYkFJNkdxYUNYS0pEd1JYQ2ljbHdnbmtEcmlrZU9uZWZQbVcyVmlVNlVKOWJ1YXp3b0VoK2VPTUtHbWNRTklmVTRrQk5aNkpKSW9pUkUrRktiSTB4eHZIYzZES1FxaUtPTFF6R0grM3MvL0Y2eW15MWhoY01weWJmNGFyNTk3amRWc0JaZDZubnpvS1U0ZE8wMHJiaU56UlV0TVVQUUxwcElabmpqNUZEYjFZQldpRUdSWmdTdUxZaWlsMEZxUlpRWGRicGVvcFltRVpwRG10TnB0RHM0K1JFS0xQdjN0dm93MWF0VFk1YWlKYkkwYTI0YXFRUDFJVWhCSXJBMUVWZzRZWk12ODZULzVFeGJYcndBWnlub3FGL2c0bG1SNWFXdTFpYlFLSVZCS1liYjI0aHJDSS9ucFQvODhQLzFUUDh0MGV3ODNyaTdSU2lacFRUUllYRmlsbFV6Z1hkaC9vOUhBZTRXeGFTaEFJTVQ5bWo1OFFLZzhlY2ZlOGhwRnhLRURSOURFNUJTbExyUDB1M1h2elNGZ3B5SWI1RXpzYlJORk1kMXVmMmlUWmZKZ2orYU1wOVZxb2JVSmlWZHhnMmJjSk05VEJwMlVvL3VPc2NmT0VyY2ptbE5OM3JsMmtmVzFkUVpYVWl5VzJXUXZqeDEvblAyekJ6QTlTMXRQWVB1ZVFXZUF6eUVpQmlUR0dheTFhS1ZvTmhzWVp4a011a3hQVHpPL01vOHNKRkVjWTIxQkkyclFpbHBEbjRrYU5XclVlQkRVUkxiR3JrYVYyQlE0WERBTUdyNkhEejZtdzBwRnZ2UWwzWnpWdjlHZjlFNVJ6QTNySzh2VGQza1lqKzhydEduc1BlK0QyNmtVZU85d3ZxRFZWRWpsT1AvT0pkcVRrai80K3UrUW16VThPWjRjWndPSjlRS3lZaFJPSFBtMWpvNzFiaVFXSko5Ly92TjgrU2QvaG4zN0RvRlI2S2lGTHlTbUFFV0U4Q0pVQ2hNZVkzSkdVZUJLMi9oZ1RIYno5Y0Z2Zk8vZDlqNlVOd3c5WnUzWWZSSjQ2NUZSd3BIRGo2QklTUEFNQ05XdnZOM2RKQlpBS0lrVDBCMzBLYXhsZG1xS3dTQmp2ZGRsZG5ZV1d4Z2NsaWlLOE42ejN1c1J4ekZKSThFVUJZVW82QmM5dW1zTzJaUGN2SG1UVHFlRExVV3lDd3NMTEM0dUVoRlREQXhkMTZNWUdCTFo0TkIway81eWdTTElCd0MwMXVGbkYrNURsbVZvclFPNUpzY1lFd3BZREJNR2E5U29VZVBCVUJQWkdqVzJEUjVqVXRydE52MUJSbTQ2cUZ4VDJIV21aMk4rODdmK1BybFpJM2M5UEJsVkpMYXN3dnErVkhxTmRjTE16QXpDU293Uk9HT1FQa2FMbUVaQ0lJakNNOVNmQ2pjc1NMcjlFbGt4cG8rbE5LOTFveW9EWHVCUkNBZVJiSEhzd0VuTzNYcVp5bTFodTJVUkR3cVA1L3F0YXh5ZVBVWnJvc1h5OGlwcnZSVzhDOVA2RU1yeURnWURwQlNCd0RaanBJSkIwV09wdDhnLy9UKy9UYzRBUmJEVXlzbEpDWjVxRHNmMTdqWCs3Qy8rTDZ3TFJVZGF0TWtwT0RSNWlDOTkrc3NjblRtRnNzR3ZGd201eWNrS2oxS0tpWWtwMHJTUGM0N2NaSGhwSVJLa1JVbzM2NkxxUks4YU5XcThENmlKYkkwYTJ3WGhhTFVUMXRiblNScUsyYWtXSzUxYkdMZk9ONzc1ZTZ3T2JwU1IyRUJpSzM0bTVDaFMrYUJrZHEyelFyUFpKT3NWU05IRzJVQU9SYVJEWFFGYlJtR0Z3WWtRcGR0Si9NOExNYXFVRnQ0cEkrOWw4cHhYZU9lSmRJT25ubnlXczdkZUtRbVV3UHJkSFJQME9ONjVjWUVUUng5RnhIUGtmb0NVa3FtSkNmTFVrcVlEbkhPMEpsckVzU1kxZlFwVEVNZUtRYi9IamJYTGRGakJVU0NFd1Bwd2Y3WFVDQ0Z3MXBPVHNld3lBQ0lpZXF4anNPVDVnTFhrZVE3RWZXSmFnQ0tXRVZpSnlZTk8xaGhQbzlFQVN5Q3lzYU14bWJEV1grSG15blV5K21OVndtclVxRkhqL2xDbmpOYW9zVzF3RktaSDBwQWtEY2lMZFlSSytaM2YvVys1c1h5QnlWWThJckZqbi9JZW5CdldUSGlnNDErNmRJbHVyNE14aGppT2lhSUVJUlhXQmZ1a1lBVVdTS3dmdnFyeXBUdmp6NGNYWXhyanlpK3FUUGhTSWdhcmtETG1zVWVmUUpaajk4M3E1TjBJaCtQdHEyOXhlZUVDQTk4am1wU0l5SkhabE1JTXlQTVU1d3h4clBISzBzMDY1R0tBbkJTc0ZVdThlUFlIV0F3OXV2UjlqNXdNUTBIbVVuS2JZekEwZFJPSnhPT3cybURpZ3BRZWkva3RmblQrKytSeGltdFliR1RvbVM0RDAwZHFnUkNDTkUxeHppR2xwTEE1aGh3UmU1WjdTMXhhZkllQ0hGY1QyUm8xYWp3ZzZvaHNqUnJiQmtkaCtzd2RtR0Y1NVNiTEt6ZjR4aC85TG12cExhQ2dsdzZvNUFTakVPeTR6UGZCYmFSVzAwVVdGdVk1c1BkaHBBU1V3cGxTWStzS2xCWmpHdU9nQ0haVkdWaEM0disya2tFdnkvYU53eUc4d2lPUlFtT2RSUXJGbnRuOXpDWjdXY3E2dzlLMnV4a2V5NEtaNTYzcnI3UC95Qno3Wnc3aVU4TjZaeFZwSTFxdENTU3cybDNHdUJ3WEYrakppTlZza1ROWFgrT05XNjhobFVkYWlVQXdON0dQb3dlUGNtanZROHhNemRKc05vTkdkbm1CczFmT3N0eGZwS0FvRlIyZUY5LzZFYzhkL3hTUHpEN0taR09LZnIrSDdUdW1HNEptM01SNlRhZlRvVG5iSkc0bXBMTEwvTm9TWnk2L3dlWFZkOGpKOE85YTVMbEdqUm8xN282YXlOYW9zVTF3MGpFN1BjSE5XNWZ3Wkh6ckgvNEJ5NzBiSkVwaWhTTTNvL3F2VXBZZS9oN0NsUGw0TlBUK3lheEVjTzM2SlE0Zk9CNGlzRTVqakNPSk5GcHJJRVJnRVNZa3p3SGVLeENsSkhXblFZeHBaSWNJTWdNdE5hY2ZQYzNmdm40RlI3aW1iaGNIQkIyT2dvelhMcndLU3ZEOEU1L2trWDBubWRrN2hTcGljTUZjTFMwR3RDYWJKTk9UWEZ1OHpBOWUvejZ2dlBVeUJUbmVlaHEwT0g3d09FK2VlSW9URDUxa1ptS1dWdFFPdGwzN2NncHlyaXhlNGtkdi9aQTNMNzFCSisvZ0lvT1Vtbi96MTMvQkY1NHpQUGY0YzB6dG5jUkVGdTNWTU9FdWlxTGdtcUFrSzZzTHZIbjVUVjQ5K3pJOTFsRmE0Y3d1dmdFMWF0VFlFVkRBYjIxM0kyclV1RC9Fek8wNXhrLys1TS9qbkVDZ0VTTENPWkJDRTl3SWJNbTRTdTBrWXV4VndkOFdWWHl2djkrSnl3MjM5M2Q0SC9EQ3NyWitpOTVnbFQvNCt1K3kxbGtnMW9MVXJtRmNpaEFlTDBwTjdJWUdxTEhYZUMzUmU0TkFva2hvTjZaNTVwbVBVNlFlS1NLS3dwUEVDVjZNMjRGWlNvK0ZVbElneXozY2Z1M0d6L1BkcnVQbU4rNzFQdmp5WG9wUzdEQmNsa1VtbkErRklvVHlGRDVGSlliWDMzZ0pRdy9ZMVRheWdDZUtJM3BGbjFzTE55bjZHZElwSXBuZ0RReDZBNXd4cENZbEorWDY0alcrKzlKZjg4UFhYMkM1V0VDamlZaDQ3dURIK055elgrRHBJOCt5THpsSXU1aUNOVWsybnhQbENVM2Y0dURzSWZaTzdxWGZHN0N3Tkk4MUZweWdudy9vZDNvSUpBMmRrT2dHV0luTkxOWmE0amlpbTNhNWN2TWR6bHg2Z3pjdm5lSG00RWFJN0VZZWEzZjNIYWhSbzhiMm80N0kxdGpWdU5mSFlEVVpMKy9BL2U1cG1sdzRwTGM0QWRMTGNyOWpGYnFBRFFYclJTbHNMWk9tRUNtOWRJbnYvQS9mWkdIOU1vNkN4RGtjQm5BMEdoSDl0TUQ3UUdTREpyYmF0MEJwd1lNNVNIa2NLWmV2bkFkaHNBNGFrVUtWVjlWYmoxRGNOblV2QU84MXdrc28yM3EvRUg2TEFPcGR0cjBUaHF1OFJKUjJCTUk3OERsU0M2U0FOTTg0ZnZRNHNZcEpqUVp2MlhqSDczUWVtN1hBTzRkOFdSc0dNZ2JEbVV0bnVIenBDb2YzUE15cGh4OWp6L1Fzc1k3b2REdGNtYi9DbVl0bldHRVJTNEZXRWRZYWp1aGpQUG53TTV3KzlDU1JqU2pXTEpGVVRFUnRHbzBXU2F2QnRjVXJSSVhpK0tHVEZCOHpwR25PbTlmZUlDY25JZUh5MmlWdS9zMU5ubnpvU1o1NjVHbjJUTXpSak5xMG1nM21PeXRjdVBJMnI1OS9sWnZGZGZwMHNSaUV2SmRTeWg4a3hxckNiUnpiQXFPMzVKaU14MjNjNU1FaHlwM2R6L0pCc0lVc2FDZmNrUm8xN2hVMWthMng2K0ZLSDFnaHdzUFJPUmZJbUhmSVRYLzhoUzlqaVpVUDdOQm50c1NtUCs1RFQ5THhuMzFROWtrZkNoZElYSWdHZXdtdUxFemdSMTh0cFFTZW5LTElTUm9TclQxWHJsNWtlbGJ6MVcvK0JwbFpCUVo0REprTGpmUWUrb05pZEk1REtXSFYxcndrc1E5Q3FoeFFjR1B4SFphVzUybEhCMGppSm9Vc0dQUnkycTJFd21URHFtTWVoL0FDNzhwejlaVUZsOXQ0cmJ3Zkk1MWpWOU9YMGR0eXUySEwvZGJyTjZ3RGhuNVoxWEVFdURMVFhuaFFYb0lQZzRsd2ZJY1VubTV2bFhoQ005SFFwQ0xpcVZQUDhQS1pnaDdkVWl4UkRTNDJYVXNmWXM3amFXRitmR0N5elJCSXNCSlZrckdNUGhsOVZwYm5lWDM1QjdkdERaWHZzY1JaUjBUQ3FhTlA4Tml4cC9HNUlyZU85dVFFdlc0ZmwvYVJXdE8zS2MxOWJWWjdxeFJybHIxN0R2Q1pUM3llaTljdVkrbVNNY0JqR1ZEd28rdmY1K1hyUDBBZ0VLV0cybEtVNlhjV2p4c21kd2tuc2ZsMlgwTlp6aW1VRUdOa3RteWE4cFRHWkNQQ1c2VVVEdWRDSHBSUWJwNit1TmZsQTJCYzQxNlo3RzMxMVIxdXNPbnRtdmpXMkFtb2lXeU5qd1RHbzNuamY0Z0RjYnEvZlRwQlNXTGQyREVxL1dwNDhCbVRrelFTZXYyVUxPOGp0V1NROTVpYVR2ak4zL212eVlvVkNyZU9KWVJXQStjVzcxSmU5djBrQUJaSHpxVkw1M242OUFHS29rQXBoYkF1Wkp3RGVJa1ROa1JQa2VVMUsyMjY0TDRmcVBlU3FpYjh1OTBtV1k0MnltV1prdWFjb1JGSFNPa29USTdVa2xNbm4rVEZNeStqYUFMcDdhMm9CajlidCtROWJ2ZGhZVVN3TEJhSDJaSmNTUUwvbCtpU1pBWVNkL1R3Y1JwUkcyODh0ckJrUHNjNWg0NWpoSklVdGtCNGo0NGlwTlE0WTVsSXBqZzQ5UkJYTzVmb2s0MzFYVTlXRmg2cHlpWnZMdFFoeGtpaFJKYkVhVHNKcmRoNEcwY2gyR0JKVERXWUVXVkZ1SExRVm01YnFaYnVGMzc0MzMwdU42dWs3dkhnbFhzSEJHSXV5K1dXR05QRlY5L2RIZkVWcVBHUlIwMWthOVM0WDNnSlFwZC95QVZlM0I2bGJMWWJyS3d0RWljd3M3Zk5XbWNlNi9yODRUZSt5bEwzRm80K25vMzZnQTl6eWpVSUNUeXZ2LzQ2enozeFJmS2lqNWFUSU1PMHRkendrTncweFg2Ylc4RE9RaFZGajZJWUx5ek81RWl0ZWZ6VWswenBXVmJNQ29KMFJDWTJDNThGZU8vWXFTNkZJWUpteXRiNWtaWFZGaEU3VjVJV2h4dkdtQldLQXdmMkliMGtMM0tVMExnQ2xJdHBxMVpJL3ZPQThMUlVHMmN0ZVo3U2JrNHd0MmNmdHpyWGdpMFhkdGlDWWR1cVByenBtbzYxOHJiUGZOZ0lKQzQwekk2M1krejYyVEtwVXBUL1cyVFFqcGRkUWxtMnRheURlMEFpdlRON2RvMGE5NGE2SDllbzhTRHdLcnpRRytRRWdjZ2E4cUpIRkh1aXhKRVg2eWh0K0wydi9uZGNYNzVJRW1tMmQ0cTYwdU42TGx3OFQrRnpqQ2tRMHBVaTRuSEp4VzVVMDBtVUNzbC8zZ3VFMEhpbm1Hek44UGhqejVTcGExVnM2VDd1dzdaZmdsRG1OYVRoQmVuSEhhZUZLWWs5TG15ckJFSjRWQ1RKVEliM25rYlVJQll4c1krSWZZSWJlQ0lYbzAxRTVEVFNTbHpoaUhWRU0wNFlrQWFwaGZCNDZkNXpkTkFQMjdyOUE2SFFaSGZYWnR1U3dCb2tIaFhzTGtKUUd5dEd2V2M3WG5EL0FkMGFOWDVjVUVka2E5UzRiNHpKQ1B4NHpkZ3d2WW9JUkhidjNDVExLemRZVzcvSkgvM3gxMWpxWGtYaUdSUURxc2RLTlJYN1lTZkFCRExuV080dHNiS3l4TnprQk1GcUM2U1NHKzJwdkNpMXNWV3JONUhkYmNHNFpuVjhYQjRJcWxTYVBNdEFlTFJPTURabnZUUGdrOC8vQkgveituZTNKakMzV1ZJNHRqZnVkZ2NJZ0MyeS9lNW1Jd0dBdzBxRHc1SzVnclp3UkZHRWxCTHZQRGlCdG1GMTQxSUFBQ0FBU1VSQlZCSEthR0lkVTdnY2dVVnJoUkxoa1pIYlBGQmk0ZkRhMzdrYmpFVzM3N2h1MitDcVlzVjMza1NFNzdpbkhIUUtHSlpDTHUyVWQ0U0QyUDBraXdIYTE5R3NHcnNmZFIrdVVlTytJY2Npc21OdUJjS0N5RUVVek13MnVUVi9pZHlzOGNmZitob0xuY3MwdEVESkhNanhoTXBIVXNvaG1mM3d6MEppeURoNy9nd09VeWJvakxzUlNEYWNIM0RmVWN6M0VjSnZmTG15Y0lNVDFYTTZ0TmtMaFN2S2lLeFhwRDNEc2NNbk9iNzNVV1NwK2ExMHp1OUhBczJIQ3JIRkM2cnc2K2kxYVZ2dkRiblBXT3JNSXhLUFRBUzVUU2xzanJXaHhHeXNrNURjNTMyUW1VaUppaVRkL2pvcjNSVXNCaXVLamZ2bUxzZmZxdTNiakEwa3RqcUg4Zlo2QWVoU1NhdkNySXVOd0VYZ3lsa1k4VDY4dUk5bE5Rdmt4MzYrNTJWTkFXcnNmdFFSMlJvMUhnQk9hS3JxVXA3Z1dlc3hJQW9RQlRjV0ZrbnpGZjc0Vzc5UHAzdUxPSUorc1VKSXFhaXkvYmVPeHQ0OTRldjlnY2NGbjFYdmVlV1ZGL25NeDc2SWtDWm9HZjNZbEtzdkt6SU15YnBqWTFHR2JZUW9vN0ZEK1VQNDNRTjVudE5vTkVQVktST3k2U2ViMC9oYzhLbm5QODNaZi8xeUtTK1F1TEdhdjM0RE1hdk9WWlJ2alJLc3RqMm9PRTYreHVlT056ZE1qREcwOHJ3eWwvSGErVmM0TUhPSTJlWXNMb2RJeDNnYjFvbEk0TDFGS0JIY0lTUmt4WUNyaTFlNHVuaTVUUFR6dHgvUGp4K3FWUEQ2TVVlQUhhUlNHVjZ5elcxeWxBVWxRbEdKVU5wWTRuQlk3N0Jtdk85dkx5Ty8zNk5MTEpLQzdSNlExcWp4b0tpSmJJMGE5NHN5YzMvMEtBbTZXTEFsa1IzUUd5enlULy9IYjdPd2RobklrTlpRbFoxdHR4TzZ2V3lEYmRVNHBKU2xUK2dIMVB5eXhTaVBONDZMVjg1aFJRN0tZRVd3MmxKU0lueVYyN3lKY1FpM3ZkUERZbmdHdzkrOWRBZzNJaGxGVVRBek04TmdNTUFWRGhsRnpFNVBjLzM2Vlo1KzRsbkV2OVpEaXkxWnBxbTdIUkFwZk0rNGpZREpNcjllREZkN3dEdnd3dUhGcUQ5NUxLK2NlNFduSDMrV1JpdEJhb1hXR3VzTFV0ZEhDb1hVUU95d3htQ0VwV2ZXdWJyNERxdDJCU2VMMjhtekh6a1RpTEhHZVNUV200MWtkcHRIQVZYdkdRNWF4dHZrUUNQTG9oRWFYZEpaanlwTnhIVGxWVEowOHJqWDJmMXhEUDJ0NzJGWmZlNStoNU9XQW9QWlNweFNvOGF1UWsxa2EreHFTQ2t4eHFCVmd5STNTR0ZSU2xQa0JWR2tOZ2FLZkhqU2VqOGlZT0syOVhmV3FkNjIzbnVVREkrUndoUllsekk1RmFPaWlQTVh6dEdhRUh6am0xOGhOMnRJQ2h3NWppTDQzUUs5WG5iYnZzZnhRWkxZNFhFQm5VVGtKbWRBajNNWHp2RFVZMjNpdUlWdzRJemJzaENCcUtLWDcrSmNNSDVlM3Z1aGs4RDQ4ZSs2ZmxqY1lJdnJMenhDaGx4OGdSOUd0cDJ3dzIyU0pLSFQ2YUJWakJNV0hLeXY5WmxzejJCa2p5ODgrMFcrKzhxZlk4ckVOdzlFRWVTR3U1S3RVb0hMdGtlelBCQUx5RHc0U1VTRUowUVNZeElNUllnaTR2RGVZTDBINlZDdENGRkllbW1IZi9POS80ZlBQUHRabmozMU1aUVE5UEllV1Q1Z29qWEoydm82RGtNMEZkSDM2N3o4OWt2OHU1Zi9MWWFDcEJsVERDRFNHaTBqOGtGQmlIbHJGSG80YlI4VFU1Q1JBMUlMckRjNDU5L0Y2K25Ed1hCU1laTXNJbEVhWlFVSmlzK2UrZ3hIOXg0bDcyVzAyMjJjYzNRSFhack5Kc0tvVUFURmxWWDRmSWpUVjRVK2hnVS90bGkvQWZmNWVlVkRYdWJtNzlrNEtxbElKV0h5M3VPOVp4QVBXSi91OCtjdi9Ea1dTeEluWkhtR1VxSEU4UGdNUlkwYU94azFrYTFSNDM0aFBMMytHak16TTNnaEtOS1VicTlMVnF3eE9hMzV5bGYvQVZteGlyRTlIQ2xWSkJZb2l6ZHNYOVBIMFU5N09EU1NnamZQdmNxelQzMmNmcS9MUkR4VmJyRkZpSEpIV20rTnhhcTJrRDRJRnlRZ3NqUmVrbDd6MU9OUDgvS1pGK2dVaStYRWNVRlJRSnhBWHZBZXlPdzJCeFk5WUNDSm1pZ2JFYmtJN3p3UkRSbzZJVE1GUlRtQXlza0JnNUFlTThqQlFpU2J6Sy9kNGtkbmZzQWc2L1BJL2hOTUpUTWtVY3hBOW1qc2p5andYTDUxa1IrKytYM08zVGhIbzVtUWVrZS92MDZrRTF3V0hHeER3ZHVZQmcyQzZ0aGhDREtWVUE1WmdRRVhERzFSV201dmlkcng2UEJZUkZZQ3lnb2lOTE5NOFZEN0FJZmIrN0hDMG9nVG5EY01tS0RkYXNGQUlyeTg5MEZ3ZFdoLzkvVjNJcWplaDBMUmFreXhzZFcyM251OEtnZURZOTYrM252VzR4NERleVhNL0RnNzlQd2REUlIzMEIrcEdqWHVncHJJMXFoeDMzQTAyd2tyblZ1MEp4Sm05clpZV0x4S2JqcjgwYmUreXEzVlMwQUc1RUF4Zk9MNDZyOGRNTDJLQUdzTFFrb0x2UFRTRC9tVlgvcDF2STFBVEJDMHBuSVVRUm9TMlBFTW91M0RzQWpGQmxRUDRsRXFqL1FFcXloZnJSVklKemwxL0hGT0hIMlVseStzb1JEa1dQQ09TR3Z5Zkh6U2RTcy8yZTJQeGs1T1RKT25CVFlMbXVzV0RSNDcvamduSDM2VWZiTnpPQWRydlZVdVhyM0FXKys4eVZLK2dEVUZTZFNDMkpObkJaMThoZDcxSG91TDg4d2Z2OG14aDQ0ejJaaENlTUhLNmlyenl3dThmZVVzdDlMckdBb0tDcndJMTBZVWtOQkFvVGs4ZllSakI0OHoyWnBFdWhEVnUzcjlLcmVXYjdMa0ZnRXd2Z2hUOU43ZFZpeGhwMERhMEtzakloNmVlWmg5cmIzTTZCbXN5a2w4akxjRkRSL1JzQTBjQ29Rc0UrajhhTGtaZDFnL05FRzR3M3FQdnl1WjFlTTYrdkhQbGo4Nzc0YUpwRlhWdzJDWkJsWjY4alFmRXR4cUJxamFoNUFmdkVhL1JvMzNBeldSclZIanZ1RlEycUlqVDJHNkZMMk1Sc3Z6dGQvK0NqZVhMaElwUjJGTEVyc1Zkc296b2lMVXlyTldMSEh4blhNODllanpPQ3hleUkxazBWT1MyWEZIZyswa3MzZWIzdDk4Z1FOamtNTW9tRUNJbU9lZitUU3ZYbmlOUnRRa0x6TGlTTlB2NTNmY1krVTd1dDIzVHlBcCtqbmVRa3pDNlVPUDg4enA1M2pzMkpPMDR6WmFKaFJGd2RIOWxzUDdqbkpnN2dDdm5YdUZ0eGZPNG9wUU1yYlZEQktTUEN0WXlWZDQ0ZXozK2RIWkh3MzFyUzFhck5QRFk0SnNRQ2dLWDRBUXRKTkovQURtMUJ5bkgzNk1SNCtmNHZEK0k3UWJiWVNWRkVYQms4ZWY0dHc3NTNqOXdxdGM3bDdDNFlrUk9HMHBpbUw3TCtLbUpEVXRnMXBhb1lscDhNaWg0MHhFazhoTTRWSVZOdklLbVFzSzR4QlNsM0tZcWtkSXZLOXFaSTFVclhkYUw3eEU0UEN1MGhISWtEUmFKcEE2Rzk0UDY5MXdHZFlIT1kzd2xhekdEWmVWcHQxYWdkWmhCc0xhQXVkQ29GV3BDSWRtYVdXWndvYS9UNVdVUUFpQmMyNkR4cmxHaloyTW1zaldxSEcvRUk3Q1pNenVhWEZyL2dycnZVVysvWjAvWkhIcEtrb1lDanVnaXNSV3psb2JaV2M3UUdOWlFUaXN5NENZbDE3NUVSOS85aWZJdTRiZ254cFJFZGtxSVNvODQ2bzZVVHNKWWJLL3lrSWZSWklCZlBEQnJXS3lYdEpienpsMTRnbE9QL1FrYjE1L2hZZ21lZEVQVzJ4bGFiWEQ0R3lZMG4vMHdHays5NGt2Y1BySWswekZVNnpkNnBLYklQU05rZ1o3bTNNMEgvMDRyVmFMd2ZjRzNPaGVRWW1ZYkpBQ1FWdGJVSlJxNDRLRUJBZXNzaEprdUVSa3BEanYwQ2lNZzJKUXNKYzVuai8xQ1o1LzR1Tk1OcWVnRUtpZXhoVWVNM0FjUFh5TXBtN1JhclVRYndyT3JiNkZ3UkVSQjBLOG5TanZweFF5UkljOUtIUjV5eVd6YW9iRER4MG5vazNlOXdpamNDcEdTMG1rTlptM2VLV0QzZHN3WTB5V3MvRnkrRHVJTGRjTFNsL21PNndIUWNoYjNMdytFR0ZaK1RvTFVSSmNzWWtJQzd3U2VCM1c1NzdBSTRpVENDODBUbXR1TFN5RkNPMFlwSlJEK1VHTkdyc0JPKzBwVktQR0xvS2owVlFzTEYxRng1WnZmK2ViM0ZoNkIwU0JrQVVWaVpVeXZFWTJzUktvUEJ5MzhTczRlamFDOUZoZjRIRzgrZVlickhWV3RwNzZIZXBPZHdBQnY4MHpxWVJ3dDcrRzdRMC9DKzlDWk5aSzJxMVpQdlg4WjVCbzJvMHBRQ0NsQmwxbTVXMTVuN2IvL0NXU0NUMkZKdUgwc2RQTVRleWp2OXhuZmI0SG1XSnU4Z0I3bS90SmFPSDdnZ2s5d2NuRGozTHl5RWswU1poMkprSWdNZGd5S3o4VWtlM1RJNlZISzJraWdZeDBlRXhSRXQ4dzlYNmNrd2RPOGREc0VXS1RrQzhaaWxXRHlqU3hTVmk3c1U1THRYbmkwU2Q0L09RVHhDUUlaRWdpM09iSFQzQ0dsY1FpUXZpeVdKY05hdDZZaEljT1BVeXowY1lheUF1SEZScFBCQ3BCeFJOSTNhRHFHMkY2dml4bks2cmlHU052Z1MzWCs5RjZOZFJ0aC9YU2o5NFhRdDF4S1VSSXIzdTNaWFU4S1NWU2FKeHpwR2xLeDNUS0ZvenV4WGI1V2Rlb2NiK29JN0kxYWp3QWJzMWZ3N28rZi9LUHZzN3EyZ0tSbEJTdUN6WWpUaVI1N29iNUVxTUFSNmgwTHhCNHRwN0MvdENnQUF0U2diV2hWYXZwTW1mT3ZNRnpUM3g2dE4yV0JIWUhrTGtoMFN5djh3WkxzSTN0RTc2YUxQWERXTGlTRWM3QXd3OC93cEU5eDdteDhnNmdjUzRyUng1YkdZenVIR1FtWTRhOW5EcCtta043SHFLL21OR1FMWXozdUw2anM3cE9NaEVqdkVJWnliN3AvVHh5NUFUbkxweGpNYjhGVUNaamVTS1JZTDBOa2RmeVBEdFpSWFJBRXlOUlE4T21QWEl2ang5L2d0bm1IbHpmUXlwcGlDWXQzYUlaTnpHUllhVzdRa1pPczluZzZNR2pIR3dmNUZMdlluQlAyQUVJeGFVRmhvcVNLa0F3RmM5dzdOZ2o1TllpY29oRWt5aEt5SzNFV0FkS1loQklZNG1HZnRCM2RnNjQwM3BaZHFjd2xoejFTK0g5VUNCZ043MWZsVjhad3QzZHNVRHJvSTBWTnVobFZXSG85L3VzNVV0VS9WbEpSYkZwNFBwaCtGalhxUEYrb0NheU5YNU1zRlhFVEd6NmZSeUJSb0laeTNEMzNEbEtXa2IxaEdQb0dTUlRIRDIrODZkZjU5ckNlYUJBU3h2MmlRdFJQY2FJck52WVRpbGhPNU8yQVpUU1dHdWdiS3VqQUJUbkw1emhtU2MraGhLR0lDMm9zTEVNclBTMys2N0tlM2oydmUvaUNqL3U2WFI3RXBpSDBqODBIRmw1amMrZ29TYjQzR2Qra3YvMVgxNWdxakhEYXJxSXQzYXNDN214NUx3UHVCRENlNVF5Vkp0TnR0cE10Q1p3aGNQa2xvbjJKSU5CU244dHBSRTFtVzVQTWIrV3NqSy93b3llNU9TeFIvbVZuOVZrTGczRVRRcGtKT25uZmM1ZlBzOGJiNzFHMTNTUktPWm05dkxNTTg5dzdQQlI4bTVCbmhvbUd4TW9wK2t1OVhqaThKTTBYQk0zc0VnamFNa0d5bW5TYms1aGN3N3VPOGlWeFV2ME9pbk5wTVhjM0J4WGU1Y3BodTZsVy9TQXV3VUU3K0hDdjVlSWJ3Rm9LY0JXa2VZWUFleUo5L0RRN0JHaVFZUkRrTVJOWXBtUURnWVV4aUlSZU9lSUVNTTJDVWJFTDhnR3lpWVB5YURZOERNRUlsMjlwOHYxYWxQcjlhYlBiVTRXUXdpYzl3UjFRVmd2ZmFsdE40NVloTDlwUlJsMkxtUkIxM1pZN2kwRWNaRFV5RWhEVmd6SmN0aXQySGk1L1VoVnREbmxzMGFON1VSTlpHdnNjZ1Q3bTNKMmZLaE1jNFJrQldjdGlMRnlxOTZIcVRZdlFkZ3lJbW9BSGVKMHZ0U2JsVitONEx0b01UYkgrWnpKcVFZNmtseTRjSlptMi9GN1gvdXZ5TTBxVWd4dzNtQ2NSd2lQOTVBT1JsbnZvMmZQYUlvN2tOaHRaTEplWXJPUW55Mmx4cElpbE1QWkFUOTQ2Uy81aFYvNEpZeUR5VGpCWkFhTW9OVnVrUmVlTkUxcE5HS01HdzBZaG01RzQwKzM4U2lQRDlkbGFBMVV5dnJFMlBveWMyYjBrZkx6d205MFN4cXV0K1BScUkxTEdEMW8zVmk3L0lqTjBvd2EzTHA1bmNNbkRxSlBQY3RmZi9jUmJxMWRSUkxqaGNFcEI3NFl5akNVRndpdjhPNzlNa0Fkc3d2YlRPREdNOHJLaUxnWTZ5OFNRNFNrTUJuZU81b1RUWHFMR1Nzcks1aWVaN2E5aHppTzZYWDZSRVRNVHUzRjVUbGV3TUc1UTJpdEVXbEVsaFUwSnhLaWlaZ21FeXhjWGlKZnYwSkV4Skdab3p6OThMUE1UZXlsWi90TVRrK1JrSkIxTXVKREVST05OcDJWRG9Nc1o2bzVSWndrNUwwQ1p6eU5Sc0xxNmlwUkZOR2NiTkh0cnpISXM1QlhxQ1NGSFozSjhCcFU1NzM1L0RmRGIvck1rRXlPRFJUZmhjaGFIRFNoYndaUWxqNkkwY1FrZlByRXAwZzZpcmpRQ0s4UWhTWHpQWlFJc3hjT2k1SWhiaTNIcmJNMnV3NzRVY2YxM3BlT1ZxUDFaaXpvWDFscWJmNjg4MlA3R2x0S0w1Rmw4UStqUFFhUGxlQ2RRSHVJbktDbEd0aCtqazRpbkJEMEdMQk9qL2g0aXg5KzcyVlNDakpueURJenZJekdoSitkMmJxUDErUzF4azVEVFdScjdHcklvVTV5TExJejduRzZRUjg1L3Jtd3RITHoraklpV3o0b2U3MGVNek1UVUVqU3JLRGJHNUFYNjB4TVJYemxhLzhOV2JHQ2NlczRQMjdWSk41bFdtNEhUVStyQ0t6RldoK3lwQW5tcVgyN3hwdHZ2Y3JuUHZGenJDK3ZNaEh2QXlScG1oSkZFYXJTQm5xM1FhcTZWZkdFTzZHeUhYci9zVFdCcWVLb2xmMlE5QktiNWN4Tjc2VzMwZ01FWC9yOGwva1hmL2JQVVVRWUhKaGl0RHNmcG5ueGxxcHkxdVpFbWZ0cjYzaC9IVnQxbDExWFRZcVVJa29TK3VtQTVaVWxIREE3TjR0cE9NekFzRHEvU21NaVJpYWEzR1E0YVZDUlpMWGJaV2xwaWIyVGgwalRGTi96c09TNGZ2TWEzZjQ2RG8raFlKQU5XRmk0UmJxZWthNE5TSk9VaEFhbVoyZ2xUUWI5b0tOdHhrMWNidWhuUGZDU0tJcHdlRnF0SnAzdUdqSWZrQ1FScllrbURrOXVDNFNVWThtUFcwUmx4NVVkNDZ0OU5XdHk1Ky9SWmhJYjVsLzhjRGs4aGlzSEVFS1MrQVlTeGFuR294eWFQRUREYUtSVHdTZDJlRHZDakl3Y2k5QlhNeExETVFlbDNkdDdzTGJZWkpvUUVzZkcyMTN1NTA3ZnErb3FPQ1JXV3FyS3VVTm5EaHVTR3FVREx5MVdHR3ppdUxsK25UNDU1b09lWGFoUjQwTkFUV1JyZkhUaEJmaEtjUll5ZmtmcDd1RWgyV28xV0YxYm9qMFJNYnVuemNMU1ZRclQ1WnQvOVB2Y1hMNktwdytiaWp6dUpsMlprZ0pyUjU2ZTFsb1VHby9uaHo5OGdjOSs4bWN3cGtBMUJjNEppanduaWhSYXhYZE90dHBGY0E3YXpRYUxuUzZxcFhuMjZlZjRxNzg5enZtbGMyaVJVSGd6SmtnWWcvQklvWER2VzJTMlJFWHUzNlVMVlc1TlBkdW5tZmJwWjMxbW1oYUxwOU5mZzBLUnhBbDdEczVpZlU3dWN5S3Q2SnFNUzFjdjhzTlhYdUN0cGJkS3dtb1JlTFRRcEg1UUZsQndTQ0Y0K2NaTG5KdC9DK1VseGhtYXRNUHBJMm5UNUZjLzlhc2MyZmN3T281RFpUMnRtV3hOZ3ZXc3JxOFJ4Um9kSzd4d3JIWFg2YXl1bGJNbGxJVDBMa1Rxdlh5TjdyQ04yMFJ5UXdGaU4xeU9iUWhlRXNzWWJjT2svdU9uSDZQZGJtTTZ4UjFqdXZjeVlQc3dJZnpHUzJLZFEwcEI0VVBmc0hoVXBMbDgrU3ArSncyb2E5UjRBTlN1QlRVKzJ2QWFVT1Z5ZkZ6bkFJT09QRkhzTWJaSHQ3OUVveG5Lemw1ZnVrZ3N4OVZpdXhPK3RLc1M0M1AzNVh2bjMzbWJDeGZlWm1wMkFpOHR1VTFSVWZBSDFUckdXci9ydWF4RWtPZUdSTVZFS2dJaitPVmYrUGVJaU1FNUpCb2xFN1NPUUZXRG5ESXU1eitnK3FxYnczVERDS1RjOEg1UVJ6aVdpbVhPWDM2Ym5Kem1USlAxb3NOS2Z3bWpEWDI3emxKdmlWd09pS2RpZXJiTDYyZGY0K3pTV3hneUJxelRaNDB1SFZiOUlxbFl4K29NMGJUb1NZRlhCVms4b0V1SEFYMjZyTEhPS3V1c3Nzd3laNjYreVZKdkVkL3dxRWxOcmpPNlpvMGVYV3hVMEMzV2FjODI4ZHB4OGRKNTNsbTRCSUFpR21wQVJIa25ObFJpZXpkSlFmV1p1enpDS3FJV2ZCamNodVZvSXdWZW9aeWt3SEJJSCtUUWdZZklzbXhZOG5nVWlkMTZkbWM3NGJoOVBDbTlRK0J3b3RUTmFvR1ZEcS9BQ29jUmxtdXIxMjRqK3pWcTdGYlVSTGJHUnhpbERaYVB3VWRqVHdRSHdvSW9LRXlYUFh2YnBQa2FDNHVYK2MzZi9nMFdsNitnc2VSdW5lb3hKNFRZZmJZMXd1Rk1EamlVOE1neU1GMU52MllNK1A0TGY4UGtWQXZuY3dvem9OR0l5VTBCVWdjNXdpNy9FMUlxQldnbUxWd0JlYS9nOUluSCtmaGpuMEFRQmpuT2VLd1JJWUhtUFhDdCsydkkyR3ZzZDRFTU5rcmx2ODNYdXhFM3NCaSsvL0lMdlBUV1MvUjlsOVpjZzhhZW1GVDNXZmRyaUVtUG5KS3NwQXU4OXZhcnZIN3RGUXdGazFNVE9KM2hHd1ppQTlxRnNad0FaeHhaUHdNQnBpaHd3dUcxd3pZdHVjN0l4SUJDR2w2OThUTG5icDVsMVM3aldvWlU5NWxQYjdEdU96VG1FdlNrcE9zNlhMeCtnZk9YMzhaU0FKNGsxcWp5N09BT0NwTzdYR0N4NFNXSEwxOFNWVjlPL2Q5MWlRTW53Y3JTSDFmeXNXZWZweEUxNks1MWlhSm93ekUzSnpYdU5JUWNBYmZoV2dvRnZpU3lObklZWlZqdHJkQmhEY29yVmFQR2JrY3RMYWp4RVlZc3BRVVZ5Z3dnVVNXSVdSb3R3ZnppWlhSVThPMS8vQTF1TEYxQUN3K2lBQmRJNEhnSnlOMGtLd2pQc0JCVnJLU0NFS0o4aVFnUDkxZlB2TVQ4MGpVYVlnYWt4MHMvS25kcFM3T0RYUXhYT05xTkpyblB5UVk1clprSmVtdGRmdmFuZnA2ejU5OWl4U3dDSHVkeW5QTUlWU2I3bEYzbGc0QW9TV3lnckpYMFphUUpyZjUzUU9ZS0RKWlZ1OHhmL3VBdjZheXY4OHpwWjlrenVSZmhGY2xVUk80eXJ0Njh5QnR2djhicloxK2h6d0JMd2ExT0oyakV4OHc2aEpKb29YRE9ZWXZ5Qkt1RU9pVXhvNGFSMmdFU3o0dm5ma2pQcjNQNmtjZllON09mcUszeEdIcXFROGQxdUhEMlBLKzkvU3JYMTYrSDh3TUcrV0NvV1ZXb01sb3FRNlRadXhGTDNSeWRmazhYY05QUG0zOGZYenFKSWtLam1XV1drdytmeEhRTnpscVNLR1pRbVBmc0lyRWQ4Q0s4cEMvdDVGeTRmcUs4VFY0cURCWW5IVTZERVk3ck4yOWhDRktER2pWK0hMRExIME0xYWp3Z2ZQa1ZxR3kxZ21kTklLcWlZR0Z4RWVQVytaTi8rSFhXMW04U1NVdmhldUF0Y2FUSkNqZWFndHhFWW5lVEQyTWw5WlF5T0FGWURCNUJKMXZoYjE3NEs3NzAyVitrMFU3bzlkZHBOU2V3aGQ5OUVlZ3RJSVFJck5SN0VoVVRpNGhlNXRrM3M1OHZmZTZuK1ZmLzM3OGtwVWNCT0hKd0hxRjk0Rmp2UWN0NnorMFo4Y1F5SWx3VnpnajIvU0hSQ0NvaU96Qjk0cmhCbm1jc0ZmTjg3L1h2Y21YaE1rZjJIMkdpTllrcENqcnI2MXkvZFlYcm5lc1ljaUt0Y2Q0SDJ6V2dESklPejhYaEVXZzBrS2lFekdVaGdta1VOamRsZFkvd2Zjbkp1ZVZ1c0hoMm51c3JWM24weENsbXArY28wcHh1dDh2YTJoclhiOTNnWnZjR2xsQnB6RkFNRTY1VWVYN0J5elk0WUZoa0lMTjNIU21FZFhMRDFkaDhNVGN0Yjl0RktFVWJFVFBOQk04LzhUeVJpMGo3ZmRwSnU1eHhHS0ZLeHFyMHNWdFp6MzJZY0dKamZMNXFsL0NncW1RdjRiRGVrSHFEazU3TTUxeFp1SUxGVUpEWFZMYkdqd1ZxSWx2am93dS9lVm84NkdJRG9TMUFESUpQN0QvK0k2N2NPZ3RrUk1vVG52d2dsWVBpZGx1Y0NsSktyUDJBZEpUdkZ6d29IWW9oQUdndHlhMmo4QWFKUUV0NDhlVVgrTklYdmt6U2JERy8zR0ZtZWcrZHRGLzY1SnE3N242bkk0b1VnOEdBcEprdzBacGt2YlBHdm4zN2VlZnFlWDdxOHovRGl5Kyt5RXE2UktkWUNobmVQampRZXZGK3hiTkdCS3dpc1dXTkowSjVpbURaUDZJc0p0akVBV0N4Mm1HVnhZdFFYallYQTg3ZE9zdjVXK2VJaU1zQmlTTlU3TElZREprWmdIUWtrMDJ5N21CNGJGMys4NVFFVDhUa05rY1JoYzg3RHlnUUVoVXJiRHJBVUNDRXhQaUN0eGJPY203aEhLcTBzaXBiU0V4Y0hqdFVqZ3NKVjZES2YwRVNJSEFsb1pVNExBTG41VWdDOEI2d1FmdTZtY1J1c0RLcjNwSkVhRm9rekVRelBIbnlLZnByZmNndHJjWVVhWm9pUlRUK2tSMkhjU0pkbFk4T05sNmxQbGdJQ20vSXBjVktTK29NQ3l5V1c3dGFKMXZqeHdJMWthMnhxMUZONTN0R1M2cWZOeEZMSDB4TVE3VEhDZkFPcVRYZU80d3RjRDVqY2lwR3g0SUxGeS9RYk1OWHYvYWI5Tk1sSUFOeUNsc010YVJwYWpidWV4TjJQSWt0TWQ3TVBCc3Y1V3BRc2VmQ3pUTmNuNy9FdmhuUDVNd2tTOHNMdEpOWnNpeGpnekNqOUlFZHZ4YnZwcUFkTDRQcnZROVoxNXNOMzhmM3orYjlQMWhJVEFpQjFocGpETlpZWXRXZ3Q1cXlaMm9mMlhyQjMvMFAvMVArcC8vNVQxSEVaYzYzeGhSWm1NNlY3NE82SUJpTGpuNEZFcGtnbkFxVm80Z1JLR2FpT2ZidTM0TVFuc1dsVzZ3TkZzakpRSG1zelVHQ3crQWpqVW56b0tqVm50eUV5bkhCY3N4VUxCa0VaSVBCQm9JWFlxdzIrQy9qeUgyS0g3dkRXbXFzczNqcnNMa2I3cXVncXFZV3ByU05EOUcrY0Q0eXRMTkVGVUdWcGVKM2dpbmFxazF6b2trLzY3S1FMdUt4YUFST1dBcGZES1VVbzZTcjBkN3VmbTFCeGdLWGgzNFpOVFJGYXBCQ29wVENGNEhJN21VUFAvSGNaMmpKSm9ZY3FRVkthSVFFNDhxL0oxUi9UenlWRWJIMzRMYW8xbFY5RDJDanU4RlcvWGZ6NThXbTljUGlJbjZyejFkdEs3OG5RMy9aS3Q1dGcySTJVZlRUTlNhblpqanpvemNwTUdSbCtld2R5OUJyMUxnSDFFUzJ4a2NYd3RIdHJURTdPdzJGSU0xU3VyMHUrVnFIaVNuRlY3NzZEK2dORmlsTUY4aXBJckd3Z1h2c2FvUUhZUGg1b3h3eGFCWTc2VEtDaEgvM1YzL0JmL1ozL2g1WnAwZXp0VGRFTWFNRTkwRmw3bjlJY01Kdm1wNlZTS2VBR0pCTU5XYjRwWi83RmY2M1AvOWZhT3BwMXMweXNZekpYYzRES3lzRVk0YWZERG1hY2NFQ0xTSGgwTlF4UHZPcHozUGlrVWNwaWdJdkhIR2l1UGpPT2Y3NnhiL2kzUHhiUVhHZ0pCaFBsdlVSTWd6T01qTVlPOWFZN3JRNlhtWENJRUVKR1dRVDZISXdZVXYxdEdWWThrS0ZjZ05XQUZJRWVmV203NEVYZ1ZvNWI4dmRXMlNaaUJXanNlV0g1aWJuT0gzc01UNy85QmNaZEhKVXBFQlozcmwya1ROdm4rSEswbVZ5Yjh1STdjaWg0VTVmTzRrc1c4cUcwVTlGWW9VbUZQVVlTb0pWV2ZxZ3diRjlEN08zdFJlZk9uemhpZEI0TDhwQmxpelBLWHduZ3ZleDJ6RUVzS1N1VkxYcVJGbDBCSUtqaUJHZXdqdEVLK1ptWjRHMWZKMENoNldnOE1WT09ZMGFOUjRJQ3ZpdDdXNUVqUnIzaDVoOWV4N2g4NS8vYVpTSWNOWWpSSVFRQW1jOVNvMm1Ka2ZQdGhCR0VtVkoyampSckhlWGlCT1ltSXhZN3kyU0Yydjg0VGQrbDJzTGIyTmNEMGRLUldLSEFiUWZneWZBV0hCdTQra01DVSt3NFpwb3RIam42anM4Lyt3bm1acWNSVGlOeVNGU0dyK0p6V3hWbk9wdXYyOHVLSENuN2UvRUdjVURSR1REYVRxODhQaGg2S3dzOUZEdU85S2F1Ym05TE42YzU4YktaUlFTVzNxeUd2T0E4ZGh5RkNHaWtrUjZpTkdJVXJuNXlOd3BmdW1uZjVXais0L1IxSk1JcTRoRVRGTTNtWjZjNWVpUnc5eGNtcWM3Nk9NS0QxNGdrQ1JSUXJQUkpDOEtsQkFJS1JDaXl1WWFYNDdJcmZOQmdCREVCd1lqVEREUEZ3Wlh2b3pMOGNJeWJrTWx2Q2lMa294OEZRU2xpd2VDU0VRSUpMb2tzNXFJQTYwRGZPeUpqL0h4eHo5SmtqWlJxYVlWdDVpWjNNUFV4RFR0OWlSWVdPbXM0b2I5UzdEWjkxVGdHYS9rNVRjVDJiSmp5MGdncmNMYmtGaW0wUWd2U1dod3N2MG96NTU0aGdNeiswT1ozU0swR1Z2cTI0WGNNTm9UNVhHVkI4U2R5MkhjcWQvZTN2L3Z2djV1L2Q4TGdSTXF6QTdnUzl1dFlMOUYyYWVkZ2xUbWlBbkZXOWZlNXZMYUZicjB5TW5IK255Tkdyc2J1OXM3cDBhTkI0SkRhWWVPUElYcDB1MHZrVFFjMy96anIzQjEvaHlKaGlvU0s4UnRzOEEvTnFnMG1XSm9SeWFIS3p3TzV6TThLZC83MjM5THF4V1RaajJpV0pCbDJkMTJ1K1BoaE1NTGg1Y0dQNndHSndJNWN4cGxJNFRSUkM3aGwzLzJWMmt5aVNkb1NaMnh3MEhBZzhLN1VZUlB5eGlKWkVidjVmbW5QOG5EQjQvakJwTEJhczUwUE10MFBFdTZrdU43Y0d6dUJMLzZwZitBQTQySFNHaVMwQ0FtQ1dZYUEwalFLSytRTHJ5VVV5Z2JsZWNWZ1VsSW9zWW8wVXNDV29JV3FFVFRtR2lDZ3FnWkkxVXBNWEFTbkVRNGhmWU5HUlpQTkFBQUlBQkpSRUZVSXQ4Z29rWHNHMFErUnZtb2ZPbVNNTUlFYldJU0loTG14RDQrKzlUbitOUmpQOEdCK0NDeXE1aU9aNWxnaXNGU2lzbzBwdzQveXBNbm5tU3VNWWRDSWF0eTBadUVKSGY4S203U3ducmp3OEFXeFZReVJVeWpUUEZLT0gzMEZBZG1ENkNOZ3R6VFVBa0tSWkVWV3lZekR2dUpxS2J4Nyt1V2YyQ1F2dFJhbDVGam9hREE0alZjdVhXRkR1dFlmRGlQOTZzRDE2aXh6YWlsQlRVK3VoQ2V3Z3pZTTlmbTVxM0xySGNYK1VmZitUb0xTNWZSd3BLWlBzUEVMaGtzcXNZaGhjYjYzWjNzTkRTakg4dVZIeTdLNmVmVTlBRE5pNis4d0plLzhNdE1SQWVRWHVBK3VCcXpIeHFzQ2hQbzBqa1FxaVFCVlNhOFFCU09TQ1hNVGUvbjcvenlmOFMvK0xOL2hwS2Fuak1rT3FFN1BuMS9QeEFFNWxGZTc4b1g5ZURjZmg0LzhUajlsWlRwNWl5UmFHQnppL2VXdVlsREdKdlNYMXBuZi93UWgxdEhNZXVXaG1yUXQxMHkralJjSUdUaFBDcU1NNWN5c2Fyd2VLc0FqNDQwdWNreE5zY1dEcHNOd0V1VWpJaGxRbVp5WXBLUUVPWTlNUW1WRTZ3ZCtyZFdHb2xLMldwcE1RRmw3UDVBZkpBNWRZQzRFOVByOXRuVDNFY2phbUlvNktVOVVKQzBtK3lkMk11aHVVTXNYbDNBNDVFSU5vaFkzcU8rVXltSkxSd0tHZjRWQ29GRG9YbGt6MG1PSHp4TzRpUFNYb1kyaWxhN1RUYkljSVZCSlUyY2YyQVY5QWVLMFRjd3lCNnFybFRKTEx3VU9BZmR3VHBMZmpVa0xBckhCbkY3alJxN0hEV1JyZkVSaHFQUmxNd3ZYRUZIbG05LzU1dGNYN3lJRmhZaEN5Z1R1NnJBekNnYUt6ZTlkdmJEN3U2b3B0TEZwdmRHeHJMaFlXbFk2Uzd5d2crK3g4OSs4ZC9IcGdYTlZwdWkyTVZSMlRJaUMrQ0VHazFQK1VET2xBZXBFd2I5RHE3SStlVEhQczJWV3hmNWYzLzRmeE1SWVl6WnFNMjg1K056MjV4WTRRd3hDVlB0V2FaYk02UzVJL1lKSnZWMFZycDRMRE16a3lSeEUyc043Y1lrdi9iRlg4Y0poL1U1bmQ0YUtwSWtEVTF2MEVVcEZXeWFQT0Zndmpxb3hBa3dMaU16S1NMeWVPVzRObitWTTIrOXdjMkY2M2p2T1hiMEVaNSsvQ2xtSjJld0E4ZEVOSWx5bW5ROUpWSXhEZFhBaTZBMXR0SUVOd2ZocUVvOEN3L0NTSlFKVS9sTjJXWlNUOUpXa3pUMk5GaSt0Y3BLdm9LSW9OMXM0NVRCOWcweERVNGNPY2xyVjE4ckpRdVN5dk40bzlZMzZGaTN6TDR2L2JLVTBHaXZrV2h5VnlCUkhHNGQ0ZmtuUDhaa2N4cmJLU0MxUkhFemRIdm5TMGVPRGJ2WnNXVnBoODBTUVY0d1ByeDBXSXczWEx0NW5Zd2NpOE5KUCtwN2p2YzBJS2hSWXllakpySTFQdEtZWDdneDlJbGRYVnNnbG9yY2RjRm14TEdrTUc0TFRXeXdSbkkvVmcrQWNVWTFSaGpLVmQ2Q28rRFYxMTdrNlZPZlltN21rUkNtM3NVSUJDd1FJQ1ZDVXMrUXJQaWdqZFJlWURKRHBBUnBiOEJQZnZhTFhMajBKbjNUNGZycXRRZHZoR0xvWUtiS1Nnc0NTU05xVUdRRlNqVEp1amxhTkRpMDd6RENlUWJwT3RrZ0o0b2JyTi9zTUpGTW9XTk43bEltMnBQb1JDSzBZeWFlRG9VclJCVmxGcVZ2c2tTNDhIdXNJNnd6eUJnS2N0eXk0Rko2alloVndERW45bkZpNmlSek13Y3dVY0drbmtRWlRXNHprcVJKYW9wUS9sUVlyTFNCekVvN3ZLNGFnVXNkU2lzaUc2TXlqZTE1Qmk3RlI0clo1ajU2ZEJHUlJ5V1NBUVA2UlE5dklkYkpVUEFDVzhmK0E0MjlNNnkxUVVZZ0Vwd1B4bUpUVFBQNHlTZllQM3NBa1hxRWdTUnFFRWxOUGtnUlh0SnNOc21Od2V1ZDNjZjlGZ1JibEJaeEVNN2ZlY09sRzVjWWx1bXRDazdzN0ZPclVlTTlveWF5TlhZNS9GQVBGakQrYUNzcmR3bkt5STJsTW5KM1VvTE1zTDdEZC83N3IzTmwvaHhRRU1uS1M5WWhwUTc2eFRFSTFCaW4zYzJSMkFCZlRnMXZQS2V4eWVpUUU0Y3M2d1lzcmk1eDl1S2J6SDM2S0tudGhlS3BmaXgwVzMxdWl5UGRKbDRrUElTcmo5LzJRTDd2czdvenBCOUYxdDFRUmpEZWQ5U0d2bVNNWlhacW1vSHBrWGY3Tk5wVC9PZi84WC9KUC92bi80U0laUnhabVpDMHlSN3FEbGs5RzVLVHlpNkpEeHBaSWNNVXY4Q2p0S0NmRG1pTEZsSXBYTzdwcnc5Q1ZqcUNTR2pBTVRuZFptRjlucVZiaXpnc1NWTXpLUHJrZVVxamxXQk1Qa1prWmFsL0ZzR2R3Y3RRZnRjVzZHYUUxNTZyVnkrenRMNFV2SEpSWEwxNmxXc1BYYU8zMW1kOXVVdEx0WW1zeHFTV2lZa0owaUxIU2g4U3dwVEJpWkxNaXBGV3M2R2F5RXdpQ3NGc1l5OEhaZzRTRVpOMUJ0Q0RXRVZZYjFoZlhhZFBqMmcySWxJUitTQXJyNWNjTG9lMkErVTFsZVBmZGJZZ2FHVUdQOTZqa01URVBIN29jVTdzUDRIb0NXeHVVVWhhalFiZVd2cURBYzFtazBhU01GalBrQ29NYUNvdDdIdUp5dDZMYnZiQkhMQWNnbUNwSmgxSUYrNnJ4Mk1GV0dISVJVWXFNbTV4bzNRaUtUdGQyZFZyMVBoeFFFMWthK3h1ZUF1K0NKRW1YMDQvZW9WM0F1OFVlSW1VRHV0eUNwUFNiR2wwQkpldm5HZHFSdkcxYi93RzNmNDhuaDdneUoxSGE0bHpra0Y2dS80MUtQMDJrNS9kaVRISEp4Z1dyQ3lKYk1VN1BUZ3ZjRjRUcXpiTGVZZi8vUy8rRDU3OXpDZEpLSmdVazdqVVk1eWwxV3FodFdabGJSVm5MSFA3OTlIdHJnT2xPNEFQdHZ6Qkw5UGhLM0xpU3VaUk1jeHl1WUUwK052WGg5WnU5T0dzbGx1UmljMFo0TXBKdkJ2cGc3M3plRy9LbG9YcVZVcUhxZmxZTjNBNXlJRm5JbXJ4aXoveGQvbUw3LzRyM3U2L1RsTkR6L1NDK1grU2tPWEJuMVhFQXYvL3MvZG1UNU5jNTVuZjd6MG5sNnB2NzBZM2xnWWFhQUJOZ0FzV2toSzFVdEpJWk16SVk4c1JpaGpmT2h6aG03bnhIK0FiWDlpZW1MQTBkdGlXNTlZWEUrRndLQndPZTJZY0kydkdISTZvSVNXUkVFbUFBQUVDYURSNjMvdGJxeXFYcy9qaVpHWmwxVmRmTjlBQTJmaTZ6OU5SblZWMWNqbTVmSlZQUHVkOW43ZjIrNGhYR0NnUGx2V21WcWhVNDJ5QnM0WmNjbXBmODhHRjkvbnlTNy9DMG5DRHl0ZG9TY2l6SE9VY1ZUSEcrUnB5dzJaMmd6LzlxMy9HaFZzWFNOQWhzUWRMVGs3SnBEdDAwMWpvRnFvNWV0UHJPSXd5eng2NGlkdmwvL3pyLzZOWlFqb2kzdjZ2bWdlN2NHWk5RNWFtM3FZS3paQUJIazlDeHRQcDAvem1yLzQyVHoxMmtycXFXYTJFWmJWRU5zelFvckdsUVR1aEtDWmN1bnFsMTlkMlcrSEttVDRZdEd6TVRrbHNuOXZXa0trRWpDVWo1WFQrUEMrZmZJa245T1BVb3hydEJCR29xaXJFL1M3bkdHL1pMZmJRYVJpSzhENXdQdDk3QXBwZWlyNm40dmVla0JhaG5iZVp6MGx2blF2YXU1UFhucis1NjkvaEtlc3h5OE1sYkdud3RXSjVhWTNTak5tZGJPUFdQWFZlOHRvYjM2TmtGNE5GcGRMVWZFbElraFRqU2c3emIxaEVCRVFpRy9GQVlmOFA4bVF5WVgxakdlc0tqSzBveW9KcWI1ZVZWYzEvODQvK1MwYVRHMVJtbTNZNHZTMHJlK2ZTc2cvS0Q3ODZVSWtGZ3BDRjRMMG0xVU1xYS9FSXRaUjg3NGQveVRkLy9lOHl2clhIa2VFeGpER005MGFrZWNiSzBuTDNlUmF6NUg5S1p2Y3JVNTkyTnZnK1c2T09mQ1E5QmRZMzczMDNORzZNUVd4WTJsc0JFbGFYMW5qeG1aZnhDRnZmdnNrMWN3bE5na1pUbFJXaUZmbEtSakVxWmpmc0ExM1VIZmxxMUViWEVwTm1pTjU3cm01ZjVzZnYvQzFmZTJtRnBjRWpTRzNZS1RiUkRnYTVRb213NDdkNTdiMi81dnplQjB5WWtPcVUyb2JrUkpmVVhUR0VnK0diK043MmZPelgwZFdDK0ZQZm0xODNhVlF0ZlhVejVGaVJvUEZOTmJLVW1xdjFGZDY5L2pPU1ZjVVR4NTdBMzY3WkxYYW9keXZJUFVkUEhNWGxOZSsrZTVNUExyMkhEVkdkY3c5ZFF0Q2xwYnRtbE5LUUVjcmcycTZqYUFYV0dGSXlUdWduK2Z5cEYzaDg1WEd5S3NNVUJwWE14cmkzSWFQemxGOTZBd3AzdWpURjM3bDk1dGg2K0NRdXpBTGtXWUl6RmNvcmtpU2pNb1p4VmVOVGpSckFwYzNMYk5zdERBVldoNy9uc0JQQ0ljOVRqWWpvRUgxa0l3NHhNbzRmZVk2di8rWTNVWkxnckVJaytIQTZHektXczF5enZYMGJuVGpXMWdlTXhwdFlOK0cvKytQL21rczN6bEtiSGJ5ZkZqcG9MWGZ1VEdRZkZNdzc1UHZacGg2R3d5V3F1b1pHVGJ4MCtSSmYrL0xYeU8yQXBYd0Y1eDFsVmFLVUprMVRIQjVqemRReXFjOEUydHVwYnpQcDlydkIzdTN6UjltenUzKysrM2h4KzJEVFR1czZYQ3Q1bnJPMGxqTmN6N2g0OFNLVnE4Z2t3K0d3M21PTW9iTWhtTUZVODNRTmlmVGFoMUVGZ1NSWEdHTXdPTFkyZDNuaytLTU1sMFBsSzZjc2tsdXlGV0ZVYjNIMjV2dDgrOGZmNHRiNFZyQUZTeE9NTlVFTlZTcFU0WUlEWCszMnA1ZkJvcmxhNHRyN3JqZC9TMzVuU0d4bkp1dUQ0TzRkcmNkc1JRZ2hTTFJtZFcwVjV4elpjb0pic296Vm1NM3FGajg1K3lZL2VPdHZ1R0d1WTZpdzFKakd4dC9oUWRvUW9kNFZxeTNPTmtQbXpmYkZncklobk9CUjlTaGZmdUVydkhEeTh3ejBFRHV4WVZka1ppMTN1VjRPL255dnk4MXYrZVA0eUFxUXBScFRHRExKU0pPRXNxb29mWWtzYStxODVrZG5mOHhWZTVXQ0dvZkJldGM4Qk9pbTRNTytCSUNJaUVPSFNHUWpEakh5UUdSLzQ1c295WENPVUJBQndUbUQxb0pTWU4wRVZJbXhJOUxNOFkvKzhYL0Z4ZXRuU01RMHhRNGFoZWtqcWJFUEV2cEVWcGhSWkZzeTBON29teUZQRHlqUmpNc1JqNjRmNS9tblBvZnlDbU10T2tuSjBwU3lycW5ybWl6TDhNNHYyQTdUdU5yUE9KRlZTZ1d5bFdXa2FYQXFLTXN5Sk5FNHc2TW5qck54ZElNcjU2NndaOGRrcENnbEdHY2g2Y2x6L1E1SW9KR2V4c3RUTllSQ1FLY2VaME9CZ29rdGVQUE0yMnh1YnVLMXAxSUZvM3FiODlmUDh0Mi8vWGY4K1J0L3hsYTVpWlVLcFJTU2dEVVd4Q0pLaGZBRENJeHU0ZFROOVlzRnA4clBmcDQ3a0cyTTZuNFNHMTV0T0lrVzNUazhGTDVnYjJlWHZXSVhsWUplRWtheXg5WGRTN3gvOVQzZU9QTTZseWVYU0ZQTnhJMHgyQkNIM0FiZHpoQmxCOW8xMTFuVEp4RlNuNUpZVFViR0VZN3l5dk5mNXZQUGZKNFZ2Y0prdDhSWGprR2U5OGpjTEE0RGtRVklSR0VyUzZvekVHRmNUdEJMQ1dib3VieDdsVGR2dnNVdVkycHFERTFJaEJCSzlQcmV3MGxFeENGR0RDMklPTnp3U1plSjNRWG1TVXNNTEpOeWw2UEhWcmg1NnhJNzI5ZjRuLy9rajdsMjR6eWFDdU1MMmgveGxzVDJzZWk3aHcxS2d6VlFtNUxoWUlWSlVlSWFuOVh2ZlBmYnZQTE1MM0Y4TlNQSlUrcktZajE0NzNySHJoMjZGYnBDQy8wYnA5OC9uUDFaZ20vVTFUUk55UnZpVTVZbFdtdVFsR0k4NXF0ZitoclZxT0wvL290L2pxRmtxRmNSRVNiMWFFcThnQ2FEcWxsdnU0WFo1TEN5OXVGWHVYWllYekpRS1c5ZmZKMjNMcnpSeFRDbkNKa0EybUJzRlE2dE9LbzZKUDZnYVN5d212VWZOTzNqSU1sdjBaVHBmclJoQnpNa2RqN1p5b1BWTmRaWXhBc2V5N1hxS3JmT1h1ZU5zejhpSjJQU2tDMkZwcVRFWWhuWERqOVBydWU3T0ZBaEliTUsyeEVQbWM4UUt5UWtyTExHRjU3NkVpOCsrU0pyNlFabXorQXJoOGpodi9XSkYzemx5RldLRnNYRWxOakVvbGNHN0xsZDNyOTZsaDBtalpiZG5MSW1oa2Z0Q3dPSmlEaThPUHgvelJFUE1mcGVydTJkcmlGTlVvRm9Ca1BoeHMzelpBUFBQLzJqZjhLbEcrOGpWR2psd0pWb0hlNzhENWNTZXhjc2tvVzhRMmtQV0t3dldWbGE0OXJXUlY1Ny9RZjg1aS85SFI0Ly9qaTdvMTI4RWRiV05oQW43Tzd1TWNpR1RKbE55K0krMitTMWoxYTVxdXNhcFJUV1drUWtLS0NTTXBBbGRtK00rT0xwVjBpU2pELy90My9HWm4yTGtCcVY0bDNkS0s0c0VxYjNoeVozUVorQWR4UnVqekJ3bHBEcUZGR2V2YnBBdk1YYmFYVW03MmNKc2NYTzVpUWVSRXA3aVdqNzFObEYwMzNvcGRzZHRMd0dhNlk3cXBWZ1hVaXFxNWl3MXlXYU9iSkJobmNHYXp6Wk1LR2FMQWprN0tuYzNyaHVINVVTRXB1QXBhbmJsZksxWjcvRzA4ZFBzWkVmeFU4Y1loUXJ3d0hpTlVWUmtIekc3Ylh1QlBIZ0swdVdwRGp2cVgyTkh3aWxycml5ZFoxejQ4dE5RSUhEcTU3alEvT3dyN3JqSGhGeHVCR0piTVFEZ0hhWTJvRTBxcFRVSUliYm0xY3hic1EvL3FNLzR0Ym1KUkpWWTl3WTQycnlQS1d1N1lFa05oTGJubklvVUpZanRCYXNyYkd1d09QNW05ZSt5NG5Ibm1KdFk3VVo0b1Zwb0dLN2tpWk90cGQxN1ErSVRmd3NRbXVOaUdDTW9hcENBbFVndFlhMTFTTnNYOXBtN2RnYXYvYlZyMU5YbG05OTkxOXoyOTBrSmFYR0JjV3dWV01YRE0wN0d3YmRVYjVMZUJjVkRwZG9BaG5HVWt1d2hVUGJHWFZ0WnAyZHlYMmo3TjdwRU0rMzlkZDEwQmo0L1BSTzZKUGxsaTg2cUZVbytXeXRSeWRnUGVTNVJpUmhVbFRkc2gySm5Sc0JENnRWUVhYdVBRUW9GeXpGTW5LT2NZeFRSMC94NHBPZlp5MWRKNjlUYk9FUTF6eUVkT2xqaDVmSVFuQ0ZVRjVSbUJLbkhXb3A0ZHJrSmgvZVBNOFcyMVJOZExISElra0l4UWFRK1RLRkVSR0hHSkhJUmp3QWFPOXl6UUNhMkliSWVsUlM4MC8veC8rQkM5ZmVCVXJTeElDckc3SnJteGk1S1VRRUVkbjMvWU9QM3Y3MkNFM0xQZE5VcUd2SGNKQXptWlJNaWwyR2VwMGI1UlhPbkgrWGs2ZWVaR1AxS0w1U1RLb1JXTVZna00rTllMY3NxeGR1OEJrbnMyVlo0cjBuU1JLVUNvbFlTaW1TSlB4MGJ0L2M1c1NqSnhsWEkvWnVUdmlsVjc1R251ZjgyKy85R3k2UEw1SVNETnRzZTgzMTNmMGRhSmVRa2dLT1RGS01DOVdYeEN0cVg2TlZnaFVUcnNmdXVtM1cwYmpOaVZLZDM3SFdDZGFhcGxuai9GM3k0dnVIdjArTSs2UjJBWW50MjNDMXJnSUxsMm5mSzVBVWZBWE9oZGhobFlKMTdYRzI2R3c2ZjVZcTZ0STFnclBxdGliTlFSUVV4dGQ0YmJIR2c0UFVKeVNrNUtTY2Z2UTB2L3J5cnpHMFN3ekkwUzdCdUJDN1hab0NyVFZabGgzNnYzT3RVeXlPMGxhd0pEQ0VHOXUzdUR5NjNLVEltWkJlNkQxYWE0eXhYY2g3Uk1TRGdwanNGWEdJa2JLKy9CUy8vVnUvUno3UURJWVp0emV2VVp1Q0kwZVh1SGo1REgvMHgvOHRtOXRYcWUwSXFIQnVnazRhMm1zWC82SS9QRXBzbnhYTkpYM01LWEx0L2Q2WUtUR3kzcEV5NUlQTFozbjI2V2M1dXJHQkVvV0lZcEFOcUlvS0phMUhySFRKSlNFQnFJMU5Ycmk1bjB1eVY5OW5GdS94ZnRiYmR1RjZtakFDNTF5dzRtcGlmNjIxaUJOU25hTWt4WHR3MXBJa0NZOGNlNFNWMVJWc1ViTzN1NFBEdFNsdWVPL1JHcnlEcFNRbnNSa1pBd1lza2ZrY1QwSUljb1ZjbGpDMkRyNmtMVlBzZDdNZEYyN2JQU0hjb0lHM2Q3bU9mYkRQeWxUV3JUZE5reTV1TXNrMXpuaVNQUFFuRklTYSt1Qk9QWEZwQ0thZm1sUDBMNmRXL0RTOXozNzZrSlNremU1VVlWQWxSWkhhQklVaUpXZFYxa2xJMFNTc3NZRkdTRW5KU0RHdVJ1bmdUcENTc3N3cXYvelUxM2pwMlpkWlUrdG9rNkJxaGRTZ25DYlJHcVhhTHJpWjQ5bS9QcVQzM2ZSNjhmcyt6eHhPNzV2OThqUGZMVnF1ZTgwdEwzUEw5MVhvbWV1WE5yVEFvVk5oVEVXVkdyYlZMbTlmZW9mejFTVThub0tpR2FueXVON3ZYWnZmK0xEODBrVTgySWlLYk1TaHh0RkhWcGdVVzR6R2p1RXdaN2lVc0hGa2lYUG56dkFuLzhzL1lYdjNPcFhaQldvZ0RHbUtnTlpnTFlkQkZQdzVZdXIzT1owMjN5MFlCdS9RcWJXV2lqSHJnK1A4cTMvOXozbnl5U2RZR3h3bEVkZ2I3NUhwN0lFL3RzNzY0SFhxSE42QzFNTFM2Z292UHZNaUt5c3JaSytsdkhYdUoxUUlpV2gwTHV3Vk84Rkp0dEk4bnB6Z2hhZS93T25UcDFuZE9FSmxLeTVldTh6clAva2g1N2MvSkNkcnZGVHJqcStHOElQZ1JUc3RVWEJ2VUFqZStjNFBOaVhGT0FQZVk0cncwR0lyQzFhUmtERE1ocGpLWUxFazZLbUZGK0FiQ2h6aWRWM281N3dqaEc4REEyaXVNWVV0TFFySUpRM2syQ3MwaXB5VVU4ZWU0M09ubnVmeFI1K2dMZzAzTGwvbnd3L1BjMk55alRGakVwZGhxNXFFbENmeUUzemg1SmY0M0dNdmNIVHdDTG5Od0FyYUphSDRoYmM0Q1YxU2N2alRuTHhBdHBTSDRnMHJHbG15WExoeGtVdTdsNmdwS2Fub3Fobk8vVDMzbkpNaklnNDlvaUliY1lpUk1zdzIrSVAvNkQ5R0tjZGdLS3lzNW56M2U5L21mLy9UZjhiRnl4OVF1VDA4RlNHdHVVMVlPcmo0enNPSGVTYS80TUFjU1BhRlVGRFZzejNlSXBXVXI3ejZGU2E3RTdDd2xDL2hiSi9MOUJYZm9JbTF2cjIvQ0VWMi8rYzVlZXBqYjBQUWtxQWxSRng2WnpIVzRwd256VEtPcksvenpNbG5HQ1JEYmw2K1JVa05CbzR1SDZlcWE1Wlk0Ujk4NHovaHExLzhaVTQrOWl5NUdyS1NIZUd4UjA2d3ZyU09Hem0yUjdjUWZFTXpkVk5pSUNQUXlyUWpvS0h0NDcwMFNmY3ZsQmNRbEJNY0xxeFJhWlJvdkFQZC9NdlZnTnBaTkxvSmlmRGQrZ1JCZHlxdDd2cW1aLzZwcnNlS2hOem5UVnBjeGpJclRaL1NZSmwxOGxWKzdlVmY1Y1RScHppMjhpaEhCa2ZaeU5ZNXZucWNyTWpZbkd4MkJTWk9aQ2Q0NWZTWCtlTFRYK1RvMGpHU1dxT01SbHVGZG0wQkNvOXZKV05wTCt2RlY5YW5aYjkxdDNZdmQyNi9ZNjZkZ000eWRzbzkxSnBtViszeG83TS81SXE5U3QzODIvOGcwVnZoeC8yamlvajRqQ0lxc2hHSEdBWlVTVkZ0TWluSGxEVmN2YjdEZC8vcS8rUGRzNitUS21teUc0STV2WWhuWDBoY0pMUjN4NEhIeUpFUE5FV3h4ekJkNW05KzhPLzU4aXRmNGRSanp6UGFxdEZhWVNTVURKNU5BSHVBY3FVbFNGMUprcUNTSllwNlREVXFrTktoQjVwbHZjYnYvTW8zZU9xeHAvbld0LzhObDBZWDJCdE5XR1dkdi9mMS80QW5qejNOV25ZVVZ3cmx0a04weXRxUmRaNTk0Z1hFQ3g5ZWZ4OE5HRXlYWmU3YThBTUlTV0tmQUNzczQzQ01HV0V4RGUwTU1RQjVrak9wSmcwQlRSQVVaVjJTa25iQkJlRUdNbzE3WG5SV1BRNXBESi8yaCtFR1dpNE5nWFY0TkFsUHI1M2lLNS83SlU0Y2Zaek5XMXRzM2Q0aWtZUkJOdVQ1RThjWW1DSFhibDhIUEk4dVBjb0x6NzdBeWNlZlpzZ3lacS9HVjZIWDBsMTdMYnA0ak9iOHFmMXM4cERBQVh2RkNGbE9HYmt4NTI2ZDQxb1Zpa2g0WmVhZVQxWHZlWFMvUWhzUmNaZ1JpV3pFSVlaamJUM241dTBMbkRwMWl2UG5QK1IvK3BQL25uTVh6d0tXMm9YQVBDWFNXQlFSZjhEM1laN1pxN20yK1FTdDNsUWNaYmtIb3BqVURvdmxYL3cvL3hmLzhELzdMMGd6VGVVS1FJTW9sQmQ4NnpyYXFFUmVITktWYXoyTWNCaGpxYjJRSklvc3k5QjZtYVJVV0RFa2FNYmpFV2pQNlJPZlkrUHZIK0gxbjd6Tzk5NzVMamtaWDN6bVpWSTdvQjdYb1F3d09VS0tMUlJEdmNvemp6N0g3NzM4RFl3cWNGSTJWY01VbmdRaHdRa2hBZXdPZytSM1NtWVNENlBSQ0tVVU5SV2loZElYWEx4MmtWdTd0NmdydzlHbFIzanV1ZWZZV041Z3ZEZEIyNFFzeVZCV2czTW9CZjNzLzZrQXFMcnRld25KYTJFYWVHTTc5VXJBT3BSUDBWN2hTa2RLempPUG4rVHg5UlBzM1JpUit3SHJ5K3Q0QzBWUjRKUm5mYkRHNlVkTzg2US93Y2xuVC9Ma1l5Y1JKMVM3SmNvcFVwVTJ6MDR1SENkQ0tNeURCQzh3TmhWTHg1YTVkT3NTNzF4OGx3bGpFRXZ0L05RcHcwOGZld0tOVjhIZEJSN3kwS3FJQndYeE1vNDR4RWlBblBabmVuVjVtZDNSRm1taUdRNXpkbmEza2JhSzBvSmlCNjB2YUVRZkIwVmN6aE5aUXV5ZGdtd3BvOXAxQ0RtcnNzSHYvNTAvNEErKytZZnMzQnlUc1lUNEJPVlZTSWdTai9NZXhEWEo3RzJzNTJ3eWk1cjdWZW9ud1J5VW1IWEg1ZWZhQStGcXJnczVtT3pOSis3czI3NTFPQk0rSjBtQzFrMTFPSEZCN0ZPZXpjMWI2RlF4V0JwUW01S2Z2ZmNlTjI5ZDU5VXZ2c0pUUjUvQWxwNnFCdWMxemtxSVA4MGhXeEpHOVUyc0ZEaXFFQ3ZyTlI0TlBndDc1YXM3OXY5dVdmbGFGR21lb2xPRlR4dzN0bTd3ZzllL3orcy8rVEVsSmM4OStSeGYrOXJYZVBLSnB5aDJTc1FJeTlrS3RuWVU0d21EYkZZTEVUKzFaVkNlM3Q5WDM5UzI2VnZqNG1DdHhSc2hRWk80Qk8wU2ZPSHh0U1ZUQTVZSFF3YURKYXBpd21ReUlVMVRSSVR0M1Iyc2NxeXZyNk8xWnJRN2h0cXpNbHhDb1JqdmpjalRkSnJZNU50WVhodXN1N3pDOVJUWm1ldG43cHpQWDMvejExZjcvZjVrcmRuclI4MjFPK0dPN1czZkZmdXZQeXN3b29aMXhROC8rRDZ2Ylg2ZmdnazJxeGtaMXpsamlBZE5BbzNwbUFWUWxrNlpqUXdnNHBBaktySVJoeGlPTEZXa1NjWm9NbUp2dEVtV2FxcTZvTjRkTXhoa0ZFVXh0NHdLY1psZU5UZjUvVGZZQ05oUGFGdnZxTDZIVkxoWlZrVkZNc2l4aFVHVTQ3dmYrdzVmZXU1bGpxMDkwVENBOWpnL2VIZE1wUlNTZXJ4MUdGUGhiZk9BMUZRRTgxaldsNDZ3dXI3SzV2WTI5YVRraFdlK3dITlBQcy9hOGdwN2UzdG95Y2l6TlpKc2dMT0tVVEZoTXRsbGQ3TEgwcW9PWnJLZHBxWnhQcVd0WnRjV2lEMEk3aTdYZGxsTU1LWEJpWVBFTTk0ZFUrM1ZqVHVCWW4xMWc0RWFrcmlVckFtakVLdEl2R0lwWFVKMzU3UlJaRkZOK0hQb20yMVYwRmFHN2ZmTmgvNXBzWWhPMEs2SnJaV1U0WEpLcm9jVW93THhpcTFiVzlpNllqZ2NraWM1emhrZVdUdUtjeDVmQ2xWVm9Zd2lUUklVQ2I2eElIT0V4QzZnYzJONFVFeEpuSGpTWWNaN2x6L2d3dVlsSEk2YWlycjIzWjlvVTQ4Q1RWQmlwNC90dm5tNmk3OTlFWWNmVVpHTk9NUUlWYjJ5Tk1kN1I1WmxqTWE3REljNUlzSjRQRVprOXNZbG9zRXJwc1kzODZXVkhuYW9BOTR2Z0JnYUMxVHdrTWtRakdiQU9pODgrVVgrOC8vMEh5SjFpbklaeW1tOER5UjRSbkdTV2NXcVArMTY0WnUrTkJsNk1wZXA1eVRNWTltdmFIWGJtVnYvdkNLci9IUTkvYWs0djIvOTdSU2dyc3NRVWlCSjhKZ2xGRkJ3Tm5qUXJxNHRjK1BHRFFhREFTcEpRQnhKa2pDWlROQmFrU2tORm1vRHhuaWMwdWhVNFZSSnpaai83VS8vVjV5YVVGTVFnamNrREEzN29MQkpQOTV6MFNuYWw5VTRlMDdUVkZQVUZaVXIwRWtDeW5HN3VvWERrYUNwcVZuUE5saktscGlNQ3NTM2lWd3B3eXluckNZenh6ajRJTFJiNnYrZDdZZkZZVEVJbWx4bGlJTVN3d3JMZk9tSmwzbjF4WmR4dFdObHVFSmQxRmhyV1YxZXBpeExScU05aHNNbFVwMWhxbERVSkUwMVNpWFVkWW4zRnEwMTFqV2V1cjROTFZCeklRYXFpZUFGMnlpeGkxVFkvckc4MDRqQW5SVFpSY3VIa0l2MlR5Z1V1bWp0djVRSDdYdFdXYzF5emd0T29FaHI2cVB3WjMvOS8zTEJuUVVjMjJ4U0M2akdrOWVWZ2NTcVJwRzFLR3dyMDRvTFJEWXlnSWhEamtoa0l3NDU1c25XUnlHbDgzR2dFWXR4TjJNbjEwbzlnY2pxSWRhQUp1WEpvOC96MGd1djhBZS8vNGRzM1JqenlPcHh6TVFGZ3lmSjJMcTl6YU9QSG1NODJRNWhCaEtJUkZqclhCaUlCK1VEa1ZVK2xMeVNOa0ZIVGNPZVhVTUFQa3JvUVZpdjZ4Uk44V0c3L1drL2x2T2c5dm4xenhNWk5kYyt1MzFRVmtqVEhDL0N1QmhSVVpLdDVHeFBidkhPaDIveHI3Ny9MN0FVT01vbVhjNWhsY2ZoY2M2aEpYaTg3bGRlVlVNa1hmZXBPV05oMjIyZit2M3JXaGV0TGZ6Zk04OENBaG1WenZOQXVxVTkwK0g1NERmckczc3UxMXZXZC84MEtVc01tK1N2QWM5bXovQ05YL3NtcTlrYTJpVW9weEVuTThkWEJkYlhJM3BUb3JwdlBNRzNvUVV5TGVmYkhJbjU4OXRmLzh5MTlGR0k3Rno3eklQRTNQTEtxeTRVd3lpb1ZiQUhjOTZqZmFoc25CakhNTWtvUjJPOENFdnJxOXpjMldHdktsZzl2Y0czem4yTDkyNi95NjNKemFZc3NjZjBpYnBuM3pucmVpU1J4RVk4R0lqMld4R0hISDd1OVhHWGlUZ1k4OGQyLzdIZm5Xa0FBQUFnQUVsRVFWUVdtWDVVV21OZElCTTdreDEyTm5jNWV2UVJubjMyR2ZhMjk4QUp5OE5seWtuTit2SUd4V1NDVWhhaE5mUjFlR21MSlV4ZkhVbnlkR1JKKzRhQXdEMG43MGxqdmlSZDZWeG1wdnVzanhhMWYxVDdwR1ozaE9sVXZNSWJ3ZFFHN3l4b2g4NkV5azE0Ky8wMytjc2YvRHRzNDdoUll6Q1VWSlJVbUZEdFN5d0dneEdERlF1cFIxSWc4WWdHcHl5VkszRmljZHBpcE1aNWk2VU9NYndKMUs3RVlIQ1l4cTgyL0I4bzUzVHF1aGJielc4d09LbHhLdlRIU28yVkdpY0dweXkyZVJrVittakVZc1ZoRXdjWmtIbFU3a040Z0xPa0ttV0pRZGhUVzdOM2RZL1R6enlQOGhyeEN1V2tJWDh0YVE1cXRNejhMZnM3bm9jV3FsbEhkdzMxenk5MGlydTA1MnIrZkM1WTU4THQrdG5wN0x6UzlBT2NDbnZpbWo4bzVSVWFUNHFDeXBBb2pXaEZZV3ZVSU1VUFV5NU9MdkhEcTY5eHRiNUM3V3BtS3F3UlJnYW1wSHJ4MzI5RXhJT0FTR1FqSWlMdUhiMzdvWWhxU0ZvZ24wVTlZYnc3NGZSem4yT1FEYkRHa2FnVWJ6MUprbUdOQ2FFRjRodDdwbWF3M0xmVWRhcnl6Uk5aMVNxbElvc1p4VWRBUjJRL3lVMzlFL2lBQ2tLZVpmaEdMYlJZUklOT0ZHVTVZVzl2eExYeFZTd0dqYWFsVDRLUVNzSndNRUJwalFyV0FWampjRGE4ckczS0x6ZGh6WjUrUmJXbW1obWh1dG1VWlgvOHFSNmsrR1FCMit1L0dtaE5TTlRDWXl1UHJ6MVN3Y0NscEFUWEFvV3d5aHF2SEgrSlgzLzFWeGlvbk1RbEpDNlFQdVY5ZVBDUXVZZVFPNStXQXo4ZjVMeTFpTnd1V3M5ZHQrc1hmdzhockVZQUx5RlV3RXV6T1I4SXUvYWd2YUlzQ3ZJOHhTYWUzV3BNdWo2ZzFCVS8vT0JIbkNuZXAzUWhENkF0bTl5U1Y2MzFvUy9CR3hIeFVSQ0piRVJFeENkQW13RG11eUhiVkNVa3pURDB6ZTBiU09YNXdvdGZSQ3ROT2FrWjVFTjJ0bmRaWFYzQjFhYmhPOU5TdGkxWjh5S2RjallsQkhPVVFOMjdsOXBuZ2NnS1FxSVVTYXB3emxLYm1teWdlZVRZSXp6NTVKTzgrc0lyRFBTUTI5YzNxYW5JR2JLYXJWSVppNmtOeHRpUTllK242OU9pU1hTQ1RycGFyTlBqMWlPWWZqcnVmRzlUQWU5Y3NHbHU3Vm43TDllRU5MaG15TjRwTUI1c2NDaklTVWxKU0VuSkdYQnk4QlJmLzhKdjhkc3ZmNTFUanozTGtocVMySFJLWXAwMDVMVlZUTzhRRy93UlA5OVhJdHRzd011VXpMYUtzMjVlemdSRjNpV2VXbXBNNWlpVGluTTNMdkRHMXV2c3NZZkJvTFVtU1pKcEtkeTIrdzlLWmx0RXhCMFFpV3hFUk1ROUlpVGJKVG9OcE1hSFlWN3Z3OUF6V0FTNGV1VUtqeDkvbkVlUFA0YWcwRG9QMWFKRUk4NmkvVlM2VTBnVC85b1MyRmFWYmI0VEZ4Sm9XaVZYN3IxQTYvMG5zcDV5UEFFOFdaNkRRRmxOOE5hanRVWXBUWmJsbkg3bWVWNTk2VldlUEhZU1g4TDIxaDRLRmN6L3NXaWtxOU9sRzNjRDV4MUJiRzMzVGhBQkphcXJwdFlGRjM4U3RJZE9taElKS21uNmtxSWxBUjlJYTBwSzFwUSthQ3QrRGNoNWhDUDgrdk8veXU5KytYZDU5ZlNYZVd6MU1US1RrZFFKeTNvWmJVSVlTZUtERzRKcWxHVEJoMFRPQTdwMUdJaXNCMFNDKzBENCs5RWhtYzZIc0JQbHdWbEh0cFJSMklJNk1hajFoQXRibDNuOXdodmM0amFHR2lObWhzRGV6YVl1SXVKQlE3VGZpb2lJK0FRUWpMVWtPbVM4ZStjYXQxblhaTDRyQ25iNXMzL3pMMWxmUGNJelQ3eElVWXc0OXRnVFhMdHdsYlZzMkdUQ1Exc3VOQkNXdnQ0MmUwTmU0T1IwYUxIY1pPRVhreEVlT3BMblNrOVZWVWlpS0NZbEtrbjU0ak12OGRMcFY5bmUzdVREOCtlNGNPMGM3NTMvS2FONmo0S2lTOVlTUEJrYUFXcnFMczRWM3lZa3RWcWcvY1NsbW5PZE42RVJ2bm1Ra1U1ZEZ4VHJ5VExXV0dycTVxRWhZeVBkNExubm51UFVZeWM1dVg2U2djc3A5d3Jzam1ONVpaWGhZRWkxVjFEc0ZneXlZVVBzK2xmQkEzTHlBZHU3a0R0dldxL1FUU0U4MGFBeWpSVkhvV3BLTitHRFd4OXdtY3ZCYWdzejlaVnRQSHVWVXZ1VTJZaUlCeGx0eEh4RVJFVEV4MFRRMTBEaHNTUUppREk0RzBUVFJBQUx1VnJDdW9SWG52OFZ2dkgxLzVCSE5wNWtZK1U0NDgwUkszNkFkb0lYdGMrMVlLcVdoWEhyMWlxcmI1K2ttdTNEM1pXb2cxd0xwRFhLLzVqTHovYVJPN29XTENyb0lCNVdsNWJaMmQ3R1dvdlNHc1NoMHhTZGFhcXFJaDltRkhWQldSZFV4b0FLY2FaSmtrQm1LZGpsK3VaVkxsNjh5S1ZMbDdoKzh4cGJ4UllsSlI3UGtnd3BmRUZGT1h0czk1VnR2UmNFcjlrUVJOTCtINllKS1JrcEZUVXJMUEg4eWRNOC9kUXpIRms3UXBhRWdnYUoxZWc5NFpIVlIwaFVpaWtzWXNDV0RuSEMwbkNJTFp0ekxjRXF6WW5ybkErY01HT0R1cWlnUVl1RENock1GeVNZYis4ei9VV3VCUDByNVU2dUJZdk92Mi9WV0VCNWpYZUNkbnJhS1hIaFFTUXpsR25KcHQzaXpLMFBlT1BhVzJ5empjRlJVZ1k3cmY2K05vcDdKTElSRHdzaWtZMklpTGhIS0FicENtVmQ0ckdBNldJbnU0cEVIcFlIUzFRRktBYjgvdGYva0svLzJ1K3lmWFBDQ3ljL1QzbDdRbUxEY0xqdFZWaHFDV0tmekliRXBKYklCdDMzc0JOWlc5V1l1bVk0SERJWURDaktFbU1yQkUxcFNweHpKRmxLbHFkNHdCaEQ3UnB5cHl4R2pmSEtob1F2RGNiVmpFWWpibTdlWkdkdmh3OCtQTVBlWkkrZHZSM0dqS2lwWi9lSmU2OXMxeWV4bW9RaE9XdlpPa2VQSE9IbzJpTXNMeTN4dVZPbkVhK1E0Q3NWWXA1Rmt5aE5KamxTQ01wcXl2RUU4Y0xxOGhyS0s4cEpnWWhNd3lBaytDYUVSNXBROWhZQTI3T1ZPb1JFMXFxMlBSeUhZRFBYN0pwNFNpYnN1aDJTSXlsWGlxdDg1NmZmNFNhM3FDZ3h6UkVSRmNKRm5OdGZ3VEFpNG1GQUpMSVJFUkgzQ0lXUUF1d2pzakFsczlwRFNvNGpKV2Vkdi9zN2Y4QnYvc3B2a2RvaGcyb0FKV2lka2crR0dPTVlqOGNvbGJDeXNzSmtNZ3JybDFraTY4VDFmRGdQSnJKM3VyR0xkNGozOTVYSUt0K0wxK3kzTjBiNWkvYkZkai9aRHE5cUVCTnN5eHJGc2kyUjY4U2hFZ25XV2RZeXFTYU1KbnVNUmlOMng3dFVWY1d0V3pkeDNnU0NYTmNZWTZhT0I0UmhhcVVVU1pLUVpSbDVucE5sR1ZtV2tVakNzU09QTWtnSERMSkF4Rk9kaHRoT0kyQWRpU1FvMTFobWVSOHN4NXFwOGdweERYbURKaWxNelJCUjI2cnd6WG4zVFN5MmE0cFlLSko5QlFQNnl5OHFidEFucXBiOXg3ZmYzZzloV1VSVTNkejVtVy92cjJjUmtmV0pJRm9oRm14aGNMVkRSSk5sQ2VTYW04VnQwaU1wbDhlWCtmN1B2czk1ZTQ2S0Nxc3NsWXZsdFNNaUlNYklSa1JFZkNLMDVXZjN3d3RrR2RRRlFFMUNRc21JdjM3dEw4bXloRi8vNnRjWmpXclc4alhBc2JsekM2MHlWbFpXY2M2eHVibkpZSkFkdkdVSkpQbUJRbFB3QWVoS3ZVN2J3dmZhZTJnSDhoMjA1V3ZiSVdaSElQcGVPVXhobXNTeGhFd1BXRnRkeHk3WjREdnFIS3V2TEljSEJCdU05TVdGNFc3bEJhL0FsSFZRL1Z4WXYvTFN0WXNJMUJJU3ZDUkJlNFUyVFh5bUpSUXdhSXBZaEdJR2ZycC96WDc1bVdROWo1ZVFuR2JiejB3ZkZteGpXZEIrNTFBZFVUeTBTcVNFR0doeG5tRXlJTTAweGxaTVhFRnRhZ1pIQmx6YXU4eTdWOTdubXIxQmpRMXhzYXFSYmFPN1ZrUkVKTElSRVJHZkZBZmZUVnZTWWIxREs0ZDFOZGRIbC9pckgvNEZSelkyZU9YWlgyWXlLc0ZDdHB5aFNTbnJDZDRyaHNzRHZHMFNtUHgwZmJQYnZYZlhnczhHVk0vSzM0UE1sWFdkSTJpaDJsVDdTVkErbWFwK0RmMXI2NVY1Y2FRK2E3eEpQU0tDYnlWZ0RWNWJKcHZCTlVFY3dlNE1oWWdQVmNFVUhCbXNCWUpzZlRkdGlTeUFwQ3FVOFRXaDBsaHJpS3A5Q0Rob00vQ0ZRR3diU2JYWjN6QzBibHNGWDlxajBGT2NDU3B6T3orZFU4SCtrSUw1OTRjQjNqcThkV2dFcFFDeFZMN0NxZ3FUT1dxcE9IUDlBOTdlZnBjSjR5NmN3RnZRQ2RoSVpDTWlJcEdOaUlpNFYvU0o1T0k3YWwxQmttcE01YWxjalNiQjRiaHc2eXgvL3UxL3lmSDFKMWhKTmxoYlhpWFJDVlZSVWRXR1JHV3M1Q3VVcm54Z0hBcm1FVlRGZ0RDOHZuOUhnME5EZTV4ZDRJbE41YWV3WEpndk9EODBCTFkxM1BJS25RYUYxTHBweUVDcnZDS2U5YVdObWRLcDg4UGZrNjFpcGo4aGJsVkJHNy9xUE5aNXNCN3ZQTGd3anlLMEJ3czExYmhTK0M2V1RmbHBmQ2pTS3NrdHdmVzBSNmIvdnJzT2V2SFg3WEIrdjgvejd6L0xxR3ZMWUxCRUttRHFpbkUxeGlxTFh3WlpnbmZPdjgyNTIrZVlOR2xkT3RWNEd4NEdyTG5mdlkrSStHd2crc2hHUkVUY013VEgxQTJmV2NOTUNjVVNSR2Q0RzlxelBFTW5DbXNMZHNlN2JGN2Y1ZkVuVG5EaXhBbDJkcmZaMmRsbGRYV1ZRVDdnMXEzYjVGbndWKzNLa0RaVnBieDRRRFhLNEwyWm9kNXZIMW02K042MkY3M2l2REl0MXl1NFJvbDB6ZEQ2Tkc1VVBIZ0psbHF1V2FaYmZadnA3NEtuTEkwbnI5YUtSS1VraVE0S3EzVjQ1NmRWd1l6RkdvdXpqdUZnU0tLVFVHQkI2ZUJEMi8vbmZQQ3VFQlhhbGFDVW9GV2JxRFVORW0zOVgzMVRpdGlKYmZhelRkN3J2OEtSVUsxbmJIT0VsQS9GTWJSclBZYWJmVjBRcS9wUnpzdEJaLzZnOHpiL2VYNzVqM1grUldHdFo1QVBVU0lVeFI1ZUdkSmx4VVFLTHU5ZDViVnpQMlNUYmNiVW9UaXc4dURjUHFVK0l1SmhSbFJrSXlJaVBoMElnWnhKVnhjVmxNTFdycm1UQzg0YnFxcG9ScmN0UDczNEp1cy9PazZhSnp5eTloZ3I2MHVnaGNwVTZGUjNTVjBkdkNKRVVFN2pJdzgvcENsUEtndEtycm9tczk0RUpSYTZSQ2NRbkhLSVYxaVpacXg3ZkpmVjN5WWpDYXB6QVJBUnBDR2FwcTY3ZU5lMjNHK2JPQVpnSzlzcHRmTXFwelNrV1ZSWVB4SkNGSnh6MURZc2w2b2trRzVheFRja2E0VjlubFZrdTZDQm1lMkVlTnFRUk5VbzBEM3gzODBaaWUwanRISnZEem0vQ0lpSFRHZTQybEdiQWk4d1dNN3dBOHYxRzFkNDQ5eWJiTEhKQkFmYWh5cHFydlVLYnRYM0dGc1FFUkdKYkVSRXhLZURWbUgwVTBzc1VTbmVsT0NGWkpCUWxaUE8yU0RSWUdyRDkzLzZONHduRTc3NU85L2sxRk9ubVd3WDJNSnlaUDBvVmRIV1A1M0ZnMFJpQS9sdmh0TG5xbFdGVU5SR2lmV2hnSUh2MHhjRlhXcFV6eFdnVzN0Ynd0ZE55YWh2M2d2Z2pHM2lNOVVNNlp1R0dFd0pzZ2dkNFZVcW5OL1NWT0JkY0ZuQUl1MTJtbjlXK2YzcnhBWnkyb1lJdE8yOWFPSGVRbDJjYlovSVN1UHE0SlR0elhyNFFndVNKS1VzUzd3ejVNTVVSOEhsNnhjNWMrRjlybkVWMHlSM1dmSFFKbmo1VURoREswM2xxa2htSXg1NlJDSWJFUkh4S2FOWGs4dVlFQkdRNmk0elJXa1k1Q25qMFlSY0R5anNEbStjL1FGSEgxMWpNTXpZR0I0bHNacEpNU0wxV1ZPeWxqQTBMaDU4d25RSXVyKzlCVVJvNGVCeFAwSE1mYUpLWVdGby85NldEZkFOaVcyREN2cGhHZzV4Ym1iV2Rwc3RXaC9VTG50ZlhFTUkxWXpsazFKTnFkK1c2TFlLcS9JaDNyV0phVzNKYnV0Sm1tVlo5N245emptSE1TRkFVK3VRWWhhS1ZZQlhJWVkyYVFiVG5ac0w1SlJRWWF3bDdxM2FMdTN1TjVOT3JPMnA4WXZTK3NTemI5eCtQclJnL3R6Mkg0S1VuL1dTblcrL0d4YWYrbW1ubkRTeHZBSytIOFBjdWpZb3FDblJBNDliRXE3dGJ2R1RTKy94dmovUEdFdUZ3N2FoRjFtS2lNSlBEQ0ZCTHhMWWlBaUlQcklSRVJHZkt1YnBSci9ZN055TnR3dHZWZUJTRWdiOHhzdS96ZC83cmIvUGlmV1Q3TndZc1RZNGlpMWRVS0MweGhqRHBDeEpVc1hTeWxMak05djZ5L3B1Q0hzZW5YOHA0SHZNUlRWRDk2cEgrbVlVelJseE1GQ1J0bjJlUnN5M2g1bmF4S3ZGNjI5SjhPSjJOM00wZmMvdnR1K2R1cGlJeTh3KzlmMU5PNzliWVhhNm9IOXFidjluNW10OWJwdVZ0TXBndjMvOTlkenArTTczcjcvTnNMd3M3SDhmOCszeis5Q3QxODMxbjhYdGJiLzY3ZjM5QUZDZDVZSnJQRzg5cmxHY25ZRFdHaENjQldNYzFucVVhSklrUTdSblluZHhXVTJkV0c1TWJ2R1RjMi95WG5HR01TVXFUeGliblJrbHRyblVDYVowcW5FeGlJaDR1QkdUdlNJaUlqNUYrTGxYWDIyY2d5S01DU1VlWEJnMjM5dmVwWnlVckF4V09QSFlDY2E3STBKc2JVaEdFaEVHZVk1MW50SGVIbW1pQXh0cTR6WDdXK3JKZGRKSWZ0TE1vWnAzYlluUWRrai9veVlKN2R2V0FmTXZ5b0diWGNBMS9abzlib29GcXFLblVWVURzWk5tS2VtZUNLWXYxZHZ1b3ZWMC9lOWxJOTM3L3JlS09VRTk5OU10ZDZsaHpmZHQvNlgzZmRmL2RybmU4dTM3K2F2cW9QTTEzODk1ZGJWUGNCZWV2L241NzdEL1lmN3BrMGpYYlQ4OUkybVdVWllWcHJaa1djNXd1QVFpMU1aUTJBSTNxSEJEdzgzSmJkNis5RE0rSEY5a0w1UThvR0lDeXM1dTFOR3ZaZGZYN3lNaUhsckUwSUtJaUlqN2c1YVZXSm9FTWNkMnVjMWZ2Zjd2MFM0bHo0WThmdVJKSmpzbDNzREswanFKMGhSRmlYV0d3V0FBK0duaGdLWUtsUFFVelhZSVY0QitwcmVUT0N3YjhjbmdKRlRJRFlxMmFwTHgzTXlEZ2hpUEdFZ1FVZ0Z4Rm1jcjhBYVZPZXJNYzNPMHlRZFh6dkxoN29lTW1RQUc2V2UxemJQNDZTUkd4MFpFRUJYWmlJaUkrNFZXRXZPQUNLbk9ReUlTbnUxYlc5eTZmWVBIbjNpTUxNOFpMQSt3dHFZb0NrUWdTelBTTk1VYjEraCtyWWFwYUxQY1E1eW9kTm4xSDdWTEgrZnpKMWRrL2NMMlQ4cys2cTdmeTUzYmY2NzJVM2Y0L3FQaWJ1djl0UHEvNkxNWE1FcHdBdE04T2QyVjMxVmVVWmVHUEUxSWs1U3FMcGtVSTZ5dlNYT05XaEt1bGpkNDUvSzd2TDkxaGpGRnNOakNZTHlaclg3Ukk3TFQ1TGlveGtaRVFDU3lFUkVSOXdzenJFQ2hrd1F0R3VjY2hSOXpkZXNxMjF1N2JCeGI1L2p4NDB5S01VVlJzTHE4UXBwbWJHMXVrU1U1NG5Xd0kvSnEzM0MxOG8xTHJQUTFyTWFIVnRwUWc4VmQraWlmSTVIOWFQTS9pRVRXQ2RUSzQxUVQ0T0hEQTVVNGFmeHVCVk1iaHZrQVVZNUpWZUMwWWJpUzRoTEQ5ZUlHcjE5Nmk3UGJGOWhoRDR2QjRuRWh4UXZwcWJzejRTQmRQK2Fxd0VWRVBLU0lvUVVSRVJIM0J4NUFvU1RCaTZPdWl1YXpCalRXVzM1ODlqVktWMUJVRTc3dzNCZFpXenRLc1Z0Z1J5UFNQR3RDQ3RyTTkrYTIzbVRRS3orYkdXOWJteXJwTnM2RFVlWTI0ck1DMWNZdisvQStUMUlzaHNwVytNUXdXRTJSM0hQdHhoVitjdUVkM2lwL1JvWGdzUmhxUElZMFRSQm5xZHJ3MkFWY3RTdEQvQXZkdTRpSXp5WWlrWTJJaUxoUFVJMlNTaTk5MytBd09LVkk5WUM2SHZQbXVSOHhHdStpRkh6KzJTOVJPWWNESGxsWnB4cTVYbWxXR3JzbTI1SGIxbDRySXVMbkFlMUR2VExkNUJ1MjAvRHc1TkNaWm1JbVZGTGlsMkJYeGx5L2NaWDNMcHpoL2ZJY1kwb3FQRXFEdFFhd3pRT1lRL2Uyc3lnbU5wTFlpSWlBR0ZvUUVSRnhYeUFJQ1FrMDV2azZGU1FKUlV3UmovTTFYaHpPZTNiR08xeTZlSmxNNTV4NjVoUnJhK3ZjdXJWSm1tUjRVZDA2WnN2TjlwMEsyaENEa092ZFZyYVZ1UkszTWJUZzQzMSttRU1Ma0hCVktTY2tQb1FUcU9EcGhRQldlVnppR2JreEpqZllvZVBTN21WK2VPWjF6cHJ6N0RIQlpBcERnYU1HSGV6Z2pQWGdJVlBkNEVJM1pqQU5LNy9iRlJBUjhmQWdFdG1JaUlqN2drQXdnOCtteCtPODZZejF1eGNlbFNpY2RVektFWmZPWGNJREsydkxySzJ1TVI1UFVGcVRwZ3ByYXlibEdLMFVXWm8wcHYyTnZSWWUxOGJINHJyYnYzU2VTZXp6U1cwV25MNXRmV2o3M3FQY3VmMXVSTTczTXRObmZGRDN6N2pRSjdXdk5zLzRzQzRvS1J1K24rMmY2NVdmN1MvM1VUL1A3Ly84K3J2dXpmVy8rOXJOclc5K2UvUHI1NEQxNzl2L2JnYy9VZi8zOVdmdS9XUnZqL1dsWlFaSlNqVXVxS3VDUE10SkJvclNsMnpWdStSSEJoU0RtbmV1dnNmZmZ2QTZsL3dWeHRSTU1OUVVqY1ZXdSs0cGNlMy9LVFNITU96U3pKNUhJaHNSRVlsc1JFVEVmVUZJeVFvRHFFR0ZkYlB5VXdOdkhYbVdrYXFNc1Jsei92eDVKdU1KSyt0ckhEMXlGR01ydHZhMnlBWUp4NDhmcHl3S3RyZTJXRmxld3JYVmp4cjF6SXR2dHRWOC9YTldaTzlPWkQraEludkFpbjhoaXVTQ0x6N3UvbjlTSG5aWFJkWXYvdjZnTCs2bUVQZmJ4Y1BHMGpLVDNUMUd1N3RrcVdhNE5LU21ZcmZjWmMrTlNEWXlidGEzZWYvR0I3eDMvUXhYN0hYRzFCUVluUGFnelA0K05NNEVNcmU5MmJ3dk9UaUFOaUxpSVVNa3NoRVJFZmNKN1pCL2F5WS9KWjBkTk9EQUdrT1NwQmhyc1JpdTNMak05czR1ajU5NG5MSXVPSHA4Z3lSVlhMdDJoVUdlOGVoang5bmUzZ3FWbFhxeVlFZGttMjNMSEd1T1JQYmpmWDZZaWF4bVdxOGdUVkowbm1Db0dKa3hKck9vOVlTYjlTYnYzL2lBdHk2OXpXVjduUWtWTlFhMEM0VkEvSDZ2MkpiQXpxY2c5b3N5ejFTMmlJaDR5QkdKYkVSRXhIMUNQNGJBemJLTzVqNmRwVTNGVUJlU1lRUWgwUm1WTDdtK2RZMXpaei9nbVZNbldWck4yZG5kWW1WbENhMkVuZTFkbHBlR29ScFlSMXg5TDdZdytNdit2TzIzSXBFOVlMbURPdkF4Y1QrSnJBTEd1M3NzcjZ5UUxLZU02ajNHdmtDdGFVenV1R1UzZWZQY1c1eTUrUUczMktUQ1lNUkIyakxXRUU0QXpKakN6b2NUOUNtcit5aWRqSWg0eUJDSmJFUkV4SDNDN0dCcGwvalUzT01GY0RWa2lTSkxVNHd4T0lRazA2Q0Z5cGJzbGp2OCtLMGZvYlh3OUttbnNNYmduV1ZsZVlYZDdSMTBvanRpTUNVRVhZVHNQUlBJK1QyNDIveVJ5QjZBUTB4a0FaUk9xY1d4VjA4WVVTSnJnc2t0WjI1L3lOKys5N2VjSFoxamgxMHFhcndDeVRUT21tWmxDcXdOeDZDcE5kc25zTzM3dGd6dFZJMjlTeWNqSWg0eVJDSWJFUkZ4ZnlEMFdLdnZidVNxZVNYTkxONTZ2TFU0QWNSaGJJWEZnQmFjcXdISG1RdnZjdW44UlU0OGNZSWpHMGNvSnlYcnEydll5dldJYkNDdTNndWhGTlArcEtwSVpEL2U1NGVheUFxb1BLZjBOU1oxcUZYTnJ0M2o3WXMvNDQxenIzUEZYcVdncEtZT1pXeFRvYmFtR1dJUVJHbkVtaENpMEx4bWtzK1lLMEhibDJvaklpSTZSQ0liRVJGeGZ5QnpMeDkra1BvMzlxUUpEUERRa0lGMmZnL0tzcjZ4d1hpeUI4RFczaVlYejV3bmtZVEhIbm1Vc2pBa0tpSDQxVFliOFUwcDI2YW1xTXd4cVVoa1A5N25oNW5JT29FU2gwdUZPclZjMzczQlcrZC95cHMzMzJTTGJRdzFGUlVvajlPZTJ0UWRpVldraUhXa2VQUk13QXY0SnRYTDkvODRQa2FaNVlpSWh3MlJ5RVpFUk53ZnpBY0RNaVd3L2E4VkNwMXFIQjduZXNzbFFyazNvUTBhU0pWbXQ5cmp2WE0vWS9QMkZzK2NPa21TcHlBZUw2MHpnaWVVc2cyQkJjcXJVRnEwZlhXbGJoVXkwOG5ncWpDbDFhMEprdlRweG5UWC9Oem43bDJydXpYVE9hc3R4V0l5OWZNaXNqTmoySGVaZnhHWG10bjNYdnY4ZnZ3OGlLd0NRdUdMNWl6NDZSUUU1ZmV2dk44UEw4SHJ0YXZGMFV1MDBsNkZjaDJ1NXcvYmROWkplRldKWlRjZE14cE11TEIxa2UrLzl3UE9saDh3WVlMQlVHTkR5VmtGMWszRGFQSThSNlB3emhJZXEvb0JMMm9tSm5iYTZVaGtJeUlPd3ZTdk15SWlJdUlYalRraTIzN3NaMnk3L2l5ejB0WHNxbnhZVXFIUkpBZzVmL2lOZjhESng1N2hpYU5Qa1pnQlpnS3B6Y2gwRGs3d3h1SzlJQ0pvclZGS1lhM0ZXb3YzRnFYRGxwMFlQQVp3ZUN6Z1F2VW1tNEFQQlJMdjVBT3JPbjlTaGZlMjJjTW1ENzF4YTFqa1l6dnZwYnJ2OExuOTgvYTNQNU0vNTMydkg0R005VEhmSG1hYXZwY0ZQcTd6eS9mMzQwN3QvZldyTzdYZmFmbm00UU5VcjkrdWE1ZmUrLzczd2F2WVl3VnE3VUJEZ2tZYlFSbVBza0ppUTcwNFU5V29SR09jby9BVlRudlNRWTVQaE8xa20vZk1XWDU2NVMzT1h6MVBUWTFDY0JocVRPUEc0USs0d2JZUFNxNjdFcnI5bko4MTNxVWpJdTZJcU1oR1JFUjg1akNmcmIxd0JucHFZQ2NOZXJ3NExBNkg0NTJ6YitPZDUrakdVVVFGS1cyUTV5U2ltWXduTEErWDBUcEJSSEFXcXFyR0dvZFNRcHBtZUJka09nRzh1S0NnZVl0MEZRbDAweTU0Y1F1blFLTUkwOWgvaGFuUXh1LzZleGJkRGhweC9paUtyTEJmMFYybzJMTGZDcXEvL2I0aSszSDNRMzBpZ2piVnc2WDNYUnY3N0p1NDYzQWU1am9OZU9Vb1RSM1VVaXVJQStVVWlRZnhZWjIxTWFTRGxHUTV4V2RDUWNHZUhiRlQ3M0xEM3VBNzczK0hEN1kvb1BRRkJvTlBQTFUzT0R5aTFCMGVSUGFuSGtaRVJOd2I0ck5lUkVURW9jV0JRK3dlaEpRbHZZcXhqb3dodi9QcTcvRWJYLzA2RzhPajJJbEhiTkJ1dlJlOEUwUlVwNU41THpqbjBCMVR0SGdzNGwybnpJTENPeFZpZDczQ1lXZW1YbHlqR0U0VjEvNjBNNzV2T2ZHaXlsYy9SMFVXWmxYWk95bXk2b0QremEvL1RuMWUxSzRPNlA5SFhaNUdrUTJjMWM3c2h4T0hPSThUUDlkLzIyNmQyalZxdkZNb0ViUnIxdU04RGt1U3A0eXJQY2F1UUFhQ0dpcHVqamI1MlptM2VYUDBObHZzVUZBQ2tDUkJtUThWNVVBcE5TM0lFUkVSOFhORFZHUWpJaUlPTFdhVXh3V0JtTTViTWpJc2pndlh6blAyWjJmd1dGYlhWMGhTUlpvbEdBeWxMYkcrUnFXYU5OZDRiNm5LRXRYYWQ3V1Nxb0M0YVV4dEYrN1FNcnFacVorMkNWZ0pCTk9LRFJxaWdQTDdMY0ErMXY1L0FrVVdQcm9pZTdla3FudkZKODVoRWo4TnplaGltRjJ6WDlPQi9WYi9sSmxCZkdHb2x0RXVBUmVJcnNQaHhGTXBRNmxyOXR3SXQrS3hTNFpyeFRYZU9QY1RmdmpoYTV5dnp3Y0NLMkNWUTVya1FXdHR0M2F0ZFNTeUVSRy9BRVJGTmlJaTR0QmlKbmxud1JlSlN2Rk9vVW5aU0RZb1RJV2dPYlYyaXQvOTdXL3cyTEVuR0dUTGFKM2lhb2N6am9RTWhjWVpTUHcwSWF5Ti9aUmUzS1dST2d4aDB4QWg2U3VHUWJWdEZWbEhXTDVWYkJXUVdOV1V5WTJLN0QwcHN1RWJRUEMrVmI1N01jaHp4N0svZitJMG1jbHhUbEc3R3RmRXk5ck1VbXREclNxcXRHU3IzT0xLNWtYT1hEN0RwY2tGSEFhTEpjOEc3RlJqTEl1UnBpbDFYUi9RR2hFUjhXa2hLcklSRVJHSEZwcTVwL0c1SUZEbkhZbldlRzhvWFluRHNxS1hHQlU3L09EZHYySG45ZzdHMTZ4c0xETll5a0I1UEE0VWFGRTQ3NllWd0pxcytDQ3dDb2gwVGdqaXcvdlEzaG9ueVRSV0V6VWxWWDdxaDZEYVRQdDd4TU91eUU1amRJV3BBMFE0SDlJNFZMUk9GVzNzYkF2bEZXSWJBcHlBNU9BSFFwMGJ4bXJDcmhwellmc2lyMy80T2orKzhtTnVtZHM0YW1RZ2xGakdwcDVSZ2RxRVFSRUpEelZSalkySStJVWdLcklSRVJHSEZycFIzdHJxUi9NTWJqQklLU1kxNG1HWURoRUR4anNFUlVhT1JmSDQ4aE84Y1BwRm5uanNCTWZXajNGMC9SaTVXc0pYa1BnRTdSTEVhNVRSSWFUQWhaaFl4T0V3T0RIMDNRamN2RVluSHJ3MHZld3Bnb0IyRW1OazczRjU4ZjFrc2ZiNEV4NUVRdUF5M3RFZGZ6OS8vRDNOQXdnNERTYTFqQ2k1VmQ3bTB1NDFiaFkzZWZQS1Q2Z29FVHcrTjFTbW5IbG9ra2IxVjAxaWw3VVc1OXhkejF0RVJNU25oMGhrSXlJaURpMTBrMC9ma1VUb3BkRUhxRkRSRmxNMVByV2kwS0pDZ2hjNXdiSkxrVFBnbFJkZTRhc3YveEtQSHowQlJwSEpBRzBUdEV2QktiUk5vUEVXRmNCMWlWL3pSR3ZXVktrZmN0Qk9sWitOMll4RTl1TVRXZTFhQ3k2NkI0aCthSWZyM2Q1c0V5bmJ0WXZEcWhvcmxrb3NFd3B1akRmNThNWUYzcnR4aGkxMmNMZ21GcllHYldaT3EyandWVkNEVzl1MkZscHJraVNoTE11Rit4SVJFZkhwSVJMWmlJaUlRNHU3RXRuK0wxenZsNjV6RENCQm9adFhnZ0JEbHZuYzA1L244ODkvZ1pkZmZCVmZDY2ZqQVRZQUFDQUFTVVJCVkZRYTVUUXBHWm9FYjhBN2gwYndObXhiYTQzV0dnQmpYTWhldDFOMXJtMFhFYXgxV0dzZ2FieGt1VWNpZUFDUjdQanBIRkg4dUVTMkphcjNTbVFYdmU5L3B6OEdFZTRyblNLQ2xnUmZXTkpHRVhYaU9nOWc0NElQY0pvbkdHT29uVUcwSWttU3hrM0FVRktnMXVINjNqVXVYcnZFdVdzWHVWemRZRVJCaVdraVlSMklBWHd6N2NFVDc1NFJFWjhCUkNJYkVSRnhhQ0dvWG5EQmd2Q0N1WUlMSFZxQzVnVkJrd1JMZkN5dUthZVE4a2gyakV5R3ZQVDVWL25xSzcvTW8wY2VweHpWakhZbkpDcGxiYmlLTkFiNjFscnF1c1pVRmhFaFRWUHlKQ2ROVTJ3ZDJrS1JoY2E1d0hpc055UjVzSW1DU0dRWHRUc1hIQUhhVjdkL0lpRmhybFpndzBPRDhRWXZrS1FwK1NCRnBZcWR2UjBrRWJ4QVpVcktzc1JpeWJJTXRReC84Wk52c1cyMzJSN3ZzT1AzR0ZOVHQ5cHVwckIxMVlRbUVOd1JQSURyVkdCUGpJT05pTGpmaUVRMklpTGkwRUk2cS80RGlPeWQwQ2hxN1RxRzZSQm5ITDZKb2RWb1ZsbWp4clBFQ3A5NytrVmVlZWtyUFAzVTB3aWFZcmZFN0pZTTlKQmhQaURMTWhLVjRxekhHWU16bnJxbzhVN0FCVi9SUktVa29oRFJXS214VWtVaWU0ZjJnNGlzOXg2Y1VJK3I4TkNRNStoVTRRVEt1bUJVVHFoTVNUYk1NTDZHRlBKaGhnTnUzcnJPejk1OWwvZUtkOWhoaXdrakxLMVRNSmgyeHhJRnpqYlhpZW91TGlHTUJBU3pMaHZKYkVURWZVWWtzaEVSRVljV0Mrb2dITnc0LzUxdmZnQ2JhYUlURWttd0p2aVJKdWpHaDBBelpMbUp3TlE4dnZvRXI3enlGVjQ2L1FVMjhxT1lTVkJpRTBuSXNnenhRbDNVbEpPS3RlRWFDbzJnR3hzdndUdUhyejIxcnlHeGtjamVvYjExQU9qSWE5UGVoaGtzRDVlb1RFMWQxOVRPNEpWSHBRckpCVFRzbFNNazlVeXFnc3MzTG5IMi9GbXVtV3RZTERVVkkvYW9xRU0xT08rYkNteHRERzNiTWVnS0x6UmpBRUlDVGZCQktKQVJFUkZ4dnhDSmJFUkV4QU9EUmR6VmMvQVBYWklrV092eDNuYkxxbWIrUkNVb3I3QmQ4bFpDUmthZURuRlc0WjNseTg5OWxlZE9udUxaWjU1amFiRE1aRzlDWGRhc0R0WllYOTFnYjNPdnNYblN3YmZmQlY5YUxRa29qM01tRXRrN3RDZEppSEh0d2pKNnlxd2wrTDdXdnNUNlVNZ0FEVllaakRMVTNyQlg3dkxCcGJQODdQSTdqQm5qc0tnbXhhNmtvcURDWXJ1aUN1MkJhemFCYjhWV3J6b0syMTRMWUJwRk5oTFppSWo3aVVoa0l5SWlIaGpNRWxtMWNKNzVIendSUWFsbXlIck8rN05kZ3hLRm9IRmVHcFYyNm5RZ0NHdDZuUmRPdjhpckw3M0trOGVmeEZTV3ZjMFJHOHNiWUJSaUJHODhZaldwU3NpYStObWlHRS83Rllucy92MXIzQUJhUjRBMldRdWdwcWJVRlM1eGFLMnBwV0p2TXVMcXJTdGN1SGFCNjF2WHVja05MSVpVY21wcVJuNFAzd1FGOFArejl5YXhsaVhubmQ4dmhuUHU4TWFjeHhxeXFsZ1RpOFZab2tSU0pFVktsTlMyN0lYaDNubmhiYU1OR0lZWEJyeXdqWWFYaGxkZTJZWmhMK3hOb3cwYmFNR0dtcEphSXpXUUlxa3lCM0VvVmxZeHF5cW45L0s5TzV4ekl1THpJdUtjZSs1OTk3MnN5aUtaVEZiOEV6ZmozWHZtT0RIODR4dTF3WVVramlkMGRyQ0tTR1NWaHJERVVUVXhjckdtRFY4Z05KQk5Dekl5SGlveWtjM0l5SGgwc2VMTXRaQ3F0bVJqZ1hWMFE5SVdwU1FHMEc4bGNaSk1EbUtjL1NNalpXRUhETXNSczBuRldJMFpEQWJNNW5NRTJHVE15ODk5bEJlZWZvRlRXMmNZNkFFak80NG1Cb25RQmljbzBWaGxUb3dqdTNTdjcwTWlHeU04eE5pc1dtdU1NWWdJZFYwejgzUDBLYzN0NlcxdTNucUx0Ky9jNU83a0x2ZjhQUTdZcDZiR0U2aXBjQWdlaHk1QURSU3VFYUt0eUFCQ0s2TVZWSWlXc3F0TG9FNHcyN1dydGtFRU1wSE55SGk0eUVRMkl5UGowY1V4UkxhVm1yVmhQNWVqdWk1Z2pDV0lJN1NpTjVYSTY3cHJhYkJhNFFUaWYxRG9JY0hIUkFpdEU1Q2hTSGF4aWwxOWlndG5MM0R0NmxOY3ZYeVYwMXRuc0thTTdMaUdBU05NaUNHN09nSVhXbE9HbHFqcTN1K3EyNi9kdG80SXE3UmRSSmEyTDRocWl2V2dRRlJJS1hqamMvUlR2T3FVK0dIOTl1V2tCQ0pIVS9SS3NqdGR2ci8xeEMvdUc5SjVrcm1GRG9RUUxWRzExb2dLMUhYTlpETGhvTjdubTYrOXdyMXFuejMyY0RUSllTdXEvRDBPUWZBRUdoVWpHblFjdEcwb2pRVXhrSWlzUmxCcmtzNTJDVGZhaHFCNlcvSU1tcEh4VUpHSmJFWkd4aThwZERmQW5UelF2VU9KMnRxVDZlVzBweTNCUzc4V0ZIaDhaNHB3ZXVzTVY2NWM0Y3FWSzV6Zk9zL2x6Y2NacWpHRk5vUWd1TG9oT0tIUUJZVXBVU25pZ1RpaUJER0pVQTB4OG9FT0tReFVqNlFxaU1jUk0xZXA5dmNneWJsTmtLQVFGY0JLUjJTWEtYOHNuUXRyZnhkUmFJblBSMWc0WTNtSnRxdytVVXBqTFVHMWhGWTZzdHJlczlleC9rVXJWTkxhVjJIT3JKNHhhNlpzbmRyZ3NEcGs3OTVkM3I1N2s5dDNiM0ZuL3c2SGNzaWNHVlZIV0NQYUNBSWhHUkRFdjhQeDBTekNVZG5yY1hiV1I5ckMyZzBaR1JrL2IyUWltNUdSa2ZFemdyV1dFQUloSENYTEJTVm51Y0RGVTVkNDR1b1RYTHAwaVoyTlhZcWl3RXFCd1NCZU1Nb3kwRU9zc2lpSnFuWmZCOFJKSkpMMENHd3JtVTZwYjdVc0pLZFJZbXk2NndjVmFKcXFJNWJyVUJURlV0U0FmdlFBZ2tJNWpaWm95NG9CWlhRMDBVaWs5SEE2SVVwK1E1U3VwcHRSS2hMcE9nZ3VOSVRnYUhBNDVYQ2hZZTVuVktIaXExLy9DeHFwbWZzWmMycm16RktVMXlocGRVY1RBbWRrWkx6UGtJbHNSa1pHeHM4WXJYMG54TmlvM25zTWxnMDJNUlJKYWlpTUdMRTkyT2JjN25sMnRuWjU5cGxuS1hUQm9CZ3lzQU9NTVZIcUc2S0pRYWtHYU5FZHdXeWxyNFNrOGs4MnNpcnEvQkZQajR3R3JMVW4zdmQ4UHUraUJLeVdBSVV1WXVTRkVBamlxSjBqaU1lSGdCZkg5cW50U0RsRllxNnNFQWdTYlY0RG5zUHBuTU5xd3Q3ZUhXN2Z2Y1d0L1R2c2NadWFwZ3R0NVpQVTFhYzZBa0ZwQlZxb25NOFRXRWJHK3h5WnlHWmtaR1Q4ak5CNjJNTlJKeTRsbXBJQnJaNjZOVkpRYUN5V0FVTXFxbVNVb05uUnU1elpQY09wVTZmWTJkbGhOQmh6ZHVjc1JtbTB0aGhqS0hSTWcydTB4bUNwNnhyZG5UdWFBMFFpR20xcm5YTkppcnZldEVCcnUyUWJLNktXdnJ2ZzAzNGE5RUl5aTFaQTRPNjl1OVJOeGVGMHd0Njl1K3p0N2JGM3NNZWttbEJUTTZYcUhPNGswZm1Bb0Fnb1ZMSjc5VjNadWxkSlZ1MW5aR1FrWkNLYmtaR1I4VE5DVVJTZDEvMDZHS0pFdE5SbEp4ME5UY0NKQXhTYmc4MllJY3czT055U1JhNU9xWFF0aG9LU1FURmdOQmd3TEdOb3IwSVhYTGx5QlkzQ0dFTnBCNVRHWXEzRm1BS2pOSnVqcmU1czY0aHMwM2hDY0hndk5FMUYwM2ljcS9FK3hzQ2RWaE5xVnpHcks2YlRRdzRQRDVuTUQ1bjdpb2FhS29XbmlnUTBKRXErc0NFTzNjY1RrcHVXOUVpdDRCYkV0Ui9vdDBXME1zakl5SGdmSXhQWmpJeU1qSjh4WXF4YTNYM2F3UDVhYTVxbW9hN3I1ZjNicUFYSHhNS04reWhNVDk0S1lMR0pMS3BPb2huM1hUNHZ0UGF5WGFSYzFoSFpnZ0dSZ3JaV3FYVGJXeXZWUllwV2hTYkcyVzFkM2h4MU9qWkdFNGlRM3YvOTBGWjAxeUtGUXd1dGM1M3VmVnBTSzhDY1BJTmxaTHpQa1lsc1JrWkd4czhJclYxc20ycTFEZXpmb2VkSmI0enVUQkhhTkt5cng3ZU9ZMjBFcTlJVXFLQ1N6V2xZSXFvQVF6MklKZzNTeWpnWGlIUzNkZjVhRGNrUXl3WGxqTjkxakplQVFpTkF4WlNXaXJiN0x1SUd0RmpRWDVWSWFFdmt2UTh4bWxXYmlqYjA2bVNsZm83OEptU0piRVpHUmlheUdSa1pHVDh2OUtXeFNpbWFwbG5tam4yMGtzalErOTdicGpSSXc5SUlybEZMVGxuU1M0alFXdUxHditNMzZjanFlaUliaWZGUlFydll2cERIc29iQ2FrMHZqaXpMSkxTOWJQdFp0YjR3Sy91MWtONW5PY0JyUmtiRyt4Q1p5R1prWkdROFpFUUpaMWo5Y2JsY2g5WFJlK1g3Y296YnhmL1Fjc0J3OHZudmgzV3p4enBDZnR3K0R6cjd5RXFaa1pIeHZzWEpzVmN5TWpJeU1uNW02TnZDcmdva2o4dUFkU3p1UStyQ2l0bUJFQlkycHcrQ1BwbTgzem1PQ25PUG5tZnRjY2ZiQ0VmazlMQVpHZTkzWkNLYmtaR1I4UkRRWnZ1S2Y2c2pqbDBkUld0VHdCNUQybzdua0tza2NCMHBmQThTMlY1MnMyVXlldFJwN0VRSmFqOE43d3BXYlg1N1YrdzVpV1V5bTVIeGZrWW1zaGtaR1JtL2dOQkxaZ0JISGJuYUxjY2R2ZnA5VlNqYVFWZ3ZNYjFmZWNLZEw1V3RWUFVFTXRzUEtuYlNVL1J2WW8weFJrWkd4dnNRMlVZMkl5TWo0eUZoMmJUZy9yUnNXV29idW1QdVA0aXZrODRHT0NFOTdUdkNNUmMrS3VTOW40bkFPOFd5cERkVDJZeU1qRXhrTXpJeU1uNUJzU3FGWFpYU1FsaGt1WUxqSmFqZGRuMWsxSDl3eTRLVFNlVDY4eDRuVmU0YkM2eGU1d0dFd2hrWkdlOGI1UEVnSXlNajQyRmdYVlNDKzBZaFdKYklMbVc4YXZjL2tjajJmaGU5eGpMM25hTk5LSHNzRXo3UmhPRFlYZFlmZEp4RFdaNjlNakxlOThnMnNoa1pHUmtQQyt0Q1ZjbWE3V3NJbXh6eis3dTYzczhTRHlvbVdVZGNmNTczblpHUjhVZ2hTMlF6TWpJeUhoWitGbExHa3lTeVI2NmpmMmFtQlJrWkdSay9EMlFpbTVHUmtaR1JrWkdSOFVqaXArVkttcEdSa1pHUmtaR1JrZkZ6UlNheUdSa1pHUmtaR1JrWmp5UXlrYzNJeU1qSXlNakl5SGdra1lsc1JrWkdSa1pHUmtiR0k0bE1aRE15TWpJeU1qSXlNaDVKWkNLYmtaR1JrWkdSa1pIeFNDSVQyWXlNakl5TWpJeU1qRWNTbWNobVpHUmtaR1JrWkdROGtzaEVOaU1qSXlNakl5TWo0NUZFSnJJWkdSa1pHUmtaR1JtUEpES1J6Y2pJeU1qSXlNakllQ1NSaVd4R1JrWkdSa1pHUnNZamlVeGtNekl5TWpJeU1qSXlIa25ZaDMwRDczZW8zdC9TL2JXNnZnaHJqeEVlQldoVzd6OGo0NmVIZDdNV2Y0L3RVSzE4RjFEdlFSWVErMjg0ZXQ3bEhkN3g3YXcvdE5mL1ZOcWdlRlFHajR5TWpJejdJaFBaaHdnRkRBZFExNERFNmNiWUV1ZmlMRE1jamFpcU9TaUhTcE9Sa2pSMUN3UUZvazZlazlRSnM1MENRb2puUE9sNGtmZzVDVnFEVWdvSjdRVTFTaWxDNkUzWTZYeGFMMjdLK2RVVEgwY01NaG5PV0lVRzFXc3Y3NGFjcWJCRVJCVUs2WjFBZ0tJb0NIaThjNzNqRnBmV0dKUlRxRFdVVXFWLzRjZ2lWSFdsVjRLbmprMWVwNHYyZGxjYXluSklOWitEeFBzMDZYbEZCSVZnZWdlRWRHUHRhYVM5MGVPZUh6S2h6Y2pJZU9TUjErWVBFUXBvT1oxV2dMSUVLUWxpa0k0NWVzQ2xNc1JqaUJPd3BGL2pwS3pmZmNuSlVwMmo5NnZRT2hMVTloT0NRL0Q0anBDMjV6VVlZd2doRUtmVlFKQ2paSFI5NDFzMythNGNtMXR1Umtkazc3T2E2emFHUlprYWZsa01jWFdESUJodEdBd0dpQWl6ZWJWMEJtc3N4aGdRaGZjZUh6d0toY1dtUHFrSXlKSFNwTjVxMEFRRUJUUTROQXFQSitCeHl2ZjYrM3BzYkd3QU1KbE1GcitOaGpTejZaS0dKblJFVmk5WGlWcnRlNW5JWm1Say9ISWcwNEdIQ0FVTVMyZ2FFTkhBQ0UrQlVTT3NLYWxjRXRVcWo4YWg4Q2lKMDVaR2QxSVhVWUdGQ3ZIZGxHRHVRMldkdUJPMmVoUU5JS2drZ1lVb0xXb2xVVm9wSUtDVUlKRjJnNG9TWEsyaFNvK1lrZkh1c1NLUmhXUGEwbEVDMjBJVkdoV0U0S1Vub2RXVXVtQTgyS0NhVlozVU5rcHNkZmU5cE9EeTdrV3N0WXdIWXdiakFhTnloQzQwaFM0SUtvQW5FdFltTUt0blZOT0tlNU43ekNkelpzMk1BKzR0K2dvS2hjSGpjZFI0QXB1ak1mdXpBeUFnZ0MwTlFRVkM0MEhBQ0N0RWRvMGtkcjM5MGtyZFpHUmtaRHlheUVUMklhTzBCWTBUWU1ERjgwOXljT0J4M3FCMVFkMDBETW9DVkpUSWFnSktRRW1TUWdGQkJORVAvZ3IxZmVheHdXQVFyeE1DM251YXBxRjJOUTRIT0JSeklxRnRKODRGaVcwbHNRdXBja0thV0kwQjU4a3RNT005b0U5bVcwM0RNZEpIT0txQzZMRkFoV0pRakZGTzhFSFFHQXdXZzJGYjdYQnU5enpuVDEvZzR2bExYTHB3bWQzZFhhYUg5MUFxYWlwYWJZV0lkSitpS0RydEJTejZrWE9PRUFMejZZeWJ0OS9teDYrL3hwdHYzK0NlTzhCUjRhS3Nsamx6QWc1UFFMUVF4TkdxWmJSUlNDWDBuajUycGU0WjEyZzJNcEhOeU1qNEpVTW1zZzhWR2lpd2VzUUx6MzJNZi9iUC9qTTJ0eTRnREJpVUc2QXQ4K2xoSXJLQ0lxQmJJcHNrczE3OGcxOWVCWEJoamRweGdhcXFFSkZ1OHEzcm12bDhUbDNYT0RmbmxXLy9IVGR2M2VESFAvNFJiNzcxSm80b1l0MFlqQmlPU3U3ZHU0dlFJRGlFS3RyYjlzNS8zOGFYVzJmR2llaExIbnVtTThlaDM1NVUraGpGUUE5cEtvZEdZN0Jzc3NYdWVKZVB2UEF4ZGpkMk9idDFudTNoTmdVbGhFaHhsUktHbzJpS0VFSWdoTkQ5RFZFek1aL1A0NlY2NWpndDZkVW9mT01wdElaQzRYWGczbXlmMTkrOHp2ZGUreDZ2MzN5ZFBibExSWVdqd2VQdytQaDg3VnJXclhtZWs1NWJUbllremNqSXlIalVrSjI5SGlvMGloSVhERldsMkQxMUJXTzIyTHRYNFJxRktFSDhBRlJKdEhvTEtORkVBV3pyOUhFeWtUM1o5aTZBZDlIYlM5VGFjbGhzZGQrRGVJSVgvSmJEdTBDUWlxZWZmZzVVZy9lZWUvZjJlUFhWSC9LTmIzNmRyMzN0YjdpOXQ4ZGl4dFdBWlRCUUdBTStORFFOK1B2Tm80OVdpSWFNaDRFK2NYMEhKRmIxdjR2RkJJMG5ZQ2twS1hqeTNEVSsvUHhIK01Eano5SWNlc1oyekliZG9sUWx5bW5FQ3lFNVpNNE9wZ1FsYUZHSWhrSmJyTFVVMm9KUm5OaytTeE1jdm5iVXZpRTAwVEpXUzNUNzJqUWIrTWJqNXc2bFBhZUxVK3c4dHNNSEhuK0dtYXI1OFp1djhwM1h2c04zcm4rYkdkTm9lU3RScXJ2UWVMQk1ZdTlEWmsrME5Nakl5TWg0eEpBbHNnOFZCV1d4UzkwVVBINzFPZjdGdi9qdmFWeEJWUmsyTjA3amcrQ2JSRFNUV1lGbUlaSFZRQWp0aFBhQUNEVW4yZEo2THlnbFM3OHZ2bnNrekJCeEtLVXdWcUcxNEh6TmJIWkFWUi95di81di96TzNidC9nclZ1djRaa0ROZEVVSWJCa1ZmQk92TTZXV21wZm9acnh2c2NKSmdOdHVRZzRzSEJJTEJrQm1oRmpubi9tT1Q3eG9VL3d4T1VuQ1pWaWV2ZVEwK096MEtSdTBvQUpsZ0tMMWNuNVMwY2JXSHkwSnhjbk5LSHBiR1B4RUZUQVlCQXRVWkpyRlZiWktKR2QxUmdpQ1JiajhjWlRVMU9waGxyVnFDRWMxUHU4dGZjMlAzamorM3ovMVIrd0gvWUlCSWJGaVAxbXIyZDdIdFlUV3VsL2RGcFd4djRja3UxdFJrWkd4cU1LQS94WEQvc20zcjh3K0tCQWxadzZmWWt2L2RhL2d3OGwxbXd3R0c0eU9helJwZ1NsVWRoa0MyaFFXQlFGWUZHaW9xTVZ4ZG9Tc2JRbURPdEtyUXhLR1pRcTFwZkVFaXlJUnNRZ29oQXhnSUZna1dDUllGQ1VhRFZBS1FzUzcvRkxYL3d5bHk5ZlFXRTUzSjh5cnh2YWVFTjl1OW9PSnhGYXRlNUxub1l6V0U5a1YwaXNUb1lEQm8zR1VsQXlab3VQUGZZSmZ2ZHovNFJQdnZ4cjdKUzdWSHNOekdHNzNFVXFRVFVLTGFZanNDcEEwelRSeEthcThZMUhncUJGbzVYR2FvdFc4VXFGTFNoTWdUVzIreDBQM25sQzR5aFZFZFZpQWtFQ0lha29DbDB3S0VwQ0hRbnJ1ZDF6WEwzNEdCZlBYS0tzQythSERWV1lJMGlLaHRERzhPbzk4TnErcExvb0M5RjlMY3N5TWpJeUhtMWtJdnRRRWRYdFlOblpPY2RuZitPTEdEM0NPNFgzR3ExdHRLdERwWGl3Yld6S05FUEpJaTdsWWhJN3ZveG1Cam81b2tTbkZOV2FIcVR2RXBJRFdVaG1DYUs2N2ZFTzlPSzdLTFFVR0lab1NnaUc0QXloaWVUWTZpRk41VGx6Nmh3Zi9mQW4rTWlIUDBxaEIxeC85U2NFRklZQlNtbktRWW56MFE2NEtBeldxaVFKUHFudU1wSE5XRVliaWF1UDBYQ0FkeDZEeFdLd0ZKaGtSSEI1NHduK285LzlqM24yeWdjNVBUeU5iUXBNVTFLR2trSUdhSzlSWHFORVJkTUJrZzJzOG1BRWJRM1dXTFRSb0JJUmxZQVBQa1k0VUpFcXR2K0NoTzV2cFJWS0s1Q0FLRS9RRXFPUGFJa3htMFVJTG1CRW80UEd6d1BHR2M1dW51ZUpDMDl5cGpoRG1NSmVjd2VMN1I2OExJZjRrT0lYV0JzRFJTL1gwZ3FSaGR5SE1qSXlIbVZrSXZ0UWtUeXVsV1YzOXl5Zi8veVhVV3BBQ0NwSk5SZGlGWlVtbXhUZ2lqWU11K3BVNi9KQXBlNTBycXRwZjlUaTkrTzJvOUVoU29aYmlTMllSWW1LRTZzWHZCYzJ4dHRjdmZJa2x5ODl4dUZleGExN3R3a0VuRzhZRFRld3BxQ3VhMElJakVZRlRYT1MyVUFtc2hrTHFEWENmUVM4RXdvS05vdHRpakFBTkp0czhTc3Zmb292Zi9iMzJBcW4yWkp0aG1wRUtRT01OMmh2VUVHanhhUk1JR201R0VPR0lDb2c2VytVcEJCNGlhTDJ5OVhQeW5hVklrRUg3ZU01a2E0M3EzVFY0RUVIZ3pTZ2FzVkFEZGt1ZHpnMTJ1WHNxVE9NaGdOdTNIa1RDQlNVTkw0QkVjWWJXelR6NlpxYWltUEhnc2htMDV5TWpJeEhHOW5aNjZHaWRkWklDUStVQStYcDdGR1Y2aVV3U0dHc0ZHaEpxa1FGOTAyNXRUWkdRT3YxMFkrdnFlTTEraVVyNWVyMkxzRkJqMFZJL3pLYWF0Wmc3QmlOUllubndybFRuTnE5eU03V0piNzJ6Yi9nejc3Ni96SVA5NWpOSFR0Ym04eXJPU0xSZmhHYUI2blVqUGNSVkc4OUkrMzZLbjFYeVpCZ29FYTRKcURRWEN3dTgrbGYrUXd2UFBkQnR2UXV5ZzBvL1JBdElDNkd0L0tTRWhSb1NWcU1RRkF0NlV0U1ZaVWNMMFBSdTZRc2xhdFkzZTUxd0t2UVJWc1FpYUcwUkFRVkZFcWd3R0IwUWVFTlZkTWd6cU05N0pnZHl0MkNZc3N3SEE3NStpdGY0NjdjWlVBQkRLZ09wOFRoUFlVMVdKSlVaL0tha1pIeHk0TXNrWDJvVUdrbU5wemFQY2R2ZnY2M1VXb1F6UW9vRWZUQzBZdUFRbExFZ3VTQXBXSklyaWdab3VmczBTdVJ4WGRXUytubC8zbjNwZTdrd3VtY0xZdFZDMGJSTkM3R29oWEQ1SERLZkY1VEZtUE9uYnZBdFd0UGdmSzg5dHFydUJCd3RVdkhCVUlRSkp5UWgzNUpPcHp4ZmtWTWpkejdJVFVKbGV4aFN3WUlDb1BsNnZoSlB2ZXJ2OG5IWC93a0F6YTQrOFkrTytVcFRMQW8wVWdJQkduYmNOU0NTT28vSFFWVlBTbW1XaWpwVWUyK2kzTDFzM1o3ZDY3MGU1TFQ2bVRLWXpCWVl5aDBnUkl3UVNNdTRLcUcyWHlHS1JYWG5ueVNvUzY1K2RhdG1GSVhSMEFZRkNWTkc1VkVMVmRSMjIrUEk5MFpHUmtaandxeVJQYWhveFZoSmtMYVFna3FMREp3ZFpSTkJaUzBoTFkvRVIyWHdVc2Q4L3ZxOXZaZSt1VzZlMTNacmhvMERlMjB2N0RGalJnUGg0anplT2NaRm1PMGpoN2dncUUwRzN6K2M3K0ZLUlgvNWl2L0R3ZXp1NUZ5NkNIT3o3SFc0cHc3Z2N4bXlWSkdST3diN1IrdE0yRzBIVFVVdkhEaFEzengwNy9OdFF0UHNmZjJQZHpVY1diamZFeFFJRld5RzQvZS85SFdOaTB5VnpNako4Ly9GdXVTS2Ivem0yN0QwaTA5eFJLY3J4RThGa3RSR0V6UkxoQWJDcWNZbVMwT2J4L3kwdU1mWkZ5TytjTy8rUXFlVzVTTU9Xd09NV2o4bXRUUWJkS1NUR016TWpJZWRXU0o3RU9GNmlJU25ONDl6eGMrL3p0b1JuaG4wS3BFTUdtL2FFK244U2lKa3M5V0l0czVZNzBYRzlrSHZYc2xLRldqbEtNemsxQ3RqbmR4SGVjY1dtdUdneEhHR0txcXdmdUFMU3pseUhMNXlrV0NGMzc0Z3g4UzhBUnBBM01KSWlkSlpUUGU3MURxcUhWTlRQUWFYYm8waGc4LzhWRis0NU9mNS9GelQrQW1nVENCa2RsZ1hJNm9YSU5USGllT29GUDcxWXFnSElLay9oYWRMWlVrMjNSSkRwaVlYdjk3Z0h0dnkzUytsbzNybmdEVmFFVUlBZWVhMkMrVUJ4MmlhWU9HUWh2bWt4bEtORHM3TzR4R1ErN2V2TU05dWNmQ3RReTZTQVlyMTg3SXlNaDQxSkVsc2c4WnFuWG82dExPdG1GMFZFcEZHNkY3OFI3YlZMWHZqWVl1enJ6QXU1WElPbEFOblExdGFITm5RaHYyeTNtUFVnYXROZDc3bEJITU1Sd09HVzhXM0puY1kyZjdOSi82MUdlNGQ3RFBuLy9sSCtGVFd0c1lJNWVGRlVGR3hnckNrYWJhU21NTkdzT0xUNzdFeHo3MENTNWR1TUwrN1FscW9qaS9jNGtoWSs3czMwYkdRcU5xOEFHbHdCcURpSTlSTzd6SEtKMnk2U2tRazlacFVTTVNWRFN3NmRCRkFEbW0vNnpaYm56YjUyTkVoR2d2dTlEUUtLTVE1eEh4T1BIVVhoQW5LQzBZTVRDeG5CbWY1YzdrRm9qd29XYy9SQlVxL3UwLy9Gc01jeVljSnBleUJIWGtGakl5TWpJZWFXUWkrd3NERGRLRyt0Rm8wWGlJSmdUSjFsVko2eGdDY2lTLy9Bbm43ZEFub2lxRzNrcm1ERnJBbzFNcDZLQUlpbTdDMWtqOFhXS2dkMzJFWExiT2FlMDFvK3B5T0N4eEx0QTBVWDFyVFVsUmpuRjF3KzIzOXhudGJESTUyT1BLeFd0ODRiTy93MXMzM3VKN3IzNExneEJVV09TV2IzR3NXZXo2MUp0cmQxY3M2a3oxNjI5ZFBmYXlKNjI5RGIyeUw4djNlOFNVZDgzK1MxaHNWeWZ1ZDl6MWwwMUgxc1dhK0dsYUZ4K05IYkdtRGxPYlhUMW0rYmdIdlBoUzBIK2RKTEVGQldOS1N2N0piL3k3V0Q4Z0hNRE84QlJLYSthVEtRN0h4dGFZS1pQRnlWSUtXUlNJanlsbmpiSGQrVnVUbmhpV1RxZStzZWlIQ3pPZlhvSUNXWmdHQWVpZ1U5aTdsSm1QUlVJVExUbzVmZm00SnNSVHV3YlJvSzFCS1kxMkh1OGJ0TllVdWtTajhkV2MwMXRucUtqWXYzMlBEMXg1bnNZNy9zMjMvd2lOeFMvWnlkTTFnRGJCU3Z0LzZQM2Z4N0h2YU4zaVVsYTJyeG1iVk84YWZaT1ErNTF1M2FXbC8rWGRvaHVyN3RjZjF2Uy9CN2puTlllL3B6S2lIei80dUhFaU9qcXU3Ly92MVR6cnVERXo0a0hIbldQM08rNWRyOWw1ZGRmbFhkcng4VGlUdStWeTZkaWYyZ0NXOGROQ05pMTRxR2g3aEdWNzV4SmYrUHp2b1JnVFhJR1dRUm9vUGRIejJDSEpGaldJUW9nT0txam9CS1lRU0dwUWtVNWNoR3M4d1lOM2dkS09xT1lOaUdZNDJLUnhUY3p6SGdMaWlZSGRIU0FHVFlHaWdHQW9peUZXMnhqRVBaa0pLQkc4Y3lBbUpzOFZnNkJSd2JDUUxJTnZIQklDV29GT1hqa1NQRnFCdFpaQk1XSzZQMGRSY1A3TUJTNmR2OFNmZi9YUEdOcVNPc3hSdU9oVDAvOTBWYWRSUnNXRURkSzZzQ3hjMExvaGZ1M3hKaEp2bzlMZkJTZ0xsUEh2TGdGRlFHdXdSZHkxSGJpaXpOeWc5UkNGUVNtRnRoNVR4Tk5KNzdxcUlJM3RHbU5MSk1Tb0UxcnJKQmxiM056aS92dC8wZjBWMzNYN0dIcHByL2k3WGlwMU9wTWxFcUdXUkZpbE1WWkY1NmJWdW5rSGlPK3VKSGkzdUJjVkphRXRLZXcrUU90d3RLeHplSTlRb01aMGZvWkRNOFJJd1lBeG0rend6Ly9wZjhxMm5HTGt0eWg4Z1RTU3VLVWd1cUVKRlI2UFFtRkVvUUpvcHhBbjZHQmk5aTJ4dU1Zakhvd3BNTFlraU5DNEVQdVVIaUV1OWpNZjBvU25vOFFVM2Rxd0IwTHRrY3BUVXJKaHh4aHZxS2R6TURXbVVGaGxFQjlBRklVdDBjclFCRWN3Q3AreWh3VVJCSU1XZ3drREpBZytWSmhDNCtlTzJhUmhYR3l6T2RqQkJjQXIzang4aStGNFFCWG1GRnVXNE5JQ3M5UW9MeGhzU2hTaGFOK2VTVzJzLzQ2T05vL2taYWZiZHl6cmQxWW1ldVIxc1c0Vmh0QjlDNzJUeHJRckdoTjdWR3J0Y3VTY2lqYTRYMnZab1ZsdXhMMlAwc2QvdXFlT0NUTG9ydHhlZlRHVzlQdGRXdXZFeDE5emRZNjVtK1VlMmZiUzVlVm9hNTV0MGtuV2xkSzdaa0dCb1VpdWpmSGNiY29QbzFyVHREYVQyK3JvY0hRWit1N1FobGxzMytiUitqb2F6VHhwRzlNL2F3MUtTV3hHdmJyVHZiOTdGYmo4V1cyVTZYVmJyVEJHVTJpZHh0cjJpUmNmNmQ2R1RxZUxaV3gvcExvazlZejJKdVRvUzgzNGhVQ1d5UDZpUVJJcFU2M0V0TFU5YlZXTzdYNlJraGlCeGNyeEtNYmpNZDRMSVFTVWpkcVpyd0FBSUFCSlJFRlVVaFJGRVpNc0tLRzBCdStxUkc0VTFpd0dtYmJqVmsxRlZjOEp3YUdVVUpRR28zUU03aDdTUkhhaVJIZ1pmV21NRXMzazNweGh1WWtLVUtpUzA5c1grTFVQZllhLytkYWZvTkhIeXd2NjExUUJyWFdxTytrRytrNW0yZkw2dFN2cFpIY29zVTZSOW1qcDZqdUVrQWcrbmYyaUFyUXhoS0FSQ1FpT3BaeTd2WUZPV2dHZFhuUTN3YlBzZzdOY2g2czFHdC9HUXNJYXNTNjlhQ3VKanFXeEJkNTduSVRPUVZBVGcvZUxVK2pGWE5jMXIzV0pLRlNhRkVVazJXdzZuSE1zRGcrTDhGZEs5MDdXZThnanRxenZIVkxIRTFtakNjNnh5MmtjOFB1Ly91OVRWa1BLWXJDSVNpQStyWGNjdm9zWVlGSUFnWGpQYmFsVCt3bytzREhlUkVRNG5CemduR013S0NnR0Z1OEYwV0RMbUwzTGEwOFQ1bFRPMHpRelBJNXFXbk42ZDVmdHpXM2NyS2E2TjhkVk5jTnlnNTJkTFc1UGJ1Q3BNWlNJMHlneGVOR1kwakFjakptNFNWb1VSVW11a2Ric3lLQkUwWGlQTWdwTlNhbEtyQzh4dnVEMDhEeFBYM3FHNzcvNWZkNmV2Z2tXbXFucjZxMnVRNklobHBoa3BjMFI1anN6aExhR2xsN2RDbkhvYTErT2Y2bXBOZXRJSVF3S0c0UmdpSVM3MTZqWEhyNkdjM1h5TWxFRUhTWGtuUVI4cVZUSC9KNm9uRXBFSlVtbkYyTkVldi9pajl5VDdyWGpQdmxhN1l2OThhYmRIdGQyQ3FNc1dnV0VFTWxwVW82MXBqTHRtMnFKL21ycGlmdDcyc2d6b2ZldTByZ2duYXkvMnhhV251YW5JVTdzVTlYN1MzY1hlMmlFa0JMaExOQy91L1o5dEF1V2RabzFaUlVFV1VTb0RJczZDVUJoQ3dDOENDRWt2VW55NFZpV1NLK1c3L1NKTW40UmtJbnNJNC8rUU5JZllXTVhuRXdPOGQ1anJhVm1FaU1CZUkrYkh4QjhRMmtUYVRaUlRoQXpmamxDbUNGQllVb29pb0xCWUJzSXpHWXpadk1wU2d2Rm9JaFNwUGVBdW5hY1ByM0x2WU05Z2hNMk43ZjU4cGQvbCsvKzhGdmNuaHdRRXkwY0g3bEFVdVlpU2FOWWxFdEl0M3RMMUpSYURJWUJ0UmdoMjVWOThQRVAwU25iV1ZRNmVkZWVQNTZuaTV5cllucGZMeFVnYUN2b0pJa1ZXUWlyckNtWlRXc1FpMGpBaHhoS3JTd3NJUVFhdjM0UnNxcm1YVlY0UVR0UnJqakRwZnRzNzdkMkZRREdHQXBqVWNwRUV1cWpnNTZreDE2cTAzNHowakVzRlQyUC9tS1FobzBnaE1iM2RvWnVZYkFxN0pGRmNmeXk2d0VnWUFiZ0pvRXRzOG5Nei9uazQ3L0tTeSs4UkppcUJTTjRRQ2lqcUpKWmpMYUtqZEV3OXFWNnptRTF3UllEblBLRUp1Q29RUWRVQ2NYSU1DeExSakprTnAxdzk4NU5WS1BaSEd3eUtrZE1xbnZNRDZac2JBMEo0ckRCb0l4Qm5NSDdnRFF4OTUyT2MyNWNhcmFMcUxDd254ZWxDVDdLbDlyMHViNzJiSlZqSHIvd09COTg1b1BzL2VOTkNqTm0xa3pCcEhXR2krOWlubUkxUy9kbVRpS3QvZS9oNk4vcmVKRktURlVCRXVQMDFpUkN0a0ppNHluQytxN2VMWkppKzJ6YmtPN1lXbHFNdm92U0E3NXRxMGZhNjZLRjl1OXBWWlBRbDZlMmZYYkozS0ZkRTZlOUpYM3gzZXEyVndkOXlTTXFNZHVWN2IyVmhRaTQwS0J4S0tXUy9DTmV1STBjSTJHMXQ3WDNxdGErcm5lUDVmT3Zuak1wUzdweWVkRVR3S2JuVEVLQzlybEM3em03UXZXYVMvdDdMWXY2VGYxRGE2TFdVQ2xxMThURndTcERUcmZzL2VLNG8vZmZ2dEdWT1U2TytUdmpvU0VUMlY5cUJBWkRnd2hzYkE0NU9Makg1dWFBT3VXSjF6b1MzRGJza0VqTXZSNGtSTktuaGEzTkhlN2V2YzJ0TzNPR2d4RmJXMXRzYlkrb2EwZGQxOWkrU084QlVCUUZaVG5FT1VjMWp4VDBpY2VmNXNNdmY0US8rc3MzYUpYaFhZQ0cxWUdqTndLcFpQTzBVTFJIZnRvT2dvdkJWQ0l4VTJFeEJrdUk0ajBKSFEzMlNOU0s5Z2ZCZHM0V2cvTWU4Q21XYVZyeHR4ZVJLRFZ4NGxBVWpJZWJLS1dZenc0d1J1T2JtcFl1SHlkVmJjZGZTVU5wTnlHa3NYK0ppTXZLNGVrM1l6WGVCYnozTWUxdmtyY1pYYUMxcG5iTm1zRjRNWEJiWGVERkUwSmtoT0tKc1VrVGpyejlWYlhib3RKWlVJOStQcnFGamVpRFFCdndVN0FZOEladHZjUG5QdnQ1bXNZenNodUU1cVNaWmtVS3ZtWlhyVFh6YWtwUWdlR3dCQXV6WmtJZ01Od1pVRnRQd05HRWlzYlhUT29KKzdmdnNIOXZqOGxrd25nNDR2VHVLUzZjT2NmV2NCc1ZoQ3JNMEFQTGFIdUl1RUNvSXEwYTJnRldsMVJWRThsemNHZ0xJbEh0MlVxSyszZGRGa084OTBoUWFHVlFEaW8zeHc4Y3c0MlNGNTk0bHUvKzZCVnVWMi9INXBJSWp6Ymd2TVJGUng5OTBzVEszLzE5K3ZVWDZEZldsWDE2N0xQMyswbnJpLzdhNXdpcFR0Zm95ZE5YTHI1YzNwZG5yS3FJdStkZUp1Y2lDM09HaFVXcUpxenJ2eTJ4WCsyWHErTGI3cU5YSHJ3dnlrMnJiNlVXNGxwSmJDOUZkQWxJUndiWGo0L3RzeXlXd3ovZCtNRjkxdG56S2VoSlVXVzFIYlViL09JK1Fyci9maDEzaHlRTkJDVHRXbXBQeGhSeHJTQzlVVEtFbUdvOVdvY3YwRjljOU1kTldUVFB4ZTBjbGRBdTNYZkdMeFF5a1gzVUlUcDF5S1RPN1dmckl0QzRDcVVDemdmZXVQRjl6cDA3UlZGYWxBa01Cd1Z1UG8vT0pjRVIwakpZS1lVMlVlSjRPSnN4SEJkc2JHNGlvcWlxUTVwR0tPeVFqWTBSMWF4K1Q3ZGZHRXRUMWFoa3d4bWMwRFNCVDMzcU0vemxWLytZV1pnUnBTaXJLdW80S0p2MDJNdmpTNXZDTjFyWnRlbzQzWkhaWkxPbjNCb0owUElzM2tsOFZWenBLNjJTMUZvaEVoZ01DcXFtV3BxWnJRYXRDNUFDOFNtVlJhV29wRUtqRWQ5RXRhNVYxRzU1cUZ4S0dhb1c2dnF1WkxsYytyU1ZzS0lUTTlwQU1DaDBwektYb0FoQnNBeTdlbHBnRWJncE5OR0dkS0NIR0dNSXdlRzlqK1lwV2hhcXdkVko2c2hNQkl2VXhWSEJ2TERGZUVBaUs5RXVkaVp6Qm1xQUY4OFh2L0FsTmthYnFJcTQwS0pnbGJCMmg2dEZkOUdyYlNodHFMMWp1REVFTFV5ckNiUHBGRzFnT0I2aWhwbzM5OS9naDIvOGdGZSs4d3B2VG04Z0tSbUJSVk5FRnRxOTl6UG1GTTlmZTU0bkgzdVNyWTF0aW1BNVZaeENuRURqUU1OQWc5YUtnUzF3S3VBa1lNUXZ1S0lRTTRxbFBxQnNpWk1hNTJDZ0ZVWnJqRmY0S2hDVTU4TE9lVjUrNmlYKzdmZitpRTIxd2RSWEJBS0QwUWczbnh3MWhCV2RKdmQyZGplTGlsa2xmRUVuU1pvQzVkRmhzVStRMkFzbE9iREZOdXFQRXVYMEhsdjB0UTZodmM3cXdxakg2YnpTeURHbUE5Ri93S3o5UFpadXlZeEdWdnNSTEpzTDlVUjVVWCsxUXNoVnYrSDNqd3RnRE5yRXNUVktEejFhTE1wWlZJaTJ3RWNrZnljZ0x0UTl5allMR2ltOTE3YllzWWNWRXhCSnY3MG5jdFpmUElRVlNUM0w3L3JJUWtmM0ZneFJncXFWd3FJdzBpNVJVclk3RnZiU29Sdi9BZDlhc2FadFhjc0pDQnFEalJuMGRDRGdFK2xuc2RoZlhjaklmY3BqZHM5NHVNaEU5cGNXY1ZBWmpVb20wejErOE1NZjhqLytULzhEZFhQSXZEcGdOb3RtQnVQaEJrb2tTZHlpZXR4YWpiVVdZd3FlZS9aRm5ycjJMQjk0NWtWMnRzK2h0TUZZVURyZ2ZRcTk5UjRVeGQ0TDArbWNvaGhRRkFVK3pKbE5EM2pxOGFlNWZPbHhmdkRHWFRTR1FPaUVEbjIwYXFpNGltL2RWVm9MV1FNRWxMaHVYNFZORWxjTEFwYTZOOEFxRmtRcmZ2ZHBnRmJwT2xxbHlUMmhxcXZ1N3hpQ1ZLTkRpWWh0NlF3R2paVUNUNVFjam9jYkhNenZNQjRNTzlWLzk4N2c2R1N3VG1LMEtpWHJEN2c5cVhCbzJvRytyWmUycHBiY1Mzb25TSXVaVkJZeGZnUXVPSHhTVStwMEhSdE11cHhIaXl3TFg5ZW9qU09CYU85anhSVG1BYUNBYWxvelZtTzhLRjY4OGdMUFAvMENOS0NWeGJtQVZVZmJaZ0FXWXUzakVWVEErWnFCTVRoeE5GSXgzQzRaakVyZWVQTU52dmwzMytUcnIzNk5pUnhTVWFHQXdoUVlvNmliT1pNUTM2M0ZNbEFEM3ZKdmN1djdiL0cxNy84dG4vandKL2o0aXgvSDE0N0JlSUNxTlUzbENmV01nUm1pdFVhM1liNkNTbzZCSGkyS2ZnanBFT0lmS25sRWFxMFpVcUJGbURtUHFZVm5Mei9EdDc3MzkweGxSb1Vqb0doY0lEbzk5U1NQSFh0c0haSjByNW5wWkw2ekxJRHRsZ2tTMlVHN2orbjFzMEIwYW96T2F1bWE2MGhqNy8wY2tjYjJTVkZZdEYySnFxUDBERWZMSkxkTCs2K1dGb3ZyaUhQWGRWYjdWcnJXUWdMY2ZnOHNaVTNyRTk1MEVwV3VwNTJzWkF1T0k5VWd4ZGxvbmEraWsxR3MrVDVGakV2Y1NIZmJaWTNENFZ6TTQ3YW9LZ1ZLbzR4R2xLSk9tcCtsY2FRdk1YNXZsbUc5QjE5RFlsZkxib3hhdkwvU0RCT1JEMTFWOXAydDB2SWJuWndTRjlxMk9HN1ZITFd4alRYVjRJamtsYUNTTFV2ckZoMmlWS096MVZuelNLc0MvdlNZQzJseGE2S3h6azhoNCtlTlRHUi9HZEIzZkJJTlBYZU4yZnlBSURYT1QzanR6ZThTcU5EVUNJNmhHZkwyL3R2RVR0bXFlQ09oYmIxMmYvaVRiOE1mRzNiSEYzbit1US96MlU5L2laYy85SEVVaHJkdnZNM081cG4zZE90S0taeHpGSVdoYVJvUVMxa09nWVlQdi93eGZ2REd0OU85OVZYUVBac3MzdzUrQnFPR0dBWm9zWkFraW80NVVOSzZPU3lJYnN4RHJ4R1VlT0tVYkJQNTFVaytFaGdYSStwUTRmeThjOFpRdlRTbE1YSUJ5WmtJbEpSQWdXYUFaY1RaelV1Y1BuMkdKeDk3REdWcUxsemE1dTJiUCtZUHZ2Si9jamlab2JESE94VWNSMXE3aHovK281TC83WkFSclM5NkpCNURkalozdUhqdUlyczdwemwvL2tJWDUxZkZ0RlZSVFNjT0VXRTJtM0J3c00rZHU3ZlkzOTlqT3AweXF5Yk1tUk1rVUZEUzBCQndhQnFRRUtWeHE1SVlpTktYeml2anVJZDZONGpodGdhTWFQRDgyaWMvZzNhYXdneW9KelVqdTlFTG9QcnVFTktrYkV2TndmU0FZQnFLRFlNcTRmV2IxL25xTi82S2I3ejFUYVpNY0RSZGU1bjVLZmllZWhYd05IaHBHSm9ZYVdCUDl2aktONzdDVjcveGwvd0h2LzRmOHZqdTQ1elpQSXRUZ3B1a2hDQ0JHQkhDYUxRS0M3V3JMSnRBVkkwSHJWRmFFM3hjY0JnRnBUYUlXR2FUaG5PYlozbng2b3Y4OWV0L2k2VWc0SENOaTBTMlc3OUV2L2NpeGQrTlM0MlkycmV0Njc2SlM5dWZJcjJJenh0VnVlMXp4eWdBOFRpZEV1Y3FBb0ZHb3VxM1c4c3NPWXN1eVBLU3hHeHBuOWIzM2FBb1dHUGc4bzVnQ2NTWUl5MUJkRGlpWTFDUzNTWDUrZ0l0MmUyV1lkcjFuZ01JRmtSMXRkZ3VHUTJMWk40bXRkc2hKUmM0UTBtQnhXQ1VwYlFGcHJCWWJWQkdSOGRhaE9BOExuaGMzVVM3VHp4ejV0emdUZVkwSGFFS1JDMk9PUEFFU2dvOGdwZm9XTFpjcHl3VHRYZU5FNGpyS3JweEtiYXM5djFacnhPUmo3L0dGcU1vS1NneG5HSTMxb3Nwc2RaU21BSnJMVnJacEJVcUVSRnFYMU0zYytiektkTXdaY3FFaGhxTnBxWmh6cHlHSmduWVV3cDByYW5DZkxuNXJBb04xa2hrVDNyTWpJZURUR1IveWFHMVlqUW8yZGdzQ1ZUQWpFQU5WTXpxUXd5ak5NUUtVZFh1SW9sSnFobE5nZEVqOXFZMytLdXYzK0ZIUC9vUnYvbUYxL2prSjM2ZE0rY3Y0MlpoWlpKNWR5Z0swOWs3VFE5bjJGS3h2Ym5ON2YyZjhOSUxML092L3VEL1FOTFFIMWoxMm84VVVDdk5lTGpGdU54bGFMY3dxZ1N4U0FoWUMyM2toMmhqYTVPeXlxRHdhSm1udEtNR0lTWnhpQkVPQXFKcUtqOWwzaHd5bmUwemEyYngrZ3YzZkVRTTRxUDFuTUl3WXB1bm5uaWVqNzMwS3p6ejlFdU1CNXVVNVpEQ0NEZHZ2YzY1eXh1OCt0bzJmL0xIZjhnOHpOTUVDcDJUQ0QxcHlXcTVibER0cER4dEVLVVliS3NOcHJRN09NTmpsNTdndVErOHlHT1huMkJuY3lmWmxXbTBzalJOVEZoaGxRYWowUkp3NGlBNFBJRkNHK293Und2b1FxTWtjSHZ2THRkZi9SR3Z2WFdEdi8zdTE0a1dublZxWHcyS0Jta0piWC9DVklBMFNSTGFFdHIzWUIrTFpzUHMwSGpIWjE3K0hOdmxGc055Zy9yQWdUZVlnU0gwaUt5b3haTGh4SVJjcXQwblVBNUxEdmIzTWFXaUdBLzR4OWUreHgvK3lSL3lkdk5XUzhzSXltT01pZEVyUXM4eDBjQndPS0NhVmpRK090aTFnYTQwbm9xQ1AvL2JQNlY1NGRjWlBqV21MSWRJdGZDcURpRjBEb1M2VXhrTFFiWFJDMktxMm5JNFFCbU5heHkrRGhUR1lteGF1amhoT0I3dy9CUFA4M2V2L3oxRE5Ob0dEdDBoblhVSG1sS1hqUFdJa1JwUVNra1pMRHBZdEN3aWJmYVZ0NktpQksxSVd5T1JDb1JPeXEzUVlqRTZFaWtYR2lvcTVreVlNcUdtaW82T1BWSzFWcmV6enV3aGpWZ1d5M2x6bmlJY1A0MkpITS9TTEpxU2RobnZjRGhxUExWMk9PTngyckZmSFhTa05yWmFTZnVINkM3V0o0VUNTTUJpS0lraDd3d2xGc1dBZ2pGanR2UVdwN1ozMk5yYVlzZHVzTldNR0lUb1dhOVNIT1BXWVVzcGRlVCtZeXJsMkRZcTNUQWIxQno2S2ZjbWg5dzdPT0NnT21EQ2hEa1ZOUTAxSGtkRGc2T1IrTjZXNnZXbkFYVk1IMTZTWkxiRXZnMCtGblZWUTBhVWxBd1pNR2JFN21DYjNZMGRkc2ZiYkpSRGRJaVo5SXdZdEVyWjlDQks0b24yLytnb1RJZ0JQUUplNnZqRXF1SFcvbTJtOVlTN2gzZTR5ejVUNXVsOUJ1cmc4ZGhsODZoMTVnYnRObG44ZWF6d0llT2hJQlBaaDQya0VsUTlZNjEyc0lxZkpNVlNmWVhiOHI2dHpWZm5xZHBmYWlzSXdUR2JUOUE0QWpXS0drbmV5ckV6cG00cFBhbW5Ja3JYYU1OeldTQndlKzkxL3ZkLzliL3d4aHZYK1UvKytYL08zclJtT3Btd3RiVVZ2YmxuOCs3ZWpWbVdsSFQzdHhSR3pHRTFCRkVNQjJORU93NFA1NVRGaUVzWHIzSm04eHkzRGw5SFl3bDRySWtEajlFR0h6eGF4YmllV3h0bitTLy9pLzhHSFVhNFNsR2FZWnh3ZlB0TTBwbitSOVd5UlFuWTBDU1RoVWhpRVUxUUFkR09vQ3VDbW5Qenpodjh0Ly9kZjgzV2FKdUQyU0VLR0pZajVyWERVQUtXc3h0bitmaEhmNFdQdnZ5clhEaDlsVUkyQ0w2STRaUXFqemV3dlhHZVVOZG9OV0lXQW41cEZselhObzUrVnhDakpYanBKb05ZRHRDcE8yOE5kbmp4MlpkNDhma1BjZTNxTlZTd2FER29GSVpLdTliclhWTW1WYitXZ0cra2s1OXBDUVFkVUkxZ1ZLSXJJYUFsY0dFODR0S0xGL25vUy9CN3YvZFArY0gxSC9QSy8vZjNmUC9WNzdJM2ZSUEhsQ2pMaW1sVmRiSWtjS0Vsa0RFdWNwZGY5ajRTSVdOaW5GN3YvVkxiVVNpOGI3Q1VQUGZFODR6c0ppWVkwSmI5d3dOT2pVOHo4M1hMQUJPQmxxVjZGVW01dVpKeG9SSVBJaWtNYytEdS9oMUdXME5DNFhqajF1djgzMy80ZnlIR1VUTkxkTlFSSk1aWFhrbzZBT0JoUHFtV25pOFFPdjFIVGNWUDZyZjQ4Mi84QmRldVBRMmlxYjJqcXVac0RyZHBNK0MyRVRtQ0lxYkpWUXBSOFh0UkZJUVFvMkZvcTZNOWRETHphTU04TlZQSHBUTlhPTVZwN3JCUDdlNUZZYXozS0ZFTUdJQVhmdVBqbitheE0xY1pNYVowQmFvR0s2YUxrQkNJRHBJT1FWUTBIREFodHQvV0J0SHIwQ1Y4ME1GaXRZMVJNbFJBU3MvZDVpNy84ay8vSldmSE83dzl1UldkYTFROCs2S09PcjRhWVMwMHlaWXpTVHNMTEplSzgveitSNy9Nc0M2N2Q5a3ZWN0c2M1FURHB0NWlPcDB5bDRyeHVRMXV6bTR5S3h1YVFjTy8vb3QvVFVsSlJSM1YrY2xtUFNpMUdKZmJ3SzZBTmJFK0xKb0JCU1VGTyt4eXNUakgxZE5YMmQzY3dZb0JEenBvaHI3QVZncnJIMHdRNEV4Z0l3aWIybkZoS0pndGpkZUJ2Y2xkM3Jqek5tL1ZiM0tYTzFSWWhnUnExVEFOazA1SllVWWFmeGhERjBiVEZVbmo1VHVIS1RRaDBQa1NLQlVkSkVOeXVHcE5KVXlLYm12U2VLVlNIVjNtRXBmc0JjNmZQY2Z1NWhZbWFFSWRLSUxHVkJybFlsc3lvbE5vdklWcEI1Q1dGWEgraW4waUlMcUl5WFMwWjdNY0l4dENPQmVvd3B5OXczM2V1bk9UVzNLVGV4eWkwTXlsSmlBWWJhaWxpV1oyclkzRENlanJQak1lTGpLUi9XVkU2OUFBTEdhRFZ2cmxpV2xsMjMwYldqVjdoeFZwb05JTkJDR0dNcDhCaGg5Zi93NS85ZFUvNGFWblAwUFpxQzYyS05BTmlpRUU5QkUydG9xK2UwZFMwYU83OHV5cDg5dysvRWxVNFJNSFhEekpwbGVCUkJxSEwxQitnSklCeWh1MEdrSlFxSkNlV3dWMG1zQlVXczByaVVIaFk2NTczUTJLV2ptQ05HaXhCQVVYemo2R3BtQTZxeGpvSVUyb3FPc2FUY0dHUHNWSFgvNVZmdjFUbitiYVkwOWgvSkQ1Sk5EVUdzUXlNRVB3SGtQQXl4d1ZGRG9VUUptVXRUVjA1R2FOdEtRZExSVllVK0JxVHdyTXhPN3dGS1dNT0t5bUtEVG5SaGY0K0VjL3dRdlB2c2lwN2JPeHhwb1kxRjhGRTh0a1U5Z1NXUzBMK1lKcEovaDJrdlloUnJUb1lxNnlLRlcwc2J5elArV3B5eS93NGxNZjR1YWRHM3pybGIvbVc5LytHbS91dlViREhFMEZ3VWRiVHFJMmV6RFMxRDRRNnZ2ck5QdHRxVTlRdE5iWUVHMlFuei83SW1kMnpsSXl3TThEQlFORzVSRFhISldaUk1lL1JYczdua0xFZGpQZUdGS0ZPVTJvK2JPLytWTzhiYmp0YmdKUTA5RFR6Y2ZpaEVmcVREd0pTU0VmcUtpNXlkdjg2ZC85S2IveXdxYzR2WFdhemQxTjNDdzZxbFhWREZGQ1VERWhRaXQ1RDBSaTV3RWtFcXpPSjEyUkp2M1l0OHJTMG9qd3pHTWY0Ryt2ZjUwQ1N4M21vQVV0MFk2OHhITHJqWnRjMjc1R0tTVkRWNktyR0hCZmh3V1JGWlZjWnRMNFlrTFVZSGdkOENwWmI3YlJGVVJqUmVPbHdCTndxbUhEajlsZ1JKZ0dESWFGR3h1ZDZRS3czQWRDaUF3cEtLd3FNR2t0Y21IekRGdnpBUnZWTUI3L2JvbXNMeGpyYmV5MFpHQnExSUZtSkp1SVRMaTdmeWVOQ1czQ2ozUm5PaHpWanFRQUtFWmlyeDR4NExLK3hPWHRLMXpjdk1pbTNtQ3NSNWhLRXlxQkptQ1VwbFFGMmhzNkcrUFc4UGtkbHNaRDRSU0ZlTHg0dEZYb2dXR2oyR1QzM0dtZUNJK3g1Kzd4NDlzLzVucDREUzJPTVVPYzhzeGRneitNYlNoSTZCeDlZYjBrK05nMm5SWldwT1ltQWJ3UG5RVFdvaWdaVUdBUm9vL0FrQUVYaHhlNHZIMlo4L29jVzJxRFlWR2lLazJvUERoUEtTYWF4M2hpV3dvOXI4UVV1U09rOGJxN1V4VVE1UWhLSXFuVmpwSUNSSkFnQkQxbWE3akpxVE83VEdhWDJKY0pQNWkreGx2Y2loSjVMNHdaSWlWVW9jYjUxTC9YYWNXeVBQWVhDcG5JUHVvNG90YnByMWhia3JMd3RvMVk2RWppZUxYaWVhNldkNDN4VngxUW8xUzBCYjErNDN0ODVZLytnQmVlK1NSbHVSR2xRbjRSUEZ4ci9TNVc5eUZKdC9xSTkzemx5bFgrOGZvL0lEUW9GRmJwWk1RUEttVzBDWmprSFYyQVJMTUNGVVpSOGlFdENRc3BQaXhSRXBvR1ErVmJULzRVU2tmRk90VlVCRFJOTldIMzNBNGJhcGVwN0dIRjRoSWxlZnpjMDN6cGMvOGUxNjQreTRWekYzR1Y1K0JnVHNHWXJjRXVwUmt4bXpZUUdwU0VhTHNyQW1JaDJTcmVGeTM3OGRFeHpsQXdvTVFUbU0xckhBWFh0cDdqMDcvNmFaNTU1Z05zYld3bjB3cU5DbEEzSGgyaVZFMkpUY1NWQlpFTnVuZXBOZ3liaCtUdExjbmVlSjBqV2xDYVM2Zk9jRzgyNGVCZ3p1bU44L3oycDMrZkR6Ly9FYjcrcmIvbWxlOThuUnVIMXduTWdZYUNnQTlRVGNONkQvRTFhTnZSa2lRMnFWK2pUWjNsNVJjK3d2WndsMUFKMWJSaE9ONWlORkQ0Sm5UUHU3NXVUNzZCb0VBYmhSZkhqMy95S3EvYytBY1U0R2pZM0JwejUrQVF1cVZhbTZVTjFrMXk3VDc5UFZReTRIRUV2bkg5RzF4NzdHazJ6Mnd4ZFZQMjd1NHhMQWVNUnFQNEhvaUI2R0syMzRDU09IU2JJTkEzbVdoTkVLSUJKN043YzZ5eHpIekQxY3VQOFZmWHYwcGhMUGhBTVNpUm1VY0RBNGJjZU9OTjNPTU53MkZCNFN6R1d3WStTZkVKZUxHSTlqamxlMFRXRW9qU1FZZFBFbVRCQkkwTkd1M2orMnFrSm1pTDB4VlA3enpOSy92Zm9XQkFUY1dKY2kwaDJoenJBZ1FLWlpOTVQ3aDAraExXRFNtYUJ5U3lvV1FnWTBKbEdJeUdIQndlTWg2TnFkeWN0OSs0bVViUWZ0dG40Y2VWQ0d6aElyZTF3SWdocHpuTmhZMExQTGI5T0JjMkw3QWhtNVMxUmMxQlJjc2JsRmVVMXFLTVlTNkJScWUyb2NLN0tvM0FNSlNVVHZDK3dkY0JHb1V0WVRBWXNGVnVjV3EweTFZeDRzekJEbTlOM3VKbXVNbWhQMEJoY2VJSTJ1REMwZnAvcDJRMmVCK2JYNmZWVzVnUkRCaWdFNW0xR01hTU9NODVMcDYrd0tuTlhiYjFOcWZDS1lyR0l2TVF0UnFOd29pbDFBVmxNSVFtZEJxQnRxUWRwNEVsR3lHbG8yWXRTV2E5TmxqeEJPOFJDOEhBUUkvWUtyY0pwV2RXTkd6TXQ3bStmNE1iOHh0TW1GRFQ0R3VoelpFbXlpM2E0ZXF6MzdkMk1uNWV5RVQybHdLdGxLQWxydTFzWm9taHEwd3lJR29IZ2hXRG45Vk91dks5VzZ5ckJsc1UrTnJoYWZqZTk3L0ZyVnMzT1g5NnN5TWNpcWpPTDhzeXJ2THZPeFl1aG9NMkc0dVM1TEVybW9zWExxTlJIZVdUM3FSbmpFTDVsSWNzZWFZcWlWN0F5bHVDYjZQUXR0ZUl4MnBaUS9ZbEVxTWdPanB3aEFLTmcyQ1pIelpzalU0eG04NW94R01ZOE5TVnAvajhaMytIRHo3OUNTd2o2b01ZRkgrb3h3enRCcUh5N00vdU1oeHNSaW1aUUd0TEhOUnE3TWtWcDRtZVpVZ3JrVlhKNGk2YVdDZ3NCUVVqdnZEU2IvSHN0WmQ0NnFtbkdBNUh1TXJoWEVoK2U0SldSU0t4Qytsck55R3MyalpMYjdJa1hYODEzVmZ2R0kyaW1UaW9CWEdCdVd2UXJ1RE14a1UrODlFdjhKSG5QOHlmL2ZWWCtNNFAvNEc3N2phZUNuQmRteWdITUp1dmFSSXJXQ1d4RU50WVFOaGtteWN1UEluTUJVc1I3ZDI4eFBpM2JwRVlZOTB6S2xrL0ZZWE9qQ2RRdVJxbkhILy96YThsQ2VvVVI4TkJ2WjhJVFp1dnZiLytPMWxWdkZpYkJLYk0yYllERHQyTTErKzh3ZFdMajZGcXpYaG54Tlp3azRQcGhFNXRTa2lCRmxUWEtWV1NkQWZsRUxWNFZ5YjE5OTBMWjJtb0VkVndabmlPQVNWMy9CMVFLVFJma29wNkhJZmM0OWF0VzF4NThnciswRE5TRmhNc0pyUXhESHdLTGk4cGNJREdlcE1rWXdGUmlXQ0VCWkcxVGV5bjJudTg5UXdLeStNWHJ2S2QvZTh1YXF3bkpUOFNielQxQTYzaTZLQkZrZ1c0NXN6MldkVGNwSVVoaTdaNkhBRmIyYTZEaVF0WnIxSEtJRTNBakRYT09XN08zb3IxU3M5SnFuMTU2V01FaHFJcDBJd1ljMlYwbVNmT1BNSDU4VVZHZm9TZEdzTGM0WjJpREJhTHBkQVdvMk0yT1NjZ3lpVXppdFJtM2tVcEFsSkRJWnBTRGFORG5STzhkelIxdkVGdEZSZTJMbkJ1NXd4dlRjN3hqemYra2V2TjZ6VE1jUVFxUEVGTEoxbHR6Y0ppTTNwblpEWjJvNEJXY2FIZXBzdTFGQmlncE9BTXA3bTZjWm5IVDE5bFo3Q05WQjYvN3duaUNFRTZlMnVqYk5Ub2V4VVRmU2hOUDhyQjhvVlY3N2VRTkd2UjNNQUkwVVpiYVp5UGpwQWt6WUhTTWJUa3dHdXViVDdKNmRGcExoOWM1UHJ0Njd6T1Q1aFRJd2dXU3lYZ1Z4THk5UFZUR2I4WXlFVDJrVWRMMUZZblQ1Titid2Y2TmlkMjY3WHZGNE55aTlVeHErVXVhWEtKQ1JNcWlrSm9HczloZFp2cnIvK0lNenVQcDhRS2dncUNjNDZ5TENQcE9IRWdqQ3BzSlcyRXdKNHRZeUtiVzF0YlBZWGp3b1pMQTBaSklyWXAvV2czVWVrNDRBZUZTaXYwK0h1U1JoN3hsdEtnTEcyQThRVTBtNk5OWnRVOXRqZE9jMnQ2Ry9CY3UzQ05MMzN4ZDNqaG1aY0owNUxnRlFNOVlEaU9hVWJuMHdxcFlXZ0hhRndNLzZWQ3ZGWlMweThVcW12UXV3ZXJERTZFZ3BMZGpWTWNUaVlZREpjMkx2SEZ6LzR1SDMvcHN4UXlvcTVyOW01TlVBS2owUWFsdFRnQzNyVTFxd2dkS1ZoSVYwUHZKcFp0ck9QN09SbzRmWmthaHFabWR6eW1LSGFvNnpuVGd3bU5yeGxzYkhEbHpDNWYvbzB0ZHJmTzh0V3YveWw3NFNhZWhrSTdmUERVcy9zTFpmc3F6elpiVDlzR0JNWFRWNTVoWjd6TDlIQkdNUjR4TEN5K0NZalRNYnA1bDIvKytLbW5qUVN3MmxSRlJYWDZqYmR2OFAyN1A2QlFscG1IZTVuMUFBQWdBRWxFUVZRNGRLR292ZStjcGFSSGlGZko3T0tVeTR1Vm5yOGdjMXVCVTN6ckI2L3czSlBQcytGR2JCZmJITXdQMFRhR1VZb2E1VmhLaU9tcmpVU0paNXZZd3l1Sjk2eUVHT05Wc1Q4N1lGYlBHR3dQQ2RweGR1YzBkL2JmVHViSmdpaUhFOE9FT1VPRy9Qak42N3o0NUFjSkNOb2FRaFBYTUZwVTBsaUVkSTNGNGt5amt5UnUwWDVNMFBFalFoRk1UQmJpQTFvTHU5czd4Q1hwZlRRUzdVSXVnSExSdWE4Tm9MVE5GdU5paUsrZ3NxbXUzNlZFVmdEVHpBazJ2a3VuR2hyajJKL3NNMkdLSklvZitpKzJSMlF0bGhGRHpyREw1ZkVWSGp0emxYT2JGeGpKQ0tiZ3BnMWJaaXZhb0tLeFNzZUVGQ0k0NzZrYVJ5aDFGK2Y2aVBuT2ZVcWxvQW96UkZtc3NaZ1VzczFqS2JCNFZUQUlsbnBTMDFTQk0rWVV3NHN2Y2VuZ1BOZjNybk9ERzB4RFRPNmh0Y1lZczZUOU1NWjA1bUxIUWJVV0xHblIyMFlnc01rTnNLVGdNWFdWWnk4OXpmbnhlWXJLb080R3JDOHBWVUZoaHY4L2UrLzFaZGx4blhuK2RrUWNjMDNheWlxVWdUY0VhRVFaeWxDR1VzK1M1a0VhdGJybkg1eDVuS2VlTlRQZHM4UWxzeVJLYW8xYUZDVVJZbE5rZ3lCY29RcGxzakt2ditlY01QTVFjYzQ5Tnl0UkJhSkVnTURLdlZiV3picDV6YkVSWDN6NzI5L3VGc210ZWpZNEh6dkFPVXVaNWQyeDkyd0kyTTRidkwvSVBac1JFVkE2U3pyZGVOMFFRcW92QUhFQjNUZ3VEUTdaSFk4Wk1DQi9VSEFyM0diS1BKWEkxZkc2VDNOREVQRGhjVXZWaS9pazR3TElmcFpEQXR1V1JtblM3bGF3UGUvUWpwRk5LOXl6SFgyQWgxZTgwVlBXV3R0TnVuVmpNWWJZY2NoVzNMNzlQbC85NHJhK3ludmZyZVlmcDVDVnRsaXQxYnNHY0pJQVRsQVVSYkgxZXVjc1dzVnNvL2MyTmg3d3NhRkRDREZOMmc2TUVTd0kyNXJoZHNCVGdFWGFscXJkWXNBZ2lZV1JFRnZNVnBXaDBFT0VuQ3ZGSWIvOW03L0gxMzd1MTVpZHJOa2ZIN0NjVkZUTEZiNTJxVmpCVXBvaE96c2pab3RWL0h4cExjUXM3ZUlqc0hFaDNKb3NlOGZmMW83Y0RCQUwwOFdNakl3dlhIMk5iM3o5dC9uU1N6L1BmTEptWnpCa1VPNlNtU0hyOVpxbWRqZ2xxU2hvazlTTzJNbHZKWEtsNTZWNkhoQjRIQ016R3VUWXBtSzFYS0sxWm5jd0JzWXNxd1VuSDh6Wk83ckVyLy9pYjNONGVNVGYvdU8zZU92NGg2bE5iNysvMTRmSFdWMXNIOWdhTkY5NTllY29WRUZGZy9hR0xOTlVLNHZ5NEx4L3FPRHdvNFFLYWFLVWVCMy84STBmRUxDc1Ftd21ZTDJEa25oQTEyd2g4ZlpYNmM1c3I3NjVMOTFwZnkrZ2x1aG1jSys1eDd4YXNMdTdoeExEYkRFaHk3SW9RQkRiNjJnVTcyRWRJSFB4T0RiYTB1aVdQNVNraDg1UUprT0NJU3NNeW11ZWZ2WVpmdlF2UDZBb05HdnJ3SURUSHIrMmFCenZ6MjV6OS9RK1YvTExOQVMwUkZiTVNRVHNUbnpTdzU1Lzd2cFhpd1F3UVNIT0lqNmdmUVM3ZVdFWVVEQm45ZWdUa1NRMWdvQjNtQTRrS2E3dlhrNXM5TWVIRkVFOHRhcEErV2doVjNnV2JzNmR5UjBzRmExbmErakpNOXNWYU1zMEhuS1pWL0tYZWU3S2MremtPOGdjN05wVHVJS2hIbFBvUE9venZhWHhUV2ZyRnBJZVFlSFpkTnppSjNwVWdCb0VRckJSSnVCSmkzZU4xcG84Ukg5YXQ3YlUzbE9VT2VQeGtQMjlNWU1xSjZ6Z2xMZUJabXZNYmtPcHh4OWJwVlRuTDkxNnRBcDVraGJrZlBud2kxd3VMbkdRSFZEV0JyUFNtRm9veURFNnh3ZG94T0p0d0FZWHMwNFNrRXpRV1ViamZkZndvaTF3UEc5cHJUcjVRWG91TFM0YmE2TmJpUktDS0pTU2pwVEpNZGhGUmVZVTJXREE5ZUUxeXJKa1p6SG1SNmR2Y3BmN3FKU0o2SStaTFppRmo1Qnd2SWhQSkM2QTdHYzllbW5RQ05yNkUzZGZIOXRuWTJXVDMreGV4K1p2dlFnK0FqNENLQjF2WU92YURKZGx1VngwTEpsekRxMU5wMkYwemoyK2hXMGEyQ01KMnc3cW0yaUJTTFF1cnlLTFlnUlhCNXdQS05WWEcvYXNuZkRSb2tWUzRyZkh1RzJLcWp4UnVPYmpjWk5OMFp1UUNnWjhURmtabFRGZ3lOZC85YmY0OHF1L2dBNGw2OFdjdGFzSXRjT0lvVkNHWVZsRS9kV3k1dTZkOXhuc2pGRTBhZDhzUVZtQ2NvbEovaWpEb01LSXhoRk55RjU1NmhYK3d4LzhSMTY0OFFJUDdpMDVPSGlhK2F6bVpEckRHRU5abG1RNnd6bEhZMjEzL000dG9rbU0rRVpmMlFleWllWHlINzRVMFFFbWs3dVVPaU16T2NGQk5iVUVnYndvR2UvdGNPL2VIZmF2SFBFTFgvcGxsQkg0ZTg5YngyL2dhQ2hFc1F4VmYrc2VHKzAyS3FYWUtYYTVmdTBHVGVVcDh4RzJzdVM1UVh4STFmeTlQWDNjaWlyRjJhWWJrL21FTjIrL1FlUVpIYjd0VG1XQWhzMEs0YUh0SkIzck03S1JzNC9lRTJTTmx4SWRNdTdjdjhPVjhXVW15MU8wVnBHUkplQ1VScldwOTk2aUx4WStDVjRMem9CWEFVVHdRVkJlRVZ3Z013V244eGxUTiszWTQ3cUtJRGJlOGcxQkt5cG5tRERqemR0dmMvVkwxMW5PMXBRNjc5alhnTWVwZ0UxZ05uZ3dQYXV5Rm1oSWtHNGhnS1MwYnZBZ3FlVXpscU5MaDl3N1B1R1I1NzVONGF2SStJNTBHYjExZ2FldjNrQTNrRHRQWWMrN2ZzODdKdy8vdmRHV2tBY1dma1lZQkNhckUyN04zc1VtKzZia1RwYk9WWHlQQmdySjJRazd2RHA4amVmSEwzREpIQ0pyV004cmRDTmtwcVJRSmRXeUFwOGdzVmdjRHRFUkNTc051aFpNK0hpMTcwNTVwRFRVb1k0MXUwMUFTOVREZTJ1NjBvZlNaT1RhMERRTmJtSXBkTTcxd1RYMFRzNzk2WXgxYzdzYnY5dmlTdUFqMVRpNFhvdFoweWxMWVljeFQrOWQ1OFZuWGtUUGdKbkhONDZTSVNOZG9DdWhxaTJWYWFoVUxOd1ZBcGFBRVVIckNNWXJHd3VUZ3pRZEk5dG1CQUIwTzVTbmJuZWRhQ3hSdDAzVElPaVV6WWp6WXhBQlVXUWU5ck5kZk9OWWg0cDhZRGdjN2VNeno5UXVPSjNQYUhBSXJyY3dUZkVSOVAwWDhjbkZCWkQ5RE1kNXZlRWZIZWRNcWgzUTNYcXlDNWNLQWJRV1RDYlVWVXd0ZGh4Q0NKMCsxam1IeXZMT3pzVjdIMGZyRC9uMDFrZzlSckw1Q1FvVk5ENnhBVHFoVUdQaTZocGFwcUJOTDUvSEd2UlppeDZWa2laZEZUNHN1Yjh0MFpCQWJJR29jZ2JGRGk5ZCt5Sy8vcXUvdzk3NGlNbURCYnVqUStxVlpUd1lvcFN3WGkwNFhVd29URWxXWkhIb0UwKzBkZHA4ZjhzcXRQNnhEMDNsUGNsSG9RcHNFNlVGdi9UU3IvQWJ2L0xiWERsNG1tb3A1R29VaThtQ1pqemFvY3l6YUxXMldpRWlESWNsVmRXYy9YUzJyb05XWHlnMmJsRnJVWVZMZWJ6Mi9LbHozdThaRHdieENJZG9LcTlOWXZ3ZFZGWERhTERMeWIxVHpJN2lLMS80QmJUVzFIL2grR0J4RTRJbnc4YmEvNzUxVmRvRTZmaVFlT3c4U2N1SFlxaDJPQmdjTWpCRFZwT0tuZUVPMDJxS2tiZy9SWm5IQmh0cFcxdjlkYXIzN3hpYkQydnVGY1RqbE9QZXlWM21MSEJZeXJ4Z1ZhK1FEQjZMdng4Rm5QdUx5UFM3cU1EYXpmbnpmL2tUdnYrdi81MnBQZVdBZmRZczA4dmFLM1lqRlltc1lHUi9vMTlvWkJEalZXOWlzUXJDaUJGVFRzblJXTFdPWUVwQUZlRGJRNVFwbkxOWUd0Ni9meE16VXN4TzU1aVcwZlpSMXgydjNaN0VRQ1hkYm50dnBldENFUzhmUzJ4TFloVUVFVVFNeGhWY0hWL243ZVBickpsdERtUkltdmFOc3FpbDJ3aHBjVks3Nkhad2RmOGFabVdpdktKM0tQdVA1eDcyL29KV1lwR2E2SUN6RFpreExPeUNCNXhTMGVEd1VhRGxldnlBZ0FvRnUySEVaZlo1NmVnbER0dytNaGQ4NHhpRWtyd3MwRjVSVlJYZWU3UVdzc3dRbE1iNk92YWM4alUwaXR4bDZORExUVWc2dzNKbVhPaU5YZjBkcXFvcUtUQTBlVkYwTGhQQnhrWXpJVVR0dVBjZVhFQXBRV3REYVFiNHpQRHkrRVhzeEhQc1RyREVCaHhlTmVCN1BybnAzTFNubzkyK21GbUlHNVFwUStGeUZGQlM4c3pnQmwrOC9CcHlFaGk2QVNOVFVvUU1xVUpzSGUwTVlvU2dQRmt1R0pOSHB4b2JpNGF0ZGRUV0lWclNGZFVkbmlnRjZuVFpaKzdoc1AzNnJDaTZjY01UQ040bFRiU0FWeFRLWUVOZ1ZVRVRIRUdFM2VFK0wrNDl4ekFyK2VlVDc2S0JGWUlOelNhYkVqWno0QVdlL2ZUakFzaCsycEZLakNYcFN5VnNmaWVFN1Y3Z2lWWU15ZWZFRXhEeDNlQWZyWlU4SXB1aDNZZTRvaVEwWFRwWFNSL0dLVFpnWmFORjdYUlllRWFqQWM0NTF1czYzcnpwejZOc243M2RRNnJsaXYzOWZVNVBUL0hXTVJvTVdjem1GRm5lK1FzQ1hXRktPNU1FQ1Vob0VCRXlQYUJxaE9XaXdlUUtNOGhaVmlmTUZ4T2dZbTBYR0FQV2dndUsyQnBCWXowb011cktJV1RSSUY0UFdTK1dGTm1RMExJS1lyY1lHVW02UHRoSUYwSm9KUTN0MEJRbmJQRVo0K0lTLy9HUGZnK3h3dW54bk4zZGZXYW5FNHBzeU5yVjBhcEtDK2ljdFhkeHdNMmlqMnp3bnVBRHdTdUNCeDhVRG8wakxoQmFpYVhXNEJLVzFJazlMOElBQzd4dytDcS8rU3UveHdzM3ZnQXV4N25VQjhjWmpBREJVcTJXSUpaTXhROTA2d1hhYTBRMG1pd3VPSUxGdXRSZU9HakdnME9zOWRpd0JHbndZWVd6TlVGQXF6eGFrRGxCeUNLN0d4eldyV2o3MUc5c1lPT2s1RnU5TWk3NlM0cG5aMmVIWmIwZ2FNMVhYL3dGbXFubEwvL3FMN2pQQnhTQVo0RVZ2elVhR1c4SVZ0S2twYU12WkNyU1VtUUVhL2phRjc2T3E0VThLNmpybXFJb3NNRVNsRENmbno0RUpsdlhDdWxWYVV0YWhHVW1XcHZacElHMTBrRGgrWWZ2Znh0TjdBNjBxS3NvdlU1ZGhjVVFyWmMvemt6V3ZzZkhDOCtIQkhCb2VOdStnYUNZY055OS9PSGxUdHNkS2Y0MTBCWW1iZjdlT2lxYzBLNE5iTFF4dytNY3NHaGZwcUlsRkJwUHc5MzErL3pneDkvanBjc3ZvOWFoYTZ5bnBBWEhsaENrUzcwclFpenc2dXp0NHY4ZElMbWlhVHcyQkpUSzhKVmpmM1NWVjNkelh1ZGZXVENqYnNldlZDQUUwZVdnWFdQYkJPSVcxWktTa3B3aEI4VlZtc2thRnhTTnVJUXRXcEFmT25CelZpWVR0ZENKY1VUaFJFUGp1R1RHUEhod24rUEpNUlVPdFZ0U3paZnNwc3Z5cEFXeitaQm1aYmpCRWYvemM5OWdVSlVvRno5WElZZ0M2OVp4ak5TQVJDbFBZOXVURFVxaWk2cnhnbDhwY2xXU0Z4cEVzTjdTVU1menJVUFhhS05wcXRnQjBTUzVsZk5VNjVyU0RJbmxiMEIwU1V6RGE0ampnMngwNWxwaUg3WlF4VVhGeUkzNVV2WmxMdTAveGQvYyt6dG1MSmcxQzlndlliMk16UTdYUkwyMWE1dkZldHEyM1NoZ0NDd2hXSTlCR0RQbTU0b3Y4K1ZyWDBJbW5qSmtuVjQ2b2ovQkZRSHZIVUU1Uk1mbUthRnlTTWhSWHFORDBTMlduSFdZUERxb05GV05XS0syTmtTM0JadDVyRVJOdGlTTHRnQ29USkJNc1hicjVDMGI3d2xEWkcrMTF4Z1BkWmpGTWI1VVpLYWtjWkRQUGRlNXp1WGhBZGxNZU4xK0g4Y0N5WE1hdjRBQWhRSnZMNHErZmxiaUFzaCt4a08ySkFMbi9MRXJSUEc5bi9QaUxJaU4veStLak1WaWhRTDJkOFpNWi9OVWFKV3hhaHF1WFhtS1BNKzcxWCsvTTAwL1ZIaDR2cGRBbENBMERna2VRMGxSR0hTbUVMVkdhODE2dmR5YXhPTzhId2hkOFpvbktuRmJMdWljZ3lIOWZlcy9ubVZ6KzMrUGtnVkJVMmpEODgrOXpLallTd0RObzRKQzYyenpUdG1ZQ0luYXBMd0lMY201cmVIYTdNOG1IK1o5QzJLRmpBeVB4Z2JQY3dldjhJM2YrRjJlZi9wVk1obFNyUU9HQW1OeTZ0cDJleDJabWNpTXRvVTRRcXordGE2T2pKZ0tLQkYwcGlGa1RDWXpnaGRVWHBNWGdTelRhS05CQ1VhWDJFb2hKcWRlT1JiTEpVV21HWTJIQkYreFdFNHBUTDQ1TDZRVU01dEdwVnBCOEo0TVF6VmI0U3ZGRjEvNE1zdkptai83N2pkeDFPem1Penl3RDdaUzl0R0RPTlkraHpaSG10TG1FZ3dsSXc1SGx6dHQzTm1qK2pDSTdaL2ZjN0laUGUyQkp4citWMDNGZERWaHhSeWZUTitVSklGY2lDVDJSN1RiakhIZWE3dm5Jc0MwcVUzcUp4S0JDRkpRWGVxZjRGbXo1TjdrRGk5Y2VaNTFFeWg5U2FaS0pQUUs3VFFvcGFQSGJjcUx0SXhuU3RVQTBPQndCb0tYK0NxWFlacWNvUjl6d0FHbjNLZVdKdDNCS2dIdUVGMEUrcDJ6Qkh4cWJYekVFVkpyTXFMdDFrYjZzTm10OXZ5M3o3WDNYWnNOYWMrL0M3RVRXckJyZkhDY1RFNnhRRlV0SS92YWZsUUFNT0FOUTlubGhyN0d2aDBRbkVUSGxPNDE4VTVvbi9MeThIZ3JpVFVNR0lZN3NZM3kybHFzYjNDUzdtZmpFWVQxYWsyV2FaVFJaRHBtdWh5Q0RRR0hTcklMMWUyb2E1dm45TDQzSklsTHB5K1Z1T0RVSGc3c1ByYnhQTWN6dk1GYlZNcFRyeWFiV3VGZTVrNm5SK2xheXdCVjNPOTJ6SHFCNTdreHVFWXhWWXpaZ2RvbDJWZ3FSR3hQaGs3YVYvRkU0ME9OOGlRN3dBMVI0VVBNOUxYN2sybERxVEswalgzMVJBU3RJZE1aQ2szd2d2TU56c1hGb1d3U2dpa0xvK09pSTZTTW9EUnBrUnhibEd0dlVBRXlyM0FPbmgwOXplbGt3cHkzV2RhcmxDTDBXTHRWTm4wUm4zSmNBTm5QZkp3cDVPcmlVYUMxSCsyMDZiY2UrOU42RzlQa213bWdsTUU1eFRQUFBFZWV0MmxjT28zVlJ6WFVWcEpSdVRoNEY1bkNtS2lVOHNFaElrd21rNGZlRTNyZXNEL3RDRWs2OFlVdmZBRmpES0kwVlJYWkVTMXFNeUhLQmtxSEJDc2xSSDF0SEt4ZEdwNTlwN21DQ1BKYUZCcUJxS0RFRUlJZ0NVaC85U3Mvejg5LzVhc01zaUhycVkxc1dyQ2MxUk52ZVFxbkNwVzJLOVpHQmdLb2dDaHd2cUVZamFLVmxYSjRZN0ZoUmQyc2NUYWcxSkpRRzRhREE4clJBSk1wZkZOVFZSV0U2Q25jNGI4enA3dE51NGtJcS9XS1BNL1FTbEhYRFpldkhQTFZMMytGdDkvL0VmLzkvaitSYVIwdncwQmtnZW8ra0Qzckx4empvTnpuOFBEd1k1M1RmclRYYVZ2c1FnZDRQSlA1aEtrOXhTVlZ0Wkp0UWV4SGxOMytiRWNBUWtEbk9iNnl0T1daNzkrNlJmWDhtaXlVcVl0WFBEWnhFUm02Rk8rNUg5bEw5enJuRUswMmJWZUp4enJMTWc3TkllL1lWaHJRZ3J1MGtBQXdDV0FuMWp2aTJjRFRWNTdHTnhhakRWdTJHeDhqbFBkb2lRVjNwK3NGOTdoUExvYXFpWnVVQkRkMFdvbGFjWGw0eUxYeFV4Z3gyQ2Rvejkwb3p3TzF4Q1VqZjRYSGFNaTBvQ1c2c29pS1dSc1h3TnJvZG9BSXloUjRFMWhoQ2RKODZMbG8wKy9kL3pyZGRoeTdTaW5ZTVFPZTIzdWFkeWZ2TVNLanJqWGtkb3ZUaUNacktaMlBqeDNaMHVvMXc1Q1RNMmJFaTllZjUxQWZVcDgwNklFK1V5WjFUclJ6VjFkUnQ4a21odFNkeTRxUHE4WU1PaUdzZUZiVVdHMUJDUmtXOFRyV1pNaEc1OXZhS3JhM3JiU0xEYkhSYXhhU2JWeVN0UUhLeDBZZmlPTFN6Z0hQbVdmNTRIakNuQnJyZE1kU2JQS1dGL0ZweDRXTHhPY3l6dDVlNTl4dW9UY1J5NmFTL214VWxlUGdZSSsyWUd4djV3RFFOTTd6bTcvOERmYjM5K00zcE1rSjJHSm5IeFVCaFZJR01IRWxqV0NkbzJtYTVKVGd1WGQ4djkzY2p2M3FWNjcvdENPRVFOTTBYTGx5aGJxdXUrZXR0WWxCbGZTajB1U3VOcE84Qk5xT1loS1NCQVNQOWo3VitQbzI1d3ZwNVNhQjJKQ085MWRmL2lWZWVmazFqQzZabmt4cG1pWldzcWZ0aW0vY1ZtcjFKelZyTFVvSldhN1JXYXI4cGNINm10cXZrS0toTVF2V1ljcmNuckJtZ1pTZTBhV1N3NmYyS1hkemFyOWlYUzlRSnFCempiV1I4U2pMOHBISFRoSFBsYmR4TWh1UHh4Ulp6dVIwaGpFNTMvaU5iM0NvTHpGYnpUZVViczFXYThndHF6UzF1WjcyZDNjWmxvTi9JekNwdGdwZFFscEVuWnljMENTVlp6ZXhka0tLejFINGdPNVZvSGs4dCt2YkhFOGVvRE9GTW9JVlIrTWFiUERiR3ZqSFJIdGNvYmRvc0k1Y0d5NWZPb3BMT3djaExkczZnVUE3ZnFSRm5vYkUwU211SGwySmFlYndjZW9FTmlGNGNpVjQzMkR6d0szSkhTelJkcXhqT0ltWFpGejVHU1JvcnBZSEhPMWNTbXoyRTRRNFpzMHBhN1hBanl4K3o3TWUxanpJcG53Z3g3enI3bkl2WDNCWHp6alJLMWFaeGVjYVJNZEMxdVNuSjlnNGh2ZC9FbGhEMnNWei9OSEJweUpCSDV1VU5ZNnhIbkJwdU1kVmpqQmUwRUdEM1FqNVk1WW9wTThJSFVsT0FIR1FPOE9JRVRkR3o3QS8zQ2NqdHNSdTFnM1JiUURPdjJOYThKb0FiRzlSMEhibXNsSmpUVVZUTk5SRnd6S3ZtR1lyWm9PYTlZNmxHbHZxa1dXWnIxaWFKU3RWWWJYRjY1Q1lkNFh1eHVoVStKdGtTbDdGWElLVFRiWk1SVVZIekRwNmhiSEMwYzRSVDQwdVV4QTdDYXBVVnlBWDZPbG5KaTRZMmM5OEpPN3J3MUtzRCtVemU4enQyVXg3ZjZ3Sm0xY3ZwMnRBVTVnQmczeVBLUlhEYk16di9lNGZvSlRCTmhZUjZieGtXNEQxT0NBTDRKMUUwMzZkRXdGRlRjQkYyeCtsdUh2M0xySU5aM0MrUlgvYnhWay9qUkNSMkk1V0tkYnJOWGxoenV5WFNwbXl6Z3VoQTl4dENxdVRISVJBMndpMzVSNGNDbEUrYWkxUmlKaTB5TkRzcUgxKzYrdS93OVhMVDlOVWxycTJqTW9SdVNsb25JdVR4RmxULzg0a1BENDJUWU9JUm5TVUYzZ2FKQU8wQSsrWnUvdFk0MUNGeFpoWW1MT3FLbWF6S1JJZWNPWGdCa0VGbHJNNWk4V2NJczhaRHdZb0NVbG4rK2pqNzV4ak1CaGdtNFpHZXdhREFROGVITk0wRFM4Ky96Sy8rb3UveG4vNWh3K2lEbGE3YUxWYlFGaURFbzFMUlJxYi9ZdXM5ZTU0TDhvS25vQVJTMmNKa2VoUDNDN0VYQUpUeHlmM2V6S0p4QmoyRHZmR2V1Z3pIRW1ZYlYwMGdZOEFOYXBmYjk2OXlUT3ZQa09vd1RZVzd5TW9OY2JnQ0RqZmJCVno5cU5sQWR1TUJ0QUJacDlzMFE3M0w2SHZ0TTBXa2d3R2FIdStocFpKQ3lSL1VzMklJWHZEWFpoNjFJZlRrQjhwVkFCdFlPRXIxcnJoM2VZREhGR1AybUt2V2tlclA0SkcwRnhpaDZmTUFTTVo0U3FYVktNZjkvczkrN2tpNUo3YU5KeTZPYmVYRDdpN09tWHFGalI0Y2xNd2tKSUR2YzlUeFNGSFpvOWhBNlpTVUZteVFXSVRILzcwWGllczg3NDduaURYT0xJOG8zU0twM2V1Y1hQMkhnV0d5cmtvQndpeHZYYXZ4Z25WM3BFaHRqQTJHSzZYMTNuaDhuT3dGbnp0MlNsM3NQTXExa21jbVFhMkM3UmFFSGttbTVpS0xVUG1zYWFtMXBZNk5LeHNuUnJ2eElXNWs0WmNHM0pWWUl4SnJLcUJ5dUVxUzVtVmlFK3lpT1RRRW1VT0xqR3lxc3RDdENPbkRtQWNlQ1ZVUzh2dWFNUzEzU3ZjWHR6am1Qc3NmWnpmdERKUktIc1JuM3BjQU5uUGRDUlp3WGw0OGR4QnZrM2pmSWdsVmpqbnRRaU5VMEJHWlJWM2prL1pIMTdqRC8rWFArTDYxUmR3Rmx5eWVkSmE0NXBZVU5LM2NmbndVRFF1b0NSSDY4Z3lpZ3JvekNDbVlsa3RPRDYrMTczYXkyYUNGSWxGYjFIMTlOTUxyVFZLeFFya05pVFp3d1FINGxWeVFVZ0RmYXI2UHgvQ1M4Zld4b21oSGJ6YlI0MTRRMERJS0huMTVhOXc3Y3F6WktvZ2VNMmdpRHF3dXE0SlhqRGFQR1NSMDFVVnA4aXlETkVxVmUwNk1BRlZDTTQ3MXMyTU45OS9pM2R2dmMwYlAvb0I3MC9mU2NPNmNHMy9PazhkUGMyTnk4L3gyaXRmNWNibDUxaE5LK3JGbXNZYk1xMVpyMnVNZVJTUTlJVGdHQTUzT1QwOVlYcTY0TktsQTBhak1iUEpsSHBWODZWWHZzS2YvOE9mVXJPbXNsRVRHVHU3SlF1M0Zqa3FvQTVJNnV0MHNMUFB4M1F0Mm9xMkFNaDZqK2hXMCtnUkZUZzlQU1dXMUVWVllQOXliaHNLZktZakxiUjhBTjllUndxY3R6Z3kzcnQ5azU5L2FRbEJZVlNXbkFxaVRFRGF5Zjh4aDBCRTBHMnFOd1MwcUdpaGxjRk9PYVpreEpKNGIza0VVUUxCdFhSK0IyUVZzU0gxa1lxc29RbEM4SnRXdlI4dlBGb0VyeHJ1cms0NFpnb29MQTFHd0hwdzdURG9GVGtabDlVZVIzcU1yblY4d1NPdi84ZUVlRXdoek55TXU1TVQzcG5kNHUxd2ozdk1pTjRTQVcwekJHRk13ZVg1QVU5emhSdm1DbGZMSXc0UGR2SHJCZ2w2NDMxOEJyejJOZVRTUFVlN1U0UlFFNnhESzhYbHZVUEdzMkZ5djdDeE1RR3VrMHh0amxyOHlZQ0NuQ0VEcm8rdWNsUWVFZTVieEdvR1pjbGE5WFc2Y1VHNDFWRTJDS0dGSUtGVm5KTGF5MXFjcXRGRFllWXFqcXRqSHF3bm5NeW1UTU15RnNvUy9UcDJ6SUQ5OG9EZGJKZWo4b2pEOGhKWnlQQlZTS3k5Nm1wSlF0dSt0bXNLazRvaVV4dG1IZVc3NktBaUFQWUtZek9lR2x6aDJmMFQ2dE0xZGVyODFialArQ0wyY3hRWFFQWXpINjMrNTNFRGF1dE8wQlpKWmFUeURLQ1BoWk1HdGdPeUdrVk9vUVpVM3JFL3VNUy8vOFAvbFcvODF1L2diSTRTMHpHTzN2dmtKYXU3TGpHUDVtUVRjNmlpRWJmM0RVcEJsZ3Z6OVlKYnQyNXl1bnpRVFpwOU5rdzBCUHZKQUlrc3kxaXYxNVJsaVVpMHRkRmFZMFNqZkdJK2xPOVh1bXkwbGx0Z3RWV09SdjRwY2xDYjV6UWFJeGxORUs3czNPQlhmdkhyYUNtb2xvNUNsMlRHVUswczRzSG9rcnBaSTBhalBxVFZLb0RKTTBCaGZZTVlRWldLdFYxdzg5YWJ2UEhlRy96SnQ3K1pkR3d4SFptOE1Iam45QzNlTzMyZjEzLzBYZTZmM09jM2Z2bmZjZjNTRFpRVUxPY0xUTWd3cHIyRyt0Ky9uUVhJbEtaWlYyUmFFN1NoWHRXWVBHTm51TU55dW1SM3RNdHZmdlczK0pQWC81aktyU0VEdjQ3WFpheXdCMmxiK29hWWVNNHdITzVmU3Nmd3lhSk5UZmNONFZOVFVpYnpDUzQyL2t5d2d2WnlSUUtjMDZMK014YythUzRoZ3M3R1Y2bm95blBIMytIT3lSMnVsTENYSGFLQ1JteUk1MFZDZC9RZmRRN2E0czhPeUdvTlRRRG5LYktNby9LUWRWMng5aXVhOXRycFc3R0pFTGxRZzhKdzVmQUl0N2FNMUFCcCt2cW9qeEVTQ0w1RzUvRFdyWnVwK1hCaTIwSzBDVVlBazBGbE1CUThQYmpDSmIySFdndEs4dFN5OStOOXZSTlk2NFk3cXdrL25yN0xPOXhpeG9xR2hocExNR0JEYk1NZHlHaFljY29KZCt4ZFhsV3Z3TzZBeklPeGVUZUtuRDBiL1hiY25SUkRFZ01xRmwzQ3ZKNmlkelBLck9SQUh6RnhTelFLRzJMWFJKOUdzWjRzTnJHcWhvS0M1M2lPby93U3BsTG9VR0tjeGk0ZFdWYmd2ZTIyYktQaDc0K0pQckd4TFlpbHM3Nnoyckd3YzI3TmJ2SE85Q2JINFNRZG41WXFDQWcxOXl3VTh6dnNzY09ONGdiK01IQ2tMNUhsc2RPaWVMVlpjTFVhWVhHcFFOZWtBak42SURiSktZSWlreHk3Z3QyZEVkZEhWN2s3dmMvTVQ2alFxZmh3YytRdjR0T0xDeUQ3dVFyVm8wajg5dlBkWUJHZEp6Zml6TDdBUHIyMmw1cldGRGdDM2cvNHphLzlPbi93KzMvRXRXdlBVSzFyTWpPS2xlMU4wK25sdlBjWVl6REdzRjZ2Tno2VUg3YkZFdFZYSVFpTnEwRUhESjdaL0lTYjc3K0RTOXF1V0RqRXcwcUpuM0swd0h5NVhESWFqUWpCUlI5RVl4QXY2TDVRb0dNLzNGWXJReTg5d0JWVW9pVmllYjZTalR3Z2NxRVpBaHpzWCtFTEwzOEozZVNzVmxYOG0xTGdQRmxlVU9RNTAra1VZelJlNHVDN2ljMzJPQmZ3MU5oZ0lZdjYyT1BKWGY3cGU5L2g3LzdIMzZEd05MVE9FSnZSUGlib0RCVXIvdllIZjgzOU8vZjUvZC85OTd6eTdHdjQydEdzSEh1alBWYkwrU09QbjlhYTZYVEt6dTZZOFhqTXlja0owalFNaDBNYVcyRlhqcS85L0sveVo2Ly9LUklVNVRCbk5ZdU9GZDRsMEs4MjZWc0JDaWtZRDNmSVZQWnZOb2QweFY3RWlSUVZXTmRyZkJJYXROWk9TcVhxZWcrQmpWdkVaemNVV2tXRzN1U2FwcklZQWxvWnJMZmNtOXhqWk1ic0R3NHdaRFF1cG5hVkJwTmFvajRxK2tCV0F6cmRDK0tpdkdCdmRNQ0puMURWRloyMVU4K3BRSUltTnByV2xPVHNEL2J4bGNNVW1sQS83RTd4azRYSGhncUt3UHZMMnppRU9ybFRDR3c2WlNzTlFjZE9Yc1dZUFJtZ0xHaXliZG5MVC9ydEF1U0dsVFFKb05ua0J0eWdzc2hLNGlFWXdhdVlpYkd1b1dKRldBcHVFbmpadkloMnNXaHB5endoUlp1eVY4RjNkbm1kNzY4NHpGQ1lUeGNNQi9zNFBIdTcrL2lUZDlCa1dQNGxNQndBQUNBQVNVUkJWR3ozV1IxWlFTOHJocWFrNUxuOVo5blZPL2k1Wjlmc0VDclBZakZuZDNjWEY3WUI4Q1o2a29LZVJDaWtaaHRXV3hyVGNQUDBGbS9PMytJV2QxalQwQkJRUkU5ZWtRRGV4NWEvekdtb3NKVmpNQjlRakF0MjFBNG02cWpRSWRaa3RQc1JPK1ZGUXFFOWJqRlQxZ2ZiaWx3S21zV0tvaXc0VUx1TUdUSmdpS0JaTU9mQ3MrQm5JeTZBN0tjY29oVEJoODdDeXZ1R0xDdHBxbjZYbFZSc0VzdUdrL1ZzT3l4c1ZyZmJuV3RTQWtqQVdjOTB1dUNycjMyTk4zLzhmUVpEUXpsVUxCWUxpbndVaXkzUzZKUXBqVEVaZVY2aVZjWlh2dlJWcmw5N2x1ZWZlNFdEZzh2b1lHaFdEdVV6SUtleXpWWXhoOVlhNzMybks5MXNFMmUyajdoUFFSRFJ1R0FweTRMSjRoNkRjY2xvblBPMy85KzNhRmxDWUx0VGszTzBqSEVnYkp3U3d1YjN5UEsyVmpUbjZZVzMwOFBiMnhkL3IrdUtzaXdaajhkcElxa1pEQWJkQk8xOXdPZ01aYUkzNjhyR25xVmxVVkRtQll2Sm5FR1JzNjdXREhiR3pPc0g5SFhLUGswd0lPUlNVQWRMem9nLy9QMy93SEpXVWFMSjFJRGd3RmxIbHVYZ0E5VjZTVjVFc0JGWmpUaERuVTEzVzJ0QkJXeG95SXdnR2Z6cHQ3N0pPemZmd0ZGaHFYQ0pDNk4zaElUWWlDQm5nS1BpelpNZjh0Lys2WkNqdzZmWTNUbEFpK1YwTmlVM20zMkoxZXdwSFp6WUYyY0R3OEVBMXpnVzlZTGM1SVRncWRjTm1TcHA3SXFEdlV0ODhia3Y4ZnJOZjJJMVhZS0piTHNteVRwY3RmRzY4Vkdlc1RNWXh3NVNqdVFPOGRDcDNUNi9aNjYvOW1rUnNOWlRsaVdMeFFKbDRtUm5ROE5wZlVMYjlMVmxZNzFMNXd6NFBMQXhRdXJnSk5BMHNSVzFDNTY1bjFFdzRCL2YvVWUrOHZMUHNWak1HYWtkdElsU21xcXFHQlFsM2pZZDRJdU9CbDI1VnZ4OHJWaXVWOUhpS2dSczNVU3BnZk1vSjd6eTlFdDgvN3ZmVHg2MkFSY2NaQWx4YWFEMmFESTBVWEp6N2VncWFob1ltSnpUOVlTaU5LbDE3M25qQzUwZVY2ZXhLSTZ4NlJvMVVZLzkvc2t0N25QS2dpcU9XZDVUYW8xMURtZE1OSGRPeXRDOXdRNWg3VkMrUktPcGZMMEJrSS9wTEhaZXVMWERyZU5pU1ZLT0lUcDFOSEViQjBBVGFQeWN4Z0JPUlRiUVdzek04ZEtsS3lnY0xvVE5lWkJlZlVMZmYyb3pyRVh0dnZJOGNEWE5DRTdjbERBeW1GRkJmakpnU1VWQUVaUmpxeE93YjdQeEJ0VVlydklVUTFleXAzZkk4d3ptbmx3eXlsRVpheVZTcGlxY2FSSGV5aHVNaVIzSGxzc2wrd2U3cktvbFM3ZGk1OG9PZDA3djhQcjhleXhZVUZOVHR3NjdxcUxMUklhR1RFQUhUY0F6WmNML21QMElWU2wrNmRsZkpCeW5jVDlFSVlKNHRjWGJST3MyRll2ZkVtbUN0QVZxQ3J2MjdCMGVjT2ZCTWJwUS9PcHJ2OGp0NzcvUG5QTWF6VnpFcHhVWFFQWnpIaUtLMFdpWFgvN2ExL25pRjEranNRdnlRakJaQkRsQ2dYY0I1MUxYSkI5UXlzUWZNVXhPWmhURmdDSWZJeUhITmVCdFpNcGl3dW5KVnFRaXdtdys1Nm1ybDdoMTl4Mk9yb3lvN0pRZnZmVjlidDUvbTVBWWtrOHJpcUxvNUFRK3JmNmRjNmxUanFMUWdXVzl3TlkxK1NqajhPQUFMNDdaWk1yeG5idGMzai9DaVdWbFYxQTMxS0ZCZEp5c2pPVFVZUm0xZnVnRXJoVFg5bTR3eU1ma1VpSk9JOEdnZ3ZUQVdydFFhWlBBTVZUeWs1VDB1eWNXSkltT2FUS1A0KzIzZjhqZEI3ZVorbE1jVFFkaUh5ckl3T09DSnpaNHpIQW9qaWQzK2VEZWUrUlhjaUJQZGxXS0xkc3ZlUGovWnlQb2xvOWhZTWE0cHVIWjZ5L3d2WGRlUnhtTnR3NHRCby9yUERmYjNWWkFwakl5WmRCcEVmTmtFWXU5V3JNekg2TEp2dzJ1a3hQNHVLbm52UE96RG1QYnM5QmI0cWtvNFhGcC8yc3FQamkrdy9YUmRaeTNTSm95dEtqVXdPVW4vOWIyUFRyQVFKWHNzTU9VeVliLzAyenMyRUxzVXFiUUhIQ0FDUWF0QmU5SjBwYkhSd2dCSC96V0FoZUVJQjZySGNmTCs0a05kYmhRYjhCOWZITlhVeEJocGthZGR6RjhqTkJlVVhqTnZ1eHd3QzR6NWxRMFFJUHlCbDgyOFRqMFFDVGE0NXlubGhtTGNNb2tlNEF0eXBnMUN5RSt0Z3Q3aUFWUVJPWlQ4SjE3bFU3Nlh6WE1XTG1LV21DMXJwbFU4MjdFN2FRZWZWV1VSTkpEK2RoazVYSit4SzRla2p1TjFFTDA1WXBmb3BUQ1NTeUNiZjEwVmJMWjZueDlyVU1obUN5Q1I2L2pQcHhXVTI1UDc3R21ZazNEbXBvS3Uwa3M5dVlkQzlqZ09uWmNNZVhVbm5LOFBHRlA3NUhiV0VuUkw3eEYycTVnL1lQYmtoMHVhcU9EUW93QnB5bDlRUWlPZGQxd3hDV216RkhvV0hkd0VaOTZYQURaejIzRUc3UnBhdTdmVzZDMHB4d1VsSGxPVlMxcGFrdVdqVkFoanlPYTl6MmdGdkJwd0xsKzdRWHF5dE9zYTVyR1F6QW9sYUVsTmlPd0Qya2tmN0lJQXNOUnlYUjJ3dDcra09WcXduQVgvdTYvZlF0UFJXY2lDWDFKN3ljV3JRdEQ2OHFRS2QxTmNrcHI2dFdDZkpDUlo1cWxuWE55OXc1ZVBEdWpFVGRlZUlyMWJFVVFRUlVCVlNyRXdySlpVbFBqd3ByMjJPbGtaNlJRdlBiS2Erd014cWltSUFRVlFheHZBV002M3AzcGVTdHRPQzhVU2dsQlIzTjFKNWJYLy9XNzNKdmZvV1lWV1IvT3ZQM01SMFZtS0FLOXV3OXU4Zlo3YjNGNS96b0RuY2RXd2lGTlR1ZUMxOUJMUFVzSDFFTUh5aFdGeVZpc0sxNTk4VFgrL050L1FzZzhxL1VpRnYwQTdzeTFKWUJSQmlOWkFoUlBCbVFWbThJeVFweHdXd3N1UzVNWTJaYSs3YjN2czYwbkFEYWlJdCtpbEo0VGtuTnRjd2JIajk5OWs2dGZ1VVpqSTV0SzBKakVxbmFmbGZCTHUrN29TMEcydmpQMGdLd1hSdm1JUythUWhWMGdOSnNQNms1dHZMNFZoaXVqcStDRlhHZTRPcnBNZkJRYjJRaGtOeUMyTFZaek9sQkp6VHVudDdHNDZPUkIxUFUzYlhkVzc3cTB0MGFpcmxLUkNoR2Y3Q0xRQWNhMklHUjd1T3hwUWdPV0QySXpMVmRCRldESGdGMTNCaTJ4N0JaMHNOeXYzK2YvZXVmL1JaSDNJRmc3UXJSeUpZaGxkSXEyelVDLytpRjJVak5BYkxTd3hyR0t2ZGJJOG96R05qMjljdnZoT2hXazVqeTFkNFZkMlVGYmphOGR3U3JRQ3RGeDhlREZiN0d4RU8rZEZrQTZXNU5sR1ZtbXNjSGlqT0FWSEs5T3VGbmRUa3Z0dU56dVFHeGZHVWRraUQzUWVJL1FZRmh4Nmg5d2YzV1BZVGJDcVF3amtZVlhRWjE3NzdiKzNrRWxiOWtReHdPVEZ6Z0hCVVc4TGxZVG5qNTRpbmRQM2tNam4xenprb3Q0WkZ3QTJjOTFLQTcyTHpHYlQ2anJOZDZwYUlqdm96NUtNY0ExTWJXdkJGUnI5QnhDN0hzZEF0UEpDdHQ0Z28xRGx6SEorelVrSDhrbkJKYk9OWlJsd2QwSGQ3bTZ0OHQ4TXVQbW0rL3c1bHZmUitOVG42Tk5hcGYyOFJNQ0VzNDVRZ2lkN2pmZ09wOWNyVUZsRFNzL3gxdVBMb1Q5dlJJYkxJdkZLY2UzYnpNOW5wQnBRMU92by80enpMbDdjaHVqb1hZTlNubDhpRnJTNENPa2VPbUZsOGwxaWEySUJUWSttY2FubEwxUCtqWTZmVmZpWlR2RlJ0S2NwWFN2OThsWTNEZjgrSjBmUlkwZEZxVUNXNFczWjgrbG9uT1NDSzVoNms5NC80TzMrZHJQL1JvNmk0QW0yRDRqMGYrdzgwNVFMTHhvMFk0RVFXeFVRRjY5Y3BYTGw2N3k5b00zNHlmNXpiWFlnU3dmT2VoTUczS2xVVjM3b1k4YmFxc1RYVWpnMmVOd29aVzBoUGpZZ3J6UEFZQTlHMXQ1bFRaTkxpMHI2M252NUYxcXU4WUVqU2hCQkVRWlhCUGxReCtWbGozcis2cTlZaVFsbDhhSDNEbTlUWFgyRFI2Q0R5blpicmh5K0JUaWRQUW9iUm95bmVIZG83LzdySHRLZTc0VkFpS2NObk51Y1llR0pHWHdFVEIxamhnV3VtSTRCSXZEQzFoeEtPOGZYMlA3cUcxTEd2YlNqTG02YjlCTlNiblk0V1p6bDdzOFlHRlhyRTdXT0lvRU16MEZFb0ZzeXBTc09tbVFUMEJXNkxoSjhaRlI3TXJBZkdjSktDRzJnYzdJMEdnY3BpdjViQkluNjV0NjJ4SW1rTHhZNHoyN3p5NDcrWWlpTVVnZG9uMHRzWkZEbEhwRUU5b1d6SjYxQTR1T0dTSDJ2VkRDMmxlRXpCTnl4ZWxrd2pHblZIaHFrc3RBZjgyK1VkeEZpSjdhMERydnFhbVlzZUMwT3VYNm9NRTF4Wms2Z25aOGJETVNxYzJ5ZU1EaFJMQXFRUEFvVWZqS1k0SkJCYytzaHF1N1Y5QW5LaTBLMUVPTDdZdjQ1T01DeUg0dTRwelJOSm4xSFI5UEFJOUlBVjZodEtJc1ltLzZ4YXdtMTJVM3VFc1N2OGVLZ0FRa0dvOFJoU3BNOUNNTjBUN0grVGhReVJOZVFjNDVWdXNGQjRkajdoL2ZZckFqL0ovLzIvOUIzY3h4ckloVDdKbUJZa1B5L2RTQlJaWmxIYWhxbWdibm05UmtRT0cwUXhVTm1kUWN6NC81d2IvK2dILzgzai96NDNkK3pEcXNNUmhNdEFlbm9TSmcwUWdxRHl6ZEZHaTZOS3I0eVB2dFpRZGN2bndGNzhGYndYajFFT09wUWd0bTRlRnpmL2IvVWJ0clE4MnNtbkYvZGgrRmROWFp3UFl4Rk5WU1VkM3hEU3AyRTlNMDNIdHdGeThOam1oZDlGR2pUN1MxcXhJVkZIWGxNTG5Ca3ZIQ3N5L3d4cDBmQWdvWEhCcjFrS3hFaU5JQ0xRWmMxTVkreVNVUVdUclpSbGdTYmNOY1N0UitubVByRnVvVldSSEF1ZGdNWXNhYzA5a3BlWkhIMXFKQlVLMzlsVkpiVEN3OGVtblJGbEZCUE9UR0c0NUdoNVNuQlRNV3NVTFNuWDFQZFBUWUdlL2hmVHhmamJjWTlmakJwOU9Lbm0yZkhjQ0s1OWI4bUFvWFU4VGFwK3U5dHcrSkNZMk5raTBWRFpWeURKUlBiWFEvZmpRSzV0NFNqR0RNa0N0RnllSHdFaS9hWjVpdHB5emRndmNXN3pGandad0ZkYm9pbTNUM050R0ZHa2wxQkZ2WnNYUWVnNjg3OE9kQ3l2d1R6NEdsUnV0NGRJTnowU2tCRSsrNzFvRWxFTWVvTkF4blFTTnBaRHNxTDVFSGpUU0I0S01NeUtoVTNFZTA3Z285UmpaSXpPaUI2aXl4MnFiRVNnbU5yZkVEamM4ODAyWkpqYU1tTm9kK0NNQzZObmxnSW9CTzQ2SFhZSjFsellKNU04UHFKdnJSU3NCTG40ODI2ZnRiWUorS2lwWEhLYkFxN252dFBjb0hUQkMwRlV5QWNWNnl5NUFsaXljNCt4ZnhieGtYUVBiekhFRW84ckl6ZXEvckd1K2lia3FKd1RhZTB1VHB0VVJmMWdBQjE2WGhkT3JpbzFRczRtcTFva29aaklsRldrKzRrUlJGaG1RT2JlQUhQL3dYM256N0J6aVdoRFI2bmp0WmZFTHNXRnZJWnEzRk9ZZkpGTVBoRU9jY2RUUGgzUSsrei9kKzhQZDg1L1h2OEtCNWdLQW94ME9LSnJDdVpuZ1VUWmNFdDlRMHVMb0JzUlNqakhydFVTb3kwd3JOYzg4OHk3QWM0QnRQNnNrWWR6ZkU5Ry9zVDk2WGMzZ2VSUXUxQnZmV09SNmNIRk94akdiZ1lWTlBFeG01dnVzQ3NVaUQrRWNYd0lqSEI4ZGtlVXJ0YXVwNmpYWUYyVWQyOFUxTWJQY2QwYllzTkE2VmE1cDF6WFBQUElmNnRzS3IySHIwb1RQZkFxQ1dRWTM5Slo4b0s3QmRtT05CeGJybFhqZjVDR1kvWVVuTEp4czk2Tm51WjJJbEkyYnd2SC83Sm50UDcrRk1sSXVFYzB4OHorcXMrM0cycFczcjc2a2F6OEZ3anlIRjVrb0tiRjNTZ21iSW1FRStRS3JJWWhwbHNENGE0My9VNkRjeThjN1JPTXY3eHgvRXREV096dC9QZHp4QVpQRzhSeWVvdUhZMWxXcHdxa0E2MVAveHcrUUZUYkQ0S2tMSVVodDJHZUx5QTZ4ditQTE9LMHlhT2ZkWEp4eXZKenp3VTA2Wk1VMVYrbzQxRHR0SkJ6UTZuanNkOENvUStqN1QyM0p6SERCM0ZWQWh0SVd6UHRWSFJMYVVRT2Qyb0FQa1NTbGNrSE8wY3dRMkVLeUxEaTVpVWh2bkNHSjlZbU45V3IwbzN6OVc4WFZhZ05BUVJHTkRqZWdCbFRpbTFTSnFYK2s1V2JRYjdpTncwZW5mTGh1bFl2R1dCVmFzV2JoNThxTzFFVkNqazlldTlMSkNyYXdnWnJtOHNqaWxhSlNINEJIbktVUWpIbnpqeVpXaGFpb095ejN1ck85OXZvZUZ6MUJjQU5uUFJmVEFUTkwydEdHdHh5WExuTWdrR29yQ1lQU0EzWjBDOFFrc2hsZzNTMnJQcVJKTDVaeU5sZUcyVHBPK1FtbEJpVWNwd1QyUktiUkhaUW94d253K1l6STU1di8rZi80VFdnVnFYN1BGTG54S0tWM24zS1pQdkFoNUhvSC83ZHUzZWVQdDEvblAzL3JmcVpsMFhxTU96M3AreXFZMEpDZlBTbkJ4c2hUeDBXbEFRYldPbGNtWmlacEVCYno0NG91QXd0bEFyalRpTml6V0JpajA5YkdQRDBtK1pmY2YzTU1UVUNyRU9WdDZuNTJhVUFaYTlsZEgrVUlMZUhVZ1dNK1NCZFpiYXRzdzBDWEJudytseityUXptYWZWUUl5b2pMQVlXdkg1WVBMRFBJQjgzcEttWlZVelRxOStlSDlFUy9Ka2VFSmNydEVDWVAzS1h2Yyt4NlIxblRydzY3dkovdmVuNVU0dDJDdHg4ejZFQ3ZxM3o1K214ZXZ2SWd2TEQ3Wnp1bEhXT3R0ZDI4NjgvRUpsMmdQWWdPN3d6RkRNMFRTNmZTd1lRRlJaR2oyc3IxVWhLcFNPK3lTK2lQWSsvWGRUSURrTk9KeDFyS2k0cmE5RnpYQ0VzQ21SZ3dCbElHUUVpWTZTRnBVZWRhK3BsWU9LeWtqSVkvU3FEODZ0SWZjS3dxdmNFMHN0Q1ZJYWpwUlJxOW1sWEhBbU9IZ2dDdUROUlVWRlRXVnIxbm9KZCs5Lzk5WnNLYkM0b2xqWnZBK2RULzBZSG9MM3hESERla3RGRlNXWk1EZW80SkJuTWY3T2hVeHhSTmxpR28wQStScG5DZ3BPQnp1WVphNk82NnQzN2NqdWhTSUlqR3lTYWtyMjBvRlJUd3R6amVJcUZhNFMrMXFKbUdHYXkrQi9yM3BVK2N0VkdxcmJHSjJpQ2F5elRwK1R4TnFLdW9FWkNQTHFqeTBRdHZZQUlGT2FoRWJTaVFwa1lyTXJNY2pqV2VRRllpMVlEM2xLT05rWFhGMGNJaTYvYkZPKzBYOEZPSUN5SDZHbysxV3NrMWY5RlR3MEZYNFpsbEdVUlI0SDFQazYxV05xRUNtcEdOWEFuR1FFeUVWZGNRT2xpMXJwU1JDTXg4QzNub2FXNlhPVHUyR2hEU3doMGUyUjJ5blRpOGVreHR1MzMrYjhWanp0OS8rYTk2NisyTmdUWkdYck92NWg2Y3BBeDI3dDdYT2IxTm5mUGhFK3NnSUtscFpkVi9qMFZxaFRjQjdpOFZ6TW5uQTMvL3pYL0dYMy8xalBNczBnUVRBYnNDbXhCYWFqVnZqbXdxSTZiYVFVbUE2QjVleSsxcEhmWnBDYyszb0dzcEZCaUF6QnR2RWJka3dzV2svdllvK2lFSGhKVEcySVI3YklCdS94MEJJQ3hORk5hL0lHSkM1SEFoa1NoTWlYVUowNzQyRldNN0ZmV2tWZDRwQUtRTUNDcUhBdUF3dGtDdUpUWmk2NnpEdWQzL1JFWWk2dXNpSUpDWTFKVU5GTEVVZS9TcVZ6UmdPOTlncmQxblVVN0pTV0Z1N1lYQjcwb1JZZmV4U09sQjl2UE5NT2xhcHphOUt6SzRFajFhdEpySjNiZlgza2NmeDRCOHpIb2VIZXRmMm1hY2UrWkVQdmFiTHR2ZUVHKzJ3NFh0dkVxaERnOFp3eWltcnNLU1dCaEV3S2tlTDdtUTNzRmxzS2RncXdqcDdma0ovb3h5TXlnRkRWWkNqTnBYZ0NSOGFGQVdHY1Q3RU9JV0loaENiS2RUTFZZZU12Q1RtdkhjOXRFMHJRcEt5aUFZbmprWXNGU3NXTEZteUpodmtzRm9sVjRDNFRTcUgycVpVdktpVXFZTEdPeHFwQ1dJSkt1QXhiRHhRMDcxNjdsblpGRGoyTzJ2WmRZWFdRcUV6Ukd0Q3NwUURRR2NzWjJ0MHBpaXlBWVVxOENhbTZ4dHZXY3FLS3k5ZjRkUXZtYzRuSE04blBGaE9tS1k5czFpc2RjbWIxaEdJOW1wZDhaVkEweWJVQW5ocW9vOTF2QkFHWlU2OXJqRTl0VWVUdU44U3haNHB5YlJHNnd5OHhHV2ZkL2dRNzNTbFZCcFArNDRGN2ZsS2M0QVN2RmRvVVNpVm9ZS0JLbDRnSTBvVWdnMGx3VFlJRGdPWVdLMkJRbU1vOFhnV3hPWUx1bzVzY0VuSmpoOVFORG1aYTdjaHN0YVJYVllkeTl4Nng2cGdvdHpGcGYwTmtIbEhyanlpRzV5Ti91Rmg3VG5jTzZTZ29HWjFVZkQxTXhBWFFQYlRqbmJFOTRFdTM5cys5anhrbzhhTE5KbW5LVllVSVJwcEFpM2c5RDBmMlJpaW9oTEp1c1NvS2xCNW1pbThRM1V6bytvbU9aOG1CWCtHY1kzRHI2QVVhQlV3cHNiYTZPdG5kSTczVU5jTm1vd3NpMXJjOFhpTXRaYjVmRW9Jaml6WEdLTXhlY0RuQzF3eDVadmYra3YrN0cvK0pBSVVZaEZUQzhhNkNQMnRpS0hUd05xOXBMUFgyVVE3c2JVVFRHUm9ZZ1d5Rnc5cGRSNjh4QUlrbjZnQjhkUzJKaTgwMDlXVTBXN0d5czM0NXQvOEovN3JkLzhLalUrRlUyNmo1V3kvT3JUcDZaQW1nU1FOU0tmVHJkdU5neVlWUEEzWTRjYlJzMmhyS01tb0Yrdll1bGVBeFBkQ1FGeGlnbEwvZDUwNjB6aGMxQzYyZ3JiZ2svZHVvSlNTMy9tbC80bHZmTzNmRVdnSVl1TlZaT1BFNm5vZGdEYVdNckZWNjJZQ1ZvaFBkbUJleDVtKzU4a2EyajBPMnp5bWFvODdFWXlIaEVnRGlseDdiTFBHcnpYRmNNejEvUnZjbmI3UGJEbExJTVdETTJoUmFRSUQyNndKQnJ3TmFBbGQ5Nkx6ZkdMYjUxb1dNQjN5N25ldEE4dHF4V2k0eDdKZTBWUXJzbkVzSnNzd1ZFVERwYTZnWXdzRXFuTWh5OGVLL2tZOUxIUGV2Q3hzRjI1M2pGVUNuZzh4MzV4ekgvVlR6QWxrQ0VtcTRiZi9qaEVxVzZFSWZQdEhmOC9sWHp0Q1hJNnhnTSszZ0d6LytQZVBkY2ZPcHpWTzF5Z0V3YWlDOWFMbXRSdXY4T1piYjBSRTJxNk5QUlFvTkk1WHJ6K1BYVmFFckVDWmpHYlZrR0Z3UHZxaHhudkxweThKbU5SeFR4emtwc0RqV1RZTDFGaFl1eVhsNVlKLy9zZC9vcUpodmxxaGlha0ZxZUpYVit1MDhWcFI2d3lxREl2aTFyMzNlZkhaeTVTNXBsNHN5WXM5bXNaaW5TT29nREk2NmF2ak9LU1VTWHBRaFFvYTdVM2NyaUN4TzVwMk5NcmpRa01uL0RTU0RwZkNESFE2cGhGZGlZc0ZpZ1dhWERReTgxd0tBNncvSU95Q094Q20xWUxicDNlNGErOXppOXVzYVJLVEM5NG9uTmswc09rcS9lTDZBQ1VPSTRZR3ozcGRrd0daVjBsWW9aRFJrTEN3WERPSEROWU9yTUtsQWpCSDZFNjJBN0FCTFdhTGhaVWdjY3hWRm8vQ1NZNFhxQnN3TXNZdVBJZHl5Qjg5OVljNDVmRmlZMllJajhadGRkNks5NzFLMTdlUHV0NEVrTFhYR0dmSUZobmFHNVQzS0ttVFhNUWpMdDVrbTY2SVNidHJNMHFnVEFzT1EwTW1DNnlxTVFPWXJhWWM3QjRTbXB3OTlsblJKTXUwaS9nMDR3TElmcTdDYno5SzcvK2huUjNvV05zNDVqak90MDdpekdjOC9BMEtqN1VOcm1rZ2FGU20wV0xJVkVZSWthM1ozZG5ublhmZklzczAxNjQ5aFNoUDNTengzakpibmxDdFp2ekZYMytUdi96V24xSDVSV3pJa0NtcWVoNjM5Z3dUdHBubFZaZkthbmVwd3dGOU5xajNyaEJnUzZhVklpZ1B2aDNZVkdJUjQrU2ZxVGd4bVF3cU8rZjdiNzdPelR0dllsblEwQ1NtNDlIeWlyQjE1SHBQdHFESUN4cE5xWVlZTVJnZjRibjBqbmJidWxIU1BtZ2YxYTJxZTBWNmxDNkx1blhjbEU4ZGtvSVFRdEVkc3hZRVMyajVMSEFoZEFDby8veERqNjBkV0YrL2RrNXNkeHphMkZsSjhuSUVqd2tGNGdLRkhxVGlPRGJnemtzc1ZFeWNiZ2dPSnc1dDlCTTMxb21xa2NnazRWdFpEWWpmMk5PZnUyLzk0L3drMzMvT1J6L3VSWEg2ZmxnUzBBZXhaN0h3bGpTbGQrMjE1N0lEdkMyem56SUhOc1FGajBhWXVUbjNwbmQ1ZnU5Wm1ybEZuOU5aN2V6dHBYcERUbjgvNDVVVGoyK0dacUFLRENhcXlidDBnbUFRUnBTVUtxY0llZmNOcmZOQXQrU1MrUG45VG1NU0ZFWXBhRnZxYXFoOVRTamd6dXd1RTZZMFdOb09iVHA5dWljeHNZcTRZRlJ4N0hSNFpzdzRuaDV6YVp4UjVublV0a3RPbHFYRlpJaU1aSnNKZVZ3RWtWNEc1Y3c0VFhRbWFSY3Y3VDV0OEtJZ3RjZjRXR0NsaXd4VmFBN3lIUTRQZDNpbXVjcXI2aVh1ck83eDd2SmRQdUFPVlZQaG03aWphZ0MrVHlkS3V0OURrMEJoT20rK2RVUlEwVW9RUlVGRzdoUTZaWFRPRzFjM0xQVEQ0U1Y5cHJTWnBmaThjU3BDeWk3NzBIcmYrdGlkak5DNVg4UXhVVDdTWWpKS0JiYTNEZW5wOElQZ1JXLzU3QW9CVXRGbm94dWFMUHBxSXhvVkNqSUtQaThTbzg5NlhBRFp6M05zcGZmN0EyUWJIbFQ5bURhVGp3WnBTZ1k0c3FTdkxFQXlsSW5hVWcvY2UzQ1BsMTk5a2ZsOHlwM2ptNHgzQmdRcTV2TVo1VWp6bi8vNHYvQjMzL212Vkc0Qk9KUldyS29GWUNuTGt2VjYvY2p2ZjdKSVFPeWhhTUdaUjJtd3RzWmtHWlBWS2QvNXpyZTVkZnY5OU43MjU4bWlaYkpHbzFFc3JOc3FtMzU4dEdtNlBySlNhVGZhLzBsYUZjU0pNUDVCQlJDZElFemE1Yk5zbW5ldE9wQnpIK044MmpLdTI0OFA3ZWREZjVmVUdsYWpsU0dJWjFEdW9ERGdxN1FUTVQwWmtPN2QxanRxYXltTlJLM3ZFd0xLVmpjWlFzQ29MRUlXNzhuSmljcS96VEg2dDR3SVNPTTlHcE13RVR3bS9MSzlRQWljdVo4aHNsU2M2NlY2M3VXekJTcDZ2ei95VXV2NnljTWl6TGw1K3lZdlhYNEo1MjFjKzUzREF2OUVFVlRTN1EvWVk1Y1BtQ1dxT2NURk1ZcGR4dVRha0pQRjFzQTlQOWgyNjFVZytoT3p1WDZCcmxVMlJpRkdVOXNWMmE3aDFsdTNXYkJNMTI5S2dQVzNxMXM4K0lUMkl0eGZzdUR1NUM2WDh4RTNSdGV3Sno1S0lveU8yK1ZqdTIwdGtycUU5WUExSHE5czNOYmVVa1NTdDJsTW5qd2UvRUs3T0ZRWUV5M3RRZ2cwRGxRTmFNTkFEVkdEbk4zQ01SNlAyVjJOdVRROTRJUDFCenpnQVRZMDJHWHM3ZWNVWUV3YUYzcGxqaEpQZzJWempYanZNUWlsamhyZUp3cHBmVzNUUXVLYzY2Z0Z0RUU4cnIzVzBpR0s3Z0xob3g2eUR3M2ZMU0RTZHhMMXRDcUE4Z0V4VUllQXk0aytCVG1zak1JbXk3S0wrUFRqQXNoK3BxT3ZtOXhPNWo3ODNIbnY5V253ZXN6clBpUWtLSkFTbzhIN0VOdDNPdDhCTXhIUC84L2VtejFKa21YbmZiKzd1SHRFNUo2MVRrK3ZNOU16bUFVUUFKS0NDSUlpUmRGa0pwbEkwNVArQlpucHI5S2JaSHFRVVRKS1hHQ2lCQkFRUUFBa2h3Q0dzM1QzelBSU1ZWMVpWYm5ING42WG80ZHozY016SzZ1NnFxdkJIbzdsYWF1T3pJaEkzOTN2ZDgvNXp2ZnQ3Rzd4OE9BK3pjU3dzZVZacko2d3ZUTmhlZmlZLy9WLy8wZjgwVi84TVptQVJYRE8wQVlGdEtDeVVjL21EVDZyRHZ2eVlVcm5rOEV3bUE2VVFjd1k2R0tIcStEMDdJZ1BQbmlQVnBhQWFzdTI4ZFhMU3YzeDJ0cmFVaWV1cTlNYlQvL2RwUWZ3TUtnUCszWHgyUFRMdFNLTUhibDZqbTAyZWVBbzJ2SzdVTjZYcDE5ZkZjU0xBWkttbzV4VEh1TG1kS04wSTFQQW0zWW1aMGtEZUU0NTBZWVc2bGZmaGo1NnZXRG5uQXJkWjhQVWJYQ1VqcjZRNVY4ZHBmR0VTeG5SeXpTVlN6K3Y3OWppMWpUNlduNzY2OERGdThVTVAyVSs2KzdYWmVtUkR5UWVQSDVBSjNIVUlTTXZETDR1aHhhR1ZDZTJxU3AycDN1WTViM1JEbXBUMmZaa0IyOHJLdU5vVTBGOG8rZk0xUnRkS2czR0VMTWFnbGh2aVNuanJPUGh5U05DYWM2RU5hT2lMNE03MFVzVHlSQURtSW9ra1lqaHNSenlKTzV6dTc1RHdsS0prS09DUENPVzJtcjN2cFJyQ2hnNDdybm8wSW9KOUdkRFhmdVV2em5jbDg4MEdSbWZGeERud2FvVVdrcUp0dFZucDNIZ3ZLZWJyOWlZVGRqY2ZKT3Y3dDdteWVKMTdoL2U0LzdpSHNlY01pZXd5cEhRbGYybWFGS1hpekxKT0p1ZUlRc0d4OVRQbEhUejNGNkk1NGNScFRLc3AwcVhKMFhyNjJySVVSdFR1TWltU0lTOWVneVRpQ3NpWVZBbExxRjNkY3RaY0ZocXF1dDg3QzlJWEFQWlg0cDQxbTE0MVcxMk1ZWFZsNXlmRmVaNWc1UjQyamJqckphcVkxRkhNRWJ3bGNFN2VITDBrSjI5Q2F2MkZGOGxkbS9XL05FZi83Lzg0Ly96ZitQZzZBQWgwQVBHbUxwaXpHQ0pFVUw4RHpIZkhRLzk0MXdqbWpFd1FrNFJVdVQrL1U4NHoyZUZMYWJPTlY5RTlJUGQ1dWJta0dsYVo1dytJMHdjWmU3TWtIYzM4blFUbENuV25IMEtUM0FxL0M5Nm5nVnREQlNqV1NYOW1pMUg1ZWxYemNhbE5aRHAxL2VzOGVXS3ozc2xESU1qeGNqR2RCT0xVeURScDh2VVU0bitYTFcwekZkemJtN201MXk1THhiS1k3U0ZrbTd3T0VMdU1EaDJObmY1OU9TK1FzMGgvZnpGUmltVUQ5bFpMWjdhWjY1TENvTzVCNzk5NHZacHpHc3YvZDI2ZEY3Z0U2RHlScGUzVVYzamhBQUFJQUJKUkVGVVI4Wi9aSXBaUjlKMW4zREMwY2xqdHR3TzJXcTY3c1VGc0s3WW4ySWY2NjFuWjNNSHU3Uks4eW5KVm9ObGQyTWJtd3IvTkhXSVdIS09pR1JNMFFPVjBUMHdidGJzdWFDWmhEaWRxQzY2QldlRDBvZ2VrTEdhMkpBTTd5ODVrOEI3YklCSTRKQmpQamw3d0dhOXpXdlQxekZSTlkxVmpNUlNtd2FUSVVZelpJMmxkTTliazBnMkZoQm1jRW5MMDcybDlMcTU4V3FJTkhiSnlsZ1dLV0d0eDFrSHh1Sks4Nld6SlNzc0JsYVJuQkpOdGNIVVZ1eHVidkJhdnNtamNNUlAwczk1d2pscUNKMXdSRENXemtlZHoxdUl3dENmUVV3WUdxWitXdWhOcnhMbFNWS3FRYjFSQS9TdmRsREt5cVduUWZzYTlCNHhaSnA0a1VyMlVtSGt3bnA2dHZoYXlVQlV1TVVLdFppaGVTMVpnN2VPVGVwWHV2YXY0NHVMYXlEN1N4dFg1V255T3VOSS8ySkwxdXNaOFZ5d1p0VVV3U3JvY2hpc05WZ0h6Z3VZd0d1djMrRDA3QkZWRS9uNWh6L21uL3pUZjhTUDMvdExNaTJKanRyWHRER1FKQU5KQVcxVWNPWTl4TC9DbGxETkNBQ2x0Q1hHTU5TcSs1SE1xTTVyVEIwZi9QUW45Q2FRaVVCT1Y1ZzF2UFJHVUxJY2h0bHNka0V1eU5vWEVWeGZyNy8zZ0RleTVxYlowVVJFQ3NWZ1hkclBCYmc2RU1qU2YrNlFMSWh4byt6ZEZhK2kveHNBODdyRDZ1cE52ZlM1QWhBN0FLOGNoYWFaMGdNN1RZanBBTDFXcUJCYU9oWXJsUUh6cGpUbWZjN29nYXd4T3BJWlk3U0pySExzNzk3QW5DaFQxbHplclM4STFDcWN1YmhnTTZKUlhJdzhVRjc2NnJ1LytHa3BXVE5DdU90emxlbVBsT3BtUHMzdEhyRmxSeGxCYXkwNUpRUlBTOGZQN24vSWQ5LzREb0ZBWlJ5Zi8vZ1hMZUVNRnNmTzVnN3UwUnJJNnJUQ3NMZTVDOW1vYVVncVJnU1NuMUpNUVBvcjB3NUhyNHNSNngzUnFPbUJlSGh3OUNrTGxzU0JJYW43MnRNTGVyQS9aR1hwN1V1aHk3QWs4MUY0Z0h4cTJMeXpoNnNxdkt0MDhoY0w3MWhRdnhPdjB3ZGRUNmYydGdMV1pCQTliclk0OFExUDdBdGdOaitEZjlvRHZEVWYxK0l3VnJCSjU3Y1NoRTAvbzRzdGNiVkNxa1RUVE5td0UvYTJ0cmhoYnJGNkZQRnl5R09PaU9wdmhoRFhUTFR5U0RRR2lCbFN5VWJhR3B0Y3FTQzhZZ3lWcFR3Q3RIMXpiRkZsTVJUN2gvNTg2Zkd4b3R6WnB6TFpML2phYzIxN3RSNEdvd1p0Q2dOYnFnN2FyRmNsaDRtV1pGUFIwSDdWcWZSMWZCRnhEV1QvbzQrZXB6a0dHU1ZGY1NFbDE0UFl2UDVaSE1qa0ZZQnN4bFVaM0FvQnJNMDRiekFtczJyUE9aOGZjYmFFSjBmMytZTS8vTC81a3ovOWZWWnlnaUVpcUd0UUdzQmd4am1qdjVkblE5UFV4Tmg5enVQeW9uSHArSms4eXVpb0JxK3ZES3V1NWYzM2YwSS9xSDFocms5RE1sT282MXBMM0JRZ2E4eG5OQlFWYW9rcEhFRjZEcXgrdXM1dzlBUGptblFwUllmVzlzMWNaUkR2eTJ4RzFnUHlzMTdCRlpGelBRN2pydldyNHZMblJ2VG4zdllpcEVodDY4SnlMS0JhdExsa3ZVUzFDVDF2NTNTcHd6UDU3R1A4dkNPWU05YjJtcFJsQUUxQ1hWZnM3K3l4YnZuNjRxMG9pL250RlVTZ3A3bXdQWUM5UUdDV0FqS0c1VUhmcE5YYmJ3N2w2Y0lpa2t0cjZ2L3VlY094YWt3ekFQcjNQLzJBYjd6MUxsVnU4Y3hlYkdlZkVkWjRwWmJnMkp4dXFoT2VVUU9QR3NlVWhxM1pGamFhQW1ZTnp0dUNNb3NlU0ErNHJsaCtTSkY2MnREbW9JMWVOWHowOEdNNlFwK1BIWForRGZUWDh3QnIwTW1lZEVSeENKYVdUT0tNekQyMkgvK0VON2ZlNE1ibXZoNmZ3bGVkU0lOeGRuMy9pZUN5MTZOdGxEdXI5NUV0NE9sU0ZuN0l2Q3JBelJjeXNldWZuRk1qNzV3TEdFNUd3VzFVME8ra3dvdkgwV0F6S0tOQnFNU1JuZU1iTjk2bFdUM0VuOWM4NW9tcTBVb29ENE95bWo2ZFh4N1ZGbE95em1aNFRueWVFR1BJNVRwMW93bFhiNVpoU2tWR3M2VVdZM1JTWlkzVnlsRGh6ZVord3ZaNVhsa2ZkbTBZMUd0YzFSRnNNWU5RT29pM0ZTRkhPaEdpZFFqMTU5eno2L2lpNHhySS9qTEhHTXlhclBVem8vcWdxclJmNmI4WDBIeTljdkUyZ014SmRLUVVOQ3RnS3BJRWpzOCs1ZURnUHYvaS8vbG4vUGlEUHlld29EWXc4WTVWWEFDWlNkTnczcmFEZFdSS0NXTlZ1elpHbU0rZkIyTDc0ZmNWd01VbG9OOXoxWWFNcGNuRTJGRlBMV2tWT0FxSDJGRjJ1Nm9Ob1h2RjFOeUlQdUNjS2oySUlyaVhtT3dySEJxWG1mdXU1c3ZmNjdWbCsweVBtbi9xZTY3OGlTM3I3dC92UzNlWFg0M2tTMEQ1NVRLeXVnMnhsQXNqT1Vmd1paMlVUUEVRWmtUNkVMclkwVWxnOW9wQWRwMlJkVU9UblNUd3hqT2JiQXd3MXZUNlJNTWgvV0xZY1QxVm9JODFUclVYUWFkYytQRGxFMEVGQ09kTGw5VlZkNC9wZVpMRGQxUVN6eGhERnNNaFI3UjBWRkl6TldQNDkvTGhyY1ZsaTh2Q3hOWFVWRXlONVV5V09Ed05FMmJWRk51Q2Q2VTczeFdqRUJPSE9mdXpJdWVNcXp3NUNLMTBSSmM0aUkrTDNXc2VQUi8xc2h6dmpRV0dwSzlvSFFhclZZU1lNbWNzK0VINkliTE0yRzExVWFTenhCeXgzbEs3bWh6S1BTSUdqTXB1dVd5VlpqQzZoaTdrSFM1eFkvc000VGd6S3dYQVNRNmFFTWhnOFRoZlVlRXh2bVFTeTBTTkRDbEgwa3J0cloxM1ROd0dYOTJhSU03VGRwSFFCVTVvdFRNL0FoT0c2MDROUS9wY3RkNGZlakc5Mm4wZ2hUcWsyV1duUmlTWEhoLzkva3YvdUMvYkl3V01wdUYrc0MvNWV1bDRqcE5CNVhObkJVazZKbVJyeVZaMXA5ZjVuV3VXN0M5Q1hBUFpMemwwMExhRUVBWjNsSzdyY0hhbVRseXUxTXdRN1dvV1UwclBwWWhtMG5wSlJhUlVTcU1FWk5wMnhXeFcwM1lyQlY1eGlhL0FXaUcyTGNhRHljKytERklJeGFMV0RweE5kVVBLWkpZWWYwNWlTUnRiRHA4Yzh1R0hQK05IUC80aDc3Ly9FNDZYajlFbmoyb2tyaVNxZTA0WkpCZHRxMXZlbDlQTFlQSXlkSUxlZjJsY2toZTUrRHZqNzVUMURZS3VvaWtBMDJ1UDlzdGdEWEtzdGZ6c3c1OVM0MW1TaUtYMDlnenozSmNMV1NPVUMxN3dKUlRZcWthaTlHblRDMytlUnZ1a3l6UERma0JNaWVsMFNraXErUnF6QXNmWmJLS2F2L1BWMDF6YThmTHpjeVl5WmIwakxGQmUxMHU0VVA2OS9Ma1JxR0RTMUh4NmRNYlduUTI2bzVaZWVUZW5nS0VoUzhKamdVQkh3RlB4NDUvK2lOLzQ5bStSNXVtQzlXV2Y3WFhXYVROZXVjYkduNDJWR2ZwdGpCSnh6aEZqcEhZMVhkZnk5aHR2WS85RU9lU2FrOVdtTTFkNWF0K3dXaTVmN1Fvd1lCcURoUDdjNldtekdMeXZDTEZ2Q09vejNxeG5LdjNyeGNXTjVMUFdBMnk5TWFHYkx6RFdncWpqVW9yRjdLVEh5Ykl1cVY4KzQ5NTdRZ3dzWlRtQStuLzEvVC9oSC83bi93QjM3SkVnZytOVzEzWFVkVTFkMTZ4V3EvVzVscWN6OGxhRW1KUWVzbG9zbUc1UGVXMzdOVDQ0L1JqTklkYThzL01XeStNRnUxdGZSVHE5MXRxMlZaazY3d25qeWRHd2ZJYm5RRGFRUkYzM0ZtSEorZUtjT1hQYVlremJiMXNmTXZxMXIweU1KdzVSRXJFNEZ0UWthancvYW4vRXdVY1BlV1AzRGQ3WWV3dHZaNnhPbDV5ZW5MQlQ3VkFabFJXVG9uc3FXVEI0clBOazU1U0xub3N1UjFhYWdKYTZwVkN1UmpGa0VuT1pjQXFPakxGYVpwZmNFVVZWRnRiWllMUU5Id1BPWVl3YTdxYVl5ZWZDVEthOGUvY2JiTTVuL01XVE13SXRUZ0o5c2F4cUlDeWdta3dJYzkwTTU1eWVqMWVwckl0T0lGTVpxNloxVFZ3dHlUbFNOWHAvMWE0Zm16SmpONjRNbXBHMWVaUmMrQnhSSmczcnlhUWV4LzcrTXNheWFsdG1tMU85dmxjdHM5MU5PaE92R2JLL1FIRU5aSDhaWXVBWVdTN2E1cWl6VjkxNGZOMXdmUElJNXpNcEorcUpKNmRPN1FqdGlCdDM2ZFZPSENrRlZpR3hXaTFZTEZiTTUyY3NseTBobnZPajkvNlUwN05ISEJ3ODV2SGpBOXJjQTRkTVpUeEJXdGJsZStIS0hOQ1hSVE1xYms3anpSaU9uc2xGelNBUDlyNlJ5RGdML0VYb2lJNEgwUmpqTUpucEc3NmVGMWRnR2IwT1JsN2kwK21VbUNNcFJWenRzTUI4TldkNWRvWmttUG5KOHp1UFA2TXpPSXNxUy9RTk41ZGZRYTU4WDE4VHgrZVAyVENiWkJjSmVFS3hKamJHVUZlZXR0UFdwajQ3cWNTWnpMSTdKNlNXaHVwSzhCOWpMTFNWenc3YmM0cEZDN25KRkRGOXNkeTB0N2lmRlZqaExWMXN5VEVSOHhjamdpNDlzVlBBZVV0dWRWS1ZZNlFxRUZwejVjV0FJYU9aeEh4Uit4Ujh1YnZLc1NyTlF3S1lUbitYcERQRS9tNDBGeTc0UHZwOHJHYWVZRDFaeW9WU1k0QjVYdkRrN0lnN2VSK2YxemFsdlczdGl4NTdJMXF5ZGNiaGNHeFB0N0NuQm8vSGtObndNMnBUWVpNcGhpWEZCVXBVdGNES1dtMVpSc3ZzcjJrUklVb21GbjdzNGRraHNVeEdJK25pOVcwWXBNeWUrVWdhZ2RvdVIwNDVZY1djTStZc2psdk93NUt2YnIzR3pla3R0bVpidE9jdElrbTNQMld5NkRtd1ZnSHBzbHVDZFRpajlCWm5JQ2RORkVqS1ZNM3p5OWRHMWtET2tPbWRGUkcxWlIxbkRNdjBvZEFVdE1ISkJzZk1UckE1c3V1M3VjTWRsaXh3dVZYNzhhekZ1L0ZFQklxKzhDQi85dmtCblhPTjhxL0YwTVdzd04wSUxZSGdNcVlxMTVHTXh5VXpBSHBqMG5OTzFtZEY0WW9idmU5N3VwV2dTZ1U0cFpZWXE2NW94aGlheXVNc3BLNGpzTVM4Q29pK2ppOHNyb0hzTDJXc0gxNU4wM0IyZHN6UFAvb3gvL1AvOGo5eGN2cVE0OVZETnVxYWVYZkNaalhsS2dEYnY0YWdLZ1I5WTVjT2dyR1VoRG8wMnhvdXJMT1A3a3ArN1JYdlhjWktWeUswcTViejZtVWRXOVovV2JCOUFGekdFR05MMnk2SkJFelBiTFNqc3VNWEVFTW0zam5sbmhuekFzZEE5MEM1c0gzRzUySjBzV081bXBPdE1KdE9xQ2FlU2UzcGNxQnluclRzbnR1d2taK3prMFlnT3dWMGZkUEU1VmRqNU1yM3JVQzJDYjhwdUcyb21wcGdXK2J0Q1IwdFVWS3g4SFZZYTVBY01hZ2FSZ2lKMC9rSjgvYU1HVk9rY0x6N2pMYTFGa2tLWnIxL21VZWNackdNOUpKSWh0ZGZlNE1Ibjl3RExKWFZLMTFLSnRGWlIzelZpMkJkVUlHZ3dNempjSGhjeVFNemZFVUwvbW1Bb21yWFdZcTlnQTdOL2I0SUVJbTR6dUdvNllDNmRvUWNjQzVyRTFUNzJZQXpvZW5hSkpsRUJJU3pNT2Zld1NmYzNOdkRpWExkbmRNc3VJaG93K1puaGtXeXdWY1ZYaHhlSERlMjk1R0hNbGlRN3N5MmFWeXR6VXRSOVN1TVVibXBuTk9GelBQUWdiNkd0SWdSWWxhaExmSHc2Wk9ISkNLaDF5em92enBLemw3SlcxNFhUdGF2RHRxc29LN2puRURnZUg3SzQva1QzdGg2Zzl1ejIreE5kMmp5aEFxSEUwc09saHlWUnBPaTRKdW1MTDZ2QWhtTXM5UmlTMVZwelpXOWZPd2c0NlQvSkpkcFhta09NeUJZZWh1QW5vcUFvQVl3NVpubkltelVFOGlCblhxWDEvZGU1K1RvaUhOYVVtb1YyUGRBTmdFbWswVllwU1hHYmF1eXlPZWUwRnNJR1lveVFNd1owMVQ0eWhOc3hFd3JGckZQaERDU0UreWZlVDAvK2hYdVFkRitFVEVXaktWdmxwUUNVYk54NERxMTNUVVdWMFdNN1FqcG5EUllrMS9IbHgzWFFQYVhJWjRGUkl3K0NEVUxFUG53NEQxZ0FheXdYcWh6WkJFUEJzZW9Lek5uSmJsbk1XaTZvQWhRWjBGRU14cFd3Rng2bUR3bE1INUZyRG1QbC9mbkpmZi9WV0lvMVkweW1hUFNyREdHTGtXV1hhRkJhTDZVL0lXa1l5bnIwdXpyWXJFWXNvczZXSTlIejJkcyt6QUMyd0xBeGh4ZllXTnpobXNFY1ptejFTbGQxMkViUXl1dE9pbTU1eWRkODNNR0NUTU1JcytoSHp6bk9HV1RhR1VPWWxnS3RLdVdKVXNtVmMyQ0Z1c2dySW9FR2hGRHhMbUtMZ1RPNHdtSGg0KzV1WHRyV0UvTzJ2emluRVA0N0l6MjVWaDNNR3VGd29ybGpkZGU1ODgrc1dRRXEzcGdMekhKZUlIb2dVQUd4SEZqc3NmdWRJYzZOMVRHc3pwZkR0bkZqSUlRTVZmb0RSUitONHdIZk1BbGxxR2wzblNjdG1mWWllWGc5SUFNZFBGaU5xdmt1b2FmQjllc1Fxd1ZnV1Qwdmovbm5JOFA3dk85M2UvZ1hEMFlTampuQ0NHUVVxS3FxbldLODFtUk00NUtyOXNrN0d6czRUQlVOSGd5MjdNdG1sUmpvaWpmMDdpaG5DMGlLdGNuRi9talZ1eWFLMjR0U1lSc0llYkFwL0ZUSXFLQTNQSDBRNmljMnRUZmV1UFBMdCtPQnFoMDNTbkNLZ1dFY3o0bWNIUjJ3czdaTm05dHZzMVd0Y0hlZEpkWnMwRTlxU0JCQ2hsSjRHcUJCRjBJbUpSeDJWSWJoM2Zxa0tqVW1LdWZBVDF3N3lmaHlxUHRnVmpmdkZScUdjVkJqT0tvaGNrNHNYaFJLK1l1Q2ROcXh0M3RPOXc3dWNlRGZLamF0QVJWK0JQV2piZ2lyTG9sTXMwS1JEOW5SbFlkWlRNbUpZeTFkSG1GODU3b0k0ZnpKMWdQYm1JdlBHTjY4NGllWnZCS1BSSlFNckpDTXFib0J2dGhQVTZndG81Z083eFA2Z3hIeERRdDUzbUZxVHd4WEdka2Z4SGlHc2orMGthWmlST1lURHkzYnUvaVNWU1ZZUmxhbHFzRk1TOWZXTXM4RDRQdDZFMEQzcGJtNFN2R0srZUd4dUlYaUtzendsZDJjRjljeTR1dTRKblJsNUZIVmQ2eUZndldreVBsZ1ZVT2xuMmhsUEVMaDdVV0VweWRuYTIzNlFXdEYzdlFwWU5aQWNGbEppSW04K1Q0Q2VJaTUrMFpmL2luLzVJUFBubWZadE56M3A0akJpYStlaTZRZlQ0WS9Hd2QxK2YvZmFUdEZsVDFoQ2dUVEExSDg0ODVEMmRhRnMwQVNTWGVTdGszU2w4ZVR6eDQrSUJmMmYrT0FsZVJBVUQxbWRrWDB1RWRRbUdjRmJDa05iVmcveGFiYkJCb2lTa29SOVFZa2lSUy9nSjBqaE40M3lBcDB6RGgzYTkrays5OTdidHMyVTFvaFkxNk5wemo0WjQybW5WTFJuVmdNenJvYXRNVUk4azFvV29zRDQ4UHFIZHJGckxnNE93eHYvZW52OCtpbXlNMUxMdlZNeXNnaGhGVHFSQm9nMFFNam83QXdmbERWcXNWdTlVV0tTVkNDRGk3THVscjgrTHpNN09TRFNucHJGa1NUSnFHRFRab3lVeVpNS3NtVk1rcGlzNFdYSStsTG02d09udjFlejE2Mzd0aWZKQTRucC9TRVZTdm9PZGw1RkUxWnB4eEhWODZ6NzhGNkpPV09DR2tSR0tweWhvc2VIeittRzEydVhHMnovN21ManZUWFRhYUtmVkdRMjBxOGlwaGphT283aXVOSXdkU2RyaTh4TnVHcC9QRXZjS0JMWDh6ZmdhT3VCRWo2dFFGMGYveW5sTFVMVFpiQ0lMM2xsa3pZN2Zlb1ZsTkVBUkRRRktaMkdUZDRVeGkzczJSell6RXoyUWZQVE1zbWNZNmZCYXl6OHlYSzlxWU9lbk8rTUhSRHdoRVZpeEtXOTd3UkI0b05RS0VWMkxJcm1Yb0VyWk0zQXFRWGJkNFlsR2ppRVNrSXlNWVdwUlcwdkZYcUE5NUhTOGMxMEQybHk1R1dUb3laMmVuK0Rxd1hKMFJhYkc1QlZxc0YyenVTZlBQNFRnbWhpWk9zZURMVTBSTGZJN1ZQR0t3Vkw0cVpWd3Q2WVlZWGhERTJrcy8yeXZlLzZ1TElYdlZqOWlEaGFzUy9sVXNmOTBvWmxBNzArR0orZ1ZnMmg1d25aNmVEbzEwM3J6b2d0ZkhyQyszalMxaUo1TWFPMjNJYmVUdzdESDNsaC9obG1xMUthUytnUFlLVy8vNWQxNWRxVElzUEprSkJrdTI1eGdIdm9ocHBHVW01NER6Qm9uUUJTa3M1Y3duOXo0aWZUTU5qWWd4Um5KeE9MS29Dc2JMVVF2NlhkSnNyQlhMZERybG5UZSt4dkhINnZEbGpDTitCamg3bWZXQW8yRkdKREJseXQzdHIvRDY3cHRNWXFQZ3BsV0FPcjdRZWlBYkxhd0szY0JuUTVYVnE5NUpueTFQR0N4YllVWWRKOVJWdzhmSDkyaTdRTVlSMnU2WkNmOExiNjhyOWFTY2NXWDRuM1BPd1pNRGJ0KytnWE9PNVhLSmQwNG5aaThRUnZUK2lsM0ExbHBOc0JqMk4yNXdmLzZBWFhNTFQrbU83NFgralJtdWIyOCtHOFE0NStpTU5tZ2RQSHFFb0tDa3YzK05ySldsQmpEYmIzNmZMUytIdmlRajF3ZG9kT21Mb0lLQ1Rwc1BvN1JZT2xvOEMxWWN4aWRNajJkc0gyK3dPZDFoWjdiTlZyWEJUWGVES1EzMXBLWXhsWjdyTHBQYm9DNWtwaHBsMkROR2ZObnUvcmxWajBnRitoMWh2ZDBLTXZXVHl4YXdWWWJLV0ZKTXF2MmRERGtZdHBzZGRsZTdQR1NGbzFvL0o3S0FWMXJIZVhkR3N2bVZPS0pHd0tWT09WcldndWt3dGFHTkt4NXl3SktXU0NZUzZkM2wra2R1RDJRajVoVnNZdVVwSUZ1MFcxQ0NqejZqYWlvTWlZNVl0SWN0eVVLUzdxV3JQdGZ4VnhQWFFQWS8rcmlxejdpUHpOMnYzQ2JsYzg0Vzk0QklsNVpBb0F2Z0t1V2RLZitWb1h3NGZqWE9LMzhyNllNc2x2ZGp1WC9yYW9zVWhTNEd1dGk3Y211aHk5cExITXZMZytid0RCZ1BmUDFJWWk2OS94K2loTk9Ed2pUOGJnd1kzQUEyWmRpdS9OeXEvOHRFdit6NWZFNUthUTJVWDJoN0N4MUNsMVJlKytZYzZGcHRTSWkySTlsSUtuem1SS0QybGk2M0Y5eUNYajVlY1NETENxU0ZTazBtY3F2NExwVi9Ea2lDZFVWc1BzUEVRVTV3Ny9BZUp5Y24xTk9HeVdReWRNNi9TaGd4ZXM2bEJ6bU9kOTk5bHg5Ky9BTUNRVXZuTWVDZEo2WlhBN1NhOWZFUURKNmFHL1V0YnN4dXdUbWNINSt6YVdhNDZIRFpNS1lMOUVBV0sxZ3JZQ3cycWF0VDFRTytjbTkxRXRteW0waXIzT0tqZXljMFRNaDBHQXhMbm1jRFBZb0JTMlZFVk1raEE1ODgvSVIzZDc3R3hzYkdRQy93M3EvbDlENWpzZDdWTEVNb2ZHQ0hST0hXamR2Y24zL0svdTZlV3RFbUlCdE1hV1F5aGE1Z3JWWHVJaU9zTFZ3QW1NYm94RFBFd1AxMFgvTnAxZzVBdExkekdMS3F3d2JiL2lTTkx2RlNnWkRSODFHS2FZa0ltRXhDQ3FkWU02eVZTVVF4dEt4WXNPQ1lZL3p5SWJQbGxFMDIrWHI5RHBzeVkxWk5tZFVOTTlmUUdEVlljTVpweHZlWmMxcExMMStsVHNFeTJ0aDh3ZkZxb0l6MENkdVN3YmZHMFVZdDZRc1pnckExMldTdjNlZng2akc2UnhaTEtEdXNtN0ppUVNaZ3pPUnoxOFFNR2RNbG5DUU1OY1pHL0V6NXhNdEhMUzJKYythYTlUU0pnUXRiN3MweEZlWlY0dUs1N3ljSXVsY2VOV0lvWjFXMUxvelI3YkZHT1NqWFdQWkxqMnNnK3dzWE1ub2RQNGtLUVo5Y2JySStkYnIraWhXZ2RQUDI5WjZUd3lPc1h4YXVWYVp5RHVjbnJMclZpQkpnMTZ1ODlDcXhmekNXdWJBcC82eDJWSGVoSDh3dkFtb3p0RVJmQWhhakRNZG43MzhmVjRPVDhUZDZMRGZNMkxNTzV1dkhPaGRvRkwySSttZkZ1RXo5MUdaL1VVRFdDaGxoeVp3b2tVd280TEozNkZJNWZ2TEY4ckwrMExzRGdReWZyWmM5M1ppeFNuT3M5MHczSnBwOXNKR1VXNkp4Nis1N0F4ZkErYm82dlk3eDVUZ3V4MzdlNDFCMllUMTlDQWlaWmdLaGdGYUxXdVU2Y2FYTkNLZ3RkSVpGbXZQbzlDRVRNOFhWQ3A2YzhkUkdmeFl2dytDZURFVXFyTWdTRFR6S2l4ZWlqT3FrUml3bVdkNjgvVFk3elQ3TGRvWExIa2Vnc2pVeGphK3V6emdPVjF6dkZrcExGM2dxdnJML0dxL3Z2MDRUYTFLWDJOelpKcDBuckZtM2ZPVnluc1JrN2FndVo5MWFxKzFSeHVBek9CR01lRko3eHM3MkZoMGR4OHRqRG80UFNHVDBLb3NYdG0zZHM3MitscTQ4LzBZZC9FSUsvSnlQT0RSSFRLb0dqT0RGTWFFaEpEM214cG1TZVJlVmk2SXZsRnZFV0Z4bHlZdU95cXBxUWRVNjd0UTNtZEN3Myt3alNXMTdVN0dMTnFLbGJjbysyMkpqbll3bEc0VmNpQ204V1NGTElKZ2xjK1lzV05FU1NZcE9odm5xR1A1ZHFBb05qNjlML1AvK005R2o5ZFIxMUY4SEhrSlV1Yk9xVkhJaWlZNk9GU3ZPV0hEV0xhbW9hSUpuWXpGaGoyMzJwenZzemJiWmJEYW9USVhMVHMwVXhHRnlLWkZoc05tam5FN3pUSXBZTHg4MkJyRGoxMlF6S1dlOHFUQllRbkpzMUJ2c05GdjRsU05nMFBTRTBNc1hDSWs1SGF0S3FEdXQ3SzJkQk5mWjQxeFEvM2piVEpFZ3MrVWV6TjZTcFZQUW5qSkl3a3BDellCWHFoUlRoVFZxTFNkTE1tUEZ0UmVLQWRpUHR1Znl1TEMrbC92OHRpWGFSQ3pqb0tzczJZSm8xK2VMci93Ni9rcmpHc2grcVpHTHlIakMrNUpOa29qM00ySWJsVzgyN3Z5WEVXQVoyK2YxQXZxNWZFbEV0ZkJJZUdldzFoVS9hNmNEVENtVHJ6SGpTMlN4NVBLUFYyZE5SZkxUOS9sVkdQV0ZNbnJQL2s0dk4yU01EbDR1Z3hmSVNiTlZxaVdwZ0tiWER6VlpocWVnbEFkdFAzajN1clM5RHVWcTFWTFhOWXZGQ29OVGVnWU9NZm1DUC92bkRnY2hkR3h2YkxPYXQ3ejMwWS80OXB1L1JrV0x0NDFLRG1VUW96elFaSVZzMGlDaFl5Umh4QmVwc05GRFdWUmU1L1I4eVdScmdwak03djRORW9tWTUweG5oamFzZ0VZM1FyUlFwMllaOFFLZ25XNVVyTTdVN1dmbURESHBjYXpzaFBNY1IrZjU0aUR3V2FHbW1oVXFQSlF3UkdiVGh1V2lWWTNUcEZRT2p5RjJFWXNuRVRsdk03REFJUHpldi9rWC9BLy8vZjlJWEMyWjJnMThWUlBheUdJNVozdC9rN053Um5icWIwODJCUlJVK095dzJhb2hBNkRhdGFic1JZSU1ObmthTXlOMWtkLzU5Yi9Mdi95ejMrTnhlc1NFRFNTQVZRWFBrcUhKR0tjV29Ubm5pMDFPbyt0ZXJVUjFNSy9Fc2MwbUdXR1hYYjc3dFcrelBkM20vSkdLZFlhY0VadUhSWWtvNzFsSTVBTFFuZlNObXBiT1dMQVdneW4zUVVhODBOU09nK01EV25kS1lNbUNPZTNFUUZxTmF1cDYvYS9QWEw3NGpPam5xd0taeUNwRkhJNEhKUDZpL2ZkTXFkamYyb0dqek9iV0ZnZEhaK3k5Y1pQemNBWW1Va3RINzI2VnhKT3RKNHRsbWVaTWR4cE9GNmMwOVpUdHVJM3RIRGZZNU0zNnE3alVrSzBsVmdKbDBtVnlJZ3VFbEhFaUNuU3RJZUhJb3VZS1ZoS1lqdFB1alBwdXhaLy8rVjl3d2hsTUhhdlZxZDU2b3JzZmgzU2xCMU5Za2YxK080SFk0YjArNTJMU01yaXRhbkxYbGZ0dk5EY2ZQOXQ2NHpCUjJvRXRWNW95dGl6YUdwYWhTSTA1TWpYZ2wwSzF0TlJZWHJOZlliZmE1dWJzQm52VG0yejdiV3Bwa0E1U3A3UXVLMFdDenVTMVJtL1J2KzZkRS90bXVJRTFZZlJ1YlVua1dpc2plWm53MWxJN1J4TThIc3VDUkc0TU1lbzQ0NXhBNlBpVUV4NzdqbjJicUwwbEI1VVk4NzRpaFVoSWlXWmEwMGxITnJuUTFUVHJickxGWkkrSTR6QWxObmYybUxlbldMK0I3ektzT2w1bm4zczhKRnVZOTBtSHdnRnhRWjlhUGQydHZUQkV1djRKcmh6dDFFK2IxaHpibmlhU3lpZUkzc2s5bGFBL2RRbklydHgveFpRdEpTQkllU3Faa3FtOWJ2ajZzdU1heVA1Q3hLWE1EaFF3MEdmZzhpampWamc4b3Q4Zk1wSGxjKzFhejBOSCtlV1orSVdDekpEMC9YSkt5MS9FTXNhSjFWNk94WldmRGV1TUJHZzI2ekpQYkwzK3oxa2dlOVZKZVZuMWNqbkhVUEhKZzQvNHp0ZC9GVkltNVlDVENpc2VwUGdyU1UvdTYvKzRsOXk1V0Vyc00wdGJtenNFT3BhTGxuZS84UzMrMmIreVZNNnhYQzB1bUljOWF6ZE1CY3V6Z01td09hbnd5VU1LeXBIT2hwckppS1BXWi9INkpvcWlkbkZoRGV2MGg4WGo4ZlJPWXhab2w2b09rVkxmWkxIKzlvWDF1SXpreUdrODVzT0hQK1hyZDk1bGNUSm4wMmxtWjNPNlNleTB5em9iUFQ1YUpSajUydzg3S1ZySk1HWjBuNVR1OXc1bXpRWnYzSGlkZDEvL0ZtY2ZudEdXVE5GT3M4dFJlMWdtUlFhUnVKNUllTEMxSXk4dnpuYUc2MUgweEVjQ08renlqYnRmWjZ2ZUlMV0oybFZVMDFLZUx4bHZLNUJLOTNaR0FhMGhZM0xHR1NrNFU0cmttU20zZWNJWnczbDd5bVN6NXVNUFBpVDJXUzRKbDhpaC9WbTY0bDU4NnVMUWN4dE5Ka3JpNDlVOXZzYzMyQWcxZTlVK1lSR1lOUnVrMkhmS00zQTFCc2trOFdTRFpreEZlYzRWRlZYcjJMSGIzT0VXRzJZMmxPNHpZRXhlWnhSSHg5TWFCZkxxbFdVUms4cmpNMkZjNHNuNU1jZjVtSlpBRWpVemNXa3RXckMrSkExclBlNXluZlUydUZtenZTSmdrc09aaWk0TGxURU1iWm5QbXJnL0k1SXhTdld4QVV3aVNxYk5oWktBL2p2TGN5WnR3MjY3dzliUk5udnNjWE4yZzF2YmQ5amJ2Z0huNExJVXB5dklXUVl3S3ozWGYzem1SdGxITVpyVTBGOHMzaWdRZE9Lb3hJeVBhUm54QUFBZ0FFbEVRVlI0cUhIZ1g3Z3lZVjZTT0Fwek50Z2c1WklleFNsUU5hamNXYjhkcG5jUnRGcGR3V0xFa2ZHWXh0R0tKUmw5RmxRNXMxM04yRFl6UHBGVWxGdEd1MUZ1cDc0SmE1a3ZaOVA3aWFLNnZ6WDRValRLNVc5eU9kUGF5dGJoMFNjUkJjenFQYWJLc2JCS2VkVE9aY3JrRzJxVWlxRU9jZGZ4WmNjMWtMMk82L2lTdzFXT0dBSWJac3JQZnZZQitiZFY2aVdtaERYVmtDZGJqNHVXRjBIUVJ0Uks4dmo4QkZjNWJ0MjR3OTN0dTl3Ly9ma3dSVkxuZUJob0JaZW95VlB2V2F5aXJySDFkSkp4Tkd5enpSbkxvbm5heDNxYmVpRDd2R3E3TWtRckVoR1BaV00yNDhsQzNlQ2NVMnBCdnFwYU1FekFoQVVMZnZDVHYrU3R1MjlyUjNycU1HSnBtb2JUK1NtdTlrZ3VFendSVEM2aVBXWnRTTmxQQnk1M2hxc0ZyMVk5ZHJmMytPYlh2OG5SMlNFL09md3hGWVVtaHlWYm9Xa2F4QW9odHVTUUlFRmVKamEyWm9RUWlHMUVDcC9PU2ovZ1doeVdON2JmNEp2dnZNdlVUMW1jekttbG9YSTFvZTFLeHUzWlIzQTlrYlhZVWxLWEVlQXczakZQQzJKaitNbkRuN0VpNEl6VkR2UXZ5SmpvNE9DQXMxdHp0dk1XZmxxemVMS2dtVTNwVWxxdm94QTkrMHlnS1pQem5IVkMwdk5xWTR6TXRqYjVxdjBxZFZYMXJmTFBpUjU4WGd3eFNyOHczbkR3K0lBRjUvcEJvVUwxd2lNT2lza0VaWmFSMStsVlVVNXNoYVhKaHBxS2dHQndtT2hwcUVpU1AzOUdUdFJpUWxLcGdKZzFOejRJeEt3Z01nQXJqamhrd1FPZXNMczQ1RFVXdkxrWmVOM2Z4Y2IxL3ZkR0tpL1NoTlFiUjZpYkhEcVJLOVF4NDlhVzF6bVBLVWQ5eGpKeWRIckVhL1d0TlRpVzRrcFdtaS9YWFArbmxXZWtUTW9xNzBteHd5TTQ0ekF4TTV0dXNMZDFBM2Y2b1Y0KzBuTUo5SytUZzJVQzc2RFQyYkxPUlZNdW5HZFhERFZNZ2RhMmNMREgzUmVhZSswMUlSVDZ5bWhMbGNBeVJlOVVNSVJTdGZGNElwR09ybngyblpIOXN1TWF5RjdIZFh6SklRVlZpQWlmSGg1d2RITEkzdDNiaEhsWGVIOTlScjAwdTRqeTBxQXZWR3IwUmdORzdBQXBWOHNsc1kzYzJML0I0ZUloLzhtM2Y1T0gvK29Ub0dMYVZKeTNDMzBVbXhFdFFaRUdDQ3pPSTQzMU5HWktqSmx0OXZpYmYrMXY4ZmFiNy9Ea3lRbXpqVTNHL09qTFVqeDk4OVZWWU15Z3NtYXJ2Q0k2OVVmNjNkLy9wNnp5b3VSRktGbmRNY0RNRjBpTmdSWHZmZndURGs0ZWNudmpMbUVlbVBrTnBTS0kxUjJMTmNuRzRnUTFHcXJNMWRPQnZwRWtHYWhzUmJkcVFReTNkMjd4M1c5OWovekR6RStQUDZDTGdRa05yWFMweTdZc2ExMW50czR3UDFrTWIybFBmZzhRREEwTis5emluZGZlNGU3ZVZ5QUliUnRvdk1FYVF3aDVaTkY1ZFdSVVhjRVZBTnNEZG9Cc004RmxaT0s1ZDN5UEo1elFGb2VpNFJ5L1NnaGdEUE04NStHVEExNjdjWWMyQjRMTmVDZmtITWQrQlpmSmlIcXNqU0hHaEs5cnBjNmtSR1VkZDIvZFhuOUgxbE8zbnBzOVBtK3EvYnZPdHVWaVhScGNKbGR3Y1B5b3dCS2xib0VDZkVLNkFMSFN1RHBWSmdJT3dRTTNxaDMyTnZZd0M0c0V2UjhFaTFTWFdkWXZIcDN2K0dqK0lYT2lDak5vVW5PUWh4WUxuZFg4ZDRyQ0tyZlVaQlk4NW16UmNyUTQ1ZmJ0ZmVya0JuV1Zsd3VMRTRPVXF6S1IxQWJiaWZLUnkzK1M4akFoVVhxV0lBU09UcC9BSGJER2tKTkJvaFMrcmNOYXBVdGtrZUkrZGpuNktrd2t4UmFWSEhaMDdaSjZPdVhtNW0xMlR2ZFpjSUlSbmV6Z0V2MkRMMHBwR1FDZHl4aFZzYkJSdWVJemFtN1Z0M2pudGErcGtrZDJLazhuU2lYb24xTmk0d1d0N1A3NVlJcVQySEs1eEZXV2FES2RCS1F5UkJjNU9EN2trL25IdEhRdmVjeXY0Njhpcm9Ic2RWekhseGtDT2FnTVRLREQwdkt6ajM3R08xLzVKcVpTa0p0TDlpNkxsdjRZUUMxd29iQlYyblg2Z1YwTUtXZDJOM1p3MldHajV6ZSs4NXY4NVYvOFd4NHVQc1IwYVFCczQ3eENQNTczQUdMbU4ybmJqR1BDYjM3M3QvbnR2LzUzMmQyNlNmdGF4M0xaWHV5T0xnUEJ3TVZMVndQY1BxckdFMTNnWE03NDJhUDNzTmFSRXlwNlg1VFFrb0RwL2VQNzdldXBOV1FPZWN5UFAvb2hkMzc5anVweWVzUDU0VG5UcWZxajk5bktOQUxiZmJQY0lCaC9lUnZMWUdjdDJPUUlxNEJ2S3Q2NTh6YVZyYWgvV1BHand4L1JFalVUV2dxWFZlMjFFU29FUWd4RFFySnhqZEpGNksxbEhSTm0vTmIzZm91M2JyN056TTBJSVlMek9GUnl5WnUxT1B0VnloSzZ1WTZNcFJJd1NYQ2lEbnpKS3VPMU5ZRTh0ZnpnMzcxUGgwb1Y1Wnl4M3BDanZESTF4am9nWnU0L2VzQ3YzZmtlNS9OejZtWkdKd0ZzVDNmUmt5a21qU1lQdVRCa05HOW1qQ05uM2RlY1lXTmpDMGt5a3BtQ05SbDdmYzZ1UEM0R2dzbEVLeXhpeXpHblpETE9tTUhvb0o5ZzllZkhsU1VtTEVVbUFRYzBPQ1o0Ym03ZTROM2JYMmN6YitIYW1xbHNVZUhJc1gxaFR2amxXTlF0WVg3Q1ExbzZJaDJXS0ZtM2NkUnpGaVVSZllKVTBTYkJrVmdRNkFnczBvcEpyTlFSc0dSanh3MnF6d08zT3VsMWFtNWwxN1BZYkZTUUtwV3BaQjVsNzBNT2VCeEM0alNmRUNXUm5jRjRSKzZTYWdLYlhPUVpQVmtTSXJiUVlpZ1VrenljdDV4VVFNc1pOWXJJSWVNNnkwNjl4MXZUZHpoYy9wZ2FhRk1MTmhZZzIybDdTSjllelVDQXBxcVJtSmhRc2NNRzM5aC9tOXYycHBvK1NJMDFEaXZGQzY4b0QxaGFzb21rM3RWTDlENzJSWk41c3VuQUpEb0pCQitJRzNDY0Y1eWZyY3B6K1RwK0VlSWF5RjdIZFh5WlVaQ1pkNTZjdEpIbi9aKyt4MS83N3QrZzhkdWFpY0NPcUl4aldrRkdtN3Jpa1BXN3NHaFJ3RFNkVEhuMDZJRHA1cFROemJ2OHpkLzhIZjd4SDN4S2twS05MWXR6bDNDTndUSTFHd1hFTnR4eWQvbjIxMzhWTHhzOCtQbGpLbE14YVJwNkJRQVlaelQwSFpQbHFVN3BQc1FLeDhkSCtBM0hhWGZLaCs5L09LaGdtTHJnaVQ2Ukp1dEdETk56RmRHc1k1ZGJmdml6Zjg4MzMvb1dONnJiSkp0b1E4djJ4all4OXA3dzBJUCt2dXU5VndMcEp3RFpySnRCQUd5MmlCRnEyMkN3eEJDWTFEUGV1djBXdFZUc0g5emsrKy8vRythY0UyZ0J3WFpGeGdqbGZIcnFrdFdLQ0k0R3g2YmQ1bzJ2dnNtYisyL3k3bXZ2TW9rVDRqeEJoRW9xM2F5VUM2MjBQNTRNbWZNeGNKTEM4VE1abkNSY1ZwNnJxbE1rbHFibHlka1o3NTM4bkl3ckJncFJ0V0JmeEg3dk0wSkVzRGdlaFFPT1ZxZFlxWEQxbEJ4VnJzbjBHZlJ5M2E2THR6SmNJMlBadEtyU1ppRm5MQ0VHbGNvcWNWVUN1VDhTdmJ1WFVKeWFyQkJjNXVEc01XZWNsd25MbWpvUWt3eURYejg1TXF5NTNYMVozWlVwbmd1R1RUUGpodDNISnMrMDI4Q0xKOFFGZkU2V3BFK1dONmQzeWN1V1E0NlZJNTZOR20xNDFuWHdIcXdWTytpaWhLaTBnN3cyQVhsUi9kNEwyNEFyZTl4UERsUVZJaENMSGZHbEtKNjBHV0hCbk5QVkNUdVRiUm8zSVRzaGk2cFRaREVqY0xIT2dGNnN6R1JTNnFpYzZ1bVpEQzVYc0lMYU5yeSsreVlmTFo4UU9FS3dkQ0dVckt3Qm92S1h5N0V4R1d4cnFmQk1xYm5MYmQ2WTNHRWpiVkRGQnBjcVZYNFlVdDRXUThTeFFDUVNqU2RZemIrYjdLaVR4V2V3ODVZY1c1eE4xSnMxQ3hOWXRndU9UMC9IaGFIcitKTGpHc2hleDNWOG1WRTBVMk1PZUN5UnlNZjNQK1NUaDUvdzlhOStrK1RBNUtpSmlKSFgrRkFhZStwUm1rY0x0amhqV1o2MTJPeVFGbkNXYjczMUhjNmUvSmQ4LzBkL3pJRzAyS2NHTEl1aHd1REpVdUdwMk9VbWYvdHYvRjNlL3NyWDhXYUNtZFRVdmlaMVlXUVhTZUdnMmhHUUxhOHk1cUdXTFpmTS91d0didE53OHZpUUIvY095a0xXQWh3RFo3ZU10ZU5sWkRKdFh0SFlDUitkL1p4Ly9jTS80Ky85eHQ5bkZaZllSa3VsYWpWWndDQkdtNzVLc3hSRzFvMlJveGdNUVFDVE5MUGw4U3BGbHhOTjFmRDYvdXZzN2V5enY3L1BnMGVmOE5NUGY4NXhQaXpuSTFOUlUxUFJvYzFyZlFiMjFzWXQzbnp6YmI3eHp0ZjQ2djRiZEE4RE5sak5qaWFnQi80aW1HeXc1bUtEenVYenBLNWUycmFrRklOSU1rSTJrV3dqblkxOC8wZC96aWtMQXFFQUZiQXgwNnRRdlFxV2xWeWNubWo1K1BFbjdON2RaeEVXTk5WTWxUUkdST21NMWNhc1lZVXlPSUNsbEVCZ1l6SWxoS0J5WW1hdEhqQms0aSt2MzlqaHZ1Z2I2WkxKUkp0cGZlYmp3d2UwUkJ4VytkWUdldjFQYzJGYlJzczM2d1N3R0VPV3pPSjhTWGVlRktnZEdmSkNzK3ZWem9ZcVlueU9xTVR5enU3YnhOaVJnM0RHQWtORUNMUlI3YitwYlFHelJvbXpSWEdsUWh1WnZMR0RRc0dnZGYzQ0hGbHRqak9pRFV0aWhHaFN5ZldHdFo5V2YvRExUWjVMcGpZUytmVDRVM2IyZHRtZGVHeGx5RWxJWlJ0bGNCMU02MGxZV2NJd0dUTVo0eTI1YURMUG1obGRDT1I1NHNiV0RYNWwrMXRNeisvelliN0hPVXR5Q3VSa3liVElRRHF5TkhncUhEdHM4aHEzK2RyMm0reWtMZXpDVWtlTFMzMFRYeEdETTBxcjhFQzJobXpCV0tzTmFPSXd3ZU1UYkxrSktjMUpyaWE3ekRJZE01K2ZsUng2ZnRWNTRIVjhRWEVOWksvak9yNnM2TGwvRmlRS2RWMFJ1OGhSZk1UREovZDQ2NDIzTUJhY1dMSXA1Z3l5SHJnVklQUklMMThobko3eHZ1YjQwU0Z2dlBVNkh6LzRPWk5teW5hOXkzL3o5LzhocmpMODh6Ly9KMlJhK2xHcWw0WXlxa3FLbzJHUEcvenQzL283L01iMy9nWmhubGkxY3phbm0rUk84RkxwcG96QW9pNUhIeTI1cEh2WERrTjlyN2pCR0tGck80eUQ0K01UN2gzZDArMHdocWFwYU9QSWVXcTBiMFAyRjZWRnVJa2xMZ0kvZVA4ditWdC8vWGNnR0RZM2R0VGh5NmpWck10ZUMrc1dzdWt6czJXeG8yYVZjUmdVRk1SVkl0dU10dzdKbGh3VDNucDI2eDFtcjMyYmQrNjh6Vzk4L1RjNVg1eHhkbjdDeWRrWjg4VVpiZGVwNWVwa3l2N3VEZlozOTlqZTJNWmFUMmdEVHo1OHdpeHZNbkdPMmxudC9nYWNWVnBCYnpCZ0paTnRIcmlHSWxiTHM4Tldyb2toS25VVXlUYlIrVWpuTzM3NDZDZDBKQ0tCeWJSbXRXeTFpY2xZbGk4anZmZU1pQ1dEZCsva0FkLzcrcTh4UDV3em1VMmdCWkZjc3ZSOUpxL1hQTzJWV0RRakcwTEFHRU5kMTNSZHQ3YTRmWTQ5b0poU1RURGxLSWlRRENRYnk3NUhIdVhIQkVZU2E2S3VoTWtJNGp3NXh1SFN5djIxMEFOdjBlNTd0ZVJONUdTby9aUnBQV01yYmVHdDV5VE4rYndzV1JNOWQzZnVjbkp5eEZtWW81QXNJTFFZRWwwUWJSdzBhakloUVgyblBKWUpGZHRNOEZacEJUMlFIVndJeTcvUHNtbldUTFpCOXpRUVRVRC82d3FRN1ZPcHJKOHRSUkltNXNBakhuTTNuckZodDZpOEo1UEt2YTU4MmFkcjd6M2Z2VlJYbkdDOUpZWVdheXl6ZWtLM1RNZzhNSjAxZk9mdU4vRUhGZUc0NHdsUDZGZ04wbVdhRi9aVU5FWGx3YlBQSGwvYitocHZibjZGZXVtcFE0M0xUaDNSeEpPTW9SZENNOFpUaXkrM2ZZMUloYkVWUm1xY0tmYTBDWEp5V0Fra0VlYkxNdzdPSG5ISWNUbEMxMUQyRnlHdWdleVhIUDNNdVgvZ2FJa3RrYlBCMkw3a0kxelVOMlVZZEhOeGxERzVMRXRnTEwrVlRjWU1GcXR5WVoyL0hGR096UGdCZnZsM1dSKy80ZGpKeFdQYjY4WU9yMlVaeGlyUFZFUndPRUwvRjE5RXN3eVFJMnh1VFRrL1hiTHFsbXhWTzNRaDhVZC8rZ2Q4ODkxZndZY0pkMisvVG5lZW1KOHUyTjI2UWVwZ2NiNWtZMnVHU0FSVG1qSkFzNHc1Nllnc2pxN3IyTjdlNXVUb2xNM3BGckVOT0JxNjg0Ni8vVnQvbjI5KzcxZDUvNk1QZU8rOTkvajA0VU02V2lvYWRtZDc3Rzd0OHIxdmZZODd0KzV5ZS9jdWxYaENUamhuU1VGNWNGS3VQejIyQmlPRnA5ZW5YekpNSnhOV3F3V1NBazNUc0Z3dWlUR3dmMnVmMEhZczA1dy8rS00vSkJIWnFLZDBZVTU3M3EzQjY3cnllZkhZVWM1QnBlZnBLQi95Zi96dVArSWYvSjMvamx1N3R6bjg4SkE3MjE5aGRkWVNncTdiV3QzMjZBSjE0OG1oVDIydno3ME0xNGVHZDlvTExUa1ZicCtEckc1MzNsWk1qV1BxWit4dTc4TjJQL2ozTkFnTkkxWnBGcTNTQUJxWllKekZpOVVxS1ZtUG1WRzFoaWh4dkpjWGJKTDc2eFdnQzVIR0tpODZGcVBON0JLZDcyaGR4ei83bC84Y1o2M2E2cHJNcXAxckJpOW40aGNBWXZ2bmpjUHpZZmNKUDMzNGMzN2w3cmRZbmErWXVocGlIaktiSXBySkV4RmNYaXQ3ZGtsd3JrSkVXTTVYeWpmT1pSSjBRUzlxblNudGJRRlNWdTVyMTdWc2JHNXkxcDZ5U2kzVmJzM0hEMy9LRWVjRU1pM3RjQ3hURWJlUEtUNzdIcmJsRnFvc2NTV2NzZUxKL0pTdmJFWWFFVUlYdFdITWFhYjU4NFFWUnpycGVHZjNhOXpZdU10SHgvZjRhZmdZd3prMUVjSFEwbEdKd3dVMVNmVkFqZU0xZjRlM050OWdZdXUxUXNBb1BndkE5aUdpU2hHbWdWVnFhVzdVbk9iRWgyY2ZvN3JaNVQ0WXpTZXlRQ3N0RGpqaWtDZnRZL2JjSGpBbGQ0bUptVEJ0YWlSZG5HelpvZ0pSbHFKVUVBZXJ0TVE3RDJKWXRoMlZhZGh1R3VJOFF4ZDRhM0tiRzNjM2ViUjh4TU9UK3h6eGhJNjU4cG1aTVdXVEc5VTJ0MmI3M0d6MjJERXpwcUZta2lwTXo3TWVlTG9XVENKYnNFU3RLQmpLQkdnTnMvdmZPMGtrSDRrdWNKWVdQTzZPT09GTXJUVmNlZ0ZWamV2NER4SFhRUFk2cnVOTGpsU3lRcURhc1luTWsvTkhmUDhILzVyLytyLzRiL24wM2lmTTZoMTJiK3d5UHpyRlVyTzN0OGR5TmNkWVM2L0RhcVJrR1lzdUtxUFNMUFNsUklmZ0lIc2t3VnQzdjgzKzdodjgrcmQrQjIvZHdGYzBvcnFaOCtOVE5tZGJUTndVSWxqdkNpZ3JnK2VvUklpWVV1cWxBRDVMa2tnMEFmR1pOZ1djY2N4MlppeVhjeDRlUFdCanArRUgvLzdmY2RvZElpVG0zWExOQyt6ak0rWmRpOFVTc3JwalBUei9sTC84NE04eGJ4bHU3dC9oMGVFQjI4ME8yOU50dXRqU2hZRHg0TDFYZWJQeGFvd2hrd2RhQkZ6azlJbjB4MU9QdHhqdGhPN2R0bnFadElHRFMyOXBXcFFLc3VsN1hkWk5UQVdvYVhaU2l1S0VESDgvSE50UjJNSTV6VUJsb0tvYzZvQzJJcGxBOG9HamNNTDkwOGNjeDJNV3pBSFZLdFg5WkdULzhJcGhJRXRtem9JSlUrNmRQT0R0cjd4REpWQWxVeVRCYktFNjk3Qkc3VVlIZDdncmdPQ2FPdlBzMEF5cUEyT1U4NXVDcnNWbnpzS0N4L05ET2xJcGtxZCtjNHU5ckIxZHU2d25TK09EWXFDTmFzUXhwK040ZGNiNWRNWDJkQThiSEczYktRKzlONmZoNVY0bFc5cmppTnVvdWJHeHdkWnJ1OXh1WCtmUjJXT2VyRTVZcGdXUGVJekgwZUJwc0d3eVpXK3l4YzJkZlc0ME4vRHpWenlMMW1LOFl4SE9TVTBtbWNoUmUxcXk3R0YwZmk1ZWc0TG1jRnNDbjNZUDJWNXM4L3JXNjFSTTZlWWRKZ216dWlHSGt2VmxWUGtZTk5MMUxHYWpEbU0ydWVFSVdiSDRwSnpwS1RWYlZjTmUxZkQ2eGg0ZEs4UWw4Qlh6bGNHYWhrbjJUS2lZSkUvZEdVdzA1QmlwVEZPMlYya2xZb3ZMbjRGTUpJeHVReWtUOHVSVThTU1lqS1FPTjRNd2dWTTU1MUg3bU1jY0ttWElpODQ2ZjVueVF2K1J4aldRdlk3citESkRvRjBWeHlJTVVkU21kY2taZi9iOVArWS8vZXUvUlN1Qm1kOGt5SW8yTGRtc0s1d1hRZ2hVamZKUkRlb0hEbVdZTE9CS1JvT0dpQzBBeWdJT2t4MG5ENWQwR2F5ZDRPdUtxcXBBTWpGR0pFVnViTjNCQUdFWmtaaHd4dU90Wm4xamlxcjNXaWdPVXJKQXZjc1FaTnpFMEthVmxoQ25sbVU2SjVzS094T2lySGk4UE9hUC8rSVBPZUVKbGJHY1MxQXcwUk00TllsM1liRG9meFNqcWdLNW9MSWtpY1AyTWQ5Ly85OHdiV2JjK3U1dG1BdlJSTnE4SWttNmFFRnJGTUVNSmhOOXcwdlJtSDFhYWFFTTZ3VklJbWpKc2tRUGx0SkE5WEJyYm5DUkFsT1pyTFh4UXVaaTZid2ZURFhiL0hTMng0eU9oVFZRT1kva1NKdFdSTk5SelN3cm03ai80Q0hmLy9nSG5IQkMyNE5ZVXpLaStZdnpJdW9UZjUxRUt1RER3MC80MVhES250MGdkUzFlSmlOVEVsdjJUeTEwbjdsTVdjT2M4YmRrOURyZWZtc2RHRXNPRWV2VTl2Wm9lY2o5ODhlMDVOTGdsZ2NTeG5ERXgyQzIzOFpMWUZhdjRreEw0a0gzaU5kV1Q3aXhjNE5tbzJHMU9xZWh3Zy9aMEpkOWhWbTFxZTVUQzB0ZE8yNVhOVHY3MjN3bExGbkdKVHU3VzZRVVZDcE1DaThXcXdZTlMwK1ZuNTRFdkdnb05TTmhLc2N5ckRBVE5XQjRjSHlmdHBBTGloM0U2SS9XMng1THB2dFRQbVY2TW1WdmU0L1pkRVpZSmxaZHBMNEVMejRMY3FkZW9FSXlMdXQ5RnVZcnhHYU1TelRPVVBtRzdDb2drYVhpWnJORHloNGJNeVprZkFjdWlhb09zTDVta3MzbEh5UXJSYWtsS3hCRnM3WFpHTEtKK3Z6ekZwSEl5cXlvTjRTbFgzRC85REgzdTRlc1dJR1A0QTJsUkhjZFgzSmNBOW5ydUk0dk9aUktacFFyRmtQcHEzQThuRC9nZDMvdi8rTHYvZloveFdUVGMvenBFelpudTB5cWl0UFRZNnlVRE41VGNnVmwySlplOW5zRVpnMkZsS3NOWTdkMmJ0T0dUQWdCVXNaa3dlSlZuTncybUpTSU1aS0NOam9aQjlsN2tJRnBodklkblpidXhBNzJ1UUNUU2NQSjJURk40L0NONWVSa3lXSjV6dGJXbE1sdXhmZS8vNmM4U0IvVFViSnB2WXRRWUowSXlyWUlrRUdmK2V6M1dlVzZ0SHZaMTVhMmJmbGsvaEUvdnZkRGJ0Kzh6VGZ1ZkpQMjhaTEZZczdFVFRIZWtGTW1wcUNnL1psbDRWeXlOaGNOQ1M0Y2FyRVhzcmU5R00rZzRpdVhxQVVGd1BiZTlGSWF1WHBYdG15a3JLdTNUYjdJSjd5OEZVWXNsYlBNbCtlMGVZWGZOTWdFSHMyUCtlREpoL3g4OFNHUm9HRFpsTGF1cHl2RnJ4eEthY25NWlFVYzgrbnBBWHViYnlPcnBFb0FaUUlscHM4MTl6T1Vxek94Y3VuM0Mrc1pyOWRZc3F6ZHpGSU0yTXBnSzhmSnlUbUhIQkhLRVJnTEFGemdSWTk1NWVNSjAzanpLdFgwUGVTWVQwN3ZjM2Z6Rm5YdDZacUFjMmIwQnkvL092TmJ0S0ZqT1Y4UzVoRWFROTAwVEh5Tk5EdVlEbkpNR0VsNERKV3BjQmx5aktST01PWlZodkJNbHdMMXhDdDRuRnBPd3puMzV3L3BDTVNoSWdCckcydjl1MEtBSTVOWnN1RFRjSi9icHplWjdXeFFOdzZKaGxWWVVSbTd2aDlLcU95WFRzVFdqYUpXYlpkdEhqUmNqY0NrcnNrNWtwSnlyWTNVcEpSSkVzbEpFSitVc3BPTlBydXlWcFdjdFhodnRaSE9hQlkyVzcydnhLeXRuOU1nZE56ZjUzbkkza1lib01tY3VnVUhxd00rT3Z1RXh4d1JDRHhqcG5zZFgxSmNBOW5ydUk0dk1hejIwQStDNWhIMXNIZmVFR1BnVDc3Ly8vRzFOOTVoOTFkMjJkaXVxY1VTd3BJVUluV3RaVE1qZGlnYnJ5V2xwTGdiS2RBczcraFhBSXh5MWs0T2o3QldOU2hWKzFGSm1sa1NJVVltVlkwWGczTWU2eXJsdzJiQlduQ3VJdVU0UE5ONzZhb2VKQWtRVWpjbzNuU3hCUmVaVER5ZExQbmswVWY4MlkvL21KWUZpVVFucWc5SlphQlRCeVhKeXYrMTQ1THNDTmlsc082TUQ2SWd1RXN0N3gzOGlQeHZNNXYvMlJaYnpRNHp2NGwwd3YvZjNwcyt5WEdrNlowL1B5SXlzdzZjQkVFMmorWnd1alV6M1R1emtrWW1qVFF5alVZbTdZZjlzTGIvM241ZnMvMEQxdFpra2t3bXlTU1p1bnZVeldsT3M1czNRUkJIQVlWQ1hYbEZoTHUvKzhIZEl5S3pzZ0FRQUFteUVRK3NFSGxHUm5oNHVELytIcy9ydkVPWldJZmRPVWNocGlPanZYa3BTbkZGMjJodkdkQUxMZWpiRFB2cFFyVGJ6cktianowRmtLZ29RQitVcE9Tc25BY3U3Ull5SVU2eHR0a0t1eHErQzY1QkswK3hWU0RiY0hkeG43Lzc2a00rZm5DREpVMHNnVXJBNkY0NG55SlpJM1VNMG43VytWZ0JoVVlxaDhkemUvOE9mM0xoaHpFQnlXVkp0bnp1WGJpR0l1QlZsa1BLYlptMmFSR2dFbEVsUFk3TjM2MFFRb29kTmxyanZNU0ZEWjZqeFVrNmUyazlGU3NRVFZ0VkpQMmt5YnVWS0xnUHhNdHNOY0VIcWxDekozZTVQYi9HWkxkZ2RHbkV0UEhvRFlVZW5nUTZhSUtyTWFMWkh1L0dVc28wK01ZVEdrRWtVTldMVmxvcktKMlNsUlJLalRCYXJlY25maTBFQmQ3WEdLVXhXeFp2R3g0ZVB1U0VrN1Q4a1doeVZ5b3RmdW10QUtJdm9iRTE0aFJISEhIandVMTI5QzV2YmI5QlNZRTdkVmlyVzNrL1dKZmZBaE4wdTZBRDhDcHFhcU83UkRTUnVFQTJnTkVGcFkxVkR3MkNrbWlOMXhwRVNkTERGWm9RYUZLeW1hUlFBdCs3VEczb1Nrb0cxWkovTDh1M0JieHBNRHVhaC9OanZqeTZ6VmQrTDJrVkVEdktVQXZoTzRPQnlBNFk4QUtodFk2NmthVGtFMkxzbVF0eENxNnArRS8vNVQreVUxN2t6LytYZjh6MFFjVjhXbk54K3lLRU9FbmtwSm1NVGlRK3Uvc3pVWk5rcmFYOXhzaUExb0lXUlFoeFVvNTZsQ2E2Mm9KSEs0Vk9ndXMrTkRqbkNFRmhyZTYwVGlWWkpDWG1YdWVKYWJGWU1Kb1VlR21ZTFU0WlR3cTJMc1ZTdlAvdDUvK1p2Y1Z0eE1TSVBCR2dCSWducFhUVVpOV3BYbnB1bTc0a1Y1VDd5bkpheEJGTndYRnp4Ry92ZnNERlgxN2lMMzd5ejNqbDFXdFV4eFhMNllKSk9VR3NNSjFPS2V5bU9xMHB4QURRU3RycytGVURUSXE1YTlzOHVrU0Rpb21Ca21ic21GWHZNVUVSZEV4eWlvVFZ0bVU2c3dVV3lSWWpIeTNiNlZpNm9nSXJQUWNsNEYzTmVETEM3eXIyNmdkOGNQTWpmblh6NzVneVJabElBa3dpanlIUVplVXJZbHlHMzJUeGZYSkk1dkhLZzRrTGozdUhlMHpuSjJ5cnE5SDYxbXVqdkZYOTVVRmFCL1RKZXY5c00vbHBJNDk3K3drS1hQQ01kU3dtSUVwUlZSV0hwMGMwMmJxbUF5R1FTbGFrK002MUdPeW91YnhxSTI3SnJHOFFaWERBTWFmY09ibkZ4ZkdZSDB6ZVNGckh4Vk8zbi9lQ01mR2UwNEQzRm9KZ1ZWVDEyTjNhU2lRV3ZQZTRKa1ExRHEzUk5pZlFQY1AxczVxbHI1QUNIczVPMkR1NmgwT29hWkpsc3ROZDdYMnJ0Vm91eGFmYnJ1RXVkN2w4Y0lrcjVSVkc1U2pLYWluQkNPZUd5Umg2aVh1WjBDb2ZsNGNDdnFrUkQrSURPc1RrU09WamlXVW53dGdTcTVEcDJLbERDdDBKaEZRaU54NTd2TmR5S0ZIU3pNN1NiUklWQ2xxMUJSMUFOVFM2WmhFOEQrWXhwR0JHRlJNcU5Yalg3bTdBZHdBRGtSMHc0SVVpdXY5ZDZLeEdDbkNoSmxZSUYrNmMzT0xudi9qdlhObSt6T1d0VjdGRmNyMHBtNGhqUjJaYjY1TUtTRHVBOStXNmVrWVZDVXhHRnEwRTV6eE5zOFQ1UUdGTHJMVVlyV05XcndjSkFaT0lpb2pnSmFBRG1KYWRhS1FOWjBqSDFHTitQalJ4bjBaeCsvWlgvUHJYNy9IWndhYzRLdlE0NEpicFM1clcwaEZxVDlTejdVK2l2aU5peEJLeVB2aVlnYStBZ2h6WWlBczE3OS84TmFNd3dmeTQ0T3IySzVSbFNSTWNvZllZWStoWWNaNW8rM0VFeVJxYjQxbVZTa1JJVnFxRFJTc08wWHFiaUd5WHFOVmQ1eFUxak5hTktXZXFqUFV0emwwVDl0dEFKM2Q5d0JMTGllNGZIL0RCN2QveXdlMlBtTExBNFVDNU9HbUhTRGdOZElyQlNzZDR4MmVjakJWZ3h1QmNkQXRYdnVHWUUrNDl1TWYxcTVkN3NRSTZFblh0bjlnam0wVmJIbVh3N0ZlekFuRE9NYTFQT1pZakZDbFdXOU9KbEt3anZaNUpiTkhhM21PRnJkWUFyendlamFOaXo5L2w0dUdZaTJyQ1JYK1ZjYU0zN1BpSnpoQnREU0xRTkEzQk5jbTZETllhckxHY25KeEd5N2JSQksxUXlpREdJcllnYUpDd2ZLYWt2Zkc0NUxBNm9pb3E5aDd1c1JmMmNiaFkxYXN6cEhjVzJUNXBWclRlRnRjMEJCcjIvVDUzN3QrbXVHRFlOaE1JZWVGeUZybjZJSnBrL1UxdS8zVGZLV0JTbE9CQnR6VzBvM2F5R0lVS2pzWXY0NkpJcGNwbXlzVEZ1OVlFWTFZVWVuUTZhQk15dVlXQWFVczg2eERRcWFLWjZKandldXZlTGU1TTczSE1sQkFEalNDRU5qWjg0TEhmRFF4RTlnV2pyVmJVV3JaMEhJQnpxYy9XNGxQRk55MEFBQ0FBU1VSQlZORVBIc3N6dmtKUnA0RTJkQ08rckJFWTRsc3J0cGU4Mys4OTF0MjV1Um02Yzg5WnMrYk05em9Ta1ZmcUhWYlNRbm91c1VSU1ZnTHVudjdvZmFzdUVEVk9SNk1TMTlRRUIwWkhyVWFONGpkZnZjL096M2Y1My8vMS84bUZ5NWM1ZnZDUW5ja1ZRaGlSM2UyU2tyaUVMcHdBb00wUVYvSFlWU3JCaVJKT3A0ZE1SbU9zdFl6SHNkNjkxaFp4UXRVc0tVeEo0MnZFSzVTT0U2OVZJencrU3ViVXJwZjhGTjJlN2U4cm1FeEdMTnlNU2lxMkw1ZFU3cFJmZmZnTGZubnI1M2dhdEJWY2FtWmRwdHdMZ1hJeW9wNTF1ZTZ4bWRkVUc0V290WnBkL3E1MzJpcWU3MEptL09MV3o1ak5adnpMZi96WHZIYjFkUTRQRHFsZHpaWGRxNmlGYmllMm5IZ2xrc1RvazFVMGh3Z0lNZFl1bW1mejcyUS9lV0tMNU93MHlLRVFPcFBlYkhIdG5ZVUFRZWsyTmxiMTNMY0tWdHpXV25KSVEreTNYbnZDcE9aVXB2eDI3eU4rZWZ0L2NzZ1V0TUlVQnQ5VXJWUlY3dnZKOFBzMSsrdzVSQzBSK0dJeXhrMlhvQlhTTkhnczk0LzNxYTc5SVlVdTBVbXJUa3V5dFBkaUxiTTd0eHVkVWdKV2lyVldiV2hNOTc3T2xDSkFFUW9JRGlrVWxmWXNWYzFEZDhLY1diSWFkdmRCYjNrUkgvVWlHWHF2cnA2MTFWR3VTOENXQmxjM25IREt6ZVZOTGl4MjJTNHVFRnlKRnBXVUtYUWJUcEpqUWZNbHpBc2VDRzJwWHE5OHZQOU5vQ3lLRk5vamhCQlkxaFU3T3p0NENYaVJXRXhDR2J3RWF1ZndvV0pjQUxnVXZxRTdjb2crczJEb3VsSldDdkRvaTU2amc0ZFVxdUx1OGk0TkRRWVR2UUtaNVF0MFNWNGJyTDhGYUN4MTAvQ1FoOXlvdjZCWUdINXc0VFZHb2NCNmpRa0dHN0ttczBydG8vRkpIemxLQ09ZeFdMZGpWdFdreFJocDBabjZoUkRKdlRHeEJHQUk0Q1ZhcUlPa0VDbkp0dDdjQURtNUw5MWZFb3RTeExrM2dQSTQ3V2hNdzZLc1dKWVZuMDAvNXk3M3Fhamo2R01VK0dqUkxVcFkxZ09aL1M1Z0lMSXZFTmtXcEJCR2hjR282S1FwekJpYzRKczQwYmQrelRRRHFhQ1JFQytkS0VIalFDeFpqRDRPL29hZ0JhVUxYS2h3THQvVUFjbnVvQUthNzNtY1QyRUxnaE9Lb3FCcWFyYk5McWVuQ3dvbWFHWGpKSmVzVnBGRStEYlVLNUkya0Z4OVNwbE8vNVJBd0xDWVR5bTJVNHhhTXZVWnJaQlJjaTg5dlZjUG9HY3hpQmF5cWtvWFJFRWRmT3dieE96Z1gzejBNN3lDZi9tWC80cFhybDFqZi84K0Y4ZHZ4R3Nmb2d5UmhCd3ZteGRJZ3RCQWlpTlVXbERCRThUaHZjZU9KelJBNHoyU1pqcHhkZFNEdFpxRnI4QXFsTko0SXhoRHRDSjVhSnpET2lINFNETnpIRzFRVUlVYTV5cThsYWpoT2ZIc0wvWjQ3OE9mOFY5Lzk1K29tRktPTE10SzRud0RoRVhYTHZVOEZtbVFSRnJ5TllrSFNGdVNLclRucVJFZnVsQlVBUitMZURKbnl2dUg3N0g4MVp4LytOTS81NTAzL29DdE1PYjQ2SWczUjIvUm5IaVd5eVhLS0NaYkkweHBxT3NscytVTXRDQWFqRlVvRTQ5QkxOR2xHMEEzdW5PRlN4U3NieStwb3IwbmFWK1A5M0hzaHlrRVEybFFCaE1TNndueEhsYWlJSlVmOWQ0VHhGT1VtbUk4d3JtYUIvNkkrK1VldjdyeHQvejI1a2RSMnhJWEt5dFZuYlUxTjFkN0RJcTBZdWkxYVhmSVhYL3NQZDQ0V2F2b3IxOHNsdWxIUEZ2akxXVFpjR041ay85Vi9SbGVLU1pXWVJxRFZZckNLdXJhVS91S3lXU0NxeHdFalVqeUpraGExRWtrcktoTVlDVXVNTkpXRWNNMENsK2dkY0hSOGlIVnR0QmNVYngzNjMwV0xHSy82NVhoWFpFY3krZmY5cFc4RnNyVzhmU3JWZGMralY4U2JYYUJHOXpuNEhERytOcFZyaFdLc1M0eFRqR1dnckdNc0Y0aHl3YUNpbTV2QThvb0doMHJyelhpWXFrRmxXdlJncE5Zc0tFMVhsaFloanIxa1hUOWtrZkNHdEFXdkYzR294YUxDUVlqQlNab2JJaWVES1ZpMWJUb1pvK21aMUVCQ1Exek5jVnROOXc0K1pUUDk3N2dtRk1hQWt1YWxzUEczKzNWaXFZenZraGVQRHBZU28xU0pWTTU0VXNXVEdjbkhKay80TjFyUDJSY2xZenJFYW9aTVpJUzAxaDByYU5XOHJiRnF4aFdwTDFxTFowcVcxaGJBaDEvVmJUckdTdGkzSGNtOGFoZTFFd3lCSG5mWUl4cGkwYUVFR2hDYkEvbEE5dUFsa0NsR2hwVDQ3WURwMmJPN2VsZHZ0aS95VmZjVGdvT0RRNUhkcHhwb1A2ZXo1Mi9UeGlJN0F0R29nNVVpNXA2MmFCOGpTbUZ3cFJNUm1QbXl3TlFMcm1NQTRoQnNsQjRDb3dQS29BNHdLWkJPeWFTRUFKS1I4bVNyY2tPRXpPaENoV0NpL3FldndjM29uTU5tbEVjc0VXaGpHV3lQVWE3a3VCalhGa1U3Z3lJaXBWWTJ1UWFFWXhQMXU5VUdsU0xqc1JXQ1VFOGx5NWNoTEdqTE11V2xQamdrZWZTZHQwQXZFTFNlaE9YVXVCU1F0V0NKZTk5K0RjRVBIL3g1LytVZDMvNEp4emVQcVhVMnhUR29vMENNWGd2Qk9mSW82NVcwVTRhWEpMNTByRnFrclVqYXVkN2xueHBqMEhTNUZxT1NrS0ljWG4xMnNodFVWaGJwQktqZ1dWVnNheFBFS01aN1l6WnVURGhjUDZRQzlkMnVIMTBnLy84czMvUGU1LytITWNTTTRLWmR4dXFrZldSU2NYYWFpRWJRZGN0aGYzSk4wOTBKaEoySWZDNy9RODQrc1VoZi9UdUgvT1RILytVZDk5OGx6dS91Y3ZWMFZVdVg3MkVDdzNUNlJRM2F4aHRqYmg2OVdwTXdBc05qYXVwZlkzM09jMGxCb1ZvNlNiTnZDaHBGeWV5V2phMEpiVTlkK2Q4dnNEYWtwSFZzYXBROHI1SStoMGZQRVZoTUlXbDlvNjVWRkRQcVgzTmlUN20zLzdxUDNCemRqT0dFaENUMkhSS2dOSTZsWDVkYitKMUYvRWpzVTVpVmMvTTJQUHhKT2FuUTZTRUM1YmNQcnJQTzd2dk1BSzBsN1MraWxyR0FZM3JSMS9rSkVXVkxmQ2RLaStRckxyZGN5VXh1MTI3QUlYQ2FYQWoySnZ2TTJlT28wbWtyeDhSSHZ0UzhvaW5NYUE3L0kxS0RtdDlNeXJTNWtDZWhwL3YvNUkvM2Y0cGYvajZPMWhHVEErWHpPWnpkaGl6dTdXRnFxUGVjdTFxdlBjMHhpR0Z4aGFXd2hZMHRZdUVQVnNMTjJ4WDNnL2Q2eXBsM29QR2tKSTFneUkwUXUxZENqaDFXQnY3VHhXV0xKc0Z5aWlLclpMdHl4TitjZTk5YnB4K3dRRVBFMTN0L0FVS2s3d1RxZDFWNTREUUpQdUtVWVFRdjFNUjliQTlIc2MrNFFTS0xjczErd3BYSndXRmh2bHlpYTBMZHN3T081TnREdjFwWEtnS2JiS29FcnI3UnNVckZaUkdxM2krZmMraURoMkZpUVNXRmZrMnJlSUN0M1l1ZVc5QVdZTXRDOHJTRUJaTGdoS2NxYW5IZ1VXeDVJRTc0dE9URzN6cGI3Rk1KTmJuMGhEWnV0N3JOd05lUEFZaSs0SmhiWUYzbHFJY005bmFJalFqbkd1b2xoWFdhb3JTZ3ZicGhna2dObHBqZzBuenRVMVdCUTFZc3RDTVRqRkgwOFdVb25UTVpqTVd2b3AyUnFWajZVNHRPUC85dmhVMUZrT0JWaGJ2by81cDhBS3V3UzhySnFNeXNrR2lYSlJTdlhoU0JVaXFxR1NTUkZCUXlVSVdQM053ZUlTWmVLYlRlYkxseG1nNnJhSjc3bGt0c2dDOW1XUDFPZEYxcnRKNUNwNGxDLzdtdzUreFdDeVlUaGY4MGR2L0FPTTlFaHFheGhPYVNHaktvcUFveHRUTEp0WmpUenVQK3JCQ2NBcGwrb0wrOUdiMTdnQ0NpOVhRTk1uaW0rSVJqVEVVQ3BiekpZVzEyTEZsUEI1aGdxV1JKbXJlVmxQME9QREJoKy94UDMvN04zeDQ1Ky9JbWZraEdYMis2Wm5BZTQvVkJUcW9XQnQrZnBmNWIrWXNsMHRtYjB6NTBldC9UTDFZTXErbmFEUm0yMUNvQXVjYURvOFgwVGdvRWlWK2xJa1YzYzA0V25tMHh2bGxTNVkyTkI4S3RVSmlWd210NXJVcnIrR2F3SEs1WkxsY2tFdXpGa1dCS1RVR3k4bmloTVZ5VGpHeGpIZEtUcGRUUHZya2QvejZ6dnZjNFhaTFlxMjFhSzNiQmNkNnRhY253ZG5Mc2I2UFJDTnlzUTBQVmltY2l3dEJsWXBsZVlTYnQyL3kxay9lampKWjJoQzhZRVFoR0ZBbFBwaG5WakJ5dWNpREZuU3AyYnU5UjlORkFwK0w1M0hiZWh6SEhQRFI3SGZNN3B4d2ZmZFZybXhmWm5kN2pLL2dhRDdGb09NaXN6QllaVEc2ak5KUFFaREtVN1k2c0Y5L0sySm9uRUhwSXVvN0s0TVdpeVJKTUtjQ3BvakpYRXRYb1VxRnVXRHgyblBhUE9UZzRRR2Y3ZDlnbjRkSlNnc0VnN1JVL2ZGUTFrQWRMN29uVmo5MEFnclBBdzc0OVY3RjIvWXQvdkNxOE5ya05VWnFqTXlGNDNxT2RsWHljaVRQcEZMa3hFNlQ3cEhnUTFJUTZXUUdXNVdEdFNTMFZnMURPcXN4T283bFJwbTI2SUVYd2JtYVJxSkM4UGpDR0VZbHg4dUhmTEgzQlY5V3Q5Z2phaERYUkIzaS91SVl2cDJ4YThDVFl5Q3lMeEFDTkNsQWNMbGNSdEtpb2h2Y0dDakxnc1pQazN1OEJnSVNVaXllUkJhbHBZNnVaRWtyMXpaK05vQnk3TzV1WXd2UFpESWhCek1vWmZBaHAxNSt2NkcxeFFlaHJ1czRFRnFMUmxIb0Fqc3VXYzVueVNVWnJUTkJmQnRqRmIyOEtYU0RLRWNWUjd0bzlRZzRSbHNqOURndzJwb3dZZ3VoSm1BSklWa25uOXRndGpsN1BBM25DSUd0MFlTNjhuZzg3My81YSs3ZTN1UC8rRGVLU3p0WHVYcnBNbHM3T3hBc3Jtcndyc0l2YTVTWVpEMG9NRXBUNklJUVloYTM5NEt5S1hhUnpvM1hUNUNvcXhwck5kWmFsSTNKRTBGaTNGcFFRckZUc2xqT3FPYzFwaWpZMnBsUUdFVzFyRGxlUE9URzU1L3pQOTc3Yit4VmR4QTgyNU5kamhZTklnRnRlaDd1WjI0OWZYYjZ6VlpaY1JodDBFSGpjWnh5d3Z1Zi9wclBQdjJNZi81blU2NWZlbzFyVjEraEtNWlVpeVhWb3FMQU1oNk5VR0t3WXJCU29Fa1Z6WnlIR2tKd3FiSmFqajJWMVMzNXYwaGRReUt4OFhWQlVFeVBwMmhsS0d3a3I2SUNqYStaTmFmVTFSSTlBbnZCTWk1SEhNME8rZURHRGI2NDlUbDNaM3VjY2hxUHFWZU90R21hOXZGekswWGR0eERtU1QzRm1Lb0FOdGprRVJKY2NGZ01nckFmRHBnM0MzWkd1MkFzMGdnbUtGQmxEQXZ4WUo2QlVvcUNvRk5KNEFJYWF1NGQzVXRoRytsWSs3R3d6eG5SOGxoem56czhuTzl6Zlg2ZFAzcnR4NWhMYjFMYWdIZWVVVkhnQkd5S0NWVUM0bjFjTUFmQjZqVGVBRitmekZwUUp1VS94aVNuSURxT0ZpcFdxQW9qUytVOXRmSG9pYUlhTlJ6TkRyajU0Q3R1K3BzY2N0eVMyQnhmMzFsbFpZVzg5ZEd1ZlZOWjVmaGlURVp6VGNpQkFFeFo4cm43RW5kUFdGeHVlSDMzZGJZdWJTUExtckR3bE9uK3lwSjBjZEhjRlF4UmdKSGtGVWp0RklrdFo3MDVLYTQySXRuenhjY0Z1SXBmRXAwOUN0QklnNThFWnVhRTAva3BOeDdjNUpOd2d3VUxGamlVTFhCdXVacjBSdTgzSCtsTkd2QnRZaUN5THhTYTdja3UxVUpSRkFVK05JaUx0Y1p0WVNoS3dkY3hLYWQxcjJvU21ZMmhCcnFWVk5MazVBbElTUVZLT0RrOVpEU0d5alVJVVkvVG1wSW01RFR4NThRa1hoRHlKRjU3aHlrTW9nTEgwNGV3MUV4RzIyeU5TeUI1UGhYRVlwNHFPaGhWc2phS2lnbmNvaERwaUoxU2lpWTR2RytvNnBxR0p1VzBLbHJqN0RNMjM4cjRLR2ZmTUFhOEIwZkRhWFZLUVVHYy9nUDdiby8vKzkvK1gvenBELzZNdi9xcnYyWnk2UzJxdVdPMm1GT1lNUmUyTHVPV2dkQUVuS3RSV0VwVFl1eFdGRlVQUGhKeTVkSWswZmVYeGNlaklnMFJRYUp0SWdSQ2NJREdhNC9YamtiWDZHMHdJNkcyQ3g0ZVBlRFRMei9oMXQyYi9PM05YNmFtaXRHdXA0dVRkdXdYK1JiNm53WUpRaDNxcU0rTFFXTllNR2ZKa24vMy92L0hXeGZlNWtmdi9wZzNYMytEQzVPTEdHdFJYbkFTQ1BPR0VFb2tnQldMQ1JvVkxPSlRISVAydllJR25MdFZRZHJudmczY1NKSks0Z2d1b0sxQ0ZSb3BCVE5XV0RTMXFuallISEQvd1QyK3ZIZURHM3RmY0NvbmVCemFtQ2d4bGJ3cXpxMHVUSE5NNEtQUWhXZDBzYUh4amREL0VCMkJwY2Rpd0dBeHpxUndDNVhzVjlINlBXZk9nK2xEdHV3RmRrMUpVRUlqWUZXMHVvbHZvc1hzS2Z0QVVMSE5uUGFFSW5BNlArV0VrN1NnQ1doalVobmxwOXI5WStGeFROTmlvcURBNFpudHpiaDlkSmZYZDkvZzJzNVZsQ2x4bFVNdEFsUXhTY2hxdzlpV1dHM3h0ZStzaDE4VGdxYlE0M2kySWVCOWlPRW9TUWZWbVlZbXpORTdtakJTUEtnUHVIWDNKbmVtZHpqaWlKb0tSNU9DMXBJVnQ3OGNqSFdUSDRtUXkvTW0rVHNuY1NIVnBQUXNEOHhwK0l3dk9UZzhadS8wQWE5ZHZzN1YzYXZzN0c1VEg0ZW9TcEFXZU9JVlBnaGVnQ0NVSm80L2ZmV09Wa1drOTM5c2tCeXJFclZnWXlsbWovTStLcFdvZ0M0dHVyQXhrN1pRSFBvVGJoN2M0c3ZaVjV4d211SmhReXh0N09kUjhrT0ZsVDRmdHh0VUhBYThNQXhFOWdYamRERkRNOEtIQ3VmbktMRm9ZMm5xUURNN29TZzFxSVpZNmdqSVZYcVNTeTFJRldPb2NpcERXNmtFVUlHTGw3Wndmb0h6Q3dTSDRLaWI1MW5YNThYQyt3WXdiRzJYYk8rTTJESUZydlpRYWlhRm9hcW1nRStsTVZPYktRZzlZZS8yUmFMVkpGdXlBZ0ZWZUp4cWFHU0JvMm90UFVwcnlzSlNQVU9nY1k0eXpNaERZbDl1U0NUUDlURytxMEd3akRBWVBCV1dDZS9mK1J2ZS8zOSt5YnV2L29oLy9rLytCWC8wbzUrZ3BlVG82QUd2WEg0ZHYvUTBTOEUxamdid0FrYmJTUEpjU0w2NDBKNTNYOExMV2gxaisxeU1PZFJhWTR1WU9OSG9BSVZCbVJJZmFoNU1IM0Q3M2swKy9md2pQdi9pWTQ0NXh1T2ltMUNyV0NZV1lqdnJnaEQ2NWJ1ZUk5WUpWd3JvOHhKdFRZSkVBb1pseWlrZm52eU9ULy8yWTE3Ly9BZjh2WGYrbUxldnY4Mk8zVUUzaGgyN0N5NlM5eVlZaW1BeHFxU3dGb3loRVVmUXZvMjU3bThCZkY2ZG1OWG44WE9PM1ZkMmNhNmg5aTRXQmRXT2hvYUZuN0dRaW50SGQvamsxc2Q4L1BDVEZQY1pNR05ONVJxOGI4NXd0Q2dwUmxwd1BHVzdycmRmZnJ6bVhvMHZaMHQ0bHd3WjQxczlEUTIzRDI1eGFYS1p5V1FicFZVYnVxTXgwVUl0ZnBVMGZ3MUlxdGpVV0ljem5uc1A3bEZUdGVFcmtjalR4VTZUaWZ2ejZXOEMxQXEwQ29pcWNONnpwT0pnZWN5RDVUR3Y3N3pPOWUzcjdLZ0oyK050ZHJiSGpDakJCUnBYMDNqUVJxV0NHVS96K3lGbTZoUGxxQ2dpdndxRkFxdWhNTXpyR1NmTkNRY24rOXc5dnNPZTdGR3h3S1gwdGliRmZrb0tLQWhwdjNGd01tMmMvYm1FMWhOSm9UTGdtelpHUFFnc1ZVTXREb3ZGcDFDREkzZkMzZjM3WEsrdWMzM3lDbStNcjRPUDNpS053WWlnUGVBRkhSUjFhRllVR2RZWFhERXNLbC9jOUo2S2VTTmVSOHR5R0F0WWpiYXhyNTVVSjV3ZW4zRGtqdmx5Y1lkOTdyT2dqc2xjS0JybGFJakZXell1Z3A3eWVnMzQ1akFRMlJlS2VPTlpxNW5zbHFqQ29hUm1zZ1dsajltOVBzd1JpWnFRQUlLSzZhcGlFZ21xMjRta1M4em9sbzllQ1l2bW1NYk4wYmc0K0ZIVHowTDlQaVBRSko1U2NXLy9ObU16cGRRVHRpYzdpRjRTL0tKMWlVb1dxeWRLUmNYU2xxbkZVbmlCOUlnc0tyQndNN1QxRkdQRjdtaE1KWjVaWFNFaFVDMmZiN1pjYXh2cng4aEt0TXJxSXJyZHhIa2FGalFwNnZXRW1nS0RRdlBoL1EvNDdQLzlsTGV1dnNNLytOTi95SS8vOENkOGR2ZDNUT3dPMitPTFdGdmluYWZ4MGVxdnRVVnNsbDdRWFZaNEp6MVAwQW9YSE42NEdHNW1MWTZHdXE2WnVRVnFwK0Rld1QxdWZQa1puOS80aEwyRHIxZ3loMFM2dGlaYm5DeU9ZeWdET2lZZ0pXM2FUZzc5RzRZR1U4WkZpcXM5VFFpeHNBSVZ1V3BZd0hEajVITytldjhycnBncnZQdURkM2p6MnR2ODhMVjNLTldJY2JsRmdZcmxNZjJDcWc2NDRLQU1uUTdzZXJMWFl4OEw5MmFuTWJ6REdzUjRac3M1dHcvdWNPUHVsOXc3dXN0K3VJOUxHZE5lQldwcG9zNnVKaGFQY0ZHYUtPdXA1bjEvbmJDQ3gxSzdUVzdWL0xxb1ZEc3NlNDdBUzVPQ0tSUjNscmQ1dTNxYlY3WmZ3V3FMZUEvQnRrazV6NEtnSUNTUFFNV0NPMGQzeUlRNktwV2NmMWJQeFNPc1FJOGd1Q2dTZ1hKWWlVRmd0N25Id2ZTWU85UDdYTEdYZUhYN0N0ZTJMckZyZHloMGJLL2dIZHZsemxNVEkxR3hEQ3hHZzQ3bWZxYzhsVytvd29KRlhYTlVIYkozY3BlN3NzZUNSU1JvUUswZExqVGtXU1R6L1h4ZWNmWDg2RGxDQXo2a2NCa2xNUkV0ZjE2RkZHR3FVNmlIeGVIUTFKSHNueHh3ODJTTDJlNGZzeFhHaklxU3lXakV4STRweTVJUkdpT2EwSVFrMlpYYktIWkdsU1FtSlJIWmtMMEcwRXJUaVFvNDVWT1pZa2Z0UE10NndjUFRZKzR2OTNuQUFUTVdWRFJvREdJVmN6ZVAzZ1VUVnEwTWVUR1VJMVkybWlBR3ZDZ01VUjR2R09OeVJGVjdZTXhmL2VYL3h0M2JSMnhOTHNVSm9ta29SOGwvclVLS1lZd3hWU0xSOHFLa2lScDRLMFFXOHZRMHI2ZE10aXpqaWVGbnYveXZqSktGdDZvV0dLUHczL3RrTDBWUlRIQ040aS8vMFY5emVQK1VRazhZRjJNV3N6bWx6ZkhDUGxuS2t1QlpVRkdvV3dsQng5Vi9GS3J2WmFDcmdKZUdTNjljNElPUDN1ZG91WS9SZ3BPOGVPQ1o3cDVJb1hTNkNkc1JFbnFQdE83aVNIVWFPM09wMGNKRVltQlVzaVNUeWxkaWt3dmQ4aWR2L1pRM1gvOERmdlRESDNIdDh2Vll3dE5GMGw2WUVuRTUzcm83aGxiUVg0VmsxWXJlQUcxQXhITjZlc3I5KzN2c0h4M3czaWUvNCtIOGtGazRKazU4RFlhQW84YmoyK1lSQlVvYnZNOW1QWXZXaWhDV1BPMUVrTnN2dGxmb3dtODJXUTk3MTBtalc3Sm5zdnRaVXRoTlNoNDBLQ3lXTGJaNHBYeVZONisveVp2WDMrYmE1YXRNeWdsS29xVTZ5cnJGMkx5QXJHeGpHSHQwY1c1K1g2aWxZdi9oUHJmdTNtTHYvbDJPd3hGTEtwcjB6eWNSTVlkSEZ3cXZRMHhtek9mbU9MY1A5c250NXZaanJmMTZiNnhiWTlmYU1EOVhhaFJEbmJTSFVvSHpFQ0lQR0ROaW14Mys0clYveWs5Zit5bkZ2S0NvQ2thVUtUTEtnZkdJUHJzUVdDZTVzVFR2NnZ2T0JKYkdzVEFMcG5iQnYvL2tQN0Jnd1RGVGx0U3hiRzRPdDVEa29zNTkvTnhXK1JwUXhBSWNQWXV2VVpiUUtBeVdraEVXVFlsaFJNa0ZKbHhobDZ1VGkxemV1Y1QyYUl0U2JST1ZDZkp5OHNtM1hvRTNKbTVEREg4Nm5wL3c4UFNBdzNESUNhZUpwdFhVcWVoc294MU9OWjBWUEtpazdLalNhN3FMQ1Exbng3aStha0dFSmM1S3FaK2JPRTQ1Q2VDRnlTUW1uQWJ2aVRiWGdrSVZlQWtVV0NaTTJHTENEdHRjS25lNXRIMlIzY2tPVzhXRVFoa3NHaDNpK0thVHpuclgrTG5FTTdUaGRBU0N6bVZtSFV0WGNUQTk0dDdEK3h6S0VVdVd1S1JCRU1NcWhCbXpTT1Q3cTZ0OGJiTXVXMmI2SVJkOE1mSDMrK1BPZ0JlR2djaStZSFR6UlVFMHNjUVl5SjU5anU1T3l1aWl6N09vekxvUEpMUkRuZ0FPb1NIT2VsbU9pcFVCK0h1TFJCSml0dXVJV0pzbldpampnSk90Q2kwMUpMZGZiSjNjdGpydGJwWDlTTEppMDFZZmowcVRjdDdrL3JVT3ZTTmlxOGZZWVZPNHdibVFQamsyaVpnVmlkcVdqUFNZaXpzWHVITHBNcGN2WDJWN2ZJRkxGNjlSbWpGRlliRFdnb3JLRDAxVDRWekRmRDVuc1R6bDZPaUl3OE1Eams4T21UZnpKRW9UcU1uYW02bHYwU0FwYTd6VmUreTNrV2hpLzdicDdKcU41LzBrZUN5UkJkWXU1K3IyRWUxbjJ2WXpxUjlaTkpveFk3YjFoTWxrbTFFeDVzM3JiMFQ1cktLa0hJOG9qRVVabldLS2hhYXFvNkI5NDFoVVMyYW5VMDZtcDh5bk0rWit4aEVIK0ZUSklaOUJmcFRFNHBMTE41R3ZUUVQ5S2Z0Z1A3VGxqRVV1YjIxYVNhV21OVXJGNEl4V3RjM0d5NmxjdktTYTJCVXFHRk93eXpaLy8rTGY1OC9lL0ZNdWhndm9PWXlseEVxVUJtdDBlR29pMjFqUHZLeHd1NEhmZnZVN2ZuWDRheFpFZFpFcDgzZzhyWUR1TjBCa1lkVXdCNmtSTFVoZVVNYVJxVVJqZ1RKUm9IZ1hHSzd5R3BZUkkxMVNqa2FNeWhKakxkWkVsUkJyWWdpR2hJRHpudUJqektlRVFLTTg5MC8zZTFTMWFVdkxobmJVaW9zZ243WW9SNjR0QUhSRURibzU0VHdMUEt0RU5uNHNPM1ZER2tsN3J2LzFNYXZIRVVuM1dNa0lnMFdsZHNrTHlKSUNpK0lINDljcGRVR1o3akZyUzR5SlltTVFDYnhQbXRoVlhiT3NGc3lxT1hQbTFDeVpNbThsMDF3YXdYMDZWazhxamIwK1h2UWZ0ekVNOGMrd1NtUWJCaUw3WGNBUVd2Q2RRVU1tblIzWmdtNlNYNzlaMWtmUVRlNnBQS2hrczQwNy8wYjlIa01VQkhFOVNoTWRadEpHeStYenoxTjNKbFAwSXNQaXQvVmF1OGYzY29XcE5Fdy9wK1FSYVgrNW40MzhoSVBpT1JZemthUnptUklmR3FwRWJHY3NndUw0WkkrYkoxRGN0Rmk5UlIwZ0R3TXBuNzRYV2lDTUtBaHB3QS8wd3dCQ2F0bnNCWERwZmRkTkRPZE1aTThMNiswWFJlZDZWaVMxdHMzWUdQY1dYNDl4aDZHZGtDTWw3MzVoemltSFFXRm5sb0tTajQ4K1JLWDJpKzJzVXE4TEs2L2xQZVQzSXRWd09Lb1U1dEFSZ2Y3Y21RK3RPMDY5OXNJM1BJbTZhRy9MRmFkVW1zd0RBUzhhSnVQWVg0S1B3ZGRwd3JkR01mRWxWN2pJeGUwZFJrWmp2RThFeUtHU3NvQkdQVkZ3eVNiTGNsQUJaeHhIMVl6RDZpUTVrS05iZWFWWnZzR1lSdFhyYnJGZnBkOVNnb2hybDNkSjVac0tFbUVEaFdYRzdVaktBcWlGUWkrNmZwSzNjczZONDlJeUp4TFZGUCtmK2s4TWw1R1V2SlhHUVJYT1RoUHI5OEtqRnVoblhvdS8wbjBsdExmYXVRc2p5YThIbkFSaWFZdW1KWWdkOFRjWUxFZkxqMU9maWNRMzFmL3F0VXRvZDU0OVc3bE44b2k5VG1KWGtyY2VkZTZ5K3BmNWY5eEtaeG5mc0tzQjN5NEdJdnVDc1dKcGsxUW1CZGhNVEtFL1FuYzJXYjNoM1g1UWZPaC80ZmNIZmJJa0VGcmE0VkxxVzZwNmRnYlJHaGdIMjlVNHNMT0QwbGwzZi83cGJsQitldlN0R0xCNWVSTHlCOXNmWHZ0QUgyMTd4SDBhcTBBY0l0SHJtL21BbzRHd3dMS0QwUFJJUDIyQWdrSTRaWmFQSUE3aXlzVHFZRXJGY0FaZnR6MU4rZ3VsZGFMZFducENJaGFiTGRCUGczRGVmdVNjeDQrRG9tMkxaRnR1WCs5UVE1Z3pacFNzL3ZsbnppY2UzZTdqdjRDam91ckdnRWNSLzU2MW1FU05wZTNEM3dTWjdRaXoxZ2FyTkY0YVlvYSt4YUpZNHFrV1RZb24xSkFxVXhIQXBOQ25kNjYvemJXZFM0eFZpUTRDSVdCMFdrUktMcDc3YUtLWjVjenk0L1oxQlUzaGVYRDZnSVA1UGo3UmxZQmY3WWNybHNBZW5uRWhuME16a21vM29UOGVLTWdKdWRHRUVIQTlNaFN2WWd6RFVSVGRPVDNoQVNrVUhrZkZja1Z3cEgwL1MwM2wwTEgxQlYzLytmcFBucmZRNnlHMFBYRVYrYzdPRmU3QzJhOTJ2NkZBYkEyaThLbG1yd3VhQ3FpVFh5MGVwbTc5SXRJTkpHY09MTjhaSWRIWFdOTXc2VEIwanJqVmZ0RzNTRy93Mkt4Ym9JYzByKzhtQmlMN290Ry9MMWRHaGJENkdjNStKZzZlQWYwa0U5a2ozRVcvWCtoSmthM1pFQ0UzUTA2Y2krVDNrYzJoT0p1VTh0d3RpOTJ4ZGJiaER2MGdrWlV2S2Rhc1RiMStrSzYzaStya2tRaVo3cjFBTkV4VWZrNldINC9LcG5uWDBiSmpVbmlBUmhGVUlFaUQ5K3NUMkFaTDhpUDdXMkIxVm4zT1dIZVY1dGZXTGJUcjdhYzJFVmE2U1RCL3RCZU5VdmthTGVmYlpLeE9wYVJUVEc2ZjZBYkN1cWI3V1p3eHk2bzBzU2Z5OUF6Mm9ITUpSdnVCZUdCR2JMS1hoUlJnRVozbVphYnczcUMxSU1FaHdWT2d1Y0FXbDlqbGg1ZCt5SlhpQ3FVcmtjYkZwRW9kUUtzVTMyZzJIRVR2RUI2UkxPZnhOQ3B3c0Rqa21KTXVFMS9PZE5EME5KTWhlRDZMcUQ0N0F0cjdKL1Q2WUs5UDZZNVhwbytqSllhVkdOU0tQRnUyK0JWSnlMK1ZiUk82NTlwMWtUcHIrNDI1aEFJYlNHNzcvTHdteU9UMkNXN1IvbGh4M2k3YmVQSDFMN1o5djhlbVU0VzNScUFSalZFYXBRSkI0dFlMSy9kUnZCdjZWNkFMeG1tdDVPc0VkbU00U1BlNGY2anJIODNqYzE1RW5ydUlIdkN0WWlDeUx4elo4bkdPdXdNMkR5aTkxemJkU3M4amh2TTdqOTY1ZGJHWUc2elQyMDRWZ1FBQURSVkpSRUZVdlhiVjByM1lrc1BIV0tyUFdVYzhPN0tGc3ZjN1NuU1B6SzZuZHlSclprN0syR1JOMlhTUTJTZ2pHNTdyMUFvckJLOTduaFBMd3RxQ0srL0twTDU3SnVSaTAzSDFMUjFrYTlXelRRVHIzKytYclJVSjBWcDI3dmJjbmVhZFJXVGpzVjU3WFlFcE5BUzlRcktVVXEyK2NkVThRdG1pVGJoWjNlZmFDWjF6RHo4L2kvWkd0RlpNMWY2TXhXS1RkVXdCQllxQ1VTU1FUYlFzR2tic3NzMjdGOTdtQnp1djg0cTV4cmFmWUJxTHIwS3ltR25RSHJGUFBqeXRrOWpjTEFzMzUyaHh5SklxT3BSMVFNNGhZVjhqY09mSmpvbmNMVlo3WVhjSk54ekxtcHM5aEZpc0pYL2Z0Ky9IQjdXNGxmUEk3N2VmeXliZWZsOWRQMGc1KzNqbFZsVWQyV3kzck5wWXV0MnRqNi9udCtoS20vUU13eXVXNE56MzFmb1g0aDQ4NGV5NnQ4Y3VKZWdOYmI4V0E3M2V5ZnFMd3cxdG9udi85NUdETi9wTHg5L242Zlg3aElISXZsQjBzWm9BVVpWL3c4ZWU1bTdaU0NRMHJjNXNIclcrNlFueDI0SkE3TTdkY0NScjhqc3hZenkrZHpaUG1QUGJmc1Z5dCs1UWUwWVpzelh5dHpwNWRMK1pLcTZUSzVKMUEzcy9wamRmMjY0ZkZhVnROVVdsYjJucG4xKzJFUXBudHFhSWhEZi9RZlFpSzZVeG1rUk9VaXRteTh1alNHeGV0SDBMeUtSVzlkb3ZiK1ByL1lrNTlLNXhML0N4YjlIcXoyQXFjZzJYaU1pNTBLdWRLcE5jbGFzZzFaMW03N2xrTnIyV0s2K1JiRkhQSTJYcDNEamNOakxSdHRiTWJiYmFtT21BcDBqM202SkVJUlNVWEdDWDY3dXY4dmJsdDNoMTYxVkc5WWhTUnFoYXBTYjJlSzBRN1FsNVRmWUlaQUtyMXA3SFkvWWNuQnh3UEQ4aFJsc2FQTTJxNi9nYlJVNGFvajNHM0x2NlB4OUREblQzb2ZaeGlFT1c5QnBCclYzOHg5MHFUZS94SnVQRjJ1SzFiNkJjdDZJcTZlN2p2SDBVNURIK2dITzlOdjFqU3ZMbm16c2lHTjMxODQySFkvb2pmdXFwRXVYb1l1SnFiekhSSi95NUFZTHVmZk84VEpOZW1ONDVSb0lCTHhZRGtYMmgwRVNsQW9qaWtKd2xzNXZjUW1jRzZXNENQbk5mWlJJbWFmaHFKeWtOa2pWRXY4ZG95VnhlRlBUakw5TmoxZnRvK256VU4reFBMbjMwMjJUVmZTamtnYS92OEgvR050dzQ2ZXExdC9wVFVEZmN4aGk3N3ZQOXlSUEFWZkc5dmlXbCs2M1VUdXJzL0puNVFuQ2NzVnhHVlo3UXhzS3RmcEd1ejYyNzdyK0pSZE01bmdlOU5pWGxoS3QrNHRXcVJVbjNQdHVocEl6dXluWVYwUDJlRU5CbHNWRkh0aTJxNFZlbit1Z1d6VTgwT1Q1U0pNU0dWb0V6eVNpOXh6bVV5SzhzWUw0NTVMYWFNT0h0MTkvaDZzNGxtdWtDdDZ6Wk1tUEtwbUJzU3JhMnR0aWU3TEJkN3JCbEpreGtpNUdmNEt0QUVRcFVVRGdNWGp1Q2NqUks0VFVVd3RuUW5YT3dicFVWQmZzSER6amxKQnJ0dEk2dSt6d1VmTk1WdUJVclRGeENGeC9hOWFZc3I2Znhvc0FuWTRKT1g4aE10TDF2Wk5VYytxZ3RnQlNzMnByamVOU1dMWlpjZ3FRNzVQNXpUOTlMZGQ0b2MwNHY2NVBETmNLTTZMVmJjZ05GN0s4Q0FIVm1xVW1VbXN1N1hTZWpBbG9yQ0NvdTFudWpYRlFMRHhUNTJOTkNmSlV2NTNHOGY3T3RublZyUElEdXZsd2Zjd1l5KzhJeEVOa1hqazFSa1p1d3RxTGRaTFhaNUR3N04yUDNlMDVnV3p4MnVEMlg5TGR2dG1UNExLazUrLzArbmxNYnl0bW5NZEszUHhtc2pacG5MSnVyeDk1WklFRlE2R1FGRk9LZ0w4bmNxRlJjL0p4eHMwc2t0NUsySGRIVkswVHQzSzRJWi92ZXR6amc1L2JyZmxwV3R2bFQ2NCs3MElUNGJSZGNlajIvMnAydG9LanIrdkZteFl4ZXlFSDhTWlZJUkxhMis4ZTJVYmRzNmxtSnZoRmtTaVpvTkx0Mm16OTQ3VzNlZWVVdDZ0TWF2Nmk1WUhld0ZkZ2tWcSsxeGtxQldpcFVMVlQxZ2hIamFKUldDcTAwUWFYRnRBY1ZZamxvSFVLVWFrTzFubDVGSkZnbUxacXkvcTVYNEZUQUYxQlp6MzZ6VDUzRXBZeXhyVUJKN3J2OUJucU9vbHVyV0NPWStScXRqN3d0Myt1dmZiWHVMTEpueUdEa3ZMSitrL1hJb2xXUk5pdlJSSTBFbFo1SE02ZXNMZHY2MkJpU3RyWTk3M05QajlVNWFwVkM2ak9mT1RjY0pGbTJnL2RwUVpoZmpzS0xTa1V0WDVmVWJISjB3dU5taTI0VXpTUjJZS25mQnd4RTlvV2l0eUx2VzZzMjNqdnJCTFcvZWRSUXMvNmVaNVhNZmQ4SjdhYno2NzEzcGkwekFRaG5QL2RFaENTMjMrUGIvUW53aU91OHljNTc5dVBucFJxczdxT2RQRGY4M3FNS1FPWDMrbUVGL2FOYVAwYnBQMURudC8zS1o1OFZaeFlCUFd2T1k3OTY5aFA5NjdycCt4dFZMWjcwWk9Tc29rRVdTK3FPNVJGamdKei8xdE1nVHV5WjVvU2ViRnBvRDhXZ0tkQTRWM0daaTloRHphVGFadVF1VVN3TnlvY3UvakVWRkZGQlJTSmxOQkppWFNWUnlZb2FBdFErbHJvWFRlbGp4NnhOUEMrbmFUdWJEYkNqQzZyWkRGTWF2RlVjaHlWaHkzSWtGYis1OXhIM2VSaVZId2pVVGVkbmw2cmZadXNVOWxIajdOZkFCdUxadnlkeVRPWHF4OVA0bXhlaTRkSDk1eEY1aEVEQVNmVGtyVHQxdm40L2ZzUXhyUDNtbVRlZlpMNWFlVzN6T0hEZS9TcnJEL3BqMGRyMWJRTjludURhYnY1SWQ5VTJqYmRuem5mZ3VkOEpERVQyaGVMYkpKS2JySGUvVDlod1RrOXFTYzJUeWhOYlhwOWorejFxRW51QzM5azQyUGEyMy9RNGUrNyt6MWlNdjMwOFhTSloxMzdmeGh5MVh0RXR2Zmd0UWFNMjJhaGFWaFNTSjFXaXZtZFFGRkl3cmd0R3JxQUlCU0c0bHZpZUtkR3JBa0YzbHZ2MmRRR1RyTkVxaFFoQVRHQ0tSVFIwU2lLRXBxNHBqU1g0aGlZMHFMSENsWjRISncrNU03dExuU1QvVi9ERXhPbzVZTlBpY09NSHp4bC9uL2xhUC80Ky84YTYwOWZhOFZrUysxUzdld0tQeGRmRDV1UFp1SitCdEg1bk1SRFpBUU1HREJpd0VZOGtTQ25rVTFJQzZhYktYSDBMZEQrOFF3dDRGUWdtaGhQVUdqeEowVURsQ01kQTNkU1U0NUxHTjFUQm9VWWxTMWx5LzJpUEF4NDg1V0psd0lBQnYwOFlpT3lBQVFNR0RPaHdidEJ6UkxhZ0JxSUZOZlNUS2ROVzl4NzNjMk15d1EyOTdQMmd3S3RZSXlvb2haSlk4MHVJTmNERUdKeEFLRFJoSk93ZjczTnJjVHVHTEF4RWRzQ0FseDREa1Iwd1lNQ0FseFNQOUpZK1JzSktGQVIwcTJtYUxhMkM5TWl0dEZueG14THVSTVdRQWtsS0lxUVkyeGlMRUZERmlGb0ZYS0ZSWTgxeG1ITGo4Q1lISE5Da1N2Y0RCZ3g0dVRFUTJRRURCZ3dZY0M0MjVwMHAycm9aMHJQSTVpUVpMV2NOdTlrYTI0WWRxUHc4eXFLWkxBMG9xcTFnWmF4aElSVjE0VG1SQlY4ZTNlYlc4aTVMS3BUUmVEOVlaQWNNZU5reEVOa0JBd1lNZU1raHNLcVJtYkN1U25HbTFDaTYwNEdWWkpIdHhjanEzdU9zUnFCNlNWK1FDS3VDSUVrbUtXU3lHM0FxMEdoUHBSMTNwL3Q4c3Y4WkJ4eXpwQ0VvR1VJTEJnd1lNQkRaQVFNR0RCaXdoa2NRMnFBNm5kUmNEUW9pVDFWSm5xalZRa2l2NlNUaDFvOVcwTEpxbmZXU0syVkZEZFNnSFhXb2FHek5UQys0TTkvbkRnY3NhVkE3QnIrY2Ywc1Z2QVlNR1BCZHhrQmtCd3dZTU9BbHhyazJUUVZXVy9EZzhUam5hSXpIQmtNSUFhVVZOSFdNZVEzU1ZpMkw1WGMxU3FsVWtDT3lXQW1CZnQxVEplQVhGZU55aEJtVllBeUxwc0Y3aDllQ3Q0R3R5MXQ4Y3Y4MmY3Zi9BVi94RlVzYW5Ba0VWOFY2RFpzRlB3Y01HUEFTWVNDeUF3WU1HUEFTb2kvZWZ4NUNDQ2cwQlFXajBZaFNseGhua0Zwd2RVTmhMSUpIbENKV0p0T2dBZ2FOVW9MNHFFTXJTbUUxb0V6N09ZTnc4Zkl1b1hGVWJra3RIcStCVW9FTitNTHo4YjB2K2VyMERvY2NzYUNoSnBhNEhjanJnQUVETWdZaU8yREFnQUV2TVZZNFlZNlR6UVVKeEdFb3FhbFpOaldOYmpBZXRFU3JMQ3FnZ2tkRUlSSzN1VUN3VW9KUzBXd3Fva0E4RWlMaGxhQndVZk9BdWw3U0JBK0ZRbzBOWW9XcG4zSFV6UG5OZzk5d3hERUhIRlBSNFBCZGx0bGpaTUlHREJqd2NtQWdzZ01HREJnd1lDT01NaWhSRkpRb3BhS0YxbWhzV1ZBVUJvSUhwWkFBUXR5aWRDdHJvSlZCbEU1bGpxT3NscVJ3QUM5d1hNL0FlaWdNZXF6d1JjM0I4b2l2RHU5eVozcVBXOXhpVGtORlE1TkpMS3hLSkF3WU1PQ2x4a0JrQnd3WU1PQmx4d2JGQWtnS0JDZzBHaEhCQlUvVE5LaGFjRjVoREZGbUlJVVVCRkZJOEFTbGtXeXBWUUhKbGxtbEVlVVJGRUUxVEs1dDBWRFQrQ1V6TitYQjhRRzNqKy93MWV3MlI1d2tBaHR3U0N4M0s0QURoWXJFV2diVmdnRURYbllNUkhiQWdBRURCbXhFSU9CVEpLMHhCcXN0SlNVbEZ1cUFsd2FGRUpSSEtZWG9WSlZMaElDS1pXdTFSbEo4TElBbmhpVjRCU2ZOS2FmdWhLT1RCOXcvdnNlOVpvOFRqcWlvcUhEVWltNldTaFpZSTJDSTF0Mkd3U2c3WU1ETGpvSElEaGd3WU1DQWpRaUF3YURSTk41UnV4b3ZKVW9WYUd0eHZrYTBJRnFoZExTU2FnVStxczdpUTBnVndBSXVoS2g4MERRMDNyR2c0ZVA5enpqeFU2Wnl4SlFqSEV0cUtpcmxZRVFYQ3l2ZEFWbWdSTWNTdVlBYnRHUUhESGlwTVJEWkFRTUdESGpaa2ZSZjE1OXJwYWlsNFpBajNyL3hHNHFaWmlJVGRzd09SaW1Lc1VFcFVNYWd0VUpwUTFDNVRJRXdXeTd4NG1tY3A2NHJabjdKZ2psTEttb2NjeHcxRFpML1ZDQm9PbWt0dlhwTXNmWlgvQ2VETFhiQWdBRU1jdElEQmd3WThCSWpNOFd3V1FWQU5BYU5TWkd5TnBGSWhlcE5IbjJ6cVVvRXMzc2UxcDduclVjSTZaK2t1SUgyY1k3WnpjY2szWjhCVkRwdW4vWStZTUNBbHhjRGtSMHdZTUNBQVFNR0RCand2WVIrL0VjR0RCZ3dZTUNBQVFNR0RQanVZU0N5QXdZTUdEQmd3SUFCQTc2WCtQOEI5SUtoVlFMVk9Bb0FBQUFBU1VWT1JLNUNZSUk9XCJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXG4gICAgICAgICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz4gKi99XG4gICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJnNVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImczNjhcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzc0KVwiIGlkPVwiZzM3MFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDM3OFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwMzUuOTEsODQxLjEzKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4zNzZcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDIyLjI4NDQ3OSAzMi4zODQ2NCA0Mi40MDQ2NCA0OS4xNTgxMTkgNTMuNjA2OTk4IDY0Ljc0OTIzNyA2OS4xOTgxMiA4MC4zNDAzNjMgOTEuNDgyNTk3IDk2LjY3Mjk1OCAxMDcuODE1MiAxMTguOTU3NDQgMTMwLjA5OTY5IDEzNS41NTA1NyAxNDYuNjkyNzkgMTU3LjgzNTA0IDE2OC45NzcyOCAxNzMuNDI2MTYgMTgzLjQ0NjE3IDE5My40NjYxNiAxOTcuOTE1MDQgMjA5LjA1NzI4IDIyMC4yNTk2NCAyMjUuNjUwNDEgMjMxLjIyMTUzIDI0Mi4zNjM3NSAyNTMuNTA2XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJkZXNjcmliaW5nIGFuZCBhbmFseXppbmcgdGhlIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzM4MFwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzODYpXCIgaWQ9XCJnMzgyXCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzkwXCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA0My43MSw4MTcuMTMpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjM4OFwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDI3Ljg1NTYgMzguOTk3ODQxIDUwLjE0MDA3OSA1NS43MTEyMDEgNjAuMTYwMDggNzEuMzAyMzIyIDc1Ljc1MTE5OCA4MS4xMjE5MTggODUuNTcwODAxIDEwMi4yNjQxMiAxMTMuNDA2MzYgMTI0LjU0ODYgMTM0LjYyODcyIDE0MC4xOTk4NCAxNTAuMjE5ODMgMTU1Ljc5MDk1IDE2MS4wMjEzOSAxNjUuNDcwMjggMTc2LjYxMjUyIDE4Mi4xODM2NCAxOTMuMzI1ODggMjA0LjQ2ODEyIDIxNS42MTAzNyAyMjYuNzUyNTkgMjM3Ljg5NDg0XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJwb3RlbnRpYWwgaW1wYWN0cywgaW50ZW5kZWQgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnMzkyXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDM5OClcIiBpZD1cImczOTRcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0MDJcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDQ1Ljk5LDc5My4xMylcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDAwXCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAxNy44NTU2NCAyMy4yNDY0MDEgMzQuMzg4NjQxIDQ1LjUzMDg4IDQ5Ljk3OTc1OSA2MS4xMjIwMDIgNjYuNjkzMTIzIDc3LjgzNTM1OCA4OC45Nzc2IDEwMC4xMTk4NCAxMTEuMzAyMTYgMTIyLjQ0NDQgMTI4LjAxNTUyIDEzMy4xNDU3NyAxNDQuMjg3OTkgMTU1LjQzMDI0IDE2MS4wMDEzNiAxNzIuMTQzNiAxNzYuNTkyNDggMTgyLjE2MzYgMTg3LjYzNDUyIDE5OC43NzY3NiAyMDUuNDkwMTYgMjE2LjYzMjQgMjI3Ljc3NDY0IDIzMy4zNDU3NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib3IgdW5pbnRlbmRlZCwgb24gZGlmZmVyZW50IFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzQwNFwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0MTApXCIgaWQ9XCJnNDA2XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NDE0XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjAuMDY0cHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDExMzcuMDcsNzY5LjEzKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40MTJcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDQuNDU0MjA3OSAxNS42MDk3OTIgMjUuNTYxNTM3IDM2LjcxNzEyMSA0MS4xNzEzMjlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImxldmVsc1wifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzQxNlwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0MjIpXCIgaWQ9XCJnNDE4XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NDI2XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA0NS45OSw3MjEuMSlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDI0XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxNi42OTMzMTkgMjcuODM1NTYgMzguOTc3Nzk4IDQ0LjU0ODkyIDQ4Ljk5Nzc5OSA2MC4xNDAwNDEgNzEuMjgyMjggODEuMzAyMjc3IDg2LjYzMjkxOSAxMDEuMTAxOCAxMDUuNTUwNjggMTExLjEyMTggMTIyLjI2NDA0IDEyNy44MzUxNiAxMzcuODU1MTYgMTQ3LjkzNTI5IDE1Mi4zODQxNiAxNjMuNTI2NCAxNzQuNjY4NjQgMTgwLjIzOTc2IDE4NC42ODg2NCAxOTQuNzA4NjMgMjAwLjI3OTc1IDIxMC4yOTk3NiAyMTUuNDkwMTMgMjI2LjYzMjM1IDIzMy4zNDU3NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wibWVldGluZ3Mgd2l0aCBzY2llbnRpc3RzIG9yIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzQyOFwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0MzQpXCIgaWQ9XCJnNDMwXCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NDM4XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA0OC43NSw2OTcuMSlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDM2XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMzMuNDI2NzIgNDQuNjI5MDgyIDQ5LjA3Nzk2MSA2MC4yMjAyIDY1LjYzMDk5NyA4MC4wOTk4NzYgODQuNTQ4NzU5IDkwLjExOTg4MSAxMDEuMjYyMTIgMTEyLjQwNDM2IDEyMy41NDY2IDEyOS4xMTc3MiAxMzQuNTA4NDggMTQ1LjY1MDczIDE1MS4wNjE1MiAxNjEuMDgxNTEgMTcxLjIwMTcyIDE3NS42NTA2IDE4Ni43OTI4NSAxOTcuOTM1MDcgMjAzLjUwNjIgMjA3Ljk1NTA4IDIxMy40NDYwNCAyMTcuODk0OTEgMjI3LjkxNDkyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJwZW9wbGUgd2l0aG91dCBhIHNjaWVudGlmaWMgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNDQwXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ0NilcIiBpZD1cImc0NDJcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0NTBcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMTEwLjMxLDY3My4xKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40NDhcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDIyLjI4NDQ3OSAzMi4zODQ2NCA0Mi40MDQ2NCA1My42MDY5OTggNjAuMjgwMzE5IDcxLjQ2MjYzOSA4Mi41MDQ2NzcgOTMuNjQ2OTE5XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJiYWNrZ3JvdW5kXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNDUyXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ1OClcIiBpZD1cImc0NTRcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0NjJcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDkwLjM5LDYyNS4xKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40NjBcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDEwLjAyIDIxLjIyMjM2MSAzNy45MTU2OCA0OS4wNTc5MTkgNTUuNzMxMjM5IDY2LjkxMzU1OSA3OC4wNTU4MDEgODkuMTE3ODgyIDEwMC4yNjAxMiAxMTAuMjgwMTIgMTE0LjcyOSAxMjQuNjI4NzYgMTM1Ljc3MSAxNDAuMjE5ODggMTUwLjIzOTg4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJjb21wcmVoZW5zaXZlbHkgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNDY0XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ3MClcIiBpZD1cImc0NjZcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0NzRcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDgwLjQzLDYwMS4xKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40NzJcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDEwLjAyIDIxLjIyMjM2MSAzMi4zNjQ2MDEgNDIuNDQ0NzIxIDQ2Ljg5MzYgNTguMDM1ODM5IDY5LjE3ODA3OCA3NS45MTE1MjIgODcuMDUzNzU3IDkyLjYyNDg3OCA5Ny4wNzM3NjEgMTA4LjIxNiAxMTkuMzU4MjQgMTI0LjUwODUyIDEzMC4wNzk2NCAxMzYuNzUyOTYgMTQ3Ljg5NTIgMTY0LjU4ODUyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJjb25zaWRlcmF0aW9uIGZyb20gXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNDc2XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ4MilcIiBpZD1cImc0NzhcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0ODZcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDU3LjUxLDU3Ny4xKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40ODRcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDE1LjU5MTEyIDIxLjE2MjIzOSAzMi4zMDQ0ODIgMzguOTc3Nzk4IDUwLjEyMDA0MSA2MS4yNjIyOCA2Ni44MzMzOTcgNzEuMjgyMjggODEuMjQyMTU3IDkyLjM4NDM5OSA5Ny43OTUxOTcgMTA4LjkzNzQ0IDEyMC4wNzk2OCAxMjYuODEzMTIgMTM2LjgzMzExIDE0OC4wMzU0OCAxNTkuMTc3NzIgMTY5LjE5NzcyIDE3NC42Njg2NCAxNzkuMTE3NTIgMTg5LjA3NzM5IDIwMC4yMTk2NCAyMTAuMjk5NzZcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImFsdGVybmF0aXZlIHBlcnNwZWN0aXZlcyBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgICA8Z1xuICAgICAgICBpZD1cImVuZ2FnZVwiXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyBlbmdhZ2UtdmVyc2lvblwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgfX1cbiAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKC0xNzkuMDU2ODcsNzA4LjgzOTQ2LDcwNS44MDA3OSlcIlxuICAgICAgIFxuICAgICAgPlxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJlbmdhZ2UtYW50aWNpcGF0ZVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2I4NWJkMVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gODk0LjUsODkwLjAzIC02LjQ4LC01MS44IC00OS41NywtNi4xOSBjIDMxLjYzLC0zMi41NyA1MS4xMiwtNzcuMDEgNTEuMTIsLTEyNi4wMSAwLC00MC4xNyAtMTMuMSwtNzcuMjcgLTM1LjI0LC0xMDcuMjggbCA2LjUsLTUyLjExIDUwLjIsLTYuMjggYyAzNi45Nyw0NS4xMSA1OS4xNywxMDIuOCA1OS4xNywxNjUuNjcgMCw3MS43NiAtMjguOTEsMTM2Ljc2IC03NS43LDE4NCB6XCJcbiAgICAgICAgLz48L2E+XG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwiYW50aWNpcGF0ZS1hY3RcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXG4gICAgICAgIC8+IDwvYT5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgZW5nYWdlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJhbnRpY2lwYXRlLWVuZ2FnZVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNTA2LjQxLDg3MS42NyBjIC0zNi45NywtNDUuMSAtNTkuMTYsLTEwMi43OSAtNTkuMTYsLTE2NS42NiAwLC03MS43NiAyOC45LC0xMzYuNzYgNzUuNywtMTg0IGwgNi40Niw1MS43OSA0OS41OSw2LjIgYyAtMzEuNjQsMzIuNTcgLTUxLjEzLDc3LjAxIC01MS4xMywxMjYuMDEgMCw0MC4xNiAxMy4xLDc3LjI2IDM1LjI1LDEwNy4yOCBsIC02LjUxLDUyLjExIHpcIlxuICAgICAgICAvPiA8L2E+XG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIHJlZmxlY3QtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGg2MC0zXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA4MzQuNjgsNTc2LjIzIGMgLTMyLjU3LC0zMS42MyAtNzcuMDEsLTUxLjEyIC0xMjYuMDEsLTUxLjEyIC00MC4xNiwwIC03Ny4yNiwxMy4xIC0xMDcuMjcsMzUuMjQgbCAtNTIuMTIsLTYuNSAtNi4yNywtNTAuMiBjIDQ1LjEsLTM2Ljk4IDEwMi43OCwtNTkuMTcgMTY1LjY2LC01OS4xNyA3MS43NiwwIDEzNi43NSwyOC45MSAxODQuMDEsNzUuNyBsIC01MS44MSw2LjQ4IHpcIlxuICAgICAgICAvPiA8L2E+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjQtNDRcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNjg2LjE3LDkyNi42IC0xLjMzLC03Ljc5IDUuMzcsMC45OCB6IG0gLTIuOSw0LjIyIDQuMjEsMC43NyAxMS40OCwtMTguMjUgLTQuMzMsLTAuNzkgLTIuNTMsNC4xNiAtNy44NywtMS40NCAtMC44MSwtNC43NyAtNC4yMiwtMC43NyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGg2Ni00XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcxNi43OSw5MzQuMTggYyAyLjQ1LC0wLjAyIDQuNDMsLTAuNzcgNS45NCwtMi4yMyAwLjksLTAuODcgMS41NywtMi4xIDIuMDEsLTMuNzEgbCAtNC4wMSwtMC45MSBjIC0wLjIzLDEuMDQgLTAuNzEsMS44NiAtMS40NiwyLjQ3IC0wLjc0LDAuNjEgLTEuNjUsMC45MiAtMi43MiwwLjkzIC0xLjQ5LDAuMDIgLTIuNywtMC41IC0zLjYzLC0xLjU2IC0wLjk0LC0xLjA2IC0xLjQyLC0yLjc3IC0xLjQ0LC01LjE2IC0wLjAzLC0yLjUzIDAuNDEsLTQuMzQgMS4zMSwtNS40MiAwLjksLTEuMDggMi4wNywtMS42MyAzLjUzLC0xLjY1IDEuMDcsLTAuMDEgMiwwLjMyIDIuNzgsMSAwLjc4LDAuNjcgMS4zNSwxLjc0IDEuNywzLjIgbCAzLjkxLC0xLjI4IGMgLTAuNjMsLTIuMTggLTEuNjQsLTMuNzkgLTMuMDUsLTQuODQgLTEuNDEsLTEuMDQgLTMuMTksLTEuNTUgLTUuMzQsLTEuNTMgLTIuNjUsMC4wMyAtNC44MywwLjk2IC02LjUyLDIuNzkgLTEuNjksMS44MyAtMi41Miw0LjMyIC0yLjQ5LDcuNDcgMC4wNCwzLjMzIDAuOTIsNS45MSAyLjY2LDcuNzQgMS43NCwxLjgyIDQuMDEsMi43MiA2LjgyLDIuNjkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjgtNFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3MzcuMzksOTMyLjQyIDE1LjYyLC0zLjAxIC0wLjY0LC0zLjMzIC01LjgyLDEuMTMgLTMuMTUsLTE2LjMzIC0zLjk3LDAuNzcgMy4xNSwxNi4zMiAtNS44MywxLjEzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8ZyBpZD1cImc3MC03XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNzYtMSlcIiBpZD1cImc3Mi02M1wiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoNzgtMTdcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5NC4zOCw2MjUuMzcgLTMuOTcsMTQuMyAzLjI2LDAuOTEgMi44OSwtMTAuNDEgNC4yNywxLjE5IC0yLjY5LDkuNjggMy4yNSwwLjkgMi42OSwtOS42OCA1LjI1LDEuNDYgLTIuOTksMTAuNzcgMy4yNSwwLjkxIDQuMDcsLTE0LjY3IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnODAtNVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDg2LTkpXCIgaWQ9XCJnODItOVwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoODgtNlwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDg3LjUzLDY1Mi41IC0wLjY1LDMuODggMTEuODMsMTAuMjkgLTEzLjE4LC0yLjIxIC0wLjYzLDMuNyAxOS43NCwzLjMxIDAuNjcsLTQgLTExLjU0LC0xMC4xMSAxMi44OCwyLjE1IDAuNjIsLTMuNyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzkwLTIxXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoOTYtOSlcIiBpZD1cImc5Mi03XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGg5OC04XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODIuNDgsNjkwLjkyIGMgLTAuMTQsMi40OCAwLjI3LDQuNDUgMS4yMyw1LjkgMC45NiwxLjQ1IDIuMzUsMi40MyA0LjE2LDIuOTMgbCAwLjk4LC0zLjk2IGMgLTAuOTcsLTAuMzQgLTEuNzEsLTAuOTEgLTIuMjQsLTEuNzIgLTAuNTIsLTAuODEgLTAuNzUsLTEuNzkgLTAuNjksLTIuOTYgMC4xLC0xLjc2IDAuNzQsLTMuMTMgMS45MiwtNC4xMSAxLjE3LC0wLjk4IDIuODYsLTEuNCA1LjA2LC0xLjI4IDIuMzcsMC4xMyA0LjEyLDAuNzYgNS4yNSwxLjg4IDEuMTIsMS4xMiAxLjY0LDIuNTQgMS41NCw0LjI1IC0wLjA0LDAuODQgLTAuMjYsMS42OCAtMC42NCwyLjUxIC0wLjM4LDAuODMgLTAuODIsMS41NCAtMS4zMywyLjEyIGwgLTIuNTMsLTAuMTQgMC4yNiwtNC42MiAtMy4zNywtMC4xOSAtMC40OSw4LjY5IDcuOTYsMC40NSBjIDAuODcsLTAuOCAxLjY2LC0xLjk4IDIuMzcsLTMuNTUgMC43MSwtMS41NyAxLjEyLC0zLjE4IDEuMjEsLTQuODIgMC4xMiwtMi4wOSAtMC4yMiwtMy45NCAtMS4wMSwtNS41NCAtMC43OSwtMS42MSAtMS45OCwtMi44NCAtMy41NywtMy43MiAtMS41OCwtMC44NyAtMy4zMywtMS4zNiAtNS4yNSwtMS40NyAtMi4wOCwtMC4xMiAtMy45NiwwLjIyIC01LjYyLDEgLTEuNjcsMC43OCAtMi45OCwxLjk5IC0zLjk0LDMuNjIgLTAuNzQsMS4yNCAtMS4xNiwyLjgyIC0xLjI2LDQuNzMgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMDAtNVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEwNi05KVwiIGlkPVwiZzEwMi03XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDgtNFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDg3LjQzLDcyMC41NiA3LjI4LC0zLjA5IDAuMjksNS40NSB6IG0gLTQuNzcsLTEuODQgMC4yMyw0LjI3IDIwLjQxLDYuOTUgLTAuMjQsLTQuMzkgLTQuNjMsLTEuNTEgLTAuNDIsLTcuOTkgNC40NSwtMS44OSAtMC4yMywtNC4yOCB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzExMC0xXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTE2LTcpXCIgaWQ9XCJnMTEyLThcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDExOC01XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODUuNzYsNzUxLjYxIGMgMC40LDIuNDUgMS4yMyw0LjI4IDIuNDgsNS40OSAxLjI2LDEuMjEgMi44MywxLjg3IDQuNzEsMS45NyBsIDAuMDksLTQuMDkgYyAtMS4wMiwtMC4xMiAtMS44NywtMC41MSAtMi41NiwtMS4xOSAtMC42OSwtMC42OCAtMS4xMiwtMS41OSAtMS4zMSwtMi43NCAtMC4yOSwtMS43NCAwLjA0LC0zLjIyIDAuOTcsLTQuNDMgMC45NCwtMS4yMSAyLjQ5LC0xLjk5IDQuNjcsLTIuMzUgMi4zNCwtMC4zOCA0LjE4LC0wLjE1IDUuNTMsMC43IDEuMzQsMC44NSAyLjE1LDIuMTIgMi40MywzLjgxIDAuMTMsMC44MyAwLjExLDEuNyAtMC4wOCwyLjU5IC0wLjE5LDAuODkgLTAuNDcsMS42OCAtMC44NCwyLjM2IGwgLTIuNTEsMC40MSAtMC43NCwtNC41NyAtMy4zMywwLjU1IDEuNDEsOC42IDcuODcsLTEuMyBjIDAuNjcsLTAuOTYgMS4xOCwtMi4yOSAxLjU0LC0zLjk4IDAuMzUsLTEuNjggMC4zOSwtMy4zNCAwLjEzLC00Ljk3IC0wLjM0LC0yLjA2IC0xLjA3LC0zLjc5IC0yLjE5LC01LjE4IC0xLjEyLC0xLjQgLTIuNTUsLTIuMzUgLTQuMjksLTIuODYgLTEuNzMsLTAuNSAtMy41NSwtMC42IC01LjQ1LC0wLjI5IC0yLjA1LDAuMzQgLTMuODEsMS4wNyAtNS4yNywyLjE5IC0xLjQ1LDEuMTMgLTIuNDcsMi41OSAtMy4wNSw0LjM5IC0wLjQ1LDEuMzggLTAuNTIsMy4wMSAtMC4yMSw0Ljg5IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTIwLTlcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMjYtMSlcIiBpZD1cImcxMjItN1wiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI4LTVcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5MC40Miw3NzIuOTkgMy45NywxNC4zIDMuMjYsLTAuOSAtMi44OSwtMTAuNDEgNC4yOCwtMS4xOSAyLjY5LDkuNjkgMy4yNCwtMC45MSAtMi42OCwtOS42OCA1LjI1LC0xLjQ1IDIuOTksMTAuNzcgMy4yNSwtMC45IC00LjA3LC0xNC42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzEzMC0zOFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEzNi01KVwiIGlkPVwiZzEzMi04XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMzgtM1wiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTEyLjc3LDgxMC4yIC03Ljg5LC0wLjUgMi4xOSwtNSB6IG0gMy40NCwzLjc5IDEuNzEsLTMuOTIgLTE1LjEyLC0xNS4zNiAtMS43Niw0LjAyIDMuNDYsMy40MyAtMy4yLDcuMzIgLTQuODMsLTAuMyAtMS43MiwzLjkyIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTQwLTFcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNDYtNylcIiBpZD1cImcxNDItOFwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ4LTlcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNC45MSw3OTIuMzggMS4xNywtMy43NSAtMTAuMzEsLTExLjgxIDEyLjc2LDMuOTkgMS4xMiwtMy41OCAtMTkuMTEsLTUuOTcgLTEuMjEsMy44NyAxMC4wNSwxMS41OSAtMTIuNDUsLTMuODkgLTEuMTIsMy41OCB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzE1MC02XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTU2LTMpXCIgaWQ9XCJnMTUyLTRcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE1OC0zXCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzIuNTcsNzY1Ljg4IDMuMTUsLTE1LjU5IC0zLjMyLC0wLjY3IC0xLjE3LDUuODEgLTE2LjMsLTMuMjkgLTAuOCwzLjk2IDE2LjMsMy4yOSAtMS4xOCw1LjgyIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTYwLTNcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNjYtNilcIiBpZD1cImcxNjItMzhcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE2OC02XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzcuMjYsNzM5LjI3IDAuNDgsLTQuMDEgLTE5Ljg3LC0yLjM5IC0wLjQ4LDQuMDEgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNzAtMFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE3Ni05KVwiIGlkPVwiZzE3Mi00XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNzgtOFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTM5LjU4LDcxNC4yOSBjIDAuMDgsLTIuNDQgLTAuNTcsLTQuNDYgLTEuOTcsLTYuMDMgLTAuODIsLTAuOTQgLTIuMDMsLTEuNjYgLTMuNjIsLTIuMTcgbCAtMS4wOCwzLjk3IGMgMS4wMywwLjI3IDEuODMsMC43OSAyLjQsMS41NiAwLjU4LDAuNzcgMC44NSwxLjY5IDAuODEsMi43NiAtMC4wNSwxLjQ5IC0wLjYyLDIuNjcgLTEuNzEsMy41NiAtMS4xLDAuODkgLTIuODQsMS4yOSAtNS4yMiwxLjIxIC0yLjUzLC0wLjA4IC00LjMyLC0wLjYgLTUuMzYsLTEuNTQgLTEuMDQsLTAuOTUgLTEuNTQsLTIuMTUgLTEuNDksLTMuNiAwLjAzLC0xLjA4IDAuNDEsLTEuOTkgMS4xMSwtMi43NCAwLjcxLC0wLjc1IDEuOCwtMS4yNyAzLjI4LC0xLjU2IGwgLTEuMTEsLTMuOTUgYyAtMi4yMSwwLjUyIC0zLjg2LDEuNDcgLTQuOTcsMi44MyAtMS4xLDEuMzYgLTEuNjksMy4xMSAtMS43Niw1LjI2IC0wLjA5LDIuNjYgMC43NCw0Ljg3IDIuNSw2LjY0IDEuNzYsMS43NyA0LjIxLDIuNzEgNy4zNiwyLjgxIDMuMzMsMC4xMSA1Ljk0LC0wLjY2IDcuODQsLTIuMzIgMS45LC0xLjY1IDIuOSwtMy44OCAyLjk5LC02LjY5IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTgwLTg4XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTg2LTgpXCIgaWQ9XCJnMTgyLTlcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE4OC03XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzkuMSw2OTQuMjcgLTAuMjIsLTQuMDMgLTE5Ljk4LDEuMDkgMC4yMSw0LjAzIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTkwLTdcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxOTYtMjkpXCIgaWQ9XCJnMTkyLTZcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE5OC00M1wiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTMzLjk4LDY3NC4yNSAtNS42MiwwLjc5IC0wLjMxLC0yLjE5IGMgLTAuMjIsLTEuNTggLTAuMjYsLTIuNjUgLTAuMTMsLTMuMjEgMC4xMywtMC41NiAwLjQsLTEuMDIgMC44LC0xLjM4IDAuNCwtMC4zNyAwLjg5LC0wLjU5IDEuNDgsLTAuNjcgMC43MiwtMC4xIDEuMzQsMC4wMiAxLjg3LDAuMzggMC41MywwLjM2IDAuOSwwLjg2IDEuMTEsMS40OSAwLjE1LDAuNDYgMC4zMywxLjQyIDAuNTMsMi44NiB6IG0gMy45MiwzLjUzIC0wLjksLTYuNDIgYyAtMC4zNCwtMi40MyAtMC42NiwtNCAtMC45NiwtNC43MSAtMC40NiwtMS4xIC0xLjI0LC0xLjk2IC0yLjM0LC0yLjU5IC0xLjExLC0wLjYyIC0yLjQ1LC0wLjgzIC00LjAzLC0wLjYgLTEuMjEsMC4xNyAtMi4yLDAuNTMgLTIuOTcsMS4wOSAtMC43NywwLjU2IC0xLjM0LDEuMjEgLTEuNzIsMS45NSAtMC4zOCwwLjc1IC0wLjU5LDEuNDkgLTAuNjUsMi4yMSAtMC4wNSwwLjk4IDAuMDQsMi4zOCAwLjMsNC4xOSBsIDAuMzYsMi42MSAtNy40NywxLjA1IDAuNTYsNCB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIwMC0wXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjA2LTkpXCIgaWQ9XCJnMjAyLTNcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIwOC0wOVwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTI3LjAxLDY0NC4zNyAtNi41Myw0LjQ1IC0xLjM1LC01LjI5IHogbSA1LjA0LDAuODggLTEuMDUsLTQuMTUgLTIxLjM4LC0yLjgzIDEuMDksNC4yNiA0LjgzLDAuNTcgMS45Nyw3Ljc2IC00LDIuNzIgMS4wNiw0LjE1IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMjEwLTJcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMTYtOClcIiBpZD1cImcyMTItNVwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4LTRcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNi4wNyw2MjQuMTkgLTUuNTIsLTE0LjkyIC0zLjE4LDEuMTggMi4wNiw1LjU2IC0xNS41OSw1Ljc3IDEuNCwzLjc5IDE1LjU5LC01Ljc3IDIuMDYsNS41NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIyMC0wXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjI2LTUpXCIgaWQ9XCJnMjIyLTVcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOC05XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MTYuMDYsNTk4Ljg4IC02LjUzLC0xMy4zMyAtMy4wNCwxLjQ5IDQuNzUsOS43IC0zLjk4LDEuOTUgLTQuNDIsLTkuMDMgLTMuMDMsMS40OSA0LjQyLDkuMDIgLTQuOSwyLjQgLTQuOTEsLTEwLjA1IC0zLjAzLDEuNDkgNi42OSwxMy42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICB7LyogICA8ZyBpZD1cImc3NDQtMFwiIHRyYW5zZm9ybT1cInJvdGF0ZSgxODApXCIgPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDc1MClcIiBpZD1cImc3NDZcIj5cbiAgICAgICAgICAgIDxnIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiIGlkPVwiZzc1MlwiPlxuICAgICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgICBpZD1cImltYWdlNzU4XCJcbiAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNtYXNrNzU0KVwiXG4gICAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFySUFBQUpVQ0FZQUFBRHBaTVVmQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBSUFCSlJFRlVlSnpzM1ZtUUxOZDk1L2Z2T1NjemErbnUyM2NITHZhTkpBZ1FJRUFTQUVtQXduQ1RxQ0VsY2JSTmFLd1pleUxzTjcvNHlTOStjSVFmeHZQZ0NNYzRZaHl5ckJnNXBORFkwZ1JGQ3VJR2lpQ3g3eUFJRUx6RVJ1ekFCZTdlM2JYa2NzN2ZENWxabFZWZDNYMFhBUGZXdmY4UElwSGRsYlZrVmRldCt0Vy9UdjZQQVFTbGxGSktLYVhtakQzVE82Q1VVa29wcGRTcDBDQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1Rlozb0hsRG9kWnRQUFltSEdhYlk2WGRmdngxcE82L0pqQnBBUGZUM3IrYUdVVW1xZWFKQlZjOHRnaVUyQ0Y2RU9yV1ZBRVFDNjdTNzlZWC9xVWxiWDcrTTZuUGIxbU5GdnB4YUhaZFB0RVpaZ3dHRUlCcXpRV0FlODVHQkFBdU9VTzROenJyeS9JU0FpR09Od3poRkNJSVRKUUd5TXdSZ3pPdi9HTkVncnBkVHAydVNsVzZteld4bGtZMFNrQ2hVRlFRSmxwVkJ3MWpFT0N6cUs1b1BnUlJBRFJwaTV0cGdOdDVjc1lLY0M1b211QXliSXB1ZER3aVpCTjJBc1NMVXZNdU9WMExrNmtJSk1uTUZpakJrRjNJbkh4T2RUNTMwL2JCVFZsVkxxL0taQlZzMDFVNi9ONUJQWm1ObkJSTDEveEd4OW5zMnZZUHpqUmtINGhOZk1Ia0pnemV6VGtmRzZ5VnFMdFhaVVZTMktZclN0V1YyMTF1S2NJOC96MGUvR0dFUmtkaFYybzhkcUl0QnZacU1ncTJGV0tYVisweUNyNWxyY3NoUStJQUdpR0lvQ3JJVnVOMkZ0TmNPdUw1aXA5NUhJNlFYYXJlTGJpWDRZMmJnaXZQNzB3TGdpSEVjZEpGaEVaQlJDUmNKb2VFb3BZSXpCMnZINUppdXU2OE9raThBNVM1WnRFbXFsV2paOUZMWjZoRFRNS3FYT2J4cGsxZnd5Z0l2THRCTkNXWVlGRU1FbENUNGJjcVlQaGpxbjErWjByNGNUQ0hLYmFRUzRVem5pQ3d2RVFQUFRUdmx5YUxFWUkzanhrN2N6RlJxZHJSOEhFUEdqa0d0cytYU2NLTTVPQi81TmcreEdqMG56U3VxeDRScGtsVkxuTHcyeWFvNUZRSnVvdTQyaTM0Y293a1V0L0hCUWxzUjhnWlprUDJBaUczOXRYbS9mMUJZaFZqWUxhWFVxM2VUYTQzaFVQUldSeVFHeEFwRk55bXF0Q1BWLzVSanI4blpqNThoOWpqQU90TTQ0b2lqQ1dzTWc3WTFPdDZZOEtFd2s0RU9PaUM5dmEzb1hUN29pdTc3THc1Z0dXYVhVK1UyRHJKcGpIYTY3NGN0ODg1di9DdThGN3ozdGRwZVZsUlU2N1FXS29pQ0twaHB6bUtrM2ZkR0R3RTZWbU9rRG9HYWNaNnNnRzA3djh0V2hXQnR1ei9OOElzZzJGMHVnM3p1T3p6S0d3eUc5L2lxOVhvOWViNVhCb0VkUkZMejl6bHZrZVU2ZXB4UWhxd0p1Zlh1QmRoeVQ1VU5DZGJyRjRwd2xoS0xzaUVCZ1hlVjB1cWk2cVJNSnNrb3BkZjdTOWx0cWpqbUtvc3RIUHZaWkZycExySzcyV0Z4Y290OGIwdWwwU05OODZxanlPa2hVNjRrUWV4WjhWVCtIYXhHRG1JQVJPM05OMkhoN2VYblp0QjY1ZWZzcXFpQzg4WG1zTGE5OU9zU0tDQWJCaEFHV29tcVhGYXExWU96NGVyM1BTYk1CZzBHZjFkVlZEaDg1eU1HREIxbGRQYzdyci8yYUkwY09jZkRnUVhyWmFua0pEK1ZMYThRNHdEYkM3S2pLdk5HK3p4cktvSUZWS2FWbTBTQ3I1bGhFQ0FseHRJTTBOU1RKRHZMTTRWeUxFQklNSGdsVDMrc2FtZnE2dWg2cmVUcUh6Si9mYTBFd1lnZ1NzR0x3bE90Z0JJZmRjRHRHUmdkZmJXU3JQcXpORUR3eGhHQjArVTIyUzBGRWdxV291aGlFY2kwZThhSDZ3Q01ZV3JTVExxMTRPOXUzd1NVWGZhUjZMZ1dNQkl3VmlxSmdiVzJGZDk4OXdHdXZ2OExycjcvS2tTT0hlUEdsWCtGRGpwZWNRTUZrZUMyQW5DcjVUckRXMG1xMXlMSmhGYnpEcUpJN1VhVGVvS0piRG4yd1pGbTJ5ZU9ubEZMelQ0T3NtbXZCUURDMmVuTzNHR01KR0FLT2dNR3NHNkFZbUR6cXA0cENvejVldWo2VmRkbXoxVXl1Z1ZCUERMREJkZ3VZVGFQc1ptTmczV1FQcmMwYXdzN2NIb0U0eWdPK0dIL0FFVitHV0drT0I1RHk5SG83Z0Fua1dka1pJNG9XMkxWak83dDJYTUsxSDdzWjczTkNLR2kxWTk1Nzd3QXZ2L3dTTC8vNlJkNTg4M1VPSEhpYlE4Y09FVWlCRk1pcmNiZmxjOUdIbk1KbkRBWVpFNk8vQkl3RjV4ckhOWWJHY3hnd3hoQkNtR2dicHBSUzV6SU5zbXFPQlRBNVlnZGxDeWlKZ0JpeGdoaUQyREIreHgrZHYvbFZieFVDZEp6c0tadU1tVEsxWnVyeG45NGVwcys5amt5UGFaNjQ3ZWx0TTI1L3MrMENRa3lRcVByVlYydGJuU1dNKzNSSkdCMjhWVmQwclFRNjdRVkV5dG05Q3UrcmpnV0NOUzJjZy81YW4yNTdEemQrWWplZi90UWRHR1BvOTljNGRPZ1F4NDYveHlPUC9aUzMzM21WMTk1NGpUUXZLN2FPTm9ucjRFTkdxeFZUK0l3c0h3QUJDUUUvY2JlRnVxSmJUOUJnekdiaFh5bWx6aTBhWk5VY0MyQXlzQ2tFeStnd2NHUEI1R1VJbVE2eVNDUE1Vb1pmcy82clhYVXFUamJJd3BaalB6Y0pzdXN2ZjVKQmxtanlyS01QTlBXSnRqRU14VFMyaDZxcUxPU1p4NWh5TEt5SVE4UlQ1TDZjdWxZS2R1M2FWeDRvNXN1ditLMkZ4VzZYNU1KbGR1L2F4N1VmK3dUR2VsWlhWM2oraGYwODhjUmp2UERpZmxZSFJ6RTQrc084dkczYWdNY2dXQXMrRk5SamVwc0J1MW1KZGM3aHZUNjNsVkxuTmcyeWFvN1YxYWdDVEQwZGJYblFEcVkrMEtZUlRrWUJOa3dGSkszSW5qS1o5VXZ6eEMwcXNsc0YxYzIyQzlVNDFjMXVmK1A5TTFCKzZCbTlESTZycit2WnhuYWhEcmxGTGpobmNTN0d1WEpXTUV5b0psYndIRG04eXZnZ3NuSi95MW5CRmxqc0x0SHVSQnc3ZGhoSHpDMmYraXBmK2VJM1dWMDd4aS8zUDhQekwveUN4eDkvbUdIYW96OVlJZmREeXFwc2dTRkN5SEhXRUVSbXprU21sRkxuQXcyeTZoeFNqcmdjRHhlb0FnZFFWdEhzT0ZkSjR6STZ0T0I5Y3JKQjluUk50NlU2Mllwcy9YT3h5ZmJweTA5MnVtaDNGc3F2KzMxT25tZWpnOVBxM0JxOHBkMXAwMmt2WUIwVVJVR1daWGp2OFlXd3V0S24xZHJPOW0xN0NDSGo4TUUrUVNJK2VzM05mT0s2VC9OSGYvQ252UGpTZmg1Ny9FR2VlZlpuSERqNEpnRkhiQnhKVytnTmpsQlhwZU00Sm9xaVVaamRzdU9EVWtxZEF6VElxamxtS0EvNGlTRzQ4bWVTOG9oNmljdGhBMUsxMzZxT1FFZkMrcUVGNnJUWVVhRnlmZGVBNW5qTm1kdTNhT2h2dGdwanAzT3dWMVhSbFdxR3NzbUpFOVovdUJsUGxsQ3VqWlFIWmhHcWRsN1ZHRlhuSE5hVzFkbDJXOGp6akdQSGpwTmxLU0VFa2lTaDArbVVJZGluNEIwZU1LWkY3Rm9JR1NJcGVlcnhZY2hWVjF6UGRSKy9rU0FaYjcvekJrOCsrU2dQUEhnL2J4eDRnVTU3Z2NId0dGRDJ6RzIybXl1SEhieGZIeHFVVXVyc3BPL2lhcjZKcGF5U3VTcVV1dW8wVjRYVzZRdlk4WEZlbzh1cVUyVW5jdElwVkdTYmZ3c1RUbmh0cGU1blN6VVV3RmJkQkJycjZiNjNqZTJtdXA1QTNjZTJQZ0N3N21JeEZhQ3JZR3VxR0d1UWN0aXNDTFlLc0NDRUlCUkZqdmVCRUR6dGRnZUFKRWxvdDF0WVc4NzhWUlNlbFpVVjRxaUxMd3g1VmlCNGpBbTR5QkZGWGF6eDVMa2w3ZmZwci9WeGtiQjk4U0srZE9jMytOeXRYMlNZSHVlLy9QMWY4dVpiditiQWUrK1VlK2JCVUk2ZkpZREJUazdpTVAzdm9lcjJzYm54WTlIczl5R05oZ3BLS1hXbWFKQlY4MjJpQzRGdExOVTJBNVBkQ21xTklRZnFsTTJxK0RXUDd3cGhzNE9OUWhtR1ROMjl3QU9DMUVGVHlwbXl4bTJ4eHV1eWhXMDVGblhVRzlnSUpzams3OUtjakdDOHRwUWhWc1RncTNRbkFsYk1WSi9XeVE0TDlmR0RWc3FXWWlLQ3B3eklVZ2RsSzBTbTdKRVZRdG5LeTJBSnZpQjRQenBmNUFBWjRselpVcXVlRmxmRTQvTlFQYU1kaVYwQTF5MnJ2a1U1aWNSaXZJM0ZlQy8vdzMvM3YzRDR5RHM4OCt6UGVlaWhCL2pWRzgvaEtNcnhzM2lFZ21CeU1GazlLMjhad0tzUTZxekIrM3BJRHJTU1RqbnN3UmVOeDJ4OC95M2wvYll5dVZVcHBjNFVEYkpxem0wUVJKdEhtSnVxRVgxZDBXdVdwYlk4S2w1dGJxc29jNElIYzVrdytxcC8xUHFLOVdzajQ5K05NRzZQdGRGNnFncHNSYXBzS3FNd09uRkE0QWFhbGVmNlp5dmdxLzIzTXJXL1ptbzlkVC9xODR0dEJIMFo3MnU5UjZiKzFrREs3VmFhSHg0Q3EwZlgyTE44TmIvNXhXdTQ5Vk4zOHNyckwvTGNMNS9tc1NjZjRyMlZOMGhNVENybDh6NU95ckNjVjBPQ2QrNXMwVnNOT0J1WGxXUmZrR1lEd0dLQUpFcklpcFRtSXpUOVdDaWwxSm1tUVZZcHBlYVVOVEZwQ3Jid3RKSWxQbnJORFZ4NnllVjg4c2FiZVB1OU4vakwvL3huTENTN3lZc2VXZFlqa0pNa0Z1OExqaDVLeTZxdjljUnhES1p1MzJVUklDM3k2aU5mcU9aUW14NXU4U0hmV2FXVW1rR0RyRkpLelNWTEsxbkFlODl3bUNJU1NEb3h5OXN1WkhGeG1Vc3V1WUpQM1h3cjMvL0JkN2p2d1h1UU5LYmRpVmdick9FcGNFWW9aSWhJSU10U1JDQ0t3VGxEbHZvWng4dzF4NVRYQTJRM1AxaFBLYVUrYUJwa2xWSnFMbGtNQ1Vsc1NaSXVVQkR3Wk1PTVlSb1lwb0pOWXY3dGYvM2Y4L3YvNGsrNDY3dmY0VWYvOUgwRWlERVlVMkFqZ3pBa3p6MFlLQW9vQ285ekVFSTEybUUwMUtNNm1ISVVhQU9RbzBGV0tYVW1hWkJWU3FrNUpXTEljeUdFZ3FMSUVPdUpJc3RDZHp2TDIzYVFoU0d2djNZUUtQajYxLzZJMnovN1JSNTY1RUVldVA5K0R2YmVJQVNEVkwyWHJZRlFqZDMxSGxvdFNGUEd4VmNDNHlEclp1K1FVa3A5eURUSUtxWFVuQ3Fub0MxNzFyWmFMYng0Z2hRTStqbVlnaWh5N0Z5NmdNSVB5WWNaZTNaY3h1OSsvVkt1dStaVFBQbnpoM2o4MlhzNHR2SU9lUmdTR1FOUlFaWU5SOVhaeVhaZG9lb2NVWXgvVjBxcE0weURyRkpLelNsakJPOExSSHc1RVlPekdCekdsTjBaOHF3YzYrcGNtOWhGRFBzRklRUXV1ZmhLTHJ2c01qNzY4YXU1LytFZjg3Tm5IeVgzT2RZYnJCR0NwR1VidGJwcDdPam52T3JYUE4yTlFTbWx6Z3dOc2txcEV6SnJaaTdiS05uTjJyNlZrNWxHVmFwR3FCUFhiemZmUHIxL01yVjlzbVhzK3UxbWFudHpQWDM3Rys1emRVUE55NDhuR1pOMTV4V1JjZE93TVBsWVRqNjBBVThBVis1bm9NRDQ4blJET2JPWHFRYTcrdURMeVJ0d0dHT3JTZTRNSDdueVpxNjUranB1L2NVWCtNZnZmNHUzRHYwYUpHTGJ3akw5NGNxb3oyMGNPNFpEWHowZ0JhWnU3NnVkQzVSU1o1Z0dXYVdVbWx2RjVLL3JacktEOFlGWjQ0MUdnQkFUbXdpa3phZHZ2SVBMTC9zSUR6NzBUL3o0cDkrbjF6c0dKR3hiNkxMYU84TFFlNHlCSklHc3FFS3N6dXlsbERvTGFKQlZTcW01Rk5aUDZERVZMRTJ6aE51WUc4S0tKUUR0ZUlIK3NFZWVaVnk0NDNKKy8rdi9GZGQ5N0hydS90RmRQUFB5ay9SN0taWU9RVktRUUpaV3M0S05ibUQ5YlNxbDFJZEpnNnhTU3MyMWpaTGsrdktzRlRzYXdtREZjdVRnRVhiczJJSFFZdVhZTWJvTENUZDk0dk1zTFd6bm9zY3U0LzRIN21ZZ0s1UlYzWlFneGVoYVhReEYva0hjSDZXVU9uRWFaSlZTYXE3TkhFOUFHVDdyMEZxT3ZUVmlHd050TGRzWEZ6Qyt3RGpMVW51UlBFMDVObGpqZ2wxWDhNZS9md1ZYWEhvVjl6LzhJL2EvOGpRQncwTExrbVlyQkttR0IyczFWaWwxaG1tUVZVcXB1V1JCTmpuYVRNWkJ0bFFIM25HNFhkNjJ5T0hEaHhrT2h5eHVXMkxid2piNnc0UTA3VFAwZ2RzK2N5ZTdkdTFoOTBON2VPekoreGlrNWRoWlozTjhKanF5UUNsMXhtbVFWVXFwT1JWTUdXUnRZL3dyVkpGVjdHaU1yQkVhZzF1bE9uL2d3RHR2ME8xMjZPNVlJaThDYThkN1lBM090Q215bEF5NDlwcWJXRjVlcHJ1d3dCTlAzY3V4dFlPRU1BQXl0UDJXVXVwTTI2SjVqRkpLeldZRXdrYmZhbitJKzNDaTdJenpXcGxjWU53MjFjeTRuSkh4MHJ6OHFiS05kWE9wYjJ0NlA1bmF0djcycTB2UHJOU3VENTNiZCs3QVdrdWFaM2p2aWFLSUtJcG9SVEhkOWdLV2lFUHZIbVY3ZHkvLzh2Zi9HLzc0WC94YmRuUXZCWlpZVGk3RXpxcUZtQm5MQnB1VlV1cDBhVVZXcWZQWVZrRndvbWZxdVBscHVRSkUvUHA0Wk5aL1FqWlRmVlFiWjUycERtZmkxNGV2NWhma2RlL1kwWDVKWXorbnIzOXEvNm4yZjZQYm50N1g2ZXMzTW5rRS84VDlXOWM5WUtMNTFlam40TXZlckRMajhURUMxcGp4YlUxdEY4QTB1aGFVdHl1SWVJVDFsZHJ5Y21VLzJmcGU5N095ajVZMURxd2g0TWU5YTMzQUdHRWhXU1FNQzN3dzNITGRsOWkzZkJWMzMvMERIbm5oSnhoaWxoWVRWdGY2QUhRVzJneUdRd2hnNDVpUTEwZUQyZXFlbHovVlF4SUNRWWNtS0tWT2kxWmtsVklmdXRPdFpNTEpWZlMyT3U5V1ZkbG1GYlkrZjMzNjZacFZlVzFlZjNQN3hEN052TGJtakZ1TnhjeGVCSXRnQ2RpSlM5VC9GeEVrZ0hpRHp4eFcybHk0K3lydXVQVzMrSjNiLzRnMlhmcHJRd3lXSkdrejZKY2h0cnUwUkFpK3NiTWJmeUJSU3FuVG9SVlpwWlJTTTFscnNkYmlnYUlvU0ZOSWtvU3JyNzZhUFJkM0djWUgrUEVELzhpd0dPSjhCT0lCVDc4L0JCOG1wN2R0MU81RmF5aEtxZmVKdnBvb3BaU2FLWVNBTVFibkhOWmFpcUlneXpKRWhGYXl3SmUvOE52ODhUZi9OVHM2ZThtOVlTSGVScnUxQU1XTVVyV3BoeE9NRngxV29KUTZYUnBrbFZKS3pWUVVCVVZSSUNJNDU0ampHR3R0R1c1TlRPSzJjZWRuZjR1di8rWWYwbUdaUFBmRXRJbE1WSTBubnJwQ016NVpRNnhTNnYyZ1FWWXBwZFJNY1J4ampDR0VRQWloSEROYkxXQ3h2c053TGVMMlc3L012L21ULzVidHJiMmthWTRWUnl2dWpoUHI5T0RlR1dObWxWTHFWR2lRVlVvcE5aTnpEbE4xVGhDUjBkQ0NvaWpBT3pySk1yMmpHUjIzekc5ODlpdDg0emUveWZiV2JzRGdnc0ZSOTdDdHJuQWkwQVk5NGtzcGRkcjBZQytsbEZJelpWa0dnTE1XNXh3aVpXWFdZbkF1b3JlU3NtZkhwZlNPSFlYVmpDOTgvc3NzYmV2eW5lLytIVzhmZXhWRGpDWEhONE5zdmRheEJVcXA5NEVHV2FYT1l4TjlVajhBSVpSZklaOUltNnBaZlZqTlJ0dnIweHBYWEY5dVl2c1dsOS9vOWtkNXk3eC9KY09KNjU4T2RodW9INyt0cm5QMDgvVDluOUVUZC9MeHFYdnJUbTZ2VDI5V1k4dDlLWWNWQkJHQzkzU1NCZkNXYnJMTXNGZ2w3dzM0MkpYWDg5VTdlL3p3SjNkeFlPVU55azYxUXFlVDBCK1UvV2FKSThpTHplKzhVa3FkQUIxYW9KUlM2cFNFSWxCa0JiNHdHTzl3cHMzMnBiM2NlTjJuK2ZwWGY0K0VSWFl1WElBalp0RFBhYlVXd1ZySUMxeVNuT25kVjBxZEF6VElLcVdVT2lYR1ZGWGpJQmdUNFZNb1VzdU9iUmR3NDNXMzhPWFAvM082eVU0c0xTd0o2VEF2NXpVMkJwOW5aM3IzbFZMbkFCMWFvSlJTNnVTWkFOWWpoY2VZbU1TMTZBOHoraXM1TmhHUUR0LzQ3VCtrM3g5eS9QZ3FlZWd4b0VjUUlXbkhwTU9oanBOVlNwMDJEYkpLS2FWT2dXQ3NwNUFVaXhCSFhkckpBbG1SNGdTTWlWaE1FcjcyMVc5U1NPRGhuOTlMVEF0UElCMmtHS001VmlsMStuUm9nVkpLcVZPU3RCd3VDb1JRNEVOTzhPQkljTFpMUklmRDc2MXk0ZTVMdWZQMnIzRHQ1ZGNUQ0FnUVdjY0hmSnloVXVvOG9VRldLYVhVS1FpSTllQUMxcFU5WnZNOHgzc0lCUlM1eGRMaCtKRWVsMTl5RGIvMTVhOXg2WjdMQWVna0xXMGhxNVI2WDJpUVZXcWVpZDFraVRaWTdIak42UzFXb3BsTGZWc21sTXU2ZmFCY3JFU2o2eGxmbjYyMnoxaFA3YjhKRHNSZ3FtWGNjWDlxa1EwV3dKNUNaVEJNcGJDNm5aYVI4YzlXeGt0ejI0bTBJcHRsVnZCclh0ZjA5WjdJL1pyZW4vb3Z1L1ZlbE90K3YxLzJsYldXS0xMWXlPR2lpQ2lLc05iUzdTNFN1VGJaSU9mcUt6N0c3L3pXTjltZTdDWWJlbllzN01SZ1QyRlNoT1p6VUNsMXZ0TXhza3JOSzdFWXFkL002elJnSjdiUFpFSzV6UVJNOE9PemI5Rm4xVlMzMGN3ZHBuRWJzeTV2eFcxNkYwSUlZQXdpdHV4WktyWU1OMWdnSUdLQUFGaEVERkt0d1dJa1lHd1p4S3pNdnYyd3lmZlhoZ0s4UnlpbVRvZjZjV3oyY1MzN3ROclJWK0tHVU8xektDOVQ5NSt0enpEVjA5V0UrdlRHYWMwK3RYWC8zT2IyNW42RnlmdFhodWxHejkwWjF6KzZiUE42SjdhUC8vNnpici9lZzRtTFEvazNNT1VIQ21jamlnQkZ5TUZGQkR5NTk0Z05EQVlwaTB0dGpxLzFpSUxqeG85K2hxOTg3Z0RmdS9jdUJyMEJFTlBxeHFUOU5WeGs4VVg1ZUM4c0pQUjZqYTRHbzEycW54dk5HUlYwdWx1bHptY2FaSldhVnlaUWh6eWdDcTUxTURIVjl1a3dHeHFYcFVvNDlmbjgxRHBzc1M2dno0NENqa3lzNjkzWTlDNFFxb1RrcThwZ3ZmLzFPalIrbDhtMUFTdlNtT3EwdnQySmFSQTJ2bkdwSDcrVFlNcEpBUkNMR0hDTnl6Y2Y2V1pWdHJrbkU5TzF3Z2xYSTYyc3Z5ZFd4cFhoNmUwbld1UTBKL2hRVFpqNGdGUS9INXEzR0NZcTFsbFdrRVFKdmhnU3JPTlROM3lPWTRmV3VQKzVlN0FVNUhrR2xDRTJhVG15ek5QclpTUUpaSnQyNk5MQkNVb3BEYkpLemJGcWpPSW9USjFBTmJiSkJDU01nNnlJbjFodkZXU3RVQlhHNmlDOWNVVndvLzB2dytRbUpxZW1tanF0REpYak9IT1NRYll1NnMwOFM3MWZzNjVMcWd3MUhlRFVXUGs4U1pLRWZuK1Y3a0tDZFVLVzlibnNzaXY0L09lK3dQNWZQOGViZzFWQ052NWdaTVJpOEFpUUpDMnlMTjNrTnZSb01hV1VCbG1sNXBnQXhiaTZPdUVFeHcrZWJrVzJEck9qWDVyckU3bjlyYVlwM1NCSVR0ejJkT2c4MFlxc3JjYlZqb2N5ak5kYjBhK3p0MlpKa3BqVnRlTklNQ1N0RG9QQmdMWFZsQXYyWHN3Ly8rM2Y1UysrOVIveGVMWXRMYkt5ZXBRMDlTUkpSSllYREFhTkVGdC82RENoK3BOdVBtUkZLWFgrME5IeVNzMnRLb1ROT3RCclMzWjgyVk5lbDhJcExxTjdJYWUyakd4NndOc21DNDBRTzMzLzFpMXFJNWJKQTl1YVM1RVdMTFNXd0J0OEpyUmNtN1Rub1hCOCtwTzNjdHRObjhjUWsvWUwydkVpQm90NFczNmNtUDZNbzhWdnBkUU1XcEZWYW01WmtMangrK2lvbjgwdk5oRjA2d044RE9DbTFyTHBPaGpCMVZXeTV1MmZhRVZXNm4zWmJIODNyc2hhb2F5bzFnZXY0U2ZYSnBUNzJ6aTRyYm0yZ0RRUGxxdkRiZlB4cWNmZ2x1ZmVaSi9PVDZQaEpYVjVmUFMzS0IvRGZyL0g4dkl5L2NFS2c5VUJ5OHZiU0pLTXdhQkhKQkcvL1p1L3c4dXZ2c2g3eDk0aENnYUxvL0FlWngxZS9NWTNmSjQvN2txcE1RMnlTczByc1VBOERsNTFvSndZb3pwai9HeXp0RlVmNlk2RmVtenNhQjIyWHRkSHVqZHY5eVRHeUpvUU5tMFQxVHpxZjJaWEJXT3dZZU14dnMydUI3UFhZWVBUbXp1eDJSaGcyZnFEdzNuTTJvaWlLSkRnY0xZRk9KeHRZNDBuSFE2NGVNOWwzUG41TC9HOTcvMERBK25STWd1azBpT0VnTE5RYkJwbWxWSkt2ek5UYXI1VjFTOVRmVjFlZnVWdXFuVVlkLzJzaTdWVjc5VHgxL1BsNVczMTg4bXNUNlgvNnZwOVAzVUdSdnRUT3RVMWpNUHJSc0YvMW5KKzI3d2ZidDFHYTRGZWIwQUlnWVdGSmZMTXM3cmF3NWlJZHJ6SXNZTnIzSDdMblZ6L2tVOWlpREhpTUVUakZtaXpic05NLzYyVVV1Y3pyY2dxTmNmNnZSVjI3OTZGend1R2VVb29jbkFRV1VNVU80bzBRMHpBaUszYVA5WHJLb2lOcXB4UXR6UzFwZ3FKcHR3dzJRSi9Nc0w1NE5kOUdqNlppR2VOTDF0d2JVQWFYUTNxL1d1MlhpMzd1bGIzb2RIK3F6N05XbHRkanpDN1ArNzR5b3d4V0Z0ZW4vZWVFTXFqN291aUtLdUtJbGdiWVV4OW5vSk9wMFdhRGZEZVk0d1pYZFlaUzZ2Vnd2dDgvUzAyN29BUDA5WGY2ZnMvL3Z2TXFraVA3dk1HMjhmWHM4SGx3K2FmUmphdmlKZlBqZkpEbEtsT2wvSnZWbjJReW4yZ25iUUF5Tk95bDFic0VoQW9oamxPRXZ4Z3lKLzg0Wi95OUw5N21vS1VCYmZJbWo5V1ZkYVZVbXB6R21TVm1sT0dnaXN1MzhXN0J3N2duQ0dKd01SQ25CZ0dnejYrQ0xqWWpvN3ZkbFVGMUkwT2NxcWI2Ry84MWJ2WXpiK2FGeWxMdTBZTU1tTWRpakR6ZEZPTnRUVlZ2OWk2SityMDJobVplZnFvZDYyWW1RRzdOZ3Bmb1J3R01URkJnYkdJbE1IVUdJTXhoaERNK0Q1WlE2L2ZKNG9TNGlUQzRBZ2hJQkp3enRGcWRVaUhBNHcxdE50dDRqakdlODlnTU1EbkJXbWFFcGx6K0V1djBmam02VEFjR20zWk5tZ05ad0pHRERiRTdOeTFuVGZmZnBXdjMvNE52dnZnZDBoOURrUVRIMkxXMDZxc1VxcWtRVmFwZVdWeW5uL2hDZjc4Ly9yZnlmSWhSVEZFQ0d6YjFtVjE3UmhKRWsxVjU1b0hNMVZCZHNNeG9pYzZ4aFJnNHlCTFlPTWdhNFRJbDBIYVZNZVJuY3dhb0p3WXJCb3VVWVhSNXUrN2R1MGlTUklXRnhmWnZuMDdPM2JzWU1lT0hTd3RMZEZ1TGRHS2R5TEJVbmloS0FwOElUZ1gwV3ExYUNWdGduaXN6VEcyNmhrclVCUTUyYUNzMHJhajhtQTdheTNPdVdxZkFuRWNFMFVSUGx0ZmtUM255S3lQRUdIeWs4WE1nd0l0MWp2YWRwRklFcjc4eGQvaTZWODh4ZXZIWHlFbUpxUHgySm1waXlxbFZFV0RyRkx6eWhSY2ZQRWlMN3p3Q0VXZWdoOEFnbWs1Sk91WC83cUx1b2RSWTF5b0dNcU5kWWl0RHowL2xmVlcrN2pKUUFPQmlTbFNaMTE4aTRFS3pla1F4bFBvams4TE15cDJwdm9QWW5ac3U0UUw5MTdPMVZkZnpSVlhYTW5ldlJleWJXazdMbDdBK0pTbDVTNjlYbysxZmdwaWFiYzdkQmM3ZE1UaWk1aWw5ako1N3NuekhPODlJbElPTVFoQ2xtVlY5ZnQ4MVhqc1RUMkQyL2lEVURrYldjTGFrUUhidTd0b2RXUHV2UDJML1BYM1hpTnlDYWtmTVBtQlNTbWwxdE1ncTlTY3NnaldaaFREdytBc3JnVSs3eE5IQ1ZuZUs0TmlzMjk4ZFNCWUdXWmRkVUt4ZWRtem5yeHFvd3k3V1ZDRnpUc1luRUFXUHBrQzNJazIveW9mQm9NaDV1aktxeHhlZVozblhucVErckZwUjEwdTJuY0p1M2Rkd1BYWGY1TExMN3VTSzYrOGhuYXJ3K3BxajhOSER4SEhNUXZkN1J4Zk9ZS0Vzdkx0bkNPS0lvd3hGRmxlQmxsM2JyL0VHckdOWVI1bEJ3Zlo0QzhnVmFzM29SeERhNENXYVROY0hkRGQzcVYzN0JnMzNuZ3pWejUxUHk4ZDJQL2gzUW1sMUZ3N3QxOWxsVHFuQlFqVkZMVytLUHR1aG9Lc21oSEpPSkNjeWNBb1F0bG5kYXB0MUhScnFSTnBvV1cyUHA4eEc5ZHpZZXZRdVZWT1pvdGQ2SFJpUklRUVFyWFU1eGRDeUlBTVl4eHgxTUlZaS9kQ1Z2UjU1WTBqdlBwR3pHTlAzNHNoWnRmeUhtNjg0V1p1dSsxelhIWFZOVVFPMW5xSFdZajJZcW9XVTFtV2tlYzVjUnpqcktYZGJoUHlyV1l1TzVkTi8yRmtYSm10K3MzR0xrRWNaSU9OR1ZxckFBQWdBRWxFUVZRVWI0VE80aUozZk80TzN2ejJ5NnhKLzR6c3RWSnF2bWlRVldwdVdkcHhGMGlJREJSaFNCbHVJWTROSWVUNDZUS2xRUG5Qdmg0cld3WXRJMVhBUEptMWJEM3d3R0kzSGVNcVczeHR2RldPRFdJd1UzMFRtdU9DQi8zbTBJWHgrYXkxV09jUkk0aDRNdDhmUHo2ajRCOERFWkZyczdMMkx2Yzg4SS9jODhEM2FVZGRidm5NYmR4dy9XMTg0cHJiMmJhMHdNTENBbW1hMHV2MXlvTzhyTU81ODJGZ1FmMllUdjhkbXlHMk9UYTJPY1lhd0pDNG1LRlBTVm9KYWRyall4KzlsbXV2dlk0bjlqOVNuMFVwcFRha1FWYXBlU1dHbzBkV0FJdXhGdU1qNHRpUTVRT01NZmlzUGw5OWdmVkgwQnRqTU5YM3ZBYldyZXZReXF4MWZSMmpBOGVtVDYvbVc2akM3N3IxaWR6RkxZY2VqQ1B6T0NBSkJnY21FTGtFd1JNOEJDbEc1eXU3WHNubytMZWFkWTFxY2NpeEJuSy9SdmxTYWJFNGZBZzg5TWlQZWVDUis5aTM0eTV1dXZFMmJyMzFzMXg4OGFXNGxzTjVNRWF3MVZqWjJYMXJxOGRvNHY1TmhjSFJ1Tkt5VTROZzFuVnZPQjNtSlA0T3B2bzdBbE1YQ2hOZEpEWld6YmcySVJBa3AvQ0JWcnZGUUhLUW1NWHVibTY2L2hhZTN2ODBCUUVKcWJidVZVcHRTSU9zVW5Nc1dlZ0FrUHNoR0UrV0Q2b3dtMDI5Nzl0Ry9naWpZUVZ5RW1GbVkyZnlZSnd3NCtkUUJlWkFYcVNzNzdMUUhGTEJ4QU1RUEZNUFNFNXpldG9BaEZHQ3RMeDk5QW5ldnZjcDdyNzNMN25wcHMvd2hkdS93clVmK1FUZFpEdjVNRU9DSmMvQW1ZU0ZoU1VpR3pFY1pHUlpoakVHRjduUmRZL0dtSXJVdHpUUkVFREtqeHlVbzFEdDZGUEJLRVEyaG9Xc202eEFKcmZYSnpXSGx6VDd4STRxNXRWcFJtYjNFUTZNcjJzMEJyYng2YVA1RVVla21xaWp1bE5Dd0x1VXRkWGpMSGQyMGs2VzZCOHYyTmJkeGxVWDNzQzFGOTdJQ3dkK2pyV09ZZWpUYWp1R3FjZkdqcERMQnNGYUtYVyswU0NyMUp3S1p1bzkzQVNRdW0vcjlMa2JYd0diUm11a2N5WUVUSWZVRTF5ZjBQMnZ1enZNWU1yeHlJWDBlZUxwbi9MY0w1L21tcXV1NS9aYnZzZ05uL2dNMjdwN1dWcnE0blBEMnVvcVJlWnBKVjA2clZZMWRyZWdybjBMRUdSVzViSWU3eEFRWXljcTJ1NFUvMzZqb0xwRmxYTzYwanI5dkJwbHlYb3M5TXo5MlhoS0RlZUVxR1h4RXZBRFQ4Z01wa2pZdVhRQm43N3hObDQ1OEN2eWtCSmh5REkvM2lsVFZlS0RkalZRNm55blFWWXBwVTZUZFk3Z0E0TnNsV2QvOVNUdnZubUFoeDkrbUQvK2d6K2xFMjlqcWJ1RFRuZUphTEZOQ0pDbEdVVlJFRVhqbCtDTmgxSFVFMWcwem1CT0pvaWZ2YnozSkVreW5oSE5HWHhSMEdtMXVPSDZHM240aVV0NDljaXZTT0kyL1h4UUR1MCszVEVWU3Fsenlqazg3WXhTU24ydzJwME8xc1lFWDQ1SktDZVl5RG00OWhhL2VPbHgvdWQvL3oveTJNL3VKZGdlZy9RSXgxYmV3VVVGbmE1aE1GeGxYYlczMlVrQzIxaldtMTM5bkM5cG1vNm1FWGJPMGVsMHlQT2NYcTlIdDdQSVRaLzhESTRZSjJYZ2Q5WWdoUituZnFQVldLWE9keHBrbFZMcUZBMEhHY0ZYWDNXYmdKQUNLVENrSFhtRUZmN0xkLytTZi9mdi95ZWVmL2xudExwdzRPRHJIRGo0T3ZzdTJRV21xTUpZbUJsaWpkaHlmT3E2WlpQaERuTWtZQkJqQ1ZVYnVWYVNZSUtRRGpKQ0lWeC83WFhzM1hZaGFWRmdpZWkwdXRYZERoaW5iMTlLS1EyeVNpbDFpdXhva0treGhpUnhKSW1qUEVCc1FMODRTdXdLTEFQZVB2bzgvK0gvL2wvNXozLzNGOFN0Z2tzdTI4Mjc3NzBKcHVvRGJBbzJEcWJUVmRuNUQ3QzFKRWtBS0lweXlsL3ZQYzVZa2lRaGNRazd0Ky9ocXNzL2lpSEc0RENtbkJJWVlWVEpWVXFkMy9TVlFDbWxUdEdPbmJ0d1VZeUVnaXdka09YRGNZV1ZuTXdmcDkzeGROdVdRSTk3SHYwKy8rZWYvMi9jOTlEZGRKY3NZakxFNW9qeGlBbmxRdDBGd0phOWZxWFIvMWEyR25Bd1o0ekJoekFLcFhrNkJLQVR0U0NBbFlSUFh2OHBXblN4eElUY2p4NFBYMlFiWHExUzZ2eWhCM3NwcGRRcE9ucmt5T2huNXd6R0NrVjFjTDJ4NVRDQTNtQVZXS1ViYjJlUUQ5ai8ydE9rUHhwU0ZBV2Z2dmtMbUZCM0pUQWdVWG5CVVhpdDFuVUQzb25KQlJqTmtEV2ZETjRIUkNDT0lrSVE4alRET29NUlN6SHdtTVR5MGF1dlowZDNMOFArRUovNXNzZEQyY1JoN2c5MlUwcWR2bmw5QlZSS3FiT0s5MEpSejBocnl1T1JQR1didEFEMDh4V0VGQ0hsNWJmMjgyZC8vUi80eVUrL2gyZUF1SlJnTW13czlBYXJHQ3UwMjIxRXBPcnJLcGdnbzk4SjVWTC8va0V0VGZWcDQrbCt3L3R5L2NZWXZQZUU0SWxpQno3Z00wOWtFMnlJU1V5YnIzN3BheGhpQWdHTEpZNE1Pa0dDVWdvMHlDcWwxUHRqbzJCVkZWc0RnWUFua0VNVmFIOTR6MTM4OWQvOE9hMDJkTHFXNHl1SHVQU3lmWVJROE82Nzd6QTVIdmFjR1ZBd2s2SFp0OVppeFlLUEtGTFlzM01maTJ3cloyeER4OGNxcGNiMDFVQXBwVTVaUGFJMXpEeDFZakVnRk9XVXVSUUVVbzcwM3VLUm4vMkV2L25iLzhUYThDaTdkaS95em9IWGllT0liY3VMalN1czVzaXF1aGFjT3kvY2svT0VRUmgzWmdnUkJFY3hoSXYzWHNabCs2N0FrbUF3aVBjNnJFQXBCWnhMcjRkS0tmV2hDa3owZ1cxT21UcnI1NUV5ekFvWnNmTUVldnp3M20vejQ1OThEeUZsTUZ5bFAxaGgyN2JGNlF1dU04KzlaTVdNb3V2VURHTUJLd1lyQmhNc1JtSVdPOXY1eURVZlJ4QWNNWG5PcU5LdGxEcS9hWkJWU3FsVFpBalZKQWlWbWFYWWlRdFVTMEhaMVdBVlR3OUx3YmUvKzNkODcrNjd1T1NTZlJRKzVlREI5eG9kRU1hVldDdmp0bC96Yi9JdHlCQ3cxQUhkWWtKRWJGdmttWEROVlI4bEpxWWRKMWdnMG5jdnBSUWFaSlZTNm4zVWFJNGxsckl4elBvMldzQm8zS3cxT2EyV3hUUGtCei84TG84KytUQjc5dXpDaDV4UmlLMHYwMnpGMWZqL3VjaElPVTQydGpGcFArT0N2UmV6YjlmRlozcTNsRkpubVhQM1ZWQXBwVDVVZFloMVFEeTFPTWJobGxGbE5vb2g3bGo2NlhFNlNjUnFkcFMvK3F1LzVLV1hmOFh5OHRLR3QzU3UxR00zVnNWMEd5RmlLUExBUW1lUmozLzBPckk4eDFvSTU4NjhFRXFwMDZCQlZpbWxQbXpWa0lPOGdFRS9rTFFqQnRseGhBRkhoMi95TjMvN0Z4U3NJVFlGa3lHTjZXdk42TUN2YWxheHh0VmFhUjc1LzhFN21URzZtNTEzdEcycWNtMk1JWVNBTXhHUmNWeHh4ZFVJaG5iY1FjSjhqeEZXU3IwL05NZ3FOY2Z5UEllb25OZkV1TEkxVVpFTDJwM293ekU1QkxZZXorb3BwNmx0TG42OHZURjJObzVhQ0piQk1NUEZnY0FLbmlNYzZiL01YLzNkLzRGcDkwbGxsV0crUnFEcXZTb1dLNjRjTSt2TC9yTDF3Z2JMZFAvV1FMbUlENk9sUHErUlJpQ2V1aDRqNDJXNnArMzBkaU1iNzgvby9JMTlNOEVnWWliMjB6a2h6MU1XbDdvY1BYS2NLeTY2bW91V3J5UkxMUkV4K2hhbWxOSlhBYVdVZXQrRXFhV1krcjNKbGtmZlY3MVJBNzVzMFdWeTNqMzZHczg5L3hTLytPWGpkTHFPcUdYSjg1U28rdEJpclIzMVVoMjFxL3FRcTVNbjgrYXgyYjVWOTJMZDZXTEtDUmZxcXF3Qm5JdTRZUGNsR0ZwRWRFNXlMNVJTNXlKOUZWQktxVFBFTk9xNVV4TnBjZWpZZTl4MzMwOVpXMXNsaWl3K3BBUVRFRHpGYUFxeGM1KzFGdTg5aUNXS0VxNjg4a29zQnF0dlgwb3BOTWdxcGRRWjQ1d2pjcTRLYStWcHhvQ3BLcFMvZVA0WFBQN1Vvd2dGY1RzaHpYb1lCOE44UURnSGpuYXE2N0JHeXFsOG9WelhZNEtEYVFSWndHSzQvSkxMQUZ0TlY2dVVPdC9wNjRCU1NwMGhoYzhKb2Z3S3ZTWUN4bG9NUWtIR2ZmZmZ3OUZqNzlMcE92SThJNDRkM3Z0enA1WHNoUFhoM0JpRGVIQTQ4TEJyeDI2VzdMYXFsbjFPUGdoS3FaT2dRVllwcGM2Z0lBSG5ITGJPWkFJKzVBUUNnWUkzRHIvQy91ZWZZNUQyc0xFZ0xoQzNZb3laN3hCWGo1czFVdit2RHJHQmV0cGZFVCs2bjhaWVFvQlczT1hpQ3k3RkVuMzRPNjJVT3V0b2tGVktxVE1pakdZR0V4R2lLQ0tPRGVOOEdvZ1FJT2VSeCs3bHpiZGVJVzViaHRtQXBKT1FuOFBqWklPcGxxcGFiYkE0NThCYlRJQXJMcjBjVzQyVVZVcWQzL1JWUUNtbHpwQTRja0RBZTArV0ZSUzVqQTc2c2liZ1NiRUVmdlhHTDNqajdaZUlXb2Exd1NweGtwRDVmS0svN1B3TGlBMFQwL0tHRUVaamdaMkpxdUVGamd0MjdhTkY2d3p1cTFMcWJLRkJWcWs1TWVvQldyMjVud3NIKzV6djhpSUhSaE45alRzWG1FQVFqNUFUU0ludy9QRHVmMlN0ZDVST3A4VnFmNVdrM1pwNExvejZ1alpNOTQrZFhtYWRkOVoxZm1DTEw1RGdDYUVZbnphZWp4ZXNHYlhmS29xQUVVdklBMWRkZWhVNUJmb1dwcFRTVndHbGxEb2JtUUx3Q0JrNUEvclpLaSs4dEIrY3g5ajFRZlRjVUZWakc1WG1zcGVzdzRqRjRvaGRpeVRxc04zdTBqY3dwWlMrRGlpbDFKbGtOL210ck1obUJISjYrVEVlZitJUkFnVVlnK2ZjQ2JKV0p1KzUxQzI0cWtrUkhQV2tDQkdSYWRHS3V1emJleUg2RnFhVTBsY0JwWlE2UTJhL0FEZE9OV0NNQnpJQ0tjL3VmNXIrWUEwYzUyQkZ0dTVXTU81Z1lLMGR6ZTZGRjZ4WVJBd095OTQ5RjUzSm5WVktuU1UweUNxbDFObktBRWF3UmpCQVA2enk1anV2RTBJOTllMThzNVRWV0JvVElEUVhZd3dpZ3JVUndVTUlJRVVnRk1LZTNidlA2TDRycGM0T0dtU1ZVdXFzTVZtTmhiSSthVnpBUldXbDhybjl6ekhJQm1ETmFEYXNjOFBzQ25NWlpLdktySUJVZ1hiWDhpNmREa0VwcFVGV0thWE9XdFVydEE5aFZJVjk1cGxuNlBmN1dIdXV2M3lIVVJjRlp5eEdMQTZMdzJERnNyeThIWjNaU3ltbFU2TW9kWTR3YkZUVG1ySDlYQnRlT2FmV0R3NElFNmZXZnpNUktNUVQ0WGh2NVUyRytRcGk5MkpPOENYYzFFTlBZZkp2UHlNSDJwTjRibGhPZDRCRGMwWXYwN2h0QzJJSlVyVUJNd0djUjJKZnRla3FhQzIyRVB6V1Qvd1pKaTR5bWxGdHF3OEc4eitVUTZsemtRWlpwYzRnczhVYjhLeGVzZlg3cmdVMm02VjArbTA1TU4ycjlJUjJVWDJBWk9LdlZMZWVHbTBzZnhVUXNSamo4SklCZ2NkKzlsTXUvWjJMSUcyREtTY0dxQS8rcXIrQ2I1NW1aSHkxelQrN2hNWVRzSDVpTkU2YmVJcUlqRk0xVlAxZVpYeWVxZTFOcG5sNlkzdW9Kait3Z0FRSDJJbThtQ1F4cVJtU2hSNnRKY3VoMVhkb0xVUjRNbDU2L1hrOCtiZ0piLzJZTmRlejdnZmpBRDd1V1d2QjJNWUo5ZCtsM3BsNlB0MnBmNC82Z1ZDcE0rNWMvMjVLcWZQU3JLcGEvWTlkOCt2WndrNHRNd2dZTTk0ZUtCQTg3eDErZzh5dmJmbEp5TXJrYzhISTVESnRxdzlXcDNyZTJSclZaeW52b3hFRFlyRlNWbVRmZmZkZGR1L1pqaWZuM1NOdnNlT2laWkp0amdjZXY1ZS8rL2IvZDFvMVVxa0Q4THAvRUhhRG41VlNaeU90eUNxbDFGbXFXWEUzeHBTVFhXRjU0ODNYU2ROMHppZHB0YU9RYmNSVzFWd0xTQmxRVFdEWG5oMzBobXYwaDZzc0xuZEk4d0ZQL094aEhuejBQbnBoRFRDVFZkRU5oZ2VVWnhuSDNsQ2ZPQnBqVUcwekZrU0hFQ2cxVC9UanBsSktuYVZFcWdCTHZSYWNNeHc2ZW9oK2Y0MzVIN2RaVjV1YmlUMkE4WWp4ZEpaYXZIdjRIWkxGaU81eW0vc2UvREhmK2Y2M09GNGNvV1dUOHJJU2paZlI5VG5XVjd3dFplM0dJdFY2RkdZTmpJZDIxQU9LbStNVTV2MXhWdXJjcFVGV0thWE9VaUwxT05lQU1kWGFsdXZqeDQrZDRiMDdmVWJNYURnQlloRWJFQ09JQ1FSYjhNN0JOMW5hMGNYRUJZODhmajgvdnZkdWVxeGlnWDdvTVE2dHpjVXdEc2VOeGRpcGRiVVR6Y3hLQU9vZXZmVUVEUnBpbFRxYmFaQlZTcWt6cmhHV3RoaDdXaFE1RUhqdjRJRVBkSTgrZU9NQVcvNWFCc2RRaGRoZ2M1S3VJMW0wUFBMRUEzenIrMy9MS2tlSmpEQmtEUmtGemxsampCdVBaejBndUQ2UVM4emt1TmhaZzhaSEIzVnBpRlhxYktkQlZpbWx6bUwxMElJUUF0YUFsNXhXSFBIT08yOXhMZ1N0OFp0UTNhYWhETEhCNW5pWDhzZ1REL0REbjN5WEFhdEVSc2dZNE1ucGRKTnFOTzMwVXBkWVBSaGZYV2ZZK0NpMzZaTkdGZHI2Y28xRktYWFcwWU85bEZMcWpLaURrVzJzNjZQNEtiLzlibFFMUS9CVkJ3Tm90V0tPSERuMEllM25CNnMrc0V1b0tyRm1IR0tmZWU0cHZ2dWo3M0RjSDZZVHh3eERuOXdQRVdDdHYwcjVGbGFIMS9yYXd2cUs2OFNCWFkyeHNZeEQ3S2hsV2JQSmJPTjhTcW16a3daWnBjNFN6VDZnNm55eVFhVlB3RmlMOXg1akhNNDZDbDhBaGpUcmNmRFF1K1dzVjVUUG1mSjhCdWNjQktFb0NpTFRxSGRXZlY2Ynp5OXBoTFNaMjlscXUyeStmZFE3ZHZZZE5GYm85L3QwRjl0RXNlWFkyaXBKMTVFejRNV1g5L1AvZnYrdjhhUUlPYXQ1djJ3L050RUl0OEEwUGdBSVRBUlA1OENQSHQ0QU9IQUdpbkpmNjlHMGNXUUl4cExuZmh4b213L0NyQlpkelc0SFNxa3pSb2NXS0tYVVdhb2VWaUFpNVN4V1ZmVXhCRStXcFFoK3JqLzRyS3l0Y01GRnUwajlnTmZlK2pVTHkyMmlManoyMUVQYzljTy9INFZZVDFIMTBLMU1CTXZtZU5qSjZ3OGVuSVhGeFRheGMvVVVhVmpqYUVVZE9uRUhnTHdRZk83THZnWXV3am16ZFNGV0s3VktuUlcwSXF1VVVtZk1pVmIwUXRXS1N4QUorSkF6R1BRbVpuNXJobDdUK1Azc0ZlZ3N4UnpySFdGWTlOaTFid2NrQlk4LzlUQS9lZkJISE0wUGprSXMrUElpMHpONFZXMWtUVDBVWStvV1lsdUcyY0hxRUxBa3hIVGIyOGh6VDFxa2VBS0dtRTdTQmlETkJuZ2ZDRHBsbDFKelF5dXlTaWwxbHByK21yNE1wNEVRQ2dicGdCQkM0L1Q1RWt3Z2JqbmVPZlFXN1cwUnk3c1hlT2l4Ky9pSEgzeUxvL2xCTEFGUFRpQW5uTVJYK1BWc1prN0tFSXRBUWt4RWhDRmlNRXdwUERoaXRyZDJrOUFselFvR1dVYkFrTmdXc1ltQkV5aTZ6dC9EcnRRNVJ5dXlTaWwxbGxvZlpNZS9lM0s4OTRnclR6UEdqSUx0WEJRVVRXQmxzTUtPQzdaUm1Jd2YvL1JlN3JyNzIvUlpvZVVjUGQ4ZkR5ZVlHQmU3dmpBN3FzcldWMDA5L1lIRFl4QWlMbGpleDg3bHZmUldVbzRjV3lGbHdGbzZSREE0V2tSQVFVNGVDZ0NzaVFoU2JMRHZ6TWRqck5SNVFJT3NVa3FkcGFiSHYwNytHZ2pCSTdhc3lFNE9MVENqS1czUFZnSkVMVVBTdFR6dzBBUGM5YU52TTZCSFpBdzl2N2Ird0s3NlFpUE5MeFRMd1FDVDB5RllXdEVDYVpFRE1SKy81Z1p1di9XTFdDS2UzLzhTTC83NlJYNzUrak40TWtEdzVLTkxDMkhjNGFEK1dhdXZTcDJWTk1ncXBkUlpZM1pqZjJQcVdiNW9sQ05sWElHZFIwWklpNVFuSDMyU0g5OTdOeWw5RnBJMmcyS1ZJSjRvZHVTRm42aCsxbmZkRXRXUHpPaVVVck9sbVNNdFBQdTJYOHB0bjdxRGF6OTZBenVXOWlJaDR1WlA3T2I2NjI3aW42VmY1R2ZQUHNaalR6eEtQeFNBWmFIVkpmZEQwcUsveWM1cnR3S2x6aFlhWkpXYVUvVmJ1S20rU2JZeWZuc05Cb0pzUEFoZXZ4bWRIMlcxVlNaQ3JESGdaUFpmdCt4d2NJTFgzWmp3NmtUT08zVkxqQ1lORUZ0T05RdlYybGI3VWg2a0ZhcnBkY1hVa3hhQXR5a3YvZm81Zm5EdlAzSTBPMFNFNFhoMkZLSEFHb3YzeGZobVp0NCtsSk1lMEtpZU9pd1dTNFRENFlqNXhOV2Y1cFBYZm9aT3NrVHZVSXF6UWl0WklJb1NJUERWMjcvRzV6OTFCeSs4c0ovSG5ucUV0NDY5UmdCYUxGQXd4T01KQkVRMjZrOXJKL2FUcWJPVXhzRlgvOTBwOWY3U0lLdlVHUlJDd0U1Vm15YUdBMjVTYlJNcjQ5azNwN2VaY2dtYnZHdk91cHc2K3hoanNOWk1kQ2dZdFdjVktmL0l6WVZHMFhicUNXQWEyMEo5K2RGQTA3TGJ3Y1Q0aGViRncraEd5NVgxQ09WMHVVWWNWSXNKRHFSOGEybDFGamg0K0QxMjdsckN0UzN2dlBjR25hV0VPREg4N0xsSCtYLys0VC9pU1FISTY5WmlnSldBaUszMmRYMzFjelRzb0JwTGtDUVJJUVVLYU5GbWdlMWtGUHpCbmYrU3l5NjhncDN1UWlnaW5QT0FoY3ppaDRIbFpDZjV5Z0FuTWJkODVQTjg4c3FiZWZYMVgvUEVNNC95cTNkL2lTSENraExJaVNJRDFqUE04L0tocUc4ZlczMGFNQ0FPeTdoOGJ2Q05CekdzdXpmNjcwK3AwNmRCVnFrenlKN21POWxXbDI5MEtacThIT1VicWxabXozNGlRaGlGU0VaL3pJMk81RGZHWURCYkRqbXdqSnBhYlduV2g1Nnk1VlVBQ1JoYzlhMkFMUU9vR01UQThlT3JYSHpKUG82c0h1TGc2Kyt3NStJZDJEam4vb2Qrd2owUC9aQ2NGREVwVk5YbDhmUFV6aGhrTVhWLzY4S3ZoV3hZWUR6c1NIYVRad0dQOEkxYmY0K3JMdm9JeTkwZDJDd215d3FDTnlSSmpMRU9Hd3hSSnRpaWhaZ1k1eUlXVzl0SUx1dXlZMmszTjYzY3dtTlBQOHpoNHdjNG5MK0xMM0lFWDQyL0JTTHdOaWwvQzVRekwwaW84cjdGSUkzSkdzWkRIeHJ6dHltbDNnY2FaSlZTNnF5eFB1S0l5T1JCWG8xWkFheTFaN0QxbGkwcnNiZ3FpTllMU0RVT29OVjJETE0rdzZ6SDhxNEZrcmJoa1NjZTVVZjNmSi9qNFhCNU5UT0dTR3pXYnFzNTQxYW5Fek5ZeXpFZU9xN0xNQnZTWVpFN2JyaWRXejk5QzIyN2hKV0VJdlBrZVk2eFNmVjRsZU9MZlFERUlSaUtRakFpdEpNbEx0M1g1cUtMTCtXaWl5NW0vOHZQOHZObm4rVE5sZGNKT0FJRkVDaHlBWXFwOFR2MVI0TXk3bnBrSXB5dkg4dXJrVmFwMDZWQlZpbWx6bExHVEZaVzY0TytTaFpyM2VnODlmbnFiZ1gxeEFnZktLbmZRdXhVSUEwRUczQ3hjUERvT3l4czc5QmFqSG5raWZ2NWh4OThpNVZ3bU5oQUpsc0hPU0hNL3VaQXdBOEU0NkZsMm9pSERndmMrWmt2OFJ1M2ZoRVRJcklzeHdxSU56Z2JZNk15K0JmZVV4UUZobklvZ0NVaUZJRThMd2pESEc4RElTcllzYkNYejM3eURqNTI5Y2Q1L3VYOS9QelpKM2xyNVhVQ2dpRkhHT0pEUHY1QVljcitDU0srbXNIV1ZQdGRWNXpyTXJKRHc2eFM3dzhOc2tvcGRaWnFCdGx4NWJYOFBhYUZjNDU2TXRWNllvUnlhTUdIUUF5MlVZMFZFWUlCc2VVQlhXSTh4d2NyN055OWpiNC94ai85OUQ3KzZiNGZjTHc0aEtHb1F1eGsySlpab2E0Tzd6TmFjWVVNdHNlN1NQT1VoQTVmdmVOcjNIYmo1M0RCWVlLaHlEeXhqYkUyd21BSUloUkZSa0N3dGp3a0RHdzFEbG1JVFlKSEtFSkI1bFA4d09OYUhmWXNYY0syNjNkeTZRVlg4dUtMTC9DTFh6N0xRZjhXaG9KQXdBVEFXWUlUdkhnS1grMnZiUXdKRVl0Z01VU01CL1drYUpCVjZ2Um9rRlZLcVRsUVQzZ0FGdWNjbmFSVFZnSmw2L0d3SDR5cUNsdFhZa1hBQk1RVVlEemVGaVFSbUhiT28vYy95RjMzL0QwWnE4VE9NdlFwWWFzUnV0TWRBdFp0anVpeWpTSVhFanI4czA5OW1WdHYrQ3pkWklsMHRjQmhhU2N0cklrUk1SUSs0SU5IUkhCeFJKSkVPTzhRNzhrTGp6RU81OHJGT0lNTkRoZFpWbGFPMGsvN2RKZmFmUHl5RzducWdvOXc4YTRyK09VTFQvSDgyMC9TNHdnZWovZUM5MFg1Y0pqR0FoQ3FqZ2ZCVGJTazFUSHFTcDArRGJKS0tYWEd6TzRiV3hzSFZJc3hidlJ6NUJLNm5VV3N0YU5obWMyS0xOVlFndys4Tml0UmRXQ1hVTzVJcUVKc2p0aU1uQUUvZWVCZWZuei9EOGxZcFozRURNTWFuaHpuRE1FYkxIYjJnVnhUczNtTmZ5NGZNNGRqd1M1UkJPSDJUM3llTzIvN0VwRkVwS3NGUyswbGh2MGNGeVhsYm9sWk4ybEUyYWFzSE85cUVZTFBLWHlPR0lNeERqSFFXK3V4dkxpZFhjdDdHQXg2SEgzN09HSUMxMTF4UFRkOS9IcSs5OU0yQjQ2OHhxdnZ2a2FQTmNDUWh4empKb1l5VjBkWEJpYkgwR29sVnFuM2d3WlpwWlE2eTVYREJSeDEyd0pySFVuU3d1RFdqYVA5c05WOWFJTXRoeE40V3lBMnc3dVVsMTk1bnUvOTB6K3dHbzdRYVNXc3BNY1FDbHBkUnpvb0o0OWRGK1kzQ3JHakE4cE0xZmtxWmhnS3ZuSEw3M0xycDIvQlNvd0poc2c0aHYyY2RxdExOc2lyZ08rSW9nam5IRjRDUlZHUSt4UVFZdXRveFRFU0RONlhCNEVaQTFoTHE3dUFFZkQ5RkZzSWk2MEZvaWdpeTRZY1h6M083MzNsRDlqL3lpL28vdndKbm45alA4YzRpbURKZkE1MlJ0OVpVNENNdXhqTUhFcWhsRG9wR21TVitwRFVZYU1aT3FMR0VlZXp0bTkyZVVNb3F6L1ZkUlJGMVVEZVZNVWZOU2MycU00WlJoTWh0TnR0Qm9PVWRxdkRNTTB3eE96ZGV5SEFxTDlzODNsZ1pYelFWNjJlS0tINS9Kb29kTTdZUGc2UnM1NmZBZzc2L1FFTGl5MWlaemphVzZIVk5XVFM1NFdYZnNsLyt0YWZFY2dKcEt5a2EyVUYxRUk2OUNmMnZYcTF2UlV2RUlwQUNJSElKQ1JSQzU4TGYveWxmOFhsZTYra2JaY0lRY2p6b3B3UXdjUmtnL0lnckhvSWhDK0VZSHg1b0pZeFdHTXhraE1rRUhKZmpvd1FXMWF6Z3kyWHh2NFpBWXBBa2FkWURJdXRSVllQNTF5MTczb3UzSE1GVjc3MERBLys3QUhlV0hzVllVRGNpdW1sSytPV2FZYXlVbHUxNllvaVMxN29QMVNsVHBjR1dhV1VPaU9hN1poZ0lzeE9qUWdvdzZxcFBxQlk4dHl6YzhmdUQzd1B0N0t5ZHB5TEw5bkhvU1B2OGU2N2IzSHhwUmNnU2NwOTl6L0lBNC85ZEJSaVBVVVpZbWNPRGkzdjk3cnE1R2hHcjVnc3k3QkViRXUyMDg4R2hOendqVHQraDB2M1hjSE83bTVpMjZFSUJkZ0k1eUtzV0RLZk1XdHV1OUVNWWFhZWxTeFVzM05WTzFVRlR6TVJZcHNmTnFxMVdHSTZTR3BvUjQ2UFgzMHoyNVozOHR5dm4rSHBGNTdnMk9Bd2lXa2p0c0JURUR4WUIxRWJRZ0dGaGxpbDNoY2FaSlZTNml4VlZ3VHJxcXN2QkdkaWNoL1l0KzlpTnA2RStFUFlOeFBvTHJVNDFqdkMwUGZZZGVFT0pFbDU5S2tIK2NtRFArSm85bDRqeFByR2RHT05aY01yTDFmdFpKRTBUWEVrdE9rd3lISVNPdnpHelhkeSsyZCtneVJkSUpFdWVlckxWbHMyd2psTENPQzlZTTNrNDJPYk4xc0YxbURLbWNUQUlOanhsTDBtak1Kc3Vidmp3RzJxU1EraXFNVmdtQ0pXV0Z4YzV1TlgzY0NPNWUwc3RMdjg4dVZuZWVQNEs5VitHSXdMWk42VCtYSTRSaFJEa1cveE9DaWx0blRtWGdXVlVrcFZHaS9Galdyc3VpQXJIbXZMbGxIMTBJSXpSNGhhaGdNSDM2Uzk1RmplM2ViQngvNS85dDdzMlpMcnV0UDc5cENaWjdwRHphZ3FGSVlxRkVBQXhEd1NBQUdDazRKVUs2em9hRVhMVnJ2YkVSMGRZVDhvV25hRUgveGtoLzhBUDFpT2FBL3kxRzIzdXlWUklpazJKNUVpd0JrZ0FJSUVDUUVFUUl5Rm1xdnVkSWJNM0hzdlArek1NOXloQ3FnQ1ZWVlFmaFduOHQ2VDUrUjg3dm5sMm12OTFwTjg2V3RmNEd4eERJWERVOFkydG1xejZHT01TTWRDcjJyK1RHNnN4aFVPamFWRkcxQ2t0SGpzemsveXFVYytTMG9INVJPY0N4UjV3SlhneWtEdzRLdkN0M016Y1Z3SWFuMTB2TjdEU3RpcVVBbmNTc3hxQVFMZWUwUVV2Z3prYXpuNXNtTXUzYzQ5TjkzSDczNzZIM0hqOWx2b3NJQ1JGTzBTV2lZZGkzamRXQlkwTkh3Z05CSFpob2FHaHNzWWF5M2VRUzM4dkJkUzAyS3VOMzlwTjB3RlZnY3JMTzd1NGRXSWJ6M3hiYjc4amI5Z3dGa1NveG40d1d3NlFZM1VQcXF3WlpQY0t1SXBJc3luQ3d5TGtqWmRQdlBBWjduMzl2dXhMc09JamFrV3ltQlRpekoxVnpGUVdtTlZPcjRCcUV1cjZoelk4V3EwSm40TjZuSGpnaGxuMnlxaXExVnNQYXVuMG82REZvcDhqU1RKeUd5TEVCekZjRVNRUU1mT016ZTN5T2NlK1FjOCs0dG5lUGJYUDJGRUgzR2VUcG95ZEdzVXhRVWM4NGFHaGcwMFFyYWhvYUhoTXNZWWczTzE0Rk1FWU8vZXZhUnBDOEtsVFMwd0dhUWQrTjRQdjgrWHYva1hqRmpCYXNYQVR3cTc0b3ZycVlXcUNVSEV6OHllb0ZFb0VsSUd4WkEyUFI2OTV6SHV2L05CNXRJRnlrR0pzaFlKQ21VTnhtaTAxbmhmNHIyZnNUZUVnaVlBQUNBQVNVUkJWTnJhR2cxMWkxM3ExZ3dhUVNwTHNaZ25LMG9USURveW9LZlNKQUxLQ3FKandaZ1NJY0ZpTWVpZ2tWSTRzT01RY3c4c3NtMXhGOS8vNlpPY2xsT1VSWTQyWFVLb215RTB1YklORFJkREkyUWJHaG9hTG1PbUJablZGaGZndW11dkowbVMyQmpxa2hISXl3SFBQUFVzMzM3aUc0eFlvNXRsRE53S2dzT2t4RWp5ekJCNkZJdUtoQ2hpeisybm1tVnRYQzQ4Zk5jalBQYlFKMGg4aTNKUU1wOHRNaHdVb0JPY0Q2Z3E4aG9RUXJSWVFLRmlidW9tdy9kYVZMWFdaUEtrUkN1d2dLQlYzQ3F0SUtpQWx2ZzhLc3pzaXNrQ3poVzRBa3pRV05VaU14bEtHVUtBd2VvYU83ZnQ1WjdidStnczRVY3YvSWgzMXQ3QytSSmoybmcvUE9mK056UTBuSjlHeURZMFhDSTIrNEp0K1B2RWV4QXdkZVNQQUJnU2t5TEJzM2ZITlZqYWFOa1lkZFR2K2JxU21LR3FRTXNrRWpudTFEWDlTaFdRU3NpRnF2R0JOem12dlBaTHZ2SGtWemhUbkNSUnNKd3ZFU2hSS2xibVY2c1pwd3BNOExGNFNybUowSzBlQ29zaFFXTW9jOC9uSC9vSGZPenVSN0NoUlVLR05nbkRRVUdhdGlnRm5QZUVJTkVSd05xSlBaMkE5K3RURndMakZhcnhBZDZVS250MmZEd25rbnZ5azBqMG9WV3B3a3FDQ3ByZ0E2NG9jY0dUcEJuTEoxZXhQY3NEZHp6Q2poMDcrYzZQbitDMVU2OFJmRTVnRkhOdjM4TTUyMnhMbXo4aERRMk5rRzFvdUNqT0owWm5QVGxsWmxxVmkyeXkwQzJYdHNXMDRZcWxMb0lhbjhyWkNLVTJrT2RGMVFZZ29FcXd0TG4xMEQzb29vMDRQVFlOSGhmYno5aEdyYnYraE1uMXB6eW9Nb3BrTWZFUkRJaEdoL2pWb0JOTmY3aEd1NWVDZ2VXMXN5UnRUZWxIL09yWHYrQlAvdktQOFZWWXVKQXcyUkhSSUdHVFM5a3pqc1FxQngyZ2pCdHZ4U0NGSXFVZFc4OEN2L2ZZUCtiQTN1dm9zUjJ0TWx4ZTRqRmdOSU1pZGdmVGxVZXJCRDl1UWJ2K2VJejljWVZZbkZVZDgrbjdBS0YrbjB4Mm8xcFc5T1VOVTFKY1YzdWpnSUFTalJOQlNTWFFVekJvQkVjcnRaU0ZoMVg0eUs2UHNPT2g3Znp3cVIveDdQR25XR05Jb1VvQWJCS2p1TUY3RU9oMnV3ejZ3M1ZyWkx4djhlOUhhUDRLTlB5OXAzRXRhR2hvYUxoc21GVFMxMTZtV3VJZmFvUEM0N2w2OFhyYVpnNThXdm1iVG5nL1VmNm8vd0txRXB4eFhSb2RkSXpNb2xoZDdYUFYzdDNrYnNSYlI5NmdzOWdpNlFoUC9mUjdmUG1iWDhDVEl5cEhLR1B1NkRobXFkSFk2aEgvVGZKQkE5UkZZSldJeFVOd3dvN3VMalFKRHZqY1BiL040V3Mrd2xVTCs4am9JTGtnSWNHYWxLVFZ3bVJwdFNjYjgweHJmYnA1ZERwcytWQVNIL1h2dW5xb3luSnI5cUhSb3RCaXhrZFRWQlc5cmg3YUtxeTFwTXBpblNaMUNYdTZlN2ovcHZ0NC9NYkgwUmlzVHRISzRnb2hPRUVyaTFLS2ZyOWZXWDV0M0RlTi9rMDNIMjVvdUdKb0lySU5EUTBObDVwcGo5VXBwQm9CMTBwaEpNR2p1ZTIyMjJpMVd1Qmp1c0VGSTdVOE5sUHRYK3ZLLzdnaDNWN0d5dG9TZVRsZzUxV0xLT040K3JrZjgrVDN2ODJaOHNUVWNtWUo1MGlibVBaeDFSWkNBWGpJVEl2bC9pcGRlang4KzhlNTc1NzdXR2p0d0VoS1daVGtlWUhTVWJ5RzRISE9YZkl2c0prYmgwMEdTbHhSWXExRlNleTRWZ1FoeXpLdXVmb0E4M3M3SEE5djg5S1JGMWdhcnFBSldHUElmVkVWbnNuVTR1SVJyWDF3QXhzdWxZYUd2N2MwRWRtR2hvYUd5NFlwQVNoVjB5bEFxdXA2aGVhV20yNG10ZGtIc2pZbHRuSVNzRlVGLzJRN2duWWttZUxveWJkcHo2VXM3T2p3dzlvbnRqeUJub3JBbm9zNnFyaWhCNElBaFVKNVJkdDA4RTZ3cER4eTl5ZjQ5Q2QvaTFiYUpjOExpcUtJYlhlMXhkam9SdUM5cHl6cnF2L0xGK2NjSVlTeGk0SnpqanpQOGQ2VDZJekhIL3dVdHgrOGl6bm1zQ1FvYnl1L2hwanZXN2UyUlUwRUxEUWl0cUZobWt0OVE5dlEwTkRRc0I2Wi9iRWEzS2FyRjlpemV6OUttZG44MXd0Q2dSaDBGWTBWRVlJQzBaWHdWSjdsNFRMYmQ4N2pWWjl2UC9sRHZ2aTFQMmZBTWkxajZQc1J0V25WWkZzM0VaYXFTc3ZkNENjTHlobTJ0M2V3T3V5VGtQTDQzWi9pa1FjZXhZYllabGE4UWh1RFRSTEVLbUxKbVVjcElVM1RxUFF2WTlJMFJXdU5VZ3BqREVvcFJDUUtYRHdMdlcwOGVzZmpMR1k3K041elQ5Q25UMFlIMHhKV1J5c2JFbU1sVkc0S2w3bUFiMmo0dTZRUnNnME5EUTJYaWxxTFRvczhGZGFGM0N5YWxJUU90OTl5Risyc2c3aTYrdjdDTXlWamp1ZFVUcTVVOWxMS2dmSjQ3YkFta0hRVlQvN3crelBORHZwK1pmTkN4WmtWYlBIeitDbUxwY1Z3V05LbHg2UDNmcEpISG5pVStkWWlvOVVTSHp3ZDIwVnJpNFRvUU9DcVlpNWxUSFFvS0MvdnJnTEdHRUlJbEdXSmlLQjE5THNGYUtrT2c1VVZkaTdzNGE0YjdxYnNsL3prNWFkWllZbDhORUtoSzJlSGFtSFZ6WUJJRTVsdGFKaW1FYklORFEwTmw0cjFBbTlESzFkTDlEcE42TFcyY2Y4OUQ2S0N4anVQSm5rZlZsdGJJTFl5L3hlb1V3V1V4K3NTMFFVanY4YlRULytVYjMzMzZ3dzRTN2ZkWXVCVzhMN0VXbzEzc2ZCb1EwN3NlbzA5azBzYWhaekJNTWNpSHVIaGp6N0NweC81TEZhbEZIMVBPK3RTckpXSTBmaHgyOWxBa0REakJISVJHY0lmQ09mTGtRM094emEyWVNJOVJVSVV0R2c2TWtkeEpxZlhtdWRqZHp4RXE5WGlpWi85RGFzNE1tTVloVUcxSWpadFhkelEwTkFJMllhR2hvYkxFb1ZGWTZyK1ZoM2FyWGtPSDc0WnlRM2lRUm56Z1lUa2FndXFvR002Z2RjTzBVWDBpZjMxMy9MTko3N0txZUZSRXFOWkhwNGxVSUlCUHhabjYwb3R0aEt4NDRJeVZWWGVKNVFJbjcvbnQ3bjd6cnVoVEZEYVJ0T3FnV2RoWVJ0cks0TVlnY1dRMmdTMHdrdkFPWWQ0SHpzV1hNYlVVVmhyTFZycmNWcUI5eDR0bWhZdFRMQVFQR2tyNWREVk4zQzJmNWFmLy9wNWx2d3BGRFoyU0p0bWk4TEFob2EvcnpSQ3RxSGhBNktPRkUxSGpNN1hKbFBPRTFvNTMveUdLNXlxQ01oYVMxbFV3K1FLMHFRVnZVZEpTR2poMFB4SHYvMFBHYXprTFBUbUtJYzVTV0p3WVRLOFAvRkpuVnd6MHhKei9YeEJVRm9ZRGtmMDVscFlhMWdhTEpGbU1BcERYbnJsRi93ZlgvaWZDWlFFY2dhK25MU2RsZkZJOTdtcE5pVzFIWHdadDlXcWxIYldvUmc1ZnUreGY4eTFWeDFrb2IwVHBUUnU1S0tkbFRLc0xLM0Z2TktxcGEzM2dnU1BLTWJEODdKKy81bmQvMWtiM1kzSFp5YWd1c2w4dFg3K3V1VVQzbHV1YWdoaDNKeGgwckJCSTZXaWJkcU1paUZGbWJObmNUOGZ2NjlMMmtwNDhoZC9BMENXZFdLK3JJS3MyNHBDdUhBYmQ2Q2g0ZThwald0QlEwTkR3NlVpS01SSG9aTm1DVXFEcnFLTVJtVmtxb1BIY052QmU5aStzSmQyMXFQTVBZa3hPT2ZPcy9EenM5cGZZYysrN1l4Y256ZmVmWTN1WElacEMwODk5d08rOHMwdmprV3N4MFVSTys0eU1MTVR3Q2FGWHVPT1dDbGxXYUl3Ykd2dkFGR01SaVcvOWNEbk9IVHRqZXhldklwRXRhSU5WekJZbTlGSzIxVXgxOGF2cUdrdjF5c2RFVUZFb2NXU3FwUTBwSFIwaDJ0Mlg4KzlOenhBUWtZeDhyUjFCeVdhdkQvQ0Z3NmRxSXROa1c1bytORFFSR1FiR2hvYUxna2FwUzBpQWU4Y1FlbllmQ3NJaFN0UUdKUktVV2dlZnVBVDdGallUU3ZwMFYvcDA4NDY1S01DYlM4bVN6VFE3cVVzOWM4dzhuMjI3MWxFMHB5bm52MEJmL1A5YjNKNmRHeEt4UHJaSWUwTlhscnJxT2ExMGg1NW5tTkk2Wm9lYThNUkNTMGV2dTBSSHJybjR5emEzU1NoUlZtVWxMbVArNXdZSkNpOEU5YkhXcWJGNnliZGVTOEo1NG9HblNlRmxxQ2lNWmxTQ2t1S0swdFMyK0thbmRleWJXR1JzeWZPOFByS2E3aFEwa3ZtV1N2WEVCeEprcEJmNW9WdURRMS9WelFSMllhR2hvWkxoTFVXblNRQWxSTkJSRlc5bTNMeFhMdnJCcTY5NWlEV1ppQ1dVSUpWSm1hYlhrUlVVcFNRdERUSFR4MmhOV2RZMk5uaWV6LytEbC84NnA5emV2UXVHbytuUkNnM0tVS0R1b0ZDbU80K05UTVdyeUdBeHBMUm92U09oSXlQMy9ZSlB2dlk1K2lsaTVRNUZMbkRPNFZXS2RhbWdLYjBqcklzejduOWwwTkU5cUsrUUZWQVc4R3BzbkxaVlZBcVpBaHR1bHpWdTRwUFBmaFpybWxkUjBLS2xKQ1oyQkFpSHhSTk5MYWhvYUtKeURZME5EUmNJc3FpeExiUzhhQzhzWkFtS1hrL1JpUGJ1c3VuUHZsYnROSTV4Rm1DZUxTMmhQZVltM2x1QW12RFZSWjM5M0FNK2V2dmZJc3ZmZTBMOURsRGFnMTl0enFiVGxBamxzbVRXMWh3Q1lDbUxFdm1rZ1ZHWlJTeG43bm5zOXgvNTROazBpR2pSZTREeWxvU2E2c1d0MVh1cmRFa1dZcFVQckVUMFJxbG94WUltNHJyS3djQlFpSzRLdDgxd1dBd09LZkJnd3FhUTNzTzgrRHRLd3lmSG5LUzQ5aVFvSlVscUNwWCtjbytCQTBOSHdoTlJMYWhvYUhoRXFMUVVCVUZHZ05GVVNEVkFQUkhiNzJOZSs1K0lGYXZDN2dTTXB0UjV1NjhoWVRuWDNIQXRoUlpCNTU2OXZ0VnM0TWxyRllURVJ0TkJpYUlKWnBlVmQzQTZxYzNMRHoycDFKb2h1V0lqSXhQMy9jWlB2N0FZK3pvN1VMbENqY1EwclNEMFFsS0tZS1ArMTRVQlNFRVRITHVPSXNXamRva2gvWktJYWhBU1lFekJRRlBVR0NVSVZVcFNVaFJRMDIrVkhMSDRidDQ0STRIU1VncHhVMzIrVko3anpVMFhDWmN1WDhGR2hvYUdxNTRkSXl1aml2aXdWYzFYTmZ0UDhpakR6K0sxYlpxQ21Cd0xwQWtHZDU3akxxNFA5OUJCUW8zNUlkUGZZOXZQL0VOaHF6U1NWT0NLaEFjMVNqMnVvaHNOTTVTSkZHQW4rY3JKTlV0TkFrZnYvdFJQdkh3NDdSc0J6ZDB6R2VMaER3Z1FWR0dRTzVLeXVEeElyZ1FLTDJuY0c1REhxeVcrRkNYUzRMc3hhQ0VraEt4Z3RpQWMwVTh2NlNrS3NPRWxEQUlkRXlYV3cvZnhsMkg3cVpEaHpEdVczeXBkNkNoNGZLZ1NTMW9hTGdDMkN3ZlVFOU56OU5qYVFOTlo2QVBHcjF1dXA2d2JocC9Wb25nUXo0V0psWmxPUEhzNk83anNZOTlobHNQM2NtcDQ4c3NkbmJoZ3lNRUFRTWlIbTBUL05oK1NsWFhpRVp2WnRsV0RjT0xpaTFlZ3dKUkphKzg5UUovL2QyLzR1VG9DSWt5ckJabjhaUW9EYUUyUlppcFVoSVVnWGpGdVMyY0NqUUtneUhGQitGM0h2dHQ3ci85WWFTTWJsVUpLYU5oVHJjN3g2QW9DUktMblpJa1FhbVVFQUxPZVVJUUREcEdwMVU4WG5YakJhM2lrZHpxK3EydHdZTGluRTBqbEZ4NDBaaVN1bDNzaGFQRVkwMEtYbFhldUFGdE1xeE9NQ2dXNWhaWldWcGxZZHMyN3IzdFBvNHZIV1Z3ZWtEaFFPbzduaTBhVDJ5MVc4MW52dUhEUmlOa0d4b3VBaEdaZkZIV0FtSkdTR3owcEp3TmNFMSttL2FwcklWclBWY0xHMzBzVlFBMWVhMnVKTWJZOWtoRHJYTTIvZkpxb2pvWFRUdy9FNlAvK0NkVlQ4MFZOR0NNd3ZrY0lXQU1LQTJsQjVHSmR5ekJVZ3dUdHR0OWZQUzYrM2owenM5Um5CWVc5Q0l5RWxKdFFFT2VEekd0aERMVVJVS1ZKNmxvdENnSWswaXA5eDZ0d1NRYXJ4MEJoMHBnYmUwczc1eDhoZi8xMy84UGVBWkF3RmZlc0JvSTY2Ni95WFhpMERnZ0p3QW1BZS9qZklVQ01XZ01ob1J0MlM0ZWUraHhicnIyRnViYmkxQVlLRFZaMnNFWHdwbWxKYmJ2M0ZHbEV6aUtZWTdXRnEwc1NrVTNCOUVhRVk5Ukhtc1RsUFk0VjFDVU1mMUFtM1M4cjNFVHd6Z3RRd2tvUXZWeDFCQWs3by9JMk5iTHI3c0YzT0JvVlI4SVljUG51ejRrNDV2Q3FjL25lbkdyTm5tL1J0QktFd3FIQ1liVXh2YTFYaHdTWEhRMGNBN0UwVjhhY3RYQ0hqNzM4T2VSNzhEYnEyL2lKZENuRDdycXlGYXBkMnMwaUNCKzh3OTNkU3RRN1VPVFpOdHc1ZE1JMllhR2krQ2lXNFMreitXcmFkdWo4MFNiR2k0bGs5c1doY2I3Y2l5d3ZBY1Q0a3RNQy93SUNKQ2FEajI5ZzUxelYvUDd2L3ZQa0tIQkJJc0tVUnlMQ2dRVkVEWGxFREMraVJyZjhzUjFodmk3aUdCVFN4bHlWb1pMcEcxTnkxcGVmZXNsL3ZLci94WlB2cW1ZZWEvWGxmZVQ3YkEyUll0Rk9VMHZtMmUrTzhjZEg3MkR4ZTRPakRMMFJ5T0trU08wQTUzV0hOdXpSVTZmT2s2YXRNaXlOa3BidkFkWEJuendTRkE0VjJBUWdnbzRGOTBUbFBKWWE3SFdNc3JEbE5lc1orUDRSS3lJVWpKN3ozWXhrZGhwNm1XOFh3ZUZXS3dHSnVqcWZNWVB0cWk0MEJneER4aWpTRlNDTmdxY01KZk1jL09CbThsZnpEbk9jY0NDOHNRd2ZkeHY3OE1HUWQ3Y3N6WjhtR21FYkVORFE4TUZVa2NCSXhwd01KVTdHb2ZHeTlqV3RZNkY2ZkVvUFg1WXZWU2lpT3QyNS9talAveXZLQWVCdVY2TG90eVlKMW9Ub0NyOG1YMkJxRkN0UG1CTVFDV0IwZG9LV1VmUlc4ajQ0VSsreDVmK3d4ZFpLazhnNkF1T3lhM2ZybENuUHFEbzUyc28wZnhQLytwLzVOcDkxM0hvdXB1NGVzOEJGdWNXS0pXaFh6cDBNQ3p1V2lTVWdTSWY0ZkpBQ0dCMFFtb3pqTkdVaGNGVSt4SkNJUGg0ZkpWQUVGM2QyRTJMZU1ZUlR6VnpYdFp0dTY3bVhlYnFMb1F3RGdhWFVtSlZ3dUZETnpJY0RqbjUrbWtNR2g4MGFJMVNDZ2xoZkdPaTlLVHgyR1lHQjVmNXJqYzB2R2NhSWR2UTBOQndNU2hBcG1XQ1VFY0Z3OVQvRU5CS1k0eUtIWjFDSUhobzJSNUJXMXA2am4vNkIvOFo0aFI3ZGwzRmtUZFBzTmpaUGw1cWpOSkJVREsxekZoOE5WbHZqTzZKQ2pGNmFXRnBjSXBXejZCYmdhZWYvejVmL3ZvWFdDcFBrbG9iY3kzUjQ0amQrNWtpSVZiT1Y5RmxMeDRrNXJXV2pGZ3BQSWFVRjk1YTRwZHYvUnlGWlpFRnJ0NS9nTU9IYnVTYWZkZXhlL3QraXR3VFFpQ3pHWjFXRjYwdCtXaklhRkNRMmd4VWdsRWFpeUZVdWNEZWU0cFJnYzZTcWNOZUNkb3FRanVScjVmdjhMbWN3MEpNU1V3UkNLNUVKVEVwV0ZuRnJ2bmQzSER0WWQ0NCtpYXZqRjdGaXdFZlVNb0Fhbnh6RlYwdFpPcXFhQ0t6RFI5T0dpSGIwTkRRY0tITUpENXZMT2lxSTY4SzBFcWp0Y1c3UUJCRmpOY21sRG5zbk52RmYvMUgvdzI2YkpIWU5rdG5WK2wyNXBnMEhaaGxQS1ROdEFXVmo2a0hlRkFlVVE1dEZhN3NJMG5Hc3k4OHcvLzFaMytDbzJESC9Cd25WazVVMFR1OW9ldlVlNTB5NVdlckZDZ2RJNmU2MmpwZnFWeUZ3bUk1elpDelIwN3dpeVBQa3RKbFYzcy9OOTkwSzdmZGRodmR4VDBNaXJQay9ZTFVwSFFYNXhpdXJvRkxDVUZETUJpZGt0b01MWDRxSWwxdFV6VzBMdFhCVVRPUjJPcVdRazF5YUdjTzVHV0dGazFRZ2RST0hDcU1OdVJoaEpXRS9UdXY1cjdiNytmbzA4ZFl4c2NpT0JHTU1uZ1JoSUNneHgzWnBGS3gwcWpaaGc4aGpaQnRhR2hvdUJEV0p5RnVSaVVjRktDVXd2bEFER05xTkFaRnltSzJqZi9pbi85TFZKbXdaL3RlVnBkeWluN0J6bTJMRElmbFdIU01JMnRWWkRaRzdLcUhtb2hvMGRGUndKc1NqS2UzcmNVUG5uNkN2L3JhRjNDc2tSakY2YlZqc1dQWHVzSzA5eG1UbmQzVjZtbHRGRW9FVlBRODlVR3FwSXNTRUh6MVhrZkJ5YUhpeVBQdjhPVHpmOFBCdmRkeDErMTNjTU8xQjFHcHNEUVlNTitieHdhRkw2RVlqQkF2R0dQUXhLSXdKRlRIZ2lvU0c2WkVXcFN5UVUyRS91VklVQUd6aVIrdWxtak5wa1FUbktDTlJnZER1ZXBJa3BRYnJyMkJRKzhlNU5YanI5RXZWd2tJVnBrWUdVZkg0clBOa21VYkdqNWtORUsyb2FHaDRXTFlVT28rTmF2U2ZYRzJyV1JqQW1pNmRvR0Y5azcrNVIvK2wvZ2NldWtpSzJkSHFKQ3dNRDlIdno5RTYrcFBkSlVxc0w1VmJKMVlNSzZjVjBKUUR0RWxvblBPcnA3aHlNazMrZnEzdjhTS084MnUzWXNzclp6RzVUbTkrVFpycThOS0FOWkxlVDlUMExwT2s2aldMK0NyMUFwZjE2U3BLQ0ZWZFJ5TVVnUVJIQ1VGQWhoYUpMeHc5RmxlUFBvc3Uxbzd1Zit1KzduamxqczV0YkxLWW5jbldkYkJpTUlYSllVVUdCWHdPbUFBTlU3ckVMVG9HVmNQSlJzVEwrcmpkTGxHWTZmeGhZOU9CdDdqdlNleENYbFJVT1FscllVT2Q5NThONFdVdkh6a0ZSVHh4a0dqaVpteWZxTlZ5bFNoYUJPVmJmaXcwQWpaaG9hR2h0OEVFb1dkRWxBNndZakZvVkNrZEpONXRzL3Y1Zy8veFIvaFJuRHd3Q0hXVmdhc3JZM290bG9vVWVNaGNsVFlvRG1tcStRbjRpd1F0RU9VUjNTSk56bnZubnFILysvUC96VkxvNU4wdWduSFRod0JEVmxQc2RZZmpwZS9NUzNpdlUxRjFybk5BZHBFbjFlUjZHb3dubDBwU3BYRVoxd1JTQktQYzQ2MU1CeW4yNTRZSGVWclAvb3J2dm1qci9HWiszK0w2L1lkNHVvOTEyRk1oMkF0b2dwRUZKSkV5N0NKL1YyMUw2SW1FZHBLeklxcTNBeGt5dFZBYlI1Wi9ydEdWOUhZb0FRajFYbXNubGRLMGM3YURQSUJlT2kwMnVoQzArLzNVU1VjUG5BamI3MzdOdThjZVpzUkl4RFFtQ3JWb05yWFM3K0xEUTIvVVJvaDI5RHdIdG5nNHdwVm1jeUZ2Mzk5aEcycjkweFR0eVpWU2pWUmxVdU5NZEdzdHc0Q1Z0MW1KVXhFckZVYVF3WmlVUmhhOVBqWXZaL2dkejczdXlTdWhVb015NmNIS0ErZHJJYzRSWW5IbU5rZXBDS0NJTEd6VTJVcEZVTytzU3RVVUFYYUFzcHhadlVreDgrOHpaLzh2LzhLVHc1NCt2MFJTc2RBWkQ2Y0REdXJPbmR5S2xwWDJ4dlh3YzU2ZEY3V1hhNnl5V2g5OExFd0RaZzFES2llSyt2M0dDak5hR3oyNEVOTXVUVUduRmNFSE45NCtxdDAyY1pEOTN5Y0d3L2V5bngzTzUzMklzTjhoRFVKYWRCNEZ4c3FaR2tHUVJFS0YxdmNHZ05CcWlZUXNleHBNcFhwVFpvNnZ1cytjNVdQN0ZiMld1UFh5dXpuZThQTDE4OFhwaG85YkU1UUFSVVV3K0V3WmhrcnhiQS9JaEJvcFcxY1diSjg5QXlmL3Rnbk9YdnlEQytmZUpGVVpUZ3AwR2lVTnJqYVNMbytEK2ZxSXRIUWNJWFN0S2h0YUdob3VGQzhCNld4V1lLMUN2R3hJNVlFMEtMUVdDdzlKQ1FFRXJZbHUvbFBmLytmODN1Lys1OHdXZ3Vva0tGQ2hnNEpTSW9LTVg5MmxqQ09tdW82d2x0RjhWYlhsc215aEt5ZE1Db0hhQlBvTHJRNWV1d3QvdUtMZjBhMEE0c0ZUa3BKTE1oU3pHUkQxS21VMCtteVdzWElxbEtncWdpcjBsRmthaHVuMXRadnNyUHRhcWZLNUdjRTRJYXdNakU0S2tBS3FxMFJCU01mYzJsNzdRVmFwc01hcTN6cjJiL21UNy84cC96ODVaOVJtaUcySnhScXlHcStqRzBwMHBabGJiakNhbjhKWXlCdHBYZ2ZSWnlhanRCT2JjYWw5akxRb21hSzFiU29EUzRHWWVyM09uS3JKQmI0R2RFc1p2TzRsWUxiRHQzQ0huTVZ1UXhKcXZQaDZzNWY2NWtwVEd4b3VQSnBJcklORFEwTkYwSTlNaDBDYmxRbmljWWlMcU10VnFlVVh2Q1NvRWg1OFBaSCtOeG5mNGRPZTVHeko5YzRzUDhncXlmWDBHS21PajlwTnBOYTA0MHdwbVh1NHZ3Y283eFBJS2N6bDdLOGRwb1hmL3B6dnYvVWR6alZQMDdBSWJocXFKazR1ZzVqRld0dGpPekhybkNDRDBJSU1SQlpGMUdKclB0ZFRicC9xYW9CUXh6T3JyZXVUanVZZEp1YW9jN1AxRUFDcW0xUkhrTGZWVVBqR285bWVkaXZ1b1JaTXRxY3pJL3hsUi85RlQ5NzZXZmNjY2RkM1BIUnU1bnI5Q2lLRVQ0UDZFU1JaUzNRQ25FZXJhK01FUXRWZFdTcjQ3alRZbGFtMmxXc2ovTXFVYlIxaXpQTGZXNjUvaFpPbnp6RnFWZFBJQ2djRG8rYmZjZDBDb1pBSTJZYlBpdzBRcmFob2FIaEl0REdvSlZGZkN4aVVsaENNSlJZdG1XNzZIVVdlZnpSei9EZ3ZROUJzR2lWa3JWYkhIbjlLUE85UldiTGtUWmp1cWxvRkREMWE0MkZVVGtrN1NRb0M3Lyt4YS80NnRlK3pISTRSZHUwR1BvU1FhUEhyWE9uTEJBSWhOTGhLNk9tNktjUTFXcTlodFRHVnJoVVl0WXFEUVpVaURtOFdtWFVEUXBrT3RLbnBzZXd3eVN5T0NYU2dnTHZBckxxWXNwQ3NKVnNUV2pScHBWMHVQblF6U1JKaHJXV045NTRpN2ZPdnNPYlo5L2crQlBIT1hubUJQZDg5RjYyOWJZeDE1dEhPWTBmbGRIWlFNdzR6S3ltaXJxaXJaWEVrUGxsa0R1cXR5ZzRHNHZacVNqdFdPaE9YU2N5RWxLZjBqTWREdTQveUt0dnZzcTc1VHRWczJSTk9YN2gxSFFxbytFSzBQa05EZWVsRWJJTkRRME5GMGl2MjJNd0dPR0NSNUZnYWRFeVBYUklFVEhjZCtmSCtld25QOC9PYlZleHRMVEdYSHNlMEt3dURWaWMzdzV1TXR3dHlGUTNxbW54V292UDJndzBpbGxSd3NsVFIxbllOc2NvWCtObnp6M0g5MzcwQk10aENTRXc4b01ZaVIyang5T3F2SWhlTnM4Z1gwTVFESkRvaEVDWTVITTZOUlk5R29sRlZrNVFsVitDbDdoOUdxblRTYXR0bmZaU2lKNjVrNThuZER0ejlBZUQyQ3lodFoyUXgzWGNkdWdPSG52NEU4elBMeklheFI2K2h3K2U0cTBqYi9EY3o1N2oxUEE0VC8vOEI3enoxaHM4L09CajNIN3pIWWdYUnNXSWx1NlFtVGF1Y0dTNkZSMEtya0NDaXVrZ05ldUZyQmFnRE96b2JHUGx4REk3NXhhNTQ5YmJPUG44TVVhY08zKy9TWmx0K0REUkNObUdob2FHQzJSdGJRMkZwdHRhb0JoNUJFTW5YZVNSajMyU2UrOTZpRVBYM3NoYmJ4eWh2K3k0YXZzQlRwMDhRejdzTXorL2lFSGhab1RtdXNvcEpaTWlzcW1JV2wybEh3anMzNytQNWVFWlh2amxUM25peVc5eFpPMHREQXBEd29pU2lReXRyYi8wVkQ1cllKU1h4RjVjbWtEQUIwV29VZ1drRXM2R0dDbXRSYkhEeFdLaXFzMUJ6ZVlGRi82Y2JyVGx3TkdtaDZESVJ3NUR3bDNYMzhkRGR6L0N0YnNQMHUvMzZYYm1hSFZiYk4rK2svbUZPVTR2bmVUVVM4ZHdsQnhaZW9lL2Z1SWJIRDE2aFB2dXZKKzl1L2JoK29GUmYwaVdaRWpsdzdyaHNLb3B0NE5MeUV4RGg3b2IzSlI0RFNwMmFWT2lOeEd5aWdSREwrbHc0dVM3Wkx2YTNIRHRJWDcreXZPczlWZmo4bXFQNGFucnA4NlB2Z3gydjZIaEE2RVJzZzBORFEwWHlLNGRPMWsrczhwb05PTHFQWWQ0NE42UGMrZEhIMkRYOWdNb243R3luTE5uMTdYMGx3YTgrL1pKRmhlMjA4c1dXRjFkUm10TmttVE1kQUtyMGpwbmc0aFR2cTFRaFc4MVdudE9uem5PQ3kvOWpKODg5eFNuMWs2aUFZTkJHZWlvRHI0YVhOWlNkd0F6VlU2bUJRSUZJNVNPVmZEYUt2cHJBM0pHS0RSdGt6SHlPUVpOeTdaQkM3NE1HQ21qdUYzbnFqQkxKZENDek9UV1RrOEJjaG14dTdzSE54VDZZY2lCN2lFZXZ2TXhEdTYvaVpXVHkxamJJczlMVnBmUDRNMkkzVHQzYy9jZGQvTEdtNjl4Y25pS1R0cmx4T2dvVC83c05BVEZnM2MrU0MrWlIydURUUXhTaE9wNFhubDF6VkoxSVFzcVZFa2g2MU1MTktsS0tQc0ZyYVNORHBxNWJvY2JEaDdpK0F0SFdTWS9wMkM5RERJckdobytFQm9oMjlCd2dieWZFY3R6Tlg2NmNFSVZzWW1kbkVTRmpmNUk0MlE0dC9uekh3UVgwaFRxZzVqK3hxZ0haYWU3WHVtWitmRi96ZkxwZ2p0dmVaaUhIM3FVUXdkdkpqVTlpaUVVYTRIVUtIemhFWVowV2wwNm1TWWZEbEZLMFcxM0VCRzh6S1lTSUJwVmRXYlM0MU1aQmFQZzQvbldIb2hlc1ZtU2N1TkhEblBOd2F2QkNpYUpIYlNjSy9CU2tDVEplQStvQld4VkxTOHF2bGFaMkZiMnhJbGovT3puUCtXRkYzN09TRVo0RC8vaW4vN25kTnM5T3UxZWJLOWJsTEZscWtsSUVrTmVER2VPWEwzSmRZWDladlp4TlVyQUJrMG9CWEdhMUdRa3Vvc05HZmxTU2Rjc1VneHpkaXdza3ZzK1M4T1RaSkt5ZldFN08zWXVjUEx0WXl3VkoraWtQU2dDVDc3d0xkNDU4aGFmLzhUbk9ianZNS1BWSVZZbm1Eb2dLZFByMWpQYk9kN1dLaDlWVlRuRXN1VUhKVWEwTHlacjRYd2Z3WEZOM05RMmp0OVRQZWMxTEM4djBkdTJ5TWdQOExsd2VPOWhYbnY5VmZwckF6dzVMb1FORGR4a2FoOGFHcTUwR2lIYjhQZWE4MzBSelh3Ump6MGo2OGdJc1h2T2hvVnVYSzRXTnZXUm5mNGFtWjQvUFpTODViYmhnUnpIaUN3ejVFWDA1TlFtSkVCdFpnQUFJQUJKUkVGVVBsdzU4ZjhjYjlwVTlUc3dTVjNjQW5XZWI5c1F1Q2hCS3VlWnI5VEdTTjUwUkcrOWJvOGJ6ZGhtS3B5cksrblVzUDNZUzdVYWR0ZlVObGdHU3d1RnFkSUFOQmx0YnI3NVZnNWZmeU9QZit5ektFbEFORkpFd1p2NXVBemxkUFVITnVDS0FRQzJPdDQrT0VUVkErK01JMjVLZExUZ2ttajRLbUlvWE03OGZJOGlERGwxOWwzbTVsdDBGMUpPbkRwRHFsc2tXWHpFRzV1NFBwSTRyUzJvSmt3RVhGQ1F0RnNNOGxXc1ZiU3ZtZVA0eVJQOC9JVVhBSmp2TGJCOVlSZnRwRWNyblNOUktjRW94TWZqWUhVZ1Q0YWdaQ3o0NnRxbE1KT0Z5ZmlFMWNQNWlqaGNub2xoTk1pUkZOcXRMa2pDYU0wUmlrQmlNeVFIczVxeXE5ZGpORnhGNTVwZTFxWXNSNGpLY2Fwa3hRMVJ5bURFOHRxWlgvQ1gzMXpqNDNjL3lvTjNQY3laWTB2MHNubXNXUEpSQWFMcHROb29wY2p6c2txenFLK0hBRXJGc2pjSnNlaE5KdnRWTjZpUXlpUzMvbCtQYjBLbS9qNk1mNVRKN2svTm4zd01KODB1Wk4zZkZ4U1lxV0t3MnBkNFlsMHI1Tm9SMmlZNlNJU01zQ3hjdlhBOUQ5LzZHRWVmT2dZRTJ1MlUxWHdBQmt5aThhT0FJc01IUDk2R2hvWXJtVWJJTmpUOEJsbWZoemN0Sk9zOHZhQTJ2TzI5SVpyU2xZZ1BsRXFER0ZCQzhKNFFRT3QxUW02OWlJVm9hSCt4MGRuMW92djlUTlc1NTAvNXpXK2NDbWhUSzZmS3BxZ1MxbElKM2pTeDBVWFZCN3pJZUQ0VHJZRFJDYWxKQ1VGd1BpQVlURlc0VmVBUkxEdm5ydUxtajl6R1hYZmR3M1hYWGsrV2RDaEhnbkdkS0dUWi9FWkVqVzlhdGhBTGFyS0RTaVRlOEtER2Vhd2l3dlp0TzFudW4yWG9WdGw3elI3V1JxZDQ1aGZQc3JSeUdxdGp1OXV0Q0dGcmtTSW84dEpIQTMzakdKVXJ2UDdHcjhobEJTR3d0SGFTNTMvMkRJbnQwalp6R0N6aU5PTEJLTUVvQ0NyNjFBWTFFYkVDaE9vT1N0WkZPT3NpczdwZHJWc3I2YlI3NUs2a1B4eXdiWEVuTjE1M0MvTUw4d3pQcnJCNzIyN1dWdm9zbmUzamk0Q0laVERLR2JvQ3JJbzNZZ0xpUGQ3RlJJcWphKy93ODEvOWxLSW91UGUyQjNCRmdYTU9aYU1qZ3ZlQ2VBOEJ0Sm9JYnFrdm4rbTdvL0VkcFlwenhWSmZQSUxHWEtUN3dUbUgvV3YvMjZrWDY2blBSRkRnamFKVUFTZWdneVVKS2FtMDJOSGV5ZlhkUTd6Y2Y1RmlPS3p2ei9ERlZOL2dKcm1nNFVOQ0kyUWJHcTVZTk4zT2RxQk5jQUZ0TW9JZkFRNmxBbHFEMHJVcHZLNit0MHcxZkYxOWdaK240dVZjUWdnVnhsM0dMcFM2QzlKV1FWbXQxSmJ6VWJINVFMV2tPaVk0TnZnWGdiS1llbjAxVmFJeE9yYi85TjRqUVZHRXVnQXFSbHozWDdXZm5UdXU0dTY3N21QUHJuM3MyYjBQYTFQNi9TR3JTeU9HbWppa3JTODg5MUpKZEFLWWVhS0s4QXNCbENhSXNEb3FXQ3VXc1ZsZ3ViL0tVejk5a2llKy85ZXNycDFoRk5ZdWVQMEJqUkQ5U3kyQmdpRlFBZ0VGRlBUNStuZi9IRWd4cEZXVXVuYU9EZFV4cmEyaHBscmxzcjRhUG95UHY1NzZYVmNSNzNtelFPa2RhNHpZa2U2aUNIMXVQM3czN2Q0Y2ZaWVkwS2ZkYXRHWjYrRDBpTGVPdmNQeE0yZklnNXR4RkZOYUUwS2dJT2ZsWXk5ejZ0UVpkdXpZeGE3NTNTeTB0ME1KUlRFaWtSU2o3T3dXcW9sQWZEOUg4RktqaVRkQTN2dG9PVVkwQVY2Y1grQ2pOOS9LYTgvOGloR1FKUW1GS3VNK0drVUlrKzVtRFExWE9vMlFiV2k0VWhHRGN5bFc3OENGRWNGNzRrZmFZWlRDbFFYeHk3WXVGb29TSk9hQXhtS2YyR0wwQXIrUTVTTGV1NDZ0aEt4czhmeEVQdXR4UERMR21EYitrM1gvSUk0Y0MzRDkza1BzM3JHVEF3ZXVaZCsrL2V6WXZvdjUzZ0tkemh4cDBtSjFkWWdXUXlnTlJhRko5VHpkN1R0cEpTMFNtN0Y2ZHVYaTludWNKeEZpOUhic3Z4cUgvcnU5RGtkUEhXUGJ6am1TanVMSkh6ekJFei84SnNkV1hrY29NV1BacUM5Z09wSC9CZmxZMWlnYlBXTkRBSkd5OHBqMVZUQmI4SVFxOFVManAxSnI2aTJmRnJXVHN4VEdyNm5QVlozQ2Njb1BFUUtDNW5neDRDY3ZmcGQyTCtHZW0rL2wzYmRQa05xVWRHNGJhNk0xWG4vOVZ6enp5K2ZwaHp6bXovZ3dYckUyc2RBdGhKSWN6WEYzbks5LzkyczhjdStqM0g3VFBDS2F2SjlqRWtXYXBOVkdUOGx2RlNaYitCNlNYeTk5UEZQTmpnS28yTWEyS0FyU1RzcUJ2UWZZTzdlUFg2KytSdkFPYXpTbEJMVFdoUEpjT1RjTkRWY1dqWkJ0YUxoU0VjdnlHY2RIYm5vUTV3cTBDWlRGa0N3ejJFU3h2SHlXTElsSm1lTUlyRlJpVml3VGMvb0xGNk95YVpMcTlQeHpDNEp4cEs1S3NWZy94WWRObjY4RHlab1lXZFZhYjNnb3BaaWJteU5OVXpxZERnc0xDeXd1THJLd3NFQ3YxNk9kWm5TN0M1UjVRWjZYbEVYTXN6Q1M0bk5MWGhoMmJidUd0ZVUxMWxZSFdKdlM3ZlV3eGpKWUhiS3ljb2JGdWQ0Rkg3dTQvWXpINUdVc3BBSkJlMFFGUmlHUXRnTnJ4UmxlZmZWRm52alIxem15OUdzME9RRzNXWWIyKzZLVnBZVGdVQkpqd1VGTkNWRmRQUmNjSW01YzhsWU5zczlraFlSMVAwL3RGakRSaFpOYnFmaEttMnE4enhFZDNRM0tRbmpsK0F2SXN3VXIvUlBjZTl2SFNEU3NsR2Y0NVZzdjhwTmZQc1BMUjE2cWxscEZJQ1cyS3dzaFlFd0FiUkFYajgyYnE2L1RlYWxOdTlmbXdLN3JhTSszVUNVNHlWSGF6bnJmbm9NTnVlV3pkMU9YRFBFQnErMVl4QUtVWlFsRm9OMXFjL2k2dzd6NXdoczRWMVo1MTZFSytnZTBNUVIvNmFQS0RRMFh5Mis4L3JlaDRUZEhqNE8zZklyLzlyLy9ZeVFrSUJtS2xPQTExbVE0WDZCVUFPVVlSMXhrNnF0VVltUE9jekV0eERZcjF0SmJ2SC84eFQzMTZhcHpKOGZMcWRNNzFXUitQUjBYeGF6UHNaM2RPcll0ZEhuampWK3p1RzJlRUVvRy9XV1MxR0tNNEh4QlptMjFuT25CWFUxZDlZdzY5LzV2TEJhYUpwdzc5WUJ6cHlhb0tpLzBYTUd2OHduaGNwVEhMM0hSb0NYNm42b3duaHBsWTBGZVVCTS96bW8rd05yYUFJMG1TUkphV1lmTVpuanZHUXhHNU1NUkl0QnVkMmxsSFpRSXcwRk9VUlFZazVDbUZnbkYrQmh1bWlPN1RpbE43NnNHOEtaNnYwY29FZVh4cW94aVVnZGNjTFRtRW43d2srL3hwYS84ZTViZGNZUVJBWWZOWXVyRWhSTHpNQ2UvU0owMldYMHI2S3pLc1pZWW9vMmkyNk9xTEJXbGlLMWxtY3FQSFJkN01mUHRvcWYyWGNua2MxSEkxRHJyN1JHd1F1VmZtOUZoSHEwVFZrSy9hcmpySUROWUM1TDNFVmRPU3FicURRc0toY0dRWWttNDVhcGJlZnlCVDNMRC9odnhmU2o2bnJadFYzOERxbFdMaDdvWnhQcUxVbFJWN0JYemxtdC9WaTNobk9lL2ZtNTlzZWYwN281WHNjbjg2YzJvL3k3VXJ3c0t2SGlVaXBGdExSQ2NwNUFDWjNOQ3gzTnllSXkvZXZMTHZKdS9TMEdKbnlvdU05YmkzVVZjUUEwTmx3bE5STGFoNFlwRmNmellHZVo2TzJtbEhYd29zYWFOMG9JdlMrWjZHY05oSDVpMjhJblY4R3BHUEc4dEZ1VjhNYi9nenkyR3p4R3hyYjk0enlWazlUbHljQlZnMDA2MUhST2hHdkNWZ1h6QXFpUU9pNHZnZzhNN21RaGJFWFl0N0NNZmxZeEdJMVlIQlgxS2tpUWhTZHAwNXVZcGlnTHZoSDQrUkFrWVkybG5YWlJTeUhsRS9IbVJ5dDBnYUVUUExxdU95SllVdlBHclYzbnFKejltMWEwZ0NFbWFNQ3BkZEdlNEtIdFVUV2JhUUVCVXdJVVNIOEpZVElhOEtpQ1VPbjRhQmZlR3lHUnR1Zyt6eWNqVCt5TjY4dHJ4QzZyWXI2bXIvaUZycWRnV2QxamdTb2ZDTThSRE1DaGw4RkpHb2VwS1hCRWp5UmFENEthRXVJQVJSQUxhSkxneTU2VmpmOHZjTCtiUkdQWXU3RU5uQ2FVdlNaUkJ4bWtXazN6ZjZiYTI5YkVDbVNxMkN1ZjYyUHlkb0NWbVZ0akVnSTgzbmRZWU1wVWdVaUxPTTlkYTRLYnJQc0xwbDg5TXRiUHdVY1Q2UnNRMmZEaG9oR3hEd3hWTXV6V0hVb3FscFZXOEwrbDJPeEFDcXl1cmFKM2dYZnlJeTB4cXdWUUFUTTZkWXlsMUFjbFd1Wll5TlZXYlRBT2JQMSs5ejVMR3FQa1c3dzkrNi9lTENvZ1BVMUhiV2lTWlNtTVlDcW1LcHdUQW9oVVlsYUpNak5jdG54bGdyYVdWenFFeVJRaUJVRHJLa2Fja2lteXROVGJKNHFLRElGV2hURzBOZG5Ib2Foa2FRUk9VSDFmNmk0SjMzMzJYZi8xdi94K1czQ25BWXNuSWkxVUF5bnl5akF0Q05DUHZLa2xaM2JBb29rZVlTc0I1SUdVU29pVXFaMVhFM3dQRTRYMHpDZThxTnQ3WVRJK0NVSmVMeFordHNaUXVCeHdLd1EwY2ptSXFNQ3prak9KZXFpb3FLcUJNaGdTaEhsTXhPaGxIc3FkeklBbzNJSFkxMHp6LzJuTzBiTWJDZll2c1h0ak40T3dRVWRuRVdlSkNpcjNPTTZMeG0wWkVZczZyRDRUZ01JbkZtQVRua2hqWjlpVUhkbC9ML010L2krTlVsZTBzSktuQmorcUZYTkpkYUdpNGFBenczMTNxaldob3VEQlN0dTA2eUNjZS8zeU1IR0ZSR0VRVVdsdUMrTmlyZkJ3dG1oN0hyQjRYa09OWjU2TXBGVXVKMXI4MkRqM0t6RlEyKzdKY054ekx4bGt6Z2EzcDVkY1BIOENIZ0RZYW02VFYraUJOV3dRQmpZbTVjOG9ncUhIbCthUTBTbGY3VVJtYzFxMHdwNFd2bW4xZVJKQVFpNmdtTFZDcklWZDBGSHFpeHI5dk5SOFJkTkJWL21FMVA4UklwMVFSVTlZSjhQVlRMUXBkL1ZNU2k3dVFHRkdyZjQ5N09UVy9Ta1VOSVdCTmJMK0tSSXN1cW1GaHJUUmFhWXpTOFJvU2tCRHIvSkZZNng4bHdTUTdkUGI4YjNIK1pITCtFTTFvVUxKait3NldsNWZ3NG1oMVVrcnhPTzk0L2UwMytMLy96YjloR0lZa3BDeDA1MG16aE9BOGlDZE5XM2hSSkVsS0hWaFgybENydVNUTnFoeElkWTZId2RicEZ3all5ck90emcyd2FTeUlVZ3FNQmwrQUJMU3RQanJqaU8xVWVaNU01UlNJUnRrRVhMd0d1dTBZRmZWQlNHaGhwTTNlaFd2UUxrR0xKU0VqTnI0MTFDNjc5U05tTUZmRC90NmhpQ2tpQ29VWEg2L1A2VVRlK2dSSXZQRVNoTlV6SzZRbVlmdTI3VmhqeUljNTdWYWJvc3p4SVRBL1AwZnBTdnFEQVhQemM3Z3lybFVMNC9OZTdYamN2UzAvLzh5dy9pTStleU81eWZ2SFQ4NWVQOU9wU1FCR1djVEhtMUdsRkQ0RW5IZmo2OUw3d0o0OXUzbjM2RkZPRDA5aHNIZ2NoZVFibHQvUWNLWFNSR1FiR3E1b3BqMHYxdzEzMXRIU2NRU3NGdkxqRjB5OTdnS21Id0owUFV3ODFhbHB4cFpJVmZOck53R0I2WU5jTjJpNEVJSUsyTlJ5K3V4cDJ0MFdXRTkvdUlKSkZhKy8rVHIvKzcvN1B6RllIcjczTWU2OS94NTI3ZDZHTmlXbnpoN2oyZWQrekZQUC9JQzhPRVpaak1qU05ua3hyTzdMQWdwRFdZellNcEplWFErcUt0dEtqSW1wQThyakZTQU8yMnJoaGdPaVpSdFZNbmU4eGtMSlJHRUNkUU1CNnB6UjZySzBXWVlLaXFBVkJNMW8yRWVoMkpiT2M4dE5kM0xuUng5aHovYTk0QjFGc2NhcnI3N0VqMy95WFU0Tmp4QUlNVys0WHJXYW5KS0pWbDEvVGE5N3FycVhNa29UWE1teW5PWG5yenpQanAzYnVmUG11eWk4SXMrSGFLM3dFbGhlUGt1ckZRc0RWMVpXU0cxMllTZjNVbEdkQXkwYUFyUlVob3hnLy9iOS9PcjB5emh5QkltRlhxNXhMbWo0Y05CRVpCdXVZRDZBaU94RmhpVFVGdS9mSWxWdzl2ZjNHWkhkN0hlcElsU3FLcXVXYXJoYlFkenZhamNWOWZ6S2prcE4xZGlvU29UVTBhNTZ1djZ4Zmo1VVViRlFMZXQ5VGlXZ0pmNCtFWXp2YjZyR09iNFg4bEF4d2pxcHpCb2ZwN2pQdmhKNmsvZW9xZjJQeDc3ZWxnczVmNHBPcjBQaEMzSTNBT3N4bWVMcFo1L2lxMS85S2xZbi9NZS8vd2ZjZS9jRDdOcStoOEhxQ0hHYXEzZGZ6YUZyYnVUUXdVTzg4OVpyREVmTE9GZVM2QmpsdGdvNnJUYkJGU1RhWWpWWXBUZE9sYXBjSnp3aUJRR1pERkFvQ002UnRxSnJnVVpJa3hqL0pNVHpsbHBpUkYwcHRCSTBBYTBDU2xXM1RncEM2Y0NYS0FrWUJJdGkzL2E5ZlBvVGovUDRJNThoYzR2MDdIYlNrTEZ6YmhkWGJkL0hYSGNlU3NYSmxSTkVzNjlBMFBWMVhQZGJxeis5RXkvY2pRVmExWXRVSFltUDcxZ3IxaUFFOXU3WngySjNrZVd6cTJpalNWc1p3K0VJWXl5dHJNWHE2bXBsMDZWalhIK3FwWnl1YjJDMlNQQSszK2QyV21lZjYvM25YWTVVWXlMamF6Z3VOUmJVcVpnajdCeFpsdkx1MjBkWVlobVB4NXR5Y2svVDBIQ0Ywd2paaGl1WVJzaEsxU0pwdyt2VzVlNnBUWDRTdGJYcnduc2pWQWtKTTZHNTl6eU5vbVRTeU9EOXZoKzIxQkh2a2VvbW9CNlNaa3JJMXN1dlJYNGxZS2ZuaTVJdG83SHY1ZnlKRWtxWG8yekFaTUxhNEF4dnZQMGFYLzdxbHppUkgrZWYvTjQvWWYrK2ExQlljSXFXYVpPcWpHTGc4UU5QWmxQMlg3dUwxMTc5RmFOOEZOdmJFaE1wZ3F1Y0crb1daOEltVTJpcExrTHN6cVdCTElPNUxsZ0xaUm5QajQwajE0Z1BxS0F3VllKS0pobGhmQjZyTE4rcXNyNStMR1JkVXAxaUpVR2hhTlBpWTNjOXhEMjMzVXZpV3lSK2preDY5TS8yeWZ1TytlNGMxK3c3Z0RLYWwxNTVrWUlpdWhSTVJXUm5oV3g5MXFhdlFXWXVFeVc2YXFzcnBDckJVN0sydW9JckhZZXZQa3krVm1DdG9kMXVnd2g1WGhKOElFa3lGRHJlYk5YTEc5L0FUVVdFei9INVBkL3ZGeU5rbFdoMGRjNWp3VjUxTklUcWVZMFJqZmVCVHJmTjhuQ0ZkMWJlUnZDVVVzYngyQ1lvMi9BaG9Fa3RhR2k0WXFrVUJoTXhYSC9oMXMxQWE1dWpTbnB0OXAxN1NSR1lDSHBtcCsvcC9WT0NmZHpzWUlzbHJKK3ZxNVdON2MrcW83YlorOGZIVlgyQWFZWEtzekpjSXV0b0Z1Ym5lZTZYditBci8rRkxuTTdQY09QK2o3QnoxM2IyWGJXYnBkTjlpb0hIMmhRbFFqa29TWk11VisxWVJIVE9ub1ZyV0Y0ZTBiTTlDbGRRVUtEUkJNSlV1NGlOQkVCSmlrS1I0WEgwOFhtZ240TlNrRXd1TDlxMENXZ1NNandlUlJTeXBtcVVBSUZKdnZDa3NVQ2V4MjFRR0ZJeURpd2M1T0NlbTlpZTdXYmw3SWlXU3BodnRXa3RHQWFEQWFQbGt1NUN5b0U5MTNQYjRYdjQ0U3RQSUpTZzNQZzZDVElKdHNyWVRtcmlmREI5Z2hRYWF5eWhFdXMyTS9qY3NlS1hlUDZsbi9LUlBiZHljTTloV21tYjRYQklZaE9DRHhSRlFiYzdoeXRtbFY3dFdxQ21iS3d1UDZwOGNOR0VBRlpiRU12MSs2L254Ky84Z015a0RHUndxVGV5b2VFRG94R3lEUTFYT21NWGdKcnBuK3U0MVJiUjUybnJwUGU3V3BrZW05VEU4TTcwZEgxTzVqbm1TL1g4OVBRY2JnYVQ3Yjd3OGRGQUhQNk9JdlU5TG1QOTlsMFVnZTI3ZXZUTHN6ejE3Sk44L1crK3dxbjhYVnEwMkxkL04zTnpiVTZlUEVtcXVpeDBGa2hWaGdtV09lVW84NEwreVZYMjdMMldmL1E3LzR4QmZ3UXFrSTlLYktLeEptV3R2MEtXdHJjOGZrRkJmekJDcDVDbGp0ZmVmSkVmUGZVZFZvWm42S1FKM2dXdU8zQURkOTMrQUx1MzdjY1hobGJhUTByRmFKQmpFdzFLRWJTcmJraWlEK3QwaDZ5RnVlME1WZ2RRUUdKYXRFeUhibXVlY2lVbDh3bWpZWjk4WlVSS2kxNm54M0E0WkhWNVFOYnRjZU5OdC9IOVYzNUFkRVZ3bTk3d3hKcTBTVzU0WGZwWG8xQ2tLc0ZwalFzRmE2UFZ5a1lNVnZ3U3p6ejNGTmQ4OWxwYTdRWE9ubDJpbmJicGRSY1pEVWJrZVU1eUJYOUZhb21GbFFhTGN5Vzd0dTFrcDkzRmNUazJlZEhGRDBvMU5GeHlydHhQYVVORFEwUW1ka2F4WUh6aUpSQ29qZHVyWXEvcGlOWFl0YjB1NHBMWjZZYjFySjhmQlpFYUwwTm1wNHJaNldienFmeEYwZFZ5cDZmcjUyODJyVVV4VXp1MjFUZnpKdk9ub25zZ1ZjUlZaaUxaazVjS0tGMFoxbGZydndneEcxUWc5NnY4N2F2UDg0VXYvaGxuUmlleGFITDZGR1dmYmR2bldUbFZZTkc0b21EUUwwaThvWk4yYUpzT1NoUm4zajNGdHQ0aGR2WXNSWm1ES05xZEZnck5LQitpbFdGY2tiWnVLZ3JFYURBQnJVZXNMaGNvOXd5YW5GSHVVRmphYWljSGRuMkVxL2Zld0dDbHBKWE1rNmdXdy80bzJqN2hDTnBWZStRclA5eUFxcEp0eFNsNjh4QUtJVkVabmFTSEw0VFFWN1RibHQ2Mmt2N3FNdG83V3FrbGxBbEJBcVVFWENsNExDZ0xxcHdSckdGOHZVOXlsSlZVN2hXVm5JVW9aSjN6YUIyZmM1WGZyRFlnenZQYTBxOTUrZVdYU1QvYUltMmxsTTdqbkNOTlUvcjlJWW01dkw4aXh4Mzdab1phQWtvU0FCSU1oWGRZTVNRbTVjWWJEdlBtUzI5TTdpY2JHajRFWE42ZjBvYUdEekZiVmJ6cnJYVFlwc3RZSDVGVUc1Y3hTZkdjckFPMjFudm5XdDltVDE2QTY0R2UvcDMzUG8zSFRJL1RuYyszQzdPZDFXYW41OXlualV0aXNyYnBpUGRFRGFqYWtWK21HMURVeEdGMzBiWHZiVUIwems5ZmZKcXZmZXVMbkI0ZG81ZDJXQ3ZXVUZnV3RpOXc3Tmk3TEhhdVFvcUFWdER0dGpFaFFVcGg1RHdxTVlDbVAxeGpkWFdWc3N4SjA1UndPbENXT1VtU0VFTFk1QnJUNHkzeUd2SjhnREk1UjQ2L1M3OGM0VkYwN1R3RE4rQ2Q0MGM1dVhRS20zUTRjWFNKMUhScHQzdUVJbUN0eFllQ01PVjdPMjZ6cTJJaDNtZzBZc2ZDTnZMVmdyenYyTHZqQUl1ZG5YZ0h4Y0JSMHNlWUJKdTBHT1JEenE0dGtjMW5aRzFMR2Nxb3QwUXhicThxOVZHdmorL21OeEoxV2tWcVVvWitpQTlDbWlTNE1vcHVaUlhPT1VZTWVlYWxIN080YnhzM1hYOHpxNmNHckszMW1Xc3ZrT2wwdkR4UkFVRUk0d0xEOTNyZGJQdzhxM1UvcjcrRzMyLzZUKzFEUEQwNlVqdWdLV3Z3bzV4RUovZ3ljTjMrNjdFdmFWS2RVZmk4aWNZMmZDaG9oR3pERmM5WXBGVjFGMnA2dXRuSXVxeDdiLzMwSmo2TzUvMVNlUi9mT3RNK291UG50RXdOaTI1YzVQcnVVZlcrelc2QW1kcHVtVjEraU1WS1N1cENwc214Z2FxRjdQcW80cVE0ZTUyblpkVjZjM3I1TU01VG5jNUIzYXhGNzR5U25CTHhrOU95MFNkenVyTlg3YU1aNnFtYXZGdFBiOWQ3amloWHV5dWJ6RisvQ1BFejh4VlV6UXRHeEFpWWpjVldZcEdnMFpXL3FuTU9tMW1VZFloV0RFWnJwQzNEeXRvU0o1YmU0Vi8vNmY5R3NBV2VrdVZpaFlRV0FlSGxsMS9qL3JzL2pxaEFFVVlZRVhTU0lFR1JseVZLYVd4YUlza2EvKzVQL3hkKytkb0x0SFZDSG9iSTJOODJqTTlLTE0rS3BYV2hLcy95ZUdJamhPaGNRT1ZBQWNLeWl6bVVSd2R2OFNkZitHTW1GbTRUZ2E2QnVhU0xLejF4RDZDK0Z0RU9wVDNLT3hDUHhaTFE1bUR2UnY3aDUvNkFtNjYvblNOdm55Sk5PNHh5UnpLZmt2dWNrUjNSbVU5WkdwN2dyVGRmd2hKOXZyeFRNVEs3TGllYytoSVFLcGs1d2VNcGZUbitmVmdPNDJrVjhIbDhVNThWL2paL2tSMXY3R0xucmwxMDAwVjBvZEJlSTk0U1RDQW9oMmlQaU1jRUhZOWlNT08xaksvalRWclUxcHMzUFovL243MzNmTElrUysvem5uTk9tbXZLZFZWN082NW5kc3pPWU93dUJvc0ZGMElBQ3dYRkNES2dVSVFpRlB4SEZOSUhVV0FRQUVOQkJjakZBdVFDeTRVUkNDa0VrUWhSd0lKd2kvWGpkbXgzejdSMzFkM2xyODNNWS9UaFpGNVhWZDA5M2JOVDNkdm5tYmlUOTZiUHZIZW1mdm1lOS8yOVpkdmlUUThZRThzbjMxYy85OUhOZk5jNjZRc1BMZjUvZUpYSE5BNW5jNkphakZRQ3BSVXo2U3dQVHozSzJmWlpBQW9LM0RZUEE0SEEvVUlRc29IQVBjU2RWdUZQL2swY0RvMjdNaUs3elk1dmMyaDgySnF6M0d5UWxmRHgvZ2lPUm9ZL2pnZnI2UEhseU5SdXMvMVc5K05XT3ZmaklyRlk1NzFYcXdpc1A0NHNXK1NDVWdxSElWS1N5OWN1c3JCL2hzTDFPSC8xSS83RC8vTU5ERDJzMDJVeFV1UUxtMUJjdlhhSjE5OTZuUys4OGtYaVdoMlRGNngyYmlCdFFxMVdKMUkxK3FMTHlRcy80dXJhYVRRYmRLeHZhcUNrbzE1TDZPYytFaW1Vcit6UGl3a1ZwR0lZRVhvQVpzdEk4cWhYOGNqVXdWclI4UTlHS2tMS2hOd1lIemtWQlFNN0F3Y1JCWVhOdU5nK3pRL2YreFp4bzhiOC9INWkxU1JiMjZDZGRWRjF4OXorYWFnVm5EdHppcmRQL1JCQmppcVBiOXpJc2F2ZjdjUkl3MjJMc3ZMaFZvc0NiUTBmbkh1UEY1NThpU1NwVTQrbWtVNXVpalE3YlBsN0szdVRXWW1SanUyaXdxTzNhL0I1NUJscHE5Ly82UExid1padUc1c3VUMVFsZUJKdGNuQXhrWXlRVnJGdjdnQ1gycGU4clJrR0hZUnM0RDduSjhmWlBCQUlCRDVObkVTNkNHbGpmTTd1aUUyLzhKRnVxU3hUVXpVdVg3dkkva083c2JMZ3pMbFQvTUVmL3g3TDNVVzA2K05zam8rSUZraGhnSnhXc2NJUFgvODd6bDQ4UVNkYklXMDRhbE9PWkZxVFRqbjZlcG56bHovZy8vdm1mMlJ4K1JJV1RhMVd3MklvcktYVjdWSm9oN1hlUmlzdkhDcVcxS2NicE5PcEQySFlBbHdNTGgyK2lMZDRwZVVyTHRlUHdmb1lTSnhLUkFTRjBlUkYzM2NCSysvTm9PdXRnTGlXRUVjSlBicThkKzVkVGw1OGg1WmI1Zkx5V1V6VVJkVUxjdG9zdDY3eTl2cy81TzMzWGlPamphUEFVZ0FGb0wyQXJkSVhidEdWNzNZUUVZQmx0YmZNaVpNZlVGaE5ZVE5Ram1MWUE1aGhIbnI1SFpmRmNqdk5yZEtRaFBBcEZNWVlsRklJNE5DQlE2VFViK3BvRVFqY1R3UWYyY0I5ekMxOFpHM3BJenN3MEs5eURJYXZiU09WdDhzdERORnY1U2M1T1dQVDhzbGg4TzFPNDJOK0h1eCttMmpNYmUvdngzejlva3d0MlBiOFIzdzliN3FmYmJiZmp0dmZuMi9US3dhL3YySGlyaFdHT0ZGY1hiN01vYVA3V09zc2MyWHhQTC96ZS8rR3RsMUJZVEIwUVBpaFlJbEZLb0Z4R2dHMGV4dDhkT29VaGU3Um1LN1JtRTZRMG5COStUTGZmZTN2K0l1Ly9qT3VicHhEMDBmZzI1TmFCMUpHekU3dElrM3FKSEVOaDhSWWczTVdYUlNZWXFUS3h5bUdycXczZTAzK3QrTkRyZHJaa2RGdkJTSkN4U2x4bkpJbUNVV2VJeXdVaGFHdzN0MmdWWFJZWFYzbHh2SU45dXlkWjNhdWdZdHpGbGZPYy9MME8vemdqYi9uMU5VUHNPUTROSzZ5K0tvT2ZhZGY2aVFDMG5xTXlTMFJDYTBiTFI0N2NweDYzQ0NXRWIwOFI4YVNnWTl3V1VUcC9YcDlhMXduN09BM09MSHJMVS94WS8vK2I1clA3WnMwK09ZbVZZT084dWZuQkVJNElobVQ1WDJFQkpVSStxWlBPcFZ5NXR3WjJyYUZSazhrWkFRQzl4OGh0U0FRQ0FUdUNJbXdzZThPaHNBNTcwVHJoWTNHQ1VkWGQybk94S3kzcjNGdCtUeS84ZHYvSEV0R1BVbHA1MnRZSUZKbHFZNEZiYkxTQTdZSEtKWjdWL2ptdC8rTXYvNzJOMHZKTEZGRUdCdzVYWXowT2JyT2diVUNTVXdzRWpaYVBTclhZSXRBeVJvV2pTTWZuSDFVVStpT0Y3VmJGUjNkak1uMTAxb05veVc2RU5qY2xZUFdGa1dFUUE4eUFBb01rSEZtN1RUbjF5N3h2ZmUvemE1b0YxcjNLZWhUcTBWczlGY3c5S21uQ2Uyc0tLMjk3dXdidWhYYStCU0lXcFN5WHF6eDlnZHY4K1V2SEtiVmJwSFc2eU0reGFKTWk1RlZyc0dXQW5hbjhRMkh4MUZLWVkxREdPOHQyNmcxbVorWlozSGw2azZjWWlEd2lSUEdGZ0tCUU9BTzhCMlVvbks0UGFKeVlYREM0cVRCeWh5VkdFUnFPSG4yUGY3VlYzOGRoY2FTVWJpV0h6SXZWWWVzREIwQWcwVUlpNlh3NjlLanp3WXl6VkZKVHA4MU1sYXhkREUyUXltb3B6VjhBMW1GTVFKRmt4b3p6Q1g3YWNvNXBFMFFOaUlTTlNJbFFJTHVtN0wweXcvZGkvTEZUVjZqNndnczA5TU5oSUNzcHpHRm95R2FMQ1M3bVdXT21Eb3hEV3JNRU9GYnZTWnBUTnlJY0NwSDB3RnkrbUtEZFpib3NFcGJyNUhUeFdGcFozM3ZGU3UyS293YWVkMEZwbXorMEN2YWdPUE44Ni9STlczYXhRWnBNNkhLRVJaanFRV3liSTRtN29uMGdnR0RMb1pWZ2Fkdkw1ekd2cEdHMVE0bElvU0dnM3NQSVZGQkFBUitJZ2dSMlVBZ0VMZ2p2S2dSVHBhUk94K0pSUmlzTEhBaVo3V3p3dExxRmY3b1QzNlBqQll6VTNVVUNSdnRWV2JubXJRMk90aUNRVWpCVnJaSjBoc2xTT0VMeWd6UXl2SXR6eUJ5RXAxcEpBbTdHSVBRQUFBZ0FFbEVRVlI3cHc1eC9PR25lZXJKNTNqbzJDTVlZN2x3OFN6dmZQQUdwMDYveTNMdkdzNElxcmE4RWdiaDFVcVVDYll1UW9MTk9abTlWZ1kySmlMaHlNSXhuanIrTEVmMkhNVVo2SFU2ZkhEcWZUclpPbWRXUGtLUWtXVUZTT3V6R1NKRE4ydFJGRjE4a2t1TzBkbEFuMFlSREJwcnVXMm1ud0JSSkxDNVFlREk2UEhHdTYveDdPUFAwN2Vkc24rRUt1K0Jid25yazVVK2lZWVlueVJibjR2V21ucTlTZDR0c05wUnE2ZXM5YnNjM1grWXhva2FYZHFmOG5rR0FwODhRY2dHQW9IQW5WSUtHL0FORHB4dzNxNUo1QmlWc2JLK3lOZi82Tit4bWkrU3hoSEw3UnM0Tk0yWmxQWDF6c0JPelZwUUNxenhBazVLUVc1Y1ZWZmtjek85czVLWExEN281czJ1akVRUjg5aUJKL21GTC83WFBQSFljOWhDMGV2bUNHTjQ5ckdYZU9iNDA3ei8wWS80MW5lL3lZbUxid01aU1NUSUNqUEljUjA0czA3bW9wYnBzWldJSGRPNE51TFEzQkZlZnY3elBQM29NK3llMmtkc0U0VDJlL3ZDQzEva25RL2Z4bjNyUDNOMi9ReHhVcU5uMTRmNXJrcGpuY1BZWWQ1dUZQazZybHd6bnA0N0psNXY3aU43VzNoZk1vengrY2w5K3V4aWl1KzgreTArOTduUHNiYXl3blF5aHhRU2FiMGJSV1hRNnZOUzd6V0dsbXNlaFRHR1JFWCtRY1JBb21KY0YzYlA3YUZCRThIU3pwMXVJUEFKRVlxOUF2Y3hINi9ZeTNtalJaeDEzaXAwRzFzcUljVGdOY3FvVCtUZ2hSMjhIOXZIeEhSeS9sWXpSbjFtQi92Y3p2TjBaSnRxdmNudG5ITmp4VkpibmYvb0RzZDhkQ2V1YWRUZnRUcFBZQ3hQY0t2bG0zeDZSL2JqVjVnc1g5bWFUY2V2OWxsNTQyNnovRmJiajdMVitZOGNhTnduRk1BSnJIWkVVWVNRRnFtZ3AxdkVOVWM3WCtQNjhpWCs1Vy8vS3QxaUZVdEJabnY0aUswdmZxcXVWMUJLa0twSXpJSTJEQXAzcXRNWm5GWVZPWFV3SFUrREZUdzAveGovK0IvK2R4dy84alNpSDFNVHM4U21Sa05OWVRKSHFoSVNFZkg0WTQ5eCtleEZPcjBXcVV6SmJVWlVSbWFWOGlKU2o3Z04xR3VnUzdPQVpqM3hKMWxldnlSRjBlUy8vZVgvbmhlZmZJV2tTRW55T2xHUkV1c1UyNGRFTmFqSERaNTQ4aW1Xcnk5emJlMktOM2hJREdoLzRkYU8zMnc3ZXAyYnhLc3ZUaE5WWVYzMTVkd0ZVZ0xXNzAxVGtKQ2lNODFuam4rR3ZGZVFSbldzdHBqY29GU0VVakhXK2h4b01TWWNod3greDZPLzFhMThwRWUyMldxNTJHYTVmK0dMdlFEdzltRGVicThzVEhPZ1pJVFZGcVJFU0lkUWlpUk51SFpqRVZkem5GczloMHdreHZndnZXcWlFUWpjVDRRVW1VQWdFTGdEZk8yUG8zQVpLTXZsR3hkSjZwS2NQdWN2ZmNqWGZ2KzNzV1JZaXJKZGdON0dOMWZpQjhmR0d3Nk1xNXl0My9lTG5EclRQUC9abHppdzZ6QTEwY1IwUWJjZGtVNFJXUVFkZ2VzbzVwdjdPTHh3ak9lZmZJV0VKbG9MVXBwWUYrT0lzY2EzaUsxRkNSR3FUQThBWVNXU21GNVBZRzJLb0VuRUxETnFMODhlZW9GOTA0ZElUWVBFMUlseWhjb2xOZEdreGpTbTVaaU81Nm1MR1o1Ky9LZUlxWlBJRlBvajF6RnBrTERwM2xUM3AzSlkyTnljNFk0UllIVFpDVXdvTklZMjZ5eHZMTkhxcitPa1E1c2NLU1Z4SFB0R0E2YkFpaklDZi9kbmNOZE1wbnZZS2srV0VkY1A2M05rblhZb0oyZ2tEZWFuNXdFR0loWW1STFRZN3JFeUVMaTNDRUkyRUFnRTdnUmhjVkpUYjhaY3VuNkJBNGYzNEdUR21mTW4rTVlmZlkwYjdZdmJpOWlCWHBBKzM3S01jYnJ5dGVYL21yY29jSkxFVENlN2VQYXA1NmtuRFpTTmtGb2hDNG5Ta3Vsa2lucmNoQUpFb1dpdDl0Zzl1NWY1ZUMrT0JHaWltQ0ZoQWNrc3hqWFJSWU5tZlIrU09XQ0cyZVlScHRLRHdCeUNPUVM3Z0ZuNkp1YW5uLzk1NW10N0VWbEVReldKWElMUWlwZ0VhV0pNWDlDTVo0bGRuYWVQUDhmK21ZTSs3YUJxS0RiSWVaVVRyOGkvQmxGWWYzKzgxdjJFUkN5VWJZWExMSU5VNGJBVUZDeXVYdVhxMGxWVURGcjczT1EwVHJEV1VsaURVQTZMdVVmeVpNczhrNG5tRlU3NFRtMEQ5ekFETGpjSUkyZ21VK3pldFp1WWVDQmtoUkJqMFZncGd6d0kzQitFSE5sQUlCQzRJeXdxZ1V1TDV6ajY4SDVXV2t0Y1d6N1B2L3ZHVjJpWlpZUnZUOEIya2RqeE5KR3RZbnZTSjR0TzVva09odHdqSkFseDBtQjJab0ZPdTRkS3BraVNoTWpGQ0N2cGREcEk1UkJTb1pRa0ttSmVmdUZ6N0Qyd0Z5TU5tZmF0YzFXc2VQZmtlL3psWDMrVEhsMjZIVytldFcvaE1ELzNoWjluNzhKZThrN08zTXdDamJoQnY1dlJVQTJtWkpQSVJkak1VcXZYY1pGREZ4cXNJTTl6bEV6SzY0aVlhYzZ4ZTI0dkZ6ZE9lMWthbFkzRnhycUpWZTl2RmczODVNU2pjOHJ2VHdnS1Y2Q0ZRVG5KYW1lRkQ4K2Q0dkhEVDVEM0xjSlYrUlpsV29seU9HTjhWZDZPWWN0Q3cvTFRJSi9KK1k1N1JvNUVXTDJuaGRFYW9TTmltVENWempCVm02TFYzL0NibFVKV0NER1dsaFFJM09zRUlSc0lCQUozZ0JVT3JYdE03VXBaNnk1eGZma1N2LzVidjRxalR6Mk4yTWphVElwWU1SS0pyZGpjbEdMaXM2dHluSWRUdndjQktFUWNRYXpRb2lDemZZUkxpQ09OY0JGS1NLUUNiU3k5ckVlcjJ5RXRJcUk0SmExSjZnSmtIQkVsRVhOWHA0a2pSVTk3NzlIQ2FQYnYzOC9Eanh6ajBMNGp0RmZieENMRkZnNmRHM0NDV3RKQUZWRFlIR3ZCQ1lNV2xvS2NBazJVeExTeUhpcU95SW91cy9PN0VCY2dVUkdGMGFVZzMwb01iaVhzelRidjd4U0pRS0JVaW5ZNVJaNlhleGIwNlBIUitRL0pmenBIcVJTbkhYbmVSd2lIVWhMck5NWVo0aDBWc2xzdzFnUFhZcTFBWUZGSXJJaDgyNFRDUWdRcWtzelB6WE4xOGNyWUxxU1VZK2tHZ2NDOVRoQ3lnVUFnY0VkWTRwckFTamgxOGdSZisvMnZFdUhvazVNNWNHVmgxMmFpVW9SU1JteTNaNnRHVmxWZkxZQWNnNUhRelhzMFoyZHhmVzk3SldWRW9pRFRQWnl4aU1pM2lUMHdmeEF0TW02c3JXQmNUaFE3dE03SlRNYVZ4Yk5JVllET3lFME9PQzVmT2NNNzc3N0d5dElpcG05SlpJMVVwQWlyYUVZenRIV05oY1p1ckRMMGl6NFlpeEdXUW1wVVRaYnpjNUtaaUxWK0Q2QnMrT0NIdXJjTk5rL2M1NjNmZnhKSXBJeDhvcXp3NGswcGIxdTFsQzF4WmZFeVIyWWZRa3BCMGMrSjB4U1VvSzhMVUw3RVNtMmQrTHlEV0VvL2k3SWcxWHZLUnNLblRtaHJFQnBJSEh2Mzd1VzlSUWJyZ24rSU1jWnNXeFFaQ054ckJDRWJDQVFDZDBpcnRjYTExVXY4d1I5L25SNGJURFZxS0JMV3U2dE16ZFpvdC9wK3haRklySThEUnNOSXJHU1RlcHQwcDVpTSs0a3lsOVpnYVdVOVRwdzl4WE9mZVI0VlNaelNPSm1URzB1dEdaRVZCU2hEdTl0Q0NjbDNYL3Q3L3Z6di9weU1EU0o2V0hvWURBWlh0aXYxclhJRnNMUjZoci80THhlcHgxT1l6SHJoUmxUMkYydnlUejcvVDNucDZWZFFjVVNSOTFDUjkra3FaSWFOQlU1Sm5IVVVhTlpiYTF5NGRCRWxGTG5SQXpzeFVXWUoyL0k2TjB2VjBielBpVVYzcGJWOHJxM1JwWHlXUU94RmJJUVhmU2RPbk9EZ1MwZElvcGllN3BFMlVvd3o1SG1mUnJQR0xaNURQa1hHODJNcnBKUTQ0eDBPdkcrd0t2T01IUXJGd3NMQ1lOMVJJUXVFcUd6Z3ZpRUkyVURnTnRndTVuSzNNWXV5aFh2Wi9uSjhmclgveWFyazZudytyWGpKNVBIRnhIbHVaNTUvTzJ5MS9jYzl0enZ2cmpSYUpDTkhXcEJTZG5LYVhOZjd4RHBuTUlDVEdUZldML043Zi9SVlZvdEZJaUZZNnk1aEthalgwNkdJclhEamJ6OU9qL3RLNUkzdnltS3hySGZYZU8rRDl6aDI4Q0VXbW50SjZnbVJpdWwzZXVROVgvU1QxQkowb1ZGeHpMVzE2N1JwQVJtYU5yNVczeHVaUlVKNit5dmppQ05GSEVrS1hkRExXc2dxeWtlQklzWUM3NXgrazRjZmU1U0YraXlGTThScERiVEJHa3VCbzVha0dDdG9GeTFXV3N1Y1hUcFQ1ZzVEbWtyeS9xM3V3WSt6bU1wYlZobVhsWTRKRWlVVXhoU0FKU0xpN0tYVDlGOThGZE9ZSWR2b2tzWXgybG42ZEdqRUNkWm9CdDIrbkJsTVRSbDNkbGI0Z2pBbmNSaWYwMXF1QnhicGhoTGVZWERDTHhlK0V3T21uRzY5dlhmTkFPdTlpM0crcTV5d1pmcUpROFFDVzBWaGhYL0ljT1ZMUk5DTUc0T2MySXBRNUJXNDN3aENObkJmTS9CN0ZXS1FPN2paaDlXL25LdW1qTS9ib3ZLNEVtT1ZScExiK0pDT2Jqbm1Nem80bHkzT2VYUWI2NGFxZEhnQlk4Y2Z1R1ZPN044TFFEczQzN0ZoNktvQXBES2FIeFdmazhjZlhzQ200NDl0V3k2dnZIZHR0WEJ5K2RnK1IvY3pmbE84VjZnZDMzNzBQakFoaXJmYWZuU2Q3YzYvV25saWV5OU1leUFzd3ZvV3M5TEdPS3ZLYW5hSnRvWWtpYkJDZzdKMHN6WkpYZEhwYm5CajVUTC80bmYrWnh3OUxKYkMrVEo4aDZYWDAyeUZHOGhYTjR6SWJxSFZ0bm9Xc0JPZnZMdUJvVy9ibkxsd2l1OThmNVpYZitwbk9iYnZFV3dQZEc2UVVqSTdONE9vQ2E2MXIvQlhmL1hudlB2Um0rVDBjR1JFMGxKWVg4Q1VpQVRyUUtGUVJONGpseGhYQ2wyTFJXT0Fncmd1S0hxR2QyKzhUZk9OT1g3dVo3N0k0ZjJIS1ZvWjYyc2RwSkhVYWpYNldZdW9ycmgrNVNMZmYrMXZNUlJvY2xDQ3JLZ0syZXpBd0dCclY5WmIzSmc3eGpJSXFUcDhXb1FHUVlSRWt0Rmp6YXp4N3RXM2VYNGhRaDRVWEc5ZklZNWphbnNVYTUzcjFGUWRJVXVuaFZKd1ZsT0p4Ym5LSlhneTVpd1J6dUlLaTNDYmwxY0M5MmJidzJqVTFQODZyUFJUNlVCTFNVNE9rU3ozVjFseitmOTNhSlVUeHhIejgvTXNMeStUSkFsRlVkRHBkSWpqbUtLNFo4TE5nY0JOQ1VJMjhBQno2MmpQbHRISVNnK0p1NDBJanV4ejVIaGovUUsybUQ4bzlybUxZMWZYZGF2Qnc2Mkd1TjNJKzhrN0tOM3RhNDI3elN5OG02aTB2NjVxT05ZZ3lvaHNaUzh2bmNRS1h3NWtUSUZLNGNxMVN5d2NtRVc3TG1jdm4rSlAvdlFiR0hvNGVoL3IyRzZiWWVCYmJ6ZUpKYTBKc242UEd4dVhlZk50aStuMldUMytISWQzSDZVeE5RVllycTlkNHVLTjg3ejc0WTk0NS9UYkxQVVdjV1RFOWRqM1o1QVNkSVIyQWtsS2d5Ynp6WGxBc3RiWklNSFNwa01jUmFTcG82YzcyQmpJTXJwMmpYZlB2WVpMZWp6MTZGTWMzWGVNdVQyelNCVE9XRmJYYm5EeXd4Tjg3NjF2YzNiOUl4d1pTVU9pVllUdEY5WHo1UEJaNW1QZmxidWtlb2d0ejBPVmlSOEFCb3RXT1pkV0x5SSs4am05UlZZUXh6R1JpTWo3QlNtMWdVamNpbHZsbVFwamJ6cUNjYXZ0NzZaNVFSWm5MRVhYNlhRNi9sd21Jck9Cd1AxQ0VMS0JRT0FCUlNKY1ZOby9sYTh5ejJFWXVkTFVwMnFjdjNTYUE0ZjNrTmtPcDgrZDR2Zi82R3VzNmV2OGVJZStiNEd3NUxvTkFxekxXTzVtdlA3dU9sZXZuZUhnd21GbXArZXcxckxlV3VQSzhpV3UzTGhFbTNVc2ZpamRtUnhUQ0x6cmE0MmpCNDd4MUdQUDh2RFJSNWxwelBoMnVNNnh0TExFRysrK3pzbHpKMWpyclBva2hLSnlIT2l3MGozTGF6OWFaUEhhaHp4MitCRjJ6KzFGV0VHLzMyZHg4UklYcmw1Z3NYc1pWeldIeUJqMk50ZzZjUDNwY1F2ZDFqWWQzanp4Qm0rZGVCT2ZtU3lKaUJFSURBWlZwbHRzdi92dEQxQkZuM2RLT2hvS3BuYlY2UGY3bTVZRjY2M0EvVVFRc29GQTRBRkZnRlBJTW8zQWU0ckNvS1d4c0toSWNIbnhQRWNmT3NoSyt6cUxTeGY1M1gvL1ZUYjBNZ3FIMlVraEMxU2owa3FBTXhrYmRvbjJ0VlZPWC91QXFuV0F4V0hRV0FyZndTb0M0MEFYam9pRWFiWEE4WWVPOC9LTG4rZVp4NTRqVVRXeVhvWVVFZFphOWl3Y1pOZnNBb2NQSGVWSEo5L2dvNnNmNGl3MHAxTDZ2UmJXOU9pNUhtZXVibkRoNmdmRXBENGlpNk1ndzZHUlF0Sm9ScGk4UUpjS1RzaWRFM0ZiSVpEKy9neW1VSS9xRkxyQVlCRmxyTFlnTDlmMzJiNE9XeGJmZmJ5cHdhTExxZHgwN0U5amF1aXVMZ0hCY2l0d2Z4T0ViQ0FRZURCeEV1bGluMDdnZkFtOUU3S01vdW1CVCt6MFhNcGE5enJYVmk3dzYxLzVaemdLNnJXRWpYNzdwaEczVDRVeWlkb0pNQUtrMDFnMG1nTHZrRkFWbGZsMnFrWU04NmVGQTBXZFY1NzlXVjU5K1ZYMkxPeEg1UW1yYTIxMHIyQnFhb1pPdjA5OXVzWkQreDlsWVdFUHM3T3pGSCt2dWJSOEh0MDNYdndJTDBpTDh0ZzVXZG1yVEF3eWdaMkRUcWNNZUplTnpGeStFemRzYThTRUw0UXJjNEo3dWt0VnVnV1U4bmFJd1JkWlZkZjZjYWFtZklkMG1MTGk4MU9kNHNvbklTOWt0ZGFEOXlIRklIQS9FWVJzSUJCNElKSGdVd3NHK0lpVVR5c3dPS21KWTRlUmxoTWZ2cy9YdnZFVkltbnAyeDY1elhENDZ2WWRvOUlhZHBqcmJFVHBNeXNGUWdta1ZHQXRXdWRZUjVsUzROZVZTUGJXRHZEY0V5L3kwUDRuV0Z0YXh4U1doZVorVk4zZmw3bkdiaS9tK2huU3hCemVjNFRIamp6TzFlVXJHRjBPU1l2eUxwVFpHVUxnblErY3cxb2ZlYldHUVZKMEhQazNSZkV4RXFvL1JVYmRKS29IRlljalNSS2NjYVhITGlpcGhpNEJnL1Z2ZitwR3UxeHN4NDl6aU44QkJtSVZiMnBORzZLemdmdUpJR1FEZ2NDRGlaTmxWRmFXNHRWSFlyMklMWEF5WjYyN3l2V1Z5L3pCZi9nYWJidkd6RXdkYVJOYW5WV21aNmRvcmJkMzlocE1HU0VVZ0ZCZXFEcUhzVDVNcWl2VlNqUVVSYzc0b1gwYS9QUUxYK0xRL0RINmE0YldVcDlkOVhuaXRFRy8wNmNvQ204bEpUVWlkWWhZY2V6Z3d4VFBaWnc5OHhHWE5zNkNhcUp0RC9EdUU3cktGeGdJSTRsekFwWFdNRnFEdGhUOUtpZTVjZzNZdVllQnpaSFlTVzhJUDgvQW9QTlhoWFozV2RWZnBWaDhlallOVys3ZFNUY1FybFUwOW02S3lBS0JUNXNnWkFPQndBT01IRGcvT0dHeHd1R0VieWhnVk1iUzJsVysvb2YvbHVYZVZlSllzcnB4QTRRbWJjYTBXanNzWXBINGlpazVTSTBZaSs1VmZxRFdEcXVLSENBanY1cExPSExvWVdMUlFCU0tQYlA3bUs3dm9yUGFvZC9KMkx0M0w1MXVpNmdla2JrT045YldxRFVpcHBzenpOU25rUnN4dVRIK0hHVGtkMjZkZHdJUVpXZzJxVUUveDJTNkxLcUw4VjRRRW9FcEplSzlLNXBVSkwzYmJHVXA1d0ExM2duMnB0d2lvQnE1WWFlMnJVeTJGTjZacEhJb21ad0t0NzA1MSsxTU5ReFNDc0FYZVZVaXR1cndGUWpjNndRaEc3aXZHZldNSGZXSjNjcEh0c0pYNUZicXhZM3RxNW9PdlVrbkQ3akY4U2RXRVVJTS8zNXRzLy9odlBFLzRwT3BhY050dHQ1KzlBL2wyUG16bWJIdHkxM1lXL3c1ZGhQbjcyNXkvRnR0UDloa1pMalVqbHgvZFY3ang5em0vS3Q1V3h6TGYvZVRKN0w1K3AxeldHUDhrTEZ3SUNYOWJJT2tEcTFzZ3hzM3J2QXZmK3QveFpUVjl2MmlBT0hiem1hOTR1Nzl3ejVSSm4zU3lrUlVZMEFwaEpRNHJTbXRDRkJLa1ppSXd3Y09rbmMxUWtiRUlxV3ozaVdLYXV5YW5hSzkwYU01UGNOcWF3bFpzelRyVTJUOVByR01PWHI0R0dldmZVU2Z2dS9wS2dYbzhwNklVdFE2QjdtR09QYXFxeGgrMTJKUU9yV3pURVpnQjVTbnBzMUltK0dCb2ZQbS8wNXZjb0NiTDNPYmR6ODZkZFh4dHBsdXQ5M3RUTGM2dFZIaEdrUnM0SDRoQ05sQUlQQkFZZ1ZJQmRwbXFGU3dlTzBTdS9mTmtMc3VaeStlNGsvKzlBOHgrRnhZUnlsaTRlWks0RlBGa2lRSlJ2dUhOcUVrU2lrS1k3MW9CYUkwUldmWklOT3p3amxISktIWDZ6Q2xHaWlwZlBQU0tNSVVCbWNjU1pMU2FyVklrb1M0RG5uV0JpRXd0aURMZWxnMFNnaUU4bEZ0VTZZWFlDeFJ2VVljeC9RMk9sNU1sN1ptU2lpRWNGaWIzZlBSV09EV0t2TXUvYlBLTk5YQjdqN3RhU0R3azBBUXNvRkE0QUhGWWpCTVRkVTVmK2tNK3cvdUpuTXRUcDg5d1RmK2o2K3hsbC9IVmlLV0VSRjdEeW1BdkJoNmdBb05WdnNpcEtSV1EwcEpwOXZ4UTljQ29saVM1OW83SERoTlhMUDBkWWY1NmIwSVU1RG5obm82ZzBTZ3JTVktJbHhtaUpJWTQvcG9XOUNzSi9ReVFiL29ZQ2lRWk9SRk1lZ3NWemJadzNTN3ZnMXRFcEhuSTJheG9zQ1VlamVPRlVWeGp3blo3WUxFbTRaZGh2TW44Mnh2RjRjdnp0dFpGV3Z2cWQ5eklIQW5CQ0ViQ0FRZVRJUWxTZ1NYRjg5eDVLRjlyTGFYdWJwMGpxOTk0eXVzNVV0STZUQjJKQklMRTdrTW4vb1piMG1hUUpMRUNDUEplam5PT2t3L3d5SklTejlYNXl3bTEyUGQyRHE5TmE3ZnVNeUJtY1BZU05EZTZCS3JtTGpXd09ZNW1SWkVqWWpDWm15MFY4aGNqNW1rUm0rancvTEdNb1ljNndvVTBFaFRJaEhSNzJkWTUzMVNwOUlwMnRrR1NYbThwQlpUbUlLc0ZGUHVsbjNsN2tGR2hXQXBZdVVkQ3RuQjFZOWtPbjI2VTN2UEI4UURnZHNoQ05sQUlQQkE0b1FqTjMyYXUxTFd1OHNzTGwzazEvNzFQd055R28yWVZyYzluazR3Tm94Y2laZWRWUUxDUVo2RHlRb2tFQkV6RzgzVHJFMlRSQ2xwbXRMdXRyamVXcVNnajZhZ1dVdkliSTdOTEsrOTlUME83VG5Hb1gxSEVhbWhiN3M0QVlVbzBFWWpJNEUyZldRTVNTeHBaV3VjUG5lQ2kxZlA0TERNTk9mcGREcmttY1ZnVWRTSThRS3Z5Q3dwRFd4cC9hLzdCcFVvaERBNEFYcDBUSDNIYnVBdGx0OHNSMzZRWjM0WHY0R2RUeE1PQk81N2dwQU5CQUlQS0JhVitMcW85MDUrd08vKys2OFNTMEhQOWhGR0RBcTdOb3V0YUZDbzVNcjk3QlJwR21OeVF6MXFjdVRBd3p6MzJFL3h4Q05Qc24vWEFaSW81ZHk1Yy9Uekh1Y1h6L0h1eWJmNWFQbEQrcjBjN3pVUTg4R2w5M25tNGtsMjc1bW5QcDFnOHdKdE0wUU1Ta21LSWtQV0hEUFQwN1N5akhNWFArUzlVKy9SdzZjc3REc1pncFE5amIwY1AzYWNKNDgvellFOSszRzVZV050blF1WExuRHV5bWxPWFR0SlRvOGlMNURLbDkzYnl2SHNmbUJDd041cE9zRW1MRUhNQmdKM1NSQ3lnVURnZ2FYVlh1UGE2aVgrOEkrL1RzZXRNVFBWUU5xVWplNEt6ZGs2blZadllndUpRQ0NKeWtpY1krZUVyQ1RMSlBOVCszanBzNi93L0pNdmNYVDN3NlN1UWQ0cVdPOFdQSEg0RlF3RkR4OTlsbU5IbnVMYmIvNGRiNXo2SVlZZWFWVEg2SUxYMy80dVdtc2VQZklFQzlQN2tDcENKcEYzMUVnY2hjMHB1Z1duTHB6a3pROSt3SVhMNTNCWTRxaUJORE44NFhQL0ZhKys4Tk0wa2liZGxSNnVaWmxLR3V6ZTh6Q1BIbmlXeTh1WDJYL3FUZDQ4OFVPdUY5Y3dKa01vaTRnc0xyOUxMOVpQZ2xFaHVZMWJ5YVJ3clZxOStsWHY3UHNYZUh1dG5STHoxUy8zZm5tV0NBUzJJd2paUU9BTzJjNUxVdDdoWDRiSjdXNW4xRlU2U3Q5T0JwWGh0MFBsblNydFpuL0tqOFBvK3M2VjV1Nmo4OHJwZG1jbUppSmRjZ3RybysydnlwWTdzSGlQMHVxY2hsc0lONUlWT21oNjRIdzNKcGx4WS8weVgvL0RyN0xVdjBJYUtaWmIxM0VVMUpzMU9oc1RJbmJrdk93VzcrNmFqekhNN1hNelkvYk9Qc1FMejN5ZVYxLzhHUTR1SEtMWU1MUldNMnFpeHU3WjNXVHRnclYyaTdpaGVPcXhuNkk1TzR1UUtXK2NlSTFNZDJtSUdxZXZuK2J5OWF0ODhmTS96M1BQdk1qY3pBSm9RYitmVTYvWFdWNjd3ZExWNi96ZzlXL3p3ZVYzc1JRSUV0QTF2dndQZm9WSGp6ekpkTFFYMnpOTVJTbFRDMDJramVoMHV1aWU0YUVEVHpNL2Y1QmFjNDd2di9QM1hPNmN3K1FkbkNpMnYrNVB1OFQrRHZkL3B5SjJsTklvN1ZPdjk3b1BNNVFEZ1MwSlFqWndYeU1kQ09kdzFvTHhQZVdGa3dqcnZNaXlwYnFhOUpNdDFaSmdPR3QwV2dtMFVhRTE2V1BxQUNmZDVzNDhvOXRNZE1pcHFydUgrOXo4b2RyLzJMb2o3d2YrbThKaXJXWW9wdVR3bXNyM1krYzZNR0h5NGs4NFgyRmUvU0VWVy9xNGpsK2NHUjdBaTA0ejRsbTdoYzlzNVJrcjNlYjc1ODl5aTJOTkhIUG82VHUrM0FxTEV4bFdhcVNOdkpoMWtiOVhaZXRaWi8xK3A2WnJaRm1YYnRabVpyYko5ZXZYV2V0ZjQ5ZSs4ajlTNER0VGRiVWQzSnRlcDcrTmdMSU03Nmpscm9XczJPTDk2THhJUW1FUktpcDlZQ1d4aXJER0VwUHkrYy84TEU4OS9DSjc2NGNvMXFEb1dtYnEwMFF5cHBkMU1jWXdOZFZBSklMVnBYVjJOUmI0aFovNVJZcXU0ZTBMYjFDNEhJMm16UWIvNy9mK0k5OSs3Mi9ZdFREUC9QdzhVMU5UWEZ0Y1luMTFqWlVicTJnMERScGs1RWdrUC9mc0wvSEs0eitQTW5WY0owZlpISW1nMyswaFhJUVVDUUtCeXh2b2ZwK25IbjJKM1h0MjhmWC85Szh4cFFUTUhXdzdTci9WL1pqa2JnWHVOaEhZemF0dDNmSHJiZzl0eXRlZE5qUzQyMm1JeGdaK0VnaENOaEM0QzRRYkQ0VGV2TjNrVGZiRCtCK1ZqeC9WbFZ1L2Q5SkhJcDBFekhCYXJlT0c1eXkyRXBLM2NINFh6ZzJPdHBWUUhUZTluMVFOL3J4aythZlZPVE0yM2Z5bjEyd3hMYS9SbTB3aG5jQWh3RWtFa09VWnUzZlBzYlI4alV5MzJiTjNodXZMbDlqb3JQQmJ2L2UvWStqaG1Fd2ZtRGpOVFh3Q0FuYjBHSk5DYlhTZUdibW5UcUpFTkhoNDJOVlk0RE1QUDgyK3FRTW9uWkJuT1JRQ2k4Qkd2dDJvRUFLcEJIbWVNek0xUzE5M2FjWXpQUC9VaTd4MzRWMTBLVXA5T1ZiR2pkWWlLNzNybkxuaTI1UmFJeEZPb29oUkpHVkJWOHhETTQveS9HZGVKaWxTaEZPRHluMkJRZURWcVFWaWxlQnNoSEkxR3RFTXMvVmRQTHp3TUJlVzMvWWk5bGIzWVhUNjQrSU85djlKUkdKSEQyMTJhQm9JL0NRUWhHd2djTC9pcXA3MXNFbThibHBQVEV4SEZwY0NZanhpeTZiM2sxZ0hVamlHM1RzM2J6OHFaQ2VYeTNMWTM1Ym43MG9CVkUzSHIydUw1UzRHSjhxb3ZNUlpVVVpraHpIVGVyUEc2c1lLcUlMcHFaU04vZ3FkWXBWLzhkWC9CVTJYSFhjZFFFNE9FcFFMN0dBTmtFanJCWG9xSTdRcEFNR2gvUWM0ZlBnb2lXbWlDNHV6QWlWam5BV3IvV2NoSk01WXNtNUdjN3JKZWk4SEtYamk4U2ZaKzlkN3VaNWxTQlFPUzU4T0ZvblJta3BaS2lSTk5ZVnY4dVRqNXdrcGgvY2Q1dEQrUTVoV2pwZk9HWUlDUWU0ZkpCQW9wNEFFbldjSTUwalRsSWFZNHJsblhtRHhiMCtSVS9nSE9EKzB3ZGgzY1p2cEpTR2lHQWdFZ3BBTkJPNTc1R2J4T3NiV1pwS3UrdGNnckR3eEZiZVlqcTUvQjFsNlZ2aG9ybkNiUmV0dFQyM052M1dpZkZFcUl3c1lqTkgwOHphenUycjBpald1TFYza2Yvdk5YOFBRUlZDVTNhVjJobkVQVWxFbUxRZ3YxRWUrVHlVVjFocHZyeVVVQnA5YmV1VFFVYkNPSXROSTU2T2ZrWlNZd21Kem40dWlJb1cySUVWQ25odTBCaFZMR3JVR0x6Ny9FdGVXOW1CVVJoUkxqRFNzcmk5eDlkcFZ1djAyc2hTdXh4OStuSm42SE9RQ2x5dnFxc2xuSHZzTUVRNUhnY1FneWc1b2tyS0xsL05MdGNuUlJpS0VLYnVIS1I0NTlnaUNCRW1FeEZaQjUwMi80ZXJYS3NmbURTUDBEb3U5WlpQbFFDRHdrMDRRc29IQS9jek5CS3l3NDNrUFc0M1ZWc2JvUXZxRTB0RXAxaWZSTXZwWmpxM3ZxdVdsc0JpZGptMi94WExoeXFwdk1YNVcyd21UVGN1ZFJEaUZqMWhLMzZZVndCVmwwcThsTjExbVp1dXNkVzZ3MHJyS1AvL04vd2xIeHV6MEZDdXRkWFkrSWp1VWExV0t4YVF2cVhLaWpNdUNzMzdvUGhFSmM5TlRGTGxCYWsyaUVxUlVZQlRXNXQ1WFFTVklJVkVVVERlbjZmZjcxSklhVVUyUlpSbWZmL256eFBWWHlFMlhScU5HMUZCOGVQb2szL3lyYi9MQm1mY3dXRjU2NmlYK3dSZS94TUc5UjFBdUplOW9UTTh4bFU3VFdsbW5vYVpRRkFnMHpwbFNqZ3R3RnVFc3dobWs4TkZrNmNBVW1xbnBHUlFKWmMwK285L0JxRHZBVU9Jek1xKzZFd0o3ajNqNUJnS0JuU1VJMlVEZ2ZrWnNsNjlaVmVxUGpWZVgwK0U4Syt4SVB1NVdVbkw3ZUpjUHptNjE3cWhRTnRzdWQ0SkJXb0ozVFhBVFV5YW00OHU5bUs0SzM4RG5BSmZIRkJvbk0yYW02dHhZdmNSeSt6Sy84WnUrMlVHYVNGWmFpejV3dU5FaWlUTUFBQ0FBU1VSQlZNUGhQSWZ6QlZHRDc3Qkt0UEFQQWdLQmNicjg1aXpHRmpnc1NnbDZSWTg0VVNnU3BKUFl3cUsxd1ZsSVZFd2NKL1I2UFVRRWNSeFI5QXVpUmtRVUtUYldOMGpxZ2w2blE3dTNUcThYVTg4U09xMDJPdk41c3dKQm1pUm9iVmxkV1VHNmxLeGRFTm1JWm4yS29zZ1IwbzRWSmNwQmlvZFBHbEVDcEpJNG9YMEtndkQ1dW9vRVJZcWxPNUxEUGN3OUhUNyt5TEgwV1V1Vmt4M2lzSUZBd0JPRWJDQnd2eUlzT0QwaEZrZXRwdXhFNFZZVitod2R1cllESzY2dGlyVW1YUXRHa2M3L3kwMnNPN2FOR01tUjNjS1Z3Wlc1b0xhY1B6YXQ1bSt6SEJjaGhVWTRpWFVTaDBFNlc0b2hqWlVaVjY0dm9XbnpHNy81cTJpNjdKcWY0dnJLVlp5QWVqMmkxeDFwUC9zcDQwYnlnOGZuVjVuRERpbDhkRk1LaFhPT0hOL0JxNkRIMVd1WDRUbUhsQklNR0ZQZ3JDUlNNVUlJaXFKQWE0MlNpbjYvaTVTU29paHdTcU4xenZlLzlWMU9ubjJIVExjUTBpRWlTYWUzd1hKdkdZQ1ltTysrOVIxT2YzUVduUmthNlRSV1N4Wm1kdlBsWC9neXUyZjJRU1lSMXNkUkhhSzBYM05RRm9BNTZSREtZazJCUTZBaXgxcTdEWUNwMGpxcVVZSFJlMUQraE1iOU9NYm51YkZQZ1VEZ1FTVUkyVURndnNXQ3pCalVJQStpczNZWWlaMTBJS2h5V3FzVUFiOEF5dUhnc1NsdU5KRjI4OVFOa3dXMjNWN0liZmZ2R0ZxWHVmTDh4cWJWL0cyWEM3QWorY0hPbFBMUG14bzVxZWxrTi9nM3YvMnYwSFFSV0s2dlhNTUppQkxvOVhkT3hGYTR5WWk2RzQ4MytxaTFKWW9paEZEb1hHT0F6Rm9XbDYvU3l6dGdhbVdlc1NDS0ZGR2tNSVdoMStzUnh6RnhLbWwzYytxekNXdWREdFpJVkNMNG16Zi9ob3oxZ2ROQVFWSGVPNHRFb3NteFdEYjZhL1IxUnFaeitxN2dXdjg2ank4K1RyTTVReVRxS0JLZnErb01rc3JDVEdJRk9PRndhQXJkUVZpRlVvNTJkd09ES2ZOYnF3ZXZpUnN6K1BuNTVWVWU3WGJHQm9GQTRNRWxDTm5BQTRNcnZXU2RjNE8vZ05XUTdYWlllL3NSbjJxL2JsSThzdTNITGFPZnpybkJldUltRVUxa1RscUh2L25idjJUZnZuMnNiNnlTcGpGSkV0TnFyNU9tOGRqMjVVYmx6dnpVNkp5Yk9VMGE0N1pkTHJFakRRZTJuam9uYnJJY25MN3pZaXZod0ZtTmRGdDhSOEpoaGVWM2Z2Y3JXSEljR2tQbWhaRUFyU256YU5rNU5UUk05L1NhUC9ZRmE2NHdnM05LYWlsWnBzbDBEZ0pFNUZ2cUd1RHM1Yk1zYjF4blZ4SXgzWmhGeFJFbUsrZ1dHdWtrY1YxaFRJRVdRT0pZV2w5aWVxNk9WWWEzMzNxRG5CNmFBa2NHWmVFVUF5RTZwR2M3RkRpMFd5T21oa2J6eHNuWGVmTEp6N0srMW1HaFBrT3pubElVR2IxdUcyY01VUktoNGdnaEhUM2R4YmlNekVEWHRQbnc3QWYwYVFHbEIvSjJsZ1NqbVRBVGVkU0REMEhKQmdJUFBFSElCZ0wzTFk0clY4L3pKLy9YNzdQUlhrT1RBNFpFUnVTMlR5d1VoY3ZMZFVkcndFY0xhaXFoZW1kVU9tejc1VGZ2U1Q4NmRQeHhEZDBwVXdpZ3lpRWRkelZ3V0NJa2hnSkx2cU1PQmR1UnppUmtuZHcvQUdrSG1LSEFGcEorcnpmOGpIOFFNdVZsR0tINXozL3haL3pEWC9nVkRoN1p6K0xsNi9RMitodytlSlJHMnVENnRTV201NXFzYnF4aXlabmJPNFdoejdzZnZNVWI3M3dQVFI5RGhpR25TbWpZRkNGMVlLSUlrMnRNbWVPcW5lUEs2aVhlZU85MXZ2VDBQeUp2V2RhWGIyQ3RaYnBlb3o3VnBEQUY3WDRIbVFveTA2VXhseEJOQ2M1OGVKbTMzMytUZ2h5RkFvcWhHSlg0VkJRN2ZOQkVzVm1zbGc4QXd2bTZ2aUJtQTRFSG15QmtBNEg3RnN2UlkvdnA5ZGZRZEFDTnhLRnREeWdvbkVVT0JNbW95S3RDZ1dDNTgxNzNWVER6WmpyaTFoSjVhQVgyY1Y4K0xsa2cwZVZuV1ZhOUQvZHBTck4veWlIekxRNjlvMlJ0SDJrbHdrOTErWEo0VWVlOHoyeFNpM0hPVUJqdEx5T0JtSVFUVjk1bDc1djdTT3FTK2RuZFJIR2QxZFoxVnRhZ0tBeTIyeWNYR2ZXcEdCUGxuRHI5UHQ5NTQyKzVzbjZCUnFwWXpmS2J0NG9Wb0VXQkUvNysyVmhoOG9MVjdnMisvODczZVhUZjh5d2srMm5PTjdEV2ttY0ZXYitOa0FaWGMzVDZheVROaUVMbG5QendCTi81d2JmWWNHdUFKVTFyNUpuMXV0VTVuSFdsa0JaREgxMDNQSStKcXErUDA1RTVFQWo4QkJPRWJDQndIN08ydmt4UHJ3T08yYWttcmZZYXRvek1nc1c2MFpobk5hMlVreTI3TU4zRW1lQ215MGFqbzNmS2lLZnR4NTc2YTZ6aXJLSWNHaCtXc1Vrc1psQThOYmdTZDljbi9ja1I0YytuaWl3NmZONnZVTlRpR2xwYlgrVFZOd3hEa1JZeTZMdWNoSWkvZStlL3NONWI1a3RmL0VXT0huaUliaXNqRWdrSDloNWdaV1dGcVNpaDNWdmpnN2ZlNDN0di9EMW5GMDloTU1SR2VCRTdFdkVkWTJBVmJBWUZXVlpva0w2SThPcnlSZjcwTC81UG5qditNczgrL1F3elU3UGtMaVBQZWlSUlJLMnUyTDB3eTBwN2lUTVhUdkh0Ny84TloyNmN4cUNacWpkWTc3VlJKTVF1UWdBR2pTdEw0S3d6L2h2VGVuRFp6cS9FeUJjY0NBUUNRY2dHQXZjdHdsS3ZwWUJENGNpTDNrREUxbW9SZWQ0ZjJGdjVFRlk1SFNpQktnSzJ2U0pRU20yN0RMaGxTOTZidVI1NDdrNVJWb0ZtVVk1R3k0RXVsNE0waEUzY1E1RTg2Y0JXd1dJSGFkUkFDa1ZoTERwemdDb2ZPeUlxTDRkSVJTZ2x2SHREWG1EcDhkWkhQK0RxalVzY1AvWUVSdzQ4ek96c1BKZVd6dExyOVZocnJYTDJ3aWsrUEhlUzFld0dqZ3lMUlcvbGpNWVc4MFp5T293dUJvV0MybVdjWG4ySC9HU0xkWDJGWTBjZVl2L0NYaG96ZFFxWDBlNTFhTjFZNGExM2ZzaEg1ejlpdmJ1TW9jQmc2UllaRU5HZ2lTQkNVNkRLRmdzT1J5b2pySVN1M3NBNGl6TmVUTXZJUjJ1TmMxaTd6WGtIQW9FSGlpQmtBNEg3SG90QjA4djZnRVVJaDdYYXQ1Q2QxSW1qNWZEQzNiS1l6WmliNTVYZXZTYTg4N0RhUUplUHpMaFpoSGlzcm12Y3cybG5jR0F6bjBGUVQrcllRbUFMaDBYUVlKbzByaUdzb0RrOWk0b0VyWGFiOWY0cVZsdTB0bGcwYVNMSlRSOXJDaGJYTDNMdDdVV2E3NzVKTFc1U0ZBVktLZFlMbnlQcjgyRXo0bFNncFBmbjFmMWIzSU15Q2lvb0N4V2RHejY5aUJ6dERCZlczK2ZpR3lkSjM2aXpNTE9ibWVZTXB0RDB1eHUwdWh0MGFXRXhXRFFDU1JJbmFLcEhqWmpEeVJHT1AvNG91L2N1b0dMRmFudUZzeGZPY3VIS2VRVFFwK3VqdGM1aUM0ZVNNVW82dE5DRHBKSkFJUERnRW9Sc0lIQWZVeFFGVlFGWFBhMVI2QTVSTERDMkI4QW1uVHBRZnhhY0xTT3VOM050dUR1aHNNazBZUk4zRTVHVk9ESGNYcmpLeHhTb21pZE1SSnlGcUt5ODd1S3dueEFDU0ZWTUpHTjAzK0NRUk1Uc256bk1DOCsreEtPUFBNR2VoVDFFU1VxZTU5eFl1Y0hpOVVVdVhiM0UyYk9udWJKK2xsN2V3a3JmMFN4TkVvUlZ0UFVhbmF5TFFtS3N4YUZ4NU1nSXRJSGN1SEVoWDBhd3Qvb2RTRkZHakFHRUt0V3NMTC9ZZ3Zxc1FJZ0NsMm02dlM3WnhocUxHMUhaZ2NzbmRkU2lHQmxGYlBRekhJNnNzTlRyVTh3M2R2TS9mT21mTWhmTkVjY0tiUXRJNFBGalQvRFNaMSttVzNUNXdadmZaZkhHRmM1Zk9VZmJ0TDJndFJaaGZUNkV1R255U3lBUWVCQUlRamJ3Z0hQbkVjSFJDTjlBUUkxK1ptUzQreWJiM2cxQ0tCUVJCbzNXR20wMDJ2aTh4MXBOa1dVakVkV3FnR2o0NFpZUjE3dmwxcDJ6N2pMUlVaVC9jcFNEMHVWczV6YnRlU0I3S3B2YkhVZmlhN2NNZ3BqZDlYMjgrTm1YZWU2WkY5azN2OStIVEozQzlpMnBVenkwNTFFKzg5RFR0RHB0M25yckxYNzR6bmY1Y09rdEN0bzRBWjI4anlCSG92QVpwMTdrUytuZFhZM0p2RjZ0L3E4LytPcDl2dlRXeWFkRG40ZzRqdEc2YkNzc0JSam9kWXJoajFtQ2NRWWh2WDJjdFJhcG9LVjd2b0FOU1V5S0FJNGZlSUovOG91L1FtMnR4bHcwQndxeUlzTmFTNlFqc0JFaUsvaWxWLzhiVHA3K2dNUTJPWFg1QkYzYUdBcmZKZXplK0JJRGdjQU9FNFJzNFA3R09XL1g0MHVmOGVPMTVmQ25jNXYvMUcxWjJ6VHV6enFhMTdrcG9qaTVyWFVqNWZ1VmVoMGEvWS9XMFl6dTMzZTFna28wakxiNUhEMnVyY0pob3lKNTVGeTBkZ2dVSURGbTNJc295M3k3MGlHalF1WGVzNkw2K05odG53YmM1SHFVaFd1VFZXTTdpa1NRQWhGMU1jUFBmZUdYZWVIcGw0bEpTRVdUUE11SXBSb1c2dmNkdW05SlhKTlhudmdpenozekNyL3pmLzhtNzU5L2t6ajJMUTEwMFNlZHFWUG9qS0xmQTZFd0FsOUFwaFE0TS96cUhRZ1JJV1NFTmQ3VFZhVUpwaWdBZzRqalllcUprQlM2OEQ5YUtZbUU4a0s1K29FTlRBWWNoUjF4WWdCcU14SDlEVTJFQWhTLy9PS1hlZTc0Qzh6bXM4UXF4aG1Mc3lDSkVFNWllZzdoRXFhcDA3dWE4ZmllNTlqM004ZEl2L1Budkg3cE96NnpXMlpvYSs2TnJ6RVFDT3dvOTBydGJpQnczekphOENUZGVBUldUTXdmWGI1VnBQWjJxYllWbXp5SXRqT1lqOWowbi90UFJFREwzc2JyM3NXV2VhSXZ2L0F6SEgva2FZU3RVWXZta0NaRkZESEtKaWpqWDVGSlVDWWR2R0pkNDVlLzlJODR2UEFJdWhEb3d2OG91dTBXUlpaN0QxYU1GNi9PZ1NrN29WVVdYd1kvVE84Y1FqaUVna2dDcWhUK3V2RGIrZy9sZTQzQytWMVh0aFdUL1lRbjZIZXFqTmlFeCthZjRKRzlqN00zUGNBMHUxQTJLdi83OFIzYWhGTUk2Njg3TWlsMU1VMWlHdFJkZzBjUFA4YkI1bUhBWXF4QmhqQk1JQkFnUkdRRGdVQmdoL0MrVXJ0cXUvbjh5Ni95ME9GSFdMcTBpa29pcEJNb21XNVIwUWFWNkFQSjhhTVA4OXdUejdEeW5jcytDRnBMYVBmWEVRcGlGWkZiUCtZdnlseGk2UVFJZ1hDK2piRnpsbGprYU9zd0JteldIMHVMVVRCd3ZwRFZxSUVwY0tZZ1JpQkZEUkJsaDdjcUVjRjNCN05PWTV3Rks0aEltSlB6dlBMTTV6aTYreGl4clZIME5LS3NSaFJPSWdjakZyTE1kNVlvS2Yxb2haTTgrdENqckJUWHVQRDZhUVNDU1BxVW1rQWc4R0FUSXJLQlFDQ3dJMGdTRXA1NzhqbjJ6TzNCRlFKbkpMMU9EaTRtVVNuQ1JlQWljQkkzMHBYTm0wNUlpbmJCWjQ4L3plRmRSM3dEaUw0bUpxSm1VMnpmb294QUdSOWtWYlljRWJBTzVSektRb1FrdGlrSzZXUDJGbElITlNlWVNSTWk0OS9IemtjOUVpUUprb2lJbUFoaEZWaUZ4TDhFQ3VrVXdpcWtpWWx0alpnYU1TbE5OY094L1kvUVZGUFFWOWdNbEszV0Z3UHhLc3JNSU9rQVk4RTZiS0dabTluRlEwY2U4aWtJQ0d4aGZ6SUdGUUtCd0YwUklyS0JRQ0N3QS9pNnE1U1hmK3J6NUQzSFJxZkQzTlFDN2JVT1JHb3dWQytvOHFuZDBEZ1gvRkI4RVhOc3o2TThkdkE0TjFhdkRrcTJHckpPeTdSUXhJdzJFcFpsRXdsUnJ1bW9rYmc2eXBjTEFsRGcyeHJySGlocVJFU2srSUt4bUJoTmdRTmlZb295V2x5MUloNUdaQzF1cEh0QlNvUGRqVDFNUlRORUprWFlpQ2hxb0cwUEszMVptcXNxeHB4QU9vbHcwaGVNUlFJczZOeXdhM1lYdStKNU5veWpiVnMvcnE4bUVBamNSd1FoR3dnRUFqdUNSS0U0dVA4dzNiVWNiUzF6Yzd2SU5qVENLdkpjRTBkVnh3ZkFPVzlrUUdtODRCUW1TNGxsbldjZWZZVmR6VDBVcmt1bU82aEVrZFJpOGt3UGppVWNJQ3h5MkFPWHZDOVJLaWxUWFEydDlnWWZuZm1RbGNLM2taMk5kdkg0NDQ4ejFXaVE5UXRxY1lvMW9QT2NScU9CRldhWWNnQkk2LzJKamRSWVlSRkM0SnhBbVpnOXpiM1VrZ1lVQXFzZFVra0VYclJXc3JycXkxYWxOeWdFT0VlUzFPajFPdFJtNnV5YW02Tzczb0k4dFBnS0JBSkJ5QVlDZ2NDT0lJQjYxS0RJTk0zNkZFVVBpbjVCTEd2Z0ZHT2VGMjZMU2lvWFlmT1VidVk0ZXZBbGpoeCtCcFVhQ3R0bG85TmlabWFLUE5kK0g4NjN0cFhPSWZBT0JRaExVa3N4eG5oaHJBUlhyMTRseXh3YjU5NUQ0SGppOFdkNDlkVlgyVE8vaDFhclF5MU9mT2V4TEtOV1Mrbm1HMzZmVG5oQjZ5Uk9XS3cwZmlyd1FyVnZhVVp6bUo3eDNyWU9NbDBnNDV2ZElZdVVpcUxJcURWcXRMcXIxSVFramhMNmVmNkpmeCtCUU9EK0pBalpRQ0FRMkNIcTlUb2JxMnNjUGJTYlZxL0h5c3FhRjdKQUhLWGVMVUNNUnh5dEdMWVdudGsxeGZyR0dqS0c5YzRxUWhmVXBtSnkwNkxWcmNTZUhLUWtDRFN5ak9sYVllbTFPL1R6RENFY2FiMUdPMTlqdmJkTVFRK3dYRis1Uks5WUo3ZFRkTEkxdEVtSXBLTGZ6K2tiaFN2VEVaU1ZZL21xVHZpSWJGYmtKRkVLVnRLTVlYMXBqWVZHUXBTbVJFSmlMQU9SN1UvUWdoTTQ0Zk5mTFlJc3o1aUptbGhyTVJZS285SG80Q01iQ0FTQUlHUUQ5em5PdWJFWHVJbDV0dndqT2ZTV0hmV2RzaCtqWWJ0ejNvZlViZVB5NzQrMzlmTFIrV1BMeGVnNkl6NnoyeDEvNUR5c3NLRmM4ejRueTNwSUNXdHJLMWlqbUp2WlJYK2pRR3RObWtUbzNMY0pkc0xnSWdkUzRLeWhNQnJqY25yOXkrdzZXT2N2L3ZJLzhmcVB2b2RLRFAyaWhSWEc1OVc2WVg2c3FEcWVWUkZaSkVwTW9hMUFXMDF1TkZybkZEWXZXOG9hemw5djgyLy80RDFpVlNPU0NxWGlNdkxxSFJlTXhlL0hEZ3UxQUp5d09PRncwbEd2TjFsYlhlZWh2WS93ajcvOEs2Z2FMSzh0c1c5dUh6YnpiWkpkS2F5cnhoWldLaUlSa1djWlNUMWhiV09OdEo2d2VQM2l3RDlXU2pYU2Rpd1FDRHlvQkNFYkNBUUNPNEREc3ByZjRNT3pKL2o1TC80U1dVZXd2cnJLVEdNT0Nzdkt5akxUMDAzaU5BSUZ1Y25wNTEyTWdIcTlTVHJkWUwzZjV2TEtSNXk5K2o2TDNiT29yaUhIb0twYXNaRUdJS05OT29hdDVkYXhLR3paSmNFdzNtU2dad3V3SUhVTEtSVEtPOGlXdlQ4RWpnaFF5TExjUzR3MDNYQllOSVphVWFkUHptTHJDcGRYTGpKMVpJWjRWdEF5NjhRb1pCU2hsQ0tPSWl5V1BNOHA4ajU5NDVocVRMUFJYcVUybTFLYmpyaHhlWW5MUzFjd1dLSkk0VUtHUVNEd3dCT0ViQ0FRQ093SUZrUEJXKy85a0JkZmVvV1p4anczRnRlWm1ab2hrakcxUm93aHgyZ0RKc2NJaTRwOHhMTFhiN09SRlRUMnpITG0xUHRjdUxwQlFZT2NERXRCWVZ3cFNYM1h0Nkd2Z0U4dkdPOGRiQWZOZlFmakUxVjZicm1hY1NDY0tkTVN2R0IxNVJYZ1RiY0cvMVJkRW16cFg1QTVoOFp3dlhlVmQ4Kzh3OXpjSExzYXUrbTNPcWg0R3FNemV2MkN3aFlnSFZFVWtkUlNFcVhvOWRyMFRaODBTbGplV09hRGo5Nm5UdytETGp2YWhVS3ZRT0JCSndqWlFDQVEyQUVzamtSSXpsdzd4Zi9QM3BzMXlYRmxlWDYvdTdoN1JPUUtKSURFUnBBRXVGVnpaNEhWWkhFcDd0WFY2OHpJVEY5RUQzcVJIa1l5bWVsRjBoZlFKOUNMWkdNelk1TGExTlBUVTkzVlhWV3NLcks0Z3lEQkJRQ3hKSkJiUlBoeTd6MTZ1TzRSa1pFSkVDUkFBaUQ4Und0NklNTERsK3VlRVg4L2ZzNy8vT2F0WC9IVDR6OWpmaytQWWJXSkpTWHBHTHd2MFhYZGx5WlcrbHV0NGgxMThWeGF2Y3lKVHo1bHRkZ2t5a3hOd0dDTVJvS3ZpOGJxRnNhMXlJd0NNTTdaYkVsQTFRSzJGb2VLY2Q5a0ZaMEZHbXNzQ1FGUVVhWnFCMG9JUHE1am5MZGE1L0ZxOExyQzF5a0FIM3p5RHZ2Mzd1UFJCN3JNTE13eHVMUkJhanFZR1l2UmNic0F2SGZrNVJCdFlHNXBobzFpbGQrOTgxcytPZnN4QVUrU1djcHF1RVZzdDdTMDNKbTBRcmFscGFYbHBoQVl5RHFHaEYrOStaL1p0MitaSDkzN0JQM0xPWGhQNVVFSFQ2STFTbm5LcXNCWEhwc2EwcVJEbW1oKzg4dC80cDBQM3NReHhDaFBLU1ZDaFpORzRWbGkxTEtaamd2RkFocE5NdG9Xb0k3VWhtM2lNRXpFYzJPd1ZnTWVxT3IzL1JiZjJDalRZeVFYNzFFS3ZIZ3U1NWQ0OThRZm1aOWQ0TjdsbzNSbkZ6Q2lxWHpGWURoQThGaXJzY29TZENEcmRGRkdPUEh4Q1g3Lzdwdms1Q2dGUlRWa3RBa3RMUzEzTksyUWJXbHBhYmtweER6U1RyZkxGeGMvNFcvLy92OGhsSm85Q3djNHNPY1FKbGhDV2VCZFR1a0tySVdaWGcvdlBWK2NQc1ZIWDU3ZzdULytocjY3Q0ZRb0RmZ0tiU0JJRTAxMTBicExtbFlKY2Ixak45cW1HS3o1TjR5VGFwbEtRV0JxR1c0OFg1TlJNSEdyZi9STWdVMDBPbWlrY254ODVpT3NOMXpZZjVFbmYvUVRlc2tNeW9EcGFMVFJaRm1LUVZPV0phZSsvSlFMS3hmNDV6ZC94U1ZXTUdpR1VvSUIzZE9FemUyaXU2V2w1YzZpRmJJdExTMHRONEZHT2haaGdNZnk0UmZ2NHY5TytOR3h4OW04ZTVQbDNjdDAwd1RFRTRMRCtaSjhmY0RseTVmNXcxdHY4ZnNQZnNzYUY0R0N4SVNZWTZvZ3lhQW9KdGNVSTdEanJtQ1RyVjFqU05NZ0JDV29XcFEyZWJKaG5IMFFNdzBVYUZFb0RNcjRSc3J1S0NZMVJGRU5NSElWaVd2KzVOd25ySnhiNS9LNURRNGZ2SnZEUnc2eHVIc2VreHI2Ulovelg1M2ovRmZuT0hYeUZLZlh2MlNUVFlRUWk5RlVCVHJHbEZ0YVdscGFJZHZ5QTZENUZaMzRZVk5YKzVIYi9xdTdrNHZWcU1xN21YM2lZMW9nVEhsazZhbkZYb3ZMNWJmNXpDVHlnN0hTM0g0RXJyeHI4ZGpLNUV6YkR1a29STGp6QW1VeXNuaUQrUWJIeENhUWw1NjV6Z3pEdk9EakMrL3oxWVV6L09HUC84d0Q5ejNJNHV3YysvWXNrYVNXMDZkUDg5R0pFNXk3Y0k0K0F5cHlIQU9FQ3B0YThqeXVXMTFwL2MzZmhNVHpKcDdYWVJTUFZiWERRWkR4Y0JvejRWaW42c0N1RWtSY0ZMbWFMV1BmekRyNmk0eTJzRlNWb0tRaVV4MnNhQndWcTF6a0QxOXQ4dUZYNzVIK0ljT0xRMnV3MWxLVkpYM3Bvd0ZYQy9IVXBxeTZ6YmpnQkJoZSt6aGZsZEVBWEdGNlZiYWV0M0hvZHo2blpPdE04ZWwwajR2dEM3dktnbHBhV3FBVnNpMjNOZkdYVjljL2RNM2RWQ1FLUkJFWmU4Z1NZdkVMZ29nYUtVQU44Y2QvaHg4SEpkRm5kb3R0RWVPQzd0RTZScHNqVzZaYmxpbVRuMWNUSDVuNDBhdjlZYmZmem0xZUh2dkllcmJQcDFUc1g2cFU0MXU3Zlo5dVBmU1c2WGhrMUpSRTJMNHpvUzRtYXZZelRUV2hVdmdnZ01ZYVMrWExabkZiUmEvU0U0djk5bUoydE1oSjhjTU8wOFpBQUtnTC9TR0FkNXJVZHNoZGhhUENVN0RLR3F2OXp6bjExbHN4aTFWWlJCU09VSStLUVdHaU93RUZvZ0liK2RpSEt0OUo0TzBnaXFhVEN4b21MNjZDWXh0dWNua1QyUWlUeVFtamRVeWUza0FoSlJXeDI1aWlRRE9JZWpUVW4vVUIvUGJMbWdDSUN5T2JzSkdJdmQ1elhMSDEzTGphOFpQcFlZekZkWTNpYlRJczRqVHVlR1lUaHE2S0g5ZGdrcFRLVmZYQ05NYUYwYlZBYVBhejNoNWw2L0dyeDFBbmhsRFYzMmVpeVRvZGlueHduUVBRMG5MNzB3clpsdHVhN1FJMFhHTkVMT3o0K2VsL056L3FPeTF5TW1BekhieVpqclJlaVdteGUyY3lLVnZVdGxmaXF3cXB4Y0tXWVFxUVp1QWRsRVZBazJDMVJVUnczazB1Y25vVjMvMTQxeFgvS3JXb0lJVEtqZGJaNlZpc1N1bHZWbFJCR09lYmVySnVoZzhWUlJHTHBNcmFMTFhiN1pLWWxPRWdKNFNpTnJlYWtvN2ZaSjhtQm5QeVBJN3VBL0cxY2R4NklnbytLZGl2RmxIY0FhbGJMVndYRTk2NE40dHh2SDlTOFU1ZFdCTGI4QnFsVUVaVGVFOVZsdU9jNHZvS3JQSGZWVW9qV3ZBU3FJSWdWYnc0RXdOVkdRaVZCNEhadVRuS3dsSGsrZmV6c3kwdHR6aXRrRzFwYWJuSlRCWWlqZjFNSjRuQ0lZeW1Jd1JjUVIyTnR5Z3NJV2hDM2NMMHlucG5jcDAzZ01rVmJZbmlDWkpYOWUxNWhWRVdwUlJGUDhaVERSa0dRemVadzRtbmRBT0tRUk94dEtUV1VsWlJ5RmFGbzVRTlFyMHVyWFJNQXhBWVM2dHZPdDA2MWx2SCtScjM5M2JtR2tWeGMwajF4UDlIQ3hoMUpCdWZtWk9MVEsxQmxBRVhYUjJNc1loV2hOS1RvRVorRWdob2J6RW9OQUdSZ0JUeFRPaGFTKzV5Qk1pSEpVcVAxOXZTY3FmVEN0bVdscFpiZ0VZQ2pDWFVPRTB4Ykttem53d0lBbWd4ZFlLSnBkdVpvOXZ0Y2VueUJaVHlCUEh4L3V5T212Vkc1TWZ1SVBsMkVoZWl5VXdYdk1aTHdLQ1kxWFAwT3JQczNiMlhoWVU1ZkhDc1hMN001YlZMYkF6WEtTbnhsZEJSczZDRjNPYzBONkFWQ3BHWW96Qk93dmcyMDdBbEhmUnE0L3hEUkUxSTA2M3kvbG9Yc0RYcTN4eDZYLzlES2NpZEEzSEVsc0NXcnNtb0tvY0FDWllFUTQ4dU03MDVzcXdMUUZHVzVGWEpwWElsTmd0MndveWVvWlFxWHRpb1FHOW1oc0ZtLy9vR29LWGxCMEFyWkZ0YVdtNGFha28yYkluSHFuR2gwWTVUd0pDZ1NZSFlQdldSaHg1bmVYbVpmLzd0UDNGKzVleVZWM3hESWxsTmptUXNTWnJZcWRFNkVnTmFwWWpUZUJlM2NuZTZoNGNmZkp4ajk5N0hBL2NjaTJrb1JxTzFSbWxOZnpqZzh6T25PWFArTlAvNHEzOWdHUG80bjZQUkdHc1JDaXJmcE1ZSStsdCtqWWRheEtMR3c3RnRPcDE2TTdXTTJ6a2dxQ1lhNjZxSmJOZWRybm5DMUxTeFR0dVdGejAxUU9NVWJFMkNSUXRVUllsQjA2SExQUFBzWDl6TFhZZnVZZi9lL1hTekhtVlIwZS8zR1JZNWx6WldPWEhxSTg3TEJWeHdwS1I0SEY0Q2cwRXJZbHRhb0JXeUxTMHR0eFJUT2M3VDRtQkxTcUttYXhZb2ZjQ1M4Wk9mUE1NcnI3ekM2Yk5mc25wNUUwWWk4d294dGh1aXdpWnZPbzlkQVNEbVA0dUxUNVFZTEJuSDlqN0lDejk5aWZ2dWZZZ0VTOC9HcitEWUxNdWdURUp2RHJwSGRyTi85eEdXZHgzaVgzNy9LMDZjZmdjUFdDVU1xekIySnhncHBXK1RXbkNWWGRxYU5IdDdLOWFyRW5kUVJ0UHQxSEoveDZTWHByaDBaSUl4WFZSWXY1YVlqRlFTdksvcUNHeVBZOHYzOHNEaEIxbnNMckF3dTV1WnJJY1dpeGpCWjBKUWdZM2hCZ2NXRDNEeXpFbE9udnU0OXRJMThTSWszSWc3Q2kwdHR6K3RrRzFwYWJtcFhGRnFUbGVPVHlNR1N4Y1BQUFVuUCtiRloxN2huaU1QY3VMalU1VEJrZWlFTWhSYlB6OGRjcndoMUhYbkU1WnZUV1JQMSt1eVdCNjc5MGxlZU9ZTkhycnZVYlN6ckY1YVkraExaanBkTXB1UlY0NjhxQkJqNkhWMk1iZG5EM2NmT3Nac2Q0N3N6WXdUcDk1bVVGMGVyVURwbURVUnRzVUxyMjBxelVYRGxZcmhwcGtZTXoycXk3OTl4VlR0WlRMMTZ2YVk4M2lPRUkveGhGQnRpanI5WkdYYzVIbmJYS0NJSW5oUFFzS1NYdVNCdSsvbnZvUDNjWFQvTVZTaHFZcEFkY2xEVldHVUpUVXAybHFVV0JiMzdXWjV6ekpMcDNmeGgwL2Y1dXp3Q3dJYVpUU1YzOEZXb3FYbERxTVZzaTB0TFRlRjZkdTR6VzF1cmpSdENuT2tzZXBLeWIzdzRtT3Y4SmQvL1Rjb3ExZzV2d1plbzdjbExVd3RCL2dXR1pFN3NJUC9yWXh0bUJKU0JNTzllNC95cytkZTRjRjdIbWI5d29CeUNQdDI3VVBjSUhaYUxVRDVoSTd1b0hSQ0tJWGhNS2RTT1E4ZWZSU2JHWWI1R2grZjJTQkpCTnNSTmphcmlmMzVkbUlXMkI1OW5YdytYY1MyUmN5T2MybHZUNlpsYkx3ZzJXS1BOekh2U01ST1dCQTN4eHFweGV5MEI2MHg0QzNlQ1JiTElvczhkdXh4SGpyNkFQdG05MUtzRnFqS1lyMGhWVDA2U1FlQ3hwV0JjbERRNi9VWTlJZk16TXp4OE5GSFVTbmtmK3l6NGkvaWZiUmoyK1pjMGRKeWg5RUsyWmJiR3EwMTNudThVeGlWb3BSQ1JBZ2hJQ0xScDFXTkhCcTVXZ21MMUQ2dWs5NndldnA5dHI0dlYzaS9tVVZOdU5QdjlQbkp1dm9kbC84MVpyQWlNb29aVGMvYitNbmVka3lJVjVVb3BKTDZicmlGQUZvWnNxeExsV3QrOGV4ZjhjUWpmMG8zblNmZzBhckNseDVESFkyZFpsU2xmcU1jQzdZS3dpMUZhSUFuTUc5MjhkZC84VzlZbWp1QUd3Wm0wMFU4aGxDQThvYWdIRW9zVm1MQldxZ1VTaEdiQnhpTERjTHV1VDM4cXovL3IvamYvdmNQcWFxU3FxcWE3SXFyVjJSOXpmRlhrdFRuVDBBYkZYMWFBenZmSXYraG9VQWxJSzdPZFRVS25DQm9FbVB4M2w5NTErdXhNWXg3UW9qRVpoSmpnNWdQSWdBQUlBQkpSRUZVd2ErZ1ZQUTZQYnlyc0ZnZVB2b29EeDk5bUs3dVVLeFdKQ0hEa0dBeEtKK0FWK0ExcVZpc3NtZ1BqcEtxQ0xqQzhjRGhCM0NoNHUvZS92OG9xWWk5emxwYTdteHVvUDlNUzB0THk3ZmpTbDlFVWdsS1c4Q2lzY3pON0VZa29jd0RyejM3Qms4LytSeEhEaDZsYTJjSWxjWlg0TDJhaXF0OWx6VEtlQ3hveDlwU284bDQ4SUdIMmJ1MG4wUm40QTBFVGFJenFqd3FSaVVXSlFvbEdpMGFFeFE2R0xSWVFoRVlyZzlaN094bWFYNHZ6ejN4UENsZFVqcHh6Q2F2ejNaNlhIWFRMUnFOSlVXUkVKd0d0OE9SMkdFZ2Z5aHVCdUxxS0t1Qk5FMVJPbnJvQnUvcmwxVjlKdWw0MVRCcDZTQ2dNU01oYWtTaGdxckZhSXpFYWhMY3NDSWw1V0I2Z0x1V0RqTnI1MGxkaDY2WnhYaURxWSsxQ2VOelFJbENpOGFWSHUwTnFjcXczcEtGak1OTGQzSFB6TjEweVpodUc5TFNjaWZTL2hXMHRMVGNtZ2dnS2haTWlhRmo1aGowUzFJNnZQejBHN3o4M004NXVPOHVNdE1qN3p1cXZJcENJc1RTblVRblhLbEJSZ3c0WHE4Y0MxT1BTVFNLaEE0elBQN3dVeXpPTGtXSEJURlVWWVV4aHNvN2docnRacnhYSVBGK3RaYUFEdEJMTTN6aFNKUkJPY1ZqRC8yWURyTllPaVRNUkJFcVYzNGd5UlVmMGVjaEk2UEhySjdGWUZFWVV0dkJKUFoyVG4rOVpwU3Rmd0lEaUl1Ui96Z3V0djR2SlJuOVAwR0poYURCZzVGNEdhQkowYVFZVWhLeDJHQXhRV09ESlpPay9tVENzWVBIdUh2L1BmVE1MRklxbElzQ2RySXBTZ3prQmtSN1VJRWdEb0tRb0xGZVE2RTR0SGlBaHc0L1JJOFp6QS9ta3FLbDVkdlRwaGEwdExUY09rem1hMHBkTGlVSnFlNVFsaDVEbDFlZmVaMC9mLzB2NkpvNVFnNjV6eWw5aWJFSnRRbEFMSUFLVjd2cGVvTUVRRlBndFNYNkdkdklnbVZtWm9IRGg0NVNsaDd2QUt1cHFoS1ZDZFpxUkhtOENpalJpQXAxdm1XczVOS0VhTk5rTW56dUNTWHNtdG5MUXJhSGk4VzUyanpLOEcwVlo1UmhDYUJ3UWJDa2VEUlZXY2E4eTVGVC8wN2M0SVlTTndPQlJCdktLb0JvcEF3a0pIVWNQU01ob1NRMm80aEIyRkJibG5sRUFobzltcjlPQ3NGUEZJY3BGQWtKQ3MweSs5aS9lSkRaWkI2VksxU1ZJRjdxSG1xUm9BU3RIWDdpTldzMHJpb1JEd2tKdy82QXBKdHhjUDRnYzh5eHdxWHZjY0JhV201TldpSGIwdEp5RTdsQ3dkV0VpRjJZMjgzbVJvNGg1ZFhqYi9ES3M2K1RoaG5FR1JKSlVNYUNVYWcwRUd4RmNCNEllS3J4c2lmeVBkVm9yVEdMOVlhd0paODBpbGhJMkxOMGdOblpCZGJYY3l3ZGxER0U0S01OVTBmanBBTGwwQkxGYjVDQUN1TVMrR0YveU14Y1JyL1laSzR6UjRjT3h4OTVobE9mZjBKRlNiQU9VVmNXc2xmTHNWYWk2ZG9lZzgwK1FUdE1SN002dk15WnkxOUdxeTl0Y0tHNnlrN2YvaUhiS3ZjWUxJdmRSWmFYRHRBaEJhZkpkSVlLQ3FzU0lGNWJCQlVRRmVwcGpQcGJGeU9xazYrUDIxOXJyRmdvWU8vOGZwWjZ1eWsyS3F4UHlPd3NSaUJJR1QrTFE3UkNCR1NVVngvSXNveXFLc0VscERZaDcwTzE3bGkwaXh5WTI4L25HMS9jbEhGcmFibVZhSVZzUzB2TFRVYXp0ZTJzcnIybERCckwrc2FRaElTZi9mZ1ZYbnZ4RGZidU9rRFpMOUhPZ0FKdEZGb1V2bko0S29Rb1pJMHl1R2xEL3duSGdodFdkYi9OQ2FHSnlCcVdkaTlqZElaM0E3cHBSc0JqRWt2aGgxaHI4VGlnTGtwRU1FRWpTdEFpZGZwRElMTUpsMVlMZHZVV1NHM0s4ejk1bVNjZU9VNW5MaU4zZmE0bUtLOG1aTFZveE1OZ3VFazZrOUNkUy9ua3pDZjh3Ni8ranZjL2V4OVhWanZiYzNFRHh1d1dRS0ZKTUhUbzhORGREL0hrSTAreFoyNEpTZ01WaEVKSWJUYWFQNHBaVjR2V09BTGV3K2dzVXVNMEUwMk1zcWNxbzl4MFpIUklwVWZWRCtBRHZTUWhlRDh5b28ycEpRR3Z0aDZ6U2hXSTlsUmU2SFU2WkRwRkZZcTVaSmJseFFPb2pkczhLdDdTY2dOb2hXeExTOHN0d05RUHNqUnhVNE5HOGV6akwvQ0xWLytDeGU0ZVFnN3puVVVHbTlHaFFOa1lPU3hWZ2RJQmEyM2RxK2tLUHFrM0NqVTJ4S2Vlamh1ZXhnSzFnQ0V2UFVuV1FSdERVWllrblJRcEE1VXZFQ3N4b2hxaXc0V29nRkoxUkZZZ1RTM2VsWWdQQkNlVVZTQlVtbDQyejB6V0k1VjBpMy90TkYvbmVsSDZJYll6VDNlMlM5STF6S1F6ZE5QWityWjZ2Q0Q0b2FKSHlSVUpGQm8xQkl5R1NqQ1ZSWHVORENjTllrTjlqQlJLQ1Y2RHEzT2E0d0dNRnlXYWdFakFCTUZyUjdsWmtpVWRzazRHZUVMUUJLL3gzcUVzbytQbjYrV0lDS0xqYTFVVk1CMk5LeHplZTFJZG5Wa1NsWkdTYmtsTmFHbTVVMm1GYk1zUEFsWGIzalFSdDhtcHFKMm5OMlM5ZlB2bzFEZjVDZEk3ck9SV2tCampPK3JmSkRMVUdQTEhYTmF4ajN5TVpnb0dTRkJZRkJrL2YvNFh2UEQwUy9UU1JYUkk4S1Z3ZWFQUFRIY0dBSnNsQkFjK0JJeUZ4SGFpakJXL3pkZFRSdXNKTjJUOGRqb3Vrd1ZnZzhFbWVUNWdMbDFBZVNqeWl0bTVlY3F5cEhJbDJJRENnZEoxOFZsajZLUmpCTkI1aG5sTzFzMHdIYzF3N1JLL2YrZDNYRnBkWVZEMDBWcGZsNUJOVTB2cENweFVsQ0huM05vRnpsNzZBaytGVm5YVGd3bWgzZ3hsR0w5MG5VeVlzc0xYLzFIYzBGQndYR2RPeVh1Zi9wSExGMWN3d2VBTElkTVptZW5pU2w5L1Y4UVRTSFQwbm8xcEJDQW01amFqcEJheURvV2dCRXhRcENxakdqaU9IcmlmUis5N2trelBZcFhHb0dKVXQwNUppUHMyWWNzWDRoMkR2Q2labTV2RGx6NUd5RFVvcmZDUzB5ODJiL1NBdExUY2xyUkN0dVgySmdTTWlvWkhFdXIrNXlFcVZlOGMxaER2K2swTDNmcmowVHRXbW4vRTkzZjQ4ZC95ZWowTkNzYjVjRk4rOHFyWnZEb0hjMktSV3hwTjdlQVpLeUlqZ1RTeVZCVjI4SmtOcUp0NFp6SEdUSFc5SlhycUozVktrU2paNFRjM2JuOFFKdmJYWU9paDZDQWt2UEhzWC9MNFE4YzV1SFFmNGczRlprNmlPL1JtRWtwWG9KUUhoTkpESUNOUkdwZkhSZ1NCTUxwd0dhdFdpMENkUDN1ZCs3OGwzellTemVtcjBmTlRuMzlJbW5peVJMRjJhWlhkdldWYzM1TkpENnN0WmJpSVo0aFJYVkxiUlZ3U3UzdDVnN1dXemVFYWg0N3NwZHc0eDVsTG4wR241SGNmL3oyZnJaekE0L0QxL2x3ZlRZK3VVQmMwTlpIQm5lZStjZEpKait5am1tcjlMUkgwNlk1c2t5dVdLUUg4TFFnRUtpb2NGUVVGL1kyUFJoZFRZL3UwaHZwS0tFeXYwZFRIWE9vMGtSakZqa3N4cENTa3BLUWJQZTYzRHpLVHpPTHluT0ExaVZYMHBZejV5Y0ZFSzY5Z0lDaU1nQVRGbnBsNXpwMzdpcm5GV1d5cXVMQjJqc1c5Q3hTaDR2endUTDNPbHBZN20xYkl0dHoyVElxOWtWaFZVNi92TUwxZXREUmk5dHQ5RnI2KzFHaDZXeHZ6ZGJpVnVpcE5xdWxwQVZ0UFIrSHdyVzkzT2pBY3h1Y0xNNHNNK3g2UHBjTXNUei82UEgvNjVBc3M3emxJYW1ZWjVnVVNMRjVGcVJHTFloeEJXVUNqbEVHQ3dwcHhYcU9tN3Jna0VML3Vha0Z5ZzgzK3Q1YXNCZUtSMWFBcXZqanpPY2NPZE9oME00eFM1R1ZGbVh1Nk14cWJhSnlEc2lvUWJWRmkwR1FvWXpIV3NyUm5IK2RXVnNpbHo4TGVPVTUrOFVkV05zL2k2ZGV5cWJodERmSEhUYkpVdkJBU3h0SGxxelo1YUFUdzlnYXozNFI0UVhNOVFqQzZ5TWEvd3pvaTI1Z0lDeEFDV1pKU2xCWG4rMTl4YnUwY2kvdDJZVHNKVW5pME1TQk45d2xxRDJHTjlyR2xMVUVZcmhWMGRKZE8wcUZrU0REQ3dBKzV0TEhDeXNhRlcrS3VURXZMemFiTkZHOXBhYmxPSm45T2E5V29takQ0eEVQR3Q5d1ZBUVVVZ3lqcUZab2lEM2dVbXBUalR6ekR6My8rQ3c0Y09JUTFLZjMra0xJc1VVcWh0VVlwUVJzMTZ1UTJXcnNJV1piZG9NU0JhOS83eVl1S1NhdW15OE5MZkhycUJGNDd4QXI5Y29OT0x5SHBLTFJWV05VbG9ZZWhpNVlNcXpNeW01RWFHOFY2Q09TRElaMjBTNXAwZVAvOUQ5a3MraWpTNzIzL3ZsdWEyS2VLNGpUb3JRUGFtQUFFSU9qWVBBSmR4M0xIRWQxYkZxUHhCQzdKS21mT24yRVlodWl1cGxRNXVTOVFvakhPWUlKRmVRMmhFYkZSNWl1bDZIYTdsTjVSbGhXZDdneG94YVhWeTZ5eGNiUDNycVhsbHVBVy94Wm9hV201VmRrYURadHNDakRkS01ERmFKV2FuR2Y4NWROTDV6RDBxSHpBMHVXMTU5L2d0VmQvenA2bFphckswKy8zS1lZNVdtczZuUTdHbU5pV09KYU1qNFNzVW9vUUF0MXVkOExOODd0bFVxcFBqNERVbnFOdnZmY1dwODkrQWFhQzFGT3BJVU8vZ1VvVmxSTzA2cEtsY3lTMmcxVVdFY0VIUitWeUxxMnVzTGhybmw0djQ3UFBQdU1QYjcxTlFHUG9Fb3ZKYnYrdjhFYU1qc1RzWkFldGthQWRTMWVEUWRIa0ZOL2E5SWViU0oxMjhQbjV6N200Y1FGdkhWWGlHTHArblVhazBTRjI4cHJNdVJZUk9wME9vaFdiL1Q1RFY1SmtsdjV3eUxuejUvRnRQTGFsQldpRmJFdEx5M1V4TFZyREZodWluVHByalc4cGc2V0hWQW1DUmRQbCtHUFA4dHd6TDdGLy8ySFcxemZSeW1CdFNwWmxkTHRkckxXRUVLaXFBdWZpYldFUlFVUytkeUVidFpiZUZrQ01qNWhybWlVWloxZS81SmYvL1BkY1hEdFAwbE9VZXNpbXU0eFRCY09pSW5pREJFM2xBOE55U09HR2VDcVVjWFI3bXBuNWhEUG52dUNmL3VXL3NNRUdtb1FDVjhlMGY2Q0lIajBtbzdDcTloclFJNXV6bTgzVWRrem04aXJ3Q0ltMU9EeG55dE9jT1AweEs4VUZaTWFUek1mT2N5b0lxc25QSjU3UG9iYmt5bjFKaFVNc3FNeXlVUTM0NkxPUCtXVDE4N3I1UWl0bVcxcmFITm1XbHBZYnlBNDVqbE9GYm1PWEFvdWxTeWthUmNaTHo3ekdTeSs4enI3ZEJ5ajZKVWFsc1JXb2lrTEdPUWNldlBjWVk5QkdvM0NFaVlpc2lORHRkdXZscSs5Y3pzYmwxeG15VS9zc0JFby9STkI4ZE9vRGVyK2U1WmtubnVOSDl6M016R3pLNnNvcU5wdEJsTVpMb1BJbEVMQ3B4aVlHckpBbWxsTm5QdUlmZi9PZitOM0h2OGJqc1VyaEpaRFlGTytHMy9FZWZuZlVwWXUxNkIrLzhuVkVwNHRiUWNTT3VaSjdpUUJlQnp3ZWgrSEVseDh3T3ovRDBVUEhXT3J0d3VjQkk2RytLS2tJYUpUV2lDaThEdVRsa0hRdW9kdnRzaGsyK2ZMTUdUNzg0Z1JyckNMZjIzMkhscFpibTFiSXRyUzAzSGdtTEs4YWxJeHJZU0NXeWpnMEhSWjU4cEhqUFBlbnIzTDQwREh5elFKZkJXWTdzL1Q3UTZ5T29zV1hIa0lVc1RaSlVEb1FuTnVTSXh0QzdJYjB2YU4yZUM2Qk1oVE1wclAweXpYZWZQdFg1SG1PcCtMdWczZXpXVzB5UDl2QlV4SkNRRlNGcVhzcERGeEJmMk9Wcnk2ZDRiZHYvWnFUbjMvSWtFMnNVaFNxeEVtQk1RbmlidWVJWE5pNVVHM0tUcXc1dkUwbk5vM0NqOXdWYmpZVHJYcEZieXRXMHhZRzVZQUVpNlBpZkxqQTcwLzhucUViY0dUM0VaYnRjdjFwaDVab3ZkYWN6MDU1dkhFTWRNWG1jSk12TDN6Qmg2Yys0RHpucUtodW9URm9hYm01dEVLMnBhWGxXN05OUmsxYkp6VW1BVnRFcks2ZlI1L1k1NTU2bVpkZmZwV2wzZnRZVzltRVlFaFVTbEZVcERZalN6SzBhRXBpei9sUmVrR1prKzd3RFdhTStTNTI5UXJVMGRoR3hFd0pXbU0weWdpT2lpRjkvdmpSNy9ub3hIdjg3TG1YZWV6aHB4aklaWkRZNXRRa1FqZXpGRDduL0tXem5Ebi9KZi95bTMvazFLV1RLQlNPSWNFWVNsK0FoaUlVMTJka2ZDdHdGUS9jNlhta0h1ZXgrTDFWUlB4T0xaYnJxVkdJaXpteTg3MTVOZ2REemhabktVN21iR3hzc1BpamVmQWVKYkd3QzlFamNlcVV4NmFHQ3hzcmZITDJFOTc5OUkrc3NvckRZWlVsbDJHYko5dlNRaXRrVzI1enROYmpITW42dGViZlVkQ003WFVhejFpWnNMeUowWS9KcXZldHl3K2hNU3YvK20yWjlIbmRLWHR4aXcvc0tNcDA5UVZQVitUTDFISkNDRmU4d2ZnMVh2amZIUk03cjJ0ZlVQSFE1Qk5hVEwzRkdYLysvTi93OElOUHMyZlhRU1FvVkJBeW13R2FmRkNRSlpheWNORjJyTTZEYlhKalk5RlhpYllwR0lQVWpnWlpscUhSK085TDRlM2tlMW9MVE9jZEcyNmozcDVBRGhReTROLy84dC94NzMvNUh6aDI4RWZzV3o3QThyNTlHT1c1Zk9rOFo4NTh3Ym56cDFrckx4TndTQk43czFBcU4zWVJ1dzFTWksydGk5ZjhXSDVPL3MwQzIvZGpVcHhQajZtYU1uSzk2UjUwemEySG5RbFZ0SHJ6QXBjSHE2aTZIZk9GNmlKcnB5OXo5dlNYN0oxZDV1RHlRWmFYbCtuMWVqam4yQnowMlN3R2ZITHFKSmNIbDdsUVhhQ2d3TlVleFVNWlhpbWUzZEp5eDlFSzJaYVdsdXRtUnkwaDBPbDBHQTV5TkphRm1RVUcvUnhCa2RMaCtCUFBjL3pKWjltMyt3Z2RPOE53T0lSSzRRV01VU1FtbVRDKzM0bXQ3MDJLL29Ua0JyUTh1QmJDMUhTQ3BwdVlnaUNoanQyV1VNdGEwSHg4NWowK092Tk9iTjVBUU9OSHZjM0FvNVVuNkZCM2RHTGNWbXVxWTltdFNuUFIwZGltNlRwTnBCRzNncUNVM3RLWVJDbU5OanBlcE1sVXpyV3c5YkRmNUlCa0V5c2VGVjN0ZEN6cWJmY1NNMkg5S01jM2NJNExyRzZ1OGNYbVo2U2ZaR2l0OFNIZ3hGSGlNTmJTZDVzTUdlSndlRHpLU3V3S051MzcxdEp5aDlJSzJaYVdsaHZMeEEvcmNGZ1F2MllNeFJBQ0NSckwwMCsrd0orOTlqZnNXN2dMSGJya2c0cXk4QkFVU21KdGVwSWtZeUUwQ3B6SGxoRFJwc2pYVFJIcTFZcWd0QUtCYnFmTElQOGU5M2RhVU80UXBCdTM0eDMzei9JVW9CU0pzWGpuUnFWUFRhOHRKZUI5ZkVoVEtWZm4wYkwxaHNNdFR5TmVSM2M1aU9rbGVEQ1RBK1loK0FuRk9wbDMyanlhY1lpTjNXNHRyaFJOaHBIZzliV25za2JqcU9qVGp4ZHR2cGs5T2pTVXJrSnFBZXVKRnpTamE3dXRYVGhhV3U1WVdpSGIwdEx5M1NCUmJjeWs4N2d5VUFYQk1zdXJ6NzNPODgrK3lMNmx3N2crK0xJZ2hCQ2RDTklrM25aMmdwaHJWeWlOOVpZeVVjak96YzJ4OG4wSjJTdmxlZTZ3K1pPTkdxUVdKdWpZWVVwVTdPNlVtZzZwc1NoUkRLb0JGa1d2a3lJcVVJU2MwZ2Nvcjd5T1c0azBUU25MY21zcVFZM0dZREZZTWxLVHhSelJJSGp4bEZLT2JwMEhGUWpheFg5UGRwMjQ2U0x1YXhLRHBnWHRsTEQxRWlpazJPS0pxOUNZV3NhS0RyaFF4ZFNoU1pldndOV3lHVnBhN2poYUlkdlMwbklkWENFc1ZJdFlvenE0U25BWUxCMk9QL29jUDMzbVZRNHMzOFg2eWlZenlVd1VzSW5HV292M25xSW9jTDRBYTZPNEdhMG5kZ0VUMmJyZVJpQ0ZFTEQxL1BQejgzRGh1OXp2R2pWMVMzbmlGdmhPclpEckxSMi9VTzlHQ0ZJM0J0RGdOYmtQZFRieFRMd05uV3RLY2lERDFERmJvelZPS200QlJYZEZKcU92QUVtU0VFS0l4MG9zQ1JtR2hPQUJwQTY0YW5yTUVBaVVGUGpnNHhpaFFQdjZKS2dYZU5PRi9OVFk3NWdLTXpIUGxLajFOSjN1VExTUEM0RnFuRUNQVnFDMEJpMm9FT28ydmxQTGFtbTV3Mm1GYkV0THkzVXlKV1psZlA5Ykswc1ZGQW9iZldLZmY0UGxQWWZJK3c2ak80aG9kQzArblhNeGI3SXUxR3VFN2JYUWVNZ3FGWVhFN096c2pkM0ZiOGhPSW5iN1RFQ0FUdGVTcWk3VndCT0NCbExtV0dBMm0rUFF3Y01vcGNqem5KWExLNndQVjZtSTBjb2k5Rkg0VzlvVWZ6SUthNHpCVGRtbDdVOE9jUGZ5ZlJ5OTkxNzI3dHVIdFphMTljdDhjZm9Memx3NHpaZG52MlNURFFwaWVOMEhRQVZrdXVqclpqR1p1N3NqZXVJaVowclFLc0JvQ0RLT1dOZXBNYzNmaEE4aHBodjRpZlNLZW5uYVFManBRcjZsNWViVEN0bVdscFp2emZoM1ZFKzlFQk1acXhEb3FDNVBQdm9zeno3eklvY1BIYVVZT0Z3Vm1PMHNVR3pHSEZGb2NpY0RpVEhiTExTMlJtS3Y1Tklnb3dodXI5ZTdjVHQ1TmFZTDd4dVJNVFhiRlczS0JJcSt3ekZFazlGbGx2c1AvUW1QUDN5Y2V3NGZRNG1tay9XdzFwSVhtNnh1ckhEcTlDbis4SWZmOHZuR1NUd1YvaFpQbEcwS3ZTYlRDK2JuNTdsMzd6SCs4c2YvbXA2Zmp5a0YzcUZGYzJqWFllN2FkemNCeisvZWZaTXpGMDd6NlpsUHVGaGRRS01KUGhiQUJYRzNRRVMyWmtKZ3FpMUhYeUZYUzJZZCtRRExxQlV2QWtyRnV4R0NHelh3alRadnpRY0Q0ZFkrN0MwdDN4dXRrRzFwcWRGVFA0clhVaEErL1psdnM4NXdQYmNJcnluMDkwMjUxcTVKMDRtSzQwaXNxb3U2RkJuUFBmMHlyNzcwQzVZV0RySit1US9la3VndVpWbVJwbWtVclVFb1hZVlJNUkxybkdNNEhPN1EzS0FwMDI2RXMwV0xSaFNvNE9NdFdpQzFYY0FTR3U4Q1ZYOVdwZ1hCZDBNektsZXR4eEdZNzg0eEdPWVlNdmIxRHZMVDR5L3h4TU5QczVEdFpyaFprQ1U5UkFTWE96Sm1PYkp2a1FOTFI5ZzNmNGdQVHYyUnYzLzNQNDV5U1dWUzBPNFlLZFJiM29wdlg4RnQ0UXJiZTgzejF2amdZOGFuYUZRQVM4Sjh0b3VuLytUSFBQUHdUOGsyWnVtWkdaUlZzUkJNUEtwVVZFTlA1VHl2L3ZnMVB2ajBmWFNsY1djODY2emlpS2tZdDhldDlZbEJrNG16WVhTQ1RPUUpLRVpmQmo1VXhOUWNqV3JjSE5Bb1pRamlrSkh2UWRzU29hV2xGYkl0dHpkQndBZFUwR2hWbSs0SFFTbEJRa0Exb1R6VmhQUmt4NVExWUdULzAwU05sSUJSYWpTZlRMMFBPd3NCQlZ2NnBqZkxHaG03MWo2eVV2dGlOckp4Y3Zramk4MkplNGNxcm5EY0dVdWdtdkNSallicTQ5VW85ZlZlc3R2MVRpTkd0K2FtanBtSUlLbUFVdEVXU21vTkZjdDNlZ1JTRkNrL2YrNnZlUHlScHptNGRCL2lETUhsV0oxaXhGSlZGYzVFcTZFbzZPTzR1TElBSU1uUzBaajR1ck44ak1mV095bUtFQXpXcEZTVkl6V0NFVWUrMGVldUEvZWc2ZUlJUURIMklKVXdrYitxYjlodCtTc044eFhka2FSdUNGRmxXQkwyWmdmNDZ6ZitEWWYzM1VNV3VzeVllWWJGeFpIanJzWGlFZnhRSTJJNWV1QXg3cnJyR0t2bEdtK2UrQytreHBEN0RheU5CV1RPTTg2bmJDSjl0Y2dmdDNmMWlBb1lFODlGMzlSU1RRbEVuY1J6eVRmOUYrcnhNOGxFUUhGeUVDWnpPRFZJSlVpQUJiTUw4WXBYSHZ3empoODVUckthUUZCNFFFV2pZYXdrOFVKRVVtYnBzdkhwSmcvdmZZUmRUKzVpOTh3Uy8zRGlQOUVua0hVc3c2SzYrZlpqMjlaOUpXRTVuVXRiVC8wT3liNFRUeHZMcnRFeVpPdkZZeXRpVzFxdVBmVFMwdktEWmpxNGM3MlIxbXRhNXkzL0s3VFQxMFB6V2h5eGJ0ZlExUFBzbnQrTnBZUEgwR0dXWng5OW1XZWVlcEVqQjQrUnFSbENxWkJTSXk1VzUxczlidW5aUktXRHVzWUlkZjA1cFF6ZUN4cUYxUm9kaEN4Tm1lMHRBQW54V3QxdXRXNmEyQS8xSFg4Rlh1MFFheFNGSzBuSWVPclI0eHphZXhjenlSeTlkSjU4STZkallrY3pMZkY4TkFJbWFFd3dHSjlnUXNiclAvczVEeDcrRVNab09pUllGS0VFQWhnVnp6RlZYL3hFeHk1ZFY4Ykg2bmd0T3Q2aWJtckdCS3lGTk5XakxBNXhVY1FpY1ptbUxxTEhtNWkvR1FDdklUU1Blc2NEMFI1TW9qOUI1UjFQSFQ3T2ZYc2ZZQ0hzWXA1ZG1KQ01MaXEwNktoOVJXTzl3ZnFFR1QyREtRMnplbzdEZXc5eGVPRnVRRk9XSmRoYk5TUWJkbmpVeURVOHBwWWpvd2NUMDFiRXRyUTB0QkhabHBhV0hXaVV5UFJyYkhsOU9QU29FS044ZzM2RlE2RklPUDdFTTd6eCtwK3pmL2RoSkZnMk53ZVVSWVZXMFJSZmFjRnFTeFd1cjIyQjFocm5IRm1TSW5pY0sra2tLWXR6ODdWdVZiZjhELzVkdXcveDFCTlBzbWYzRXNXbXg2QVk1bjFtdXJPRXFoeGQ4Y1RvZEVDTEFoeGFBdnQzNytQb2didjQ3TXYzWXk4ekoxRythN0FwRElmTldsUnQ4YVFtc2pZTlhUV0RUYU9UUUwvYUpFaEFDb2xSVWlCUkNlS2tidGlnNkVnSFg4ZTVWVEFrTUdGd1cxK1VpQ2RJd0JNd1JyT3dNRSsrVnFMUlBQWDRVK3lkMmNPd1B5VEJnNVg0Y2NZK3V3RUlLbDVpbUVSVHVoS1RHdllmM00rOStUMTg4THYzNHExM2U3UERzUzB0TGJjQ3JaQnRhYmxUdWFJR3VNcnRkclU5dWpTVHpWRVVnY29MaW96WG5udWRGNTU5bmVVOUIzQkZvTXdIaUl1ZHVoS2JqanhmUmE0L3oxSHIyQUVxcHBCb3FyTENkQXk5WGcrTEhkbXQzcW9ZREEvZS93QzdGM1lqM2xQbUZVSDZaRFlqMFNadXYwQTB6NWRhVGdwZ01RRzZZWmJqUDNxUnJ6NDd6L3BnaGE4MlQ1SFVvblV3SEpLUkViQm9ER0JIRVdoZEgyTW5nYnlJZWF5ejdNTGhSZzRCRm91VGlvN0tzRGJCVlo1RUVyUlNsT0pxOTFNMWthcEFiUXptYTdIcnFYeEZzUllOcGVaWklERXBhWm9pQStoa0hmcXVQL3JrSktMcXhoQUNycW9JV1NEdFpCdzRzTXhzT2tOUkRxYnlHbHBhV3U1VVdpSGIwbklISTE5ZlgzOVZFbnI0d3RaNXVnbFBQL0lzenozekV2djNIMmI5OGlaejNVV3NqUzFIVTV1aXhWQ1dKY0dWS0tWUTFuenRPcTZLR2JjOEZSSEVCOFJEWWhObWtsbnlhZ012TVhmNFZpc09Va0JQZFhudzJBTlVneExSR3FzU3luN0IzcjI3Nlc5c1lpWnJnUVFVVVhRR3dJU1VDNThOT2JEM1lYNzJsSkQxRlAxOGhlNWNndTJtYkE3NmRRSno3S3dXcDgzaUFncFAxbEdzclYxQ2EwM2FTVGp6MVdsKy9idGZjMjc5SEFMY3UrY2Vubnp5U2ZidDNjL20yanJCQ1oyMGk0akM1eFdMdlhuMGhIZHFiRjdnOGJyRWEwK0ZJMDFUQm1zRGRtVkx6TmdlVml5NUw4anpQR1o5WENXb0t1SkJSZC9ac2l5Wm4xOWtjWDZSMVV1cnNTdGFTMHZMSFU4clpGdGE3bmdtV3daTmNCWGgxK1ExR2pJcUxCckxTOCs4eWtzdnZNNitwWU1VZ3dwTGluaXd5a2J4RlFLdThuanZNVG8yUUhCeUhWRTFGYU82b2xYdE54dlEyaUp1Q0ZhenRMU1hTMStkRysvZkRvbUZOOXVETlRVWmUzYnR3eGNlYXcyenZUbldCNXRZMDZFY3J0THJaS0Fjc1dyS1I1dFJHZC9JNzlwWmJPaHlaUDlSc3A2aUNIdll6RmR4NHRtL2Q0bXljcldBdFJOYXZzNHZ4cEZhSWRHR2JyZkw3TUljeGlTY1BQa3BsOVpYVVFoTEMzczV1Tzh3ZHgwNnpPYmlBRjhGWmpvOU5JcFFCZksxSE5Qa0JpQUVCVjQ3Z3E3dzJrRVNqMDF2WVliOXV3Nncva1VmMGRDeEhaUXlFSXI2OE1ROWlqbXlvT3BsR2d4S0t6eWVxcWpvN3VyUlRidGtTY2FnTE5yTWdwYVdsbGJJdHJUYzJUUU9CVnNWd1k0YWRtS1c1Z2ExeDlKbGtTY2ZQYzRMejc3T2tidnVKKytYaE5JejA1MWxNTWhKZE15aDlVNUFQTVlZRXBORWx3Vi9mVUxTZXgvelpLdUFOb0VzU1JtNkhJMWgvNTVsVG43MUh1TUc5VnZidzM3WGhWNWZqNDVsVnpyRlpoMUNMdGcwbzVzSnhiQWlzUjFBMTQ0WERsRjY2akFGdWwzTmNIaU9zbHpqMHk4L0k1dUZTbkpLWDdLZ2RyTzJ2b2xnYUpJSjlJU1BnaUtnUk9QTENtTVZuSWN2VDUvbTBxV0xlQ29DZ1kzQkJpZFBuV1IxOVJMQkNWcXBhSEVXRkVZWlVtMVFkVUhhYUt0R1VWa0hCdks4eEVwQ1VpUXNwTHNKVlVCVml1QUNPck1vcVJzYzFHRm5KV29VNWRXWXVuMnh4UVNOMVFrK0Q2Z0NqRXByRDkwMnhhQ2w1VTZtRmJJdExYYzBXd3QxUmkvdEVPbWFsbjJLQkVYR3M4ZGY1dFdYWDJQUDBqTHJsd2ZnTkZhbkZFVVZjejF0aXNaUXFRb0pDbU1Nd2NkYnhTWk5ybXZyUTNBbzFlVEpLcExFa2xjYWpXTDNybDNqM2JrRlV3c0FqRTRvQzhmYzNCd3JsOWNvVElVMUhRYjlrcG51UEZVWjgxWGpUdmdKLzZ2YThjSGtiR3llNTlTWkUveWZ2L3cvRUhJeVVqWllSd0NQcmROSFZDMWtwUzZxaWxGZVM0SWh3UkNqbmlWdUZLVzJXRDQrK3g0Zm40MFhBeGtkTXBWUVNJRkhTRWlvS0VhV1hwTVhCbldHSzRLZ1VDeXl3TjE3anZLWEwvNE5DdWhtWFZSaUtGeUJLRVZROVRuWXVGR01oS3hHZkxSTE1Db2xJV0d3UHNRVFNIVkc3bDBibEcxcHVjTnBoV3pMYmMyazkycVFVTjl1bnZaOGpZL20rWFp2VmRtMnJHM3piRnRtellRNG1ueC9PdTl2MnpiNjFUNnFBQUFnQUVsRVFWVEoxczlNZjM1Yng2aUoxMGZ6MWJmV0RTYTZIRFdldGFwWjM3Ymh1bmJxRmV0dHU2cXhLcTM5TFROZWYvWXZlT3lSWjFsZU9vd0VCUzVnZFlMV0ZsYzRsRkc0MHFNa3RwN1ZRS2lpNmF5MWxuQ0YvUis5UEdtdktURVRkK3VZZ2JXS0pNdHdWVUdWeHlZTEs1ZFhPSExvQ0RGK21PQkcvbEtSS0tadnRnVFNiSlpEK3YwQlBadlRuWjNGSkIxV0wyd3drM2JKc2g2RHpTSGFLSXpWS0swSTN1TkRRQmxCV2NqREpyc096dkQ3RTEvaEdOUjVvem1PbkpnOFVFQWRrZlVJdWhhWXFWSllrK0xjWU5RN0tteXhlNEtTU2JNMXpaQWhROUdqNHE3bzhsVVNpSTBPZEczdXBTWWRESUI1TmNlR2JIRGg0am1LWXNqeXJnT3Nmcm5HZkhlQnpIVHhvY0lGaHlnRm9rZFdhc1lZZk9YSkJ3VmFOUE9MYzN6NDhRZGt1b1BCRW55ZGN0RkdaRnRhN21oYUlkdlNjaHNUeGQxVVdvQnEzcnYrNVhjNmlqd1hGREEvdTBoL3N5U0lJbU9XNDArK3lEUEhuMmZ2MHQya3BzZXdIQ0plb3pCb3BUSGExcmYwdnh1MmVQSFh4VjRoeEZ2VDNiVEwvT3dDQmp0UkZEUU9OY3VOR0p6ckp0YjNmL3pKU2ZZY1B3d0IxdnRyTE8zZGg4czlwOCtlWS9maUhNN251T0JpMXl1alVjYkdibDg0UXVMNDlPd1hmSDcrRkk0U3FhV2x3Nkdqd1JWR0s5QUdMUjduQTRKbktBSHRTc3lvQWNha2tCMlByYStuNHhZWnVuNnU4UVNjcnQwUHFHSlRrdHFmRmhxUFhrMmxLN3ozREJseS92STU5c3d1WXpxR0lwUlFsZEdPelNxME1ZZ0VxcW9nendQaVBYTnpjM1M2WFV4WFVZU0NTMnVyckphclFJejZFL0x2NDBDMXRMVGN3clJDdHFYbE5rYXB4aCtVaVE1ZjQ2aHM4RmY3OU5mVGlGaU5wZGdNQ0NtYWxLZWZlb0UvZSsxZnNieDRGQ1FqNzVkVXBjZGdNQ28rdExFRUZ6ZWc5dGJmOGl4eS9kRTBrWGo3dWhHeWlVQW43YkRMN3FhbmVwVFNCMkpLZy9kdTlKbnBDNER2bXhqMUhQTFdlNy9uaWFlT016K3poNjh1ck5ETDVzalNEak9MczF4Y1c4RW1NZXFzakVMd2RVYzRjSGpTdVI2ZnZQTUZuNTAvUzJPSVZaRGpzU2hsY0NMUnBXclVJVzQ4L243S3NEL0FhTmt3TVpWYTBBb29pUTF4TlFHdmlMOGdUZGZmRVBBKzRLVkpXSWtDdWNEZ2dUVXU4OUZuSDdKN2JvbmwyWU5ZVVNobkNCN0tVT0tMRXJSZ1UwMjNsNksxWnZYU1picnpQWUx4bkRyOUtTYy8vWWlpRnV6WDFkcTVwYVhsQjBNclpGdGFibU8wMXFQV3RJM0Q2QTBKTnNvNEN0ZEplMVFsVkdnMFBWNzU2Yzk1L3JtWDJidDBCRjlvcW1GQjhKNGtTVWpURkdnRTlIY3ZGRjJJeFY3RUVpUUlBUkdGMXBadTJtSFgvRzdXMTFhaTI2bFNlSEdnUUlLZ2xMckprVm1QcCtDenRSTzgvZjZiUEh2OEpSYjN6TEZacmxPcGdrN1NZWGJYREZscVFIdnlhc0J3bU9PVXgrZ0VzWTV6cTJmNTVQUUhYSzR1SUZTRTJyOFZvMUJXUStsQURMSEZGcUNpdTRQUzBibk11WW5ObWU1KzFnU3dKNmFqTHMvQytBUnBIclZHanEyaW80ajFQakFJZytnK0FMeC8rdDBZWlgwd1plL2NRZGJPcjVJa0dhWVRDd0JSRGhGUHZ5cHhlVVZsS25xZERoZldMdkwyaDI5eGN2MWpBaDZ0RkgyL2VkTmRKMXBhV200K3JaQnRhYm1OVVVyRmg0ekRVOTg4UDdhdVpGZmJSWUhHNGtxRmtLRG84dlNmdk1Eeno3ekJ3YjMzc3JFNllMNmJnZ2xvbzBqVDJPeWdMRXVjSzFCS1laVWVMV25MZG91dUs5V3ZEeEdQRjRNaGRneVRFQWd1aXJtZ0Fzdkx5M3kyZG1KNnAyNkp0TXBBd0NpSGx3SC83OS8vTzNxOURrOC8ranhWWDFFTkI1eGZ1OGpDM0N4RjZTbkxBVlVvc05hU2RGTkVQTU93eWovOCtqL3kwV2UvSVZBaXFqNlNHckt1TU14TGRBWWlBUlhxODRKb25TWmNvWi9BZEZIYzVQUEpYaGlOdUczeUVKcFd0YUdKN0FiUW9CUHdWYWpURm9RVkx2Q0hUOS9FZGkzSER2UlpYanlFVm9vcURCbFdBMXdvTUVhQjFnVHI2YzMzT0RzNHkvdW4zdVBreWdseWNnS08waGFJcjlwZXJTMHRMYTJRYldtNW5mSGV4eTVaUkd1a2IvNmp2bk01LzBoK0trdVE2RkR3MHArK3pzc3YvQVY3bDQ2UUR4Vkc5ZkNseEJ2YVNvMjJwYkhFc3RZaTd1cTVEVm8wNFRvRWJZeXFla1JNM0g4TUVxSlhiUkRoMEtHN1VCL0YrT0NvR0U3cld5U1NGOGhseUdKdmpvM0JCZjcyUC84SHhNUGhmVWM1dU9jdzNkNDh3MkdmSUI1SkttYXlqTjVzbDlLVm5EejFLUitjZW9mZnYvMDdDb2tGVjhaQ2NGR3c1amt4Y2xyRmFYT1VqUUVKc1lndk1INXZ4TFJqeFE1Rmo2UFhCSFNvLytuR2xteEFiSFViaU9rSEpvcHJwWVVpenpsVGZNRnZQaExPWHp6SGkwKytTaWVkUVpsQWxWV2dCWjBhRU1HVmprOHZuT1NQNzcvTGgyZmVaNU0ram9JaFF5QkFTcXc0YTRWc1M4c2RUU3RrVzFwdVk0cWl3T0cydk5ia3gxNHpTcUs2MlFFbm5xNmE0OG5IbnVQNTUxN215T0g3R1E1QUttR21POE53YlkxRUs3U0Jxb3JPQU1ZWWpMSGozTW90cTlJM0tQY2hZb3hCUlBEZW80anBBdFJlQlZwckR1MC9FRnV0UXQwMElhWmplTUpOTC9ocUlxaVYzaUFBWDIxOHp2Lzl0LzhYRHg1OWpEKzUveEVPN2p0TXQ1T1NkUXdvdzdEWTVNTFpNNXcrZTRaMzNubVA5Nzk2bHhJTnpHQVFWUEFnMFE3TGFvdjNRbUo3T0Jkd2pWOXZpSzF1d1dFQXdZd2svY2d0UTlXaDFTMml0dkhpWlpTVHJRSHJ4dUh0eG40ckVEQm9nZ2s0RlVhcEI0VjRsSVlpQkU3M1AyTzl2ODdGaTVlNWEva2VEdDI5ek55dVdYUUt3OVVCRjg2ZDU5eTVjNnlzckhCbS9Rd1ZKU1VWVHJ1b25pMlFBTlYzZG5oYVdscHVFMW9oMi9JRFlrc2QrNVZuVTZIT0cveWErVzRRZW1vVkkyc3VGVkMxWlJpaTYvdTFRQmhYa204UkZnUkVnU2dQQ0VFWFZHV2YrR3Z1a0ZvMmFxVnJhNjdKdGU0Z1ZOWEU2eE5SMGFacmx5SkQwK1hacDEvbnRaZitpajFMaDFoZkc0STNHSk5TRkVOTW9ra1NpOVdhb3FwUWRjTUQ3ejFsV1k1eVpyZHVSMHl3Vk1LTzZRWFQ0M1VsTktDTnhqbEhFRWNRZzFFYXBTeGFKeGlUc1RDM2dDVkJvWkZRUmM5OVRPeVdKYmRHanNGR0grWm5PZ3o3QlJmZFYyeDh0TWxiSC8yTzVWMzdXZHExeVB6Q0xCQTRlKzRNWjg5OXhkQVBxYUlVSjQ2bGlSRm1INzFlWjVKWmR1L2V3NjY1M1NSSmwvVzFUUzVjV21GOWVJbUtBbkNvMm9xckhKbHZOVWVtK2R2UUV4YzNZeE91cmM0RjhibkJFcE03REphRWhBUmpORmhodlZpREJEYUxqYmlsUnBGMU8xUkZ3WHBZcFJoV25ENTFCbnRLNFNnSkJCSmpxSHlVcmhEOWJMVzFlRGZFU1JVanNRb29hS094TFMwdHJaQnR1ZDJKWWxEVkhlaFZiY0FleFZoQWdvOEZMbEluOG9sRXdUaTZ6UnpuMDFNK3I2T0M3YWJhZTJmcjJQSDc4WU9qNlJZZldkbjZ2aHJONXhIS1dzaGFsQmlnbnNyNFQxUHJRQlZLWENqcDlUS00xWHg2NmdRekM0ci84WC82Yitsa25xSW9DQklURmQzV0FPMW9uSGJDWkJwZnV0RjJKa1lUbk1iUVFUSEhLMC8vRlQvNThjc2MzUE1JZVY1UURnZk16WFF3MXJHeHNVSEh6RkNGZ1BQUnVFa0J6c1V3bVU0c0lZVFIraHQvM1RqT3RZalVhanhXemJqc05LYjE4MGsvM25qdnZNUUFTbWVvb0FoaWtCQ05yUVROMHZ3K2RuVVdLUEoxRkJhdkFxNG82TXd1a205dTFzZm1Kb2xaR1YrN3JQZHpva0RNcWFoUWFGWXZuME5mSG0vZjlGYU9yb2ZxeGdaN2tqMDg5OVNMUEhMZjQ4eG04eGh2Q1VIbzlEcXNyRi9rM1pOdjgvNm43L0w1aFUvcHN6Nks1S3Q2eVdia0FSc2RNS0pNVm5YYWlpYkxNc284bjBqTDBLUjBDUVE2elBEWVBZL3o4TkZIV1pyWlF5ZnAwT2wwdUxSK2tUTXJwM25ueEZ1OGYvRTljcDlURFNzazBaU2h3QlBROUxmdTRaUy9idzdnYW5zd3FWK1l6TkZ0YVdtNW8ybUZiTXR0emJpRWFQSm4vaHFFeVRncyt1M1dXMy84Njl5dHBoc2pUSnRQcWVoYk5DRjI0eTFjcWZlc3FncDZhY3FnTENpckhKMVUrR0xBd3U0dS8vMy84TjlRdWcxY0dDSVQ2UVdxTnBLOWxsdm52bGE5V2tOaURTNFhGQWx6ZGkvMzNmTUVMejMvQy9ZczNvVlZzeGl4R0J4NU1jQjRSMklnanJVWkZmK0lHaGNVWFoyZGoxRlRpSFJOcUZEN05NU09WZlZsQWpFcDA2REVvdEhzMzNlQUM1K2ZSbVB3d1lQU1ZNR1B4ZEROWk10MVVxZ3RzWGE4RXRtR3FsMWJaODBjOXg5NWlCLy82RGdQSFhvWVUyU0VkZWltczZnZ0ZDc0ZpNTBGZnZyWVR6bHkrQkJ2ZnZCYjNqbnhGcGVxRlRLckNNUzg1a3FxZXJsak83ZEd0SHFCWVQ1eGp0V2l0OEx4NEw2SGVPS2hIM05zK1JnTHlTNU1tYUFLaGM4OWQvWHVaYy9CL1N4MTk3Qjg5Z0Fmbm4yZlQxWS9wcW9LdEZXamk1NXZ4TTBQb3JlMHROeEN0RUsycGVXbW9TY2lyNm9Xc0tvV1dQSFhPdTJtWEZwYkllc3FkczNOY0huOUhFR0cvQy8vNi8vTTZ1QWlpaUZoVzQ3c3BJUEIxeWcxc1NDQjRFQ2JESVZIay9EWUkwL3lsei8vcnptOGZKUjhVOWhZWFVNclE1WWtPTzlRUWRIcGRpbUhOM0E0dmpWWHVCZ1JoVmFXWThmdTUrM1Azd1EwU2hrUWh5K3JteTlpcnhPTnhwSnkzMTBQOHBQSC81UmpCKytuWitZb0JpVWFRNXAwME1ER1lBT2JKTXgxWnptOGZBU25ZcGUxZjM3L2x3emRKbDY1Wm9IeE5EVEVabUROVlZwemtlTGlCWmV4ZFhldlNuSGYzdnQ0K3RGbmVPVCtSMGlxbEhLMXdncWthVXBabGxSVlJXZTJ3OEVEaDhsMnBYUjNaNno5OWhJWGkvTVlERG41N1g0WVdscGFiakt0a0cxcHVhblV1YnFpMmZMbldPZkZsbFZKMm9FMEU4cHFBMjBxL3UyLy9lOVlIVjVnWWFiSFd2L1N0aVUyWGE2K0Z0RjF2bXNYNzB2S1F1aXFHWDd5MUl1ODh2eWZjZVRRTVlickZZUE5DdTgwdlY2UExNMm9hcGVFbSs1akpYcmN4bXo4SXBNS1ZTbkRrY1Azb0RGVVZCZzBIZzNlajNPUGIxTWxwVkRNc3NDUDduMkVZd2Z2eCtYQzVjMVZlbWFPVHRiRE9ZZlZHbXRURElyTEsydVVrblBYdm50UURyNDQvVG1mYjN5QzdnbG9ZVmdPQ2FFMkVJNXAySkV3OGJ4eFFrQllNUE04OStPZmNmZlNQYWpDc0hacEhUOEk3T3BsL1Avc3ZWbVFIZGw5NXZjN1MyYmVwVmFnc0RXQUJocG9vUGR1TmxkeGswanRraVhaY3NTTXR4ZVBYL3p1Q0N2R2p2Qm9KU2xScEVUTmtHT054NTRZUDR6REVYNnl3OVo0ck5GNHhwSW9pazJ5OTBZMzBBQWFPMUI3M2JwTExtZnh3OG04OTFhaGdHNEEzVjFWN1B3UUYxbDFNMi9teWN4eks3L3pQOS8vKzhzNGxKanRkanRFTWlJam81RTBPUFh3S1ZiV2wvbmJWLzZHdnVraHl3cGhOV3JVcUhHLytPRHFSOWFvVWVOZFVFWmtmWXduWXFUTWRUaGhjYklnTit2czJkc21MVG9zckZ6aHQzLzM3N002dUlIQzBCK3NzQlVMZSsvWitJRTh0K0pKRWlZUk5IbmkxUFA4NHMvOUdxZFBQczNOcXdzNEE2MUdtNm1KU1NLbHdmbVFVT1VGYVQ5bFovNEpHVTlTa3V5Wm5hTWxKd0dGRkJvbEZVTlQxVjBNaWViRW9WTWNtWG1ZcVdTV2xteVRSRzJTcEFGSUJvT1VRWllqaGFZUnRXbEZFMFEwbUpUVEhKNTltQ2VQUG8zMGtxeVhrNjduK0V3RVZVUE9LQnBia1ZnTERkR2tSWnVFSnRQTTh2eUpUM0JzOWhnTjM0YUJwSzBuMkRPNWgwUW4yTUtSNXpsSmtwRG9CSVhFRnpDVlRQUDQwU2Q0Wk85SllwS1FlRmVqUm8wYUQ0Q2QrQlNxVWVPakFTL0RQRzZWSlY1OUhZVUZrWU1vbU4zVDR1YjhPK1JtalcvOXllK3ozTHRHb2tDcG5NTDFoaHJHWVlXdmU0SkFrZEFmRkRnMFgvN01ML0xydi9hZnNIL1BVZnFkakNScWd4WEVVWU1vaWlpS2dzRmdnRE1PaWNMNys5TVh2Ky93NDNuM0c2Tjcza21TcE0xRCs0OGcwT0FFUXV3TXQ0SUhoVUR5L0JQUE02R25TRmNMSXR1Z0hiZXhtU2ZQY3hxTmtIQmxyU1BQRFEzWnBDbWE5RmN5SXBQdzhjYy9SWk5KbXJScDBtSkNUSkw0QnNwcGhKVTBWQU5oSmNwcVloS1UxU1MwYURIQkh2WnhkUG80Y2Q1QXBncHRJaWFpU1JxcWljbURZNFZTZ2FSS0tXa21MYVRURkgzTG52WmVqdTk3QkUwMHJBQldvMGFOR3ZlTFdscFFvOFkyd2xmRjZrc2JMaWQ4c0lZU0JZaUNoZVVsQnRreWYveXQzMmU5TjA4U0N3YjVLcU5TU3R5UndMNWJDZFlxV1VpUThOeXBqL0Z6WC9wbFRwOTRndm1ieXhTOWdnTnpSMWxkNlNOZHNFSHkxaUM4eDdsUUJDRlNlb1BCd0hiQUk2R3FhQ1hLSkR3UlhDaWNsd2dua0RyaWtlT25lZlBtVzJWaVU2VUo5YnVhendvRWgrZU9NS0dtY1FOSWZVNGtCTlo2SkpJb2lSRStGS2JJMHh4dkhjNkRLUXFpS09MUXpHSCszcy8vRjZ5bXkxaGhjTXB5YmY0YXI1OTdqZFZzQlpkNm5uem9LVTRkTzAwcmJpTnpSVXRNVVBRTHBwSVpuamo1RkRiMVlCV2lFR1JaZ1N1TFlpaWwwRnFSWlFYZGJwZW9wWW1FWnBEbXROcHREczQrUkVLTFB2M3R2b3cxYXRUWTVhaUpiSTBhMjRhcVFQMUlVaEJJckExRVZnNFlaTXY4NlQvNUV4Ylhyd0FaeW5vcUYvZzRsbVI1YVd1MWliUUtJVkJLWWJiMjRockNJL25wVC84OFAvMVRQOHQwZXc4M3JpN1JTaVpwVFRSWVhGaWxsVXpnWGRoL285SEFlNFd4YVNoQUlNVDltajU4UUtnOGVjZmU4aHBGeEtFRFI5REU1QlNsTHJQMHUzWHZ6U0ZncHlJYjVFenNiUk5GTWQxdWYyaVRaZkpnaithTXA5VnFvYlVKaVZkeGcyYmNKTTlUQnAyVW8vdU9zY2ZPRXJjam1sTk4zcmwya2ZXMWRRWlhVaXlXMldRdmp4MS9uUDJ6QnpBOVMxdFBZUHVlUVdlQXp5RWlCaVRHR2F5MWFLVm9OaHNZWnhrTXVreFBUek8vTW84c0pGRWNZMjFCSTJyUWlscERuNGthTldyVWVCRFVSTGJHcmthVjJCUTRYREFNR3I2SER6Nm13MHBGdnZRbDNaelZ2OUdmOUU1UnpBM3JLOHZUZDNrWWorOHJ0R25zUGUrRDI2a1VlTzl3dnFEVlZFamxPUC9PSmRxVGtqLzQrdStRbXpVOE9aNGNad09KOVFLeVloUk9IUG0xam83MWJpUVdKSjkvL3ZOOCtTZC9objM3RG9GUjZLaUZMeVNtQUVXRThDSlVDaE1lWTNKR1VlQksyL2hnVEhiejljRnZmTy9kOWo2VU53dzladTNZZlJKNDY1RlJ3cEhEajZCSVNQQU1DTld2dk4zZEpCWkFLSWtUMEIzMEtheGxkbXFLd1NCanZkZGxkbllXV3hnY2xpaUs4TjZ6M3VzUnh6RkpJOEVVQllVbzZCYzl1bXNPMlpQY3ZIbVRUcWVETFVXeUN3c0xMQzR1RWhGVERBeGQxNk1ZR0JMWjROQjBrLzV5Z1NMSUJ3QzAxdUZuRis1RGxtVm9yUU81SnNjWUV3cFlEQk1HYTlTb1VlUEJVQlBaR2pXMkRSNWpVdHJ0TnYxQlJtNDZxRnhUMkhXbVoyTis4N2YrUHJsWkkzYzlQQmxWSkxhc3d2cStWSHFOZGNMTXpBekNTb3dST0dPUVBrYUxtRVpDSUlqQ005U2ZDamNzU0xyOUVsa3hwbytsTks5MW95b0RYdUJSQ0FlUmJISHN3RW5PM1hxWnltMWh1MlVSRHdxUDUvcXRheHllUFVacm9zWHk4aXBydlJXOEM5UDZFTXJ5RGdZRHBCU0J3RFpqcElKQjBXT3B0OGcvL1QrL1RjNEFSYkRVeXNsSkNaNXFEc2YxN2pYKzdDLytMNndMUlVkYXRNa3BPRFI1aUM5OStzc2NuVG1Gc3NHdkZ3bTV5Y2tLajFLS2lZa3AwclNQYzQ3Y1pIaHBJUktrUlVvMzY2THFSSzhhTldxOEQ2aUpiSTBhMndYaGFMVVQxdGJuU1JxSzJha1dLNTFiR0xmT043NzVlNndPYnBTUjJFQmlLMzRtNUNoUythQmtkcTJ6UXJQWkpPc1ZTTkhHMlVBT1JhUkRYUUZiUm1HRndZa1FwZHRKL004TE1hcVVGdDRwSSs5bDhweFhlT2VKZElPbm5ueVdzN2RlS1FtVXdQcmRIUlAwT042NWNZRVRSeDlGeEhQa2ZvQ1VrcW1KQ2ZMVWtxWURuSE8wSmxyRXNTWTFmUXBURU1lS1FiL0hqYlhMZEZqQlVTQ0V3UHB3ZjdYVUNDRncxcE9Uc2V3eUFDSWllcXhqc09UNWdMWGtlUTdFZldKYWdDS1dFVmlKeVlOTzFoaFBvOUVBU3lDeXNhTXhtYkRXWCtIbXluVXkrbU5Wd21yVXFGSGovbENuak5hb3NXMXdGS1pIMHBBa0RjaUxkWVJLK1ozZi9XKzVzWHlCeVZZOElyRmpuL0llbkJ2V1RIaWc0MSs2ZElsdXI0TXhoamlPaWFJRUlSWFdCZnVrWUFVV1NLd2Z2cXJ5cFR2ano0Y1hZeHJqeWkrcVRQaFNJZ2Fya0RMbXNVZWZRSlpqOTgzcTVOMEloK1B0cTI5eGVlRUNBOThqbXBTSXlKSFpsTUlNeVBNVTV3eHhyUEhLMHMwNjVHS0FuQlNzRlV1OGVQWUhXQXc5dXZSOWo1d01RMEhtVW5LYll6QTBkUk9KeE9PdzJtRGlncFFlaS9rdGZuVCsrK1J4aW10WWJHVG9tUzREMDBkcWdSQ0NORTF4emlHbHBMQTVoaHdSZTVaN1MxeGFmSWVDSEZjVDJSbzFhandnNm9oc2pScmJCa2RoK3N3ZG1HRjU1U2JMS3pmNHhoLzlMbXZwTGFDZ2x3Nm81QVNqRU95NHpQZkJiYVJXMDBVV0Z1WTVzUGRocEFTVXdwbFNZK3NLbEJaakd1T2dDSFpWR1ZoQzR2KzJra0V2eS9hTnd5Rzh3aU9SUW1PZFJRckZudG45ekNaN1djcTZ3OUsydXhrZXk0S1o1NjNycjdQL3lCejdadzdpVThONlp4VnBJMXF0Q1NTdzJsM0d1QndYRitqSmlOVnNrVE5YWCtPTlc2OGhsVWRhaVVBd043R1Bvd2VQY21qdlE4eE16ZEpzTm9OR2RubUJzMWZPc3R4ZnBLQW9GUjJlRjkvNkVjOGQveFNQekQ3S1pHT0tmcitIN1R1bUc0Sm0zTVI2VGFmVG9UbmJKRzRtcExMTC9Ob1NaeTYvd2VYVmQ4ako4TzlhNUxsR2pSbzE3bzZheU5hb3NVMXcwakU3UGNITlc1ZndaSHpySC80Qnk3MGJKRXBpaFNNM28vcXZVcFllL2g3Q2xQbDROUFQreWF4RWNPMzZKUTRmT0I0aXNFNWpqQ09KTkZwcklFUmdFU1lrendIZUt4Q2xKSFduUVl4cFpJY0lNZ010TmFjZlBjM2Z2bjRGUjdpbWJoY0hCQjJPZ296WExyd0tTdkQ4RTUva2tYMG5tZGs3aFNwaWNNRmNMUzBHdENhYkpOT1RYRnU4ekE5ZS96NnZ2UFV5QlRuZWVocTBPSDd3T0UrZWVJb1RENTFrWm1LV1Z0UU90bDM3Y2dweXJpeGU0a2R2L1pBM0w3MUJKKy9nSW9PVW1uL3oxMy9CRjU0elBQZjRjMHp0bmNSRUZ1M1ZNT0V1aXFMZ21xQWtLNnNMdkhuNVRWNDkrekk5MWxGYTRjd3V2Z0UxYXRUWUVWREFiMjEzSTJyVXVEL0V6TzA1eGsvKzVNL2puRUNnRVNMQ09aQkNFOXdJYk1tNFN1MGtZdXhWd2Q4V1ZYeXZ2OStKeXcyMzkzZDRIL0RDc3JaK2k5NWdsVC80K3UreTFsa2cxb0xVcm1GY2loQWVMMHBON0lZR3FMSFhlQzNSZTROQW9raG9ONlo1NXBtUFU2UWVLU0tLd3BQRUNWNk0yNEZaU28rRlVsSWd5ejNjZnUzR3ovUGRydVBtTis3MVB2anlYb3BTN0RCY2xrVW1uQStGSW9UeUZENUZKWWJYMzNnSlF3L1kxVGF5Z0NlS0kzcEZuMXNMTnluNkdkSXBJcG5nRFF4NkE1d3hwQ1lsSitYNjRqVysrOUpmODhQWFgyQzVXRUNqaVloNDd1REgrTnl6WCtEcEk4K3lMemxJdTVpQ05VazJueFBsQ1UzZjR1RHNJZlpPN3FYZkc3Q3dOSTgxRnB5Z253L29kM29JSkEyZGtPZ0dXSW5OTE5aYTRqaWltM2E1Y3ZNZHpseDZnemN2bmVIbTRFYUk3RVllYTNmM0hhaFJvOGIybzQ3STF0alZ1TmZIWURVWkwrL0EvZTVwbWx3NHBMYzRBZExMY3I5akZicUFEUVhyUlNsc0xaT21FQ205ZEludi9BL2ZaR0g5TW82Q3hEa2NCbkEwR2hIOXRNRDdRR1NESnJiYXQwQnB3WU01U0hrY0taZXZuQWRoc0E0YWtVS1ZWOVZiajFEY05uVXZBTzgxd2tzbzIzcS9FSDZMQU9wZHRyMFRocXU4UkpSMkJNSTc4RGxTQzZTQU5NODRmdlE0c1lwSmpRWnYyWGpINzNRZW03WEFPNGQ4V1JzR01nYkRtVXRudUh6cENvZjNQTXlwaHg5anovUXNzWTdvZER0Y21iL0NtWXRuV0dFUlM0RldFZFlhanVoalBQbndNNXcrOUNTUmpTaldMSkZVVEVSdEdvMFdTYXZCdGNVclJJWGkrS0dURkI4enBHbk9tOWZlSUNjbkllSHkyaVZ1L3MxTm5uem9TWjU2NUduMlRNelJqTnEwbWczbU95dGN1UEkycjU5L2xadkZkZnAwc1JpRXZKZFN5aDhreHFyQ2JSemJBcU8zNUppTXgyM2M1TUVoeXAzZHovSkJzSVVzYUNmY2tSbzE3aFUxa2EyeDYrRktIMWdod3NQUk9SZkltSGZJVFgvOGhTOWppWlVQN05CbnRzU21QKzVEVDlMeG4zMVE5a2tmQ2hkSVhJZ0dld211TEV6Z1IxOHRwUVNlbktMSVNSb1NyVDFYcmw1a2VsYnoxVy8rQnBsWkJRWjRESmtMamZRZStvTmlkSTVES1dIVjFyd2tzUTlDcWh4UWNHUHhIWmFXNTJsSEIwamlKb1VzR1BSeTJxMkV3bVREcW1NZWgvQUM3OHB6OVpVRmw5dDRyYndmSTUxalY5T1gwZHR5dTJITC9kYnJONndEaG41WjFYRUV1RExUWG5oUVhvSVBnNGx3ZkljVW5tNXZsWGhDTTlIUXBDTGlxVlBQOFBLWmdoN2RVaXhSRFM0MlhVc2ZZczdqYVdGK2ZHQ3l6UkJJc0JKVmtyR01QaGw5VnBibmVYMzVCN2R0RFpYdnNjUlpSMFRDcWFOUDhOaXhwL0c1SXJlTzl1UUV2VzRmbC9hUld0TzNLYzE5YlZaN3F4UnJscjE3RHZDWlQzeWVpOWN1WSttU01jQmpHVkR3byt2ZjUrWHJQMEFnRUtXRzJsS1U2WGNXanhzbWR3a25zZmwyWDBOWnppbVVFR05rdG15YThwVEdaQ1BDVzZVVUR1ZENIcFJRYnA2K3VOZmxBMkJjNDE2WjdHMzExUjF1c09udG12alcyQW1vaVd5Tmp3VEdvM25qZjRnRGNicS9mVHBCU1dMZDJERXEvV3A0OEJtVGt6UVNldjJVTE84anRXU1E5NWlhVHZqTjMvbXZ5WW9WQ3JlT0pZUldBK2NXNzFKZTl2MGtBQlpIenFWTDUzbjY5QUdLb2tBcGhiQXVaSndEZUlrVE5rUlBrZVUxSzIyNjRMNGZxUGVTcWliOHU5MG1XWTQyeW1XWmt1YWNvUkZIU09rb1RJN1VrbE1ubitURk15K2phQUxwN2Eyb0JqOWJ0K1E5YnZkaFlVU3dMQmFIMlpKY1NRTC9sK2lTWkFZU2QvVHdjUnBSRzI4OHRyQmtQc2M1aDQ1amhKSVV0a0I0ajQ0aXBOUTRZNWxJcGpnNDlSQlhPNWZvazQzMVhVOVdGaDZweWladkx0UWh4a2loUkpiRWFUc0pyZGg0RzBjaDJHQkpURFdZRVdWRnVITFFWbTVicVpidUYzNzQzMzB1TjZ1azd2SGdsWHNIQkdJdXkrV1dHTlBGVjkvZEhmRVZxUEdSUjAxa2E5UzRYM2dKUXBkL3lBVmUzQjZsYkxZYnJLd3RFaWN3czdmTldtY2U2L3I4NFRlK3lsTDNGbzQrbm8zNmdBOXp5alVJQ1R5dnYvNDZ6ejN4UmZLaWo1YVRJTU8wdGR6d2tOdzB4WDZiVzhET1FoVkZqNklZTHl6TzVFaXRlZnpVazB6cFdWYk1Db0owUkNZMkM1OEZlTy9ZcVM2RklZSm15dGI1a1pYVkZoRTdWNUlXaHh2R21CV0tBd2YySWIwa0wzS1UwTGdDbEl0cHExWkkvdk9BOExSVUcyY3RlWjdTYms0d3QyY2Z0enJYZ2kwWGR0aUNZZHVxUHJ6cG1vNjE4cmJQZk5nSUpDNDB6STYzWSt6NjJUS3BVcFQvVzJUUWpwZGRRbG0ydGF5RGUwQWl2VE43ZG8wYTk0YTZIOWVvOFNEd0tyelFHK1FFZ2NnYThxSkhGSHVpeEpFWDZ5aHQrTDJ2L25kY1g3NUlFbW0yZDRxNjB1TjZMbHc4VCtGempDa1EwcFVpNG5ISnhXNVUwMG1VQ3NsLzNndUUwSGlubUd6TjhQaGp6NVNwYTFWczZUN3V3N1pmZ2xEbU5hVGhCZW5ISGFlRktZazlMbXlyQkVKNFZDVEpUSWIzbmtiVUlCWXhzWStJZllJYmVDSVhvMDFFNURUU1NsemhpSFZFTTA0WWtBYXBoZkI0NmQ1emROQVAyN3I5QTZIUVpIZlhadHVTd0Jva0hoWHNMa0pRR3l0R3ZXYzdYbkQvQWQwYU5YNWNVRWRrYTlTNGI0ekpDUHg0emRnd3ZZb0lSSGJ2M0NUTEt6ZFlXNy9KSC8zeDExanFYa1hpR1JRRHFzZEtOUlg3WVNmQUJETG5XTzR0c2JLeXhOemtCTUZxQzZTU0crMnB2Q2kxc1ZXck41SGRiY0c0Wm5WOFhCNElxbFNhUE10QWVMUk9NRFpudlRQZ2s4Ly9CSC96K25lM0pqQzNXVkk0dGpmdWRnY0lnQzJ5L2U1bUl3R0F3MHFEdzVLNWdyWndSRkdFbEJMdlBEaUJ0bUYxNDFJQUFDQUFTVVJCVkJIS2FHSWRVN2djZ1VWcmhSTGhrWkhiUEZCaTRmRGEzN2tiakVXMzc3aHUyK0NxWXNWMzNrU0U3N2luSEhRS0dKWkNMdTJVZDRTRDJQMGtpd0hhMTlHc0dyc2ZkUit1VWVPK0ljY2lzbU51QmNLQ3lFRVV6TXcydVRWL2lkeXM4Y2ZmK2hvTG5jczB0RURKSE1qeGhNcEhVc29obWYzd3owSml5RGg3L2d3T1V5Ym9qTHNSU0RhY0gzRGZVY3ozRWNKdmZMbXljSU1UMVhNNnROa0xoU3ZLaUt4WHBEM0RzY01uT2I3M1VXU3ArYTEwenU5SEFzMkhDckhGQzZydzYraTFhVnZ2RGJuUFdPck1JeEtQVEFTNVRTbHNqcldoeEd5c2s1RGM1MzJRbVVpSmlpVGQvam9yM1JVc0JpdUtqZnZtTHNmZnF1M2JqQTBrdGpxSDhmWjZBZWhTU2F2Q3JJdU53RVhneWxrWThUNjh1STlsTlF2a3gzNis1MlZOQVdyc2Z0UVIyUm8xSGdCT2FLcnFVcDdnV2VzeElBb1FCVGNXRmtuekZmNzRXNzlQcDN1TE9JSitzVUpJcWFpeS9iZU94dDQ5NGV2OWdjY0ZuMVh2ZWVXVkYvbk14NzZJa0Nab0dmM1lsS3N2S3pJTXlicGpZMUdHYllRb283RkQrVVA0M1FONW50Tm9ORVBWS1JPeTZTZWIwL2hjOEtublA4M1pmLzF5S1MrUXVMR2F2MzRETWF2T1ZaUnZqUktzdGoyb09FNit4dWVPTnpkTWpERzA4cnd5bC9IYStWYzRNSE9JMmVZc0xvZEl4M2diMW9sSTRMMUZLQkhjSVNSa3hZQ3JpMWU0dW5pNVRQVHp0eC9QangrcVZQRDZNVWVBSGFSU0dWNnl6VzF5bEFVbFFsR0pVTnBZNG5CWTc3Qm12Tzl2THlPLzM2TkxMSktDN1I2UTFxanhvS2lKYkkwYTk0c3ljMy8wS0FtNldMQWxrUjNRR3l6eVQvL0hiN093ZGhuSWtOWlFsWjF0dHhPNnZXeURiZFU0cEpTbFQrZ0gxUHl5eFNpUE40NkxWODVoUlE3S1lFV3cybEpTSW55VjI3eUpjUWkzdmRQRFluZ0d3OSs5ZEFnM0lobEZVVEF6TThOZ01NQVZEaGxGekU1UGMvMzZWWjUrNGxuRXY5WkRpeTFacHFtN0hSQXBmTSs0allESk1yOWVERmQ3d0R2d3d1SEZxRDk1TEsrY2U0V25IMytXUml0QmFvWFdHdXNMVXRkSENvWFVRT3l3eG1DRXBXZld1YnI0RHF0MkJTZUwyOG16SHprVGlMSEdlU1RXbTQxa2RwdEhBVlh2R1E1YXh0dmtRQ1BMb2hFYVhkSlpqeXBOeEhUbFZUSjA4cmpYMmYxeERQMnQ3MkZaZmU1K2g1T1dBb1BaU3B4U284YXVRazFrYSt4cVNDa3h4cUJWZ3lJM1NHRlJTbFBrQlZHa05nYUtmSGpTZWo4aVlPSzI5WGZXcWQ2MjNudVVESStSd2hSWWx6STVGYU9paVBNWHp0R2FFSHpqbTE4aE4ydElDaHc1amlMNDNRSzlYbmJidnNmeFFaTFk0WEVCblVUa0ptZEFqM01YenZEVVkyM2l1SVZ3NEl6YnNoQ0JxS0tYNytKY01INWUzdnVoazhENDhlKzZmbGpjWUl2ckx6eENobHg4Z1I5R3RwMnd3MjJTSktIVDZhQlZqQk1XSEt5djlabHN6MkJrank4OCswVysrOHFmWThyRU53OUVFZVNHdTVLdFVvSEx0a2V6UEJBTHlEdzRTVVNFSjBRU1l4SU1SWWdpNHZEZVlMMEg2VkN0Q0ZGSWVtbUhmL085LzRmUFBQdFpuajMxTVpRUTlQSWVXVDVnb2pYSjJ2bzZEa00wRmRIMzY3ejg5a3Y4dTVmL0xZYUNwQmxURENEU0dpMGo4a0ZCaUhsckZIbzRiUjhUVTVDUkExSUxyRGM0NTkvRjYrbkR3WEJTWVpNc0lsRWFaUVVKaXMrZStneEg5eDRsNzJXMDIyMmNjM1FIWFpyTkpzS29VQVRGbFZYNGZJalRWNFUraGdVL3RsaS9BZmY1ZWVWRFh1Ym03OWs0S3FsSUpXSHkzdU85WnhBUFdKL3U4K2N2L0RrV1N4SW5aSG1HVXFIRThQZ01SWTBhT3hrMWthMVI0MzRoUEwzK0dqTXpNM2doS05LVWJxOUxWcXd4T2EzNXlsZi9BVm14aXJFOUhDbFZKQllvaXpkc1g5UEgwVTk3T0RTU2dqZlB2Y3F6VDMyY2ZxL0xSRHhWYnJGRmlISkhXbStOeGFxMmtENElGeVFnc2pSZWtsN3oxT05QOC9LWkYrZ1VpK1hFY1VGUlFKeEFYdkFleU93MkJ4WTlZQ0NKbWlnYkVia0k3endSRFJvNklUTUZSVG1BeXNrQmc1QWVNOGpCUWlTYnpLL2Q0a2RuZnNBZzYvUEkvaE5NSlRNa1VjeEE5bWpzanlqd1hMNTFrUisrK1gzTzNUaEhvNW1RZWtlL3YwNmtFMXdXSEd4RHdkdVlCZzJDNnRoaENES1ZVQTVaZ1FFWERHMVJXbTV2aWRyeDZQQllSRllDeWdvaU5MTk04VkQ3QUlmYis3SEMwb2dUbkRjTW1LRGRhc0ZBSXJ5ODkwRndkV2gvOS9WM0lxamVoMExSYWt5eHNkVzIzbnU4S2dlRFk5NiszbnZXNHg0RGV5WE0vRGc3OVB3ZERSUjMwQitwR2pYdWdwckkxcWh4MzNBMDJ3a3JuVnUwSnhKbTlyWllXTHhLYmpyODBiZSt5cTNWUzBBRzVFQXhmT0w0NnI4ZE1MMktBR3NMUWtvTHZQVFNEL21WWC9wMXZJMUFUQkMwcG5JVVFSb1MyUEVNb3UzRHNBakZCbFFQNGxFcWovUUVxeWhmclJWSUp6bDEvSEZPSEgyVWx5K3NvUkRrV1BDT1NHdnlmSHpTZFNzLzJlMlB4azVPVEpPbkJUWUxtdXNXRFI0Ny9qZ25IMzZVZmJOek9BZHJ2VlV1WHIzQVcrKzh5VksrZ0RVRlNkU0MySk5uQloxOGhkNzFIb3VMODh3ZnY4bXhoNDR6MlpoQ2VNSEs2aXJ6eXd1OGZlVXN0OUxyR0FvS0Nyd0kxMFlVa05CQW9UazhmWVJqQjQ4ejJacEV1aERWdTNyOUtyZVdiN0xrRmdFd3ZnaFQ5TjdkVml4aHAwRGEwS3NqSWg2ZWVaaDlyYjNNNkJtc3lrbDhqTGNGRFIvUnNBMGNDb1FzRStqOGFMa1pkMWcvTkVHNHczcVB2eXVaMWVNNit2SFBsajg3NzRhSnBGWFZ3MkNaQmxaNjhqUWZFdHhxQnFqYWg1QWZ2RWEvUm8zM0F6V1JyVkhqdnVGUTJxSWpUMkc2RkwyTVJzdnp0ZC8rQ2plWExoSXBSMkZMRXJzVmRzb3pvaUxVeXJOV0xISHhuWE04OWVqek9DeGV5STFrMFZPUzJYRkhnKzBrczNlYjN0OThnUU5qa01Nb21FQ0ltT2VmK1RTdlhuaU5SdFFrTHpMaVNOUHY1M2ZjWStVN3V0MjNUeUFwK2puZVFrekM2VU9QODh6cDUzanMySk8wNHpaYUpoUkZ3ZEg5bHNQN2puSmc3Z0N2blh1RnR4Zk80b3BRTXJiVkRCS1NQQ3RZeVZkNDRlejMrZEhaSHczMXJTMWFyTlBEWTRKc1FDZ0tYNEFRdEpOSi9BRG0xQnluSDM2TVI0K2Y0dkQrSTdRYmJZU1ZGRVhCazhlZjR0dzc1M2o5d3F0YzdsN0M0WWtST0cwcGltTDdMK0ttSkRVdGcxcGFvWWxwOE1paDQweEVrOGhNNFZJVk52SUttUXNLNHhCU2wzS1lxa2RJdks5cVpJMVVyWGRhTDd4RTRQQ3UwaEhJa0RSYUpwQTZHOTRQNjkxd0dkWUhPWTN3bGF6R0RaZVZwdDFhZ2RaaEJzTGFBdWRDb0ZXcENJZG1hV1dad29hL1Q1V1VRQWlCYzI2RHhybEdqWjJNbXNqV3FIRy9FSTdDWk16dWFYRnIvZ3JydlVXKy9aMC9aSEhwS2tvWUNqdWdpc1JXemxvYlpXYzdRR05aUVRpc3k0Q1lsMTc1RVI5LzlpZkl1NGJnbnhwUkVka3FJU284NDZvNlVUc0pZYksveWtJZlJaSUJmUERCcldLeVh0SmJ6emwxNGdsT1AvUWtiMTUvaFlnbWVkRVBXMnhsYWJYRDRHeVkwbi8wd0drKzk0a3ZjUHJJazB6RlU2emQ2cEtiSVBTTmtnWjdtM00wSC8wNHJWYUx3ZmNHM09oZVFZbVliSkFDUVZ0YlVKUnE0NEtFQkFlc3NoSmt1RVJrcERqdjBDaU1nMkpRc0pjNW5qLzFDWjUvNHVOTU5xZWdFS2lleGhVZU0zQWNQWHlNcG03UmFyVVFid3JPcmI2RndSRVJCMEs4blNqdnB4UXlSSWM5S0hSNXl5V3phb2JERHgwbm9rM2U5d2lqY0NwR1MwbWtOWm0zZUtXRDNkc3dZMHlXcy9GeStEdUlMZGNMU2wvbU82d0hRY2hiM0x3K0VHRlorVG9MVVJKY3NZa0lDN3dTZUIzVzU3N0FJNGlUQ0M4MFRtdHVMU3lGQ08wWXBKUkQrVUdOR3JzQk8rMHBWS1BHTG9LajBWUXNMRjFGeDVadmYrZWIzRmg2QjBTQmtBVVZpWlV5dkVZMnNSS29QQnkzOFNzNGVqYUM5RmhmNEhHOCtlWWJySFZXdHA3NkhlcE9kd0FCdjgwenFZUnd0NytHN1EwL0MrOUNaTlpLMnExWlB2WDhaNUJvMm8wcFFDQ2xCbDFtNVcxNW43Yi8vQ1dTQ1QyRkp1SDBzZFBNVGV5anY5eG5mYjRIbVdKdThnQjdtL3RKYU9IN2dnazl3Y25EajNMeXlFazBTWmgySmtJZ01kZ3lLejhVa2UzVEk2VkhLMmtpZ1l4MGVFeFJFdDh3OVg2Y2t3ZE84ZERzRVdLVGtDOFppbFdEeWpTeFNWaTdzVTVMdFhuaTBTZDQvT1FUeENRSVpFZ2kzT2JIVDNDR2xjUWlRdml5V0pjTmF0NlloSWNPUFV5ejBjWWF5QXVIRlJwUEJDcEJ4Uk5JM2FEcUcyRjZ2aXhuSzZyaUdTTnZnUzNYKzlGNk5kUnRoL1hTajk0WFF0MXhLVVJJcjN1M1pYVThLU1ZTYUp4enBHbEt4M1RLRm96dXhYYjVXZGVvY2Irb0k3STFhandBYnMxZnc3bytmL0tQdnM3cTJnS1JsQlN1Q3pZalRpUjU3b2I1RXFNQVI2aDBMeEI0dHA3Qy90Q2dBQXRTZ2JXaFZhdnBNbWZPdk1GelQzeDZ0TjJXQkhZSGtMa2gwU3l2OHdaTHNJM3RFNzZhTFBYRFdMaVNFYzdBd3c4L3dwRTl4N214OGc2Z2NTNHJSeDViR1l6dUhHUW1ZNGE5bkRwK21rTjdIcUsvbU5HUUxZejN1TDZqczdwT01oRWp2RUlaeWI3cC9UeHk1QVRuTHB4ak1iOEZVQ1pqZVNLUllMME5rZGZ5UER0WlJYUkFFeU5SUThPbVBYSXZqeDkvZ3RubUhsemZReXBwaUNZdDNhSVpOekdSWWFXN1FrWk9zOW5nNk1HakhHd2Y1Rkx2WW5CUDJBRUl4YVVGaG9xU0trQXdGYzl3N05najVOWWljb2hFa3loS3lLM0VXQWRLWWhCSVk0bUdmdEIzZGc2NDAzcFpkcWN3bGh6MVMrSDlVQ0JnTjcxZmxWOFp3dDNkc1VEcm9JMFZOdWhsVldIbzkvdXM1VXRVL1ZsSlJiRnA0UHBoK0ZqWHFQRitvQ2F5Tlg1TXNGWEVUR3o2ZlJ5QlJvSVp5M0QzM0RsS1drYjFoR1BvR1NSVEhEMis4NmRmNTlyQ2VhQkFTeHYyaVF0UlBjYUlyTnZZVGlsaE81TzJBWlRTV0d1Z2JLdWpBQlRuTDV6aG1TYytoaEtHSUMyb3NMRU1yUFMzKzY3S2UzajJ2ZS9pQ2ovdTZYUjdFcGlIMGo4MEhGbDVqYytnb1NiNDNHZCtrdi8xWDE1Z3FqSERhcnFJdDNhc0M3bXg1THdQdUJEQ2U1UXlWSnROdHRwTXRDWndoY1BrbG9uMkpJTkJTbjh0cFJFMW1XNVBNYitXc2pLL3dveWU1T1N4Ui9tVm45VmtMZzNFVFFwa0pPbm5mYzVmUHM4YmI3MUcxM1NSS09abTl2TE1NODl3N1BCUjhtNUJuaG9tR3hNb3Ara3U5WGppOEpNMFhCTTNzRWdqYU1rR3ltblNiazVoY3c3dU84aVZ4VXYwT2luTnBNWGMzQnhYZTVjcGh1NmxXL1NBdXdVRTcrSEN2NWVJYndGb0tjQldrZVlZQWV5SjkvRFE3QkdpUVlSRGtNUk5ZcG1RRGdZVXhpSVJlT2VJRU1NMkNVYkVMOGdHeWlZUHlhRFk4RE1FSWwyOXA4djFhbFByOWFiUGJVNFdRd2ljOXdSMVFWZ3ZmYWx0TjQ1WWhMOXBSUmwyTG1SQjEzWlk3aTBFY1pEVXlFaERWZ3pKY3RpdDJIaTUvVWhWdERubHMwYU43VVJOWkd2c2NnVDdtM0oyZktoTWM0UmtCV2N0aUxGeXE5NkhxVFl2UWRneUltb0FIZUowdnRTYmxWK040THRvTVRiSCtaekpxUVk2a2x5NGNKWm0yL0Y3WC91dnlNMHFVZ3h3M21DY1J3aVA5NUFPUmxudm8yZlBhSW83a05odFpMSmVZck9RbnkybHhwSWlsTVBaQVQ5NDZTLzVoVi80Sll5RHlUakJaQWFNb05WdWtSZWVORTFwTkdLTUd3MFlobTVHNDArMzhTaVBEOWRsYUExVXl2ckUyUG95YzJiMGtmTHp3bTkwU3hxdXQrUFJxSTFMR0QxbzNWaTcvSWpOMG93YTNMcDVuY01uRHFKUFBjdGZmL2NSYnExZFJSTGpoY0VwQjc0WXlqQ1VGd2l2OE83OU1rQWRzd3ZiVE9ER004cktpTGdZNnk4U1E0U2tNQm5lTzVvVFRYcUxHU3NySzVpZVo3YTloemlPNlhYNlJFVE1UdTNGNVRsZXdNRzVRMml0RVdsRWxoVTBKeEtpaVpnbUV5eGNYaUpmdjBKRXhKR1pveno5OExQTVRleWxaL3RNVGsrUmtKQjFNdUpERVJPTk5wMlZEb01zWjZvNVJad2s1TDBDWnp5TlJzTHE2aXBSRk5HY2JOSHRyekhJczVCWHFDU0ZIWjNKOEJwVTU3MzUvRGZEYi9yTWtFeU9EUlRmaGNoYUhEU2hid1pRbGo2STBjUWtmUHJFcDBnNmlyalFDSzhRaFNYelBaUUlzeGNPaTVJaGJpM0hyYk0ydXc3NFVjZjEzcGVPVnFQMVppem9YMWxxYmY2ODgyUDdHbHRLTDVGbDhRK2pQUWFQbGVDZFFIdUluS0NsR3RoK2prNGluQkQwR0xCT2ovaDRpeDkrNzJWU0NqSm55REl6dkl6R2hKK2QyYnFQMStTMXhrNURUV1JyN0dySW9VNXlMTEl6N25HNlFSODUvcm13dEhMeitqSWlXejRvZTcwZU16TVRVRWpTcktEYkc1QVg2MHhNUlh6bGEvOE5XYkdDY2VzNFAyN1ZKTjVsV200SFRVK3JDS3pGV2greXBBbm1xWDI3eHB0dnZjcm5QdkZ6ckMrdk1oSHZBeVJwbWhKRkVhclNCbnEzUWFxNlZmR0VPNkd5SFhyL3NUV0JxZUtvbGYyUTlCS2I1Y3hONzZXMzBnTUVYL3I4bC9rWGYvYlBVVVFZSEpoaXREc2Zwbm54bHFweTF1WkVtZnRyNjNoL0hWdDFsMTFYVFlxVUlrb1MrdW1BNVpVbEhEQTdONHRwT016QXNEcS9TbU1pUmlhYTNHUTRhVkNSWkxYYlpXbHBpYjJUaDBqVEZOL3pzT1M0ZnZNYTNmNDZEbytoWUpBTldGaTRSYnFla2E0TlNKT1VoQWFtWjJnbFRRYjlvS050eGsxY2J1aG5QZkNTS0lwd2VGcXRKcDN1R2pJZmtDUVJyWWttRGs5dUM0U1VZOG1QVzBSbHg1VWQ0NnQ5Tld0eTUrL1JaaEliNWwvOGNEazhoaXNIRUVLUytBWVN4YW5Hb3h5YVBFRERhS1JUd1NkMmVEdkNqSXdjaTlCWE14TERNUWVsM2R0N3NMYllaSm9RRXNmRzIxM3U1MDdmcStvcU9DUldXcXJLdVVObkRodVNHcVVETHkxV0dHeml1TGwrblQ0NTVvT2VYYWhSNDBOQVRXUnJmSFRoQmZoS2NSWXlma2ZwN3VFaDJXbzFXRjFib2owUk1idW56Y0xTVlFyVDVadC85UHZjWEw2S3B3K2Jpanp1SmwyWmtnSnJSNTZlMWxvVUdvL25oejk4Z2M5KzhtY3dwa0ExQmM0Smlqd25paFJheFhkT3R0cEZjQTdhelFhTG5TNnFwWG4yNmVmNHE3ODl6dm1sYzJpUlVIZ3pKa2dZZy9CSW9YRHZXMlMyUkVYdTM2VUxWVzVOUGR1bm1mYnBaMzFtbWhhTHA5TmZnMEtSeEFsN0RzNWlmVTd1Y3lLdDZKcU1TMWN2OHNOWFh1Q3RwYmRLd21vUmVMVFFwSDVRRmxCd1NDRjQrY1pMbkp0L0MrVWx4aG1hdE1QcEkyblQ1RmMvOWFzYzJmY3dPbzVEWlQydG1XeE5ndldzcnE4UnhSb2RLN3h3ckhYWDZheXVsYk1sbElUMExrVHF2WHlON3JDTjIwUnlRd0ZpTjF5T2JRaGVFc3NZYmNPay91T25INlBkYm1NNnhSMWp1dmN5WVBzd0lmekdTMktkUTBwQjRVUGZzSGhVcExsOCtTcCtKdzJvYTlSNEFOU3VCVFUrMnZBYVVPVnlmRnpuQUlPT1BGSHNNYlpIdDc5RW94bkt6bDVmdWtnc3g5Vml1eE8rdEtzUzQzUDM1WHZuMzNtYkN4ZmVabXAyQWk4dHVVMVJVZkFIMVRyR1dyL3J1YXhFa09lR1JNVkVLZ0lqK09WZitQZUlpTUU1SkJvbEU3U09RRldEbkRJdTV6K2crcXFidzNURENLVGM4SDVRUnppV2ltWE9YMzZibkp6bVRKUDFvc05LZndtakRYMjd6bEp2aVZ3T2lLZGllcmJMNjJkZjQrelNXeGd5QnF6VFo0MHVIVmI5SXFsWXgrb00wYlRvU1lGWEJWazhvRXVIQVgyNnJMSE9LdXVzc3N3eVo2Nit5Vkp2RWQvd3FFbE5yak82Wm8wZVhXeFUwQzNXYWM4MjhkcHg4ZEo1M2xtNEJJQWlHbXBBUkhrbk5sUmllemRKUWZXWnV6ekNLcUlXZkJqY2h1Vm9Jd1Zlb1p5a3dIQklIK1RRZ1lmSXNteFk4bmdVaWQxNmRtYzc0Ymg5UENtOVErQndvdFROYW9HVkRxL0FDb2NSbG11cjEyNGorelZxN0ZiVVJMYkdSeGlsRFphUHdVZGpUd1FId29Jb0tFeVhQWHZicFBrYUM0dVgrYzNmL2cwV2w2K2dzZVJ1bmVveEo0VFlmYlkxd3VGTURqaVU4TWd5TUYxTnYyWU0rUDRMZjhQa1ZBdm5jd296b05HSXlVMEJVZ2M1d2k3L0UxSXFCV2dtTFZ3QmVhL2c5SW5IK2Zoam4wQVFCam5PZUt3UklZSG1QWEN0KzJ2STJHdnNkNEVNTmtybHY4M1h1eEUzc0JpKy8vSUx2UFRXUy9SOWw5WmNnOGFlbUZUM1dmZHJpRW1QbkpLc3BBdTg5dmFydkg3dEZRd0ZrMU1UT0ozaEd3WmlBOXFGc1p3QVp4eFpQd01CcGlod3d1RzF3ell0dWM3SXhJQkNHbDY5OFRMbmJwNWwxUzdqV29aVTk1bFBiN0R1T3pUbUV2U2twT3M2WEx4K2dmT1gzOFpTQUo0azFxank3T0FPQ3BPN1hHQ3g0U1dITDE4U1ZWOU8vZDkxaVFNbndjclNIMWZ5c1dlZnB4RTE2SzUxaWFKb3d6RTNKelh1TklRY0FiZmhXZ29GdmlTeU5uSVlaVmp0cmRCaERjb3JWYVBHYmtjdExhanhFWVlzcFFVVnlnd2dVU1dJV1JvdHdmemlaWFJVOE8xLy9BMXVMRjFBQ3craUFCZEk0SGdKeU4wa0t3alBzQkJWcktTQ0VLSjhpUWdQOTFmUHZNVDgwalVhWWdha3gwcy9LbmRwUzdPRFhReFhPTnFOSnJuUHlRWTVyWmtKZW10ZGZ2YW5mcDZ6NTk5aXhTd0NIdWR5blBNSVZTYjdsRjNsZzRBb1NXeWdySlgwWmFRSnJmNTNRT1lLREpaVnU4eGYvdUF2NmF5djg4enBaOWt6dVJmaEZjbFVSTzR5cnQ2OHlCdHZ2OGJyWjEraHp3Qkx3YTFPSjJqRXg4dzZoSkpvb1hET1lZdnlCS3VFT2lVeG80YVIyZ0VTejR2bmZralByM1A2a2NmWU43T2ZxSzN4R0hxcVE4ZDF1SEQyUEsrOS9TclgxNitIOHdNRytXQ29XVldvTWxvcVE2VFp1eEZMM1J5ZGZrOFhjTlBQbTM4Zlh6cUpJa0tqbVdXV2t3K2Z4SFFOemxxU0tHWlFtUGZzSXJFZDhDSzhwQy90NUZ5NGZxSzhUVjRxREJZbkhVNkRFWTdyTjI5aENGS0RHalYrSExETEgwTTFhandnZlBrVnFHeTFnbWROSUtxaVlHRnhFZVBXK1pOLytIWFcxbThTU1V2aGV1QXRjYVRKQ2plYWd0eEVZbmVURDJNbDlaUXlPQUZZREI1QkoxdmhiMTc0Szc3MDJWK2swVTdvOWRkcE5TZXdoZDk5RWVndElJUUlyTlI3RWhVVGk0aGU1dGszczU4dmZlNm4rVmYvMzc4a3BVY0JPSEp3SHFGOTRGanZRY3Q2eiswWjhjUXlJbHdWemdqMi9TSFJDQ29pT3pCOTRyaEJubWNzRmZOODcvWHZjbVhoTWtmMkgyR2lOWWtwQ2pycjYxeS9kWVhybmVzWWNpS3RjZDRIMnpXZ0RKSU96OFhoRVdnMGtLaUV6R1VoZ21rVU5qZGxkWS93ZmNuSnVlVnVzSGgybnVzclYzbjB4Q2xtcCtjbzBweHV0OHZhMmhyWGI5M2dadmNHbGxCcHpGQU1FNjVVZVg3Qnl6WTRZRmhrSUxOM0hTbUVkWExEMWRoOE1UY3RiOXRGS0VVYkVUUE5CTTgvOFR5UmkwajdmZHBKdTV4eEdLRkt4cXIwc1Z0WnozMlljR0pqZkw1cWwvQ2dxbVF2NGJEZWtIcURrNTdNNTF4WnVJTEZVSkRYVkxiR2p3VnFJbHZqb3d1L2VWbzg2R0lEb1MxQURJSlA3RC8rSTY3Y09ndGtSTW9UbnZ3Z2xZUGlkbHVjQ2xKS3JQMkFkSlR2Rnp3b0hZb2hBR2d0eWEyajhBYUpRRXQ0OGVVWCtOSVh2a3pTYkRHLzNHRm1lZytkdEYvNjVKcTc3bjZuSTRvVWc4R0FwSmt3MFpwa3ZiUEd2bjM3ZWVmcWVYN3E4ei9EaXkrK3lFcTZSS2RZQ2huZVBqalFldkYreGJOR0JLd2lzV1dOSjBKNWltRFpQNklzSnRqRUFXQ3gybUdWeFl0UVhqWVhBODdkT3N2NVcrZUlpTXNCaVNOVTdMSVlESmtaZ0hRa2swMnk3bUI0YkYzKzg1UUVUOFRrTmtjUmhjODdEeWdRRWhVcmJEckFVQ0NFeFBpQ3R4Yk9jbTdoSEtxMHNpcGJTRXhjSGp0VWpnc0pWNkRLZjBFU0lIQWxvWlU0TEFMbjVVZ0M4QjZ3UWZ1Nm1jUnVzREtyM3BKRWFGb2t6RVF6UEhueUtmcHJmY2d0cmNZVWFab2lSVFQra1IySGNTSmRsWThPTmw2bFBsZ0lDbS9JcGNWS1Mrb01DeXlXVzd0YUoxdmp4d0kxa2EyeHExRk41M3RHUzZxZk54RkxIMHhNUTdUSENmQU9xVFhlTzR3dGNENWpjaXBHeDRJTEZ5L1FiTU5Ydi9hYjlOTWxJQU55Q2xzTXRhUnBhamJ1ZXhOMlBJa3RNZDdNUEJzdjVXcFFzZWZDelROY243L0V2aG5QNU13a1M4c0x0Sk5ac2l4amd6Q2o5SUVkdnhidnBxQWRMNFBydlE5WjE1c04zOGYzeitiOVAxaElUQWlCMWhwakROWllZdFdndDVxeVoyb2YyWHJCMy8wUC8xUCtwLy81VDFIRVpjNjN4aFJabU02Vjc0TzZJQmlMam40RkVwa2duQXFWbzRnUktHYWlPZmJ1MzRNUW5zV2xXNndORnNqSlFIbXN6VUdDdytBampVbnpvS2pWbnR5RXluSEJjc3hVTEJrRVpJUEJCb0lYWXF3MitDL2p5SDJLSDd2RFdtcXNzM2pyc0xrYjdxdWdxcVlXcHJTTkQ5RytjRDR5dExORUZVR1ZwZUozZ2luYXFrMXpva2svNjdLUUx1S3hhQVJPV0FwZkRLVVVvNlNyMGQ3dWZtMUJ4Z0tYaDM0Wk5UUkZhcEJDb3BUQ0Y0SEk3bVVQUC9IY1oyakpKb1ljcVFWS2FJUUU0OHEvSjFSL1R6eVZFYkgzNExhbzFsVjlEMkNqdThGVy9YZno1OFdtOWNQaUluNnJ6MWR0Szc4blEzL1pLdDV0ZzJJMlVmVFROU2FuWmpqem96Y3BNR1JsK2V3ZHk5QnIxTGdIMUVTMnhrY1h3dEh0clRFN093MkZJTTFTdXIwdStWcUhpU25GVjc3NkQrZ05GaWxNRjhpcElyR3dnWHZzYW9RSFlQaDVveHd4YUJZNzZUS0NoSC8zVjMvQmYvWjMvaDVacDBlenRUZEVNYU1FOTBGbDduOUljTUp2bXA2VlNLZUFHSkJNTldiNHBaLzdGZjYzUC85ZmFPcHAxczB5c1l6SlhjNERLeXNFWTRhZkREbWFjY0VDTFNIaDBOUXhQdk9wejNQaWtVY3BpZ0l2SEhHaXVQak9PZjc2eGIvaTNQeGJRWEdnSkJoUGx2VVJNZ3pPTWpNWU85YVk3clE2WG1YQ0lFRUpHV1FUNkhJd1lVdjF0R1ZZOGtLRmNnTldBRklFZWZXbTc0RVhnVm81Yjh2ZFcyU1ppQldqc2VXSDVpYm5PSDNzTVQ3LzlCY1pkSEpVcEVCWjNybDJrVE52bitISzBtVnliOHVJN2NpaDRVNWZPNGtzVzhxRzBVOUZZb1VtRlBVWVNvSlZXZnFnd2JGOUQ3TzN0UmVmT256aGlkQjRMOHBCbGl6UEtYd25ndmV4MnpFRXNLU3VWTFhxUkZsMEJJS2ppQkdld2p0RUsrWm1aNEcxZkowQ2g2V2c4TVZPT1kwYU5SNElDdml0N1c1RWpScjNoNWg5ZXg3aDg1Ly9hWlNJY05ZalJJUVFBbWM5U28ybUprZlB0aEJHRW1WSjJqalJySGVYaUJPWW1JeFk3eTJTRjJ2ODRUZCtsMnNMYjJOY0QwZEtSV0tIQWJRZmd5ZkFXSEJ1NCtrTUNVK3c0WnBvdEhqbjZqczgvK3dubVpxY1JUaU55U0ZTR3IrSnpXeFZuT3B1djI4dUtIQ243ZS9FR2NVRFJHVERhVHE4OFBoaDZLd3M5RkR1TzlLYXVibTlMTjZjNThiS1pSUVNXM3F5R3ZPQThkaHlGQ0dpa2tSNmlOR0lVcm41eU53cGZ1bW5mNVdqKzQvUjFKTUlxNGhFVEZNM21aNmM1ZWlSdzl4Y21xYzc2T01LRDE0Z2tDUlJRclBSSkM4S2xCQUlLUkNpeXVZYVg0N0lyZk5CZ0JERUJ3WWpURERQRndaWHZvekw4Y0l5YmtNbHZDaUxrb3g4RlFTbGl3ZUNTRVFJSkxva3M1cUlBNjBEZk95SmovSHh4ejlKa2paUnFhWVZ0NWlaM01QVXhEVHQ5aVJZV09tczRvYjlTN0RaOTFUZ0dhL2s1VGNUMmJKankwZ2dyY0xia0ZpbTBRZ3ZTV2h3c3Ywb3o1NTRoZ016KzBPWjNTSzBHVnZxMjRYY01Ob1Q1WEdWQjhTZHkySGNxZC9lM3YvdnZ2NXUvZDhMZ1JNcXpBN2dTOXV0WUw5RjJhZWRnbFRtaUFuRlc5ZmU1dkxhRmJyMHlNbkgrbnlOR3JzYnU5czdwMGFOQjRKRGFZZU9QSVhwMHUwdmtUUWMzL3pqcjNCMS9oeUpoaW9TSzhSdHM4QS9OcWcwbVdKb1J5YUhLendPNXpNOEtkLzcyMzlMcXhXVFpqMmlXSkJsMmQxMnUrUGhoTU1MaDVjR1A2d0dKd0k1Y3hwbEk0VFJSQzdobDMvMlYya3lpU2RvU1oyeHcwSEFnOEs3VVlSUHl4aUpaRWJ2NWZtblA4bkRCNC9qQnBMQmFzNTBQTXQwUEV1Nmt1TjdjR3p1QkwvNnBmK0FBNDJIU0dpUzBDQW1DV1lhQTBqUUtLK1FMcnlVVXlnYmxlY1ZnVWxJb3NZbzBVc0NXb0lXcUVUVG1HaUNncWdaSTFVcE1YQVNuRVE0aGZZTkdSWlBOQUFBSUFCSlJFRlVJdDhnb2tYc0cwUStSdm1vZk9tU01NSUViV0lTSWhMbXhENCsrOVRuK05SalA4R0IrQ0N5cTVpT1o1bGdpc0ZTaXNvMHB3NC95cE1ubm1TdU1ZZENJYXR5MFp1RUpIZjhLbTdTd25yanc4QVd4VlF5UlV5alRQRktPSDMwRkFkbUQ2Q05ndHpUVUFrS1JaRVZXeVl6RHZ1SnFLYng3K3VXZjJDUXZ0UmFsNUZqb2FEQTRqVmN1WFdGRHV0WWZEaVA5NnNEMTZpeHphaWxCVFUrdWhDZXdnellNOWZtNXEzTHJIY1grVWZmK1RvTFM1ZlJ3cEtaUHNQRUxoa3Nxc1loaGNiNjNaM3NORFNqSDh1Vkh5N0s2ZWZVOUFETmk2Kzh3SmUvOE10TVJBZVFYdUErdUJxekh4cXNDaFBvMGprUXFpUUJWU2E4UUJTT1NDWE1UZS9uNy96eWY4Uy8rTE4vaHBLYW5qTWtPcUU3UG4xL1B4QUU1bEZlNzhvWDllRGNmaDQvOFRqOWxaVHA1aXlSYUdCemkvZVd1WWxER0p2U1gxcG5mL3dRaDF0SE1ldVdobXJRdDEweStqUmNJR1RoUENxTU01Y3lzYXJ3ZUtzQWo0NDB1Y2t4TnNjV0Rwc053RXVVaklobFFtWnlZcEtRRU9ZOU1RbVZFNndkK3JkV0dvbEsyV3BwTVFGbDdQNUFmSkE1ZFlDNEU5UHI5dG5UM0VjamFtSW82S1U5VUpDMG0reWQyTXVodVVNc1hsM0E0NUVJTm9oWTNxTytVeW1KTFJ3S0dmNFZDb0ZEb1hsa3owbU9IenhPNGlQU1hvWTJpbGE3VFRiSWNJVkJKVTJjZjJBVjlBZUswVGN3eUI2cXJsVEpMTHdVT0FmZHdUcExmalVrTEFySEJuRjdqUnE3SERXUnJmRVJocVBSbE13dlhFRkhsbTkvNTV0Y1g3eUlGaFloQ3lnVHU2ckF6Q2dhS3plOWR2YkQ3dTZvcHRMRnB2ZEd4ckxoWVdsWTZTN3l3ZysreDg5KzhkL0hwZ1hOVnB1aTJNVlIyVElpQytDRUdrMVArVURPbEFlcEV3YjlEcTdJK2VUSFBzMlZXeGY1ZjMvNGZ4TVJZWXpacU0yODUrTnoyNXhZNFF3eENWUHRXYVpiTTZTNUkvWUpKdlYwVnJwNExETXpreVJ4RTJzTjdjWWt2L2JGWDhjSmgvVTVuZDRhS3BJa0RVMXYwRVVwRld5YVBPRmd2anFveEFrd0xpTXpLU0x5ZU9XNE5uK1ZNMis5d2MyRjYzanZPWGIwRVo1Ky9DbG1KMmV3QThkRU5JbHltblE5SlZJeERkWEFpNkExdHRJRU53ZmhxRW84Q3cvQ1NKUUpVL2xOMldaU1Q5SldrelQyTkZpK3RjcEt2b0tJb04xczQ1VEI5ZzB4RFU0Y09jbHJWMThySlF1U3l2TjRvOVkzNkZpM3pMNHYvYktVMEdpdmtXaHlWeUJSSEc0ZDRma25QOFprY3hyYktTQzFSSEV6ZEh2blMwZU9EYnZac1dWcGg4MFNRVjR3UHJ4MFdJdzNYTHQ1bll3Y2k4TkpQK3A3anZjMElLaFJZeWVqSnJJMVB0S1lYN2d4OUlsZFhWc2dsb3JjZGNGbXhMR2tNRzRMVFd5d1JuSS9WZytBY1VZMVJoaktWZDZDbytEVjExN2s2Vk9mWW03bWtSQ20zc1VJQkN3UUlDVkNVcytRclBpZ2pkUmVZREpEcEFScGI4QlBmdmFMWExqMEpuM1Q0ZnJxdFFkdmhHTG9ZS2JLU2dzQ1NTTnFVR1FGU2pUSnVqbGFORGkwN3pEQ2VRYnBPdGtnSjRvYnJOL3NNSkZNb1dOTjdsSW0ycFBvUkNLMFl5YWVEb1VyUkJWbEZxVnZza1M0OEh1c0k2d3p5QmdLY3R5eTRGSjZqWWhWd0RFbjluRmk2aVJ6TXdjd1VjR2tua1FaVFc0emtxUkphb3BRL2xRWXJMU0J6RW83dks0YWdVc2RTaXNpRzZNeWplMTVCaTdGUjRyWjVqNTZkQkdSUnlXU0FRUDZSUTl2SWRiSlVQQUNXOGYrQTQyOU02eTFRVVlnRXB3UHhtSlRUUFA0eVNmWVAzc0FrWHFFZ1NScUVFbE5Qa2dSWHRKc05zbU53ZXVkM2NmOUZnUmJsQlp4RU03ZmVjT2xHNWNZbHVtdENrN3M3Rk9yVWVNOW95YXlOWFk1L0ZBUEZqRCthQ3NyZHduS3lJMmxNbkozVW9MTXNMN0RkLzc3cjNObC9oeFFFTW5LUzlZaHBRNzZ4VEVJMUJpbjNjMlIyQUJmVGcxdlBLZXh5ZWlRRTRjczZ3WXNyaTV4OXVLYnpIMzZLS250aGVLcGZpeDBXMzF1aXlQZEpsNGtQSVNyajkvMlFMN3ZzN296cEI5RjF0MVFSakRlZDlTR3ZtU01aWFpxbW9IcGtYZjdOTnBUL09mLzhYL0pQL3ZuLzRTSVpSeFptWkMweVI3cURsazlHNUtUeWk2SkR4cFpJY01VdjhDanRLQ2ZEbWlMRmxJcFhPN3BydzlDVmpxQ1NHakFNVG5kWm1GOW5xVmJpemdzU1ZNektQcmtlVXFqbFdCTVBrWmtaYWwvRnNHZHdjdFFmdGNXNkdhRTE1NnJWeSt6dEw0VXZISlJYTDE2bFdzUFhhTzMxbWQ5dVV0THRZbXN4cVNXaVlrSjBpTEhTaDhTd3BUQmlaTE1pcEZXczZHYXlFd2lDc0ZzWXk4SFpnNFNFWk4xQnRDRFdFVlliMWhmWGFkUGoyZzJJbElSK1NBcnI1Y2NMb2UyQStVMWxlUGZkYllnYUdVR1A5NmprTVRFUEg3b2NVN3NQNEhvQ1d4dVVVaGFqUWJlV3ZxREFjMW1rMGFTTUZqUGtDb01hQ290N0h1Snl0NkxidmJCSExBY2dtQ3BKaDFJRis2cngyTUZXR0hJUlVZcU1tNXhvM1FpS1R0ZDJkVnIxUGh4UUUxa2EreHVlQXUrQ0pFbVgwNC9lb1YzQXU4VWVJbVVEdXR5Q3BQU2JHbDBCSmV2bkdkcVJ2RzFiL3dHM2Y0OG5oN2d5SjFIYTRsemtrRjZ1LzQxS1AwMms1L2RpVEhISnhnV3JDeUpiTVU3UFRndmNGNFRxemJMZVlmLy9TLytENTc5ekNkSktKZ1VrN2pVWTV5bDFXcWh0V1psYlJWbkxIUDc5OUh0cmdPbE80QVB0dnpCTDlQaEszTGlTdVpSTWN4eXVZRTArTnZYaDladTlPR3NsbHVSaWMwWjRNcEp2QnZwZzczemVHL0tsb1hxVlVxSHFmbFlOM0E1eUlGbkltcnhpei94ZC9tTDcvNHIzdTYvVGxORHovU0MrWCtTa09YQm4xWEVBdi8vcy9kbVQ1TmM1NW5mN3owbmw2cHY3MFkzbGdZYWFBQk5nQXNXa2hLMVV0SklaTXpJWThzUmloamZPaHpobTdueEgrQWJYOWllbUxBMGR0aVc1OVlYRStGd0tCd09lMlljSTJ2R0hJNm9JU1dSRUVtQUFBRUNhRFI2My90YnF5cVhzL2ppWkdabDFWZGZOOUFBMmZpNno5TlJuVlYxY2ptNWZKVlBQdWQ5bjdmMis0aFhHQ2dQbHZXbVZxaFU0MnlCczRaY2NtcGY4OEdGOS9ueVM3L0MwbkNEeXRkb1NjaXpIT1VjVlRIRytScHl3MloyZ3ovOXEzL0doVnNYU05BaHNRZExUazdKcER0MDAxam9GcW81ZXRQck9Jd3l6eDY0aWR2bC8venIvNk5aUWpvaTN2NnZtZ2U3Y0daTlE1YW0zcVlLelpBQkhrOUN4dFBwMC96bXIvNDJUejEya3JxcVdhMkVaYlZFTnN6UW9yR2xRVHVoS0NaY3VucWwxOWQyVytIS21UNFl0R3pNVGtsc245dldrS2tFakNVajVYVCtQQytmZklrbjlPUFVveHJ0QkJHb3FpckUvUzduR0cvWkxmYlFhUmlLOEQ1d1B0OTdBcHBlaXI2bjR2ZWVrQmFobmJlWnowbHZuUXZhdTVQWG5yKzU2OS9oS2VzeHk4TWxiR253dFdKNWFZM1NqTm1kYk9QV1BYVmU4dG9iMzZOa0Y0TkZwZExVZkVsSWtoVGpTZzd6YjFoRUJFUWlHL0ZBWWY4UDhtUXlZWDFqR2VzS2pLMG95b0pxYjVlVlZjMS84NC8rUzBhVEcxUm1tM1k0dlMwcmUrZlNzZy9LRDc4NlVJa0ZncENGNEwwbTFVTXFhL0VJdFpSODc0ZC95VGQvL2U4eXZyWEhrZUV4akRHTTkwYWtlY2JLMG5MM2VSYXo1SDlLWnZjclU1OTJOdmcrVzZPT2ZDUTlCZFkzNzMwM05HNk1RV3hZMmxzQkVsYVgxbmp4bVpmeENGdmZ2c2sxY3dsTmdrWlRsUldpRmZsS1JqRXFaamZzQTEzVUhmbHExRWJYRXBObWlONTdybTVmNXNmdi9DMWZlMm1GcGNFalNHM1lLVGJSRGdhNVFvbXc0N2Q1N2IyLzV2emVCMHlZa09xVTJvYmtSSmZVWFRHRWcrR2IrTjcyZk96WDBkV0MrRlBmbTE4M2FWUXRmWFV6NUZpUm9QRk5OYktVbXF2MUZkNjkvak9TVmNVVHg1N0EzNjdaTFhhb2R5dklQVWRQSE1YbE5lKytlNU1QTHIySERWR2RjdzlkUXRDbHBidG1sTktRRWNyZzJxNmphQVhXR0ZJeVR1Z24rZnlwRjNoODVYR3lLc01VQnBYTXhyaTNJYVB6bEY5NkF3cDN1alRGMzdsOTV0aDYrQ1F1ekFMa1dZSXpGY29ya2lTak1vWnhWZU5UalJyQXBjM0xiTnN0REFWV2g3L25zQlBDSWM5VGpZam9FSDFrSXc0eE1vNGZlWTZ2LytZM1VaTGdyRUlrK0hBNkd6S1dzMXl6dlgwYm5UalcxZ2VNeHB0WU4rRy8rK1AvbWtzM3psS2JIYnlmRmpwb0xYZnVUR1FmRk13NzVQdlpwaDZHd3lXcXVvWkdUYngwK1JKZisvTFh5TzJBcFh3RjV4MWxWYUtVSmsxVEhCNWp6ZFF5cWM4RTJ0dXBielBwOXJ2QjN1M3pSOW16dTMrKyszaHgrMkRUVHVzNlhDdDVuck8wbGpOY3o3aDQ4U0tWcThna3crR3czbU9Nb2JNaG1NRlU4M1FOaWZUYWgxRUZnU1JYR0dNd09MWTJkM25rK0tNTWwwUGxLNmNza2x1eUZXRlViM0gyNXZ0OCs4ZmY0dGI0VnJBRlN4T01OVUVOVlNwVTRZSURYKzMycDVmQm9ybGE0dHI3cmpkL1MzNW5TR3huSnV1RDRPNGRyY2RzUlFnaFNMUm1kVzBWNXh6WmNvSmJzb3pWbU0zcUZqODUreVkvZU90dnVHR3VZNml3MUpqR3h0L2hRZG9Rb2Q0VnF5M09Oa1BtemZiRmdySWhuT0JSOVNoZmZ1RXJ2SER5OHd6MEVEdXhZVmRrWmkxM3VWNE8vbnl2eTgxditlUDR5QXFRcFJwVEdETEpTSk9Fc3Fvb2ZZa3NhK3E4NWtkbmY4eFZlNVdDR29mQmV0YzhCT2ltNE1PK0JJQ0lpRU9IU0dRakRqSHlRR1IvNDVzb3lYQ09VQkFCd1RtRDFvSlNZTjBFVklteEk5TE04WS8rOFgvRnhldG5TTVEweFE0YWhla2pxYkVQRXZwRVZwaFJaRnN5ME43b215RlBEeWpSak1zUmo2NGY1L21uUG9meUNtTXRPa25KMHBTeXJxbnJtaXpMOE00djJBN1R1TnJQT0pGVlNnV3lsV1drYVhBcUtNc3lKTkU0dzZNbmpyTnhkSU1yNTY2d1o4ZGtwQ2dsR0djaDZjbHovUTVJb0pHZXhzdFROWVJDUUtjZVowT0Jnb2t0ZVBQTTIyeHVidUsxcDFJRm8zcWI4OWZQOHQyLy9YZjgrUnQveGxhNWlaVUtwUlNTZ0RVV3hDSktoZkFEQ0l4dTRkVE45WXNGcDhyUGZwNDdrRzJNNm40U0cxNXRPSWtXM1RrOEZMNWdiMmVYdldJWGxZSmVFa2F5eDlYZFM3eC85VDNlT1BNNmx5ZVhTRlBOeEkweDJCQ0gzQWJkemhCbEI5bzExMW5USnhGU241SllUVWJHRVk3eXl2TmY1dlBQZko0VnZjSmt0OFJYamtHZTk4amNMQTREa1FWSVJHRXJTNm96RUdGY1R0QkxDV2JvdWJ4N2xUZHZ2c1V1WTJwcURFMUloQkJLOVByZXcwbEV4Q0ZHREMySU9OendTWmVKM1FYbVNVc01MSk55bDZQSFZyaDU2eEk3MjlmNG4vL2tqN2wyNHp5YUN1TUwyaC94bHNUMnNlaTdodzFLZ3pWUW01TGhZSVZKVWVJYW45WHZmUGZidlBMTUwzRjhOU1BKVStyS1lqMTQ3M3JIcmgyNkZicENDLzBicDk4L25QMVpnbS9VMVRSTnlSdmlVNVlsV211UWxHSTg1cXRmK2hyVnFPTC8vb3QvanFGa3FGY1JFU2IxYUVxOGdDYURxbGx2dTRYWjVMQ3k5dUZYdVhaWVh6SlFLVzlmZkoyM0xyelJ4VENuQ0prQTJtQnNGUTZ0T0tvNkpQNmdhU3l3bXZVZk5PM2pJTWx2MFpUcGZyUmhCek1rZGo3WnlvUFZOZFpZeEFzZXk3WHFLcmZPWHVlTnN6OGlKMlBTa0MyRnBxVEVZaG5YRGo5UHJ1ZTdPRkFoSWJNSzJ4RVBtYzhRS3lRa3JMTEdGNTc2RWk4KytTSnI2UVpteitBcmg4amh2L1dKRjN6bHlGV0tGc1hFbE5qRW9sY0c3TGxkM3I5NmxoMG1qWmJkbkxJbWhrZnRDd09KaURpOE9QeC96UkVQTWZwZXJ1MmRyaUZOVW9Gb0JrUGh4czN6WkFQUFAvMmpmOEtsRys4alZHamx3SlZvSGU3OEQ1Y1NleGNza29XOFEya1BXS3d2V1ZsYTQ5cldSVjU3L1FmODVpLzlIUjQvL2ppN28xMjhFZGJXTmhBbjdPN3VNY2lHVEpsTnkrSSsyK1MxajFhNXF1c2FwUlRXV2tRa0tLQ1NNcEFsZG0rTStPTHBWMGlTakQvL3QzL0dabjJMa0JxVjRsM2RLSzRzRXFiM2h5WjNRWitBZHhSdWp6QndscERxRkZHZXZicEF2TVhiYVhVbTcyY0pzY1hPNWlRZVJFcDdpV2o3MU5sRjAzM29wZHNkdEx3R2E2WTdxcFZnWFVpcXE1aXcxeVdhT2JKQmhuY0dhenpaTUtHYUxBams3S25jM3JodUg1VVNFcHVBcGFuYmxmSzFaNy9HMDhkUHNaRWZ4VThjWWhRcnd3SGlOVVZSa0h6RzdiWHVCUEhnSzB1V3BEanZxWDJOSHdpbHJyaXlkWjF6NDh0TlFJSERxNTdqUS9Pd3I3cmpIaEZ4dUJHSmJNUURnSGFZMm9FMHFwVFVJSWJibTFjeGJzUS8vcU0vNHRibUpSSlZZOXdZNDJyeVBLV3U3WUVrTmhMYm5uSW9VSllqdEJhc3JiR3V3T1A1bTllK3k0bkhubUp0WTdVWjRvVnBvR0s3a2laT3RwZDE3UStJVGZ3c1FtdU5pR0NNb2FwQ0FsVWd0WWExMVNOc1g5cG03ZGdhdi9iVnIxTlhsbTk5OTE5ejI5MGtKYVhHQmNXd1ZXTVhETTA3R3diZFViNUxlQmNWRHBkb0FobkdVa3V3aFVQYkdYVnRacDJkeVgyajdON3BFTSszOWRkMTBCajQvUFJPNkpQbGxpODZxRlVvK1d5dFJ5ZGdQZVM1UmlSaFVsVGRzaDJKblJzQkQ2dFZRWFh1UFFRb0Z5ekZNbktPY1l4VFIwL3g0cE9mWnkxZEo2OVRiT0VRMXp5RWRPbGpoNWZJUW5DRlVGNVJtQktuSFdvcDRkcmtKaC9lUE04VzIxUk5kTEhISWtrSXhRYVErVEtGRVJHSEdKSElSandBYU85eXpRQ2EySWJJZWxSUzgwLy94LytCQzlmZUJVclN4SUNyRzdKcm14aTVLVVFFRWRuMy9ZT1AzdjcyQ0UzTFBkTlVxR3ZIY0pBem1aUk1pbDJHZXAwYjVSWE9uSCtYazZlZVpHUDFLTDVTVEtvUldNVmdrTStOWUxjc3F4ZHU4QmtuczJWWjRyMG5TUktVQ29sWVNpbVNKUHgwYnQvYzVzU2pKeGxYSS9adVR2aWxWNzVHbnVmODIrLzlHeTZQTDVJU0ROdHNlODMxM2YwZGFKZVFrZ0tPVEZLTUM5V1h4Q3RxWDZOVmdoVVRyc2Z1dW0zVzBiak5pVktkMzdIV0NkYWFwbG5qL0YzeTR2dUh2MCtNKzZSMkFZbnQyM0MxcmdJTGwybmZLNUFVZkFYT2hkaGhsWUoxN1hHMjZHdzZmNVlxNnRJMWdyUHF0aWJOUVJRVXh0ZDRiYkhHZzRQVUp5U2s1S1NjZnZRMHYvcnlyekcwU3d6STBTN0J1QkM3WFpvQ3JUVlpsaDM2djNPdFV5eU8wbGF3SkRDRUc5dTN1RHk2M0tUSW1aQmU2RDFhYTR5eFhjaDdSTVNEZ3Bqc0ZYR0lrYksrL0JTLy9WdS9SejdRRElZWnR6ZXZVWnVDSTBlWHVIajVESC8weC84dG05dFhxZTBJcUhCdWdrNGEybXNYLzZJL1BFcHNueFhOSlgzTUtYTHQvZDZZS1RHeTNwRXk1SVBMWjNuMjZXYzV1ckdCRW9XSVlwQU5xSW9LSmExSHJIVEpKU0VCcUkxTlhyaTVuMHV5Vjk5bkZ1L3hmdGJiZHVGNm1qQUM1MXl3NG1waWY2MjFpQk5TbmFNa3hYdHcxcElrQ1k4Y2U0U1YxUlZzVWJPM3U0UER0U2x1ZU8vUkdyeURwU1Fuc1JrWkF3WXNrZmtjVDBJSWNvVmNsakMyRHI2a0xWUHNkN01kRjI3YlBTSGNvSUczZDdtT2ZiRFB5bFRXclRkTmt5NXVNc2sxem5pU1BQUW5GSVNhK3VCT1BYRnBDS2FmbWxQMEw2ZFcvRFM5ejM3NmtKU2t6ZTVVWVZBbFJaSGFCSVVpSldkVjFrbEkwU1Nzc1lGR1NFbkpTREd1UnVuZ1RwQ1Nzc3dxdi96VTEzanAyWmRaVSt0b2s2QnFoZFNnbkNiUkdxWGFMcmlaNDltL1BxVDMzZlI2OGZzK3p4eE83NXY5OGpQZkxWcXVlODB0TDNQTDkxWG9tZXVYTnJUQW9WTmhURVdWR3JiVkxtOWZlb2Z6MVNVOG5vS2lHYW55dU43dlhadmYrTEQ4MGtVODJJaUtiTVNoeHRGSFZwZ1VXNHpHanVFd1o3aVVzSEZraVhQbnp2QW4vOHMvWVh2M09wWFpCV29nREdtS2dOWmdMWWRCRlB3NVl1cjNPWjAyM3kwWUJ1L1FxYldXaWpIcmcrUDhxMy85ejNueXlTZFlHeHdsRWRnYjc1SHA3SUUvdHM3NjRIWHFITjZDMU1MUzZnb3ZQdk1pS3lzclpLK2x2SFh1SjFRSWlXaDBMdXdWTzhGSnR0SThucHpnaGFlL3dPblRwMW5kT0VKbEt5NWV1OHpyUC9raDU3Yy9KQ2RydkZUcmpxK0c4SVBnUlRzdFVYQnZVQWplK2M0UE5pWEZPQVBlWTRydzBHSXJDMWFSa0RETWhwaktZTEVrNkttRkYrQWJDaHppZFYzbzU3d2poRzhEQTJpdU1ZVXRMUXJJSlEzazJDczBpcHlVVThlZTQzT25udWZ4UjUrZ0xnMDNMbC9ud3cvUGMyTnlqVEZqRXBkaHE1cUVsQ2Z5RTN6aDVKZjQzR012Y0hUd0NMbk53QXJhSmFINGhiYzRDVjFTY3ZqVG5MeEF0cFNINGcwckdsbXlYTGh4a1V1N2w2Z3BLYW5vcWhuTy9UMzNuSk1qSWc0OW9pSWJjWWlSTXN3MitJUC82RDlHS2NkZ0tLeXM1bnozZTkvbWYvL1RmOGJGeXg5UXVUMDhGU0d0dVUxWU9yajR6c09IZVNhLzRNQWNTUGFGVUZEVnN6M2VJcFdVcjd6NkZTYTdFN0N3bEMvaGJKL0w5Qlhmb0ltMXZyMi9DRVYyLytjNWVlcGpiMFBRa3FBbFJGeDZaekhXNHB3bnpUS09ySy96ek1sbkdDUkRibDYrUlVrTkJvNHVINmVxYTVaWTRSOTg0ei9ocTEvOFpVNCs5aXk1R3JLU0hlR3hSMDZ3dnJTT0d6bTJSN2NRZkVNemRWTmlJQ1BReXJRam9LSHQ0NzAwU2ZjdmxCY1FsQk1jTHF4UmFaUm92QVBkL012VmdOcFpOTG9KaWZEZCtnUkJkeXF0N3ZxbVovNnByc2VLaE56blRWcGN4aklyVFovU1lKbDE4bFYrN2VWZjVjVFJwemkyOGloSEJrZlp5Tlk1dm5xY3JNalluR3gyQlNaT1pDZDQ1ZlNYK2VMVFgrVG8wakdTV3FPTVJsdUZkbTBCQ285dkpXTnBMK3ZGVjlhblpiOTF0M1l2ZDI2L1k2NmRnTTR5ZHNvOTFKcG1WKzN4bzdNLzVJcTlTdDM4Mi84ZzBWdmh4LzJqaW9qNGpDSXFzaEdIR0FaVVNWRnRNaW5IbERWY3ZiN0RkLy9xLytQZHM2K1RLbW15RzRJNXZZaG5YMGhjSkxSM3g0SEh5SkVQTkVXeHh6QmQ1bTkrOE8vNThpdGY0ZFJqenpQYXF0RmFZU1NVREo1TkFIdUFjcVVsU0YxSmtxQ1NKWXA2VERVcWtOS2hCNXBsdmNidi9NbzNlT3F4cC9uV3QvOE5sMFlYMkJ0TldHV2R2L2YxLzRBbmp6M05XbllVVndybHRrTjB5dHFSZFo1OTRnWEVDeDllZng4TkdFeVhaZTdhOEFNSVNXS2ZBQ3NzNDNDTUdXRXhEZTBNTVFCNWtqT3BKZzBCVFJBVVpWMlNrbmJCQmVFR01vMTdYblJXUFE1cERKLzJoK0VHV2k0TmdYVjROQWxQcjUzaUs1LzdKVTRjZlp6TlcxdHMzZDRpa1lSQk51VDVFOGNZbUNIWGJsOEhQSTh1UGNvTHo3N0F5Y2VmWnNneVpxL0dWNkhYMGwxN0xicDRqT2I4cWYxczhwREFBWHZGQ0ZsT0dia3g1MjZkNDFvVmlraDRaZWFlVDFYdmVYUy9RaHNSY1pnUmlXekVJWVpqYlQzbjV1MExuRHAxaXZQblArUi8rcFAvbm5NWHp3S1cyb1hBUENYU1dCUVJmOEQzWVo3WnE3bTIrUVN0M2xRY1pia0hvcGpVRG92bFgvdy8veGYvOEQvN0wwZ3pUZVVLUUlNb2xCZDg2enJhcUVSZUhOS1ZhejJNY0JoanFiMlFKSW9zeTlCNm1hUlVXREVrYU1iakVXalA2Uk9mWStQdkgrSDFuN3pPOTk3NUxqa1pYM3ptWlZJN29CN1hvUXd3T1VLS0xSUkR2Y296ano3SDc3MzhEWXdxY0ZJMlZjTVVuZ1Fod1FraEFld09nK1IzU21ZU0Q2UFJDS1VVTlJXaWhkSVhYTHgya1Z1N3Q2Z3J3OUdsUjNqdXVlZllXTjVndkRkQjI0UXN5VkJXZzNNb0JmM3MvNmtBcUxydGV3bkphMkVhZUdNNzlVckFPcFJQMFY3aFNrZEt6ak9QbitUeDlSUHMzUmlSK3dIcnkrdDRDMFZSNEpSbmZiREc2VWRPODZRL3djbG5UL0xrWXljUkoxUzdKY29wVXBVMnowNHVIQ2RDS015REJDOHdOaFZMeDVhNWRPc1M3MXg4bHdsakVFdnQvTlFwdzA4ZmV3S05WOEhkQlI3eTBLcUlCd1h4TW80NHhFaUFuUFpuZW5WNW1kM1JGbW1pR1E1emRuYTNrYmFLMG9KaUI2MHZhRVFmQjBWY3poTlpRdXlkZ213cG85cDFDRG1yc3NIdi81MC80QSsrK1lmczNCeVRzWVQ0Qk9WVlNJZ1NqL01leERYSjdHMnM1Mnd5aTVyN1Zlb253UnlVbUhYSDVlZmFBK0ZxcmdzNW1Pek5KKzdzMjc1MU9CTStKMG1DMWsxMU9IRkI3Rk9lemMxYjZGUXhXQnBRbTVLZnZmY2VOMjlkNTlVdnZzSlRSNS9BbHA2cUJ1YzF6a3FJUDgwaFd4Skc5VTJzRkRpcUVDdnJOUjROUGd0NzVhczc5djl1V2ZsYUZHbWVvbE9GVHh3M3RtN3dnOWUveitzLytURWxKYzg5K1J4Zis5clhlUEtKcHloMlNzUUl5OWtLdG5ZVTR3bURiRllMRVQrMVpWQ2UzdDlYMzlTMjZWdmo0bUN0eFJzaFFaTzRCTzBTZk9IeHRTVlRBNVlIUXdhREphcGl3bVF5SVUxVFJJVHQzUjJzY3F5dnI2TzFaclE3aHRxek1seENvUmp2amNqVGRKclk1TnRZWGh1c3U3ekM5UlRabWV0bjdwelBYMy96MTFmNy9mNWtyZG5yUjgyMU8rR083VzNmRmZ1dlB5c3dvb1oxeFE4LytENnZiWDZmZ2drMnF4a1oxemxqaUFkTkFvM3BtQVZRbGs2WmpRd2c0cEFqS3JJUmh4aU9MRldrU2Nab01tSnZ0RW1XYXFxNm9ONGRNeGhrRkVVeHQ0d0tjWmxlTlRmNS9UZllDTmhQYUZ2dnFMNkhWTGhaVmtWRk1zaXhoVUdVNDd2Zit3NWZldTVsanEwOTBUQ0E5amcvZUhkTXBSU1NlcngxR0ZQaGJmT0ExRlFFODFqV2w0Nnd1cjdLNXZZMjlhVGtoV2Urd0hOUFBzL2E4Z3A3ZTN0b3ljaXpOWkpzZ0xPS1VURmhNdGxsZDdMSDBxb09acktkcHFaeFBxV3RadGNXaUQwSTdpN1hkbGxNTUtYQmlZUEVNOTRkVSszVmpUdUJZbjExZzRFYWtyaVVyQW1qRUt0SXZHSXBYVUozNTdSUlpGRk4rSFBvbTIxVjBGYUc3ZmZOaC81cHNZaE8wSzZKclpXVTRYSktyb2NVb3dMeGlxMWJXOWk2WWpnY2tpYzV6aGtlV1R1S2N4NWZDbFZWb1l3aVRSSVVDYjZ4SUhPRXhDNmdjMk40VUV4Sm5IalNZY1o3bHovZ3d1WWxISTZhaXJyMjNaOW9VNDhDVFZCaXA0L3R2bm02aTc5OUVZY2ZVWkdOT01RSVZiMnlOTWQ3UjVabGpNYTdESWM1SXNKNFBFWms5c1lsb3NFcnBzWTM4NldWSG5hb0E5NHZnQmdhQzFUd2tNa1FqR2JBT2k4OCtVWCs4Ly8wSHlKMWluSVp5bW04RHlSNFJuR1NXY1dxUCsxNjRadStOQmw2TXBlcDV5VE1ZOW12YUhYYm1Wdi92Q0tyL0hROS9hazR2Mi85N1JTZ3Jzc1FVaUJKOEpnbEZGQndObmpRcnE0dGMrUEdEUWFEQVNwSlFCeEprakNaVE5CYWtTa05GbW9EeG5pYzB1aFU0VlJKelpqLzdVLy9WNXlhVUZNUWdqY2tEQTM3b0xCSlA5NXowU25hbDlVNGUwN1RWRlBVRlpVcjBFa0N5bkc3dW9YRGthQ3BxVm5QTmxqS2xwaU1Dc1MzaVZ3cHd5eW5yQ1l6eHpqNElMUmI2ditkN1lmRllURUltbHhsaUlNU3d3ckxmT21KbDNuMXhaZHh0V05sdUVKZDFGaHJXVjFlcGl4TFJxTTloc01sVXAxaHFsRFVKRTAxU2lYVWRZbjNGcTAxMWpXZXVyNE5MVkJ6SVFhcWllQUYyeWl4aTFUWS9yRzgwNGpBblJUWlJjdUhrSXYyVHlnVXVtanR2NVFIN1h0V1djMXl6Z3RPb0VocjZxUHdaMy85LzNMQm5RVWMyMnhTQzZqR2s5ZVZnY1NxUnBHMUtHd3IwNG9MUkRZeWdJaERqa2hrSXc0NTVzbldSeUdsODNHZ0VZdHhOMk1uMTBvOWdjanFJZGFBSnVYSm84L3owZ3V2OEFlLy80ZHMzUmp6eU9weHpNUUZneWZKMkxxOXphT1BIbU04MlE1aEJoS0lSRmpyWEJpSUIrVURrVlUrbEx5U05rRkhUY09lWFVNQVBrcm9RVml2NnhSTjhXRzcvV2svbHZPZzl2bjF6eE1aTmRjK3UzMVFWa2pUSEMvQ3VCaFJVWkt0NUd4UGJ2SE9oMi94cjc3L0w3QVVPTW9tWGM1aGxjZmhjYzZoSlhpODdsZGVWVU1rWGZlcE9XTmgyMjJmK3YzcldoZXRMZnpmTTg4Q0FobVZ6dk5BdXFVOTArSDU0RGZyRzNzdTExdldkLzgwS1VzTW0rU3ZBYzltei9DTlgvc21xOWthMmlVb3B4RW5NOGRYQmRiWEkzcFRvcnB2UE1HM29RVXlMZWZiSEluNTg5dGYvOHkxOUZHSTdGejd6SVBFM1BMS3F5NFV3eWlvVmJBSGM5NmpmYWhzbkJqSE1Na29SMk84Q0V2cnE5emMyV0d2S2xnOXZjRzN6bjJMOTI2L3k2M0p6YVlzc2NmMGlicG4zem5yZWlTUnhFWThHSWoyV3hHSEhIN3U5WEdYaVRnWTg4ZDIvN0hmbldrQUFBQWdBRWxFUVZRV21YNVVXbU5kSUJNN2t4MTJObmM1ZXZRUm5uMzJHZmEyOThBSnk4Tmx5a25OK3ZJR3hXU0NVaGFoTmZSMWVHbUxKVXhmSFVueWRHUkorNGFBd0QwbjcwbGp2aVJkNlZ4bXB2dXNqeGExZjFUN3BHWjNoT2xVdk1JYndkUUc3eXhvaDg2RXlrMTQrLzAzK2NzZi9EdHM0N2hSWXpDVVZKUlVtRkR0U3l3R2d4R0RGUXVwUjFJZzhZZ0dweXlWSzNGaWNkcGlwTVo1aTZVT01id0oxSzdFWUhDWXhxODIvQjhvNTNUcXVoYmJ6Vzh3T0tseEt2VEhTbzJWR2ljR3B5eTJlUmtWK21qRVlzVmhFd2Naa0hsVTdrTjRnTE9rS21XSlFkaFRXN04zZFkvVHp6eVA4aHJ4Q3VXa0lYOHRhUTVxdE16OExmczdub2NXcWxsSGR3MzF6eTkwaXJ1MDUycitmQzVZNThMdCt0bnA3THpTOUFPY0NudmltajhvNVJVYVQ0cUN5cEFvaldoRllXdlVJTVVQVXk1T0x2SERxNjl4dGI1QzdXcG1LcXdSUmdhbXBIcngzMjlFeElPQVNHUWpJaUx1SGIzN29ZaHFTRm9nbjBVOVlidzc0ZlJ6bjJPUURiREdrYWdVYnoxSmttR05DYUVGNGh0N3BtYXczTGZVZGFyeXpSTloxU3FsSW9zWnhVZEFSMlEveVUzOUUvaUFDa0tlWmZoR0xiUllSSU5PRkdVNVlXOXZ4TFh4VlN3R2phYWxUNEtRU3NKd01FQnBqUXJXQVZqamNEYThyRzNLTHpkaHpaNStSYldtbWhtaHV0bVVaWC84cVI2aytHUUIyK3UvR21oTlNOVENZeXVQcnoxU3djQ2xwQVRYQW9Xd3locXZISCtKWDMvMVZ4aW9uTVFsSkM2UVB1VjllUENRdVllUU81K1dBejhmNUx5MWlOd3VXczlkdCtzWGZ3OGhyRVlBTHlGVXdFdXpPUjhJdS9hZ3ZhSXNDdkk4eFNhZTNXcE11ajZnMUJVLy9PQkhuQ25lcDNRaEQ2QXRtOXlTVjYzMW9TL0JHeEh4VVJDSmJFUkV4Q2RBbXdEbXV5SGJWQ1VrelREMHplMGJTT1g1d290ZlJDdE5PYWtaNUVOMnRuZFpYVjNCMWFiaE85TlN0aTFaOHlLZGNqWWxCSE9VUU4yN2w5cG5nY2dLUXFJVVNhcHd6bEtibW15Z2VlVFlJeno1NUpPOCtzSXJEUFNRMjljM3FhbklHYkthclZJWmk2a054dGlROWUrbjY5T2lTWFNDVHJwYXJOUGoxaU9ZZmpydWZHOVRBZTljc0dsdTdWbjdMOWVFTkxobXlONHBNQjVzY0NqSVNVbEpTRW5KR1hCeThCUmYvOEp2OGRzdmY1MVRqejNMa2hxUzJIUktZcDAwNUxWVlRPOFFHL3dSUDk5WEl0dHN3TXVVekxhS3MyNWV6Z1JGM2lXZVdtcE01aWlUaW5NM0x2REcxdXZzc1lmQm9MVW1TWkpwS2R5Mit3OUtabHRFeEIwUWlXeEVSTVE5SWlUYkpUb05wTWFIWVY3dnc5QXpXQVM0ZXVVS2p4OS9uRWVQUDRhZzBEb1AxYUpFSTg2aS9WUzZVMGdULzlvUzJGYVZiYjRURnhKb1dpVlg3cjFBNi8wbnNwNXlQQUU4V1o2RFFGbE44TmFqdFVZcFRaYmxuSDdtZVY1OTZWV2VQSFlTWDhMMjFoNEtGY3ovc1dpa3E5T2xHM2NENXgxQmJHMzNUaEFCSmFxcnB0WUZGMzhTdElkT21oSUpLbW42a3FJbEFSOUlhMHBLMXBRK2FDdCtEY2g1aENQOCt2Ty95dTkrK1hkNTlmU1hlV3oxTVRLVGtkUUp5M29aYlVJWVNlS0RHNEpxbEdUQmgwVE9BN3AxR0lpc0IwU0MrMEQ0KzlFaG1jNkhzQlBsd1ZsSHRwUlIySUk2TWFqMWhBdGJsM245d2h2YzRqYUdHaU5taHNEZXphWXVJdUpCUTdUZmlvaUkrQVFRakxVa09tUzhlK2NhdDFuWFpMNHJDbmI1czMvekwxbGZQY0l6VDd4SVVZdzQ5dGdUWEx0d2xiVnMyR1RDUTFzdU5CQ1d2dDQyZTBOZTRPUjBhTEhjWk9FWGt4RWVPcExuU2s5VlZVaWlLQ1lsS2tuNTRqTXY4ZExwVjluZTN1VEQ4K2U0Y08wYzc1My9LYU42ajRLaVM5WVNQQmthQVdycUxzNFYzeVlrdFZxZy9jU2xtbk9kTjZFUnZubVFrVTVkRnhUcnlUTFdXR3JxNXFFaFl5UGQ0TG5ubnVQVVl5YzV1WDZTZ2NzcDl3cnNqbU41WlpYaFlFaTFWMURzRmd5eVlVUHMrbGZCQTNMeUFkdTdrRHR2V3EvUVRTRTgwYUF5alJWSG9XcEtOK0dEV3g5d21jdkJhZ3N6OVpWdFBIdVZVdnVVMllpSUJ4bHR4SHhFUkVURXgwVFExMERoc1NRSmlESTRHMFRUUkFBTHVWckN1b1JYbnY4VnZ2SDEvNUJITnA1a1krVTQ0ODBSSzM2QWRvSVh0YysxWUtxV2hYSHIxaXFyYjUra211M0QzWldvZzF3THBEWEsvNWpMei9hUk83b1dMQ3JvSUI1V2w1YloyZDdHV292U0dzU2gweFNkYWFxcUloOW1GSFZCV1JkVXhvQUtjYVpKa2tCbUtkamwrdVpWTGw2OHlLVkxsN2grOHhwYnhSWWxKUjdQa2d3cGZFRkZPWHRzOTVWdHZSY0VyOWtRUk5MK0g2WUpLUmtwRlRVckxQSDh5ZE04L2RRekhGazdRcGFFZ2dhSjFlZzk0WkhWUjBoVWlpa3NZc0NXRG5IQzBuQ0lMWnR6TGNFcXpZbnJuQStjTUdPRHVxaWdRWXVEQ2hyTUZ5U1liKzh6L1VXdUJQMHI1VTZ1Qll2T3YyL1ZXRUI1alhlQ2RucmFLWEhoUVNRemxHbkpwdDNpekswUGVPUGFXMnl6amNGUlVnWTdyZjYrTm9wN0pMSVJEd3Npa1kySWlMaEhLQWJwQ21WZDRyR0E2V0ludTRwRUhwWUhTMVFGS0FiOC90Zi9rSy8vMnUreWZYUENDeWMvVDNsN1FtTERjTGp0VlZocUNXS2Z6SWJFcEpiSUJ0MzNzQk5aVzlXWXVtWTRIRElZRENqS0VtTXJCRTFwU3B4ekpGbEtscWQ0d0JoRDdScHlweXhHamZIS2hvUXZEY2JWakVZamJtN2VaR2R2aHc4K1BNUGVaSStkdlIzR2pLaXBaL2VKZTY5czF5ZXhtb1FoT1d2Wk9rZVBIT0hvMmlNc0x5M3h1Vk9uRWErUTRDc1ZZcDVGa3loTkpqbFNDTXBxeXZFRThjTHE4aHJLSzhwSmdZaE13eUFrK0NhRVI1cFE5aFlBMjdPVk9vUkUxcXEyUFJ5SFlEUFg3SnA0U2lic3VoMlNJeWxYaXF0ODU2ZmY0U2EzcUNneHpSRVJGY0pGbk50ZndUQWk0bUZBSkxJUkVSSDNDSVdRQXV3anNqQWxzOXBEU280akpXZWR2L3M3ZjhCdi9zcHZrZG9oZzJvQUpXaWRrZytHR09NWWo4Y29sYkN5c3NKa01ncnJsMWtpNjhUMWZEZ1BKckozdXJHTGQ0ajM5NVhJS3QrTDEreTNOMGI1aS9iRmRqL1pEcTlxRUJOc3l4ckZzaTJSNjhTaEVnbldXZFl5cVNhTUpudU1SaU4yeDd0VVZjV3RXemR4M2dTQ1hOY1lZNmFPQjRSaGFxVVVTWktRWlJsNW5wTmxHVm1Xa1VqQ3NTT1BNa2dIRExKQXhGT2RodGhPSTJBZGlTUW8xMWhtZVI4c3g1cXA4Z3B4RFhtREppbE16UkJSMjZyd3pYbjNUU3kyYTRwWUtKSjlCUVA2eXk4cWJ0QW5xcGI5eDdmZjNnOWhXVVJVM2R6NW1XL3ZyMmNSa2ZXSklGb2hGbXhoY0xWRFJKTmxDZVNhbThWdDBpTXBsOGVYK2Y3UHZzOTVlNDZLQ3Fzc2xZdmx0U01pSU1iSVJrUkVmQ0swNVdmM3d3dGtHZFFGUUUxQ1FzbUl2Mzd0TDhteWhGLy82dGNaaldyVzhqWEFzYmx6QzYweVZsWldjYzZ4dWJuSllKQWR2R1VKSlBtQlFsUHdBZWhLdlU3Ynd2ZmFlMmdIOGgyMDVXdmJJV1pISVBwZU9VeGhtc1N4aEV3UFdGdGR4eTdaNER2cUhLdXZMSWNIQkJ1TTlNV0Y0VzdsQmEvQWxIVlEvVnhZdi9MU3RZc0kxQklTdkNSQmU0VTJUWHltSlJRd2FJcFloR0lHZnJwL3pYNzVtV1E5ajVlUW5HYmJ6MHdmRm14aldkQis1MUFkVVR5MFNxU0VHR2h4bm1FeUlNMDB4bFpNWEVGdGFnWkhCbHphdTh5N1Y5N25tcjFCalExeHNhcVJiYU83VmtSRUpMSVJFUkdmRkFmZlRWdlNZYjFESzRkMU5kZEhsL2lySC80RlJ6WTJlT1haWDJZeUtzRkN0cHloU1NuckNkNHJoc3NEdkcwU21QeDBmYlBidlhmWGdzOEdWTS9LMzRQTWxYV2RJMmloMmxUN1NWQSttYXArRGYxcjY1VjVjYVErYTd4SlBTS0NieVZnRFY1YkpwdkJOVUVjd2U0TWhZZ1BWY0VVSEJtc0JZSnNmVGR0aVN5QXBDcVU4VFdoMGxocmlLcDlDRGhvTS9DRlFHd2JTYlhaM3pDMGJsc0ZYOXFqMEZPY0NTcHpPeitkVThIK2tJTDU5NGNCM2pxOGRXZ0VwUUN4Vkw3Q3FncVRPV3FwT0hQOUE5N2VmcGNKNHk2Y3dGdlFDZGhJWkNNaUlwR05pSWk0Vi9TSjVPSTdhbDFCa21wTTVhbGNqU2JCNGJodzZ5eC8vdTEveWZIMUoxaEpObGhiWGlYUkNWVlJVZFdHUkdXczVDdVVybnhnSEFybUVWVEZnREM4dm45SGcwTkRlNXhkNElsTjVhZXdYSmd2T0Q4MEJMWTEzUElLblFhRjFMcHB5RUNydkNLZTlhV05tZEtwODhQZms2MWlwajhoYmxWQkc3L3FQTlo1c0I3dlBMZ3dqeUswQndzMTFiaFMrQzZXVGZscGZDalNLc2t0d2ZXMFI2Yi92cnNPZXZIWDdYQit2OC96N3ovTHFHdkxZTEJFS21EcWluRTF4aXFMWHdaWmduZk92ODI1MitlWU5HbGRPdFY0R3g0R3JMbmZ2WStJK0d3ZytzaEdSRVRjTXdUSDFBMmZXY05NQ2NVU1JHZDRHOXF6UEVNbkNtc0xkc2U3YkY3ZjVmRW5UbkRpeEFsMmRyZloyZGxsZFhXVlFUN2cxcTNiNUZud1YrM0trRFpWcGJ4NFFEWEs0TDJab2Q1dkgxbTYrTjYyRjczaXZESXQxeXU0Um9sMHpkRDZORzVVUEhnSmxscXVXYVpiZlp2cDc0S25MSTBucjlhS1JLVWtpUTRLcTNWNDU2ZFZ3WXpGR291emp1RmdTS0tUVUdCQjZlQkQyLy9uZlBDdUVCWGFsYUNVb0ZXYnFEVU5FbTM5WDMxVGl0aUpiZmF6VGQ3cnY4S1JVSzFuYkhPRWxBL0ZNYlJyUFlhYmZWMFFxL3BSenN0QlovNmc4emIvZVg3NWozWCtSV0d0WjVBUFVTSVV4UjVlR2RKbHhVUUtMdTlkNWJWelAyU1RiY2JVb1Rpdzh1RGNQcVUrSXVKaFJsUmtJeUlpUGgwSWdaeEpWeGNWbE1MV3JybVRDODRicXFwb1JyY3RQNzM0SnVzL09rNmFKenl5OWhncjYwdWdoY3BVNkZSM1NWMGR2Q0pFVUU3akl3OC9wQ2xQS2d0S3Jyb21zOTRFSlJhNlJDY1FuSEtJVjFpWlpxeDdmSmZWM3lZakNhcHpBUkFScENHYXBxNjdlTmUyM0crYk9BWmdLOXNwdGZNcXB6U2tXVlJZUHhKQ0ZKeHoxRFlzbDZva2tHNWF4VGNrYTRWOW5sVmt1NkNCbWUyRWVOcVFSTlVvMEQzeDM4MFppZTBqdEhKdkR6bS9DSWlIVEdlNDJsR2JBaTh3V003d0E4djFHMWQ0NDl5YmJMSEpCQWZhaHlwcXJ2VUtidFgzR0ZzUUVSR0piRVJFeEtlRFZtSDBVMHNzVVNuZWxPQ0ZaSkJRbFpQTzJTRFJZR3JEOTMvNk40d25FNzc1TzkvazFGT25tV3dYMk1KeVpQMG9WZEhXUDUzRmcwUmlBL2x2aHRMbnFsV0ZVTlJHaWZXaGdJSHYweGNGWFdwVXp4V2dXM3Rid3RkTnlhaHYzZ3ZnakczaU05VU02WnVHR0V3SnNnZ2Q0VlVxbk4vU1ZPQmRjRm5BSXUxMm1uOVcrZjNyeEFaeTJvWUl0TzI5YU9IZVFsMmNiWi9JU3VQcTRKVHR6WHI0UWd1U0pLVXNTN3d6NU1NVVI4SGw2eGM1YytGOXJuRVYweVIzV2ZIUUpuajVVRGhESzAzbHFraG1JeDU2UkNJYkVSSHhLYU5Yazh1WUVCR1E2aTR6UldrWTVDbmowWVJjRHlqc0RtK2MvUUZISDExak1NellHQjRsc1pwSk1TTDFXVk95bGpBMExoNTh3blFJdXIrOUJVUm80ZUJ4UDBITWZhSktZV0ZvLzk2V0RmQU5pVzJEQ3ZwaEdnNXhibWJXZHBzdFdoL1VMbnRmWEVNSTFZemxrMUpOcWQrVzZMWUtxL0loM3JXSmFXM0pidXRKbW1WWjk3bjl6am1ITVNGQVUrdVFZaGFLVllCWElZWTJhUWJUblpzTDVKUlFZYXdsN3EzYUx1M3VONU5Pck8ycDhZdlMrc1N6Yjl4K1ByUmcvdHoySDRLVW4vV1NuVysvR3hhZittbW5uRFN4dkFLK0g4UGN1allvcUNuUkE0OWJFcTd0YnZHVFMrL3h2ai9QR0V1Rnc3YWhGMW1LaU1KUERDRkJMeExZaUFpSVBySVJFUkdmS3VicFJyL1k3TnlOdHd0dlZlQlNFZ2I4eHN1L3pkLzdyYi9QaWZXVDdOd1lzVFk0aWkxZFVLQzB4aGpEcEN4SlVzWFN5bExqTTl2NnkvcHVDSHNlblg4cDRIdk1SVFZEOTZwSCttWVV6Umx4TUZDUnRuMmVSc3kzaDVuYXhLdkY2MjlKOE9KMk4zTTBmYy92dHUrZHVwaUl5OHcrOWYxTk83OWJZWGE2b0g5cWJ2OW41bXQ5YnB1VnRNcGd2My85OWR6cCtNNzNyNy9Oc0x3czdIOGY4KzN6KzlDdDE4MzFuOFh0YmIvNjdmMzlBRkNkNVlKclBHODlybEdjbllEV0doQ2NCV01jMW5xVWFKSWtRN1JuWW5keFdVMmRXRzVNYnZHVGMyL3lYbkdHTVNVcVR4aWJuUmtsdHJuVUNhWjBxbkV4aUloNHVCR1R2U0lpSWo1RitMbFhYMjJjZ3lLTUNTVWVYQmcyMzl2ZXBaeVVyQXhXT1BIWUNjYTdJMEpzYlVoR0VoRUdlWTUxbnRIZUhtbWlBeHRxNHpYN1crckpkZEpJZnRMTW9acDNiWW5RZGtqL295WUo3ZHZXQWZNdnlvR2JYY0ExL1pvOWJvb0ZxcUtuVVZVRHNaTm1LZW1lQ0tZdjFkdnVvdlYwL2U5bEk5MzcvcmVLT1VFOTk5TXRkNmxoemZkdC82WDNmZGYvZHJuZTh1MzcrYXZxb1BNMTM4OTVkYlZQY0JlZXYvbjU3N0QvWWY3cGswalhiVDg5STJtV1VaWVZwclprV2M1d3VBUWkxTVpRMkFJM3FIQkR3ODNKYmQ2KzlETStIRjlrTDVROG9HSUN5czV1MU5HdlpkZlg3eU1pSGxyRTBJS0lpSWo3ZzVhVldKb0VNY2QydWMxZnZmN3YwUzRsejRZOGZ1UkpKanNsM3NESzBqcUowaFJGaVhXR3dXQUErR25oZ0tZS2xQUVV6WFlJVjRCK3ByZVRPQ3diOGNuZ0pGVElEWXEyYXBMeDNNeURnaGlQR0VnUVVnRnhGbWNyOEFhVk9lck1jM08weVFkWHp2TGg3b2VNbVFBRzZXZTF6YlA0NlNSR3gwWkVFQlhaaUlpSSs0VldFdk9BQ0tuT1F5SVNudTFiVzl5NmZZUEhuM2lNTE04WkxBK3d0cVlvQ2tRZ1N6UFNOTVViMStoK3JZYXBhTFBjUTV5b2RObjFIN1ZMSCtmekoxZGsvY0wyVDhzKzZxN2Z5NTNiZjY3MlUzZjQvcVBpYnV2OXRQcS82TE1YTUVwd0F0TThPZDJWMzFWZVVaZUdQRTFJazVTcUxwa1VJNnl2U1hPTldoS3VsamQ0NS9LN3ZMOTFoakZGc05qQ1lMeVpyWDdSSTdMVDVMaW94a1pFUUNTeUVSRVI5d3N6ckVDaGt3UXRHdWNjaFI5emRlc3EyMXU3YkJ4YjUvang0MHlLTVVWUnNMcThRcHBtYkcxdWtTVTU0bld3SS9KcTMzQzE4bzFMclBRMXJNYUhWdHBRZzhWZCtpaWZJNUg5YVBNL2lFVFdDZFRLNDFRVDRPSERBNVU0YWZ4dUJWTWJodmtBVVk1SlZlQzBZYmlTNGhMRDllSUdyMTk2aTdQYkY5aGhENHZCNG5FaHhRdnBxYnN6NFNCZFArYXF3RVZFUEtTSW9RVVJFUkgzQng1QW9TVEJpNk91aXVhekJqVFdXMzU4OWpWS1YxQlVFNzd3M0JkWld6dEtzVnRnUnlQU1BHdENDdHJNOSthMjNtVFFLeitiR1c5Ym15cnBOczZEVWVZMjRyTUMxY1l2Ky9BK1QxSXNoc3BXK01Rd1dFMlIzSFB0eGhWK2N1RWQzaXAvUm9YZ3NSaHFQSVkwVFJCbnFkcncyQVZjdFN0RC9BdmR1NGlJenlZaWtZMklpTGhQVUkyU1NpOTkzK0F3T0tWSTlZQzZIdlBtdVI4eEd1K2lGSHorMlM5Uk9ZY0RIbGxacHhxNVhtbFdHcnNtMjVIYjFsNHJJdUxuQWUxRHZUTGQ1QnUyMC9EdzVOQ1pabUltVkZMaWwyQlh4bHkvY1pYM0xwemgvZkljWTBvcVBFcUR0UWF3elFPWVEvZTJzeWdtTnBMWWlJaUFHRm9RRVJGeFh5QUlDUWswNXZrNkZTUUpSVXdSai9NMVhoek9lM2JHTzF5NmVKbE01NXg2NWhScmErdmN1clZKbW1SNFVkMDZac3ZOOXAwSzJoQ0RrT3ZkVnJhVnVSSzNNYlRnNDMxK21FTUxrSEJWS1Nja1BvUVRxT0RwaFFCV2VWemlHYmt4SmpmWW9lUFM3bVYrZU9aMXpwcno3REhCWkFwRGdhTUdIZXpnalBYZ0lWUGQ0RUkzWmpBTks3L2JGUkFSOGZBZ0V0bUlpSWo3Z2tBd2c4K214K084Nll6MXV4Y2VsU2ljZFV6S0VaZk9YY0lESzJ2THJLMnVNUjVQVUZxVHBncHJheWJsR0swVVdabzBwdjJOdlJZZTE4Ykg0cnJidjNTZVNlenpTVzBXbkw1dGZXajczcVBjdWYxdVJNNzNNdE5uZkZEM3o3alFKN1d2TnMvNHNDNG9LUnUrbisyZjY1V2Y3Uy8zVVQvUDcvLzgrcnZ1emZXLys5ck5yVzkrZS9QcjU0RDE3OXYvYmdjL1VmLzM5V2Z1L1dSdmovV2xaUVpKU2pVdXFLdUNQTXRKQm9yU2wyelZ1K1JIQmhTRG1uZXV2c2ZmZnZBNmwvd1Z4dFJNTU5RVWpjVld1KzRwY2UzL0tUU0hNT3pTeko1SEloc1JFWWxzUkVURWZVRkl5UW9EcUVHRmRiUHlVd052SFhtV2thcU1zUmx6L3Z4NUp1TUpLK3RySEQxeUZHTXJ0dmEyeUFZSng0OGZweXdLdHJlMldGbGV3clhWanhyMXpJdHZ0dFY4L1hOV1pPOU9aRCtoSW52QWluOGhpdVNDTHo3dS9uOVNIblpYUmRZdi92NmdMKzZtRVBmYnhjUEcwaktUM1QxR3U3dGtxV2E0TktTbVlyZmNaYytOU0RZeWJ0YTNlZi9HQjd4My9ReFg3SFhHMUJRWW5QYWd6UDQrTk00RU1yZTkyYnd2T1RpQU5pTGlJVU1rc2hFUkVmY0o3WkIvYXlZL0paMGROT0RBR2tPU3BCaHJzUml1M0xqTTlzNHVqNTk0bkxJdU9IcDhneVJWWEx0MmhVR2U4ZWhqeDluZTNncVZsWHF5WUVka20yM0xIR3VPUlBiamZYNllpYXhtV3E4Z1RWSjBubUNvR0preEpyT285WVNiOVNidjMvaUF0eTY5eldWN25Ra1ZOUWEwQzRWQS9INnYySmJBenFjZzlvc3l6MVMyaUloNHlCR0piRVJFeEgxQ1A0YkF6YktPNWo2ZHBVM0ZVQmVTWVFRaDBSbVZMN20rZFkxelp6L2dtVk1uV1ZyTjJkbmRZbVZsQ2EyRW5lMWRscGVHb1JwWVIxeDlMN1l3K012K3ZPMjNJcEU5WUxtRE92QXhjVCtKckFMR3Uzc3NyNnlRTEtlTTZqM0d2a0N0YVV6dXVHVTNlZlBjVzV5NStRRzMyS1RDWU1SQjJqTFdFRTRBekpqQ3pvY1Q5Q21yK3lpZGpJaDR5QkNKYkVSRXhIM0M3R0JwbC9qVTNPTUZjRFZraVNKTFU0d3hPSVFrMDZDRnlwYnNsanY4K0swZm9iWHc5S21uc01iZ25XVmxlWVhkN1IxMG9qdGlNQ1VFWFlUc1BSUEkrVDI0Mi95UnlCNkFRMHhrQVpST3FjV3hWMDhZVVNKcmdza3RaMjUveU4rKzk3ZWNIWjFqaDEwcWFyd0N5VFRPbW1abENxd054NkNwTmRzbnNPMzd0Z3p0VkkyOVN5Y2pJaDR5UkNJYkVSRnhmeUQwV0t2dmJ1U3FlU1hOTE41NnZMVTRBY1JoYklYRmdCYWNxd0hIbVF2dmN1bjhSVTQ4Y1lJakcwY29KeVhycTJ2WXl2V0liQ0N1M2d1aEZOUCtwS3BJWkQvZTU0ZWF5QXFvUEtmME5TWjFxRlhOcnQzajdZcy80NDF6cjNQRlhxV2dwS1lPWld4VG9iYW1HV0lRUkduRW1oQ2kwTHhta3MrWUswSGJsMm9qSWlJNlJDSWJFUkZ4ZnlCekx4OStrUG8zOXFRSkRQRFFrSUYyZmcvS3NyNnh3WGl5QjhEVzNpWVh6NXdua1lUSEhubVVzakFrS2lINDFUWWI4VTBwMjZhbXFNd3hxVWhrUDk3bmg1bklPb0VTaDB1Rk9yVmMzNzNCVytkL3lwczMzMlNMYlF3MUZSVW9qOU9lMnRRZGlWV2tpSFdrZVBSTXdBdjRKdFhMOS84NFBrYVo1WWlJaHcyUnlFWkVSTndmekFjRE1pV3cvYThWQ3AxcUhCN25lc3NsUXJrM29RMGFTSlZtdDlyanZYTS9ZL1AyRnMrY09rbVNweUFlTDYwemdpZVVzZzJCQmNxclVGcTBmWFdsYmhVeTA4bmdxakNsMWEwSmt2VHB4blRYL056bjdsMnJ1elhUT2FzdHhXSXk5Zk1pc2pOajJIZVpmeEdYbXRuM1h2djhmdnc4aUt3Q1F1R0w1aXo0NlJRRTVmZXZ2TjhQTDhIcnRhdkYwVXUwMGw2RmNoMnU1dy9iZE5aSmVGV0paVGNkTXhwTXVMQjFrZSsvOXdQT2xoOHdZWUxCVUdORHlWa0YxazNEYVBJOFI2UHd6aEllcS9vQkwyb21KbmJhNlVoa0l5SU93dlN2TXlJaUl1SVhqVGtpMjM3c1oyeTcvaXl6MHRYc3FueFlVcUhSSkFnNWYvaU5mOERKeDU3aGlhTlBrWmdCWmdLcHpjaDBEazd3eHVLOUlDSm9yVkZLWWEzRldvdjNGcVhEbHAwWVBBWndlQ3pnUXZVbW00QVBCUkx2NUFPck9uOVNoZmUyMmNNbUQ3MXhhMWprWXp2dnBicnY4TG45OC9hM1A1TS81MzJ2SDRHTTlUSGZIbWFhdnBjRlBxN3p5L2YzNDA3dC9mV3JPN1hmYWZubTRRTlVyOSt1YTVmZSsvNzN3YXZZWXdWcTdVQkRna1liUVJtUHNrSmlRNzA0VTlXb1JHT2NvL0FWVG52U1FZNVBoTzFrbS9mTVdYNTY1UzNPWHoxUFRZMUNjQmhxVE9QRzRRKzR3YllQU3E2N0VycjluSjgxM3FVakl1NklxTWhHUkVSODVqQ2ZyYjF3Qm5wcVlDY05lcnc0TEE2SDQ1MnpiK09kNStqR1VVUUZLVzJRNXlTaW1Zd25MQStYMFRwQlJIQVdxcXJHR29kU1FwcG1lQmRrT2dHOHVLQ2dlWXQwRlFsMDB5NTRjUXVuUUtNSTA5aC9oYW5ReHUvNmV4YmREaHB4L2lpS3JMQmYwVjJvMkxMZkNxcS8vYjRpKzNIM1EzMGlnamJWdzZYM1hSdjc3SnU0NjNBZTVqb05lT1VvVFIzVVVpdUlBK1VVaVFmeFlaMjFNYVNEbEdRNXhXZENRY0dlSGJGVDczTEQzdUE3NzMrSEQ3WS9vUFFGQm9OUFBMVTNPRHlpMUIwZVJQYW5Ia1pFUk53YjRyTmVSRVRFb2NXQlErd2VoSlFsdllxeGpvd2h2L1BxNy9FYlgvMDZHOE9qMklsSGJOQnV2UmU4RTBSVXA1TjVMempuMEIxVHRIZ3M0bDJueklMQ094VmlkNzNDWVdlbVhseWpHRTRWMS82ME03NXZPZkdpeWxjL1IwVVdabFhaT3lteTZvRCt6YS8vVG4xZTFLNE82UDlIWFo1R2tRMmMxYzdzaHhPSE9JOFRQOWQvMjI2ZDJqVnF2Rk1vRWJScjF1TThEa3VTcDR5clBjYXVRQWFDR2lwdWpqYjUyWm0zZVhQME5sdnNVRkFDa0NSQm1ROFY1VUFwTlMzSUVSRVI4WE5EVkdRaklpSU9MV2FVeHdXQm1NNWJNaklzamd2WHpuUDJaMmZ3V0ZiWFYwaFNSWm9sR0F5bExiRytScVdhTk5kNGI2bktFdFhhZDdXU3FvQzRhVXh0Ris3UU1ycVpxWisyQ1ZnSkJOT0tEUnFpZ1BMN0xjQSsxdjUvQWtVV1Byb2llN2VrcW52Rko4NWhFajhOemVoaW1GMnpYOU9CL1ZiL2xKbEJmR0dvbHRFdUFSZUlyc1BoeEZNcFE2bHI5dHdJdCtLeFM0WnJ4VFhlT1BjVGZ2amhhNXl2endjQ0syQ1ZRNXJrUVd0dHQzYXRkU1N5RVJHL0FFUkZOaUlpNHRCaUpubG53UmVKU3ZGT29VblpTRFlvVElXZ09iVjJpdC85N1cvdzJMRW5HR1RMYUozaWFvY3pqb1FNaGNZWlNQdzBJYXlOL1pSZTNLV1JPZ3hoMHhBaDZTdUdRYlZ0RlZsSFdMNVZiQldRV05XVXlZMks3RDBwc3VFYlFQQytWYjU3TWNoeng3Sy9mK0kwbWNseFRsRzdHdGZFeTlyTVVtdERyU3FxdEdTcjNPTEs1a1hPWEQ3RHBja0ZIQWFMSmM4RzdGUmpMSXVScGlsMVhSL1FHaEVSOFdraEtySVJFUkdIRnBxNXAvRzVJRkRuSFluV2VHOG9YWW5Ec3FLWEdCVTcvT0RkdjJIbjlnN0cxNnhzTEROWXlrQjVQQTRVYUZFNDc2WVZ3SnFzK0NDd0NvaDBUZ2ppdy92UTNob255VFJXRXpVbFZYN3FoNkRhVFB0N3hNT3V5RTVqZElXcEEwUTRIOUk0VkxST0ZXM3NiQXZsRldJYkFweUE1T0FIUXAwYnhtckNyaHB6WWZzaXIzLzRPaisrOG1OdW1kczRhbVFnbEZqR3BwNVJnZHFFUVJFSkR6VlJqWTJJK0lVZ0tySVJFUkdIRnJwUjN0cnFSL01NYmpCSUtTWTE0bUdZRGhFRHhqc0VSVWFPUmZINDhoTzhjUHBGbm5qc0JNZldqM0YwL1JpNVdzSlhrUGdFN1JMRWE1VFJJYVRBaFpoWXhPRXdPREgwM1FqY3ZFWW5IcncwdmV3cGdvQjJFbU5rNzNGNThmMWtzZmI0RXg1RVF1QXkzdEVkZno5Ly9EM05Bd2c0RFNhMWpDaTVWZDdtMHU0MWJoWTNlZlBLVDZnb0VUdytOMVNtbkhsb2trYjFWMDFpbDdVVzU5eGR6MXRFUk1TbmgwaGtJeUlpRGkxMGswL2ZrVVRvcGRFSHFGRFJGbE0xUHJXaTBLSkNnaGM1d2JKTGtUUGdsUmRlNGFzdi94S1BIejBCUnBISkFHMFR0RXZCS2JSTm9QRVdGY0IxaVYvelJHdldWS2tmY3RCT2xaK04yWXhFOXVNVFdlMWFDeTY2QjRoK2FJZnIzZDVzRXluYnRZdkRxaG9ybGtvc0V3cHVqRGY1OE1ZRjNydHhoaTEyY0xnbUZyWUdiV1pPcTJqd1ZWQ0RXOXUyRmxwcmtpU2hMTXVGK3hJUkVmSHBJUkxaaUlpSVE0dTdFdG4rTDF6dmw2NXpEQ0JCb1p0WGdnQkRsdm5jMDUvbjg4OS9nWmRmZkJWZkNjZmpBVFlBQUNBQVNVUkJWRlFhNVRRcEdab0ViOEE3aDBid05teGJhNDNXR2dCalhNaGV0MU4xcm0wWEVheDFXR3NnYWJ4a3VVY2llQUNSN1BqcEhGSDh1RVMySmFyM1NtUVh2ZTkvcHo4R0VlNHJuU0tDbGdSZldOSkdFWFhpT2c5ZzQ0SVBjSm9uR0dPb25VRzBJa21TeGszQVVGS2cxdUg2M2pVdVhydkV1V3NYdVZ6ZFlFUkJpV2tpWVIySUFYd3o3Y0VUNzU0UkVaOEJSQ0liRVJGeGFDR29YbkRCZ3ZDQ3VZSUxIVnFDNWdWQmt3UkxmQ3l1S2FlUThraDJqRXlHdlBUNVYvbnFLNy9NbzBjZXB4elZqSFluSkNwbGJiaUtOQWI2MWxycXVzWlVGaEVoVFZQeUpDZE5VMndkMmtLUmhjYTV3SGlzTnlSNXNJbUNTR1FYdFRzWEhBSGFWN2QvSWlGaHJsWmd3ME9EOFFZdmtLUXArU0JGcFlxZHZSMGtFYnhBWlVyS3NzUml5YklNdFF4LzhaTnZzVzIzMlI3dnNPUDNHRk5UdDlwdXByQjExWVFtRU53UlBJRHJWR0JQaklPTmlMamZpRVEySWlMaTBFSTZxLzREaU95ZDBDaHE3VHFHNlJCbkhMNkpvZFZvVmxtanhyUEVDcDk3K2tWZWVla3JQUDNVMHdpYVlyZkU3SllNOUpCaFBpRExNaEtWNHF6SEdZTXpucnFvOFU3QUJWL1JSS1Vrb2hEUldLbXhVa1VpZTRmMmc0aXM5eDZjVUkrcjhOQ1E1K2hVNFFUS3VtQlVUcWhNU1RiTU1MNkdGUEpoaGdOdTNyck96OTU5bC9lS2Q5aGhpd2tqTEsxVE1KaDJ4eElGempiWGllb3VMaUdNQkFTekxodkpiRVRFZlVZa3NoRVJFWWNXQytvZ0hOdzQvNTF2ZmdDYmFhSVRFa213SnZpUkp1akdoMEF6WkxtSndOUTh2dm9Fcjd6eUZWNDYvUVUyOHFPWVNWQmlFMG5Jc2d6eFFsM1VsSk9LdGVFYUNvMmdHeHN2d1R1SHJ6MjFyeUd4a2NqZW9iMTFBT2pJYTlQZWhoa3NENWVvVEUxZDE5VE80SlZIcFFySkJUVHNsU01rOVV5cWdzczNMbkgyL0ZtdW1XdFlMRFVWSS9hb3FFTTFPTytiQ214dERHM2JNZWdLTHpSakFFSUNUZkJCS0pBUkVSRnh2eENKYkVSRXhBT0RSZHpWYy9BUFhaSWtXT3Z4M25iTHFtYitSQ1VvcjdCZDhsWkNSa2FlRG5GVzRaM2x5ODk5bGVkT251TFpaNTVqYWJETVpHOUNYZGFzRHRaWVg5MWdiM092c1huU3diZmZCVjlhTFFrb2ozTW1FdGs3dENkSmlISHR3ako2eXF3bCtMN1d2c1Q2VU1nQURWWVpqRExVM3JCWDd2TEJwYlA4N1BJN2pCbmpzS2dteGE2a29xRENZcnVpQ3UyQmF6YUJiOFZXcnpvSzIxNExZQnBGTmhMWmlJajdpVWhrSXlJaUhoak1FbG0xY0o3NUh6d1JRYWxteUhyTys3TmRneEtGb0hGZUdwVjI2blFnQ0d0Nm5SZE92OGlyTDczS2s4ZWZ4RlNXdmMwUkc4c2JZQlJpQkc4OFlqV3BTc2lhK05taUdFLzdGWW5zL3YxcjNBQmFSNEEyV1F1Z3BxYlVGUzV4YUsycHBXSnZNdUxxclN0Y3VIYUI2MXZYdWNrTkxJWlVjbXBxUm40UDN3UUY4UCt6OXlheGxpWG5uZDh2aG5QdThNYWN4eHF5cWxnVGk4Vlpva1JTSkVWS2xOUzI3SVhoM25uaGJhTU5HSVlYQnJ5d2pZYVhobGRlMllaaEwreE5vdzBiYU1HR21wSmFJeldRSXFreUIzRW9WbFl4cXlxbjkvSzlPNXh6SXVMekl1S2NlKzU5OTcyc3lpS1pURmI4RXpmajNYdm1PREg4NHh1MXdZVWtqaWQwZHJDS1NHU1ZockRFVVRVeGNyR21EVjhnTkpCTkN6SXlIaW95a2MzSXlIaDBzZUxNdFpDcXRtUmpnWFYwUTlJV3BTUUcwRzhsY1pKTURtS2MvU01qWldFSERNc1JzMG5GV0kwWkRBYk01bk1FMkdUTXk4OTlsQmVlZm9GVFcyY1k2QUVqTzQ0bUJvblFCaWNvMFZobFRvd2p1M1N2NzBNaUd5TTh4TmlzV211TU1ZZ0lkVjB6ODNQMEtjM3Q2VzF1M25xTHQrL2M1TzdrTHZmOFBRN1lwNmJHRTZpcGNBZ2VoeTVBRFJTdUVhS3R5QUJDSzZNVlZJaVdzcXRMb0U0dzI3V3J0a0VFTXBITnlIaTR5RVEySXlQajBjVXhSTGFWbXJWaFA1ZWp1aTVnakNXSUk3U2lONVhJNjdwcmFiQmE0UVRpZjFEb0ljSEhSQWl0RTVDaFNIYXhpbDE5aWd0bkwzRHQ2bE5jdlh5VjAxdG5zS2FNN0xpR0FTTk1pQ0c3T2dJWFdsT0dscWpxM3UrcTI2L2R0bzRJcTdSZFJKYTJMNGhxaXZXZ1FGUklLWGpqYy9SVHZPcVUrR0g5OXVXa0JDSkhVL1JLc2p0ZHZyLzF4Qy91RzlKNWtybUZEb1FRTFZHMTFvZ0sxSFhOWkRMaG9ON25tNis5d3IxcW56MzJjRFRKWVN1cS9EME9RZkFFR2hVakduUWN0RzBvalFVeGtJaXNSbEJya3M1MkNUZmFocUI2Vy9JTW1wSHhVSkdKYkVaR3hpOHBkRGZBblR6UXZVT0oydHFUNmVXMHB5M0JTNzhXRkhoOFo0cHdldXNNVjY1YzRjcVZLNXpmT3MvbHpjY1pxakdGTm9RZ3VMb2hPS0hRQllVcFVTbmlnVGlpQkRHSlVBMHg4b0VPS1F4VWo2UXFpTWNSTTFlcDl2Y2d5YmxOa0tBUUZjQktSMlNYS1g4c25RdHJmeGRSYUluUFIxZzRZM21KdHF3K1VVcGpMVUcxaEZZNnN0cmVzOWV4L2tVclZOTGFWMkhPcko0eGE2WnNuZHJnc0Rwazc5NWQzcjU3azl0M2IzRm4vdzZIY3NpY0dWVkhXQ1BhQ0FJaEdSREV2OFB4MFN6Q1VkbnJjWGJXUjlyQzJnMFpHUmsvYjJRaW01R1JrZkV6Z3JXV0VBSWhIQ1hMQlNWbnVjREZVNWQ0NHVvVFhMcDBpWjJOWFlxaXdFcUJ3U0JlTU1veTBFT3NzaWlKcW5aZkI4UkpKSkwwQ0d3cm1VNnBiN1VzSktkUllteTY2d2NWYUpxcUk1YnJVQlRGVXRTQWZ2UUFna0k1alpab3k0b0JaWFEwMFVpazlIQTZJVXArUTVTdXBwdFJLaExwT2dndU5JVGdhSEE0NVhDaFllNW5WS0hpcTEvL0N4cXBtZnNaYzJybXpGS1UxeWhwZFVjVEFtZGtaTHpQa0lsc1JrWkd4czhZclgwbnhOaW8zbnNNbGcwMk1SUkphaWlNR0xFOTJPYmM3bmwydG5aNTlwbG5LWFRCb0JneXNBT01NVkhxRzZLSlFha0dhTkVkd1d5bHI0U2s4azgyc2lycS9CRlBqNHdHckxVbjN2ZDhQdStpQkt5V0FJVXVZdVNGRUFqaXFKMGppTWVIZ0JmSDlxbnRTRGxGWXE2c0VBZ1NiVjREbnNQcG5NTnF3dDdlSFc3ZnZjV3QvVHZzY1p1YXBndHQ1WlBVMWFjNkFrRnBCVnFvbk04VFdFYkcreHlaeUdaa1pHVDhqTkI2Mk1OUkp5NGxtcElCclo2Nk5WSlFhQ3lXQVVNcXFtU1VvTm5SdTV6WlBjT3BVNmZZMmRsaE5CaHpkdWNzUm1tMHRoaGpLSFJNZzJ1MHhtQ3A2eHJkblR1YUEwUWlHbTFyblhOSmlydmV0RUJydTJRYks2S1d2cnZnMDM0YTlFSXlpMVpBNE82OXU5Uk54ZUYwd3Q2OXUrenQ3YkYzc01la21sQlRNNlhxSE80azBmbUFvQWdvVkxKNzlWM1p1bGRKVnUxblpHUWtaQ0tia1pHUjhUTkNVUlNkMS8wNkdLSkV0TlJsSngwTlRjQ0pBeFNiZzgyWUljdzNPTnlTUmE1T3FYUXRob0tTUVRGZ05CZ3dMR05vcjBJWFhMbHlCWTNDR0VOcEI1VEdZcTNGbUFLak5KdWpyZTVzNjRoczAzaENjSGd2TkUxRjAzaWNxL0UreHNDZFZoTnFWekdySzZiVFF3NFBENW5NRDVuN2lvYWFLb1duaWdRMEpFcStzQ0VPM2NjVGtwdVc5RWl0NEJiRXRSL290MFcwTXNqSXlIZ2ZJeFBaakl5TWpKOHhZcXhhM1gzYXdQNWFhNXFtb2E3cjVmM2JxQVhIeE1LTit5aE1UOTRLWUxHSkxLcE9vaG4zWFQ0dnRQYXlYYVJjMWhIWmdnR1JnclpXcVhUYld5dlZSWXBXaFNiRzJXMWQzaHgxT2paR0U0aVEzdi85MEZaMDF5S0ZRd3V0YzUzdWZWcFNLOENjUElObFpMelBrWWxzUmtaR3hzOElyVjFzbTJxMURlemZvZWRKYjR6dVRCSGFOS3lyeDdlT1kyMEVxOUlVcUtDU3pXbFlJcW9BUXoySUpnM1N5amdYaUhTM2RmNWFEY2tReXdYbGpOOTFqSmVBUWlOQXhaU1dpcmI3THVJR3RGalFYNVZJYUV2a3ZROHhtbFdiaWpiMDZtU2xmbzc4Sm1TSmJFWkdSaWF5R1JrWkdUOHY5S1d4U2ltYXBsbm1qbjIwa3NqUSs5N2JwalJJdzlJSXJsRkxUbG5TUzRqUVd1TEd2K00zNmNqcWVpSWJpZkZSUXJ2WXZwREhzb2JDYWswdmppekxKTFM5YlB0WnRiNHdLL3Uxa041bk9jQnJSa2JHK3hDWnlHWmtaR1E4WkVRSloxajljYmxjaDlYUmUrWDdjb3pieGYvUWNzQnc4dm52aDNXenh6cENmdHcrRHpyN3lFcVprWkh4dnNYSnNWY3lNakl5TW41bTZOdkNyZ29rajh1QWRTenVRK3JDaXRtQkVCWTJwdytDUHBtODN6bU9Dbk9Qbm1mdGNjZmJDRWZrOUxBWkdlOTNaQ0tia1pHUjhSRFFadnVLZjZzampsMGRSV3RUd0I1RDJvN25rS3NrY0IwcGZBOFMyVjUyczJVeWV0UnA3RVFKYWo4Tjd3cFdiWDU3Vit3NWlXVXltNUh4ZmtZbXNoa1pHUm0vZ05CTFpnQkhIYm5hTGNjZHZmcDlWU2phUVZndk1iMWZlY0tkTDVXdFZQVUVNdHNQS25iU1UvUnZZbzB4UmtaR3h2c1EyVVkySXlNajR5RmgyYlRnL3JSc1dXb2J1bVB1UDRpdms4NEdPQ0U5N1R2Q01SYytLdVM5bjRuQU84V3lwRGRUMll5TWpFeGtNekl5TW41QnNTcUZYWlhTUWxoa3VZTGpKYWpkZG4xazFIOXd5NEtUU2VUNjh4NG5WZTRiQzZ4ZTV3R0V3aGtaR2U4YjVQRWdJeU1qNDJGZ1hWU0MrMFloV0piSUxtVzhhdmMva2NqMmZoZTl4akwzbmFOTktIc3NFejdSaE9EWVhkWWZkSnhEV1o2OU1qTGU5OGcyc2hrWkdSa1BDK3RDVmNtYTdXc0lteHp6Kzd1NjNzOFNEeW9tV1VkY2Y1NzNuWkdSOFVnaFMyUXpNakl5SGhaK0ZsTEdreVN5UjY2amYyYW1CUmtaR1JrL0QyUWltNUdSa1pHUmtaR1I4VWppcCtWS21wR1JrWkdSa1pHUmtmRnpSU2F5R1JrWkdSa1pHUmtaanlReWtjM0l5TWpJeU1qSXlIZ2trWWxzUmtaR1JrWkdSa2JHSTRsTVpETXlNakl5TWpJeU1oNUpaQ0tia1pHUmtaR1JrWkh4U0NJVDJZeU1qSXlNakl5TWpFY1NtY2htWkdSa1pHUmtaR1E4a3NoRU5pTWpJeU1qSXlNajQ1RkVKcklaR1JrWkdSa1pHUm1QSkRLUnpjakl5TWpJeU1qSWVDU1JpV3hHUmtaR1JrWkdSc1lqaVV4a016SXlNakl5TWpJeUhrblloMzBENzNlbzN0L1MvYlc2dmdocmp4RWVCV2hXN3o4ajQ2ZUhkN01XZjQvdFVLMThGMUR2UVJZUSsyODRldDdsSGQ3eDdhdy90TmYvVk5xZ2VGUUdqNHlNakl6N0loUFpod2dGREFkUTE0REU2Y2JZRXVmaUxETWNqYWlxT1NpSFNwT1JralIxQ3dRRm9rNmVrOVFKczUwQ1Fvam5QT2w0a2ZnNUNWcURVZ29KN1FVMVNpbEM2RTNZNlh4YUwyN0srZFVUSDBjTU1obk9XSVVHMVdzdjc0YWNxYkJFUkJVSzZaMUFnS0lvQ0hpOGM3M2pGcGZXR0pSVHFEV1VVcVYvNGNnaVZIV2xWNEtuamsxZXA0djJkbGNheW5KSU5aK0R4UHMwNlhsRkJJVmdlZ2VFZEdQdGFhUzkwZU9lSHpLaHpjakllT1NSMStZUEVRcG9PWjFXZ0xJRUtRbGlrSTQ1ZXNDbE1zUmppQk93cEYvanBLemZmY25KVXAyajk2dlFPaExVOWhPQ1EvRDRqcEMyNXpVWVl3Z2hFS2ZWUUpDalpIUjk0MXMzK2E0Y20xdHVSa2RrNzdPYTZ6YUdSWmthZmxrTWNYV0RJQmh0R0F3R2lBaXplYlYwQm1zc3hoZ1FoZmNlSHp3S2hjV21QcWtJeUpIU3BONXEwQVFFQlRRNE5BcVBKK0J4eXZmNiszcHNiR3dBTUpsTUZyK05oalN6NlpLR0puUkVWaTlYaVZydGU1bklabVJrL0hJZzA0R0hDQVVNUzJnYUVOSEFDRStCVVNPc0thbGNFdFVxajhhaDhDaUowNVpHZDFJWFVZR0ZDdkhkbEdEdVEyV2R1Qk8yZWhRTklLZ2tnWVVvTFdvbFVWb3BJS0NVSUpGMmc0b1NYSzJoU28rWWtmSHVzU0tSaFdQYTBsRUMyMElWR2hXRTRLVW5vZFdVdW1BODJLQ2FWWjNVTmtwc2RmZTlwT0R5N2tXc3RZd0hZd2JqQWFOeWhDNDBoUzRJS29BbkV0WW1NS3RuVk5PS2U1Tjd6Q2R6WnMyTUErNHQrZ29LaGNIamNkUjRBcHVqTWZ1ekF5QWdnQzBOUVFWQzQwSEFDQ3RFZG8wa2RyMzkwa3JkWkdSa1pEeWF5RVQySWFPMEJZMFRZTURGODA5eWNPQngzcUIxUWQwMERNb0NWSlRJYWdKS1FFbVNRZ0ZCQk5FUC9ncjFmZWF4d1dBUXJ4TUMzbnVhcHFGMk5RNEhPQlJ6SXFGdEo4NEZpVzBsc1F1cGNrS2FXSTBCNThrdE1PTTlvRTltVzAzRE1kSkhPS3FDNkxGQWhXSlFqRkZPOEVIUUdBd1dnMkZiN1hCdTl6em5UMS9nNHZsTFhMcHdtZDNkWGFhSDkxQXFhaXBhYllXSWRKK2lLRHJ0QlN6NmtYT09FQUx6Nll5YnQ5L214NisveHB0djMrQ2VPOEJSNGFLc2xqbHpBZzVQUUxRUXhOR3FaYlJSU0NYMG5qNTJwZTRaMTJnMk1wSE55TWo0SlVNbXNnOFZHaWl3ZXNRTHozMk1mL2JQL2pNMnR5NGdEQmlVRzZBdDgrbGhJcktDSXFCYklwc2tzMTc4ZzE5ZUJYQmhqZHB4Z2FxcUVKRnU4cTNybXZsOFRsM1hPRGZubFcvL0hUZHYzZURIUC80UmI3NzFKbzRvWXQwWWpCaU9TdTdkdTR2UUlEaUVLdHJiOXM1LzM4YVhXMmZHaWVoTEhudW1NOGVoMzU1VStoakZRQTlwS29kR1k3QnNzc1h1ZUplUHZQQXhkamQyT2J0MW51M2hOZ1VsaEVoeGxSS0dvMmlLRUVJZ2hORDlEVkV6TVovUDQ2VjY1amd0NmRVb2ZPTXB0SVpDNFhYZzNteWYxOSs4enZkZSt4NnYzM3lkUGJsTFJZV2p3ZVB3K1BoODdWcldyWG1lazU1YlRuWWt6Y2pJeUhqVWtKMjlIaW8waWhJWERGV2wyRDExQldPMjJMdFg0UnFGS0VIOEFGUkp0SG9MS05GRUFXenI5SEV5a1QzWjlpNkFkOUhiUzlUYWNsaHNkZCtEZUlJWC9KYkR1MENRaXFlZmZnNVVnL2VlZS9mMmVQWFZIL0tOYjM2ZHIzM3RiN2k5dDhkaXh0V0FaVEJRR0FNK05EUU4rUHZObzQ5V2lJYU1oNEUrY1gwSEpGYjF2NHZGQkkwbllDa3BLWGp5M0RVKy9QeEgrTURqejlJY2VzWjJ6SWJkb2xRbHltbkVDeUU1Wk00T3BnUWxhRkdJaGtKYnJMVVUyb0pSbk5rK1N4TWN2bmJVdmlFMDBUSldTM1Q3MmpRYitNYmo1dzZsUGFlTFUrdzh0c01ISG4rR21hcjU4WnV2OHAzWHZzTjNybitiR2ROb2VTdFJxcnZRZUxCTVl1OURaayswTk1qSXlNaDR4SkFsc2c4VkJXV3hTOTBVUEg3MU9mN0Z2L2p2YVZ4QlZSazJOMDdqZytDYlJEU1RXWUZtSVpIVlFBanRoUGFBQ0RVbjJkSjZMeWdsUzc4dnZuc2t6QkJ4S0tVd1ZxRzE0SHpOYkhaQVZSL3l2LzV2L3pPM2J0L2dyVnV2NFprRE5kRVVJYkJrVmZCT3ZNNldXbXBmb1pyeHZzY0pKZ050dVFnNHNIQklMQmtCbWhGam5uL21PVDd4b1Uvd3hPVW5DWlZpZXZlUTArT3owS1J1MG9BSmxnS0wxY241UzBjYldIeTBKeGNuTktIcGJHUHhFRlRBWUJBdFVaSnJGVmJaS0pHZDFSZ2lDUmJqOGNaVFUxT3BobHJWcUNFYzFQdTh0ZmMyUDNqaiszei8xUit3SC9ZSUJJYkZpUDFtcjJkN0h0WVRXdWwvZEZwV3h2NGNrdTF0UmtaR3hxTUtBL3hYRC9zbTNyOHcrS0JBbFp3NmZZa3YvZGEvZ3c4bDFtd3dHRzR5T2F6UnBnU2xVZGhrQzJoUVdCUUZZRkdpb3FNVnhkb1NzYlFtRE90S3JReEtHWlFxMXBmRUVpeUlSc1Fnb2hBeGdJRmdrV0NSWUZDVWFEVkFLUXNTNy9GTFgvd3lseTlmUVdFNTNKOHlyeHZhZUVOOXU5b09KeEZhdGU1TG5vWXpXRTlrVjBpc1RvWURCbzNHVWxBeVpvdVBQZllKZnZkei80UlB2dnhyN0pTN1ZIc056R0c3M0VVcVFUVUtMYVlqc0NwQTB6VFJ4S2FxOFkxSGdxQkZvNVhHYW90VzhVcUZMU2hNZ1RXMit4MFAzbmxDNHloVkVkVmlBa0VDSWFrb0NsMHdLRXBDSFFucnVkMXpYTDM0R0JmUFhLS3NDK2FIRFZXWUkwaUtodERHOE9vOThOcStwTG9vQzlGOUxjc3lNakl5SG0xa0l2dFFFZFh0WU5uWk9jZG5mK09MR0QzQ080WDNHcTF0dEt0RHBYaXdiV3pLTkVQSklpN2xZaEk3dm94bUJqbzVva1NuRk5XYUhxVHZFcElEV1VobUNhSzY3ZkVPOU9LN0tMUVVHSVpvU2dpRzRBeWhpZVRZNmlGTjVUbHo2aHdmL2ZBbitNaUhQMHFoQjF4LzlTY0VGSVlCU21uS1FZbnowUTY0S0F6V3FpUUpQcW51TXBITldFWWJpYXVQMFhDQWR4NkR4V0t3Rkpoa1JIQjU0d24rbzkvOWozbjJ5Z2M1UFR5TmJRcE1VMUtHa2tJR2FLOVJYcU5FUmRNQmtnMnM4bUFFYlEzV1dMVFJvQklSbFlBUFBrWTRVSkVxdHYrQ2hPNXZwUlZLSzVDQUtFL1FFcU9QYUlreG0wVUlMbUJFbzRQR3p3UEdHYzV1bnVlSkMwOXlwamhEbU1KZWN3ZUw3UjY4TElmNGtPSVhXQnNEUlMvWDBncVJoZHlITWpJeUhtVmtJdnRRa1R5dWxXVjM5eXlmLy95WFVXcEFDQ3BKTlJkaUZaVW1teFRnaWpZTXUrcFU2L0pBcGU1MHJxdHBmOVRpOStPMm85RWhTb1piaVMyWVJZbUtFNnNYdkJjMnh0dGN2ZklrbHk4OXh1RmV4YTE3dHdrRW5HOFlEVGV3cHFDdWEwSUlqRVlGVFhPUzJVQW1zaGtMcURYQ2ZRUzhFd29LTm90dGlqQUFOSnRzOFNzdmZvb3ZmL2IzMkFxbjJaSnRobXBFS1FPTU4yaHZVRUdqeGFSTUlHbTVHRU9HSUNvZzZXK1VwQkI0aWFMMnk5WFB5bmFWSWtFSDdlTTVrYTQzcTNUVjRFRUhnelNnYXNWQURka3VkemcxMnVYc3FUT01oZ051M0hrVENCU1VOTDRCRWNZYld6VHo2WnFhaW1QSGdzaG0wNXlNakl4SEc5blo2NkdpZGRaSUNRK1VBK1hwN0ZHVjZpVXdTR0dzRkdoSnFrUUY5MDI1dFRaR1FPdjEwWSt2cWVNMStpVXI1ZXIyTHNGQmowVkkvekthYXRaZzdCaU5SWW5ud3JsVG5OcTl5TTdXSmI3MnpiL2d6Nzc2L3pJUDk1ak5IVHRibTh5ck9TTFJmaEdhQjZuVWpQY1JWRzg5SSszNktuMVh5WkJnb0VhNEpxRFFYQ3d1OCtsZitRd3ZQUGRCdHZRdXlnMG8vUkF0SUM2R3QvS1NFaFJvU1ZxTVFGQXQ2VXRTVlpVY0wwUFJ1NlFzbGF0WTNlNTF3S3ZRUlZzUWlhRzBSQVFWRkVxZ3dHQjBRZUVOVmRNZ3pxTTk3SmdkeXQyQ1lzc3dIQTc1K2l0ZjQ2N2NaVUFCREtnT3A4VGhQWVUxV0pKVVovS2FrWkh4eTRNc2tYMm9VR2ttTnB6YVBjZHZmdjYzVVdvUXpRb29FZlRDMFl1QVFsTEVndVNBcFdKSXJpZ1pvdWZzMFN1UnhYZFdTK25sLzNuM3BlN2t3dW1jTFl0VkMwYlJOQzdHb2hYRDVIREtmRjVURm1QT25idkF0V3RQZ2ZLODl0cXJ1QkJ3dFV2SEJVSVFKSnlRaDM1Sk9wenhma1ZNamR6N0lUVUpsZXhoU3dZSUNvUGw2dmhKUHZlcnY4bkhYL3drQXphNCs4WStPK1VwVExBbzBVZ0lCR25iY05TQ1NPby9IUVZWUFNtbVdpanBVZTIraTNMMXMzWjdkNjcwZTVMVDZtVEtZekJZWXloMGdSSXdRU011NEtxRzJYeUdLUlhYbm55U29TNjUrZGF0bUZJWFIwQVlGQ1ZORzVWRUxWZFIyMitQSTkwWkdSa1pqd3F5UlBhaG94VmhKa0xhUWdrcUxESndkWlJOQlpTMGhMWS9FUjJYd1VzZDgvdnE5dlplK3VXNmUxM1pyaG8wRGUyMHY3REZqUmdQaDRqemVPY1pGbU8wamg3Z2dxRTBHM3orYzcrRktSWC81aXYvRHdlenU1Rnk2Q0hPejdIVzRwdzdnY3hteVZKR1JPd2I3Uit0TTJHMEhUVVV2SERoUTN6eDA3L050UXRQc2ZmMlBkelVjV2JqZkV4UUlGV3lHNC9lLzlIV05pMHlWek1qSjgvL0Z1dVNLYi96bTI3RDBpMDl4UktjcnhFOEZrdFJHRXpSTGhBYkNxY1ltUzBPYngveTB1TWZaRnlPK2NPLytRcWVXNVNNT1d3T01XajhtdFRRYmRLU1RHTXpNakllZFdTSjdFT0Y2aUlTbk40OXp4YysvenRvUm5objBLcEVNR20vYUUrbjhTaUprczlXSXRzNVk3MFhHOWtIdlhzbEtGV2psS016azFDdGpuZHhIZWNjV211R2d4SEdHS3Fxd2Z1QUxTemx5SEw1eWtXQ0YzNzRneDhTOEFScEEzTUpJaWRKWlRQZTcxRHFxSFZOVFBRYVhibzBoZzgvOFZGKzQ1T2Y1L0Z6VCtBbWdUQ0JrZGxnWEk2b1hJTlRIaWVPb0ZQNzFZcWdISUtrL2hhZExaVWsyM1JKRHBpWVh2OTdnSHR2eTNTK2xvM3JuZ0RWYUVVSUFlZWEyQytVQngyaWFZT0dRaHZta3hsS05EczdPNHhHUSs3ZXZNTTl1Y2ZDdFF5NlNBWXIxODdJeU1oNDFKRWxzZzhacW5YbzZ0TE90bUYwVkVwRkc2Rjc4UjdiVkxYdmpZWXV6cnpBdTVYSU9sQU5uUTF0YUhOblFodjJ5M21QVWdhdE5kNzdsQkhNTVJ3T0dXOFczSm5jWTJmN05KLzYxR2U0ZDdEUG4vL2xIK0ZUV3RzWUk1ZUZGVUZHeGdyQ2thYmFTbU1OR3NPTFQ3N0V4ejcwQ1M1ZHVNTCs3UWxxb2ppL2M0a2hZKzdzMzBiR1FxTnE4QUdsd0JxRGlJOVJPN3pIS0oyeTZTa1FrOVpwVVNNU1ZEU3c2ZEJGQURtbS82elpibnpiNTJORWhHZ3Z1OURRS0tNUTV4SHhPUEhVWGhBbktDMFlNVEN4bkJtZjVjN2tGb2p3b1djL1JCVXEvdTAvL0ZzTWN5WWNKcGV5QkhYa0ZqSXlNakllYVdRaSt3c0REZEtHK3RGbzBYaUlKZ1RKMWxWSjZ4Z0NjaVMvL0FubjdkQW5vaXFHM2tybURGckFvMU1wNktBSWltN0Mxa2o4WFdLZ2QzMkVYTGJPYWUwMW8rcHlPQ3h4THRBMFVYMXJUVWxSam5GMXcrMjM5eG50YkRJNTJPUEt4V3Q4NGJPL3cxczMzdUo3cjM0TGd4QlVXT1NXYjNHc1dlejYxSnRyZDFjczZrejE2MjlkUGZheUo2MjlEYjJ5TDh2M2U4U1VkODMrUzFoc1Z5ZnVkOXoxbDAxSDFzV2ErR2xhRngrTkhiR21EbE9iWFQxbStiZ0h2UGhTMEgrZEpMRUZCV05LU3Y3SmIveTdXRDhnSE1ETzhCUkthK2FUS1E3SHh0YVlLWlBGeVZJS1dSU0lqeWxuamJIZCtWdVRuaGlXVHFlK3NlaUhDek9mWG9JQ1daZ0dBZWlnVTlpN2xKbVBSVUlUTFRvNWZmbTRKc1JUdXdiUm9LMUJLWTEySHU4YnROWVV1a1NqOGRXYzAxdG5xS2pZdjMyUEQxeDVuc1k3L3MyMy93aU54Uy9aeWRNMWdEYkJTdnQvNlAzZng3SHZhTjNpVWxhMnJ4bWJWTzhhZlpPUSs1MXUzYVdsLytYZG9odXI3dGNmMXZTL0I3am5OWWUvcHpLaUh6LzR1SEVpT2pxdTcvL3YxVHpydURFejRrSEhuV1AzTys1ZHI5bDVkZGZsWGRyeDhUaVR1K1Z5NmRpZjJnQ1c4ZE5DTmkxNHFHaDdoR1Y3NXhKZitQenZvUmdUWElHV1FSb29QZEh6MkNISkZqV0lRb2dPS3Fqb0JLWVFTR3BRa1U1Y2hHczh3WU4zZ2RLT3FPWU5pR1k0MktSeFRjenpIZ0xpaVlIZEhTQUdUWUdpZ0dBb2l5RlcyeGpFUFprSktCRzhjeUFtSnM4Vmc2QlJ3YkNRTElOdkhCSUNXb0ZPWGprU1BGcUJ0WlpCTVdLNlAwZFJjUDdNQlM2ZHY4U2ZmL1hQR05xU09zeFJ1T2hUMC85MFZhZFJSc1dFRGRLNnNDeGMwTG9oZnUzeEpoSnZvOUxmQlNnTGxQSHZMZ0ZGUUd1d1JkeTFIYmlpek55ZzlSQ0ZRU21GdGg1VHhOTko3N3FxSUkzdEdtTkxKTVNvRTFyckpCbGIzTnppL3Z0LzBmMFYzM1g3R0hwcHIvaTdYaXAxT3BNbEVxR1dSRmlsTVZaRjU2YlZ1bmtIaU8rdUpIaTN1QmNWSmFFdEtldytRT3R3dEt4emVJOVFvTVowZm9aRE04Ukl3WUF4bSt6d3ovL3BmOHEybkdMa3R5aDhnVFNTdUtVZ3VxRUpGUjZQUW1GRW9RSm9weEFuNkdCaTlpMnh1TVlqSG93cE1MWWtpTkM0RVB1VUhpRXU5ak1mMG9Tbm84UVUzZHF3QjBMdGtjcFRVckpoeHhodnFLZHpNRFdtVUZobEVCOUFGSVV0MGNyUUJFY3dDcCt5aHdVUkJJTVdnd2tESkFnK1ZKaEM0K2VPMmFSaFhHeXpPZGpCQmNBcjNqeDhpK0Y0UUJYbUZGdVc0TklDczlRb0x4aHNTaFNoYU4rZVNXMnMvNDZPTm8va1phZmJkeXpyZDFZbWV1UjFzVzRWaHRCOUM3MlR4clFyR2hON1ZHcnRjdVNjaWphNFgydlpvVmx1eEwyUDBzZC91cWVPQ1RMb3J0eGVmVEdXOVB0ZFd1dkV4MTl6ZFk2NW0rVWUyZmJTNWVWb2E1NXQwa25XbGRLN1prR0JvVWl1amZIY2Jjb1BvMXJUdERhVDIrcm9jSFFaK3U3UWhsbHMzK2JSK2pvYXpUeHBHOU0vYXcxS1NXeEd2YnJUdmI5N0ZiajhXVzJVNlhWYnJUQkdVMmlkeHRyMmlSY2Y2ZDZHVHFlTFpXeC9wTG9rOVl6Mkp1VG9TODM0aFVDV3lQNmlRUklwVTYzRXRMVTliVldPN1g2UmtoaUJ4Y3J4S01iak1kNExJUVNVamRxWnJ3QUFJQUJKUkVGVVVoUkZFWk1zS0tHMEJ1K3FSRzRVMWl3R21iYmpWazFGVmM4SndhR1VVSlFHbzNRTTdoN1NSSGFpUkhnWmZXbU1FczNrM3B4aHVZa0tVS2lTMDlzWCtMVVBmWWEvK2RhZm9OSEh5d3Y2MTFRQnJYV3FPK2tHK2s1bTJmTDZ0U3ZwWkhjb3NVNlI5bWpwNmp1RWtBZytuZjJpQXJReGhLQVJDUWlPcFp5N3ZZRk9XZ0dkWG5RM3diUHNnN05jaDZzMUd0L0dRc0lhc1M2OWFDdUpqcVd4QmQ1N25JVE9RVkFUZy9lTFUrakZYTmMxcjNXSktGU2FGRVVrMld3Nm5ITXNEZytMOEZkSzkwN1dlOGdqdHF6dkhWTEhFMW1qQ2M2eHkya2M4UHUvL3U5VFZrUEtZckNJU2lBK3JYY2N2b3NZWUZJQWdYalBiYWxUK3dvK3NESGVSRVE0bkJ6Z25HTXdLQ2dHRnU4RjBXRExtTDNMYTA4VDVsVE8welF6UEk1cVduTjZkNWZ0elczY3JLYTZOOGRWTmNOeWc1MmRMVzVQYnVDcE1aU0kweWd4ZU5HWTBqQWNqSm00U1ZvVVJVbXVrZGJzeUtCRTBYaVBNZ3BOU2FsS3JDOHh2dUQwOER4UFgzcUc3Ny81ZmQ2ZXZna1dtcW5yNnEydVE2SWhscGhrcGMwUjVqc3poTGFHbGw3ZENuSG9hMStPZjZtcE5ldElJUXdLRzRSZ2lJUzcxNmpYSHI2R2MzWHlNbEVFSFNYa25RUjhxVlRIL0o2b25FcEVKVW1uRjJORWV2L2lqOXlUN3JYalB2bGE3WXY5OGFiZEh0ZDJDcU1zV2dXRUVNbHBVbzYxcGpMdG0ycUovbXJwaWZ0NzJzZ3pvZmV1MHJnZ25heS8yeGFXbnVhbklVN3NVOVg3UzNjWGUyaUVrQkxoTE5DL3UvWjl0QXVXZFpvMVpSVUVXVVNvRElzNkNVQmhDd0M4Q0NFa3ZVbnk0VmlXU0srVzcvU0pNbjRSa0luc0k0LytRTklmWVdNWG5Fd084ZDVqcmFWbUVpTUJlSStiSHhCOFEya1RhVFpSVGhBemZqbENtQ0ZCWVVvb2lvTEJZQnNJekdZelp2TXBTZ3ZGb0loU3BQZUF1bmFjUHIzTHZZTTlnaE0yTjdmNThwZC9sKy8rOEZ2Y25od1FFeTBjSDdsQVV1WWlTYU5ZbEV0SXQzdEwxSlJhRElZQnRSZ2gyNVY5OFBFUDBTbmJXVlE2ZWRlZVA1Nm5pNXlyWW5wZkx4VWdhQ3ZvSklrVldRaXJyQ21aVFdzUWkwakFoeGhLclN3c0lRUWF2MzRSc3FybVhWVjRRVHRScmpqRHBmdHM3N2QyRlFER0dBcGpVY3BFRXVxamc1Nmt4MTZxMDM0ejBqRXNGVDJQL21LUWhvMGdoTWIzZG9adVliQXE3SkZGY2Z5eTZ3RWdZQWJnSm9FdHM4bk16L25rNDcvS1N5KzhSSmlxQlNONFFDaWpxSkpaakxhS2pkRXc5cVY2em1FMXdSWURuUEtFSnVDb1FRZFVDY1hJTUN4TFJqSmtOcDF3OTg1TlZLUFpIR3d5S2tkTXFudk1ENlpzYkEwSjRyREJvSXhCbk1IN2dEUXg5NTJPYzI1Y2FyYUxxTEN3bnhlbENUN0tsOXIwdWI3MmJKVmpIci93T0I5ODVvUHMvZU5OQ2pObTFrekJwSFdHaSs5aW5tSTFTL2RtVGlLdC9lL2g2Ti9yZUpGS1RGVUJFdVAwMWlSQ3RrSmk0eW5DK3E3ZUxaSmkrMnpia083WVdscU12b3ZTQTc1dHEwZmE2NktGOXU5cFZaUFFsNmUyZlhiSjNLRmRFNmU5SlgzeDNlcTJWd2Q5eVNNcU1kdVY3YjJWaFFpNDBLQnhLS1dTL0NOZXVJMGNJMkcxdDdYM3F0YStybmVQNWZPdm5qTXBTN3B5ZWRFVHdLYm5URUtDOXJsQzd6bTdRdldhUy90N0xZdjZUZjFEYTZMV1VDbHExOFRGd1NwRFRyZnMvZUs0by9mZnZ0R1ZPVTZPK1R2am9TRVQyVjlxQkFaRGd3aHNiQTQ1T0xqSDV1YUFPdVdKMXpvUzNEYnNrRWpNdlI0a1JOS25oYTNOSGU3ZXZjMnRPM09HZ3hGYlcxdHNiWStvYTBkZDE5aStTTzhCVUJRRlpUbkVPVWMxanhUMGljZWY1c012ZjRRLytzczNhSlhoWFlDRzFZR2pOd0twWlBPMFVMUkhmdG9PZ292QlZDSXhVMkV4Qmt1STRqMEpIUTMyU05TSzlnZkJkczRXZy9NZThDbVdhVnJ4dHhlUktEVng0bEFVakllYktLV1l6dzR3UnVPYm1wWXVIeWRWYmNkZlNVTnBOeUdrc1grSmlNdks0ZWszWXpYZUJiejNNZTF2a3JjWlhhQzFwbmJObXNGNE1YQmJYZURGRTBKa2hPS0pzVWtUanJ6OVZiWGJvdEpaVUk5K1BycUZqZWlEUUJ2d1U3QVk4SVp0dmNQblB2dDVtc1l6c2h1RTVxU1paa1VLdm1aWHJUWHpha3BRZ2VHd0JBdXpaa0lnTU53WlVGdFB3TkdFaXNiWFRPb0orN2Z2c0g5dmo4bGt3bmc0NHZUdUtTNmNPY2ZXY0JzVmhDck0wQVBMYUh1SXVFQ29JcTBhMmdGV2wxUlZFOGx6Y0dnTElsSHQyVXFLKzNkZEZrTzg5MGhRYUdWUURpbzN4dzhjdzQyU0Y1OTRsdS8rNkJWdVYyL0g1cElJanpiZ3ZNUkZSeDk5MHNUSzMvMTkrdlVYNkRmV2xYMTY3TFAzKzBucmkvN2E1d2lwVHRmb3lkTlhMcjVjM3BkbnJLcUl1K2RlSnVjaUMzT0doVVdxSnF6cnZ5MnhYKzJYcStMYjdxTlhIcnd2eWsycmI2VVc0bHBKYkM5RmRBbElSd2JYajQvdHN5eVd3ei9kK01GOTF0bnpLZWhKVVdXMUhiVWIvT0krUXJyL2ZoMTNoeVFOQkNUdFdtcFB4aFJ4clNDOVVUS0VtR285V29jdjBGOWM5TWROV1RUUHhlMGNsZEF1M1hmR0x4UXlrWDNVSVRwMXlLVE83V2ZySXRDNENxVUN6Z2ZldVBGOXpwMDdSVkZhbEFrTUJ3VnVQby9PSmNFUjBqSllLWVUyVWVKNE9Kc3hIQmRzYkc0aW9xaXFRNXBHS095UWpZMFIxYXgrVDdkZkdFdFQxYWhrd3htYzBEU0JUMzNxTS96bFYvK1lXWmdScFNpckt1bzRLSnYwMk12alM1dkNOMXJadGVvNDNaSFpaTE9uM0JvSjBQSXMza2w4VlZ6cEs2MlMxRm9oRWhnTUNxcW1XcHFaclFhdEM1QUM4U21WUmFXb3BFS2pFZDlFdGE1VjFHNTVxRnhLR2FvVzZ2cXVaTGxjK3JTVnNLSVRNOXBBTUNoMHB6S1hvQWhCc0F5N2VscGdFYmdwTk5HR2RLQ0hHR01Jd2VHOWorWXBXaGFxd2RWSjZzaE1CSXZVeFZIQnZMREZlRUFpSzlFdWRpWnpCbXFBRjg4WHYvQWxOa2FicUlxNDBLSmdsYkIyaDZ0RmQ5R3JiU2h0cUwxanVERUVMVXlyQ2JQcEZHMWdPQjZpaHBvMzk5L2doMi84Z0ZlKzh3cHZUbThnS1JtQlJWTkVGdHE5OXpQbUZNOWZlNTRuSDN1U3JZMXRpbUE1Vlp4Q25FRGpRTU5BZzlhS2dTMXdLdUFrWU1RdnVLSVFNNHFsUHFCc2laTWE1MkNnRlVacmpGZjRLaENVNThMT2VWNSs2aVgrN2ZmK2lFMjF3ZFJYQkFLRDBRZzNueHcxaEJXZEp2ZDJkamVMaWxrbGZFRW5TWm9DNWRGaHNVK1EyQXNsT2JERk51cVBFdVgwSGx2MHRRNmh2Yzdxd3FqSDZielN5REdtQTlGL3dLejlQWlp1eVl4R1Z2c1JMSnNMOVVSNVVYKzFRc2hWditIM2p3dGdETnJFc1RWS0R6MWFMTXBaVklpMndFY2tmeWNnTHRROXlqWUxHaW05MTdiWXNZY1ZFeEJKdjcwbmN0WmZQSVFWU1QzTDcvcklRa2YzRmd4UmdxcVZ3cUl3MGk1UlVyWTdGdmJTb1J2L0FkOWFzYVp0WGNzSkNCcURqUm4wZENEZ0UrbG5zZGhmWGNqSWZjcGpkczk0dU1oRTlwY1djVkFaalVvbTB6MSs4TU1mOGovK1QvOERkWFBJdkRwZ05vdG1CdVBoQmtva1NkeWlldHhhamJVV1l3cWVlL1pGbnJyMkxCOTQ1a1YydHMraHRNRllVRHJnZlFxOTlSNFV4ZDRMMCttY29oaFFGQVUrekpsTkQzanE4YWU1Zk9seGZ2REdYVFNHUU9pRURuMjBhcWk0aW0vZFZWb0xXUU1FbExodVg0Vk5FbGNMQXBhNk44QXFGa1FyZnZkcGdGYnBPbHFseVQyaHFxdnU3eGlDVktORGlZaHQ2UXdHalpVQ1Q1UWNqb2NiSE16dk1CNE1POVYvOTg3ZzZHU3dUbUswS2lYckQ3ZzlxWEJvMm9HK3JaZTJwcGJjUzNvblNJdVpWQll4ZmdRdU9IeFNVK3AwSFJ0TXVweEhpeXdMWDllb2pTT0JhTzlqeFJUbUFhQ0FhbG96Vm1POEtGNjg4Z0xQUC8wQ05LQ1Z4Ym1BVlVmYlpnQVdZdTNqRVZUQStacUJNVGh4TkZJeDNDNFpqRXJlZVBNTnZ2bDMzK1RycjM2TmlSeFNVYUdBd2hRWW82aWJPWk1RMzYzRk1sQUQzdkp2Y3V2N2IvRzE3Lzh0bi9qd0ovajRpeC9IMTQ3QmVJQ3FOVTNsQ2ZXTWdSbWl0VWEzWWI2Q1NvNkJIaTJLZmdqcEVPSWZLbmxFYXEwWlVxQkZtRG1QcVlWbkx6L0R0NzczOTB4bFJvVWpvR2hjSURvOTlTU1BIWHRzSFpKMHI1bnBaTDZ6TElEdGxna1MyVUc3aituMXMwQjBhb3pPYXVtYTYwaGo3LzBja2NiMlNWRll0RjJKcXFQMERFZkxKTGRMKzYrV0ZvdnJpSFBYZFZiN1ZycldRZ0xjZmc4c1pVM3JFOTUwRXBXdXA1MnNaQXVPSTlVZ3hkbG9uYStpazFHcytUNUZqRXZjU0hmYlpZM0Q0VnpNNDdhb0tnVktvNHhHbEtKT21wK2xjYVF2TVg1dmxtRzlCMTlEWWxmTGJveGF2TC9TREJPUkQxMVY5cDJ0MHZJYm5ad1NGOXEyT0c3VkhMV3hqVFhWNElqa2xhQ1NMVXZyRmgyaVZLT3oxVm56U0tzQy92U1lDMmx4YTZLeHprOGg0K2VOVEdSL0dkQjNmQklOUFhlTjJmeUFJRFhPVDNqdHplOFNxTkRVQ0k2aEdmTDIvdHZFVHRtcWVDT2hiYjEyZi9pVGI4TWZHM2JIRjNuK3VRL3oyVTkvaVpjLzlIRVVocmR2dk0zTzVwbjNkT3RLS1p4ekZJV2hhUm9RUzFrT2dZWVB2L3d4ZnZER3Q5Tzk5VlhRUFpzczN3NStCcU9HR0Fab3NaQWtpbzQ1VU5LNk9TeUlic3hEcnhHVWVPS1ViQlA1MVVrK0VoZ1hJK3BRNGZ5OGM4WlF2VFNsTVhJQnlaa0lsSlJBZ1dhQVpjVFp6VXVjUG4yR0p4OTdER1ZxTGx6YTV1MmJQK1lQdnZKL2NqaVpvYkRIT3hVY1IxcTdoei8rbzVMLzdaQVJyUzk2SkI1RGRqWjN1SGp1SXJzN3B6bC8va0lYNTFmRnRGVlJUU2NPRVdFMm0zQndzTStkdTdmWTM5OWpPcDB5cXliTW1STWtVRkRTMEJCd2FCcVFFS1Z4cTVJWWlOS1h6aXZqdUlkNk40amh0Z2FNYVBEODJpYy9nM2Fhd2d5b0p6VWp1OUVMb1BydUVOS2tiRXZOd2ZTQVlCcUtEWU1xNGZXYjEvbnFOLzZLYjd6MVRhWk1jRFJkZTVuNUtmaWVlaFh3TkhocEdKb1lhV0JQOXZqS043N0NWNy94bC93SHYvNGY4dmp1NDV6WlBJdFRncHVraENDQkdCSENhTFFLQzdXckxKdEFWSTBIclZGYUUzeGNjQmdGcFRhSVdHYVRobk9iWjNueDZvdjg5ZXQvaTZVZzRIQ05pMFMyVzc5RXYvY2l4ZCtOUzQyWTJyZXQ2NzZKUzl1ZklyMkl6eHRWdWUxenh5Z0E4VGlkRXVjcUFvRkdvdXEzVzhzc09Zc3V5UEtTeEd4cG45YjMzYUFvV0dQZzhvNWdDY1NZSXkxQmREaWlZMUNTM1NYNStnSXQyZTJXWWRyMW5nTUlGa1IxdGRndUdRMkxaTjRtdGRzaEpSYzRRMG1CeFdDVXBiUUZwckJZYlZCR1I4ZGFoT0E4TG5oYzNVUzdUenh6NXR6Z1RlWTBIYUVLUkMyT09QQUVTZ284Z3Bmb1dMWmNweXdUdFhlTkU0anJLcnB4S2Jhczl2MVpyeE9SajcvR0ZxTW9LU2d4bkdJMzFvc3BzZFpTbUFKckxWclpwQlVxRVJGcVgxTTNjK2J6S2RNd1pjcUVoaHFOcHFaaHpweUdKZ25ZVXdwMHJhbkNmTG41ckFvTjFraGtUM3JNakllRFRHUi95YUcxWWpRbzJkZ3NDVlRBakVBTlZNenFRd3lqTk1RS1VkWHVJb2xKcWhsTmdkRWo5cVkzK0t1djMrRkhQL29Sdi9tRjEvamtKMzZkTStjdjQyWmhaWko1ZHlnSzA5azdUUTluMkZLeHZibk43ZjJmOE5JTEwvT3YvdUQvUU5MUUgxajEybzhVVUN2TmVMakZ1TnhsYUxjd3FnU3hTQWhZQzIza2gyaGphNU95eXFEd2FKbW50S01HSVNaeGlCRU9BcUpxS2o5bDNod3luZTB6YTJieCtndjNmRVFNNHFQMW5NSXdZcHVubm5pZWo3MzBLenp6OUV1TUI1dVU1WkRDQ0RkdnZjNjV5eHU4K3RvMmYvTEhmOGc4ek5NRUNwMlRDRDFweVdxNWJsRHRwRHh0RUtVWWJLc05wclE3T01Oamw1N2d1USs4eUdPWG4yQm5jeWZabFdtMHNqUk5URmhobFFhajBSSnc0aUE0UElGQ0crb3dSd3ZvUXFNa2NIdnZMdGRmL1JHdnZYV0R2LzN1MTRrV25uVnFYdzJLQm1rSmJYL0NWSUEwU1JMYUV0cjNZQitMWnNQczBIakhaMTcrSE52bEZzTnlnL3JBZ1RlWWdTSDBpS3lveFpMaHhJUmNxdDBuVUE1TER2YjNNYVdpR0EvNHg5ZSt4eC8reVIveWR2TldTOHNJeW1PTWlkRXJRczh4MGNCd09LQ2FWalErT3RpMWdhNDBub3FDUC8vYlA2VjU0ZGNaUGpXbUxJZEl0ZkNxRGlGMERvUzZVeGtMUWJYUkMyS3Eybkk0UUJtTmF4eStEaFRHWW14YXVqaGhPQjd3L0JQUDgzZXYvejFETk5vR0R0MGhuWFVIbWxLWGpQV0lrUnBRU2trWkxEcFl0Q3dpYmZhVnQ2S2lCSzFJV3lPUkNvUk95cTNRWWpFNkVpa1hHaW9xNWt5WU1xR21pbzZPUFZLMVZyZXp6dXdoalZnV3kzbHpuaUljUDQySkhNL1NMSnFTZGhudmNEaHFQTFYyT09OeDJyRmZIWFNrTnJaYVNmdUg2QzdXSjRVQ1NNQmlLSWtoN3d3bEZzV0FnakZqdHZRV3A3WjMyTnJhWXNkdXNOV01HSVRvV2E5U0hPUFdZVXNwZGVUK1l5cmwyRFlxM1RBYjFCejZLZmNtaDl3N09PQ2dPbURDaERrVk5RMDFIa2REZzZPUitONlc2dlduQVhWTUgxNlNaTGJFdmcwK0ZuVlZRMGFVbEF3Wk1HYkU3bUNiM1kwZGRzZmJiSlJEZElpWjlJd1l0RXJaOUNCSzRvbjIvK2dvVElnQlBRSmU2dmpFcXVIVy9tMm05WVM3aDNlNHl6NVQ1dWw5QnVyZzhkaGw4NmgxNWdidE5sbjhlYXp3SWVPaElCUFpoNDJrRWxROVk2MTJzSXFmSk1WU2ZZWGI4cjZ0elZmbnFkcGZhaXNJd1RHYlQ5QTRBaldLR2tuZXlyRXpwbTRwUGFtbklrclhhTU56V1NCd2UrOTEvdmQvOWIvd3hodlgrVS8rK1gvTzNyUm1PcG13dGJVVnZibG44KzdlalZtV2xIVDN0eFJHekdFMUJGRU1CMk5FT3c0UDU1VEZpRXNYcjNKbTh4eTNEbDlIWXdsNHJJa0RqOUVHSHp4YXhiaWVXeHRuK1MvL2kvOEdIVWE0U2xHYVlaeHdmUHRNMHBuK1I5V3lSUW5ZMENTVGhVaGlFVTFRQWRHT29DdUNtblB6emh2OHQvL2RmODNXYUp1RDJTRUtHSllqNXJYRFVBS1dzeHRuK2ZoSGY0V1B2dnlyWERoOWxVSTJDTDZJNFpRcWp6ZXd2WEdlVU5kb05XSVdBbjVwRmx6WE5vNStWeENqSlhqcEpvTllEdENwTzI4TmRuangyWmQ0OGZrUGNlM3FOVlN3YURHb0ZJWkt1OWJyWFZNbVZiK1dnRytrazU5cENRUWRVSTFnVktJcklhQWxjR0U4NHRLTEYvbm9TL0I3di9kUCtjSDFIL1BLLy9mM2ZQL1Y3N0kzZlJQSGxDakxpbWxWZGJJa2NLRWxrREV1Y3BkZjlqNFNJV05pbkY3di9WTGJVU2k4YjdDVVBQZkU4NHpzSmlZWTBKYjl3d05PalU4ejgzWExBQk9CbHFWNkZVbTV1Wkp4b1JJUElpa01jK0R1L2gxR1cwTkM0WGpqMXV2ODMzLzRmeUhHVVROTGROUVJKTVpYWGtvNkFPQmhQcW1Xbmk4UU92MUhUY1ZQNnJmNDgyLzhCZGV1UFEyaXFiMmpxdVpzRHJkcE0rQzJFVG1DSXFiSlZRcFI4WHRSRklRUW8yRm9xNk05ZERMemFNTThOVlBIcFROWE9NVnA3ckJQN2U1RllhejNLRkVNR0lBWGZ1UGpuK2F4TTFjWk1hWjBCYW9HSzZhTGtCQ0lEcElPUVZRMEhEQWh0dC9XQnRIcjBDVjgwTUZpdFkxUk1sUkFTcy9kNWk3LzhrLy9KV2ZITzd3OXVSV2RhMVE4KzZLT09yNGFZUzAweVpZelNUc0xMSmVLOC96K1I3L01zQzY3ZDlrdlY3RzYzUVREcHQ1aU9wMHlsNHJ4dVExdXptNHlLeHVhUWNPLy9vdC9UVWxKUlIzVitjbG1QU2kxR0pmYndLNkFOYkUrTEpvQkJTVUZPK3h5c1RqSDFkTlgyZDNjd1lvQkR6cG9ocjdBVmdyckgwd1E0RXhnSXdpYjJuRmhLSmd0amRlQnZjbGQzcmp6Tm0vVmIzS1hPMVJZaGdScTFUQU5rMDVKWVVZYWZ4aERGMGJURlVuajVUdUhLVFFoMFBrU0tCVWRKRU55dUdwTkpVeUtibXZTZUtWU0hWM21FcGZzQmM2ZlBjZnU1aFltYUVJZEtJTEdWQnJsWWxzeW9sTm92SVZwQjVDV0ZYSCtpbjBpSUxxSXlYUzBaN01jSXh0Q09CZW93cHk5dzMzZXVuT1RXM0tUZXh5aTBNeWxKaUFZYmFpbGlXWjJyWTNEQ2VqclBqTWVMaktSL1dWRTY5QUFMR2FEVnZybGlXbGwyMzBiV2pWN2h4VnBvTklOQkNHR01wOEJoaDlmL3c1LzlkVS80YVZuUDBQWnFDNjJLTkFOaWlFRTlCRTJ0b3ErZTBkUzBhTzc4dXlwODl3Ky9FbFU0Uk1IWER6SnBsZUJSQnFITDFCK2dKSUJ5aHUwR2tKUXFKQ2VXd1YwbXNCVVdzMHJpVUhoWTY1NzNRMktXam1DTkdpeEJBVVh6ajZHcG1BNnF4am9JVTJvcU9zYVRjR0dQc1ZIWC81VmZ2MVRuK2JhWTA5aC9KRDVKTkRVR3NReU1FUHdIa1BBeXh3VkZEb1VRSm1VdFRWMDVHYU50S1FkTFJWWVUrQnFUd3JNeE83d0ZLV01PS3ltS0RUblJoZjQrRWMvd1F2UHZzaXA3Yk94eHBvWTFGOEZFOHRrVTlnU1dTMEwrWUpwSi9oMmt2WWhSclRvWXE2eUtGVzBzYnl6UCtXcHl5L3c0bE1mNHVhZEczenJsYi9tVzkvK0dtL3V2VWJESEUwRndVZGJUcUkyZXpEUzFENFE2dnZyTlB0dHFVOVF0TmJZRUcyUW56LzdJbWQyemxJeXdNOERCUU5HNVJEWEhKV1pSTWUvUlhzN25rTEVkalBlR0ZLRk9VMm8rYk8vK1ZPOGJianRiZ0pRMDlEVHpjZmloRWZxVER3SlNTRWZxS2k1eWR2ODZkLzlLYi95d3FjNHZYV2F6ZDFOM0N3NnFsWFZERkZDVURFaFFpdDVEMFJpNXdFa0Vxek9KMTJSSnYzWXQ4clMwb2p3ekdNZjRHK3ZmNTBDU3gzbW9BVXQwWTY4eEhMcmpadGMyNzVHS1NWRFY2S3JHSEJmaHdXUkZaVmNadEw0WWtMVVlIZ2Q4Q3BaYjdiUkZVUmpSZU9sd0JOd3FtSERqOWxnUkpnR0RJYUZHeHVkNlFLdzNBZENpQXdwS0t3cU1Ha3RjbUh6REZ2ekFSdlZNQjcvYm9tc0x4anJiZXkwWkdCcTFJRm1KSnVJVExpN2Z5ZU5DVzNDajNSbk9oelZqcVFBS0VaaXJ4NHg0TEsreE9YdEsxemN2TWltM21Dc1I1aEtFeXFCSm1DVXBsUUYyaHM2RytQVzhQa2Rsc1pENFJTRmVMeDR0RlhvZ1dHajJHVDMzR21lQ0kreDUrN3g0OXMvNW5wNERTMk9NVU9jOHN4ZGd6K01iU2hJNkJ4OVliMGsrTmcyblJaV3BPWW1BYndQblFUV29pZ1pVR0FSb28vQWtBRVhoeGU0dkgyWjgvb2NXMnFEWVZHaUtrMm9QRGhQS1NhYXgzaGlXd285cjhRVXVTT2s4YnE3VXhVUTVRaEtJcW5WanBJQ1JKQWdCRDFtYTdqSnFUTzdUR2FYMkpjSlA1aSt4bHZjaWhKNUw0d1pJaVZVb2NiNTFML1hhY1d5UFBZWENwbklQdW80b3RicHIxaGJrckx3dG8xWTZFamllTFhpZWE2V2Q0M3hWeDFRbzFTMEJiMSs0M3Q4NVkvK2dCZWUrU1JsdVJHbFFuNFJQRnhyL1M1Vzl5Rkp0L3FJOTN6bHlsWCs4Zm8vSURRb0ZGYnBaTVFQS21XMENaamtIVjJBUkxNQ0ZVWlI4aUV0Q1FzcFBpeFJFcG9HUStWYlQvNFVTa2ZGT3RWVUJEUk5OV0gzM0E0YmFwZXA3R0hGNGhJbGVmemMwM3pwYy84ZTE2NCt5NFZ6RjNHVjUrQmdUc0dZcmNFdXBSa3htellRR3BTRWFMc3JBbUloMlNyZUZ5Mzc4ZEV4emxBd29NUVRtTTFySEFYWHRwN2owNy82YVo1NTVnTnNiV3duMHdxTkNsQTNIaDJpVkUySlRjU1ZCWkVOdW5lcE5neWJoK1R0TGNuZWVKMGpXbENhUzZmT2NHODI0ZUJnenVtTjgvejJwMytmRHovL0ViNytyYi9tbGU5OG5SdUgxd25NZ1lhQ2dBOVFUY042RC9FMWFOdlJraVEycVYralRaM2w1UmMrd3Zad2wxQUoxYlJoT041aU5GRDRKblRQdTc1dVQ3NkJvRUFiaFJmSGozL3lLcS9jK0FjVTRHalkzQnB6NStBUXVxVmFtNlVOMWsxeTdUNzlQVlF5NEhFRXZuSDlHMXg3N0drMnoyd3hkVlAyN3U0eExBZU1ScVA0SG9pQjZHSzIzNENTT0hTYklOQTNtV2hORUtJQko3TjdjNnl4ekh6RDFjdVA4VmZYdjBwaExQaEFNU2lSbVVjREE0YmNlT05OM09NTncyRkI0U3pHV3dZK1NmRUplTEdJOWpqbGUwVFdFb2pTUVlkUEVtVEJCSTBOR3UzaisycWtKbWlMMHhWUDd6ek5LL3Zmb1dCQVRjV0pjaTBoMmh6ckFnUUtaWk5NVDdoMCtoTFdEU21hQnlTeW9XUWdZMEpsR0l5R0hCd2VNaDZOcWR5Y3Q5KzRtVWJRZnR0bjRjZVZDR3poSXJlMXdJZ2hwem5OaFkwTFBMYjlPQmMyTDdBaG01UzFSYzFCUmNzYmxGZVUxcUtNWVM2QlJxZTJvY0s3S28zQU1KU1VUdkMrd2RjQkdvVXRZVEFZc0ZWdWNXcTB5MVl4NHN6QkRtOU4zdUptdU1taFAwQmhjZUlJMnVEQzBmcC9wMlEyZUIrYlg2ZlZXNWdSREJpZ0U1bTFHTWFNT004NUxwNit3S25OWGJiMU5xZkNLWXJHSXZNUXRScU53b2lsMUFWbE1JUW1kQnFCdHFRZHA0RWxHeUdsbzJZdFNXYTlObGp4Qk84UkM4SEFRSS9ZS3JjSnBXZFdOR3pNdDdtK2Y0TWI4eHRNbUZEVDRHdWh6WkVteWkzYTRlcXozN2QyTW41ZXlFVDJsd0t0bEtBbHJ1MXNab21ocTB3eUlHb0hnaFdEbjlWT3V2SzlXNnlyQmxzVStOcmhhZmplOTcvRnJWczNPWDk2c3lNY2lxak9MOHN5cnZMdk94WXVob00yRzR1UzVMRXJtb3NYTHFOUkhlV1QzcVJuakVMNWxJY3NlYVlxaVY3QXlsdUNiNlBRdHRlSXgycFpRL1lsRXFNZ09qcHdoQUtOZzJDWkh6WnNqVTR4bTg1b3hHTVk4TlNWcC9qOFozK0hEejc5Q1N3ajZvTVlGSCtveHd6dEJxSHk3TS91TWh4c1JpbVpRR3RMSE5ScTdNa1ZwNG1lWlVncmtWWEo0aTZhV0Nnc0JRVWp2dkRTYi9Ic3RaZDQ2cW1uR0E1SHVNcmhYRWgrZTRKV1JTS3hDK2xyTnlHczJqWkxiN0lrWFg4MTNWZnZHSTJpbVRpb0JYR0J1V3ZRcnVETXhrVSs4OUV2OEpIblA4eWYvZlZYK000UC80Rzc3amFlQ25CZG15Z0hNSnV2YVJJcldDV3hFTnRZUU5oa215Y3VQSW5NQlVzUjdkMjh4UGkzYnBFWVk5MHpLbGsvRllYT2pDZFF1UnFuSEgvL3phOGxDZW9VUjhOQnZaOElUWnV2dmIvK08xbFZ2RmliQktiTTJiWUREdDJNMSsrOHdkV0xqNkZxelhobnhOWndrNFBwaEU1dFNraUJGbFRYS1ZXU2RBZmxFTFY0VnliMTk5MExaMm1vRWRWd1puaU9BU1YzL0IxUUtUUmZrb3A2SElmYzQ5YXRXMXg1OGdyKzBETlNGaE1zSnJReERId0tMaThwY0lER2VwTWtZd0ZSaVdDRUJaRzFUZXluMm51ODlRd0t5K01YcnZLZC9lOHVhcXduSlQ4U2J6VDFBNjNpNktCRmtnVzQ1c3oyV2RUY3BJVWhpN1o2SEFGYjJhNkRpUXRacjFIS0lFM0FqRFhPT1c3TzNvcjFTczlKcW4xNTZXTUVocUlwMEl3WWMyVjBtU2ZPUE1INThVVkdmb1NkR3NMYzRaMmlEQmFMcGRBV28yTTJPU2NneWlVeml0Um0za1VwQWxKRElacFNEYU5EblJPOGR6UjF2RUZ0RlJlMkxuQnU1d3h2VGM3eGp6ZitrZXZONnpUTWNRUXFQRUZMSjFsdHpjSmlNM3BuWkRaMm80QldjYUhlcHN1MUZCaWdwT0FNcDdtNmNabkhUMTlsWjdDTlZCNi83d25pQ0VFNmUydWpiTlRvZXhVVGZTaE5QOHJCOG9WVjc3ZVFOR3ZSM01BSTBVWmJhWnlQanBBa3pZSFNNYlRrd0d1dWJUN0o2ZEZwTGg5YzVQcnQ2N3pPVDVoVEl3Z1dTeVhnVnhMeTlQVlRHYjhZeUVUMmtVZEwxRlluVDVOK2J3ZjZOaWQyNjdYdkY0TnlpOVV4cStVdWFYS0pDUk1xaWtKb0dzOWhkWnZyci8rSU16dVBwOFFLZ2dxQ2M0NnlMQ1BwT0hFZ2pDcHNKVzJFd0o0dFl5S2JXMXRiUFlYandvWkxBMFpKSXJZcC9XZzNVZWs0NEFlRlNpdjArSHVTUmg3eGx0S2dMRzJBOFFVMG02Tk5adFU5dGpkT2MydDZHL0JjdTNDTkwzM3hkM2pobVpjSjA1TGdGUU05WURpT2FVYm4wd3FwWVdnSGFGd00vNlZDdkZaUzB5OFVxbXZRdXdlckRFNkVncExkalZNY1RpWVlESmMyTHZIRnovNHVIMy9wc3hReW9xNXI5bTVOVUFLajBRYWx0VGdDM3JVMXF3Z2RLVmhJVjBQdkpwWnRyT1A3T1JvNGZaa2FocVptZHp5bUtIYW82em5UZ3dtTnJ4bHNiSERsekM1Zi9vMHRkcmZPOHRXdi95bDc0U2FlaGtJN2ZQRFVzL3NMWmZzcXp6WmJUOXNHQk1YVFY1NWhaN3pMOUhCR01SNHhMQ3krQ1lqVE1icDVsMi8rK0ttbmpRU3cybFJGUlhYNmpiZHY4UDI3UDZCUWxwbUhlNW4xQUFBZ0FFbEVRVlE0ZEtHb3ZlK2NwYVJIaUZmSjdPS1V5NHVWbnI4Z2MxdUJVM3pyQjYvdzNKUFBzK0ZHYkJmYkhNd1AwVGFHVVlvYTVWaEtpT21yalVTSlo1dll3eXVKOTZ5RUdPTlZzVDg3WUZiUEdHd1BDZHB4ZHVjMGQvYmZUdWJKZ2lpSEU4T0VPVU9HL1BqTjY3ejQ1QWNKQ05vYVFoUFhNRnBVMGxpRWRJM0Y0a3lqa3lSdTBYNU0wUEVqUWhGTVRCYmlBMW9MdTlzN3hDWHBmVFFTN1VJdWdITFJ1YThOb0xUTkZ1TmlpSytnc3FtdTM2VkVWZ0RUekFrMnZrdW5HaHJqMkovc00yR0tKSW9mK2krMlIyUXRsaEZEenJETDVmRVZIanR6bFhPYkZ4akpDS2JncGcxYlppdmFvS0t4U3NlRUZDSTQ3NmthUnloMUYrZjZpUG5PZlVxbG9Bb3pSRm1zc1pnVXNzMWpLYkI0VlRBSWxucFMwMVNCTStZVXc0c3ZjZW5nUE5mM3JuT0RHMHhEVE82aHRjWVlzNlQ5TU1aMDVtTEhRYlVXTEduUjIwWWdzTWtOc0tUZ01YV1ZaeTg5emZueGVZcktvTzRHckM4cFZVRmhodjgvZSsvMVpkbHhuWG4rZGtRY2MwM2F5aXFVZ1RjRWFFUVp5bENHVXMrUzVrRWF0YnJuSDV4NW5LZWVOVFBkczhRbHN5UkthbzFhRkNVUllsTmtneUJjb1FwbHNqS3Z2K2VjTVBNUWNjNDlOeXRSQmFKRWdNREt2VmJXemJwNXpiRVJYM3o3MjkvdUZzbXRlalk0SHp2QU9VdVo1ZDJ4OTJ3STJNNGJ2TC9JUFpzUkVWQTZTenJkZU4wUVFxb3ZBSEVCM1RndURRN1pIWThaTUNCL1VIQXIzR2JLUEpYSTFmRzZUM05ERVBEaGNVdlZpL2lrNHdMSWZwWkRBdHVXUm1uUzdsYXdQZS9RanBGTks5eXpIWDJBaDFlODBWUFdXdHROdW5Wak1ZYlljY2hXM0w3OVBsLzk0cmEreW52ZnJlWWZwNUNWdGxpdDFic0djSklBVGxBVVJiSDFldWNzV3NWc28vYzJOaDd3c2FGRENERk4yZzZNRVN3STI1cmhkc0JUZ0VYYWxxcmRZc0FnaVlXUkVGdk1WcFdoMEVPRW5DdkZJYi85bTcvSDEzN3UxNWlkck5rZkg3Q2NWRlRMRmI1MnFWakJVcG9oT3pzalpvdFYvSHhwTGNRczdlSWpzSEVoM0pvc2U4ZmYxbzdjREJBTDA4V01qSXd2WEgyTmIzejl0L25TU3ovUGZMSm1aekJrVU82U21TSHI5WnFtZGpnbHFTaG9rOVNPMk1sdkpYS2w1NlY2SGhCNEhDTXpHdVRZcG1LMVhLSzFabmN3QnNZc3F3VW5IOHpaTzdyRXIvL2liM040ZU1UZi91TzNlT3Y0aDZsTmI3Ky8xNGZIV1Yxc0g5Z2FORjk1OWVjb1ZFRkZnL2FHTE5OVUs0dnk0THgvcU9Ed280UUthYUtVZUIzLzhJMGZFTENzUW13bVlMMkRrbmhBMTJ3aDhmWlg2YzVzcjc2NUw5MXBmeStnbHVobWNLKzV4N3hhc0x1N2h4TERiREVoeTdJb1FCRGI2MmdVNzJFZElIUHhPRGJhMHVpV1A1U2toODVRSmtPQ0lTc015bXVlZnZZWmZ2UXZQNkFvTkd2cndJRFRIcisyYUJ6dnoyNXo5L1ErVi9MTE5BUzBSRmJNU1FUc1RuelN3NTUvN3ZwWGl3UXdRU0hPSWo2Z2ZRUzdlV0VZVURCbjllZ1RrU1ExZ29CM21BNGtLYTd2WGs1czlNZUhGRUU4dGFwQStXZ2hWM2dXYnM2ZHlSMHNGYTFuYStqSk05c1ZhTXMwSG5LWlYvS1hlZTdLYyt6a084Z2M3TnBUdUlLaEhsUG9QT296dmFYeFRXZnJGcEllUWVIWmROemlKM3BVZ0JvRVFyQlJKdUJKaTNlTjFwbzhSSDlhdDdiVTNsT1VPZVB4a1AyOU1ZTXFKNnpnbExlQlptdk1ia09weHg5YnBWVG5MOTE2dEFwNWtoYmtmUG53aTF3dUxuR1FIVkRXQnJQU21Gb295REU2eHdkb3hPSnR3QVlYczA0U2tFelFXVWJqZmRmd29pMXdQRzlwclRyNVFYb3VMUzRiYTZOYmlSS0NLSlNTanBUSk1kaEZSZVlVMldEQTllRTF5ckprWnpIbVI2ZHZjcGY3cUpTSjZJK1pMWmlGajVCd3ZJaFBKQzZBN0djOWVtblFDTnI2RTNkZkg5dG5ZMldUMyt4ZXgrWnZ2UWcrQWo0Q0tCMXZZT3ZhREpkbHVWeDBMSmx6RHExTnAyRjB6ajIraFcwYTJDTUoydzdxbTJpQlNMUXVyeUtMWWdSWEI1d1BLTlZYRy9hc25mRFJva1ZTNHJmSHVHMktxanhSdU9iamNaTk4wWnVRQ2daOFRGa1psVEZneU5kLzliZjQ4cXUvZ0E0bDY4V2N0YXNJdGNPSW9WQ0dZVmxFL2RXeTV1NmQ5eG5zakZFMGFkOHNRVm1DY29sSi9pakRvTUtJeGhGTnlGNTU2aFgrd3gvOFIxNjQ4UUlQN2kwNU9IaWErYXptWkRyREdFTlpsbVE2d3psSFkyMTMvTTR0b2ttTStFWmYyUWV5aWVYeUg3NFUwUUVtazd1VU9pTXpPY0ZCTmJVRWdid29HZS90Y08vZUhmYXZIUEVMWC9wbGxCSDRlODlieDIvZ2FDaEVzUXhWZitzZUcrMDJLcVhZS1hhNWZ1MEdUZVVwOHhHMnN1UzVRWHhJMWZ5OVBYM2NpaXJGMmFZYmsvbUVOMisvUWVRWkhiN3RUbVdBaHMwSzRhSHRKQjNyTTdLUnM0L2VFMlNObHhJZE11N2N2OE9WOFdVbXkxTzBWcEdSSmVDVVJyV3A5OTZpTHhZK0NWNEx6b0JYQVVUd1FWQmVFVndnTXdXbjh4bFROKzNZNDdxS0lEYmU4ZzFCS3lwbm1ERGp6ZHR2Yy9WTDExbk8xcFE2NzlqWGdNZXBnRTFnTm5nd1BhdXlGbWhJa0c0aGdLUzBidkFncWVVemxxTkxoOXc3UHVHUjU3NU40YXZJK0k1MEdiMTFnYWV2M2tBM2tEdFBZYys3ZnM4N0p3Ly92ZEdXa0FjV2ZrWVlCQ2FyRTI3TjNzVW0rNmJrVHBiT1ZYeVBCZ3JKMlFrN3ZEcDhqZWZITDNESkhDSnJXTThyZENOa3BxUlFKZFd5QXA4Z3NWZ2NEdEVSQ1NzTnVoWk0rSGkxNzA1NXBEVFVvWTQxdTAxQVM5VERlMnU2MG9mU1pPVGEwRFFOYm1JcGRNNzF3VFgwVHM3OTZZeDFjN3Nidjl2aVN1QWoxVGk0WG90WjB5bExZWWN4VCs5ZDU4Vm5Ya1RQZ0puSE40NlNJU05kb0N1aHFpMlZhYWhVTE53VkFwYUFFVUhyQ01Zckd3dVRnelFkSTl0bUJBQjBPNVNuYm5lZGFDeFJ0MDNUSU9pVXpZanpZeEFCVVdRZTlyTmRmT05ZaDRwOFlEZ2M3ZU16ejlRdU9KM1BhSEFJcnJjd1RmRVI5UDBYOGNuRkJaRDlETWQ1dmVFZkhlZE1xaDNRM1hxeUM1Y0tBYlFXVENiVVZVd3RkaHhDQ0owKzFqbUh5dkxPenNWN0gwZnJEL24wMWtnOVJyTDVDUW9WTkQ2eEFUcWhVR1BpNmhwYXBxQk5MNS9IR3ZSWml4NlZraVpkRlQ0c3ViOHQwWkJBYklHb2NnYkZEaTlkK3lLLy9xdS93OTc0aU1tREJidWpRK3FWWlR3WW9wU3dYaTA0WFV3b1RFbFdaSEhvRTArMGRkcDhmOHNxdFA2eEQwM2xQY2xIb1Fwc0U2VUZ2L1RTci9BYnYvTGJYRGw0bW1vcDVHb1VpOG1DWmp6YW9jeXphTFcyV2lFaURJY2xWZFdjL1hTMnJvTldYeWcyYmxGclVZVkxlYnoyL0tsejN1OFpEd2J4Q0lkb0txOU5ZdndkVkZYRGFMREx5YjFUekk3aUsxLzRCYlRXMUgvaCtHQnhFNEludzhiYS83NTFWZG9FNmZpUWVPdzhTY3VIWXFoMk9CZ2NNakJEVnBPS25lRU8wMnFLa2JnL1JabkhCaHRwVzF2OWRhcjM3eGliRDJ2dUZjVGpsT1BleVYzbUxIQll5cnhnVmErUURCNkx2eDhGblB1THlQUzdxTURhemZuemYva1R2dit2LzUycFBlV0FmZFlzMDh2YUszWWpGWW1zWUdSL28xOW9aQkRqVlc5aXNRckNpQkZUVHNuUldMV09ZRXBBRmVEYlE1UXBuTE5ZR3Q2L2Z4TXpVc3hPNTVpVzBmWlIxeDJ2M1o3RVFDWGRibnR2cGV0Q0VTOGZTMnhMWWhVRUVVUU14aFZjSFYvbjdlUGJySmx0RG1SSW12YU5zcWlsMndocGNWSzc2SFp3ZGY4YVptV2l2S0ozS1B1UDV4NzIvb0pXWXBHYTZJQ3pEWmt4TE95Q0I1eFMwZUR3VWFEbGV2eUFnQW9GdTJIRVpmWjU2ZWdsRHR3K01oZDg0eGlFa3J3czBGNVJWUlhlZTdRV3Nzd1FsTWI2T3ZhYzhqVTBpdHhsNk5ETFRVZzZ3M0ptWE9pTlhmMGRxcW9xS1RBMGVWRjBMaFBCeGtZeklVVHR1UGNlWEVBcFFXdERhUWI0elBEeStFWHN4SFBzVHJERUJoeGVOZUI3UHJucDNMU25vOTIrbUZtSUc1UXBRK0Z5RkZCUzhzemdCbCs4L0JweUVoaTZBU05UVW9RTXFVSnNIZTBNWW9TZ1BGa3VHSk5IcHhvYmk0YXRkZFRXSVZyU0ZkVWRuaWdGNm5UWlorN2hzUDM2ckNpNmNjTVRDTjRsVGJTQVZ4VEtZRU5nVlVFVEhFR0UzZUUrTCs0OXh6QXIrZWVUNzZLQkZZSU56U2FiRWpaejRBV2UvZlRqQXNoKzJwRktqQ1hwU3lWc2ZpZUU3VjdnaVZZTXllZkVFeER4M2VBZnJaVThJcHVoM1llNG9pUTBYVHBYU1IvR0tUWmdaYU5GN1hSWWVFYWpBYzQ1MXVzNjNyenB6Nk5zbjczZFE2cmxpdjM5ZlU1UFQvSFdNUm9NV2N6bUZGbmUrUXNDWFdGS081TUVDVWhvRUJFeVBhQnFoT1dpd2VRS004aFpWaWZNRnhPZ1ltMFhHQVBXZ2d1SzJCcEJZejBvTXVyS0lXVFJJRjRQV1MrV0ZObVEwTElLWXJjWUdVbTZQdGhJRjBKb0pRM3QwQlFuYlBFWjQrSVMvL0dQZmcreHd1bnhuTjNkZldhbkU0cHN5TnJWMGFwS0MraWN0WGR4d00yaWoyendudUFEd1N1Q0J4OFVEbzBqTGhCYWlhWFc0QktXMUlrOUw4SUFDN3h3K0NxLytTdS94d3MzdmdBdXg3blVCOGNaakFEQlVxMldJSlpNeFE5MDZ3WGFhMFEwbWl3dU9JTEZ1dFJlT0dqR2cwT3M5ZGl3Qkdud1lZV3pOVUZBcXp4YWtEbEJ5Q0s3R3h6V3JXajcxRzlzWU9PazVGdTlNaTc2UzRwbloyZUhaYjBnYU0xWFgvd0ZtcW5sTC8vcUw3alBCeFNBWjRFVnZ6VWFHVzhJVnRLa3BhTXZaQ3JTVW1RRWEvamFGNzZPcTRVOEs2anJtcUlvc01FU2xEQ2ZuejRFSmx2WEN1bFZhVXRhaEdVbVdwdlpwSUcxMGtEaCtZZnZmeHRON0E2MHFLc292VTVkaGNVUXJaYy96a3pXdnNmSEM4K0hCSEJvZU51K2dhQ1ljTnk5L09IbFR0c2RLZjQxMEJZbWJmN2VPaXFjMEs0TmJMUXh3K01jc0doZnBxSWxGQnBQdzkzMSsvemd4OS9qcGNzdm85YWhhNnlucEFYSGxoQ2tTNzByUWl6dzZ1enQ0djhkSUxtaWFUdzJCSlRLOEpWamYzU1ZWM2R6WHVkZldUQ2pic2V2VkNBRTBlV2dYV1BiQk9JVzFaS1NrcHdoQjhWVm1za2FGeFNOdUlRdFdwQWZPbkJ6VmlZVHRkQ0pjVVRoUkVQanVHVEdQSGh3bitQSk1SVU90VnRTelpmc3BzdnlwQVd6K1pCbVpiakJFZi96Yzk5Z1VKVW9GejlYSVlnQzY5WnhqTlNBUkNsUFk5dVREVXFpaTZyeGdsOHBjbFdTRnhwRXNON1NVTWZ6clVQWGFLTnBxdGdCMFNTNWxmTlU2NXJTRElubGIwQjBTVXpEYTRqamcyeDA1bHBpSDdaUXhVWEZ5STM1VXZabEx1MC94ZC9jK3p0bUxKZzFDOWd2WWIyTXpRN1hSTDIxYTV2RmV0cTIzU2hnQ0N3aFdJOUJHRFBtNTRvdjgrVnJYMEltbmpKa25WNDZvai9CRlFIdkhVRTVSTWZtS2FGeVNNaFJYcU5EMFMyV25IV1lQRHFvTkZXTldLSzJOa1MzQlp0NXJFUk50aVNMdGdDb1RKQk1zWGJyNUMwYjd3bERaRysxMXhnUGRaakZNYjVVWktha2NaRFBQZGU1enVYaEFkbE1lTjErSDhjQ3lYTWF2NEFBaFFKdkw0cStmbGJpQXNoK3hrTzJKQUxuL0xFclJQRzluL1BpTElpTi95K0tqTVZpaFFMMmQ4Wk1aL05VYUpXeGFocXVYWG1LUE0rNzFYKy9NMDAvVkhoNHZwZEFsQ0EwRGdrZVEwbFJHSFNtRUxWR2E4MTZ2ZHlheE9POEh3aGQ4Wm9uS25GYkx1aWNneUg5ZmVzL25tVnorMytQa2dWQlUyakQ4OCs5ektqWVN3RE5vNEpDNjJ6elR0bVlDSW5hcEx3SUxjbTVyZUhhN004bUgrWjlDMktGakF5UHhnYlBjd2V2OEkzZitGMmVmL3BWTWhsU3JRT0dBbU55NnRwMmV4MlptY2lNdG9VNFFxeit0YTZPakpnS0tCRjBwaUZrVENZemdoZFVYcE1YZ1N6VGFLTkJDVWFYMkVvaEpxZGVPUmJMSlVXbUdZMkhCRit4V0U0cFRMNDVMNlFVTTV0R3BWcEI4SjRNUXpWYjRTdkZGMS80TXN2Sm1qLzc3amR4MU96bU96eXdEN1pTOXRHRE9OWStoelpIbXRMbUVnd2xJdzVIbHp0dDNObWorakNJN1ovZmM3SVpQZTJCSnhyK1YwM0ZkRFZoeFJ5ZlROK1VKSUZjaUNUMlI3VGJqSEhlYTd2bklzQzBxVTNxSnhLQkNGSlFYZXFmNEZtejVON2tEaTljZVo1MUV5aDlTYVpLSlBRSzdUUW9wYVBIYmNxTHRJeG5TdFVBME9Cd0JvS1grQ3FYWVpxY29SOXp3QUduM0tlV0p0M0JLZ0h1RUYwRStwMnpCSHhxYlh6RUVWSnJNcUx0MWtiNnNObXQ5dnkzejdYM1hac05hYysvQzdFVFdyQnJmSENjVEU2eFFGVXRJL3ZhZmxRQU1PQU5ROW5saHI3R3ZoMFFuRVRIbE80MThVNW9uL0x5OEhncmlUVU1HSVk3c1kzeTJscXNiM0NTN21makVZVDFhazJXYVpUUlpEcG11aHlDRFFHSFNySUwxZTJvYTV2bjlMNDNKSWxMcHkrVnVPRFVIZzdzUHJieFBNY3p2TUZiVk1wVHJ5YWJXdUZlNWs2blIrbGF5d0JWM085MnpIcUI1N2t4dUVZeFZZelpnZG9sMlZncVJHeFBoazdhVi9GRTQwT044aVE3d0ExUjRVUE05TFg3azJsRHFUSzBqWDMxUkFTdElkTVpDazN3Z3ZNTnpzWEZvV3dTZ2lrTG8rT2lJNlNNb0RScGtSeGJsR3R2VUFFeXIzQU9uaDA5emVsa3dweTNXZGFybENMMFdMdFZObjBSbjNKY0FOblBmSndwNU9yaVVhQzFIKzIwNmJjZSs5TjZHOVBrbXdtZ2xNRTV4VFBQUEVlZXQybGNPbzNWUnpYVVZwSlJ1VGg0RjVuQ21LaVU4c0VoSWt3bWs0ZmVFM3Jlc0QvdENFazY4WVV2ZkFGakRLSTBWUlhaRVMxcU15SEtCa3FIQkNzbFJIMXRIS3hkR3A1OXA3bUNDUEphRkJxQnFLREVFSUlnQ1VoLzlTcy96ODkvNWFzTXNpSHJxWTFzV3JDYzFSTnZlUXFuQ3BXMks5WkdCZ0tvZ0Nod3ZxRVlqYUtWbFhKNFk3RmhSZDJzY1RhZzFKSlFHNGFEQThyUkFKTXBmRk5UVlJXRTZDbmM0Yjh6cDd0TnU0a0lxL1dLUE0vUVNsSFhEWmV2SFBMVkwzK0Z0OS8vRWYvOS9qK1JhUjB2dzBCa2dlbytrRDNyTHh6am9Oem44UER3WTUzVGZyVFhhVnZzUWdkNFBKUDVoS2s5eFNWVnRaSnRRZXhIbE4zK2JFY0FRa0RuT2I2eXRPV1o3OSs2UmZYOG1peVVxWXRYUERaeEVSbTZGTys1SDlsTDl6cm5FSzAyYlZlSnh6ckxNZzdOSWUvWVZoclFncnUwa0FBd0NXQW4xanZpMmNEVFY1N0dOeGFqRFZ1Mkd4OGpsUGRvaVFWM3Arc0Y5N2hQTG9hcWladVVCRGQwV29sYWNYbDR5TFh4VXhneDJDZG96OTBvendPMXhDVWpmNFhIYU1pMG9DVzZzb2lLV1JzWHdOcm9kb0FJeWhSNEUxaGhDZEo4NkxsbzArL2QvenJkZGh5N1NpbllNUU9lMjN1YWR5ZnZNU0tqcmpYa2RvdlRpQ1pyS1oyUGp4M1owdW8xdzVDVE0yYkVpOWVmNTFBZlVwODA2SUUrVXlaMVRyUnpWMWRSdDhrbWh0U2R5NHFQcThZTU9pR3NlRmJVV0cxQkNSa1c4VHJXWk1oRzU5dmFLcmEzcmJTTERiSFJheGFTYlZ5U3RRSEt4MFlmaU9MU3pnSFBtV2Y1NEhqQ25CcnJkTWRTYlBLV0YvRnB4NFdMeE9jeXp0NWU1OXh1b1RjUnk2YVMvbXhVbGVQZ1lJKzJZR3h2NXdEUU5NN3ptNy84RGZiMzkrTTNwTWtKMkdKbkh4VUJoVklHTUhFbGpXQ2RvMm1hNUpUZ3VYZDh2OTNjanYzcVY2Ny90Q09FUU5NMFhMbHloYnF1dStldHRZbEJsZlNqMHVTdU5wTzhCTnFPWWhLU0JBU1A5ajdWK1BvMjV3dnA1U2FCMkpDTzkxZGYvaVZlZWZrMWpDNlpua3hwbWlaV3NxZnRpbS9jVm1yMUp6VnJMVW9KV2E3UldhcjhwY0g2bXRxdmtLS2hNUXZXWWNyY25yQm1nWlNlMGFXU3c2ZjJLWGR6YXI5aVhTOVFKcUJ6amJXUjhTakw4cEhIVGhIUGxiZHhNaHVQeHhSWnp1UjBoakU1My9pTmIzQ29MekZielRlVWJzMVdhOGd0cXpTMXVaNzJkM2NabG9OL0l6Q3B0Z3BkUWxwRW5aeWMwQ1NWWnpleGRrS0t6MUg0Z081Vm9Iazh0K3ZiSEU4ZW9ET0ZNb0lWUitNYWJQRGJHdmpIUkh0Y29iZG9zSTVjR3k1Zk9vcExPd2NoTGRzNmdVQTdmcVJGbm9iRTBTbXVIbDJKYWVid2Nlb0VOaUY0Y2lWNDMyRHp3SzNKSFN6UmRxeGpPSW1YWkZ6NUdTUm9ycFlISE8xY1NtejJFNFE0WnMwcGE3WEFqeXgrejdNZTFqeklwbndneDd6cjduSXZYM0JYenpqUksxYVp4ZWNhUk1kQzF1U25KOWc0aHZkL0VsaEQyc1Z6L05IQnB5SkJINXVVTlk2eEhuQnB1TWRWampCZTBFR0QzUWo1WTVZb3BNOElIVWxPQUhHUU84T0lFVGRHejdBLzNDY2p0c1J1MWczUmJRRE92Mk5hOEpvQWJHOVIwSGJtc2xKalRVVlROTlJGd3pLdm1HWXJab09hOVk2bEdsdnFrV1dacjFpYUpTdFZZYlhGNjVDWWQ0WHV4dWhVK0p0a1NsN0ZYSUtUVGJaTVJVVkh6RHA2aGJIQzBjNFJUNDB1VXhBN0NhcFVWeUFYNk9sbkppNFkyYzk4Sk83cncxS3NEK1V6ZTh6dDJVeDdmNndKbTFjdnAydEFVNWdCZzN5UEtSWERiTXp2L2U0Zm9KVEJOaFlSNmJ4a1c0RDFPQ0FMNEoxRTAzNmRFd0ZGVGNCRjJ4K2x1SHYzTHJJTlozQytSWC9ieFZrL2pSQ1IySTVXS2Rick5YbGh6dXlYU3BteXpndWhBOXh0Q3F1VEhJUkEyd2kzNVI0Y0NsRSthaTFSaUppMHlORHNxSDErNit1L3c5WExUOU5VbHJxMmpNb1J1U2xvbkl1VHhGbFQvODRrUEQ0MlRZT0lSblNVRjNnYUpBTzBBKytadS90WTQxQ0Z4WmhZbUxPcUttYXpLUkllY09YZ0JrRUZsck01aThXY0lzOFpEd1lvQ1Vsbisramo3NXhqTUJoZ200Wkdld2FEQVE4ZUhOTTBEUzgrL3pLLytvdS94bi81aHcraURsYTdhTFZiUUZpREVvMUxSUnFiL1l1czllNTRMOG9Lbm9BUlMyY0prZWhQM0M3RVhBSlR4eWYzZXpLSnhCajJEdmZHZXVnekhFbVliVjAwZ1k4QU5hcGZiOTY5eVRPdlBrT293VFlXN3lNb05jYmdDRGpmYkJWejlxTmxBZHVNQnRBQlpwOXMwUTczTDZIdnRNMFdrZ3dHYUh1K2hwWkpDeVIvVXMySUlYdkRYWmg2MUlmVGtCOHBWQUJ0WU9FcjFycmgzZVlESEZHUDJtS3ZXa2VyUDRKRzBGeGloNmZNQVNNWjRTcVhWS01mOS9zOSs3a2k1SjdhTkp5Nk9iZVhEN2k3T21YcUZqUjRjbE13a0pJRHZjOVR4U0ZIWm85aEE2WlNVRm15UVdJVEgvNzBYaWVzODc0N25pRFhPTEk4bzNTS3AzZXVjWFAySGdXR3lya29Cd2l4dlhhdnhnblYzcEVodGpBMkdLNlgxM25oOG5Pd0ZuenQyU2wzc1BNcTFrbWNtUWEyQzdSYUVIa21tNWlLTFVQbXNhYW0xcFk2Tkt4c25ScnZ4SVc1azRaY0czSlZZSXhKcktxQnl1RXFTNW1WaUUreWlPVFFFbVVPTGpHeXFzdEN0Q09uRG1BY2VDVlVTOHZ1YU1TMTNTdmNYdHpqbVBzc2ZaemZ0REpSS0hzUm4zcGNBTm5QZENSWndYbDQ4ZHhCdmszamZJZ2xWampudFFpTlUwQkdaUlYzamsvWkgxN2pELytYUCtMNjFSZHdGbHl5ZWRKYTQ1cFlVTkszY2Zud1VEUXVvQ1JINjhneWlncm96Q0NtWWxrdE9ENisxNzNheTJhQ0ZJbEZiMUgxOU5NTHJUVkt4UXJrTmlUWnd3UUg0bFZ5UVVnRGZhcjZQeC9DUzhmV3hvbWhIYnpiUjQxNFEwRElLSG4xNWE5dzdjcXpaS29nZU0yZ2lEcXd1cTRKWGpEYVBHU1IwMVVWcDhpeURORXFWZTA2TUFGVkNNNDcxczJNTjk5L2kzZHZ2YzBiUC9vQjcwL2ZTY082Y0czL09rOGRQYzJOeTgveDJpdGY1Y2JsNTFoTksrckZtc1liTXExWnIydU1lUlNROUlUZ0dBNTNPVDA5WVhxNjROS2xBMGFqTWJQSmxIcFY4NlZYdnNLZi84T2ZVck9tc2xFVEdUdTdKUXUzRmprcW9BNUk2dXQwc0xQUHgzUXQyb3EyQU1oNmoraFcwK2dSRlRnOVBTV1cxRVZWWVA5eWJoc0tmS1lqTGJSOEFOOWVSd3FjdHpneTNydDlrNTkvYVFsQllWU1duQXFpVEVEYXlmOHhoMEJFMEcycU53UzBxR2lobGNGT09hWmt4Sko0YjNrRVVRTEJ0WFIrQjJRVnNTSDFrWXFzb1FsQzhKdFd2Ujh2UEZvRXJ4cnVyazQ0Wmdvb0xBMUd3SHB3N1REb0ZUa1psOVVlUjNxTXJuVjh3U092LzhlRWVFd2h6TnlNdTVNVDNwbmQ0dTF3ajN2TWlONFNBVzB6QkdGTXdlWDVBVTl6aFJ2bUNsZkxJdzRQZHZIckJnbDY0MzE4QnJ6Mk5lVFNQVWU3VTRSUUU2eERLOFhsdlVQR3MyRnl2N0N4TVFHdWsweHRqbHI4eVlDQ25DRURybyt1Y2xRZUVlNWJ4R29HWmNsYTlYVzZjVUc0MVZFMkNLR0ZJS0ZWbkpMYXkxcWNxdEZEWWVZcWpxdGpIcXdubk15bVRNTXlGc29TL1RwMnpJRDk4b0RkYkplajhvakQ4aEpaeVBCVlNLeTk2bXBKUXR1K3Rtc0trNG9pVXh0bUhlVzc2S0FpQVBZS1l6T2VHbHpoMmYwVDZ0TTFkZXI4MWJqUCtDTDJjeFFYUVBZekg2Mys1M0VEYXV0TzBCWkpaYVR5REtDUGhaTUd0Z095R2tWT29RWlUzckUvdU1TLy84UC9sVy84MXUvZ2JJNFMwekdPM3Z2a0phdTdMakdQNW1RVGM2aWlFYmYzRFVwQmxndno5WUpidDI1eXVuelFUWnA5Tmt3MEJQdkpBSWtzeTFpdjE1UmxpVWkwdGRGYVkwU2pmR0krbE85WHVteTBsbHRndFZXT1J2NHBjbENiNXpRYUl4bE5FSzdzM09CWGZ2SHJhQ21vbG81Q2wyVEdVSzBzNHNIb2tycFpJMGFqUHFUVktvREpNMEJoZllNWVFaV0t0VjF3ODlhYnZQSGVHL3pKdDcrWmRHd3hIWm04TUhqbjlDM2VPMzJmMTMvMFhlNmYzT2MzZnZuZmNmM1NEWlFVTE9jTFRNZ3dwcjJHK3QrL25RWElsS1paVjJSYUU3U2hYdFdZUEdObnVNTnl1bVIzdE10dmZ2VzMrSlBYLzVqS3JTRUR2NDdYWmF5d0IybGIrb2FZZU00d0hPNWZTc2Z3eWFKTlRmY040Vk5UVWliekNTNDIva3l3Z3ZaeVJRS2MwNkwrTXhjK2FTNGhnczdHVjZub3luUEgzK0hPeVIydWxMQ1hIYUtDUm15STUwVkNkL1FmZFE3YTRzOE95R29OVFFEbktiS01vL0tRZFYyeDlpdWE5dHJwVzdHSkVMbFFnOEp3NWZBSXQ3YU0xQUJwK3Zxb2p4RVNDTDVHNS9EV3JadXArWEJpMjBLMENVWUFrMEZsTUJROFBiakNKYjJIV2d0Szh0U3k5K045dlJOWTY0WTdxd2svbnI3TE85eGl4b3FHaGhwTE1HQkRiTU1keUdoWWNjb0pkK3hkWGxXdndPNkF6SU94ZVRlS25EMGIvWGJjblJSREVnTXFGbDNDdko2aWR6UEtyT1JBSHpGeFN6UUtHMkxYUko5R3NaNHNOckdxaG9LQzUzaU9vL3dTcGxMb1VHS2N4aTRkV1ZiZ3ZlMjJiS1BoNzQrSlByR3hMWWlsczc2ejJyR3djMjdOYnZITzlDYkg0U1FkbjVZcUNBZzE5eXdVOHp2c3NjT040Z2IrTUhDa0w1SGxzZE9pZUxWWmNMVWFZWEdwUU5la0FqTjZJRGJKS1lJaWt4eTdndDJkRWRkSFY3azd2Yy9NVDZqUXFmaHdjK1F2NHRPTEN5RDd1UXJWbzBqODl2UGRZQkdkSnpmaXpMN0FQcjIybDVyV0ZEZ0MzZy80emEvOU9uL3crMy9FdFd2UFVLMXJNak9LbGUxTjArbmx2UGNZWXpER3NGNnZOejZVSDdiRkV0VlhJUWlOcTBFSERKN1ovSVNiNzcrRFM5cXVXRGpFdzBxSm4zSzB3SHk1WERJYWpRakJSUjlFWXhBdjZMNVFvR00vM0ZZclF5ODl3QlZVb2lWaWViNlNqVHdnY3FFWkFoenNYK0VMTDM4SjNlU3NWbFg4bTFMZ1BGbGVVT1E1MCtrVVl6UmU0dUM3aWMzMk9CZncxTmhnSVl2NjJPUEpYZjdwZTkvaDcvN0gzNkR3TkxUT0VKdlJQaWJvREJVci92WUhmODM5Ty9mNS9kLzk5N3p5N0d2NDJ0R3NISHVqUFZiTCtTT1BuOWFhNlhUS3p1Nlk4WGpNeWNrSjBqUU1oME1hVzJGWGpxLzkvSy95WjYvL0tSSVU1VEJuTll1T0ZkNGwwSzgyNlZzQkNpa1lEM2ZJVlBadk5vZDB4VjdFaVJRVldOZHJmQklhdE5aT1NxWHFlZytCalZ2RVp6Y1VXa1dHM3VTYXBySVlBbG9ackxmY205eGpaTWJzRHc0d1pEUXVwbmFWQnBOYW9qNHEra0JXQXpyZEMrS2l2R0J2ZE1DSm4xRFZGWjIxVTgrcFFJSW1OcHJXbE9Uc0QvYnhsY01VbWxBLzdFN3hrNFhIaGdxS3dQdkwyemlFT3JsVENHdzZaU3NOUWNkT1hzV1lQUm1nTEdpeWJkbkxUL3J0QXVTR2xUUUpvTm5rQnR5Z3NzaEs0aUVZd2F1WWliR3VvV0pGV0FwdUVualp2SWgyc1docHl6d2hSWnV5VjhGM2RubWQ3Njg0ekZDWVR4Y01CL3M0UEh1NysvaVRkOUJrV1A0bE1Cd0FBQ0FBU1VSQlZHejNXUjFaUVM4cmhxYWs1TG45WjluVk8vaTVaOWZzRUNyUFlqRm5kM2NYRjdZQjhDWjZrb0tlUkNpa1podFdXeHJUY1BQMEZtL08zK0lXZDFqVDBCQlFSRTlla1FEZXg1YS96R21vc0pWak1COVFqQXQyMUE0bTZxalFJZFprdFBzUk8rVkZRcUU5YmpGVDFnZmJpbHdLbXNXS29pdzRVTHVNR1RKZ2lLQlpNT2ZDcytCbkl5NkE3S2Njb2hUQmg4N0N5dnVHTEN0cHFuNlhsVlJzRXN1R2svVnNPeXhzVnJmYm5XdFNBa2pBV2M5MHV1Q3JyMzJOTjMvOGZRWkRRemxVTEJZTGlud1VpeTNTNkpRcGpURVplVjZpVmNaWHZ2UlZybDk3bHVlZmU0V0RnOHZvWUdoV0R1VXpJS2V5elZZeGg5WWE3MzJuSzkxc0UyZTJqN2hQUVJEUnVHQXB5NExKNGg2RGNjbG9uUE8zLzkrM2FGbENZTHRUazNPMGpIRWdiSndTd3ViM3lQSzJWalRuNllXMzA4UGIyeGQvcit1S3Npd1pqOGRwSXFrWkRBYmRCTzE5d09nTVphSTM2OHJHbnFWbFVWRG1CWXZKbkVHUnM2N1dESGJHek9zSDlIWEtQazB3SU9SU1VBZEx6b2cvL1AzL3dISldVYUxKMUlEZ3dGbEhsdVhnQTlWNlNWNUVzQkZaalRoRG5VMTNXMnRCQld4b3lJd2dHZnpwdDc3Sk96ZmZ3RkZocVhDSkM2TjNoSVRZaUNCbmdLUGl6Wk1mOHQvKzZaQ2p3NmZZM1RsQWkrVjBOaVUzbTMySjFld3BIWnpZRjJjRHc4RUExemdXOVlMYzVJVGdxZGNObVNwcDdJcUR2VXQ4OGJrdjhmck5mMkkxWFlLSmJMc215VHBjdGZHNjhWR2VzVE1ZeHc1U2p1UU84ZENwM1Q2L1o2Ni85bWtSc05aVGxpV0x4UUpsNG1SblE4TnBmVUxiOUxWbFk3MUw1d3o0UExBeFF1cmdKTkEwc1JXMUM1NjVuMUV3NEIvZi9VZSs4dkxQc1ZqTUdha2R0SWxTbXFxcUdCUWwzallkNEl1T0JsMjVWdng4clZpdVY5SGlLZ1JzM1VTcGdmTW9KN3p5OUV0OC83dmZUeDYyQVJjY1pBbHhhYUQyYURJMFVYSno3ZWdxYWhvWW1KelQ5WVNpTktsMTczbmpDNTBlVjZleEtJNng2Um8xVVkvOS9za3Q3blBLZ2lxT1dkNVRhbzExRG1kTU5IZE95dEM5d1E1aDdWQytSS09wZkwwQmtJL3BMSFpldUxYRHJlTmlTVktPSVRwMU5IRWJCMEFUYVB5Y3hnQk9SVGJRV3N6TThkS2xLeWdjTG9UTmVaQmVmVUxmZjJvenJFWHR2dkk4Y0RYTkNFN2NsREF5bUZGQmZqSmdTVVZBRVpSanF4T3diN1B4QnRVWXJ2SVVRMWV5cDNmSTh3em1ubHd5eWxFWmF5VlNwaXFjYVJIZXlodU1pUjNIbHNzbCt3ZTdyS29sUzdkaTU4b09kMDd2OFByOGV5eFlVRk5UdHc2N3FxTExSSWFHVEVBSFRjQXpaY0wvbVAwSVZTbCs2ZGxmSkJ5bmNUOUVJWUo0dGNYYlJPczJGWXZmRW1tQ3RBVnFDcnYyN0IwZWNPZkJNYnBRL09wcnY4anQ3Ny9QblBNYXpWekVweFVYUVBaekhpS0swV2lYWC83YTEvbmlGMStqc1F2eVFqQlpCRGxDZ1hjQjUxTFhKQjlReXNRZk1VeE9aaFRGZ0NJZkl5SEhOZUJ0Wk1waXd1bkpWcVFpd213KzU2bXJsN2gxOXgyT3JveW83SlFmdmZWOWJ0NS9tNUFZa2s4cmlxTG81QVErcmY2ZGM2bFRqcUxRZ1dXOXdOWTErU2pqOE9BQUw0N1paTXJ4bmJ0YzNqL0NpV1ZsVjFBMzFLRkJkSnlzak9UVVlSbTFmdWdFcmhUWDltNHd5TWZrVWlKT0k4R2dndlRBV3J0UWFaUEFNVlR5azVUMHV5Y1dKSW1PYVRLUDQrMjNmOGpkQjdlWitsTWNUUWRpSHlySXdPT0NKelo0ekhBb2ppZDMrZURlZStSWGNpQlBkbFdLTGRzdmVQai9aeVBvbG85aFlNYTRwdUhaNnkvd3ZYZGVSeG1OdHc0dEJvL3JQRGZiM1ZaQXBqSXlaZEJwRWZOa0VZdTlXck16SDZMSnZ3MnVreFA0dUtubnZQT3pEbVBiczlCYjRxa280WEZwLzJzcVBqaSt3L1hSZFp5M1NKb3l0S2pVd09Vbi85YjJQVHJBUUpYc3NNT1V5WWIvMDJ6czJFTHNVcWJRSEhDQUNRYXRCZTlKMHBiSFJ3Z0JIL3pXQWhlRUlCNnJIY2ZMKzRrTmRiaFFiOEI5ZkhOWFV4Qmhwa2FkZHpGOGpOQmVVWGpOdnV4d3dDNHo1bFEwUUlQeUJsODI4VGowUUNUYTQ1eW5saG1MY01va2U0QXR5cGcxQ3lFK3RndDdpQVZRUk9aVDhKMTdsVTc2WHpYTVdMbUtXbUMxcnBsVTgyN0U3YVFlZlZXVVJOSkQrZGhrNVhKK3hLNGVranVOMUVMMDVZcGZvcFRDU1N5Q2JmMTBWYkxaNm54OXJVTWhtQ3lDUjYvalBweFdVMjVQNzdHbVlrM0RtcG9LdTBrczl1WWRDOWpnT25aY01lWFVubks4UEdGUDc1SGJXRW5STDd4RjJxNWcvWVBia2gwdWFxT0RRb3dCcHlsOVFRaU9kZDF3eENXbXpGSG9XSGR3RVo5NlhBRFp6MjNFRzdScGF1N2ZXNkMwcHh3VWxIbE9WUzFwYWt1V2pWQWhqeU9hOXoyZ0Z2QnB3TGwrN1FYcXl0T3NhNXJHUXpBb2xhRWxOaU93RDJra2Y3SUlBc05SeVhSMnd0NytrT1Zxd25BWC91Ni9mUXRQUldjaUNYMUo3eWNXclF0RDY4cVFLZDFOY2twcjZ0V0NmSkNSWjVxbG5YTnk5dzVlUER1akVUZGVlSXIxYkVVUVFSVUJWU3JFd3JKWlVsUGp3cHIyMk9sa1o2UlF2UGJLYSt3TXhxaW1JQVFWUWF4dkFXTTYzcDNwZVN0dE9DOFVTZ2xCUjNOMUo1YlgvL1c3M0p2Zm9XWVZXUi9PdlAzTVIwVm1LQUs5dXc5dThmWjdiM0Y1L3pvRG5jZFd3aUZOVHVlQzE5QkxQVXNIMUVNSHloV0Z5VmlzSzE1OThUWCsvTnQvUXNnOHEvVWlGdjBBN3N5MUpZQlJCaU5aQWhSUEJtUVZtOEl5UXB4d1d3c3VTNU1ZMlphKzdiM3ZzNjBuQURhaUl0K2lsSjRUa25OdGN3YkhqOTk5azZ0ZnVVWmpJNXRLMEpqRXFuYWZsZkJMdSs3b1MwRzJ2alAwZ0t3WFJ2bUlTK2FRaFYwZ05Kc1A2azV0dkw0VmhpdWpxK0NGWEdlNE9ycE1mQlFiMlFoa055QzJMVlp6T2xCSnpUdW50N0c0Nk9SQjFQVTNiWGRXNzdxMHQwYWlybEtSQ2hHZjdDTFFBY2EySUdSN3VPeHBRZ09XRDJJekxWZEJGV0RIZ0YxM0JpMng3Qlowc055djMrZi9ldWYvUlpIM0lGZzdRclJ5SllobGRJcTJ6VUMvK2lGMlVqTkFiTFN3eHJHS3ZkYkk4b3pHTmoyOWN2dmhPaFdrNWp5MWQ0VmQyVUZiamE4ZHdTclFDdEZ4OGVERmI3R3hFTytkRmtBNlc1TmxHVm1tc2NIaWpPQVZISzlPdUZuZFRrdnR1Tnp1UUd4ZkdVZGtpRDNRZUkvUVlGaHg2aDl3ZjNXUFlUYkNxUXdqa1lWWFFaMTc3N2IrM2tFbGI5a1F4d09URnpnSEJVVzhMbFlUbmo1NGluZFAza01qbjF6emtvdDRaRndBMmM5MUtBNzJMekdiVDZqck5kNnBhSWp2b3o1S01jQTFNYld2QkZScjlCeEM3SHNkQXRQSkN0dDRnbzFEbHpISit6VWtIOGtuQkpiT05aUmx3ZDBIZDdtNnQ4dDhNdVBtbSsvdzVsdmZSK05UbjZOTmFwZjI4Uk1DRXM0NVFnaWQ3amZnT3A5Y3JVRmxEU3MveDF1UExvVDl2UkliTEl2RktjZTNiek05bnBCcFExT3ZvLzR6ekxsN2NodWpvWFlOU25sOGlGclM0Q09rZU9tRmw4bDFpYTJJQlRZK21jYW5sTDFQK2pZNmZWZmlaVHZGUnRLY3BYU3Y5OGxZM0RmOCtKMGZSWTBkRnFVQ1c0VzNaOCtsb25PU0NLNWg2azk0LzRPMytkclAvUm82aTRBbTJENGowZit3ODA1UUxMeG8wWTRFUVd4VVFGNjljcFhMbDY3eTlvTTM0eWY1emJYWWdTd2ZPZWhNRzNLbFVWMzdvWThiYXFzVFhVamcyZU53b1pXMGhQallncnpQQVlBOUcxdDVsVFpOTGkwcjYzbnY1RjFxdThZRWpTaEJCRVFaWEJQbFF4K1ZsajNyKzZxOVlpUWxsOGFIM0RtOVRYWDJEUjZDRHluWmJyaHkrQlRpZFBRb2JSb3luZUhkbzcvN3JIdEtlNzRWQWlLY05uTnVjWWVHSkdYd0VUQjFqaGdXdW1JNEJJdkRDMWh4S084ZlgyUDdxRzFMR3ZiU2pMbTZiOUJOU2JuWTRXWnpsN3M4WUdGWHJFN1dPSW9FTXowRkVvRnN5cFNzT21tUVQwQlc2TGhKOFpGUjdNckFmR2NKS0NHMmdjN0kwR2djcGl2NWJCSW42NXQ2MnhJbWtMeFk0ejI3enk0NytZaWlNVWdkb24wdHNaRkRsSHBFRTlvV3pKNjFBNHVPR1NIMnZWREMybGVFekJOeXhlbGt3akduVkhocWtzdEFmODIrVWR4RmlKN2EwRHJ2cWFtWXNlQzBPdVg2b01FMXhaazZnblo4YkRNU3FjMnllTURoUkxBcVFQQW9VZmpLWTRKQkJjK3NocXU3VjlBbktpMEsxRU9MN1l2NDVPTUN5SDR1NHB6Uk5KbjFIUjlQQUk5SUFWNmh0S0lzWW0vNnhhd20xMlUzdUVzU3Y4ZUtnQVFrR284UmhTcE05Q01OMFQ3SCtUaFF5Uk5lUWM0NVZ1c0ZCNGRqN2gvZllyQWovSi8vMi85QjNjeHhySWhUN0ptQllrUHkvZFNCUlpabEhhaHFtZ2JubTlSa1FPRzBReFVObWRRY3o0LzV3Yi8rZ0gvODNqL3o0M2QrekRxc01SaE10QWVub1NKZzBRZ3FEeXpkRkdpNk5LcjR5UHZ0WlFkY3Zud0Y3OEZid1hqMUVPT3BRZ3RtNGVGemYvYi9VYnRyUTgyc21uRi9kaCtGZE5YWndQWXhGTlZTVWQzeERTcDJFOU0wM0h0d0Z5OE5qbWhkOUZHalQ3UzFxeElWRkhYbE1MbkJrdkhDc3kvd3hwMGZBZ29YSEJyMWtLeEVpTklDTFFaYzFNWSt5U1VRV1RyWlJsZ1NiY05jU3RSK25tUHJGdW9WV1JIQXVkZ01Zc2FjMDlrcGVaSEgxcUpCVUszOWxWSmJUQ3c4ZW1uUkZsRkJQT1RHRzQ1R2g1U25CVE1Xc1VMU25YMVBkUFRZR2UvaGZUeGZqYmNZOWZqQnA5T0tubTJmSGNDSzU5YjhtQW9YVThUYXArdTl0dytKQ1kyTmtpMFZEWlZ5REpSUGJYUS9malFLNXQ0U2pHRE1rQ3RGeWVId0VpL2FaNWl0cHl6ZGd2Y1c3ekZqd1p3RmRib2ltM1QzTnRHRkdrbDFCRnZac1hRZWc2ODc4T2RDeXZ3VHo0R2xSdXQ0ZElOejBTa0JFKys3MW9FbEVNZW9OQXhuUVNOcFpEc3FMNUVIalRTQjRLTU15S2hVM0VlMDdnbzlSalpJek9pQjZpeXgycWJFU2dtTnJmRURqYzg4MDJaSmphTW1Ob2QrQ01DNk5ubGdJb0JPNDZIWFlKMWx6WUo1TThQcUp2clJTc0JMbjQ4MjZmdGJZSitLaXBYSEtiQXE3bnZ0UGNvSFRCQzBGVXlBY1Y2eXk1QWxpeWM0K3hmeGJ4a1hRUGJ6SEVFbzhySXplcS9yR3UraWJrcUp3VGFlMHVUcHRVUmYxZ0FCMTZYaGRPcmlvMVFzNG1xMW9rb1pqSWxGV2srNGtSUkZobVFPYmVBSFAvd1gzbno3QnppV2hEUjZuanRaZkVMc1dGdklacTNGT1lmSkZNUGhFT2NjZFRQaDNRKyt6L2QrOFBkODUvWHY4S0I1Z0tBb3gwT0tKckN1Wm5nVVRaY0V0OVEwdUxvQnNSU2pqSHJ0VVNveTB3ck5jODg4eTdBYzRCdFA2c2tZZHpmRTlHL3NUOTZYYzNnZVJRdTFCdmZXT1I2Y0hGT3hqR2JnWVZOUEV4bTV2dXNDc1VpRCtFY1h3SWpIQjhka2VVcnRhdXA2alhZRjJVZDI4VTFNYlBjZDBiWXNOQTZWYTVwMXpYUFBQSWY2dHNLcjJIcjBvVFBmQXFDV1FZMzlKWjhvSzdCZG1PTkJ4YnJsWGpmNUNHWS9ZVW5MSnhzOTZObnVaMklsSTJid3ZILzdKbnRQNytGTWxJdUVjMHg4eitxcyszRzJwVzNyNzZrYXo4RndqeUhGNWtvS2JGM1NnbWJJbUVFK1FLcklZaHBsc0Q0YTQzL1U2RGN5OGM3Uk9Ndjd4eC9FdERXT3p0L1BkenhBWlBHOFJ5ZW91SFkxbFdwd3FrQTYxUC94dytRRlRiRDRLa0xJVWh0MkdlTHlBNnh2K1BMT0sweWFPZmRYSnh5dkp6endVMDZaTVUxVitvNDFEdHRKQnpRNm5qc2Q4Q29RK2o3VDIzSnpIREIzRlZBaHRJV3pQdFZIUkxhVVFPZDJvQVBrU1NsY2tITzBjd1EyRUt5TERpNWlVaHZuQ0dKOVltTjlXcjBvM3o5VzhYVmFnTkFRUkdORGplZ0JsVGltMVNKcVgrazVXYlFiN2lOdzBlbmZMaHVsWXZHV0JWYXNXYmg1OHFPMUVWQ2prOWV1OUxKQ3Jhd2dacm04c2ppbGFKU0g0QkhuS1VRakhuemp5WldoYWlvT3l6M3VyTzk5dm9lRnoxQmNBTm5QUmZUQVROTDJ0R0d0eHlYTG5NZ2tHb3JDWVBTQTNaMEM4UWtzaGxnM1MyclBxUkpMNVp5TmxlRzJUcE8rUW1sQmlVY3B3VDJSS2JSSFpRb3h3bncrWXpJNTV2LytmLzRUV2dWcVg3UEZMbnhLS1YzbjNLWlB2QWg1SG9ILzdkdTNlZVB0MS9uUDMvcmZxWmwwWHFNT3ozcCt5cVkwSkNmUFNuQnhzaFR4MFdsQVFiV09sY21aaVpwRUJiejQ0b3VBd3RsQXJqVGlOaXpXQmlqMDliR1BEMG0rWmZjZjNNTVRVQ3JFT1Z0Nm41MmFVQVphOWxkSCtVSUxlSFVnV00rU0JkWmJhdHN3MENYQm53K2x6K3JRem1hZlZRSXlvakxBWVd2SDVZUExEUElCODNwS21aVlV6VHE5K2VIOUVTL0prZUVKY3J0RUNZUDNLWHZjK3g2UjFuVHJ3Njd2Si92ZW41VTR0MkN0eDh6NkVDdnEzejUrbXhldnZJZ3ZMRDdaenVsSFdPdHRkMjg2OC9FSmwyZ1BZZ083d3pGRE0wVFM2ZlN3WVFGUlpHajJzcjFVaEtwU08reVMraVBZKy9YZFRJRGtOT0p4MXJLaTRyYTlGelhDRXNDbVJnd0JsSUdRRWlZNlNGcFVlZGErcGxZT0t5a2pJWS9TcUQ4NnRJZmNLd3F2Y0Uwc3RDVklhanBSUnE5bWxYSEFtT0hnZ0N1RE5SVVZGVFdWcjFub0pkKzkvOTlac0tiQzRvbGpadkErZFQvMFlIb0wzeERIRGVrdEZGU1daTURlbzRKQm5NZjdPaFV4eFJObGlHbzBBK1JwbkNncE9CenVZWmE2TzY2dDM3Y2p1aFNJSWpHeVNha3IyMG9GUlR3dHpqZUlxRmE0UysxcUptR0dheStCL3IzcFUrY3RWR3FyYkdKMmlDYXl6VHArVHhOcUt1b0VaQ1BMcWp5MFF0dllBSUZPYWhFYlNpUXBrWXJNck1jampXZVFGWWkxWUQzbEtPTmtYWEYwY0lpNi9iRk8rMFg4Rk9JQ3lINkdvKzFXc2sxZjlGVHcwRlg0WmxsR1VSUjRIMVBrNjFXTnFFQ21wR05YQW5HUUV5RVZkY1FPbGkxcnBTUkNNeDhDM25vYVc2WE9UdTJHaERTd2gwZTJSMnluVGk4ZWt4dHUzMytiOFZqenQ5LythOTY2KzJOZ1RaR1hyT3Y1aDZjcEF4Mjd0N1hPYjFObmZQaEUrc2dJS2xwWmRWL2owVnFoVGNCN2k4VnpNbm5BMy8velgvR1gzLzFqUE1zMGdRVEFic0NteEJhYWpWdmptd3FJNmJhUVVtQTZCNWV5KzFwSGZacENjKzNvR3NwRkJpQXpCdHZFYmRrd3NXay92WW8raUVIaEpURzJJUjdiSUJ1L3gwQklDeE5GTmEvSUdKQzVIQWhrU2hNaVhVSjA3NDJGV003RmZXa1ZkNHBBS1FNQ0NxSEF1QXd0a0N1SlRaaTY2ekR1ZDMvUkVZaTZ1c2lJSkNZMUpVTkZMRVVlL1NxVnpSZ085OWdyZDFuVVU3SlNXRnU3WVhCNzBvUllmZXhTT2xCOXZQTk1PbGFwemE5S3pLNEVqMWF0SnJKM2JmWDNrY2Z4NEI4ekhvZUhldGYybWFjZStaRVB2YWJMdHZlRUcrMnc0WHR2RXFoRGc4Wnd5aW1yc0tTV0JoRXdLa2VMN21RM3NGbHNLZGdxd2pwN2ZrSi9veHlNeWdGRFZaQ2pOcFhnQ1I4YUZBV0djVDdFT0lXSWhoQ2JLZFRMVlllTXZDVG12SGM5dEUwclFwS3lpQVluamtZc0ZTc1dMRm15Smh2a3NGb2xWNEM0VFNxSDJxWlV2S2lVcVlMR094cXBDV0lKS3VBeGJEeFEwNzE2N2xuWkZEajJPMnZaZFlYV1FxRXpSR3RDc3BRRFFHY3NaMnQwcGlpeUFZVXE4Q2FtNnh0dldjcUtLeTlmNGRRdm1jNG5ITThuUEZoT21LWTlzMWlzZGNtYjFoR0k5bXBkOFpWQTB5YlVBbmhxb285MXZCQUdaVTY5cmpFOXRVZVR1TjhTeFo0cHliUkc2d3k4eEdXZmQvZ1E3M1NsVkJwUCs0NEY3ZmxLYzRBU3ZGZG9VU2lWb1lLQktsNGdJMG9VZ2cwbHdUWUlEZ09ZV0syQlFtTW84WGdXeE9ZTHVvNXNjRW5Kamg5UU5EbVphN2Noc3RhUlhWWWR5OXg2eDZwZ290ekZwZjBOa0hsSHJqeWlHNXlOL3VGaDdUbmNPNlNnb0daMVVmRDFNeEFYUVBiVGpuYkU5NEV1MzlzKzlqeGtvOGFMTkptbktWWVVJUnBwQWkzZzlEMGYyUmlpb2hMSnVzU29LbEI1bWltOFEzVXpvK29tT1o4bUJYK0djWTNEcjZBVWFCVXdwc2JhNk90bmRJNzNVTmNObW93c2kxcmM4WGlNdFpiNWZFb0lqaXpYR0tNeGVjRG5DMXd4NVp2Zitrdis3Ry8rSkFJVVloRlRDOGE2Q1AydGlLSFR3TnE5cExQWDJVUTdzYlVUVEdSb1lnV3lGdzlwZFI2OHhBSWtuNmdCOGRTMkppODAwOVdVMFc3R3lzMzQ1dC84Si83cmQvOEtqVStGVTI2ajVXeS9PclRwNlpBbWdTUU5TS2ZUcmR1Tmd5WVZQQTNZNGNiUnMyaHJLTW1vRit2WXVsZUF4UGRDUUZ4aWdsTC9kNTA2MHpoYzFDNjJncmJnay9kdW9KU1MzL21sLzRsdmZPM2ZFV2dJWXVOVlpPUEU2bm9kZ0RhV01yRlY2MllDVm9oUGRtQmV4NW0rNThrYTJqME8yenltYW84N0VZeUhoRWdEaWx4N2JMUEdyelhGY016MS9SdmNuYjdQYkRsTElNV0RNMmhSYVFJRDI2d0pCcndOYUFsZDk2THpmR0xiNTFvV01CM3k3bmV0QTh0cXhXaTR4N0plMFZRcnNuRXNKc3N3VkVURHBhNmdZd3NFcW5NaHk4ZUsva1k5TEhQZXZDeHNGMjUzakZVQ25nOHgzNXh6SC9WVHpBbGtDRW1xNGJmL2poRXFXNkVJZlB0SGY4L2xYenRDWEk2eGdNKzNnR3ovK1BlUGRjZk9welZPMXlnRXdhaUM5YUxtdFJ1djhPWmJiMFJFMnE2TlBSUW9OSTVYcnorUFhWYUVyRUNaakdiVmtHRndQdnFoeG52THB5OEptTlJ4VHh6a3BzRGpXVFlMMUZoWXV5WGw1WUovL3NkL29xSmh2bHFoaWFrRnFlSlhWK3UwOFZwUjZ3eXFESXZpMXIzM2VmSFp5NVM1cGw0c3lZczltc1ppblNPb2dESTY2YXZqT0tTVVNYcFFoUW9hN1UzY3JpQ3hPNXAyTk1yalFrTW4vRFNTRHBmQ0RIUTZwaEZkaVlzRmlnV2FYRFF5ODF3S0E2dy9JT3lDT3hDbTFZTGJwM2U0YSs5emk5dXNhUktUQzk0b25OazBzT2txL2VMNkFDVU9JNFlHejNwZGt3R1pWMGxZb1pEUmtMQ3dYRE9IRE5ZT3JNS2xBakJINkU2MkE3QUJMV2FMaFpVZ2NjeFZGby9DU1k0WHFCc3dNc1l1UElkeXlCODk5WWM0NWZGaVkyWUlqOFp0ZGQ2Szk3MUsxN2VQdXQ0RWtMWFhHR2ZJRmhuYUc1VDNLS21UWE1Rakx0NWttNjZJU2J0ck0wcWdUQXNPUTBNbUM2eXFNUU9ZcmFZYzdCNFNtcHc5OWxuUkpNdTBpL2cwNHdMSWZxN0NiejlLNy8raG5SM29XTnM0NWpqT3QwN2l6R2M4L0EwS2o3VU5ybWtnYUZTbTBXTElWRVlJa2EzWjNkbm5uWGZmSXNzMDE2NDloU2hQM1N6eDNqSmJubEN0WnZ6RlgzK1R2L3pXbjFINVJXeklrQ21xZWg2Mzlnd1R0cG5sVlpmS2FuZXB3d0Y5TnFqM3JoQmdTNmFWSWlnUHZoM1lWR0lSNCtTZnFUZ3htUXdxTytmN2I3N096VHR2WWxuUTBDU200OUh5aXJCMTVIcFB0cURJQ3hwTnFZWVlNUmdmNGJuMGpuYmJ1bEhTUG1nZjFhMnFlMFY2bEM2THVuWGNsRThka29JUVF0RWRzeFlFUzJqNUxIQWhkQUNvLy94RGo2MGRXRisvZGs1c2R4emEyRmxKOG5JRWp3a0Y0Z0tGSHFUaU9EYmd6a3NzVkV5Y2JnZ09KdzV0OUJNMzFvbXFrY2drNFZ0WkRZamYyTk9mdTIvOTQvd2szMy9PUnovdVJYSDZmbGdTMEFleFo3SHdsalNsZCsyMTU3SUR2QzJ6bnpJSE5zUUZqMGFZdVRuM3BuZDVmdTlabXJsRm45Tlo3ZXp0cFhwRFRuOC80NVVUajIrR1pxQUtEQ2FxeWJ0MGdtQVFScFNVS3FjSWVmY05yZk5BdCtTUytQbjlUbU1TRkVZcGFGdnFhcWg5VFNqZ3p1d3VFNlkwV05vT2JUcDl1aWN4c1lxNFlGUng3SFI0WnN3NG5oNXphWnhSNW5uVXRrdE9scVhGWklpTVpKc0plVndFa1Y0RzVjdzRUWFFtYVJjdjdUNXQ4S0lndGNmNFdHQ2xpd3hWYUE3eUhRNFBkM2ltdWNxcjZpWHVyTzd4N3ZKZFB1QU9WVlBobTdpamFnQytUeWRLdXQ5RGswQmhPbSsrZFVSUTBVb1FSVUZHN2hRNlpYVE9HMWMzTFBURDRTVjlwclNacGZpOGNTcEN5aTc3MEhyZit0aWRqTkM1WDhReFVUN1NZakpLQmJhM0RlbnA4SVBnUlcvNTdBb0JVdEZub3h1YUxQcHFJeG9WQ2pJS1BpOFNvODk2WEFEWnozTnNwZmY3QTJRYkhsVDltRGFUandacFNnWTRzcVN2TEVBeWxJbmFVZy9jZTNDUGwxOTlrZmw4eXAzam00eDNCZ1FxNXZNWjVVanpuLy80di9CMzMvbXZWRzRCT0pSV3JLb0ZZQ25Ma3ZWNi9janZmN0pJUU95aGFNR1pSMm13dHNaa0daUFZLZC81enJlNWRmdjk5TjcyNThtaVpiSkdvMUVzck5zcW0zNTh0R202UHJKU2FUZmEvMGxhRmNTSk1QNUJCUkNkSUV6YTViTnNtbmV0T3BCekgrTjgyakt1MjQ4UDdlZERmNWZVR2xhamxTR0laMUR1b0REZ3E3UVRNVDBaa083ZDFqdHFheW1OUkszdkV3TEtWamNaUXNDb0xFSVc3OG5KaWNxL3pUSDZ0NHdJU09NOUdwTXdFVHdtL0xLOVFBaWN1Wjhoc2xTYzY2VjYzdVd6QlNwNnZ6L3lVdXY2eWNNaXpMbDUreVl2WFg0SjUyMWMrNTNEQXY5RUVWVFM3US9ZWTVjUG1DV3FPY1RGTVlwZHh1VGFrSlBGMXNBOVA5aDI2MVVnK2hPenVYNkJybFUyUmlGR1U5c1YyYTdoMWx1M1diQk0xMjlLZ1BXM3ExczgrSVQySXR4ZnN1RHU1QzZYOHhFM1J0ZXdKejVLSW95TzIrVmp1MjB0a3JxRTlZQTFIcTlzM05iZVVrU1N0MmxNbmp3ZS9FSzdPRlFZRXkzdFFnZzBEbFFOYU1OQURWR0RuTjNDTVI2UDJWMk51VFE5NElQMUJ6emdBVFkwMkdYczdlY1VZRXdhRjNwbGpoSlBnMlZ6alhqdk1RaWxqaHJlSndwcGZXM1RRdUtjNjZnRnRFRThycjNXMGlHSzdnTGhveDZ5RHczZkxTRFNkeEwxdENxQThnRXhVSWVBeTRrK0JUbXNqTUlteTdLTCtQVGpBc2grcHFPdm05eE81ajc4M0hudjlXbndlc3pyUGlRa0tKQVNvOEg3RU50M090OEJNeEhQLzgvZW16MUprbVhuZmIrN3VIdEU1SjYxVGsrdk05TXptQVVRQUpLQ0NJSWlSZEZrSnBsSTA1UCtCWm5wcjlLYlpIcVFVVEpLWEdDaUJCQVFRQUFraHdDR3MzVDN6UFJTVlYxWlZibkg0bjZYbzRkejNjTXpLNnU2cXF2QkhvN2xhYXVPekloSTM5M3ZkOC81enZmdDdHN3g4T0EremNTd3NlVlpySjZ3dlROaGVmaVkvL1YvLzBmODBWLzhNWm1BUlhETzBBWUZ0S0N5VWMvbURUNnJEdnZ5WVVybms4RXdtQTZVUWN3WTZHS0hxK0QwN0lnUFBuaVBWcGFBYXN1MjhkWExTdjN4MnRyYVVpZXVxOU1iVC8vZHBRZndNS2dQKzNYeDJQVEx0U0tNSGJsNmptMDJlZUFvMnZLN1VONlhwMTlmRmNTTEFaS21vNXhUSHVMbWRLTjBJMVBBbTNZbVowa0RlRTQ1MFlZVzZsZmZoajU2dldEbm5BcmRaOFBVYlhDVWpyNlE1VjhkcGZHRVN4blJ5elNWU3ordjc5amkxalQ2V243NjY4REZ1OFVNUDJVKzYrN1haZW1SRHlRZVBINUFKM0hVSVNNdkRMNHVoeGFHVkNlMnFTcDJwM3VZNWIzUkRtcFQyZlprQjI4ckt1Tm9VMEY4bytmTTFSdGRLZzNHRUxNYWdsaHZpU25qck9QaHlTTkNhYzZFTmFPaUw0TTcwVXNUeVJBRG1Jb2trWWpoc1J6eUpPNXp1NzVEd2xLSmtLT0NQQ09XMm1yM3ZwUnJDaGc0N3JubzBJb0o5R2REWGZ1VXZ6bmNsODgwR1JtZkZ4RG53YW9VV2txSnR0Vm5wM0hndktlYnI5aVlUZGpjZkpPdjd0N215ZUoxN2gvZTQvN2lIc2VjTWlld3lwSFFsZjJtYUZLWGl6TEpPSnVlSVFzR3g5VFBsSFR6M0Y2STU0Y1JwVEtzcDBxWEowWHI2MnJJVVJ0VHVNaW1TSVM5ZWd5VGlDc2lZVkFsTHFGM2RjdFpjRmhxcXV0ODdDOUlYQVBaWDRwNDFtMTQxVzEyTVlYVmw1eWZGZVo1ZzVSNDJqYmpySmFxWTFGSE1FYndsY0U3ZUhMMGtKMjlDYXYyRkY4bGRtL1cvTkVmLzcvODQvL3pmK1BnNkFBaDBBUEdtTHBpekdDSkVVTDhEekhmSFEvOTQxd2ptakV3UWs0UlV1VCsvVTg0ejJlRkxhYk9OVjlFOUlQZDV1Ym1rR2xhWjV3K0kwd2NaZTdNa0hjMzhuUVRsQ25XbkgwS1QzQXEvQzk2bmdWdERCU2pXU1g5bWkxSDVlbFh6Y2FsTlpEcDEvZXM4ZVdLejNzbERJTWp4Y2pHZEJPTFV5RFJwOHZVVTRuK1hMVzB6RmR6Ym03bTUxeTVMeGJLWTdTRmttN3dPRUx1TURoMk5uZjU5T1MrUXMwaC9mekZSaW1VRDlsWkxaN2FaNjVMQ29PNUI3OTk0dlpwekdzdi9kMjZkRjdnRTZEeVJwZTNVVjNqaEFBQUlBQkpSRUZVUjhaL1pJcFpSOUoxbjNEQzBjbGp0dHdPMldxNjdzVUZzSzdZbjJJZjY2MW5aM01IdTdSSzh5bkpWb05sZDJNYm13ci9OSFdJV0hLT2lHUk0wUU9WMFQwd2J0YnN1YUNaaERpZHFDNjZCV2VEMG9nZWtMR2EySkFNN3k4NWs4QjdiSUJJNEpCalBqbDd3R2E5eld2VDF6RlJOWTFWak1SU213YVRJVVl6WkkybGRNOWJrMGcyRmhCbWNFbkwwNzJsOUxxNThXcUlOSGJKeWxnV0tXR3R4MWtIeHVKSzg2V3pKU3NzQmxhUm5CSk50Y0hVVnV4dWJ2QmF2c21qY01SUDBzOTV3amxxQ0oxd1JEQ1d6a2VkejF1SXd0Q2ZRVXdZR3FaK1d1aE5yeExsU1ZLcVFiMVJBL1N2ZGxES3lxV25RZnNhOUI0eFpKcDRrVXIyVW1Ia3ducDZ0dmhheVVCVXVNVUt0WmloZVMxWmc3ZU9UZXBYdXZhdjQ0dUxheUQ3U3h0WDVXbnlPdU5JLzJKTDF1c1o4Vnl3WnRVVXdTcm9jaGlzTlZnSHpndVl3R3V2MytEMDdCRlZFL241aHovbW4velRmOFNQMy90TE1pMkpqdHJYdERHUUpBTkpBVzFVY09ZOXhML0NsbEROQ0FDbHRDWEdNTlNxKzVITXFNNXJUQjBmL1BRbjlDYVFpVUJPVjVnMXZQUkdVTEljaHRsc2RrRXV5Tm9YRVZ4ZnI3LzNnRGV5NXFiWjBVUkVDc1ZnWGRyUEJiZzZFTWpTZis2UUxJaHhvK3pkRmEraS94c0E4N3JENnVwTnZmUzVBaEE3QUs4Y2hhYVowZ003VFlqcEFMMVdxQkJhT2hZcmxRSHpwalRtZmM3b2dhd3hPcElaWTdTSnJITHM3OTdBbkNoVDFsemVyUzhJMUNxY3ViaGdNNkpSWEl3OFVGNzY2cnUvK0drcFdUTkN1T3R6bGVtUGxPcG1QczN0SHJGbFJ4bEJheTA1SlFSUFM4ZlA3bi9JZDkvNERvRkFaUnlmLy9nWExlRU1Gc2ZPNWc3dTBSckk2clRDc0xlNUM5bW9hVWdxUmdTU24xSk1RUG9yMHc1SHI0c1I2eDNScU9tQmVIaHc5Q2tMbHNTQklhbjcydE1MZXJBL1pHWHA3VXVoeTdBazgxRjRnSHhxMkx5emg2c3F2S3QwOGhjTDcxaFF2eE92MHdkZFQ2ZjJ0Z0xXWkJBOWJyWTQ4UTFQN0F0Z05qK0RmOW9EdkRVZjErSXdWckJKNTdjU2hFMC9vNHN0Y2JWQ3FrVFRUTm13RS9hMnRyaGhickY2RlBGeXlHT09pT3B2aGhEWFRMVHlTRFFHaUJsU3lVYmFHcHRjcVNDOFlneVZwVHdDdEgxemJGRmxNUlQ3aC81ODZmR3hvdHpacHpMWkwvamFjMjE3dFI0R293WnRDZ05icWc3YXJGY2xoNG1XWkZQUjBIN1ZxZlIxZkJGeERXVC9vNCtlcHprR0dTVkZjU0VsMTRQWXZQNVpITWprRllCc3hsVVozQW9Cck0wNGJ6QW1zMnJQT1o4ZmNiYUVKMGYzK1lNLy9MLzVrei85ZlZaeWdpRWlxR3RRR3NCZ3hqbWp2NWRuUTlQVXhOaDl6dVB5b25IcCtKazh5dWlvQnErdkRLdXU1ZjMzZjBJL3FIMWhyazlETWxPbzYxcEwzQlFnYTh4bk5CUVZhb2twSEVGNkRxeCt1czV3OUFQam1uUXBSWWZXOXMxY1pSRHZ5MnhHMWdQeXMxN0JGWkZ6UFE3anJ2V3I0dkxuUnZUbjN2WWlwRWh0NjhKeUxLQmF0TGxrdlVTMUNUMXY1M1Nwd3pQNTdHUDh2Q09ZTTliMm1wUmxBRTFDWFZmczcreXhidm42NHEwb2kvbnRGVVNncDdtd1BZQzlRR0NXQWpLRzVVSGZwTlhiYnc3bDZjSWlra3RyNnYvdWVjT3hha3d6QVByM1AvMkFiN3oxTGxWdThjeGViR2VmRWRaNHBaYmcySnh1cWhPZVVRT1BHc2VVaHEzWkZqYWFBbVlOenR1Q01vc2VTQSs0cmxoK1NKRjYydERtb0kxZU5YejA4R002UXArUEhYWitEZlRYOHdCcjBNbWVkRVJ4Q0phV1RPS016RDIySC8rRU43ZmU0TWJtdmg2ZndsZWRTSU54ZG4zL2llQ3kxNk50bER1cjk1RXQ0T2xTRm43SXZDckF6UmN5c2V1Zm5GTWo3NXdMR0U1R3dXMVUwTytrd292SDBXQXpLS05CcU1TUm5lTWJOOTZsV1QzRW45Yzg1b21xMFVvb0Q0T3ltajZkWHg3VkZsT3l6bVo0VG55ZUVHUEk1VHAxb3dsWGI1WmhTa1ZHczZVV1kzUlNaWTNWeWxEaHplWit3dlo1WGxrZmRtMFkxR3RjMVJGc01ZTlFPb2kzRlNGSE9oR2lkUWoxNTl6ejYvaWk0eHJJL2pMSEdNeWFyUFV6by9xZ3FyUmY2YjhYMEh5OWN2RTJnTXhKZEtRVU5DdGdLcElFanM4KzVlRGdQdi9pLy9sbi9QaURQeWV3b0RZdzhZNVZYQUNaU2ROdzNyYURkV1JLQ1dOVnV6WkdtTStmQjJMNzRmY1Z3TVVsb045ejFZYU1wY25FMkZGUExXa1ZPQXFIMkZGMnU2b05vWHZGMU55SVB1Q2NLajJJSXJpWG1Pd3JIQnFYbWZ1dTVzdmY2N1ZsKzB5UG1uL3FlNjc4aVMzcjd0L3ZTM2VYWDQza1MwRDU1VEt5dWcyeGxBc2pPVWZ3WloyVVRQRVFaa1Q2RUxyWTBVbGc5b3BBZHAyUmRVT1RuU1R3eGpPYmJBd3cxdlQ2Uk1NaC9XTFljVDFWb0k4MVRyVVhRYWRjK1BEbEUwRUZDT2RMbDlWVmQ0L3BlWkxEZDFRU3p4aERGc01oUjdSMFZGSXpOV1A0OS9MaHJjVmxpOHZDeE5YVVZFeU41VXlXT0R3TkUyYlZGTnVDZDZVNzN4V2pFQk9IT2Z1ekl1ZU1xenc1Q0sxMFJKYzRpSStMM1dzZVBSLzFzaHp2alFXR3BLOW9IUWFyVllTWU1tY3MrRUg2SWJMTTJHMTFVYVN6eEJ5eDNsSzdtaHpLUFNJR2pNcHV1V3lWWmpDNmhpN2tIUzV4WS9zTTRUZ3pLd1hBU1E2YUVNaGc4VGhmVWVFeHZtUVN5MFNORENsSDBrcnRyWjEzVE53R1g5MmFJTTdUZHBIUUJVNW90VE0vQWhPRzYwNE5RL3BjdGQ0ZmVqRzkybjBnaFRxazJXV25SaVNYSGgvOS9rdi91Qy9iSXdXTXB1RitzQy81ZXVsNGpwTkI1WE5uQlVrNkptUnJ5VloxcDlmNW5XdVc3QzlDWEFQWkx6bDAwTGFFRUFaM2xLN3JjSGFtVGx5dTFNd1E3V29XVTByUHBZaG0wbnBKUmFSVVNxTUVaTnAyeFd4VzAzWXJCVjV4aWEvQVdpRzJMY2FEeWMrK0RGSUl4YUxXRHB4TmRVUEtaSllZZjA1aVNSdGJEcDhjOHVHSFArTkhQLzRoNzcvL0U0NlhqOUVuajJva3JpU3FlMDRaSkJkdHExdmVsOVBMWVBJeWRJTGVmMmxja2hlNStEdmo3NVQxRFlLdW9pa0EwMnVQOXN0Z0RYS3N0ZnpzdzU5UzQxbVNpS1gwOWd6ejNKY0xXU09VQzE3d0pSVFlxa2FpOUduVEMzK2VSdnVreXpQRGZrQk1pZWwwU2tpcStScXpBc2ZaYktLYXYvUFYwMXphOGZMemN5WXlaYjBqTEZCZTEwdTRVUDY5L0xrUnFHRFMxSHg2ZE1iV25RMjZvNVplZVRlbmdLRWhTOEpqZ1VCSHdGUHg0NS8raU4vNDltK1I1dW1DOVdXZjdYWFdhVE5ldWNiR240MlZHZnB0akJKeHpoRmpwSFkxWGRmeTlodHZZLzlFT2VTYWs5V21NMWQ1YXQrd1dpNWY3UW93WUJxRGhQN2M2V216R0x5dkNMRnZDT296M3F4bkt2M3J4Y1dONUxQV0EyeTlNYUdiTHpEV2dxampVb3JGN0tUSHliSXVxVjgrNDk1N1Fnd3NaVG1BK24vMS9UL2hILzduL3dCMzdKRWdnK05XMTNYVWRVMWQxNnhXcS9XNWxxY3o4bGFFbUpRZXNsb3NtRzVQZVczN05UNDQvUmpOSWRhOHMvTVd5K01GdTF0ZlJUcTkxdHEyVlprNjd3bmp5ZEd3ZkliblFEYVFSRjMzRm1ISitlS2NPWFBhWWt6YmIxc2ZNdnExcjB5TUp3NVJFckU0RnRRa2Fqdy9hbi9Fd1VjUGVXUDNEZDdZZXd0dlo2eE9sNXllbkxCVDdWQVpsUldUb25zcVdUQjRyUE5rNTVTTG5vc3VSMWFhZ0phNnBWQ3VSakZrRW5PWmNBcU9qTEZhWnBmY0VVVlZGdGJaWUxRTkh3UE9ZWXdhN3FhWXllZkNUS2E4ZS9jYmJNNW4vTVdUTXdJdFRnSjlzYXhxSUN5Z21rd0ljOTBNNTV5ZWoxZXBySXRPSUZNWnE2WjFUVnd0eVRsU05YcC8xYTRmbXpKak42NE1tcEcxZVpSYytCeFJKZzNyeWFRZXgvNytNc2F5YWx0bW0xTzl2bGN0czkxTk9oT3ZHYksvUUhFTlpIOFpZdUFZV1M3YTVxaXpWOTE0Zk4xd2ZQSUk1ek1wSitxSko2ZE83UWp0aUJ0MzZkVk9IQ2tGVmlHeFdpMVlMRmJNNTJjc2x5MGhudk9qOS82VTA3TkhIQnc4NXZIakE5cmNBNGRNWlR4Qld0YmxlK0hLSE5DWFJUTXFiazdqelJpT25zbEZ6U0FQOXI2UnlEZ0wvRVhvaUk0SDBSampNSm5wRzc2ZUYxZGdHYjBPUmw3aTArbVVtQ01wUlZ6dHNNQjhOV2Q1ZG9aa21Qbko4enVQUDZNek9Jc3FTL1FOTjVkZlFhNThYMThUeCtlUDJUQ2JaQmNKZUVLeEpqYkdVRmVldHRQV3BqNDdxY1NaekxJN0o2U1dodXBLOEI5akxMU1Z6dzdiYzRwRkM3bkpGREY5c2R5MHQ3aWZGVmpoTFYxc3lURVI4eGNqZ2k0OXNWUEFlVXR1ZFZLVlk2UXFFRnB6NWNXQUlhT1p4SHhSK3hSOHVidktzU3JOUXdLWVRuK1hwRFBFL200MEZ5NzRQdnA4ckdhZVlEMVp5b1ZTWTRCNVh2RGs3SWc3ZVIrZjF6YWx2VzN0aXg1N0kxcXlkY2JoY0d4UHQ3Q25Cby9Ia05ud00ycFRZWk1waGlYRkJVcFV0Y0RLV20xWlJzdnNyMmtSSVVvbUZuN3M0ZGtoc1V4R0krbmk5VzBZcE15ZStVZ2FnZG91UjA0NVljV2NNK1lzamx2T3c1S3ZicjNHemVrdHRtWmJ0T2N0SWttM1AyV3k2RG13VmdIcHNsdUNkVGlqOUJabklDZE5GRWpLVk0zenk5ZEcxa0RPa09tZEZSRzFaUjFuRE12MG9kQVV0TUhKQnNmTVRyQTVzdXUzdWNNZGxpeHd1Vlg3OGF6RnUvRkVCSXErOENCLzl2a0JuWE9OOHEvRjBNV3N3TjBJTFlIZ01xWXExNUdNeHlVekFIcGowbk5PMW1kRjRZb2J2ZTk3dXBXZ1NnVTRwWllZcTY1b3hoaWF5dU1zcEs0anNNUzhDb2kramk4c3JvSHNMMldzSDE1TjAzQjJkc3pQUC9veC8vUC84ajl4Y3ZxUTQ5VkROdXFhZVhmQ1pqWGxLZ0RidjRhZ0tnUjlZNWNPZ3JHVWhEbzAyeG91ckxPUDdrcCs3Ulh2WGNaS1Z5SzBxNWJ6Nm1VZFc5Wi9XYkI5QUZ6R0VHTkwyeTZKQkV6UGJMU2pzdU1YRUVNbTNqbmxuaG56QXNkQTkwQzVzSDNHNTJKMHNXTzVtcE90TUp0T3FDYWVTZTNwY3FCeW5yVHNudHV3a1oremswWWdPd1YwZmRQRTVWZGo1TXIzclVDMkNiOHB1RzJvbXBwZ1crYnRDUjB0VVZLeDhIVllhNUFjTWFnYVJnaUowL2tKOC9hTUdWT2tjTHo3akxhMUZra0tacjEvbVVlY1pyR005SkpJaHRkZmU0TUhuOXdETEpYVksxMUtKdEZaUjN6VmkyQmRVSUdnd016amNIaGN5UU16ZkVVTC9tbUFvbXJYV1lxOWdBN04vYjRJRUltNHp1R282WUM2ZG9RY2NDNXJFMVQ3MllBem9lbmFKSmxFQklTek1PZmV3U2ZjM052RGlYTGRuZE1zdUlob3crWm5oa1d5d1ZjVlhoeGVIRGUyOTVHSE1saVE3c3kyYVZ5dHpVdFI5U3VNVWJtcG5OT0Z6UFBRZ2I2R3RJZ1JZbGFoTGZIdzZaT0hKQ0toMXl6b3Z6cEt6bDdKVzE0WFR0YXZEdHFzb0s3am5FRGdlSDdLNC9rVDN0aDZnOXV6Mit4TmQyanloQXFIRTBzT2xoeVZScE9pNEp1bUxMNnZBaG1NczlSaVMxVnB6Wlc5Zk93ZzQ2VC9KSmRwWG1rT015QlllaHVBbm9xQW9BWXc1Wm5uSW16VUU4aUJuWHFYMS9kZTUrVG9pSE5hVW1vVjJQZEFOZ0VtazBWWXBTWEdiYXV5eU9lZTBGc0lHWW95UU13WjAxVDR5aE5zeEV3ckZyRlBoRENTRSt5ZmVUMC8raFh1UWRGK0VURVdqS1Z2bHBRQ1ViTng0RHExM1RVV1YwV003UWpwbkRSWWsxL0hseDNYUVBhWElaNEZSSXcrQ0RVTEVQbnc0RDFnQWF5d1hxaHpaQkVQQnNlb0t6Tm5KYmxuTVdpNm9BaFFaMEZFTXhwV3dGeDZtRHdsTUg1RnJEbVBsL2ZuSmZmL1ZXSW8xWTB5bWFQU3JER0dMa1dXWGFGQmFMNlUvSVdrWXlucjB1enJZckVZc29zNldJOUh6MmRzK3pBQzJ3TEF4aHhmWVdOemhtc0VjWm16MVNsZDEyRWJReXV0T2ltNTV5ZGQ4M01HQ1RNTUlzK2hIenpuT0dXVGFHVU9ZbGdLdEt1V0pVc21WYzJDRnVzZ3JJb0VHaEZEeExtS0xnVE80d21IaDQrNXVYdHJXRS9PMnZ6aW5FUDQ3SXoyNVZoM01HdUZ3b3JsamRkZTU4OCtzV1FFcTNwZ0x6SEplSUhvZ1VBR3hIRmpzc2Z1ZEljNk4xVEdzenBmRHRuRmpJSVFNVmZvRFJSK040d0hmTUFsbHFHbDNuU2N0bWZZaWVYZzlJQU1kUEZpTnF2a3VvYWZCOWVzUXF3VmdXVDB2ai9ubkk4UDd2TzkzZS9nWEQwWVNqam5DQ0dRVXFLcXFuV0s4MW1STTQ1S3I5c2s3R3pzNFRCVU5IZ3kyN010bWxSam9pamYwN2lobkMwaUt0Y25GL21qVnV5YUsyNHRTWVJzSWViQXAvRlRJcUtBM1BIMFE2aWMydFRmZXVQUEx0K09CcWgwM1NuQ0tnV0VjejRtY0hSMndzN1pObTl0dnMxV3RjSGVkSmRaczBFOXFTQkJDaGxKNEdxQkJGMEltSlJ4MlZJYmgzZnFrS2pVbUt1ZkFUMXc3eWZoeXFQdGdWamZ2RlJxR2NWQmpPS29oY2s0c1hoUksrWXVDZE5xeHQzdE85dzd1Y2VEZktqYXRBUlYrQlBXamJnaXJMb2xNczBLUkQ5blJsWWRaVE1tSll5MWRIbUY4NTdvSTRmekoxZ1BibUl2UEdONjg0aWVadkJLUFJKUU1ySkNNcWJvQnZ0aFBVNmd0bzVnTzd4UDZneEh4RFF0NTNtRnFUd3hYR2RrZnhIaUdzaiswa2FaaVJPWVREeTNidS9pU1ZTVllSbGFscXNGTVM5ZldNczhENFB0NkUwRDNwYm00U3ZHSytlR3h1SVhpS3N6d2xkMmNGOWN5NHV1NEpuUmw1RkhWZDZ5Rmd2V2t5UGxnVlVPbG4yaGxQRUxoN1VXRXB5ZG5hMjM2UVd0RjN2UXBZTlpBY0ZsSmlJbTgrVDRDZUlpNSswWmYvaW4vNUlQUG5tZlp0TnozcDRqQmlhK2VpNlFmVDRZL0d3ZDErZi9mYVR0RmxUMWhDZ1RUQTFIODQ4NUQyZGFGczBBU1NYZVN0azNTbDhlVHp4NCtJQmYyZitPQWxlUkFVRDFtZGtYMHVFZFFtR2NGYkNrTmJWZy94YWJiQkJvaVNrb1I5UVlraVJTL2dKMGpoTjQzeUFwMHpEaDNhOStrKzk5N2J0czJVMW9oWTE2TnB6ajRaNDJtblZMUm5WZ016cm9hdE1VSThrMW9Xb3NENDhQcUhkckZyTGc0T3d4di9lbnY4K2lteU0xTEx2Vk15c2doaEZUcVJCb2cwUU1qbzdBd2ZsRFZxc1Z1OVVXS1NWQ0NEaTdMdWxyOCtMek03T1NEU25wckZrU1RKcUdEVFpveVV5Wk1Lc21WTWtwaXM0V1hJK2xMbTZ3T252MWV6MTYzN3RpZkpBNG5wL1NFVlN2b09kbDVGRTFacHh4SFY4Nno3OEY2Sk9XT0NHa1JHS3B5aG9zZUh6K21HMTJ1WEcyei83bUxqdlRYVGFhS2ZWR1EyMHE4aXBoamFPbzdpdU5Jd2RTZHJpOHhOdUdwL1BFdmNLQkxYOHpmZ2FPdUJFajZ0UUYwZi95bmxMVUxUWmJDSUwzbGxrelk3ZmVvVmxORUFSRFFGS1oyR1RkNFV4aTNzMlJ6WXpFejJRZlBUTXNtY1k2ZkJheXo4eVhLOXFZT2VuTytNSFJEd2hFVml4S1c5N3dSQjRvTlFLRVYyTElybVhvRXJaTTNBcVFYYmQ0WWxHamlFU2tJeU1ZV3BSVzB2RlhxQTk1SFM4YzEwRDJseTVHV1RveVoyZW4rRHF3WEowUmFiRzVCVnFzRjJ6dVNmUFA0VGdtaGlaT3NlRExVMFJMZkk3VlBHS3dWTDRxWlZ3dDZZWVlYaERFMmtzLzJ5dmUvNnVMSVh2Vmo5aURoYXNTL2xVc2Y5MG9abEE3MCtHSitnVmcyaDV3blo2ZURvMTAzcnpvZ3RmSHJDKzNqUzFpSjVNYU8yM0liZVR3N0RIM2xoL2hsbXExS2FTK2dQWUtXLy81ZDE1ZHFUSXNQSmtKQmt1MjV4Z0h2b2hwcEdVbTU0RHpCb25RQlNrczVjd245ejRpZlRNTmpZZ3hSbkp4T0xLb0NzYkxVUXY2WGRKc3JCWExkRHJsblRlK3h2SEg2dkRsakNOK0JqaDdtZldBbzJGR0pEQmx5dDN0ci9ENjdwdE1ZcVBncGxXQU9yN1FlaUFiTGF3SzNjQm5RNVhWcTk1Sm55MVBHQ3hiWVVZZEo5UlZ3OGZIOTJpN1FNWVIydTZaQ2Y4TGI2OHI5YVNjY1dYNG4zUE93Wk1EYnQrK2dYT081WEtKZDA0blppOFFSdlQraWwzQTFscE5zQmoyTjI1d2YvNkFYWE1MVCttTzc0WCtqUm11YjI4K0c4UTQ1K2lNTm1nZFBIcUVvS0NrdjMrTnJKV2xCakRiYjM2ZkxTK0h2aVFqMXdkb2RPbUxvSUtDVHBzUG83UllPbG84QzFZY3hpZE1qMmRzSDIrd09kMWhaN2JOVnJYQlRYZURLUTMxcEtZeGxaN3JMcFBib0M1a3BocGwyRE5HZk5udS9ybFZqMGdGK2gxaHZkMEtNdldUeXhhd1ZZYktXRkpNcXYyZEREa1l0cHNkZGxlN1BHU0ZvMW8vSjdLQVYxckhlWGRHc3ZtVk9LSkd3S1ZPT1ZyV2d1a3d0YUdOS3g1eXdKS1dTQ1lTNmQzbCtrZHVEMlFqNWhWc1l1VXBJRnUwVzFDQ2p6NmphaW9NaVk1WXRJY3R5VUtTN3FXclB0ZnhWeFBYUVBZLytyaXF6N2lQek4ydjNDYmxjODRXOTRCSWw1WkFvQXZnS3VXZEtmK1ZvWHc0ZmpYT0szOHI2WU1zbHZkanVYL3Jhb3NVaFM0R3V0aTdjbXVoeTlwTEhNdkxnK2J3REJnUGZQMUlZaTY5L3graWhOT0R3alQ4Ymd3WTNBQTJaZGl1L055cS84dEV2K3o1ZkU1S2FRMlVYMmg3Q3gxQ2wxUmUrK1ljNkZwdFNJaTJJOWxJS256bVJLRDJsaTYzRjl5Q1hqNWVjU0RMQ3FTRlNrMG1jcXY0THBWL0RraUNkVVZzUHNQRVFVNXc3L0FlSnljbjFOT0d5V1F5ZE02L1NoZ3hlczZsQnptT2Q5OTlseDkrL0FNQ1FVdm5NZUNkSjZaWEE3U2E5ZkVRREo2YUcvVXRic3h1d1RtY0g1K3phV2E0NkhEWk1LWUw5RUFXSzFncllDdzJxYXRUMVFPK2NtOTFFdG15bTBpcjNPS2pleWMwVE1oMEdBeExubWNEUFlvQlMyVkVWTWtoQTU4OC9JUjNkNzdHeHNiR1FDL3czcS9sOUQ1anNkN1ZMRU1vZkdDSFJPSFdqZHZjbjMvSy91NmVXdEVtSUJ0TWFXUXloYTVnclZYdUlpT3NMVndBbU1ib3hEUEV3UDEwWC9OcDFnNUF0TGR6R0xLcXd3YmIvaVNOTHZGU2daRFI4MUdLYVlrSW1FeENDcWRZTTZ5VlNVUXh0S3hZc09DWVkvenlJYlBsbEUwMitYcjlEcHN5WTFaTm1kVU5NOWZRR0RWWWNNWnB4dmVaYzFwTEwxK2xUc0V5MnRoOHdmRnFvSXowQ2R1U3diZkcwVVl0NlFzWmdyQTEyV1N2M2VmeDZqRzZSeFpMS0R1c203SmlRU1pnek9SejE4UU1HZE1sbkNRTU5jWkcvRXo1eE10SExTMkpjK2FhOVRTSmdRdGI3czB4RmVaVjR1SzU3eWNJdWxjZU5XSW9aMVcxTG96UjdiRkdPU2pYV1BaTGoyc2crd3NYTW5vZFA0a0tRWjljYnJJK2RicitpaFdnZFBQMjlaNlR3eU9zWHhhdVZhWnlEdWNuckxyVmlCSmcxNnU4OUNxeGZ6Q1d1YkFwLzZ4MlZIZWhIOHd2QW1venRFUmZBaGFqRE1kbjczOGZWNE9UOFRkNkxEZk0yTE1PNXV2SE9oZG9GTDJJK21mRnVFejkxR1ovVVVEV0NobGh5Wndva1V3bzRMSjM2Rkk1ZnZMRjhyTCswTHNEZ1F5ZnJaYzkzWml4U25PczkwdzNKcHA5c0pHVVc2Sng2KzU3QXhmQStibzZ2WTd4NVRndXgzN2U0MUIyWVQxOUNBaVpaZ0toZ0ZhTFd1VTZjYVhOQ0tndGRJWkZtdlBvOUNFVE04WFZDcDZjOGRSR2Z4WXZ3K0NlREVVcXJNZ1NEVHpLaXhlaWpPcWtSaXdtV2Q2OC9UWTd6VDdMZG9YTEhrZWdzalV4amErdXp6Z09WMXp2RmtwTEYzZ3F2ckwvR3EvdnYwNFRhMUtYMk56WkpwMG5yRm0zZk9WeW5zUms3YWd1WjkxYXErMVJ4dUF6T0JHTWVGSjd4czcyRmgwZHg4dGpEbzRQU0dUMEtvc1h0bTNkczcyK2xxNDgvMFlkL0VJSy9KeVBPRFJIVEtvR2pPREZNYUVoSkQzbXhwbVNlUmVWaTZJdmxGdkVXRnhseVl1T3lxcHFRZFU2N3RRM21kQ3czK3dqU1cxN1U3R0xOcUtsYmNvKzIySmpuWXdsRzRWY2lDbThXU0ZMSUpnbGMrWXNXTkVTU1lwT2h2bnFHUDVkcUFvTmo2OUwvUC8rTTlHajlkUjExRjhISGtKVXViT3FWSElpaVk2T0ZTdk9XSERXTGFtb2FJSm5ZekZoajIzMnB6dnN6YmJaYkRhb1RJWExUczBVeEdGeUtaRmhzTm1qbkU3elRJcFlMeDgyQnJEajEyUXpLV2U4cVRCWVFuSnMxQnZzTkZ2NGxTTmcwUFNFME1zWENJazVIYXRLcUR1dDdLMmRCTmZaNDF4US8zamJUSkVncytVZXpONlNwVlBRbmpKSXdrcEN6WUJYcWhSVGhUVnFMU2RMTW1QRnRSZUtBZGlQdHVmeXVMQytsL3Y4dGlYYVJDempvS3NzMllKbzErZUxyL3c2L2tyakdzaCtxWkdMeUhqQys1Sk5rb2ozTTJJYmxXODI3dnlYRVdBWjIrZjFBdnE1ZkVsRXRmQkllR2V3MWhVL2E2Y0RUQ21UcnpIalMyU3g1UEtQVjJkTlJmTFQ5L2xWR1BXRk1uclAvazR2TjJTTURsNHVneGZJU2JOVnFpV3BnS2JYRHpWWmhxZWdsQWR0UDNqM3VyUzlEdVZxMVZMWE5ZdkZDb05UZWdZT01mbUNQL3ZuRGdjaGRHeHZiTE9hdDd6MzBZLzQ5cHUvUmtXTHQ0MUtEbVVRb3p6UVpJVnMwaUNoWXlSaHhCZXBzTkZEV1ZSZTUvUjh5V1JyZ3BqTTd2NE5Fb21ZNTB4bmhqYXNnRVkzUXJSUXAyWVo4UUtnblc1VXJNN1U3V2ZtRERIcGNhenNoUE1jUitmNTRpRHdXYUdtbWhVcVBKUXdSR2JUaHVXaVZZM1RwRlFPanlGMkVZc25FVGx2TTdEQUlQemV2L2tYL0EvLy9mOUlYQzJaMmcxOFZSUGF5R0k1WjN0L2s3TndSbmJxYjA4MkJSUlUrT3l3MmFvaEE2RGF0YWJzUllJTU5ua2FNeU4xa2QvNTliL0x2L3l6MytOeGVzU0VEU1NBVlFYUGtxSEpHS2NXb1RubmkwMU9vK3RlclVSMU1LL0VzYzBtR1dHWFhiNzd0Vyt6UGQzbS9KR0tkWWFjRVp1SFJZa283MWxJNUFMUW5mU05tcGJPV0xBV2d5bjNRVWE4ME5TT2crTURXbmRLWU1tQ09lM0VRRnFOYXVwNi9hL1BYTDc0ak9qbnF3S1p5Q3BGSEk0SEpQNmkvZmRNcWRqZjJvR2p6T2JXRmdkSForeTljWlB6Y0FZbVVrdEg3MjZWeEpPdEo0dGxtZVpNZHhwT0Y2YzA5WlR0dUkzdEhEZlk1TTM2cTdqVWtLMGxWZ0psMG1WeUlndUVsSEVpQ25TdEllSElvdVlLVmhLWWp0UHVqUHB1eFovLytWOXd3aGxNSGF2VnFkNTZvcnNmaDNTbEIxTllrZjErTzRIWTRiMCs1MkxTTXJpdGFuTFhsZnR2TkRjZlA5dDY0ekJSMm9FdFY1b3l0aXphR3BhaFNJMDVNalhnbDBLMXROUllYck5mWWJmYTV1YnNCbnZUbTJ6N2JXcHBrQTVTcDdRdUswV0N6dVMxUm0vUnYrNmRFL3RtdUlFMVlmUnViVW5rV2lzamVabncxbEk3UnhNOEhzdUNSRzRNTWVvNDQ1eEE2UGlVRXg3N2puMmJxTDBsQjVVWTg3NGloVWhJaVdaYTAwbEhOcm5RMVRUcmJyTEZaSStJNHpBbE5uZjJtTGVuV0wrQjd6S3NPbDVubjNzOEpGdVk5MG1Id2dGeFFaOWFQZDJ0dlRCRXV2NEpyaHp0MUUrYjFoemJuaWFTeWllSTNzazlsYUEvZFFuSXJ0eC94WlF0SlNCSWVTcVprcW05YnZqNnN1TWF5UDVDeEtYTURoUXcwR2ZnOGlqalZqZzhvdDhmTXBIbGMrMWF6ME5IK2VXWitJV0N6SkQwL1hKS3kxL0VNc2FKMVY2T3haV2ZEZXVNQkdnMjZ6SlBiTDMrejFrZ2U5VkplVm4xY2puSFVQSEpnNC80enRkL0ZWSW01WUNUQ2lzZXBQZ3JTVS91Ni8rNGw5eTVXRXJzTTB0Ym16c0VPcGFMbG5lLzhTMysyYit5Vk02eFhDMHVtSWM5YXpkTUJjdXpnTW13T2Fud3lVTUt5cEhPaHBySmlLUFdaL0g2Sm9xaWRuRmhEZXYwaDhYajhmUk9ZeFpvbDZvT2tWTGZaTEgrOW9YMXVJemt5R2s4NXNPSFArWHJkOTVsY1RKbjAybG1aM082U2V5MHl6b2JQVDVhSlJqNTJ3ODdLVnJKTUdaMG41VHU5dzVtelFadjNIaWRkMS8vRm1jZm50R1dUTkZPczh0UmUxZ21SUWFSdUo1SWVMQzFJeTh2em5hRzYxSDB4RWNDTyt6eWpidGZaNnZlSUxXSjJsVlUwMUtlTHhsdks1Qks5M1pHQWEwaFkzTEdHU2s0VTRya21TbTNlY0ladzNsN3ltU3o1dU1QUGlUMldTNEpsOGloL1ZtNjRsNTg2dUxRY3h0Tkprcmk0OVU5dnNjMzJBZzFlOVUrWVJHWU5SdWsySGZLTTNBMUJza2s4V1NEWmt4RmVjNFZGVlhyMkxIYjNPRVdHMlkybE80ellFeGVaeFJIeDlNYUJmTHFsV1VSazhyak0yRmM0c241TWNmNW1KWkFFalV6Y1drdFdyQytKQTFyUGU1eW5mVTJ1Rm16dlNKZ2tzT1ppaTRMbFRFTWJablBtcmcvSTVJeFN2V3hBVXdpU3FiTmhaS0EvanZMY3ladHcyNjd3OWJSTm52c2NYTjJnMXZiZDlqYnZnSG40TElVcHl2SVdRWXdLejNYZjN6bVJ0bEhNWnJVMEY4czNpZ1FkT0tveEl5UGFSbnhBQUFnQUVsRVFWUjRxSEhnWDdneVlWNlNPQXB6TnRnZzVaSWV4U2xRTmFqY1diOGRwbmNSdEZwZHdXTEVrZkdZeHRHS0pSbDlGbFE1czEzTjJEWXpQcEZVbEZ0R3UxRnVwNzRKYTVrdlo5UDdpYUs2dnpYNFVqVEs1Vzl5T2RQYXl0YmgwU2NSQmN6cVBhYktzYkJLZWRUT1pjcmtHMnFVaXFFT2NkZnhaY2Mxa0wyTzYvaVN3MVdPR0FJYlpzclBmdllCK2JkVjZpV21oRFhWa0NkYmo0dVdGMEhRUnRSSzh2ajhCRmM1YnQyNHc5M3R1OXcvL2Zrd1JWTG5lQmhvQlplb3lWUHZXYXlpcnJIMWRKSnhOR3l6elJuTG9ubmF4M3FiZWlEN3ZHcTdNa1FyRWhHUFpXTTI0OGxDM2VDY1UycEJ2cXBhTUV6QWhBVUxmdkNUditTdHUyOXJSM3JxTUdKcG1vYlQrU211OWtndUV6d1JUQzZpUFdadFNObFBCeTUzaHFzRnIxWTlkcmYzK09iWHY4blIyU0UvT2Z3eEZZVW1oeVZib1drYXhBb2h0dVNRSUVGZUpqYTJab1FRaUcxRUNwL09Tai9nV2h5V043YmY0SnZ2dk12VVQxbWN6S21sb1hJMW9lMUt4dTNaUjNBOWtiWFlVbEtYRWVBdzNqRlBDMkpqK01uRG43RWk0SXpWRHZRdnlKam80T0NBczF0enR2TVdmbHF6ZUxLZ21VM3BVbHF2b3hBOSsweWdLWlB6bkhWQzB2TnFZNHpNdGpiNXF2MHFkVlgxcmZMUGlSNThYZ3d4U3I4dzNuRHcrSUFGNS9wQm9VTDF3aU1PaXNrRVpaYVIxK2xWVVU1c2hhWEpocHFLZ0dCd21PaHBxRWlTUDM5R1R0UmlRbEtwZ0pnMU56NEl4S3dnTWdBcmpqaGt3UU9lc0xzNDVEVVd2TGtaZU4zZnhjYjEvdmRHS2kvU2hOUWJSNmliSERxUks5UXg0OWFXMXptUEtVZDl4akp5ZEhyRWEvV3ROVGlXNGtwV21pL1hYUCtubFdla1RNb3E3MG14d3lNNDR6QXhNNXR1c0xkMUEzZjZvVjQrMG5NSjlLK1RnMlVDNzZEVDJiTE9SVk11bkdkWEREVk1nZGEyY0xESDNSZWFlKzAxSVJUNnltaExsY0F5UmU5VU1JUlN0ZkY0SXBHT3JueDJuWkg5c3VNYXlGN0hkWHpKSVFWVmlBaWZIaDV3ZEhMSTN0M2JoSGxYZUg5OVJyMDB1NGp5MHFBdlZHcjBSZ05HN0FBcFY4c2xzWTNjMkwvQjRlSWgvOG0zZjVPSC8rb1RvR0xhVkp5M0MzMFVteEV0UVpFR0NDek9JNDMxTkdaS2pKbHQ5dmliZisxdjhmYWI3L0RreVFtempVM0cvT2pMVWp4OTg5VlZZTXlnc21hcnZDSTY5VWY2M2QvL3A2enlvdVJGS0ZuZE1jRE1GMGlOZ1JYdmZmd1REazRlY252akxtRWVtUGtOcFNLSTFSMkxOY25HNGdRMUdxck0xZE9CdnBFa0dhaHNSYmRxUVF5M2QyN3gzVzk5ai96RHpFK1BQNkNMZ1FrTnJYUzB5N1lzYTExbnRzNHdQMWtNYjJsUGZnOFFEQTBOKzl6aW5kZmU0ZTdlVnlBSWJSdG92TUVhUXdoNVpORjVkV1JVWGNFVkFOc0Rkb0JzTThGbFpPSzVkM3lQSjV6UUZvZWk0UnkvU2doZ0RQTTg1K0dUQTE2N2NZYzJCNExOZUNma0hNZCtCWmZKaUhxc2pTSEdoSzlycGM2a1JHVWRkMi9kWG45SDFsTzNucHM5UG0rcS9idk90dVZpWFJwY0psZHdjUHlvd0JLbGJvRUNmRUs2QUxIU3VEcFZKZ0lPd1FNM3FoMzJOdll3QzRzRXZSOEVpMVNYV2RZdkhwM3YrR2orSVhPaUNqTm9Vbk9RaHhZTG5kWDhkNHJDS3JmVVpCWTg1bXpSY3JRNDVmYnRmZXJrQm5XVmx3dUxFNE9VcXpLUjFBYmJpZktSeTMrUzhqQWhVWHFXSUFTT1RwL0FIYkRHa0pOQm9oUytyY05hcFV0a2tlSStkam42S2t3a3hSYVZISFowN1pKNk91WG01bTEyVHZkWmNJSVJuZXpnRXYyREwwcHBHUUNkeXhoVnNiQlJ1ZUl6YW03VnQzam50YStwa2tkMktrOG5TaVhvbjFOaTR3V3Q3UDc1WUlxVDJISzV4RldXYURLZEJLUXlSQmM1T0Q3a2svbkh0SFF2ZWN5djQ2OGlyb0hzZFZ6SGx4a0NPYWdNVEtERDB2S3pqMzdHTzEvNUpxWlNrSnRMOWk2TGx2NFlRQzF3b2JCVjJuWDZnVjBNS1dkMk4zWncyV0dqNXplKzg1djg1Vi84V3g0dVBzUjBhUUJzNDd4Q1A1NzNBR0xtTjJuYmpHUENiMzczdC9udHYvNTMyZDI2U2Z0YXgzTFpYdXlPTGdQQndNVkxWd1BjUHFyR0UxM2dYTTc0MmFQM3NOYVJFeXA2WDVUUWtvRHAvZVA3N2V1cE5XUU9lY3lQUC9vaGQzNzlqdXB5ZXNQNTRUblRxZnFqOTluS05BTGJmYlBjSUJoL2VSdkxZR2N0Mk9RSXE0QnZLdDY1OHphVnJhaC9XUEdqd3gvUkVqVVRXZ3FYVmUyMUVTb0VRZ3hEUXJKeGpkSkY2SzFsSFJObS9OYjNmb3UzYnI3TnpNMElJWUx6T0ZSeXladTFPUHRWeWhLNnVZNk1wUkl3U1hDaURuekpLdU8xTllFOHRmemczNzFQaDBvVjVaeXgzcENqdkRJMXhqb2dadTQvZXNDdjNma2U1L056Nm1aR0p3RnNUM2ZSa3lrbWpTWVB1VEJrTkc5bWpDTm4zZGVjWVdOakMwa3lrcG1DTlJsN2ZjNnVQQzRHZ3NsRUt5eGl5ekduWkRMT21NSG9vSjlnOWVmSGxTVW1MRVVtQVFjME9DWjRibTdlNE4zYlgyY3piK0hhbXFsc1VlSElzWDFoVHZqbFdOUXRZWDdDUTFvNkloMldLRm0zY2RSekZpVVJmWUpVMFNiQmtWZ1E2QWdzMG9wSnJOUVJzR1JqeHcycXp3TzNPdWwxYW01bDE3UFliRlNRS3BXcFpCNWw3ME1PZUJ4QzRqU2ZFQ1dSbmNGNFIrNlNhZ0tiWE9RWlBWa1NJcmJRWWlnVWt6eWN0NXhVUU1zWk5ZcklJZU02eTA2OXgxdlRkemhjL3BnYWFGTUxOaFlnMjJsN1NKOWV6VUNBcHFxUm1KaFFzY01HMzloL205djJwcG8rU0kwMURpdkZDNjhvRDFoYXNvbWszdFZMOUQ3MlJaTjVzdW5BSkRvSkJCK0lHM0NjRjV5ZnJjcHorVHArRWVJYXlGN0hkWHlaVVpDWmQ1NmN0SkhuL1orK3gxLzc3dCtnOGR1YWljQ09xSXhqV2tGR203cmlrUFc3c0doUndEU2RUSG4wNklEcDVwVE56YnY4emQvOEhmN3hIM3hLa3BLTkxZdHpsM0NOd1RJMUd3WEVOdHh5ZC9uMjEzOFZMeHM4K1BsaktsTXhhUnA2QlFBWVp6VDBIWlBscVU3cFBzUUt4OGRIK0EzSGFYZktoKzkvT0toZ21McmdpVDZSSnV0R0ROTnpGZEdzWTVkYmZ2aXpmODgzMy9vV042cmJKSnRvUTh2MnhqWXg5cDd3MElQK3Z1dTlWd0xwSndEWnJKdEJBR3kyaUJGcTIyQ3d4QkNZMURQZXV2MFd0VlRzSDl6aysrLy9HK2FjRTJnQndYWkZ4Z2psZkhycWt0V0tDSTRHeDZiZDVvMnZ2c21iKzIveTdtdnZNb2tUNGp4QmhFb3EzYXlVQzYyMFA1NE1tZk14Y0pMQzhUTVpuQ1JjVnA2cnFsTWtscWJseWRrWjc1MzhuSXdyQmdwUnRXQmZ4SDd2TTBKRXNEZ2VoUU9PVnFkWXFYRDFsQnhWcnNuMEdmUnkzYTZMdHpKY0kyUFp0S3JTWmlGbkxDRUdsY29xY1ZVQ3VUOFN2YnVYVUp5YXJCQmM1dURzTVdlY2x3bkxtam9Ra3d5RFh6ODVNcXk1M1gxWjNaVXBuZ3VHVFRQamh0M0hKcyswMjhDTEo4UUZmRTZXcEUrV042ZDN5Y3VXUTQ2Vkk1Nk5HbTE0MW5Yd0hxd1ZPK2lpaEtpMGc3dzJBWGxSL2Q0TDI0QXJlOXhQRGxRVkloQ0xIZkdsS0o2MEdXSEJuTlBWQ1R1VGJSbzNJVHNoaTZwVFpERWpjTEhPZ0Y2c3pHUlM2cWljNnVtWkRDNVhzSUxhTnJ5Kyt5WWZMWjhRT0VLd2RDR1VyS3dCb3ZLWHk3RXhHV3hycWZCTXFibkxiZDZZM0dFamJWREZCcGNxVlg0WVV0NFdROFN4UUNRU2pTZFl6YitiN0tpVHhXZXc4NVljVzV4TjFKczFDeE5ZdGd1T1QwL0hoYUhyK0pMakdzaGV4M1Y4bVZFMFUyTU9lQ3lSeU1mM1ArU1RoNS93OWE5K2srVEE1S2lKaUpIWCtGQWFlK3BSbWtjTHRqaGpXWjYxMk95UUZuQ1diNzMxSGM2ZS9KZDgvMGQveklHMDJLY0dMSXVod3VESlV1R3AyT1VtZi90di9GM2Uvc3JYOFdhQ21kVFV2aVoxWVdRWFNlR2cyaEdRTGE4eTVxR1dMWmZNL3V3R2J0Tnc4dmlRQi9jT3lrTFdBaHdEWjdlTXRlTmxaREp0WHRIWUNSK2QvWngvL2NNLzQrLzl4dDluRlpmWVJrdWxhalZad0NCR203NUtzeFJHMW8yUm94Z01RUUNUTkxQbDhTcEZseE5OMWZENi91dnM3ZXl6djcvUGcwZWY4Tk1QZjg1eFBpem5JMU5SVTFQUm9jMXJmUWIyMXNZdDNuenpiYjd4enRmNDZ2NGJkQThETmxqTmppYWdCLzRpbUd5dzVtS0R6dVh6cEs1ZTJyYWtGSU5JTWtJMmtXd2puWTE4LzBkL3ppa0xBcUVBRmJBeDA2dFF2UXFXbFZ5Y25tajUrUEVuN043ZFp4RVdOTlZNbFRSR1JPbU0xY2FzWVlVeU9JQ2xsRUJnWXpJbGhLQnlZbWF0SGpCazRpK3YzOWpodnVnYjZaTEpSSnRwZmViand3ZTBSQnhXK2RZR2V2MVBjMkZiUnNzMzZ3U3dHRU9Xek9KOFNYZWVGS2dkR2ZKQ3MrdlZ6b1lxWW55T3FNVHl6dTdieE5pUmczREdBa05FQ0xSUjdiK3BiUUd6Um9telJYR2xRaHVadkxHRFFzR2dkZjNDSEZsdGpqT2lEVXRpaEdoU3lmV0d0WjlXZi9ETFRaNUxwallTK2ZUNFUzYjJkdG1kZUd4bHlFbElaUnRsY0IxTTYwbFlXY0l3R1RNWjR5MjVhRExQbWhsZENPUjU0c2JXRFg1bCsxdE16Ky96WWI3SE9VdHlDdVJreWJUSVFEcXlOSGdxSER0czhocTMrZHIybSt5a0xlekNVa2VMUzMwVFh4R0RNMHFyOEVDMmhtekJXS3NOYU9Jd3dlTVRiTGtKS2MxSnJpYTd6RElkTTUrZmxSeDZmdFY1NEhWOFFYRU5aSy9qT3I2czZMbC9GaVFLZFYwUnU4aFJmTVRESi9kNDY0MjNNQmFjV0xJcDVneXlIcmdWSVBSSUwxOGhuSjd4dnViNDBTRnZ2UFU2SHovNE9aTm15bmE5eTMvejkvOGhyakw4OHovL0oyUmErbEdxbDRZeXFrcUtvMkdQRy96dDMvbzcvTWIzL2daaG5saTFjemFubStSTzhGTHBwb3pBb2k1SEh5MjVwSHZYRGtOOXI3akJHS0ZyTzR5RDQrTVQ3aDNkMCswd2hxYXBhT1BJZVdxMGIwUDJGNlZGdUlrbExnSS9lUDh2K1Z0Ly9YY2dHRFkzZHRUaHk2alZyTXRlQytzV3N1a3pzMld4bzJhVmNSZ1VGTVJWSXR1TXR3N0psaHdUM25wMjZ4MW1yMzJiZCs2OHpXOTgvVGM1WDV4eGRuN0N5ZGtaODhVWmJkZXA1ZXBreXY3dURmWjM5OWplMk1aYVQyZ0RUejU4d2l4dk1uR08ybG50L2dhY1ZWcEJiekJnSlpOdEhyaUdJbGJMczhOV3Jva2hLblVVeVRiUitVam5PMzc0NkNkMEpDS0J5YlJtdFd5MWljbFlsaThqdmZlTWlDV0RkKy9rQWQvNytxOHhQNXd6bVUyZ0JaRmNzdlI5SnEvWFBPMlZXRFFqRzBMQUdFTmQxM1JkdDdhNGZZNDlvSmhTVFREbEtJaVFEQ1FieTc1SEh1WEhCRVlTYTZLdWhNa0k0anc1eHVIU3l2MjEwQU52MGU1N3RlUk41R1NvL1pScFBXTXJiZUd0NXlUTitid3NXUk05ZDNmdWNuSnl4Rm1ZbzVBc0lMUVlFbDBRYlJ3MGFqSWhRWDJuUEpZSkZkdE04RlpwQlQyUUhWd0l5Ny9Qc21uV1RMWkI5elFRVFVELzZ3cVE3Vk9wcko4dFJSSW01c0FqSG5NM25yRmh0Nmk4SjVQS3ZhNTgyYWRyN3ozZnZWUlhuR0M5SllZV2F5eXpla0szVE1nOE1KMDFmT2Z1Ti9FSEZlRzQ0d2xQNkZnTjBtV2FGL1pVTkVYbHdiUFBIbC9iK2hwdmJuNkZldW1wUTQzTFRoM1J4Sk9Nb1JkQ004WlRpeSszZlkxSWhiRVZSbXFjS2ZhMENYSnlXQWtrRWViTE13N09IbkhJY1RsQzExRDJGeUd1Z2V5WEhQM011WC9nYUlrdGtiUEIyTDdrSTF6VU4yVVlkSE54bERHNUxFdGdMTCtWVGNZTUZxdHlZWjIvSEZHT3pQZ0JmdmwzV1IrLzRkakp4V1BiNjhZT3IyVVp4aXJQVkVSd09FTC9GMTlFc3d5UUkyeHVUVGsvWGJMcWxteFZPM1FoOFVkLytnZDg4OTFmd1ljSmQyKy9UbmVlbUo4dTJOMjZRZXBnY2I1a1kydUdTQVJUbWpKQXM0dzU2WWdzanE3cjJON2U1dVRvbE0zcEZyRU5PQnE2ODQ2Ly9WdC9uMjkrNzFkNS82TVBlTys5OS9qMDRVTTZXaW9hZG1kNzdHN3Q4cjF2Zlk4N3QrNXllL2N1bFhoQ1RqaG5TVUY1Y0ZLdVB6MjJCaU9GcDllblh6Sk1KeE5XcXdXU0FrM1RzRnd1aVRHd2YydWYwSFlzMDV3LytLTS9KQkhacUtkMFlVNTczcTNCNjdyeWVmSFlVYzVCcGVmcEtCL3lmL3p1UCtJZi9KMy9qbHU3dHpuODhKQTcyMTloZGRZU2dxN2JXdDMyNkFKMTQ4bWhUMjJ2ejcwTTE0ZUdkOW9MTFRrVmJwK0RyRzUzM2xaTWpXUHFaK3h1NzhOMlAvajNOQWdOSTFacEZxM1NBQnFaWUp6Rmk5VXFLVm1QbVZHMWhpaHh2SmNYYkpMNzZ4V2dDNUhHS2k4NkZxUE43QktkNzJoZHh6LzdsLzhjWjYzYTZwck1xcDFyQmk5bjRoY0FZdnZuamNQellmY0pQMzM0YzM3bDdyZFluYStZdWhwaUhqS2JJcHJKRXhGY1hpdDdka2x3cmtKRVdNNVh5amZPWlJKMFFTOXFuU250YlFGU1Z1NXIxN1ZzYkc1eTFwNnlTaTNWYnMzSEQzL0tFZWNFTWkzdGNDeFRFYmVQS1Q3N0hyYmxGcW9zY1NXY3NlTEovSlN2YkVZYUVVSVh0V0hNYWFiNTg0UVZSenJwZUdmM2E5ell1TXRIeC9mNGFmZ1l3emsxRWNIUTBsR0p3d1UxU2ZWQWplTTFmNGUzTnQ5Z1l1dTFRc0FvUGd2QTlpR2lTaEdtZ1ZWcWFXN1VuT2JFaDJjZm83clo1VDRZelNleVFDc3REamppa0NmdFkvYmNIakFsZDRtSm1UQnRhaVJkbkd6Wm9nSlJscUpVRUFlcnRNUTdEMkpZdGgyVmFkaHVHdUk4UXhkNGEzS2JHM2MzZWJSOHhNT1QreHp4aEk2NThwbVpNV1dURzlVMnQyYjczR3oyMkRFenBxRm1raXBNejdNZWVMb1dUQ0pic0VTdEtCaktCR2dOcy92Zk8wa2tINGt1Y0pZV1BPNk9PT0ZNclRWY2VnRlZqZXY0RHhIWFFQWTZydU5MamxTeVFxRGFzWW5Nay9OSGZQOEgvNXIvK3IvNGIvbjAzaWZNNmgxMmIrd3lQenJGVXJPM3Q4ZHlOY2RZUzYvRGFxUmtHWXN1S3FQU0xQU2xSSWZnSUhza3dWdDN2ODMrN2h2OCtyZCtCMi9kd0ZjMG9ycVo4K05UTm1kYlROd1VJbGp2Q2lncmcrZW9SSWlZVXVxbEFENUxra2cwQWZHWk5nV2NjY3gyWml5WGN4NGVQV0JqcCtFSC8vN2ZjZG9kSWlUbTNYTE5DK3pqTStaZGk4VVNzcnBqUFR6L2xMLzg0TTh4YnhsdTd0L2gwZUVCMjgwTzI5TnR1dGpTaFlEeDRMMVhlYlB4YW93aGt3ZGFCRnprOUluMHgxT1B0eGp0aE83ZHRucVp0SUdEUzI5cFdwUUtzdWw3WGRaTlRBV29hWFpTaXVLRURIOC9ITnRSMk1JNXpVQmxvS29jNm9DMklwbEE4b0dqY01MOTA4Y2N4Mk1XekFIVkt0WDlaR1QvOElwaElFdG16b0lKVSs2ZFBPRHRyN3hESlZBbFV5VEJiS0U2OTdCRzdVWUhkN2dyZ09DYU92UHMwQXlxQTJPVTg1dUNyc1ZuenNLQ3gvTkRPbElwa3FkK2M0dTlyQjFkdTZ3blMrT0RZcUNOYXNReHArTjRkY2I1ZE1YMmRBOGJIRzNiS1ErOU42Zmg1VjRsVzlyamlOdW91Ykd4d2RacnU5eHVYK2ZSMldPZXJFNVlwZ1dQZUl6SDBlQnBzR3d5WlcreXhjMmRmVzQwTi9EelZ6eUwxbUs4WXhIT1NVMG1tY2hSZTFxeTdHRjBmaTVlZzRMbWNGc0NuM1lQMlY1czgvclc2MVJNNmVZZEpnbXp1aUdIa3ZWbFZQa1lOTkwxTEdhakRtTTJ1ZUVJV2JINHBKenBLVFZiVmNOZTFmRDZ4aDRkSzhRbDhCWHpsY0dhaGtuMlRLaVlKRS9kR1V3MDVCaXBURk8yVjJrbFlvdkxuNEZNSkl4dVF5a1Q4dVJVOFNTWWpLUU9ONE13Z1ZNNTUxSDdtTWNjS21YSWk4NDZmNW55UXYrUnhqV1F2WTdyK0RKRG9GMFZ4eUlNVWRTbWRja1pmL2I5UCtZLy9ldS9SU3VCbWQ4a3lJbzJMZG1zSzV3WFFnaFVqZkpSRGVvSERtV1lMT0JLUm9PR2lDMEF5Z0lPa3gwbkQ1ZDBHYXlkNE91S3FxcEFNakZHSkVWdWJOM0JBR0Vaa1pod3h1T3RabjFqaXFyM1dpZ09VckpBdmNzUVpOekUwS2FWbGhDbmxtVTZKNXNLT3hPaXJIaThQT2FQLytJUE9lRUpsYkdjUzFBdzBSTTROWWwzWWJEb2Z4U2pxZ0s1b0xJa2ljUDJNZDkvLzk4d2JXYmMrdTV0bUF2UlJOcThJa202YUVGckZNRU1KaE45dzB2Um1IMWFhYUVNNndWSUltakpza1FQbHRKQTlYQnJibkNSQWxPWnJMWHhRdVppNmJ3ZlREWGIvSFMyeDR5T2hUVlFPWS9rU0p0V1JOTlJ6U3dybTdqLzRDSGYvL2dIbkhCQzI0TllVektpK1l2ekl1b1RmNTFFS3VERHcwLzQxWERLbnQwZ2RTMWVKaU5URWx2MlR5MTBuN2xNV2NPYzhiZGs5RHJlZm1zZEdFc09FZXZVOXZab2Vjajk4OGUwNU5MZ2xnY1N4bkRFeDJDMjM4WkxZRmF2NGt4TDRrSDNpTmRXVDdpeGM0Tm1vMkcxT3FlaHdnL1owSmQ5aFZtMXFlNVRDMHRkTzI1WE5UdjcyM3dsTEZuR0pUdTdXNlFVVkNwTUNpOFdxd1lOUzArVm41NEV2R2dvTlNOaEtzY3lyREFUTldCNGNIeWZ0cEFMaWgzRTZJL1cyeDVMcHZ0VFBtVjZNbVZ2ZTQvWmRFWllKbFpkcEw0RUx6NExjcWRlb0VJeUx1dDlGdVlyeEdhTVN6VE9VUG1HN0NvZ2thWGlack5EeWg0Yk15WmtmQWN1aWFvT3NMNW1rczNsSHlRclJha2xLeEJGczdYWkdMS0ordnp6RnBISXlxeW9ONFNsWDNELzlESDN1NGVzV0lHUDRBMmxSSGNkWDNKY0E5bnJ1STR2T1pSS1pwUXJGa1BwcTNBOG5EL2dkMy92LytMdi9mWi94V1RUYy96cEV6Wm51MHlxaXRQVFk2eVVETjVUY2dWbDJKWmU5bnNFWmcyRmxLc05ZN2QyYnRPR1RBZ0JVc1prd2VKVm5OdzJtSlNJTVpLQ05qb1pCOWw3a0lGcGh2SWRuWmJ1eEE3MnVRQ1RTY1BKMlRGTjQvQ041ZVJreVdKNXp0YldsTWx1eGZlLy82YzhTQi9UVWJKcHZZdFFZSjBJeXJZSWtFR2YrZXozV2VXNnRIdloxNWEyYmZsay9oRS92dmREYnQrOHpUZnVmSlAyOFpMRllzN0VUVEhla0ZNbXBxQ2cvWmxsNFZ5eU5oY05DUzRjYXJFWHNyZTlHTStnNGl1WHFBVUZ3UGJlOUZJYXVYcFh0bXlrckt1M1RiN0lKN3k4RlVZc2xiUE1sK2UwZVlYZk5NZ0VIczJQK2VESmgveDg4U0dSb0dEWmxMYXVweXZGcnh4S2Fjbk1aUVVjOCtucEFYdWJieU9ycEVvQVpRSWxwczgxOXpPVXF6T3hjdW4zQytzWnI5ZFlzcXpkekZJTTJNcGdLOGZKeVRtSEhCSEtFUmdMQUZ6Z1JZOTU1ZU1KMDNqekt0WDBQZVNZVDA3dmMzZnpGblh0NlpxQWMyYjBCeS8vT3ZOYnRLRmpPVjhTNWhFYVE5MDBUSHlOTkR1WURuSk1HRWw0REpXcGNCbHlqS1JPTU9aVmh2Qk1sd0wxeEN0NG5GcE93em4zNXcvcENNU2hJZ0JyRzJ2OXUwS0FJNU5ac3VEVGNKL2JwemVaN1d4UU53NkpobFZZVVJtN3ZoOUtxT3lYVHNUV2phSldiWmR0SGpSY2pjQ2tyc2s1a3BKeXJZM1VwSlJKRXNsSkVKK1VzcE9OUHJ1eVZwV2N0WGh2dFpIT2FCWTJXNzJ2eEt5dG45TWdkTnpmNTNuSTNrWWJvTW1jdWdVSHF3TStPdnVFeHh3UkNEeGpwbnNkWDFKY0E5bnJ1STR2TWF6MjBBK0M1aEgxc0hmZUVHUGdUNzcvLy9HMU45NWg5MWQyMmRpdXFjVVN3cElVSW5XdFpUTWpkaWdicnlXbHBMZ2JLZEFzNytoWEFJeHkxazRPajdCV05TaFYrMUZKbWxrU0lVWW1WWTBYZzNNZTZ5cmx3MmJCV25DdUl1VTRQTk43NmFvZUpBa1FVamNvM25TeEJSZVpURHlkTFBuazBVZjgyWS8vbUpZRmlVUW5xZzlKWmFCVEJ5WEp5disxNDVMc0NOaWxzTzZNRDZJZ3VFc3Q3eDM4aVB4dk01di8yUlpielE0enY0bDB3di9mM3BzK3lYR2s2WjAvUHlJeXN3NmNCRUUyaitad3VqVXozVHV6a2tZbWpUUXlqVVltN1lmOXNMYi8zbjVmcy8wRDF0Wmtra3dteVNTWnVudlV6V2xPczVzM1FSQkhBWVZDWFhsRmhMdS8rOEhkSXlLenNnQVFBQW15RVErc0VIbEdSbmg0dUQvK0hzL3J2RU9aV0lmZE9VY2hwaU9qdlhrcFNuRkYyMmh2R2RBTExlamJEUHZwUXJUYnpyS2JqejBGa0tnb1FCK1VwT1NzbkFjdTdSWXlJVTZ4dHRrS3V4cStDNjVCSzAreFZTRGJjSGR4bjcvNzZrTStmbkNESlUwc2dVckE2RjQ0bnlKWkkzVU0wbjdXK1ZnQmhVWXFoOGR6ZS84T2YzTGhoekVCeVdWSnRuenVYYmlHSXVCVmxrUEtiWm0yYVJHZ0VsRWxQWTdOMzYwUVFvb2RObHJqdk1TRkRaNmp4VWs2ZTJrOUZTc1FUVnRWSlAya3lidVZLTGdQeE10c05jRUhxbEN6SjNlNVBiL0daTGRnZEduRXRQSG9EWVVlbmdRNmFJS3JNYUxaSHUvR1VzbzArTVlUR2tFa1VOV0xWbG9yS0oyU2xSUktqVEJhcmVjbmZpMEVCZDdYR0tVeFd4WnZHeDRlUHVTRWs3VDhrV2h5VnlvdGZ1bXRBS0l2b2JFMTRoUkhISEhqd1UxMjlDNXZiYjlCU1lFN2RWaXJXM2svV0pmZkFoTjB1NkFEOENwcWFxTzdSRFNSdUVBMmdORUZwWTFWRHcyQ2ttaU4xeHBFU2RMREZab1FhRkt5bWFSUUF0KzdURzNvU2tvRzFaSi9MOHUzQmJ4cE1EdWFoL05qdmp5NnpWZCtMMmtWRUR2S1VBdmhPNE9CeUE0WThBS2h0WTY2a2FUa0UyTHNtUXR4Q3E2cCtFLy81VCt5VTE3a3ovK1hmOHowUWNWOFduTngreUtFT0Vua3BKbU1UaVErdS9zelVaTmtyYVg5eHNpQTFvSVdSUWh4VW81NmxDYTYyb0pISzRWT2d1cytORGpuQ0VGaHJlNjBUaVZaSkNYbVh1ZUphYkZZTUpvVWVHbVlMVTRaVHdxMkxzVlN2UC90NS8rWnZjVnR4TVNJUEJHZ0JJZ25wWFRVWk5XcFhucHVtNzRrVjVUN3luSmF4QkZOd1hGenhHL3Zmc0RGWDE3aUwzN3l6M2psMVd0VXh4WEw2WUpKT1VHc01KMU9LZXltT3EwcHhBRFFTdHJzK0ZVRFRJcTVhOXM4dWtTRGlvbUJrbWJzbUZYdk1VRVJkRXh5aW9UVnRtVTZzd1VXeVJZakh5M2I2Vmk2b2dJclBRY2w0RjNOZURMQzd5cjI2Z2Q4Y1BNamZuWHo3NWd5UlpsSUFrd2lqeUhRWmVVcllseUczMlR4ZlhKSTV2SEtnNGtMajN1SGUwem5KMnlycTlINjFtdWp2Rlg5NVVGYUIvVEpldjlzTS9scEk0OTcrd2tLWFBDTWRTd21JRXBSVlJXSHAwYzAyYnFtQXlHUVNsYWsrTTYxR095b3VieHFJMjdKckc4UVpYREFNYWZjT2JuRnhmR1lIMHplU0ZySHhWTzNuL2VDTWZHZTA0RDNGb0pnVlZUMTJOM2FTaVFXdlBlNEprUTFEcTNSTmlmUVBjUDFzNXFscjVBQ0hzNU8yRHU2aDBPb2FaSmxzdE5kN1gycnRWb3V4YWZicnVFdWQ3bDhjSWtyNVJWRzVTakthaW5CQ09lR3lSaDZpWHVaMENvZmw0Y0N2cWtSRCtJRE9zVGtTT1ZqaVdVbnd0Z1NxNURwMktsREN0MEpoRlFpTng1N3ZOZHlLRkhTek03U2JSSVZDbHExQlIxQU5UUzZaaEU4RCtZeHBHQkdGUk1xTlhqWDdtN0Fkd0FEa1IwdzRJVWl1djlkNkt4R0NuQ2hKbFlJRis2YzNPTG52L2p2WE5tK3pPV3RWN0ZGY3IwcG00aGpSMlpiNjVNS1NEdUE5K1c2ZWtZVkNVeEdGcTBFNXp4TnM4VDVRR0ZMckxVWXJXTldyd2NKQVpPSWlvamdKYUFEbUphZGFLUU5aMGpIMUdOK1BqUnhuMFp4Ky9aWC9Qclg3L0had2FjNEt2UTQ0SmJwUzVyVzBoRnFUOVN6N1UraXZpTml4Qkt5UHZpWWdhK0FnaHpZaUFzMTc5LzhOYU13d2Z5NDRPcjJLNVJsU1JNY29mWVlZK2hZY1o1byszRUV5UnFiNDFtVlNrUklWcXFEUlNzTzBYcWJpR3lYcU5WZDV4VTFqTmFOS1dlcWpQVXR6bDBUOXR0QUozZDl3QkxMaWU0ZkgvREI3ZC95d2UyUG1MTEE0VUM1T0dtSFNEZ05kSXJCU3NkNHgyZWNqQlZneHVCY2RBdFh2dUdZRSs0OXVNZjFxNWQ3c1FJNkVuWHRuOWdqbTBWYkhtWHc3RmV6QW5ET01hMVBPWllqRkNsV1c5T0psS3dqdlo1SmJOSGEzbU9GcmRZQXJ6d2VqYU5pejkvbDR1R1lpMnJDUlgrVmNhTTM3UGlKemhCdERTTFFOQTNCTmNtNkROWWFyTEdjbkp4R3k3YlJCSzFReWlER0lyWWdhSkN3Zktha3ZmRzQ1TEE2b2lvcTloN3VzUmYyY2JoWTFhc3pwSGNXMlQ1cFZyVGVGdGMwQkJyMi9UNTM3dCttdUdEWU5oTUllZUZ5RnJuNklKcGsvVTF1LzNUZktXQlNsT0JCdHpXMG8zYXlHSVVLanNZdjQ2SklwY3BteXNURnU5WUVZMVlVZW5RNmFCTXl1WVdBYVVzODZ4RFFxYUtaNkpqd2V1dmVMZTVNNzNITWxCQURqU0NFTmpaODRMSGZEUXhFOWdXanJWYlVXclowSElCenFjL1c0bFBGTnkwQUFDQUFTVVJCVk5FUEhzc3p2a0pScDRFMmRDTytyQkVZNGxzcnRwZTgzKzg5MXQyNXVSbTZjODlacytiTTl6b1NrVmZxSFZiU1Fub3VzVVJTVmdMdW52N29mYXN1RURWT1I2TVMxOVFFQjBaSHJVYU40amRmdmMvT3ozZjUzLy8xLzhtRnk1YzVmdkNRbmNrVlFoaVIzZTJTa3JpRUxwd0FvTTBRVi9IWVZTckJpUkpPcDRkTVJtT3N0WXpIc2Q2OTFoWnhRdFVzS1V4SjQydkVLNVNPRTY5Vkl6dytTdWJVcnBmOEZOMmU3ZThybUV4R0xOeU1TaXEyTDVkVTdwUmZmZmdMZm5ucjUzZ2F0QlZjYW1aZHB0d0xnWEl5b3A1MXVlNnhtZGRVRzRXb3RacGQvcTUzMmlxZTcwSm0vT0xXejVqTlp2ekxmL3pYdkhiMWRRNFBEcWxkelpYZHE2aUZiaWUybkhnbGtzVG9rMVUwaHdnSU1kWXVtbWZ6NzJRL2VXS0w1T3cweUtFUU9wUGViSEh0bllVQVFlazJObGIxM0xjS1Z0eldXbkpJUSt5M1hudkNwT1pVcHZ4Mjd5TitlZnQvY3NnVXRNSVVCdDlVclZSVjd2dko4UHMxKyt3NVJDMFIrR0l5eGsyWG9CWFNOSGdzOTQvM3FhNzlJWVV1MFVtclRrdXl0UGRpTGJNN3R4dWRVZ0pXaXJWV2JXaE05NzdPbENKQUVRb0lEaWtVbGZZc1ZjMURkOEtjV2JJYWR2ZEJiM2tSSC9VaUdYcXZycDYxMVZHdVM4Q1dCbGMzbkhES3plVk5MaXgyMlM0dUVGeUpGcFdVS1hRYlRwSmpRZk1sekFzZUNHMnBYcTk4dlA5Tm9DeUtGTm9qaEJCWTFoVTdPenQ0Q1hpUldFeENHYndFYXVmd29XSmNBTGdVdnFFN2NvZytzMkRvdWxKV0N2RG9pNTZqZzRkVXF1THU4aTRORFFZVHZRS1o1UXQwU1Y0YnJMOEZhQ3gxMC9DUWg5eW92NkJZR0g1dzRUVkdvY0I2alFrR0c3S21zMHJ0by9GSkh6bEtDT1l4V0xkalZ0V2t4UmhwMFpuNmhSREp2VEd4QkdBSTRDVmFxSU9rRUNuSnR0N2NBRG01TDkxZkVvdFN4TGszZ1BJNDdXaE13NktzV0pZVm4wMC81eTczcWFqajZHTVUrR2pSTFVwWTFnT1ovUzVnSUxJdkVOa1dwQkJHaGNHbzZLUXB6QmljNEpzNDBiZCt6VFFEcWFDUkVDK2RLRUhqUUN4WmpENE8vb2FnQmFVTFhLaHdMdC9VQWNudW9BS2E3M21jVDJFTGdoT0tvcUJxYXJiTkxxZW5Dd29tYUdYakpKZXNWcEZFK0RiVUs1STJrRng5U3BsTy81UkF3TENZVHltMlU0eGFNdlVaclpCUmNpODl2VmNQb0djeGlCYXlxa29YUkVFZGZPd2J4T3pnWDN6ME03eUNmL21YLzRwWHJsMWpmLzgrRjhkdnhHc2ZvZ3lSaEJ3dm14ZElndEJBaWlOVVdsREJFOFRodmNlT0p6UkE0ejJTWmpweGRkU0R0WnFGcjhBcWxOSjRJeGhEdENKNWFKekRPaUg0U0ROekhHMVFVSVVhNXlxOGxhamhPZkhzTC9aNDc4T2Y4VjkvOTUrb21GS09MTXRLNG53RGhFWFhMdlU4Rm1tUVJGcnlOWWtIU0Z1U0tyVG5xUkVmdWxCVUFSK0xlREpueXZ1SDc3SDgxWngvK05NLzU1MDMvb0N0TU9iNDZJZzNSMi9SbkhpV3l5WEtLQ1piSTB4cHFPc2xzK1VNdENBYWpGVW9FNDlCTE5HbEcwQTN1bk9GU3hTc2J5K3BvcjBuYVYrUDkzSHNoeWtFUTJsUUJoTVM2d254SGxhaUlKVWY5ZDRUeEZPVW1tSTh3cm1hQi82SSsrVWV2N3J4dC96MjVrZFIyeElYS3l0Vm5iVTFOMWQ3RElxMFl1aTFhWGZJWFgvc1BkNDRXYXZvcjE4c2x1bEhQRnZqTFdUWmNHTjVrLzlWL1JsZUtTWldZUnFEVllyQ0t1cmFVL3VLeVdTQ3F4d0VqVWp5SmtoYTFFa2tyS2hNWUNVdU1OSldFY00wQ2wrZ2RjSFI4aUhWdHRCY1VieDM2MzBXTEdLLzY1WGhYWkVjeStmZjlwVzhGc3JXOGZTclZkYytqVjhTYlhhQkc5em40SERHK05wVnJoV0tzUzR4VGpHV2dyR01zRjRoeXdhQ2ltNXZBOG9vR2gwcnJ6WGlZcWtGbFd2UmdwTllzS0UxWGxoWWhqcjFrWFQ5a2tmQ0d0QVd2RjNHb3hhTENRWWpCU1pvYklpZURLVmkxYlRvWm8rbVoxRUJDUTF6TmNWdE45dzQrWlRQOTc3Z21GTWFBa3VhbHNQRzMrM1ZpcVl6dmtoZVBEcFlTbzFTSlZNNTRVc1dUR2NuSEprLzROMXJQMlJjbFl6ckVhb1pNWklTMDFoMHJhTlc4cmJGcXhoV3BMMXFMWjBxVzFoYkFoMS9WYlRyR1N0aTNIY204YWhlMUV3eUJIbmZZSXhwaTBhRUVHaENiQS9sQTl1QWxrQ2xHaHBUNDdZRHAyYk83ZWxkdnRpL3lWZmNUZ29PRFE1SGRweHBvUDZlejUyL1R4aUk3QXRHb2c1VWk1cDYyYUI4alNtRndwUk1SbVBteXdOUUxybU1BNGhCc2xCNENvd1BLb0E0d0taQk95YVNFQUpLUjhtU3Jja09Fek9oQ2hXQ2kvcWV2d2Mzb25NTm1sRWNzRVdoakdXeVBVYTdrdUJqWEZrVTdneUlpcFZZMnVRYUVZeFAxdTlVR2xTTGpzUldDVUU4bHk1Y2hMR2pMTXVXbFBqZ2tlZlNkdDBBdkVMU2VoT1hVdUJTUXRXQ0plOTkrRGNFUEgveDUvK1VkMy80Snh6ZVBxWFUyeFRHb28wQ01YZ3ZCT2ZJbzY1VzBVNGFYSkw1MHJGcWtyVWphdWQ3bG54cGowSFM1RnFPU2tLSWNYbjEyc2h0VVZoYnBCS2pnV1ZWc2F4UEVLTVo3WXpadVREaGNQNlFDOWQydUgxMGcvLzhzMy9QZTUvK0hNY1NNNEtaZHh1cWtmV1JTY1hhYWlFYlFkY3RoZjNKTjA5MEpoSjJJZkM3L1E4NCtzVWhmL1R1SC9PVEgvK1VkOTk4bHp1L3VjdlYwVlV1WDcyRUN3M1Q2UlEzYXhodGpiaDY5V3BNd0FzTmphdXBmWTMzT2MwbEJvVm82U2JOdkNocEZ5ZXlXamEwSmJVOWQrZDh2c0Rha3BIVnNhcFE4cjVJK2gwZlBFVmhNSVdsOW82NVZGRFBxWDNOaVQ3bTMvN3FQM0J6ZGpPR0VoQ1QySFJLZ05JNmxYNWRiK0oxRi9FanNVNWlWYy9NMlBQeEpPYW5RNlNFQzViY1ByclBPN3Z2TUFLMGw3UytpbHJHQVkzclIxL2tKRVdWTGZDZEtpK1FyTHJkY3lVeHUxMjdBSVhDYVhBajJKdnZNMmVPbzBta3J4OFJIdnRTOG9pbk1hQTcvSTFLRG10OU15clM1a0NlaHAvdi81SS8zZjRwZi9qNk8xaEdUQStYek9aemRoaXp1N1dGcXFQZWN1MXF2UGMweGlHRnhoYVd3aFkwdFl1RVBWc0xOMnhYM2cvZDZ5cGwzb1BHa0pJMWd5STBRdTFkQ2poMVdCdjdUeFdXTEpzRnlpaUtyWkx0eXhOK2NlOTlicHgrd1FFUEUxM3QvQVVLazd3VHFkMVY1NERRSlB1S1VZUVF2MU1SOWJBOUhzYys0UVNLTGNzMSt3cFhKd1dGaHZseWlhMExkc3dPTzVOdER2MXBYS2dLYmJLb0VycjdSc1VyRlpSR3EzaStmYytpRGgyRmlRU1dGZmsycmVJQ3QzWXVlVzlBV1lNdEM4clNFQlpMZ2hLY3FhbkhnVVd4NUlFNzR0T1RHM3pwYjdGTUpOYm4waERadXQ3ck53TmVQQVlpKzRKaGJZRjNscUljTTluYUlqUWpuR3VvbGhYV2FvclNndmJwaGdrZ05scGpnMG56dFUxV0JRMVlzdENNVGpGSDA4V1VvblRNWmpNV3ZvcDJScVZqNlU0dE9QLzl2aFUxRmtPQlZoYnZvLzVwOEFLdXdTOHJKcU15c2tHaVhKUlN2WGhTQlVpcXFHU1NSRkJReVVJV1AzTndlSVNaZUtiVGViTGx4bWc2cmFKNzdsa3RzZ0M5bVdQMU9kRjFydEo1Q3A0bEMvN213NSt4V0N5WVRoZjgwZHYvQU9NOUVocWF4aE9hU0dqS29xQW94dFRMSnRaalR6dVArckJDY0FwbCtvTCs5R2IxN2dDQ2k5WFFOTW5pbStJUmpURVVDcGJ6SllXMTJMRmxQQjVoZ3FXUkptcmVWbFAwT1BEQmgrL3hQMy83TjN4NDUrL0ltZmtoR1gyKzZabkFlNC9WQlRxb1dCdCtmcGY1YitZc2wwdG1iMHo1MGV0L1RMMVlNcStuYURSbTIxQ29BdWNhRG84WDBUZ29FaVYrbElrVjNjMDRXbm0weHZsbFM1WTJOQjhLdFVKaVZ3bXQ1clVycitHYXdISzVaTGxja0V1ekZrV0JLVFVHeThuaWhNVnlUakd4akhkS1RwZFRQdnJrZC96Nnp2dmM0WFpMWXEyMWFLM2JCY2Q2dGFjbndkbkxzYjZQUkNOeXNRMFBWaW1jaXd0QmxZcGxlWVNidDIveTFrL2VqakpaMmhDOFlFUWhHRkFsUHBoblZqQnl1Y2lERm5TcDJidTlSOU5GQXArTDUzSGJlaHpISFBEUjdIZk03cHh3ZmZkVnJteGZabmQ3aksvZ2FEN0ZvT01pc3pCWVpURzZqTkpQUVpES1U3WTZzRjkvSzJKb25FSHBJdW83SzRNV2l5UkpNS2NDcG9qSlhFdFhvVXFGdVdEeDJuUGFQT1RnNFFHZjdkOWduNGRKU2dzRWc3UlUvZkZRMWtBZEw3b25WajkwQWdyUEF3NzQ5VjdGMi9ZdC92Q3E4TnJrTlVacWpNeUY0M3FPZGxYeWNpVFBwRkxreEU2VDdwSGdRMUlRNldRR1c1V0R0U1MwVmcxRE9xc3hPbzdsUnBtMjZJRVh3Ym1hUnFKQzhQakNHRVlseDh1SGZMSDNCVjlXdDlnamFoRFhSQjNpL3VJWXZwMnhhOENUWXlDeUx4QUNOQ2xBY0xsY1J0S2lvaHZjR0NqTGdzWlBrM3U4QmdJU1VpeWVSQmFscFk2dVpFa3IxelorTm9CeTdPNXVZd3ZQWkRJaEJ6TW9aZkFocDE1K3Y2RzF4UWVocnVzNEVGcUxSbEhvQWpzdVdjNW55U1VaclROQmZCdGpGYjI4S1hTREtFY1ZSN3RvOVFnNFJsc2o5RGd3MnBvd1lndWhKbUFKSVZrbm45dGd0amw3UEEzbkNJR3QwWVM2OG5nODczLzVhKzdlM3VQLytEZUtTenRYdVhycE1sczdPeEFzcm1yd3JzSXZhNVNZWkQwb01FcFQ2SUlRWWhhMzk0S3lLWGFSem8zWFQ1Q29xeHByTmRaYWxJM0pFMEZpM0ZwUVFyRlRzbGpPcU9jMXBpalkycGxRR0VXMXJEbGVQT1RHNTUvelA5NzdiK3hWZHhBODI1TmRqaFlOSWdGdGVoN3VaMjQ5ZlhiNnpWWlpjUmh0MEVIamNaeHl3dnVmL3ByUFB2Mk1mLzVuVTY1ZmVvMXJWMStoS01aVWl5WFZvcUxBTWg2TlVHS3dZckJTb0VrVnpaeUhHa0p3cWJKYWpqMlYxUzM1djBoZFF5S3g4WFZCVUV5UHAyaGxLR3drcjZJQ2phK1pOYWZVMVJJOUFudkJNaTVISE0wTytlREdEYjY0OVRsM1ozdWNjaHFQcVZlT3RHbWE5dkZ6SzBYZHR4RG1TVDNGbUtvQU50amtFUkpjY0ZnTWdyQWZEcGczQzNaR3UyQXMwZ2dtS0ZCbERBdnhZSjZCVW9xQ29GTko0QUlhYXU0ZDNVdGhHK2xZKzdHd3p4blI4bGh6bnpzOG5POXpmWDZkUDNydHg1aExiMUxhZ0hlZVVWSGdCR3lLQ1ZVQzRuMWNNQWZCNmpUZUFGK2Z6RnBRSnVVL3hpU25JRHFPRmlwV3FBb2pTK1U5dGZIb2lhSWFOUnpORHJqNTRDdHUrcHNjY3R5UzJCeGYzMWxsWllXODlkR3VmVk5aNWZoaVRFWnpUY2lCQUV4WjhybjdFbmRQV0Z4dWVIMzNkYll1YlNQTG1yRHdsT24reXBKMGNkSGNGUXhSZ0pIa0ZVanRGSWt0WjcwNUthNDJJdG56eGNjRnVJcGZFcDA5Q3RCSWc1OEVadWFFMC9rcE54N2M1Sk53Z3dVTEZqaVVMWEJ1dVpyMFJ1ODNIK2xOR3ZCdFlpQ3lMeFNhN2NrdTFVSlJGQVUrTklpTHRjWnRZU2hLd2RjeEthZDFyMm9TbVkyaEJycVZWTkxrNUFsSVNRVktPRGs5WkRTR3lqVUlVWS9UbXBJbTVEVHg1OFFrWGhEeUpGNTdoeWtNb2dMSDA0ZXcxRXhHMjJ5TlN5QjVQaFhFWXA0cU9oaFZzamFLaWduY29oRHBpSjFTaWlZNHZHK282cHFHSnVXMEtscmo3RE0yMzhyNEtHZmZNQWE4QjBmRGFYVktRVUdjL2dQN2JvLy8rOS8rWC96cEQvNk12L3FydjJaeTZTMnF1V08ybUZPWU1SZTJMdU9XZ2RBRW5LdFJXRXBUWXV4V0ZGVVBQaEp5NWRJazBmZVh4Y2VqSWcwUlFhSnRJZ1JDY0lER2E0L1hqa2JYNkcwd0k2RzJDeDRlUGVEVEx6L2gxdDJiL08zTlg2YW1pdEd1cDR1VGR1d1grUmI2bndZSlFoM3FxTStMUVdOWU1HZkprbi8zL3YvSFd4ZmU1a2Z2L3BnM1gzK0RDNU9MR0d0UlhuQVNDUE9HRUVva2dCV0xDUm9WTE9KVEhJUDJ2WUlHbkx0VlFkcm52ZzNjU0pKSzRnZ3VvSzFDRlJvcEJUTldXRFMxcW5qWUhIRC93VDIrdkhlREczdGZjQ29uZUJ6YW1DZ3hsYndxenEwdVRITk00S1BRaFdkMHNhSHhqZEQvRUIyQnBjZGl3R0F4enFSd0M1WHNWOUg2UFdmT2crbER0dXdGZGsxSlVFSWpZRlcwdW9sdm9zWHNLZnRBVUxITm5QYUVJbkE2UCtXRWs3U2dDV2hqVWhubHA5cjlZK0Z4VE5OaW9xREE0Wm50emJoOWRKZlhkOS9nMnM1VmxDbHhsVU10QWxReFNjaHF3OWlXV0czeHRlK3NoMThUZ3FiUTQzaTJJZUI5aU9Fb1NRZlZtWVltek5FN21qQlNQS2dQdUhYM0puZW1kemppaUpvS1I1T0MxcElWdDc4Y2pIV1RING1ReS9NbStUc25jU0hWcFBRc0Q4eHArSXd2T1RnOFp1LzBBYTlkdnM3VjNhdnM3RzVUSDRlb1NwQVdlT0lWUGdoZWdDQ1VKbzQvZmZXT1ZrV2s5Mzlza0J5ckVyVmdZeWxtai9NK0twV29nQzR0dXJBeGs3WlFIUG9UYmg3YzRzdlpWNXh3bXVKaFF5eHQ3T2RSOGtPRmxUNGZ0eHRVSEFhOE1BeEU5Z1hqZERGRE04S0hDdWZuS0xGb1kybnFRRE03b1NnMXFJWlk2Z2pJVlhxU1N5MUlGV09vY2lwRFc2a0VVSUdMbDdad2ZvSHpDd1NINEtpYjUxblg1OFhDK3dZd2JHMlhiTytNMkRJRnJ2WlFhaWFGb2FxbWdFK2xNVk9iS1FnOVllLzJSYUxWSkZ1eUFnRlZlSnhxYUdTQm8yb3RQVXByeXNKU1BVT2djWTR5ek1oRFlsOXVTQ1RQOVRHK3EwR3dqREFZUEJXV0NlL2YrUnZlLzM5K3lidXYvb2gvL2svK0JYLzBvNStncGVUbzZBR3ZYSDRkdi9RMFM4RTFqZ2J3QWtiYlNQSmNTTDY0MEo1M1g4TExXaDFqKzF5TU9kUmFZNHVZT05Ib0FJVkJtUklmYWg1TUgzRDczazArL2Z3alB2L2lZNDQ1eHVPaW0xQ3JXQ1lXWWp2cmdoRDY1YnVlSTlZSlZ3cm84eEp0VFlKRUFvWmx5aWtmbnZ5T1QvLzJZMTcvL0FmOHZYZittTGV2djgyTzNVRTNoaDI3Q3k2Uzl5WVlpbUF4cXFTd0ZveWhFVWZRdm8yNTdtOEJmRjZkbU5YbjhYT08zVmQyY2E2aDlpNFdCZFdPaG9hRm43R1FpbnRIZC9qazFzZDgvUENURlBjWk1HTk41UnE4Yjg1d3RDZ3BSbHB3UEdXN3JyZGZmcnptWG8wdlowdDRsd3daNDFzOURRMjNEMjV4YVhLWnlXUWJwVlVidXFNeDBVSXRmcFUwZncxSXF0alVXSWN6bm5zUDdsRlR0ZUVya2NqVHhVNlRpZnZ6Nlc4QzFBcTBDb2lxY042enBPSmdlY3lENVRHdjc3ek85ZTNyN0tnSjIrTnRkcmJIakNqQkJScFgwM2pRUnFXQ0dVL3oreUZtNmhQbHFDZ2l2d3FGQXF1aE1NenJHU2ZOQ1Fjbis5dzl2c09lN0ZHeHdLWDB0aWJGZmtvS0tBaHB2M0Z3TW0yYy9ibUUxaE5Kb1RMZ216WkdQUWdzVlVNdERvdkZwMUNESTNmQzNmMzdYSyt1YzMzeUNtK01yNE9QM2lLTndZaWdQZUFGSFJSMWFGWVVHZFlYWERFc0tsL2M5SjZLZVNOZVI4dHlHQXRZamJheHI1NVVKNXdlbjNEa2p2bHljWWQ5N3JPZ2pzbGNLQnJsYUlqRld6WXVncDd5ZWczNDVqQVEyUmVLZU9OWnE1bnNscWpDb2FSbXNnV2xqOW05UHN3UmlacVFBSUtLNmFwaUVnbXEyNG1rUzh6b2xvOWVDWXZtbU1iTjBiZzQrRkhUejBMOVBpUFFKSjVTY1cvL05tTXpwZFFUdGljN2lGNFMvS0oxaVVvV3F5ZEtSY1hTbHFuRlVuaUI5SWdzS3JCd003VDFGR1BGN21oTUpaNVpYU0VoVUMyZmI3WmNheHZyeDhoS3RNcnFJcnJkeEhrYUZqUXA2dldFbWdLRFF2UGgvUS80N1AvOWxMZXV2c00vK05OL3lJLy84Q2Q4ZHZkM1RPd08yK09MV0Z2aW5hZngwZXF2dFVWc2xsN1FYVlo0SnoxUDBBb1hITjY0R0c1bUxZNkd1cTZadVFWcXArRGV3VDF1ZlBrWm45LzRoTDJEcjFneWgwUzZ0aVpibkN5T1l5Z0RPaVlnSlczYVRnNzlHNFlHVThaRmlxczlUUWl4c0FJVnVXcFl3SERqNUhPK2V2OHJycGdydlB1RGQzanoydHY4OExWM0tOV0ljYmxGZ1lybE1mMkNxZzY0NEtBTW5RN3NlckxYWXg4TDkyYW5NYnpER3NSNFpzczV0dy91Y09QdWw5dzd1c3QrdUk5TEdkTmVCV3Bwb3M2dUpoYVBjRkdhS091cDVuMS9uYkNDeDFLN1RXN1YvTHFvVkRzc2U0N0FTNU9DS1JSM2xyZDV1M3FiVjdaZndXcUxlQS9CdGtrNXo0S2dJQ1NQUU1XQ08wZDN5SVE2S3BXY2YxYlB4U09zUUk4Z3VDZ1NnWEpZaVVGZ3Q3bkh3ZlNZTzlQN1hMR1hlSFg3Q3RlMkxyRnJkeWgwYksvZ0hkdmx6bE1USTFHeERDeEdnNDdtZnFjOGxXK293b0pGWFhOVUhiSjNjcGU3c3NlQ1JTUm9RSzBkTGpUa1dTVHovWHhlY2ZYODZEbENBejZrY0JrbE1SRXRmMTZGRkdHcVU2aUh4ZUhRMUpIc254eHc4MlNMMmU0ZnN4WEdqSXFTeVdqRXhJNHB5NUlSR2lPYTBJUWsyWlhiS0haR2xTUW1KUkhaa0wwRzBFclRpUW80NVZPWllrZnRQTXQ2d2NQVFkrNHY5M25BQVRNV1ZEUm9ER0lWY3plUDNnVVRWcTBNZVRHVUkxWTJtaUFHdkNnTVVSNHZHT055UkZWN1lNeGYvZVgveHQzYlIyeE5Mc1VKb21rb1I4bC9yVUtLWVl3eFZTTFI4cUtraVJwNEswUVc4dlEwcjZkTXRpemppZUZudi95dmpKS0Z0Nm9XR0tQdzMvdGtMMFZSVEhDTjRpLy8wVjl6ZVArVVFrOFlGMk1Xc3ptbHpmSENQbG5La3VCWlVGR29Xd2xCeDlWL0ZLcnZaYUNyZ0plR1M2OWM0SU9QM3Vkb3VZL1JncE84ZU9DWjdwNUlvWFM2Q2RzUkVucVB0TzdpU0hVYU8zT3AwY0pFWW1CVXNpU1R5bGRpa3d2ZDhpZHYvWlEzWC84RGZ2VERIM0h0OHZWWXd0TkYwbDZZRW5FNTNybzdobGJRWDRWazFZcmVBRzFBeEhONmVzcjkrM3ZzSHgzdzNpZS80K0g4a0ZrNEprNThEWWFBbzhiajIrWVJCVW9idk05bVBZdldpaENXUE8xRWtOc3Z0bGZvd204MldROTcxMG1qVzdKbnN2dFpVdGhOU2g0MEtDeVdMYlo0cFh5Vk42Ky95WnZYMytiYTVhdE15Z2xLb3FVNnlyckYyTHlBckd4akdIdDBjVzUrWDZpbFl2L2hQcmZ1M21Mdi9sMk93eEZMS3ByMHp5Y1JNWWRIRndxdlEweG16T2ZtT0xjUDlzbnQ1dlpqcmYxNmI2eGJZOWZhTUQ5WGFoUkRuYlNIVW9IekVDSVBHRE5pbXgzKzRyVi95azlmK3luRnZLQ29Da2FVS1RMS2dmR0lQcnNRV0NlNXNUVHY2dnZPQkpiR3NUQUxwbmJCdi8va1A3Qmd3VEZUbHRTeGJHNE90NURrb3M1OS9OeFcrUnBReEFJY1BZdXZVWmJRS0F5V2toRVdUWWxoUk1rRkpseGhsNnVUaTF6ZXVjVDJhSXRTYlJPVkNmSnk4c20zWG9FM0ptNURESDg2bnAvdzhQU0F3M0RJQ2FlSnB0WFVxZWhzb3gxT05aMFZQS2lrN0tqU2E3cUxDUTFueDdpK2FrR0VKYzVLcVorYk9FNDVDZUNGeVNRbW5BYnZpVGJYZ2tJVmVBa1VXQ1pNMkdMQ0R0dGNLbmU1dEgyUjNja09XOFdFUWhrc0doM2krS2FUem5yWCtMbkVNN1RoZEFTQ3ptVm1IVXRYY1RBOTR0N0QreHpLRVV1V3VLUkJFTU1xaEJtelNPVDdxNnQ4YmJNdVcyYjZJUmQ4TWZIMysrUE9nQmVHZ2NpK1lIVHpSVUUwc2NRWXlKNTlqdTVPeXVpaXo3T296TG9QSkxSRG5nQU9vU0hPZWxtT2lwVUIrSHVMUkJKaXR1dUlXSnNuV2lqamdKT3RDaTAxSkxkZmJKM2N0anJ0YnBYOVNMSmkwMVlmajBxVGN0N2svclVPdlNOaXE4ZllZVk80d2JtUVBqazJpWmdWaWRxV2pQU1lpenNYdUhMcE1wY3ZYMlY3ZklGTEY2OVJtakZGWWJEV2dvcktEMDFUNFZ6RGZENW5zVHpsNk9pSXc4TURqazhPbVRmekpFb1RxTW5hbTZsdjBTQXBhN3pWZSt5M2tXaGkvN2JwN0pxTjUvMGtlQ3lSQmRZdTUrcjJFZTFuMnZZenFSOVpOSm94WTdiMWhNbGttMUV4NXMzcmIwVDVyS0trSEk4b2pFVVpuV0tLaGFhcW82Qjk0MWhVUzJhblUwNm1wOHluTStaK3hoRUgrRlRKSVo5QmZwVEU0cExMTjVHdlRRVDlLZnRnUDdUbGpFVXViMjFhU2FXbU5VckY0SXhXdGMzR3k2bGN2S1NhMkJVcUdGT3d5elovLytMZjU4L2UvRk11aGd2b09ZeWx4RXFVQm10MGVHb2kyMWpQdkt4d3U0SGZmdlU3Zm5YNGF4WkVkWkVwODNnOHJZRHVOMEJrWWRVd0I2a1JMVWhlVU1hUnFVUmpnVEpSb0hnWEdLN3lHcFlSSTExU2prYU15aEpqTGRaRWxSQnJZZ2lHaElEem51Qmp6S2VFUUtNODkwLzNlMVMxYVV2TGhuYlVpb3NnbjdZb1I2NHRBSFJFRGJvNTRUd0xQS3RFTm40c08zVkRHa2w3cnYvMU1hdkhFVW4zV01rSWcwV2xkc2tMeUpJQ2krSUg0OWNwZFVHWjdqRnJTNHlKWW1NUUNieFBtdGhWWGJPc0ZzeXFPWFBtMUN5Wk1tOGwwMXdhd1gwNlZrOHFqYjArWHZRZnR6RU04Yyt3U21RYkJpTDdYY0FRV3ZDZFFVTW1uUjNaZ202U1g3OVoxa2ZRVGU2cFBLaGtzNDA3LzBiOUhrTVVCSEU5U2hNZFp0Skd5K1h6ejFOM0psUDBJc1BpdC9WYXU4ZjNjb1dwTkV3L3ArUVJhWCs1bjQzOGhJUGlPUll6a2FSem1SSWZHcXBFYkdjc2d1TDRaSStiSjFEY3RGaTlSUjBnRHdNcG43NFhXaUNNS0FocHdBLzB3d0JDYXRuc0JYRHBmZGRORE9kTVpNOEw2KzBYUmVkNlZpUzF0czNZR1BjV1g0OXhoNkdka0NNbDczNWh6aW1IUVdGbmxvS1NqNDgrUktYMmkrMnNVcThMSzYvbFBlVDNJdFZ3T0tvVTV0QVJnZjdjbVErdE8wNjk5c0kzUEltNmFHL0xGYWRVbXN3REFTOGFKdVBZWDRLUHdkZHB3cmRHTWZFbFY3akl4ZTBkUmtaanZFOEV5S0dTc29CR1BWRnd5U2JMY2xBQlp4eEgxWXpENmlRNWtLTmJlYVZadnNHWVJ0WHJickZmcGQ5U2dvaHJsM2RKNVpzS0VtRURoV1hHN1VqS0FxaUZRaSs2ZnBLM2NzNk40OUl5SnhMVkZQK2YrazhNbDVHVXZKWEdRUlhPVGhQcjk4S2pGdWhuWG91LzBuMGx0TGZhdVFzanlhOEhuQVJpYVl1bUpZZ2Q4VGNZTEVmTGoxT2ZpY1EzMWYvcXRVdG9kNTQ5VzdsTjhvaTlUbUpYa3JjZWRlNnkrcGY1Zjl4S1p4bmZzS3NCM3k0R0l2dUNzV0pwazFRbUJkaE1US0UvUW5jMldiM2gzWDVRZk9oLzRmY0hmYklrRUZyYTRWTHFXNnA2ZGdiUkdoZ0gyOVU0c0xPRDBsbDNmLzdwYmxCK2V2U3RHTEI1ZVJMeUI5c2ZYdnRBSDIxN3hIMGFxMEFjSXRIcm0vbUFvNEd3d0xLRDBQUklQMjJBZ2tJNFpaYVBJQTdpeXNUcVlFckZjQVpmdHoxTitndWxkYUxkV25wQ0loYWJMZEJQZzNEZWZ1U2N4NCtEb20yTFpGdHVYKzlRUTVnelpwU3MvdmxuemljZTNlN2p2NENqb3VyR2dFY1IvNTYxbUVTTnBlM0Qzd1NaN1FpejFnYXJORjRhWW9hK3hhSlk0cWtXVFlvbjFKQXFVeEhBcE5DbmQ2Ni96YldkUzR4VmlRNENJV0IwV2tSS0xwNzdhS0taNWN6eTQvWjFCVTNoZVhENmdJUDVQajdSbFlCZjdZY3Jsc0Flbm5FaG4wTXprbW8zb1Q4ZUtNZ0p1ZEdFRUhBOU1oU3ZZZ3pEVVJUZE9UM2hBU2tVSGtmRmNrVndwSDAvUzAzbDBMSDFCVjMvK2ZwUG5yZlE2eUcwUFhFVitjN09GZTdDMmE5MnY2RkFiQTJpOEtsbXJ3dWFDcWlUWHkwZXBtNzlJdElOSkdjT0xOOFpJZEhYV05NdzZUQjBqcmpWZnRHM1NHL3cyS3hib0ljMHIrOG1CaUw3b3RHL0wxZEdoYkQ2R2M1K0pnNmVBZjBrRTlrajNFVy9YK2hKa2EzWkVDRTNRMDZjaStUM2tjMmhPSnVVOHR3dGk5MnhkYmJoRHYwZ2taVXZLZGFzVGIxK2tLNjNpK3Jra1FpWjdyMUFORXhVZms2V0g0L0twbm5YMGJKalVuaUFSaEZVSUVpRDkrc1QyQVpMOGlQN1cyQjFWbjNPV0hlVjV0ZldMYlRyN2FjMkVWYTZTVEIvdEJlTlV2a2FMZWZiWkt4T3BhUlRURzZmNkFiQ3VxYjdXWnd4eTZvMHNTZnk5QXoyb0hNSlJ2dUJlR0JHYkxLWGhSUmdFWjNtWmFidzNxQzFJTUVod1ZPZ3VjQVdsOWpsaDVkK3lKWGlDcVVya2NiRnBFb2RRS3NVMzJnMkhFVHZFQjZSTE9meE5DcHdzRGprbUpNdUUxL09kTkQwTkpNaGVENkxxRDQ3QXRyN0ovVDZZSzlQNlk1WHBvK2pKWWFWR05TS1BGdTIrQlZKeUwrVmJSTzY1OXAxa1Rwcis0MjVoQUliU0c3Ny9Md215T1QyQ1c3Ui9saHgzaTdiZVBIMUw3Wjl2OGVtVTRXM1JxQVJqVkVhcFFKQjR0WUxLL2RSdkJ2NlY2QUx4bW10NU9zRWRtTTRTUGU0ZjZqckg4M2pjMTVFbnJ1SUh2Q3RZaUN5THh6WjhuR091d00yRHlpOTF6YmRTczhqaHZNN2o5NjVkYkdZRzZ6VDIwNFZnUUFBRFJWSlJFRlV2WGJWMHIzWWtzUEhXS3JQV1VjOE83S0ZzdmM3U25TUHpLNm5keVJyWms3SzJHUk4yWFNRMlNnakc1N3IxQW9yQks5N25oUEx3dHFDSysvS3BMNTdKdVJpMDNIMUxSMWthOVd6VFFUcjMrK1hyUlVKMFZwMjd2YmNuZWFkUldUanNWNTdYWUVwTkFTOVFyS1VVcTIrY2RVOFF0bWlUYmhaM2VmYUNaMXpEejgvaS9aR3RGWk0xZjZNeFdLVGRVd0JCWXFDVVNTUVRiUXNHa2Jzc3MyN0Y5N21CenV2ODRxNXhyYWZZQnFMcjBLeW1HblFIckZQUGp5dGs5amNMQXMzNTJoeHlKSXFPcFIxUU00aFlWOGpjT2ZKam9uY0xWWjdZWGNKTnh6TG1wczloRmlzSlgvZnQrL0hCN1c0bGZQSTc3ZWZ5eWJlZmw5ZFAwZzUrM2psVmxVZDJXeTNyTnBZdXQydGo2L250K2hLbS9RTXd5dVc0TnozMWZvWDRoNDg0ZXk2dDhjdUplZ05iYjhXQTczZXlmcUx3dzF0b252Lzk1R0ROL3BMeDkvbjZmWDdoSUhJdmxCMHNab0FVWlYvdzhlZTVtN1pTQ1EwcmM1c0hyVys2UW54MjRKQTdNN2RjQ1JyOGpzeFl6eStkelpQbVBQYmZzVnl0KzVRZTBZWnN6WHl0enA1ZEwrWktxNlRLNUoxQTNzL3BqZGYyNjRmRmFWdE5VV2xiMm5wbjErMkVRcG50cWFJaERmL1FmUWlLNlV4bWtST1VpdG15OHVqU0d4ZXRIMEx5S1JXOWRvdmIrUHIvWWs1OUs1eEwvQ3hiOUhxejJBcWNnMlhpTWk1MEt1ZEtwTmNsYXNnMVoxbTc3bGtOcjJXSzYrUmJGSFBJMlhwM0RqY05qTFJ0dGJNYmJiYW1PbUFwMGozbTZKRUlSU1VYR0NYNjd1djh2Ymx0M2gxNjFWRzlZaFNScWhhcFNiMmVLMFE3UWw1VGZZSVpBS3IxcDdIWS9ZY25CeHdQRDhoUmxzYVBNMnE2L2diUlU0YW9qM0czTHY2UHg5RERuVDNvZlp4aUVPVzlCcEJyVjM4eDkwcVRlL3hKdVBGMnVLMWI2QmN0NklxNmU3anZIMFU1REgrZ0hPOU52MWpTdkxubXpzaUdOMzE4NDJIWS9vamZ1cXBFdVhvWXVKcWJ6SFJKL3k1QVlMdWZmTzhUSk5lbU40NVJvSUJMeFlEa1gyaDBFU2xBb2ppa0p3bHM1dmNRbWNHNlc0Q1BuTmZaUkltYWZocUp5a05ralZFdjhkb3lWeGVGUFRqTDlOajFmdG8rbnpVTit4UExuMzAyMlRWZlNqa2dhL3Y4SC9HTnR3NDZlcTF0L3BUVURmY3hoaTc3dlA5eVJQQVZmRzl2aVdsKzYzVVR1cnMvSm41UW5DY3NWeEdWWjdReHNLdGZwR3V6NjI3N3IrSlJkTTVuZ2U5TmlYbGhLdCs0dFdxUlVuM1B0dWhwSXp1eW5ZVjBQMmVFTkJsc1ZGSHRpMnE0VmVuK3VnV3pVODBPVDVTSk1TR1ZvRXp5U2k5eHptVXlLOHNZTDQ1NUxhYU1PSHQxOS9oNnM0bG11a0N0NnpaTW1QS3BtQnNTcmEydHRpZTdMQmQ3ckJsSmt4a2k1R2Y0S3RBRVFwVVVEZ01YanVDY2pSSzRUVVV3dG5RblhPd2JwVVZCZnNIRHpqbEpCcnR0STZ1K3p3VWZOTVZ1QlVyVEZ4Q0Z4L2E5YVlzcjZmeG9zQW5ZNEpPWDhoTXRMMXZaTlVjK3FndGdCU3MycHJqZU5TV0xaWmNncVE3NVA1elQ5OUxkZDRvYzA0djY1UEROY0tNNkxWYmNnTkY3SzhDQUhWbXFVbVVtc3U3WFNlakFsb3JDQ291MW51alhGUUxEeFQ1Mk5OQ2ZKVXY1M0c4ZjdPdG5uVnJQSUR1dmx3ZmN3WXkrOEl4RU5rWGprMVJrWnV3dHFMZFpMWFo1RHc3TjJQM2UwNWdXengydUQyWDlMZHZ0bVQ0TEtrNSsvMCtubE1ieXRtbk1kSzNQeG1zalpwbkxKdXJ4OTVaSUVGUTZHUUZGT0tnTDhuY3FGUmMvSnh4czBza3Q1SzJIZEhWSzBUdDNLNElaL3ZldHpqZzUvYnJmbHBXdHZsVDY0KzcwSVQ0YlJkY2VqMi8ycDJ0b0tqcit2Rm14WXhleUVIOFNaVklSTGEyKzhlMlViZHM2bG1KdmhGa1NpWm9OTHQybXo5NDdXM2VlZVV0NnRNYXY2aTVZSGV3RmRna1ZxKzF4a3FCV2lwVUxWVDFnaEhqYUpSV0NxMDBRYVhGdEFjVllqbG9IVUtVYWtPMW5sNUZKRmdtTFpxeS9xNVg0RlRBRjFCWnozNnpUNTNFcFl5eHJVQko3cnY5Qm5xT29sdXJXQ09ZK1JxdGo3d3QzK3V2ZmJYdUxMSm55R0RrdkxKK2svWElvbFdSTml2UlJJMEVsWjVITTZlc0xkdjYyQmlTdHJZOTczTlBqOVU1YXBWQzZqT2ZPVGNjSkZtMmcvZHBRWmhmanNLTFNrVXRYNWZVYkhKMHd1Tm1pMjRVelNSMllLbmZCd3hFOW9XaXR5THZXNnMyM2p2ckJMVy9lZFJRcy82ZVo1WE1mZDhKN2FiejY3MTNwaTB6QVFoblAvZEVoQ1MyMytQYi9RbndpT3U4eWM1Nzl1UG5wUnFzN3FPZFBEZjgzcU1LUU9YMyttRUYvYU5hUDBicFAxRG50LzNLWjU4Vlp4WUJQV3ZPWTc5NjloUDk2N3JwK3h0VkxaNzBaT1Nzb2tFV1MrcU81UkZqZ0p6LzF0TWdUdXlaNW9TZWJGcG9EOFdnS2RBNFYzR1ppOWhEemFUYVp1UXVVU3dOeW9jdS9qRVZGRkZCUlNKbE5CSmlYU1ZSeVlvYUF0UStscm9YVGVsang2eE5QQytuYVR1YkRiQ2pDNnJaREZNYXZGVWNoeVZoeTNJa0ZiKzU5eEgzZVJpVkh3alVUZWRubDZyZlp1c1U5bEhqN05mQUJ1TFp2eWR5VE9YcXg5UDRteGVpNGRIOTV4RjVoRURBU2ZUa3JUdDF2bjQvZnNReHJQM21tVGVmWkw1YWVXM3pPSERlL1NyckQvcGowZHIxYlFOOW51RGFidjVJZDlVMmpiZG56bmZndWQ4SkRFVDJoZUxiSkpLYnJIZS9UOWh3VGs5cVNjMlR5aE5iWHA5ait6MXFFbnVDMzlrNDJQYTIzL1E0ZSs3K3oxaU12MzA4WFNKWjEzN2Z4aHkxWHRFdHZmZ3RRYU0yMmFoYVZoU1NKMVdpdm1kUUZGSXdyZ3RHcnFBSUJTRzRsdmllS2RHckFrRjNsdnYyZFFHVHJORXFoUWhBVEdDS1JUUjBTaUtFcHE0cGpTWDRoaVkwcUxIQ2xaNEhKdys1TTd0TG5TVC9WL0RFeE9vNVlOUGljT01IenhsL24vbGFQLzQrLzhhNjA5ZmE4VmtTKzFTN2V3S1B4ZGZENXVQWnVKK0J0SDVuTVJEWkFRTUdEQml3RVk4a1NDbmtVMUlDNmFiS1hIMExkRCs4UXd0NEZRZ21oaFBVR2p4SjBVRGxDTWRBM2RTVTQ1TEdOMVRCb1VZbFMxbHkvMmlQQXg0ODVXSmx3SUFCdjA4WWlPeUFBUU1HRE9od2J0QnpSTGFnQnFJRk5mU1RLZE5XOXg3M2MyTXl3UTI5N1AyZ3dLdFlJeW9vaFpKWTgwdUlOY0RFR0p4QUtEUmhKT3dmNzNOcmNUdUdMQXhFZHNDQWx4NERrUjB3WU1DQWx4U1A5SlkrUnNKS0ZBUjBxMm1hTGEyQzlNaXR0Rm54bXhMdVJNV1FBa2xLSXFRWTJ4aUxFRkRGaUZvRlhLRlJZODF4bUhMajhDWUhITkNrU3ZjREJneDR1VEVRMlFFREJnd1ljQzQyNXAwcDJyb1owclBJNWlRWkxXY051OWthMjRZZHFQdzh5cUtaTEEwb3FxMWdaYXhoSVJWMTRUbVJCVjhlM2ViVzhpNUxLcFRSZUQ5WVpBY01lTmt4RU5rQkF3WU1lTWtoc0txUm1iQ3VTbkdtMUNpNjA0R1ZaSkh0eGNqcTN1T3NScUI2U1YrUUNLdUNJRWttS1dTeUczQXEwR2hQcFIxM3AvdDhzdjhaQnh5enBDRW9HVUlMQmd3WU1CRFpBUU1HREJpd2hrY1EycUE2bmRSY0RRb2lUMVZKbnFqVlFraXY2U1RoMW85VzBMSnFuZldTSzJWRkRkU2dIWFdvYUd6TlRDKzRNOS9uRGdjc2FWQTdCcitjZjBzVnZBWU1HUEJkeGtCa0J3d1lNT0FseHJrMlRRVldXL0RnOFRqbmFJekhCa01JQWFVVk5IV01lUTNTVmkyTDVYYzFTcWxVa0NPeVdBbUJmdDFUSmVBWEZlTnloQm1WWUF5THBzRjdoOWVDdDRHdHkxdDhjdjgyZjdmL0FWL3hGVXNhbkFrRVY4VjZEWnNGUHdjTUdQQVNZU0N5QXdZTUdQQVNvaS9lZng1Q0NDZzBCUVdqMFloU2x4aG5rRnB3ZFVOaExJSkhsQ0pXSnRPZ0FnYU5Vb0w0cUVNclNtRTFvRXo3T1lOdzhmSXVvWEZVYmtrdEhxK0JVb0VOK01MejhiMHYrZXIwRG9jY3NhQ2hKcGE0SGNqcmdBRURNZ1lpTzJEQWdBRXZNVlk0WVk2VHpRVUp4R0VvcWFsWk5qV05iakFldEVTckxDcWdna2RFSVJLM3VVQ3dVb0pTMFd3cW9rQThFaUxobGFCd1VmT0F1bDdTQkErRlFvME5Zb1dwbjNIVXpQbk5nOTl3eERFSEhGUFI0UEJkbHRsalpNSUdEQmp3Y21BZ3NnTUdEQmd3WUNPTU1paFJGSlFvcGFLRjFtaHNXVkFVQm9JSHBaQUFRdHlpZEN0cm9KVkJsRTVsanFPc2xxUndBQzl3WE0vQWVpZ01lcXp3UmMzQjhvaXZEdTl5WjNxUFc5eGlUa05GUTVOSkxLeEtKQXdZTU9DbHhrQmtCd3dZTU9CbHh3YkZBa2dLQkNnMEdoSEJCVS9UTktoYWNGNWhERkZtSUlVVUJGRkk4QVNsa1d5cFZRSEpsbG1sRWVVUkZFRTFUSzV0MFZEVCtDVXpOK1hCOFFHM2orL3cxZXcyUjV3a0FodHdTQ3gzSzRBRGhZckVXZ2JWZ2dFRFhuWU1SSGJBZ0FFREJteEVJT0JUSksweEJxc3RKU1VsRnVxQWx3YUZFSlJIS1lYb1ZKVkxoSUNLWld1MVJsSjhMSUFuaGlWNEJTZk5LYWZ1aEtPVEI5dy92c2U5Wm84VGpxaW9xSERVaW02V1NoWllJMkNJMXQyR3dTZzdZTURMam9ISURoZ3dZTUNBalFpQXdhRFJOTjVSdXhvdkpVb1ZhR3R4dmthMElGcWhkTFNTYWdVK3FzN2lRMGdWd0FJdWhLaDgwRFEwM3JHZzRlUDl6emp4VTZaeXhKUWpIRXRxS2lybFlFUVhDeXZkQVZtZ1JNY1N1WUFidEdRSERIaXBNUkRaQVFNR0RIalprZlJmMTU5cnBhaWw0WkFqM3IveEc0cVpaaUlUZHN3T1JpbUtzVUVwVU1hZ3RVSnBRMUM1VElFd1d5N3g0bW1jcDY0clpuN0pnamxMS21vY2N4dzFEWkwvVkNCb09ta3R2WHBNc2ZaWC9DZURMWGJBZ0FFTWN0SURCZ3dZOEJJak04V3dXUVZBTkFhTlNaR3lOcEZJaGVwTkhuMnpxVW9FczNzZTFwN25yVWNJNlora3VJSDJjWTdaemNjazNaOEJWRHB1bi9ZK1lNQ0FseGNEa1Iwd1lNQ0FBUU1HREJqd3ZZUisvRWNHREJnd1lNQ0FBUU1HRFBqdVlTQ3lBd1lNR0RCZ3dJQUJBNzZYK1A4QjlJS2hWUUxWT0FvQUFBQUFTVVZPUks1Q1lJST1cIlxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwwLDEpXCJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgaGVpZ2h0PXsxfVxuICAgICAgICAgICAgICAgIHdpZHRoPXsxfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPiAqL31cbiAgICAgICAgPC9nPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM1NC0yXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc5Mi41Miw0OTQuODIgLTEuNTUsNC44NCAtMi44NSwtMC45MSBjIC0xLjg1LC0wLjU5IC0yLjk3LC0xLjA0IC0zLjM4LC0xLjM0IC0wLjQxLC0wLjMxIC0wLjY5LC0wLjY5IC0wLjgzLC0xLjE1IC0wLjEzLC0wLjQ3IC0wLjExLC0wLjk5IDAuMDcsLTEuNTYgMC4yMSwtMC42NCAwLjU0LC0xLjEgMS4wMSwtMS4zOSAwLjQ3LC0wLjI4IDEuMDMsLTAuMzggMS42OSwtMC4yOCAwLjMzLDAuMDUgMS4yNywwLjMzIDIuODMsMC44MyB6IG0gNC44OCwtMS45OSAtOC4xMSwtMi41OSBjIC0yLjAzLC0wLjY2IC0zLjU3LC0wLjk2IC00LjYsLTAuOTEgLTEuMDMsMC4wNSAtMS45NywwLjQyIC0yLjgsMS4xMiAtMC44NCwwLjcgLTEuNDMsMS42MSAtMS44LDIuNzQgLTAuNDUsMS40MyAtMC40MSwyLjc0IDAuMTMsMy45NCAwLjU1LDEuMiAxLjYyLDIuMTkgMy4yMSwyLjk3IC0wLjk5LDAuMjIgLTEuODQsMC41MyAtMi41NywwLjk0IC0wLjczLDAuNDEgLTEuNzksMS4yMSAtMy4xOCwyLjQgbCAtMy41MiwyLjk3IDQuNjEsMS40NyA0LjEsLTMuMjYgYyAxLjQ3LC0xLjE2IDIuNDQsLTEuODggMi45MywtMi4xNSAwLjQ5LC0wLjI3IDAuOTYsLTAuNDEgMS40MSwtMC40MiAwLjQ1LC0wLjAyIDEuMTIsMC4xMiAyLjAxLDAuNCBsIDAuNzgsMC4yNSAtMi41NSw3Ljk2IDMuODUsMS4yMyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTYtNFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3NjkuMDYsNDg0LjU3IC0xNC41NCwtMi45NiAtMC42OCwzLjMyIDEwLjU4LDIuMTUgLTAuODgsNC4zNSAtOS44NSwtMi4wMSAtMC42NywzLjMxIDkuODQsMiAtMS4wOCw1LjM0IC0xMC45NiwtMi4yMyAtMC42NywzLjMxIDE0LjkxLDMuMDMgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzU4LTc3XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc0MS41NSw0NzkuNzEgLTEzLjY1LC0xLjM1IC0wLjM0LDMuMzcgOS42NCwwLjk1IC0wLjQ3LDQuNzEgLTguMzEsLTAuODIgLTAuMzQsMy4zNyA4LjMyLDAuODIgLTAuODQsOC40NyA0LjAyLDAuMzkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzYwLTVcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzE1LjIxLDQ3Ny45MyBoIC00LjA0IGwgLTAuMDEsMTYuNDggaCAtMTAuMDUgdiAzLjM3IGggMTQuMDkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzYyLTRcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNjg4LjgzLDQ3OC40IC0xNC43NywxLjUgMC4zNCwzLjM3IDEwLjc1LC0xLjA5IDAuNDUsNC40MSAtMTAsMS4wMiAwLjM0LDMuMzUgMTAsLTEuMDEgMC41NSw1LjQyIC0xMS4xMywxLjEzIDAuMzQsMy4zNSAxNS4xNSwtMS41NCB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNjQtOFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2NTIuNSw0ODMuMzkgYyAtMi4zOSwwLjUxIC00LjE4LDEuNjMgLTUuMzgsMy4zNiAtMC43MSwxLjAzIC0xLjEyLDIuMzcgLTEuMjMsNC4wMyBsIDQuMTEsMC4xIGMgMC4wMSwtMS4wNiAwLjMyLC0xLjk2IDAuOTMsLTIuNzEgMC42MSwtMC43NCAxLjQ0LC0xLjIyIDIuNDksLTEuNDUgMS40NSwtMC4zMSAyLjc0LC0wLjA0IDMuODcsMC44MSAxLjEyLDAuODUgMS45MywyLjQ0IDIuNDMsNC43NyAwLjUzLDIuNDggMC40Niw0LjM0IC0wLjIxLDUuNTggLTAuNjcsMS4yNCAtMS43MSwyLjAxIC0zLjEzLDIuMzEgLTEuMDYsMC4yMiAtMi4wMywwLjA4IC0yLjkzLC0wLjQyIC0wLjksLTAuNTEgLTEuNjYsLTEuNDQgLTIuMywtMi44MSBsIC0zLjU3LDIuMDMgYyAxLjA0LDIuMDEgMi4zNSwzLjM5IDMuOTQsNC4xNCAxLjU5LDAuNzUgMy40MywwLjkgNS41MywwLjQ1IDIuNiwtMC41NiA0LjU1LC0xLjkgNS44NSwtNC4wMyAxLjI5LC0yLjEzIDEuNjEsLTQuNzQgMC45NiwtNy44MiAtMC43LC0zLjI2IC0yLjA4LC01LjYxIC00LjE0LC03LjA1IC0yLjA3LC0xLjQ1IC00LjQ3LC0xLjg4IC03LjIyLC0xLjI5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2Ni0xXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDYzMy43NCw0ODguMzggLTE1LjEyLDQuOTMgMS4wNSwzLjIyIDUuNjMsLTEuODMgNS4xNiwxNS44IDMuODQsLTEuMjUgLTUuMTYsLTE1LjgxIDUuNjUsLTEuODQgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxnIGlkPVwiZzc0NC05XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNzUwLTUpXCIgaWQ9XCJnNzQ2LTNcIj5cbiAgICAgICAgICAgIDxnXG4gICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiXG4gICAgICAgICAgICAgIGlkPVwiZzc1Mi02XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJnN1wiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoMTc5LjA1Njg3LDcwOC44Mzk0Niw3MDUuODAwNzkpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc2MjBcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkyNS4xMzY0NywxNy4wNzk1MjkpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDYyNilcIiBpZD1cImc2MjJcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2MzBcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDguNDgsODExLjU0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW42MjhcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJ0byBpbmNsdWRlIHZhcmlldHkgb2YgZGlmZmVyZW50IFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzYzMlwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjM4KVwiIGlkPVwiZzYzNFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDY0MlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDkxLjIsNzg3LjU0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW42NDBcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDEwLjAyIDE0LjQwODc2IDI1LjU1MTAwMSA0MC4wNTk5NTkgNTEuMjAyMjAyIDYyLjM0NDQ0IDY2Ljc5MzMyIDc3LjkzNTU2MiA4My41MDY2ODMgOTMuNTI2NjggOTguOTc3NTYyIDExMC4xMTk4IDExNS42OTA5MiAxMjEuMDYxNjQgMTMxLjA4MTYzIDEzNi42NTI3NiAxNDcuNzk1IDE1Ny44NzUxMiAxNjkuMDE3MzYgMTgwLjE1OTYxIDE5MS4zMDE4MyAxOTUuNzUwNzIgMjA2LjkzMzA0IDIxOC4wNzUyOSAyMjQuNzg4NjggMjM0LjgwODY5IDIzOS44OTg4MyAyNTEuMDQxMDggMjYyLjE4MzMyIDI3My4zMjU1NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widmlld3BvaW50cyBvZiBzdGFrZWhvbGRlcnMgYW5kIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzY0NFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjUwKVwiIGlkPVwiZzY0NlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDY1NFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDg1LjY4LDc2My41NClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjUyXCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCA1LjU3MTExOTggMTYuNzEzMzYgMjcuODU1NiAzMy4yNDYzNjEgNDQuMzg4NTk5IDU1LjUzMDg0MiA2Ni42NzMwOCA3MS4xMjE5NjQgNzUuNTcwODM5IDg1LjY3MDk5OCA5MS4wNjE3NiAxMDIuMjA0IDExMy4zNDYyNCAxMTguOTE3MzYgMTMwLjA1OTYgMTQxLjIwMTg0IDE0Ni43NzI5NiAxNTEuMjIxODUgMTYyLjM2NDA3IDE2Ni44MTI5NiAxNzEuMjYxODQgMTgxLjE4MTY0IDE4Ni43NTI3NiAxOTcuODk1IDIwMy4zODU5NiAyMDguOTU3MDggMjIwLjA5OTMyIDIzMC4xMTkzMiAyMzUuNjkwNDQgMjQ2LjgzMjY5IDI1Ny45NzQ5MSAyNjMuMjY1NDcgMjc0LjQwNzcxIDI4NC40Mjc3M1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widGhlIHB1YmxpYyBwb3RlbnRpYWxseSBlZmZlY3RlZCBieSBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc2NTZcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkyNS4xMzY0NywxNy4wNzk1MjkpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDY2MilcIiBpZD1cImc2NThcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2NjZcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxODAuNiw3MzkuNTQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjY2NFwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDI5LjAxNzkyIDM0LjI4ODQ0MSA0NS40MzA2NzkgNTIuMTQ0MDgxIDYzLjI4NjMyIDY3LjczNTE5OSA3OC44Nzc0NDEgODguOTU3NTU4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJvdXIgcHJvamVjdFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzY2OFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjc0KVwiIGlkPVwiZzY3MFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDY3OFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDg5LjQsNjkxLjU0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW42NzZcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDUuNTcxMTE5OCAxNi43MTMzNiAyMi4wODQwOCAzMy4yMjYzMTggNDQuMzY4NTYxIDQ4LjgxNzQ0IDU5Ljk1OTY3OSA2NS41MzA4IDc2LjY3MzA0MiA4Mi4wODM4MzkgOTMuMjI2MDgyIDEwNC4zNjgzMiAxMTUuNTEwNTYgMTI2LjcxMjkyIDEzNy44NTUxNiAxNDQuNTY4NTYgMTQ5LjgzOTA4IDE2MC45ODEzMiAxNzIuMTIzNTcgMTgzLjI2NTc5IDE5NC40NjgxNSAyMDEuMTQxNDggMjExLjI0MTY0IDIxNi44MTI3NiAyMjcuOTU1IDIzOS4wOTcyNCAyNTAuMTE5MjUgMjU0LjU2ODEyIDI2NS43MTAzNiAyNzYuODUyNlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widG8gZ2FpbiBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzY4MFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjg2KVwiIGlkPVwiZzY4MlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDY5MFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE4MS4yLDY2Ny41NClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjg4XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMjkuMDE3OTIgMzQuMjg4NDQxIDM4LjczNzMyIDU1LjQzMDY0MSA2Ni41NzI4ODQgNzcuNzE1MTE4IDg3Ljc5NTI0MlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib3VyIGltcGFjdFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzY5MlwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjk4KVwiIGlkPVwiZzY5NFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDcwMlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwOC45Niw2MTkuNTQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhbiBpZD1cInRzcGFuNzAwXCIgeT17MH0geD17MH0+XG4gICAgICAgICAgICAgICAgICB7XCJ0XCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNzA0XCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3MTApXCIgaWQ9XCJnNzA2XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NzE0XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTE0LjQ4LDYxOS41NClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNzEyXCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAxNi41NTMwNCAyNy42OTUyOCAzOC44Mzc1MjEgNDguOTM3Njc5IDYwLjA3OTkyMiA2Ni43OTMzMiA3Ny45MzU1NjIgODMuMjI2MTIgOTQuMzY4MzYyIDk5LjkzOTQ4NCAxMDQuMzg4MzYgMTA4LjgzNzI0IDExMy4yODYxMiAxMjMuMzA2MTIgMTM0LjQ0ODM2IDE0MC4wMTk0OSAxNDQuNDY4MzUgMTU1LjYxMDYgMTY2Ljc1Mjg0IDE3Mi4xNDM2IDE4My4yODU4NCAxODguODU2OTYgMTk0LjM0NzkyIDIwNS40OTAxNiAyMTYuNjMyNCAyMjYuNzMyNTYgMjMyLjMwMzY4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJvIGVuc3VyZSB1dGlsaXphdGlvbiBvZiBwYXN0IFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzcxNlwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyNSlcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNzIyKVwiIGlkPVwiZzcxOFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDcyNlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwNS42LDU5NS41NClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNzI0XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMS4xNjIyMzkgMzIuMzA0NDgyIDQzLjQ0NjcyIDUwLjEyMDA0MSA1NC41Njg5MiA2NS43MTExNTkgNzYuODkzNDc4IDg2LjkxMzQ4MyA5OC4xMTU4MzcgMTA4LjEzNTg0IDExMy4zNDYyNCAxMjQuNDg4NDggMTMwLjA1OTYgMTM1LjQzMDMxIDEzOS44NzkyIDE1MS4wMjE0NCAxNjIuMTYzNjggMTczLjMwNTkyIDE4My40MDYwOCAxODguOTc3MiAxOTUuNjUwNTEgMjAwLjA5OTQgMjExLjI0MTY0IDIyMS4zMDE3MyAyMjYuNTcyMjQgMjM3LjcxNDQ4IDI0NC40Mjc4OVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZXhwZXJpZW5jZXMgb2YgaW5kdXN0cmllcyBvciBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc3MjhcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkyNS4xMzY0NywxNy4wNzk1MjkpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDczNClcIiBpZD1cImc3MzBcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ3MzhcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxODEuMDgsNTcxLjU0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW43MzZcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDQuNDQ4ODgwMiAxNS41OTExMiAyNi43MzMzNiAzMS4xODIyNCA0MS4yMDIyNCA0NS42NTExMTkgNTYuNzkzMzYyIDY3LjkzNTYgNzkuMDc3ODQzIDgzLjUyNjcxOFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiaW5kaXZpZHVhbHNcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgICA8Z1xuICAgICAgICBpZD1cInJlZmxlY3RcIlxuICAgICAgICBjbGFzc05hbWU9XCJocDMgcmVmbGVjdC12ZXJzaW9uXCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICB9fVxuICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoODkuODU4MDk3LDcwNy44MzY1NSw3MDYuOTYzMjMpXCJcbiAgICAgID5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgYW50aWNpcGF0ZS12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicmVmbGVjdC1hbnRpY2lwYXRlXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA4OTQuNSw4OTAuMDMgLTYuNDgsLTUxLjggLTQ5LjU3LC02LjE5IGMgMzEuNjMsLTMyLjU3IDUxLjEyLC03Ny4wMSA1MS4xMiwtMTI2LjAxIDAsLTQwLjE3IC0xMy4xLC03Ny4yNyAtMzUuMjQsLTEwNy4yOCBsIDYuNSwtNTIuMTEgNTAuMiwtNi4yOCBjIDM2Ljk3LDQ1LjExIDU5LjE3LDEwMi44IDU5LjE3LDE2NS42NyAwLDcxLjc2IC0yOC45MSwxMzYuNzYgLTc1LjcsMTg0IHpcIlxuICAgICAgICAvPiA8L2E+XG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicmVmbGVjdC1hY3RcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXG4gICAgICAgIC8+IDwvYT5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgZW5nYWdlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJyZWZsZWN0LWVuZ2FnZVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNTA2LjQxLDg3MS42NyBjIC0zNi45NywtNDUuMSAtNTkuMTYsLTEwMi43OSAtNTkuMTYsLTE2NS42NiAwLC03MS43NiAyOC45LC0xMzYuNzYgNzUuNywtMTg0IGwgNi40Niw1MS43OSA0OS41OSw2LjIgYyAtMzEuNjQsMzIuNTcgLTUxLjEzLDc3LjAxIC01MS4xMywxMjYuMDEgMCw0MC4xNiAxMy4xLDc3LjI2IDM1LjI1LDEwNy4yOCBsIC02LjUxLDUyLjExIHpcIlxuICAgICAgICAvPiA8L2E+XG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIHJlZmxlY3QtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInJlZmxlY3QtcmVmbGVjdFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gODM0LjY4LDU3Ni4yMyBjIC0zMi41NywtMzEuNjMgLTc3LjAxLC01MS4xMiAtMTI2LjAxLC01MS4xMiAtNDAuMTYsMCAtNzcuMjYsMTMuMSAtMTA3LjI3LDM1LjI0IGwgLTUyLjEyLC02LjUgLTYuMjcsLTUwLjIgYyA0NS4xLC0zNi45OCAxMDIuNzgsLTU5LjE3IDE2NS42NiwtNTkuMTcgNzEuNzYsMCAxMzYuNzUsMjguOTEgMTg0LjAxLDc1LjcgbCAtNTEuODEsNi40OCB6XCJcbiAgICAgICAgLz48L2E+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjQtNDQtMVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2ODYuMTcsOTI2LjYgLTEuMzMsLTcuNzkgNS4zNywwLjk4IHogbSAtMi45LDQuMjIgNC4yMSwwLjc3IDExLjQ4LC0xOC4yNSAtNC4zMywtMC43OSAtMi41Myw0LjE2IC03Ljg3LC0xLjQ0IC0wLjgxLC00Ljc3IC00LjIyLC0wLjc3IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDY2LTQtOVwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3MTYuNzksOTM0LjE4IGMgMi40NSwtMC4wMiA0LjQzLC0wLjc3IDUuOTQsLTIuMjMgMC45LC0wLjg3IDEuNTcsLTIuMSAyLjAxLC0zLjcxIGwgLTQuMDEsLTAuOTEgYyAtMC4yMywxLjA0IC0wLjcxLDEuODYgLTEuNDYsMi40NyAtMC43NCwwLjYxIC0xLjY1LDAuOTIgLTIuNzIsMC45MyAtMS40OSwwLjAyIC0yLjcsLTAuNSAtMy42MywtMS41NiAtMC45NCwtMS4wNiAtMS40MiwtMi43NyAtMS40NCwtNS4xNiAtMC4wMywtMi41MyAwLjQxLC00LjM0IDEuMzEsLTUuNDIgMC45LC0xLjA4IDIuMDcsLTEuNjMgMy41MywtMS42NSAxLjA3LC0wLjAxIDIsMC4zMiAyLjc4LDEgMC43OCwwLjY3IDEuMzUsMS43NCAxLjcsMy4yIGwgMy45MSwtMS4yOCBjIC0wLjYzLC0yLjE4IC0xLjY0LC0zLjc5IC0zLjA1LC00Ljg0IC0xLjQxLC0xLjA0IC0zLjE5LC0xLjU1IC01LjM0LC0xLjUzIC0yLjY1LDAuMDMgLTQuODMsMC45NiAtNi41MiwyLjc5IC0xLjY5LDEuODMgLTIuNTIsNC4zMiAtMi40OSw3LjQ3IDAuMDQsMy4zMyAwLjkyLDUuOTEgMi42Niw3Ljc0IDEuNzQsMS44MiA0LjAxLDIuNzIgNi44MiwyLjY5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDY4LTQtNlwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3MzcuMzksOTMyLjQyIDE1LjYyLC0zLjAxIC0wLjY0LC0zLjMzIC01LjgyLDEuMTMgLTMuMTUsLTE2LjMzIC0zLjk3LDAuNzcgMy4xNSwxNi4zMiAtNS44MywxLjEzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8ZyBpZD1cImc3MC03LTlcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3Ni0xLTApXCIgaWQ9XCJnNzItNjMtM1wiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoNzgtMTctM1wiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDk0LjM4LDYyNS4zNyAtMy45NywxNC4zIDMuMjYsMC45MSAyLjg5LC0xMC40MSA0LjI3LDEuMTkgLTIuNjksOS42OCAzLjI1LDAuOSAyLjY5LC05LjY4IDUuMjUsMS40NiAtMi45OSwxMC43NyAzLjI1LDAuOTEgNC4wNywtMTQuNjcgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImc4MC01LThcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg4Ni05LTEpXCIgaWQ9XCJnODItOS0wXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGg4OC02LTVcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny41Myw2NTIuNSAtMC42NSwzLjg4IDExLjgzLDEwLjI5IC0xMy4xOCwtMi4yMSAtMC42MywzLjcgMTkuNzQsMy4zMSAwLjY3LC00IC0xMS41NCwtMTAuMTEgMTIuODgsMi4xNSAwLjYyLC0zLjcgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImc5MC0yMS02XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoOTYtOS01KVwiIGlkPVwiZzkyLTctNlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoOTgtOC00XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODIuNDgsNjkwLjkyIGMgLTAuMTQsMi40OCAwLjI3LDQuNDUgMS4yMyw1LjkgMC45NiwxLjQ1IDIuMzUsMi40MyA0LjE2LDIuOTMgbCAwLjk4LC0zLjk2IGMgLTAuOTcsLTAuMzQgLTEuNzEsLTAuOTEgLTIuMjQsLTEuNzIgLTAuNTIsLTAuODEgLTAuNzUsLTEuNzkgLTAuNjksLTIuOTYgMC4xLC0xLjc2IDAuNzQsLTMuMTMgMS45MiwtNC4xMSAxLjE3LC0wLjk4IDIuODYsLTEuNCA1LjA2LC0xLjI4IDIuMzcsMC4xMyA0LjEyLDAuNzYgNS4yNSwxLjg4IDEuMTIsMS4xMiAxLjY0LDIuNTQgMS41NCw0LjI1IC0wLjA0LDAuODQgLTAuMjYsMS42OCAtMC42NCwyLjUxIC0wLjM4LDAuODMgLTAuODIsMS41NCAtMS4zMywyLjEyIGwgLTIuNTMsLTAuMTQgMC4yNiwtNC42MiAtMy4zNywtMC4xOSAtMC40OSw4LjY5IDcuOTYsMC40NSBjIDAuODcsLTAuOCAxLjY2LC0xLjk4IDIuMzcsLTMuNTUgMC43MSwtMS41NyAxLjEyLC0zLjE4IDEuMjEsLTQuODIgMC4xMiwtMi4wOSAtMC4yMiwtMy45NCAtMS4wMSwtNS41NCAtMC43OSwtMS42MSAtMS45OCwtMi44NCAtMy41NywtMy43MiAtMS41OCwtMC44NyAtMy4zMywtMS4zNiAtNS4yNSwtMS40NyAtMi4wOCwtMC4xMiAtMy45NiwwLjIyIC01LjYyLDEgLTEuNjcsMC43OCAtMi45OCwxLjk5IC0zLjk0LDMuNjIgLTAuNzQsMS4yNCAtMS4xNiwyLjgyIC0xLjI2LDQuNzMgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMDAtNS0wXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTA2LTktMSlcIiBpZD1cImcxMDItNy0wXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDgtNC00XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODcuNDMsNzIwLjU2IDcuMjgsLTMuMDkgMC4yOSw1LjQ1IHogbSAtNC43NywtMS44NCAwLjIzLDQuMjcgMjAuNDEsNi45NSAtMC4yNCwtNC4zOSAtNC42MywtMS41MSAtMC40MiwtNy45OSA0LjQ1LC0xLjg5IC0wLjIzLC00LjI4IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTEwLTEtNlwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDExNi03LTgpXCIgaWQ9XCJnMTEyLTgtMlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTE4LTUtNlwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gNDg1Ljc2LDc1MS42MSBjIDAuNCwyLjQ1IDEuMjMsNC4yOCAyLjQ4LDUuNDkgMS4yNiwxLjIxIDIuODMsMS44NyA0LjcxLDEuOTcgbCAwLjA5LC00LjA5IGMgLTEuMDIsLTAuMTIgLTEuODcsLTAuNTEgLTIuNTYsLTEuMTkgLTAuNjksLTAuNjggLTEuMTIsLTEuNTkgLTEuMzEsLTIuNzQgLTAuMjksLTEuNzQgMC4wNCwtMy4yMiAwLjk3LC00LjQzIDAuOTQsLTEuMjEgMi40OSwtMS45OSA0LjY3LC0yLjM1IDIuMzQsLTAuMzggNC4xOCwtMC4xNSA1LjUzLDAuNyAxLjM0LDAuODUgMi4xNSwyLjEyIDIuNDMsMy44MSAwLjEzLDAuODMgMC4xMSwxLjcgLTAuMDgsMi41OSAtMC4xOSwwLjg5IC0wLjQ3LDEuNjggLTAuODQsMi4zNiBsIC0yLjUxLDAuNDEgLTAuNzQsLTQuNTcgLTMuMzMsMC41NSAxLjQxLDguNiA3Ljg3LC0xLjMgYyAwLjY3LC0wLjk2IDEuMTgsLTIuMjkgMS41NCwtMy45OCAwLjM1LC0xLjY4IDAuMzksLTMuMzQgMC4xMywtNC45NyAtMC4zNCwtMi4wNiAtMS4wNywtMy43OSAtMi4xOSwtNS4xOCAtMS4xMiwtMS40IC0yLjU1LC0yLjM1IC00LjI5LC0yLjg2IC0xLjczLC0wLjUgLTMuNTUsLTAuNiAtNS40NSwtMC4yOSAtMi4wNSwwLjM0IC0zLjgxLDEuMDcgLTUuMjcsMi4xOSAtMS40NSwxLjEzIC0yLjQ3LDIuNTkgLTMuMDUsNC4zOSAtMC40NSwxLjM4IC0wLjUyLDMuMDEgLTAuMjEsNC44OSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzEyMC05LTdcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMjYtMS0wKVwiIGlkPVwiZzEyMi03LTVcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDEyOC01LTZcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5MC40Miw3NzIuOTkgMy45NywxNC4zIDMuMjYsLTAuOSAtMi44OSwtMTAuNDEgNC4yOCwtMS4xOSAyLjY5LDkuNjkgMy4yNCwtMC45MSAtMi42OCwtOS42OCA1LjI1LC0xLjQ1IDIuOTksMTAuNzcgMy4yNSwtMC45IC00LjA3LC0xNC42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzEzMC0zOC05XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTM2LTUtNClcIiBpZD1cImcxMzItOC04XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMzgtMy03XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MTIuNzcsODEwLjIgLTcuODksLTAuNSAyLjE5LC01IHogbSAzLjQ0LDMuNzkgMS43MSwtMy45MiAtMTUuMTIsLTE1LjM2IC0xLjc2LDQuMDIgMy40NiwzLjQzIC0zLjIsNy4zMiAtNC44MywtMC4zIC0xLjcyLDMuOTIgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNDAtMS0yXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTQ2LTctMilcIiBpZD1cImcxNDItOC04XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNDgtOS0yXCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MjQuOTEsNzkyLjM4IDEuMTcsLTMuNzUgLTEwLjMxLC0xMS44MSAxMi43NiwzLjk5IDEuMTIsLTMuNTggLTE5LjExLC01Ljk3IC0xLjIxLDMuODcgMTAuMDUsMTEuNTkgLTEyLjQ1LC0zLjg5IC0xLjEyLDMuNTggelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNTAtNi05XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTU2LTMtOClcIiBpZD1cImcxNTItNC05XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNTgtMy02XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzIuNTcsNzY1Ljg4IDMuMTUsLTE1LjU5IC0zLjMyLC0wLjY3IC0xLjE3LDUuODEgLTE2LjMsLTMuMjkgLTAuOCwzLjk2IDE2LjMsMy4yOSAtMS4xOCw1LjgyIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTYwLTMtMFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE2Ni02LTIpXCIgaWQ9XCJnMTYyLTM4LTJcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE2OC02LTdcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzNy4yNiw3MzkuMjcgMC40OCwtNC4wMSAtMTkuODcsLTIuMzkgLTAuNDgsNC4wMSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzE3MC0wLTZcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNzYtOS00KVwiIGlkPVwiZzE3Mi00LTFcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE3OC04LTNcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzOS41OCw3MTQuMjkgYyAwLjA4LC0yLjQ0IC0wLjU3LC00LjQ2IC0xLjk3LC02LjAzIC0wLjgyLC0wLjk0IC0yLjAzLC0xLjY2IC0zLjYyLC0yLjE3IGwgLTEuMDgsMy45NyBjIDEuMDMsMC4yNyAxLjgzLDAuNzkgMi40LDEuNTYgMC41OCwwLjc3IDAuODUsMS42OSAwLjgxLDIuNzYgLTAuMDUsMS40OSAtMC42MiwyLjY3IC0xLjcxLDMuNTYgLTEuMSwwLjg5IC0yLjg0LDEuMjkgLTUuMjIsMS4yMSAtMi41MywtMC4wOCAtNC4zMiwtMC42IC01LjM2LC0xLjU0IC0xLjA0LC0wLjk1IC0xLjU0LC0yLjE1IC0xLjQ5LC0zLjYgMC4wMywtMS4wOCAwLjQxLC0xLjk5IDEuMTEsLTIuNzQgMC43MSwtMC43NSAxLjgsLTEuMjcgMy4yOCwtMS41NiBsIC0xLjExLC0zLjk1IGMgLTIuMjEsMC41MiAtMy44NiwxLjQ3IC00Ljk3LDIuODMgLTEuMSwxLjM2IC0xLjY5LDMuMTEgLTEuNzYsNS4yNiAtMC4wOSwyLjY2IDAuNzQsNC44NyAyLjUsNi42NCAxLjc2LDEuNzcgNC4yMSwyLjcxIDcuMzYsMi44MSAzLjMzLDAuMTEgNS45NCwtMC42NiA3Ljg0LC0yLjMyIDEuOSwtMS42NSAyLjksLTMuODggMi45OSwtNi42OSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzE4MC04OC0yXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTg2LTgtMilcIiBpZD1cImcxODItOS0xXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxODgtNy01XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzkuMSw2OTQuMjcgLTAuMjIsLTQuMDMgLTE5Ljk4LDEuMDkgMC4yMSw0LjAzIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTkwLTctOVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE5Ni0yOS0wKVwiIGlkPVwiZzE5Mi02LTlcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE5OC00My0xXCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzMuOTgsNjc0LjI1IC01LjYyLDAuNzkgLTAuMzEsLTIuMTkgYyAtMC4yMiwtMS41OCAtMC4yNiwtMi42NSAtMC4xMywtMy4yMSAwLjEzLC0wLjU2IDAuNCwtMS4wMiAwLjgsLTEuMzggMC40LC0wLjM3IDAuODksLTAuNTkgMS40OCwtMC42NyAwLjcyLC0wLjEgMS4zNCwwLjAyIDEuODcsMC4zOCAwLjUzLDAuMzYgMC45LDAuODYgMS4xMSwxLjQ5IDAuMTUsMC40NiAwLjMzLDEuNDIgMC41MywyLjg2IHogbSAzLjkyLDMuNTMgLTAuOSwtNi40MiBjIC0wLjM0LC0yLjQzIC0wLjY2LC00IC0wLjk2LC00LjcxIC0wLjQ2LC0xLjEgLTEuMjQsLTEuOTYgLTIuMzQsLTIuNTkgLTEuMTEsLTAuNjIgLTIuNDUsLTAuODMgLTQuMDMsLTAuNiAtMS4yMSwwLjE3IC0yLjIsMC41MyAtMi45NywxLjA5IC0wLjc3LDAuNTYgLTEuMzQsMS4yMSAtMS43MiwxLjk1IC0wLjM4LDAuNzUgLTAuNTksMS40OSAtMC42NSwyLjIxIC0wLjA1LDAuOTggMC4wNCwyLjM4IDAuMyw0LjE5IGwgMC4zNiwyLjYxIC03LjQ3LDEuMDUgMC41Niw0IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMjAwLTAtNFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIwNi05LTIpXCIgaWQ9XCJnMjAyLTMtOVwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA4LTA5LTFcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNy4wMSw2NDQuMzcgLTYuNTMsNC40NSAtMS4zNSwtNS4yOSB6IG0gNS4wNCwwLjg4IC0xLjA1LC00LjE1IC0yMS4zOCwtMi44MyAxLjA5LDQuMjYgNC44MywwLjU3IDEuOTcsNy43NiAtNCwyLjcyIDEuMDYsNC4xNSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIxMC0yLTBcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMTYtOC05KVwiIGlkPVwiZzIxMi01LTdcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIxOC00LTVcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNi4wNyw2MjQuMTkgLTUuNTIsLTE0LjkyIC0zLjE4LDEuMTggMi4wNiw1LjU2IC0xNS41OSw1Ljc3IDEuNCwzLjc5IDE1LjU5LC01Ljc3IDIuMDYsNS41NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIyMC0wLThcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMjYtNS04KVwiIGlkPVwiZzIyMi01LTdcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOC05LTBcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkxNi4wNiw1OTguODggLTYuNTMsLTEzLjMzIC0zLjA0LDEuNDkgNC43NSw5LjcgLTMuOTgsMS45NSAtNC40MiwtOS4wMyAtMy4wMywxLjQ5IDQuNDIsOS4wMiAtNC45LDIuNCAtNC45MSwtMTAuMDUgLTMuMDMsMS40OSA2LjY5LDEzLjY3IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTQtMi00XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc5Mi41Miw0OTQuODIgLTEuNTUsNC44NCAtMi44NSwtMC45MSBjIC0xLjg1LC0wLjU5IC0yLjk3LC0xLjA0IC0zLjM4LC0xLjM0IC0wLjQxLC0wLjMxIC0wLjY5LC0wLjY5IC0wLjgzLC0xLjE1IC0wLjEzLC0wLjQ3IC0wLjExLC0wLjk5IDAuMDcsLTEuNTYgMC4yMSwtMC42NCAwLjU0LC0xLjEgMS4wMSwtMS4zOSAwLjQ3LC0wLjI4IDEuMDMsLTAuMzggMS42OSwtMC4yOCAwLjMzLDAuMDUgMS4yNywwLjMzIDIuODMsMC44MyB6IG0gNC44OCwtMS45OSAtOC4xMSwtMi41OSBjIC0yLjAzLC0wLjY2IC0zLjU3LC0wLjk2IC00LjYsLTAuOTEgLTEuMDMsMC4wNSAtMS45NywwLjQyIC0yLjgsMS4xMiAtMC44NCwwLjcgLTEuNDMsMS42MSAtMS44LDIuNzQgLTAuNDUsMS40MyAtMC40MSwyLjc0IDAuMTMsMy45NCAwLjU1LDEuMiAxLjYyLDIuMTkgMy4yMSwyLjk3IC0wLjk5LDAuMjIgLTEuODQsMC41MyAtMi41NywwLjk0IC0wLjczLDAuNDEgLTEuNzksMS4yMSAtMy4xOCwyLjQgbCAtMy41MiwyLjk3IDQuNjEsMS40NyA0LjEsLTMuMjYgYyAxLjQ3LC0xLjE2IDIuNDQsLTEuODggMi45MywtMi4xNSAwLjQ5LC0wLjI3IDAuOTYsLTAuNDEgMS40MSwtMC40MiAwLjQ1LC0wLjAyIDEuMTIsMC4xMiAyLjAxLDAuNCBsIDAuNzgsMC4yNSAtMi41NSw3Ljk2IDMuODUsMS4yMyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTYtNC04XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc2OS4wNiw0ODQuNTcgLTE0LjU0LC0yLjk2IC0wLjY4LDMuMzIgMTAuNTgsMi4xNSAtMC44OCw0LjM1IC05Ljg1LC0yLjAxIC0wLjY3LDMuMzEgOS44NCwyIC0xLjA4LDUuMzQgLTEwLjk2LC0yLjIzIC0wLjY3LDMuMzEgMTQuOTEsMy4wMyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTgtNzctMFwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3NDEuNTUsNDc5LjcxIC0xMy42NSwtMS4zNSAtMC4zNCwzLjM3IDkuNjQsMC45NSAtMC40Nyw0LjcxIC04LjMxLC0wLjgyIC0wLjM0LDMuMzcgOC4zMiwwLjgyIC0wLjg0LDguNDcgNC4wMiwwLjM5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2MC01LTRcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzE1LjIxLDQ3Ny45MyBoIC00LjA0IGwgLTAuMDEsMTYuNDggaCAtMTAuMDUgdiAzLjM3IGggMTQuMDkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzYyLTQtMlwiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2ODguODMsNDc4LjQgLTE0Ljc3LDEuNSAwLjM0LDMuMzcgMTAuNzUsLTEuMDkgMC40NSw0LjQxIC0xMCwxLjAyIDAuMzQsMy4zNSAxMCwtMS4wMSAwLjU1LDUuNDIgLTExLjEzLDEuMTMgMC4zNCwzLjM1IDE1LjE1LC0xLjU0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2NC04LTlcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNjUyLjUsNDgzLjM5IGMgLTIuMzksMC41MSAtNC4xOCwxLjYzIC01LjM4LDMuMzYgLTAuNzEsMS4wMyAtMS4xMiwyLjM3IC0xLjIzLDQuMDMgbCA0LjExLDAuMSBjIDAuMDEsLTEuMDYgMC4zMiwtMS45NiAwLjkzLC0yLjcxIDAuNjEsLTAuNzQgMS40NCwtMS4yMiAyLjQ5LC0xLjQ1IDEuNDUsLTAuMzEgMi43NCwtMC4wNCAzLjg3LDAuODEgMS4xMiwwLjg1IDEuOTMsMi40NCAyLjQzLDQuNzcgMC41MywyLjQ4IDAuNDYsNC4zNCAtMC4yMSw1LjU4IC0wLjY3LDEuMjQgLTEuNzEsMi4wMSAtMy4xMywyLjMxIC0xLjA2LDAuMjIgLTIuMDMsMC4wOCAtMi45MywtMC40MiAtMC45LC0wLjUxIC0xLjY2LC0xLjQ0IC0yLjMsLTIuODEgbCAtMy41NywyLjAzIGMgMS4wNCwyLjAxIDIuMzUsMy4zOSAzLjk0LDQuMTQgMS41OSwwLjc1IDMuNDMsMC45IDUuNTMsMC40NSAyLjYsLTAuNTYgNC41NSwtMS45IDUuODUsLTQuMDMgMS4yOSwtMi4xMyAxLjYxLC00Ljc0IDAuOTYsLTcuODIgLTAuNywtMy4yNiAtMi4wOCwtNS42MSAtNC4xNCwtNy4wNSAtMi4wNywtMS40NSAtNC40NywtMS44OCAtNy4yMiwtMS4yOSB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNjYtMS02XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDYzMy43NCw0ODguMzggLTE1LjEyLDQuOTMgMS4wNSwzLjIyIDUuNjMsLTEuODMgNS4xNiwxNS44IDMuODQsLTEuMjUgLTUuMTYsLTE1LjgxIDUuNjUsLTEuODQgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxnIGlkPVwiZzc0NC05LTFcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NTAtNS0zKVwiIGlkPVwiZzc0Ni0zLTBcIj5cbiAgICAgICAgICAgIDxnXG4gICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiXG4gICAgICAgICAgICAgIGlkPVwiZzc1Mi02LTRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGdcbiAgICAgICAgICBpZD1cImc2XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSgtODkuODU4MDk3LDcwNy44MzY1NSw3MDYuOTYzMjMpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc0ODhcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ5NClcIiBpZD1cImc0OTBcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0OThcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2MDAuMDUsMzYzLjI2KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW40OTZcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDYuNjczMzE5OCAxNy44NzU2ODEgMjMuNDQ2OCAyNy44OTU2NzkgMzkuMDM3OTIyIDQ5LjA5OCA1NC42NjkxMjEgNTkuMTE4IDcwLjI2MDIzOSA4MS40MDI0ODEgODYuNzEzMDgxIDk3Ljg1NTMyNCAxMDkuMDU3NjggMTE0LjQ0ODQ0IDEyMC4wMTk1NiAxMzEuMTYxOCAxNDIuMzA0MDUgMTQ3LjczNDg4IDE1OC44NzcxMiAxNzAuMDc5NDggMTc2Ljc1MjgxIDE4Ny45NTUxNSAxOTkuMDk3NCAyMDkuMjE3NjEgMjIwLjM1OTgzIDIzMC40ODAwNCAyMzUuODcwOFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wicmVmbGVjdGluZyBvbiB0aGUgcHVycG9zZXMsIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzUwMFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNTA2KVwiIGlkPVwiZzUwMlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDUxMFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDYwNy4yNSwzMzkuMjYpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjUwOFwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTYuNjkzMzE5IDI3LjgzNTU2IDMzLjQwNjY4MSAzNy44NTU1NiA0Ny44NzU1NjEgNTkuMDE3Nzk5IDY0LjU4ODkyMSA2OC45Nzc2NzYgODAuMTE5OTE5IDkxLjMyMjI4MSAxMDEuNDAyNCAxMDYuNzkzMTYgMTE3LjkzNTQgMTI5LjEzNzc2IDE0MC4yOCAxNDUuNzMwODggMTU2Ljg3MzEyIDE2OC4wNzU0OSAxNzMuNjQ2NjEgMTg0Ljc4ODgzIDE5NS45MzEwOCAyMDEuNTAyMiAyMDUuOTUxMDggMjE3LjA5MzMyIDIyMS41NDIyMVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wibW90aXZhdGlvbnMgYW5kIHBvdGVudGlhbCBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc1MTJcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDUxOClcIiBpZD1cImc1MTRcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ1MjJcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2NjUuNDcsMzE1LjI2KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41MjBcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDQuNDQ4ODgwMiAyMS4xNDIyIDMyLjI4NDQzOSAzNi43MzMzMTggNDEuMTgyMjAxIDUxLjIwMjIwMiA2Mi4zNDQ0NCA2Ny45MTU1NTggNzIuMzY0NDQxIDgzLjUwNjY4MyA5NC42NDg5MTggMTA0Ljc0OTA4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJpbXBsaWNhdGlvbnMgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNTI0XCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzMuNjY4MjgsNDY4LjY1MDc3KVwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg1MzApXCIgaWQ9XCJnNTI2XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTM0XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNTg2LjczLDI2Ny4yNilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuIGlkPVwidHNwYW41MzJcIiB5PXswfSB4PVwiMCA1LjU3MTExOTggMTYuNzEzMzZcIj5cbiAgICAgICAgICAgICAgICAgIHtcInRvIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzUzNlwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNTQyKVwiIGlkPVwiZzUzOFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDU0NlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDYwOC44MSwyNjcuMjYpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjU0NFwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgNC40NDg4ODAyIDE1LjU5MTEyIDI2Ljc5MzQ4IDM3LjkzNTcxOSA0My41MDY4NCA0Ny45NTU3MTkgNTMuNDY2NzIxIDYzLjQ4NjcyMSA2OC45Nzc2NzYgODAuMTE5OTE5IDg2Ljg1MzM2MyA5Ny45OTU1OTggMTA5LjE5Nzk2IDExOS4yNzgwOCAxMjQuNTQ4NiAxMzUuNjkwODQgMTQxLjI2MTk2IDE0Ni42NTI3MyAxNTEuMTAxNTkgMTYyLjI0Mzg0IDE3My40NDYyIDE4NC41ODg0NCAxOTEuMzIxODggMjAyLjQ2NDEzIDIxMy42NjY0NyAyMjMuNzQ2NiAyMzQuODg4ODQgMjQwLjQ1OTk2XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJpZGVudGlmeSBhcmVhcyBvZiBpZ25vcmFuY2UsIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzU0OFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNTU0KVwiIGlkPVwiZzU1MFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDU1OFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwLjA2NHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2MTAuNDksMjQzLjI2KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41NTZcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE1NTU4NCAyMS4yNjc4MzkgMzEuMzYwMDMxIDQyLjUxNTYxNyA1OS4yMjg5MjggNzAuMzg0NTE0IDc1Ljk2MjMwMyA4MC40MTY1MTIgOTEuNTcyMDk4IDEwMi43Mjc2OCAxMTIuNzU5NjggMTE4LjI1NzIyIDEyMy40MTM2NyAxMzQuNTY5MjQgMTQ1LjcyNDg0IDE1Ni45NDA2MSAxNjcuMDMyODEgMTcyLjYxMDYgMTc2Ljk4NDU0IDE4OC4xNDAxMiAxOTkuMjk1NzIgMjA5LjQyODA0IDIxNS4wMDU4M1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiYXNzdW1wdGlvbnMsIHF1ZXN0aW9ucywgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNTYwXCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzMuNjY4MjgsNDY4LjY1MDc3KVwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg1NjYpXCIgaWQ9XCJnNTYyXCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTcwXCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjI3LjE5LDIxOS4yNClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNTY4XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAxNS41OTExMiAyMC4wNDAwMDEgMzEuMTgyMjQgNDcuODc1NTYxIDY0LjU2ODg3OCA3NS43MTExMjEgODUuNzcxMjAyIDkxLjA0MTcxOCAxMDIuMTgzOTYgMTEzLjMyNjIgMTI0LjQ2ODQ0IDEyOS45MTkzMyAxMzkuOTM5MzIgMTUxLjE0MTY4IDE2MS4xNjE2OCAxNjUuNjEwNTcgMTc2Ljc5Mjg4IDE4MS4yNDE3NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZGlsZW1tYXMgYW5kIHNvY2lhbCBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc1NzJcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDU3OClcIiBpZD1cImc1NzRcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ1ODJcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2NDguOTEsMTk1LjI0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41ODBcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDUuNTcxMTE5OCAxMi4yNDQ0NCAyMy4zODY2ODEgMzQuNTI4OTE5IDQ0LjYyOTA4MiA1MC4yMDAxOTkgNjEuMzQyNDQyIDY4LjAxNTc2MiA4NC41ODg4MzcgOTUuNzMxMDc5IDEwMS4zMDIyIDEwNS43NTEwOCAxMTYuODkzMzIgMTI4LjAzNTU1IDEzNy45OTU0NFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widHJhbnNmb3JtYXRpb25zIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGdcbiAgICAgICAgICAgIGlkPVwiZzU4NFwiXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNTkwKVwiIGlkPVwiZzU4NlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDU5NFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDU3OC45MywxNDcuMjQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjU5MlwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDMyLjM4NDY0IDQzLjUyNjg3OCA1MC4yNDAyOCA1NC42ODkxNTkgNjUuODMxMzk4IDc2Ljk3MzY0IDgyLjE2NDAwMSA4Ny43MzUxMjMgOTguODc3MzU3IDEwOC44OTczNiAxMjAuMDM5NiAxMzAuMTM5NzYgMTM1LjQxMDI4IDE0OS44NzkxNyAxNTQuMzI4MDMgMTU5Ljg5OTE1IDE3MS4wNDE0IDE3Ni42MTI1MiAxODIuMDgzNDQgMTkzLjIyNTY4IDIwNC4zNjc5MiAyMDkuNzk4NzcgMjE5LjgxODc2IDIzMS4wMjExMiAyNDEuMDQxMTIgMjQ1LjQ5MDAxIDI1Ni42NzIzMyAyNjIuMjQzNDQgMjczLjM4NTY4IDI3Ny44MzQ1NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZW5zdXJpbmcgZm9jdXMgd2l0aCB0aGUgc29jaWV0YWwgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8Z1xuICAgICAgICAgICAgaWQ9XCJnNTk2XCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzMuNjY4MjgsNDY4LjY1MDc3KVwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg2MDIpXCIgaWQ9XCJnNTk4XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NjA2XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjA0LjM3LDEyMy4yNClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjA0XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4zNDQ2MDEgMzMuNDg2ODM5IDM4LjkzNzcyMSA1MC4wNzk5NiA2MS4yODIzMTggNzEuMzAyMzIyIDc1Ljc1MTE5OCA4Mi40MjQ1MjIgOTMuNTY2NzU3IDEwNC43NjkxMiAxMjEuNDYyNDQgMTMyLjYwNDY4IDE0My44MjcwOSAxNDkuMzk4MTkgMTYwLjU0MDQ0IDE2NC45ODkzMiAxNzAuMjU5ODQgMTc0LjcwODcyIDE4NC43ODg4MyAxOTQuODY4OTYgMjA2LjAxMTIgMjE3LjIxMzU2XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJhbmQgZW52aXJvbm1lbnRhbCBpc3N1ZXNcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnXG4gICAgICAgICAgICBpZD1cImc2MDhcIlxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkyNS4xMzY0NywxNy4wNzk1MjkpXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cblxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPGdcbiAgICAgICAgaWQ9XCJhY3RcIlxuICAgICAgICBjbGFzc05hbWU9XCJocDMgYWN0LXZlcnNpb25cIlxuICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoLTg5LjU3ODYzMiw3MDkuMjY5MDcsNzA2LjQwNTc1KVwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgfX1cbiAgICAgID4gPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgYW50aWNpcGF0ZS12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwiYWN0LWFudGljaXBhdGVcIlxuICAgICAgICAgIFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiNiODViZDFcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDg5NC41LDg5MC4wMyAtNi40OCwtNTEuOCAtNDkuNTcsLTYuMTkgYyAzMS42MywtMzIuNTcgNTEuMTIsLTc3LjAxIDUxLjEyLC0xMjYuMDEgMCwtNDAuMTcgLTEzLjEsLTc3LjI3IC0zNS4yNCwtMTA3LjI4IGwgNi41LC01Mi4xMSA1MC4yLC02LjI4IGMgMzYuOTcsNDUuMTEgNTkuMTcsMTAyLjggNTkuMTcsMTY1LjY3IDAsNzEuNzYgLTI4LjkxLDEzNi43NiAtNzUuNywxODQgelwiXG4gICAgICAgIC8+PC9hPlxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhY3QtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cImFjdC1hY3RcIlxuICAgICAgICAgIFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXG4gICAgICAgIC8+IDwvYT5cbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgZW5nYWdlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJhY3QtZW5nYWdlXCJcblxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcIiNjZTlmYzlcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDUwNi40MSw4NzEuNjcgYyAtMzYuOTcsLTQ1LjEgLTU5LjE2LC0xMDIuNzkgLTU5LjE2LC0xNjUuNjYgMCwtNzEuNzYgMjguOSwtMTM2Ljc2IDc1LjcsLTE4NCBsIDYuNDYsNTEuNzkgNDkuNTksNi4yIGMgLTMxLjY0LDMyLjU3IC01MS4xMyw3Ny4wMSAtNTEuMTMsMTI2LjAxIDAsNDAuMTYgMTMuMSw3Ny4yNiAzNS4yNSwxMDcuMjggbCAtNi41MSw1Mi4xMSB6XCJcbiAgICAgICAgLz4gPC9hPlxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyByZWZsZWN0LXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJhY3QtcmVmbGVjdFwiXG4gICAgICAgICAgXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gODM0LjY4LDU3Ni4yMyBjIC0zMi41NywtMzEuNjMgLTc3LjAxLC01MS4xMiAtMTI2LjAxLC01MS4xMiAtNDAuMTYsMCAtNzcuMjYsMTMuMSAtMTA3LjI3LDM1LjI0IGwgLTUyLjEyLC02LjUgLTYuMjcsLTUwLjIgYyA0NS4xLC0zNi45OCAxMDIuNzgsLTU5LjE3IDE2NS42NiwtNTkuMTcgNzEuNzYsMCAxMzYuNzUsMjguOTEgMTg0LjAxLDc1LjcgbCAtNTEuODEsNi40OCB6XCJcbiAgICAgICAgLz4gPC9hPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDYyLThcIlxuICAgICAgICAgIFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzA4LjczLDgzNC41OSBjIC04Ljc5LDAgLTE3LjQ0LC0xLjQxIC0yNS42OSwtNC4yMSAtMi44MSwtMC45NSAtNC4zMiwtNCAtMy4zNSwtNi43OSAwLjc2LC0yLjIyIDIuODQsLTMuNjIgNS4wOSwtMy42MiAwLjU3LDAgMS4xNiwwLjA5IDEuNzQsMC4yOSA3LjE0LDIuNDEgMTQuNiwzLjYzIDIyLjIxLDMuNjMgMi45OCwwIDUuMzksMi40IDUuMzksNS4zNiAwLDIuOTYgLTIuNDEsNS4zNCAtNS4zOSw1LjM0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDY0LTRcIlxuICAgICAgICAgIFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNjg2LjE3LDkyNi42IC0xLjMzLC03Ljc5IDUuMzcsMC45OCB6IG0gLTIuOSw0LjIyIDQuMjEsMC43NyAxMS40OCwtMTguMjUgLTQuMzMsLTAuNzkgLTIuNTMsNC4xNiAtNy44NywtMS40NCAtMC44MSwtNC43NyAtNC4yMiwtMC43NyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGg2Ni01XCJcbiAgICAgICAgICBcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcxNi43OSw5MzQuMTggYyAyLjQ1LC0wLjAyIDQuNDMsLTAuNzcgNS45NCwtMi4yMyAwLjksLTAuODcgMS41NywtMi4xIDIuMDEsLTMuNzEgbCAtNC4wMSwtMC45MSBjIC0wLjIzLDEuMDQgLTAuNzEsMS44NiAtMS40NiwyLjQ3IC0wLjc0LDAuNjEgLTEuNjUsMC45MiAtMi43MiwwLjkzIC0xLjQ5LDAuMDIgLTIuNywtMC41IC0zLjYzLC0xLjU2IC0wLjk0LC0xLjA2IC0xLjQyLC0yLjc3IC0xLjQ0LC01LjE2IC0wLjAzLC0yLjUzIDAuNDEsLTQuMzQgMS4zMSwtNS40MiAwLjksLTEuMDggMi4wNywtMS42MyAzLjUzLC0xLjY1IDEuMDcsLTAuMDEgMiwwLjMyIDIuNzgsMSAwLjc4LDAuNjcgMS4zNSwxLjc0IDEuNywzLjIgbCAzLjkxLC0xLjI4IGMgLTAuNjMsLTIuMTggLTEuNjQsLTMuNzkgLTMuMDUsLTQuODQgLTEuNDEsLTEuMDQgLTMuMTksLTEuNTUgLTUuMzQsLTEuNTMgLTIuNjUsMC4wMyAtNC44MywwLjk2IC02LjUyLDIuNzkgLTEuNjksMS44MyAtMi41Miw0LjMyIC0yLjQ5LDcuNDcgMC4wNCwzLjMzIDAuOTIsNS45MSAyLjY2LDcuNzQgMS43NCwxLjgyIDQuMDEsMi43MiA2LjgyLDIuNjkgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoNjgtMFwiXG4gICAgICAgICAgXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3MzcuMzksOTMyLjQyIDE1LjYyLC0zLjAxIC0wLjY0LC0zLjMzIC01LjgyLDEuMTMgLTMuMTUsLTE2LjMzIC0zLjk3LDAuNzcgMy4xNSwxNi4zMiAtNS44MywxLjEzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8ZyBpZD1cImc3MC0zXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNzYtMylcIiBpZD1cImc3Mi02XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGlkPVwicGF0aDc4LTFcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5NC4zOCw2MjUuMzcgLTMuOTcsMTQuMyAzLjI2LDAuOTEgMi44OSwtMTAuNDEgNC4yNywxLjE5IC0yLjY5LDkuNjggMy4yNSwwLjkgMi42OSwtOS42OCA1LjI1LDEuNDYgLTIuOTksMTAuNzcgMy4yNSwwLjkxIDQuMDcsLTE0LjY3IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnODAtMFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDg2LTcpXCIgaWQ9XCJnODItNlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBpZD1cInBhdGg4OC0zXCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODcuNTMsNjUyLjUgLTAuNjUsMy44OCAxMS44MywxMC4yOSAtMTMuMTgsLTIuMjEgLTAuNjMsMy43IDE5Ljc0LDMuMzEgMC42NywtNCAtMTEuNTQsLTEwLjExIDEyLjg4LDIuMTUgMC42MiwtMy43IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnOTAtMlwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDk2LTMpXCIgaWQ9XCJnOTItMFwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICBpZD1cInBhdGg5OC02XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA0ODIuNDgsNjkwLjkyIGMgLTAuMTQsMi40OCAwLjI3LDQuNDUgMS4yMyw1LjkgMC45NiwxLjQ1IDIuMzUsMi40MyA0LjE2LDIuOTMgbCAwLjk4LC0zLjk2IGMgLTAuOTcsLTAuMzQgLTEuNzEsLTAuOTEgLTIuMjQsLTEuNzIgLTAuNTIsLTAuODEgLTAuNzUsLTEuNzkgLTAuNjksLTIuOTYgMC4xLC0xLjc2IDAuNzQsLTMuMTMgMS45MiwtNC4xMSAxLjE3LC0wLjk4IDIuODYsLTEuNCA1LjA2LC0xLjI4IDIuMzcsMC4xMyA0LjEyLDAuNzYgNS4yNSwxLjg4IDEuMTIsMS4xMiAxLjY0LDIuNTQgMS41NCw0LjI1IC0wLjA0LDAuODQgLTAuMjYsMS42OCAtMC42NCwyLjUxIC0wLjM4LDAuODMgLTAuODIsMS41NCAtMS4zMywyLjEyIGwgLTIuNTMsLTAuMTQgMC4yNiwtNC42MiAtMy4zNywtMC4xOSAtMC40OSw4LjY5IDcuOTYsMC40NSBjIDAuODcsLTAuOCAxLjY2LC0xLjk4IDIuMzcsLTMuNTUgMC43MSwtMS41NyAxLjEyLC0zLjE4IDEuMjEsLTQuODIgMC4xMiwtMi4wOSAtMC4yMiwtMy45NCAtMS4wMSwtNS41NCAtMC43OSwtMS42MSAtMS45OCwtMi44NCAtMy41NywtMy43MiAtMS41OCwtMC44NyAtMy4zMywtMS4zNiAtNS4yNSwtMS40NyAtMi4wOCwtMC4xMiAtMy45NiwwLjIyIC01LjYyLDEgLTEuNjcsMC43OCAtMi45OCwxLjk5IC0zLjk0LDMuNjIgLTAuNzQsMS4yNCAtMS4xNiwyLjgyIC0xLjI2LDQuNzMgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMDAtMVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEwNi02KVwiIGlkPVwiZzEwMi01XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDgtNVwiXG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny40Myw3MjAuNTYgNy4yOCwtMy4wOSAwLjI5LDUuNDUgeiBtIC00Ljc3LC0xLjg0IDAuMjMsNC4yNyAyMC40MSw2Ljk1IC0wLjI0LC00LjM5IC00LjYzLC0xLjUxIC0wLjQyLC03Ljk5IDQuNDUsLTEuODkgLTAuMjMsLTQuMjggelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMTAtNFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDExNi05KVwiIGlkPVwiZzExMi03XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMTgtNlwiXG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ4NS43Niw3NTEuNjEgYyAwLjQsMi40NSAxLjIzLDQuMjggMi40OCw1LjQ5IDEuMjYsMS4yMSAyLjgzLDEuODcgNC43MSwxLjk3IGwgMC4wOSwtNC4wOSBjIC0xLjAyLC0wLjEyIC0xLjg3LC0wLjUxIC0yLjU2LC0xLjE5IC0wLjY5LC0wLjY4IC0xLjEyLC0xLjU5IC0xLjMxLC0yLjc0IC0wLjI5LC0xLjc0IDAuMDQsLTMuMjIgMC45NywtNC40MyAwLjk0LC0xLjIxIDIuNDksLTEuOTkgNC42NywtMi4zNSAyLjM0LC0wLjM4IDQuMTgsLTAuMTUgNS41MywwLjcgMS4zNCwwLjg1IDIuMTUsMi4xMiAyLjQzLDMuODEgMC4xMywwLjgzIDAuMTEsMS43IC0wLjA4LDIuNTkgLTAuMTksMC44OSAtMC40NywxLjY4IC0wLjg0LDIuMzYgbCAtMi41MSwwLjQxIC0wLjc0LC00LjU3IC0zLjMzLDAuNTUgMS40MSw4LjYgNy44NywtMS4zIGMgMC42NywtMC45NiAxLjE4LC0yLjI5IDEuNTQsLTMuOTggMC4zNSwtMS42OCAwLjM5LC0zLjM0IDAuMTMsLTQuOTcgLTAuMzQsLTIuMDYgLTEuMDcsLTMuNzkgLTIuMTksLTUuMTggLTEuMTIsLTEuNCAtMi41NSwtMi4zNSAtNC4yOSwtMi44NiAtMS43MywtMC41IC0zLjU1LC0wLjYgLTUuNDUsLTAuMjkgLTIuMDUsMC4zNCAtMy44MSwxLjA3IC01LjI3LDIuMTkgLTEuNDUsMS4xMyAtMi40NywyLjU5IC0zLjA1LDQuMzkgLTAuNDUsMS4zOCAtMC41MiwzLjAxIC0wLjIxLDQuODkgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxMjAtNVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEyNi0yKVwiIGlkPVwiZzEyMi02XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxMjgtOVwiXG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDQ5MC40Miw3NzIuOTkgMy45NywxNC4zIDMuMjYsLTAuOSAtMi44OSwtMTAuNDEgNC4yOCwtMS4xOSAyLjY5LDkuNjkgMy4yNCwtMC45MSAtMi42OCwtOS42OCA1LjI1LC0xLjQ1IDIuOTksMTAuNzcgMy4yNSwtMC45IC00LjA3LC0xNC42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzEzMC0zXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTM2LTApXCIgaWQ9XCJnMTMyLTdcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDEzOC00XCJcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTEyLjc3LDgxMC4yIC03Ljg5LC0wLjUgMi4xOSwtNSB6IG0gMy40NCwzLjc5IDEuNzEsLTMuOTIgLTE1LjEyLC0xNS4zNiAtMS43Niw0LjAyIDMuNDYsMy40MyAtMy4yLDcuMzIgLTQuODMsLTAuMyAtMS43MiwzLjkyIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTQwLTVcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNDYtMylcIiBpZD1cImcxNDItMlwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ4LTVcIlxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MjQuOTEsNzkyLjM4IDEuMTcsLTMuNzUgLTEwLjMxLC0xMS44MSAxMi43NiwzLjk5IDEuMTIsLTMuNTggLTE5LjExLC01Ljk3IC0xLjIxLDMuODcgMTAuMDUsMTEuNTkgLTEyLjQ1LC0zLjg5IC0xLjEyLDMuNTggelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNTAtNFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE1Ni0wKVwiIGlkPVwiZzE1Mi03XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNTgtNFwiXG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzMi41Nyw3NjUuODggMy4xNSwtMTUuNTkgLTMuMzIsLTAuNjcgLTEuMTcsNS44MSAtMTYuMywtMy4yOSAtMC44LDMuOTYgMTYuMywzLjI5IC0xLjE4LDUuODIgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcxNjAtNFwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE2Ni0yKVwiIGlkPVwiZzE2Mi0zXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgxNjgtMFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTM3LjI2LDczOS4yNyAwLjQ4LC00LjAxIC0xOS44NywtMi4zOSAtMC40OCw0LjAxIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTcwLTdcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNzYtMSlcIiBpZD1cImcxNzItOFwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc4LTZcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzOS41OCw3MTQuMjkgYyAwLjA4LC0yLjQ0IC0wLjU3LC00LjQ2IC0xLjk3LC02LjAzIC0wLjgyLC0wLjk0IC0yLjAzLC0xLjY2IC0zLjYyLC0yLjE3IGwgLTEuMDgsMy45NyBjIDEuMDMsMC4yNyAxLjgzLDAuNzkgMi40LDEuNTYgMC41OCwwLjc3IDAuODUsMS42OSAwLjgxLDIuNzYgLTAuMDUsMS40OSAtMC42MiwyLjY3IC0xLjcxLDMuNTYgLTEuMSwwLjg5IC0yLjg0LDEuMjkgLTUuMjIsMS4yMSAtMi41MywtMC4wOCAtNC4zMiwtMC42IC01LjM2LC0xLjU0IC0xLjA0LC0wLjk1IC0xLjU0LC0yLjE1IC0xLjQ5LC0zLjYgMC4wMywtMS4wOCAwLjQxLC0xLjk5IDEuMTEsLTIuNzQgMC43MSwtMC43NSAxLjgsLTEuMjcgMy4yOCwtMS41NiBsIC0xLjExLC0zLjk1IGMgLTIuMjEsMC41MiAtMy44NiwxLjQ3IC00Ljk3LDIuODMgLTEuMSwxLjM2IC0xLjY5LDMuMTEgLTEuNzYsNS4yNiAtMC4wOSwyLjY2IDAuNzQsNC44NyAyLjUsNi42NCAxLjc2LDEuNzcgNC4yMSwyLjcxIDcuMzYsMi44MSAzLjMzLDAuMTEgNS45NCwtMC42NiA3Ljg0LC0yLjMyIDEuOSwtMS42NSAyLjksLTMuODggMi45OSwtNi42OSB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzE4MC04XCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTg2LTcpXCIgaWQ9XCJnMTgyLThcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE4OC00XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MzkuMSw2OTQuMjcgLTAuMjIsLTQuMDMgLTE5Ljk4LDEuMDkgMC4yMSw0LjAzIHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMTkwLTNcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxOTYtMilcIiBpZD1cImcxOTItMVwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTk4LTRcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkzMy45OCw2NzQuMjUgLTUuNjIsMC43OSAtMC4zMSwtMi4xOSBjIC0wLjIyLC0xLjU4IC0wLjI2LC0yLjY1IC0wLjEzLC0zLjIxIDAuMTMsLTAuNTYgMC40LC0xLjAyIDAuOCwtMS4zOCAwLjQsLTAuMzcgMC44OSwtMC41OSAxLjQ4LC0wLjY3IDAuNzIsLTAuMSAxLjM0LDAuMDIgMS44NywwLjM4IDAuNTMsMC4zNiAwLjksMC44NiAxLjExLDEuNDkgMC4xNSwwLjQ2IDAuMzMsMS40MiAwLjUzLDIuODYgeiBtIDMuOTIsMy41MyAtMC45LC02LjQyIGMgLTAuMzQsLTIuNDMgLTAuNjYsLTQgLTAuOTYsLTQuNzEgLTAuNDYsLTEuMSAtMS4yNCwtMS45NiAtMi4zNCwtMi41OSAtMS4xMSwtMC42MiAtMi40NSwtMC44MyAtNC4wMywtMC42IC0xLjIxLDAuMTcgLTIuMiwwLjUzIC0yLjk3LDEuMDkgLTAuNzcsMC41NiAtMS4zNCwxLjIxIC0xLjcyLDEuOTUgLTAuMzgsMC43NSAtMC41OSwxLjQ5IC0wLjY1LDIuMjEgLTAuMDUsMC45OCAwLjA0LDIuMzggMC4zLDQuMTkgbCAwLjM2LDIuNjEgLTcuNDcsMS4wNSAwLjU2LDQgelwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8ZyBpZD1cImcyMDAtOVwiPlxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIwNi0yKVwiIGlkPVwiZzIwMi0yXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBpZD1cInBhdGgyMDgtMFwiXG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgZD1cIm0gOTI3LjAxLDY0NC4zNyAtNi41Myw0LjQ1IC0xLjM1LC01LjI5IHogbSA1LjA0LDAuODggLTEuMDUsLTQuMTUgLTIxLjM4LC0yLjgzIDEuMDksNC4yNiA0LjgzLDAuNTcgMS45Nyw3Ljc2IC00LDIuNzIgMS4wNiw0LjE1IHpcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgaWQ9XCJnMjEwLTZcIj5cbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMTYtNylcIiBpZD1cImcyMTItOFwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4LTlcIlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGQ9XCJtIDkyNi4wNyw2MjQuMTkgLTUuNTIsLTE0LjkyIC0zLjE4LDEuMTggMi4wNiw1LjU2IC0xNS41OSw1Ljc3IDEuNCwzLjc5IDE1LjU5LC01Ljc3IDIuMDYsNS41NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnIGlkPVwiZzIyMC0yXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjI2LTkpXCIgaWQ9XCJnMjIyLTZcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOC02XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBkPVwibSA5MTYuMDYsNTk4Ljg4IC02LjUzLC0xMy4zMyAtMy4wNCwxLjQ5IDQuNzUsOS43IC0zLjk4LDEuOTUgLTQuNDIsLTkuMDMgLTMuMDMsMS40OSA0LjQyLDkuMDIgLTQuOSwyLjQgLTQuOTEsLTEwLjA1IC0zLjAzLDEuNDkgNi42OSwxMy42NyB6XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzU0LTRcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM1Ni04XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDc2OS4wNiw0ODQuNTcgLTE0LjU0LC0yLjk2IC0wLjY4LDMuMzIgMTAuNTgsMi4xNSAtMC44OCw0LjM1IC05Ljg1LC0yLjAxIC0wLjY3LDMuMzEgOS44NCwyIC0xLjA4LDUuMzQgLTEwLjk2LC0yLjIzIC0wLjY3LDMuMzEgMTQuOTEsMy4wMyB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNTgtN1wiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA3NDEuNTUsNDc5LjcxIC0xMy42NSwtMS4zNSAtMC4zNCwzLjM3IDkuNjQsMC45NSAtMC40Nyw0LjcxIC04LjMxLC0wLjgyIC0wLjM0LDMuMzcgOC4zMiwwLjgyIC0wLjg0LDguNDcgNC4wMiwwLjM5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2MC0xXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDcxNS4yMSw0NzcuOTMgaCAtNC4wNCBsIC0wLjAxLDE2LjQ4IGggLTEwLjA1IHYgMy4zNyBoIDE0LjA5IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDM2Mi03XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGQ9XCJtIDY4OC44Myw0NzguNCAtMTQuNzcsMS41IDAuMzQsMy4zNyAxMC43NSwtMS4wOSAwLjQ1LDQuNDEgLTEwLDEuMDIgMC4zNCwzLjM1IDEwLC0xLjAxIDAuNTUsNS40MiAtMTEuMTMsMS4xMyAwLjM0LDMuMzUgMTUuMTUsLTEuNTQgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgaWQ9XCJwYXRoMzY0LTJcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgZD1cIm0gNjUyLjUsNDgzLjM5IGMgLTIuMzksMC41MSAtNC4xOCwxLjYzIC01LjM4LDMuMzYgLTAuNzEsMS4wMyAtMS4xMiwyLjM3IC0xLjIzLDQuMDMgbCA0LjExLDAuMSBjIDAuMDEsLTEuMDYgMC4zMiwtMS45NiAwLjkzLC0yLjcxIDAuNjEsLTAuNzQgMS40NCwtMS4yMiAyLjQ5LC0xLjQ1IDEuNDUsLTAuMzEgMi43NCwtMC4wNCAzLjg3LDAuODEgMS4xMiwwLjg1IDEuOTMsMi40NCAyLjQzLDQuNzcgMC41MywyLjQ4IDAuNDYsNC4zNCAtMC4yMSw1LjU4IC0wLjY3LDEuMjQgLTEuNzEsMi4wMSAtMy4xMywyLjMxIC0xLjA2LDAuMjIgLTIuMDMsMC4wOCAtMi45MywtMC40MiAtMC45LC0wLjUxIC0xLjY2LC0xLjQ0IC0yLjMsLTIuODEgbCAtMy41NywyLjAzIGMgMS4wNCwyLjAxIDIuMzUsMy4zOSAzLjk0LDQuMTQgMS41OSwwLjc1IDMuNDMsMC45IDUuNTMsMC40NSAyLjYsLTAuNTYgNC41NSwtMS45IDUuODUsLTQuMDMgMS4yOSwtMi4xMyAxLjYxLC00Ljc0IDAuOTYsLTcuODIgLTAuNywtMy4yNiAtMi4wOCwtNS42MSAtNC4xNCwtNy4wNSAtMi4wNywtMS40NSAtNC40NywtMS44OCAtNy4yMiwtMS4yOSB6XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBpZD1cInBhdGgzNjYtN1wiXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA2MzMuNzQsNDg4LjM4IC0xNS4xMiw0LjkzIDEuMDUsMy4yMiA1LjYzLC0xLjgzIDUuMTYsMTUuOCAzLjg0LC0xLjI1IC01LjE2LC0xNS44MSA1LjY1LC0xLjg0IHpcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDc0Mi0yXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCJub25lXCIsXG4gICAgICAgICAgICBzdHJva2U6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgICBzdHJva2VXaWR0aDogMi4wNCxcbiAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA6IFwiYnV0dFwiLFxuICAgICAgICAgICAgc3Ryb2tlTGluZWpvaW46IFwicm91bmRcIixcbiAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ6IDEwLFxuICAgICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiBcIm5vbmVcIixcbiAgICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDEsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA1NzkuMDYsNzA4LjYgYyAwLDY3LjMgNTguMDgsMTIxLjg2IDEyOS43MiwxMjEuODYgNzEuNjQsMCAxMjkuNzIsLTU0LjU2IDEyOS43MiwtMTIxLjg2IDAsLTY3LjMgLTU4LjA4LC0xMjEuODYgLTEyOS43MiwtMTIxLjg2IC03MS42NCwwIC0xMjkuNzIsNTQuNTYgLTEyOS43MiwxMjEuODYgelwiXG4gICAgICAgIC8+XG4gICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJhY3QtdGV4dFwiXG4gICAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGFjdC12ZXJzaW9uXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSg4OS41Nzg2MzIsNzA5LjI2OTA3LDcwNi40MDU3NSlcIlxuICAgICAgICA+XG4gICAgICAgICAgPGcgaWQ9XCJnMjQ2XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjUyKVwiIGlkPVwiZzI0OFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI1NlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1ODAuODcsMTI3NS45NilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMjU0XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCA1LjU3MTExOTggMTYuNzEzMzYgMjIuMTA0MTIgMjYuNTUyOTk5IDM3LjY5NTI0IDQzLjI2NjM2MSA0Ny43MTUyNCA1OC44NTc0NzkgNjkuOTk5NzE4IDgxLjIyMjEyMiA5MS4zMDIyMzggMTAyLjQ0NDQ4IDEwNy44OTUzNiAxMTMuNDY2NDggMTI0LjYwODcyIDEzNS43NTA5NiAxNDEuMTgxNzkgMTUyLjMyNDA0IDE1Ni43NzI5MiAxNjMuNTA2MzYgMTc0LjY0ODYxIDE4NC43Njg4IDE5MC4zMzk5MiAxOTQuNzg4OCAyMDUuOTMxMDUgMjE3LjA3MzI3IDIyMi4zODM4OCAyMzMuNTI2MTIgMjQ0LjcyODQ5IDI1NS44NzA3M1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widG8gaW5mbHVlbmNlIHRoZSBkaXJlY3Rpb24gYW5kIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGcgaWQ9XCJnMjU4XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjY0KVwiIGlkPVwiZzI2MFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI2OFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NzguODMsMTI1MS45NilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMjY2XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCA1LjU3MTExOTggMTIuMjQ0NDQgMjMuMzg2NjgxIDI3LjgzNTU2IDM5LjAzNzkyMiA0OS4xMTgwMzggNTQuNjg5MTU5IDY1LjgzMTM5OCA3Mi41MDQ3MjMgODIuNTI0NzE5IDg3LjY5NTAzOCA5OC44MzcyOCAxMDQuNDA4NCAxMDkuOTE5NCAxMTUuNDkwNTIgMTI2LjYzMjc2IDEzNy43NzQ5OSAxNDMuMjA1ODQgMTQ5Ljg3OTE3IDE2MS4wODE1MSAxNzEuMTYxNjQgMTgyLjMwMzg4IDE5My41MDYyNCAyMDAuMTc5NTcgMjEwLjE5OTU1IDIyMS4zNDE4IDIyNi40MzE5NiAyMzcuNTc0MiAyNDguNzc2NTcgMjU5LjkxODc5XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJ0cmFqZWN0b3J5IG9mIHRoZSByZXNlYXJjaCBhbmQgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8ZyBpZD1cImcyNzBcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyNzYpXCIgaWQ9XCJnMjcyXCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MjgwXCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDYwMi4wMiwxMjI3Ljk2KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4yNzhcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDQuNDQ4ODgwMiAxNS41OTExMiAyNi43MzMzNiAzNy44NzU1OTkgNDcuODk1NTk5IDU5LjAzNzg0MiA2NC42MDg5NjMgNjkuMDU3ODM4IDgwLjIwMDA4MSA5MS4zNDIzMjMgOTYuNzEzMDQzIDEwNy44NTUyOCAxMTQuNTY4NjggMTI1LjcxMDkyIDEzNS43OTEwNSAxNDYuOTMzMjcgMTU3LjAxMzQgMTY3LjAzMzQgMTcyLjEyMzU3IDE3Ni41NzI0MyAxODIuMTQzNTUgMTkyLjE2MzU2IDIwMy4zMDU4IDIwNy43NTQ2OFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiaW5ub3ZhdGlvbiBwcm9jZXNzIGl0c2VsZlwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGcgaWQ9XCJnMjgyXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjg4KVwiIGlkPVwiZzI4NFwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI5MlwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NTcuOTUsMTE3OS45NilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMjkwXCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMzMuNDI2NzIgNDQuNjI5MDgyIDUwLjIwMDE5OSA2MS4zNDI0NDIgNzIuNDg0NjggNzcuNzU1MjAzIDg4Ljg5NzQzOCAxMDAuMDM5NjggMTExLjE4MTkyIDExNi42MzI4IDEyNy43NzUwNCAxMzguOTE3MjggMTUwLjA1OTUyIDE1NC41MDg0MSAxNTguOTU3MjggMTcwLjA5OTUyIDE4MS4zMDE4OCAxODYuNjkyNjQgMTkyLjI2Mzc2IDIwMy40MDYwMSAyMTQuNTQ4MjMgMjE5LjkzOSAyMjUuNTEwMTIgMjM2LjY1MjM2IDI0Ny43OTQ2IDI1OC45MzY4MyAyNzAuMDc5MDcgMjgxLjIyMTMxIDI5MS4zMjE0NyAzMDEuMzQxNDlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImFkYXB0ZWQgYW5kIGFwcGxpZWQgdGhlIGZlZWRiYWNrIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGcgaWQ9XCJnMjk0XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzAwKVwiIGlkPVwiZzI5NlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDMwNFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NzQuMTUsMTE1NS45NilcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMzAyXCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCA1LjU3MTExOTggMTIuMjQ0NDQgMjMuMzg2NjgxIDQwLjA4MDAwMiA0NS4zNTA1MjEgNTYuNDkyNzYgNjYuNTEyNzU2IDc3LjY1NDk5OSA4OC43OTcyNDEgOTUuNDcwNTU4IDEwMS4wNDE2OCAxMTEuMDYxNjggMTE2LjM5MjMyIDEyNy41MzQ1NiAxMzguNjc2OCAxNDkuODE5MDUgMTU1LjI2OTkxIDE2NS4yODk5MiAxNzAuODYxMDQgMTgyLjAwMzI4IDE5Mi4wODM0IDIwMy4yMjU2NSAyMTQuMzY3ODcgMjI1LjUxMDEyIDIyOS45NTkgMjQxLjE0MTMzIDI1Mi4yODM1NSAyNTguOTU2ODhcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImZyb20gZXhwZXJ0cyBhbmQgc3Rha2Vob2xkZXJzXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8ZyBpZD1cImczMDZcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzMTIpXCIgaWQ9XCJnMzA4XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzE2XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDU4Ni4zOSwxMTA3Ljk0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4zMTRcIlxuICAgICAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgICAgIHg9XCIwIDEwLjA4MDEyIDIxLjIyMjM2MSAzMS4yNDIzNTkgMzYuNjUzMTYgNDcuNzk1Mzk5IDUyLjI0NDI4MiA2My40NDY2NCA3NC41ODg4ODIgNzkuMDM3NzU4IDgzLjQ4NjY0MSA5NC42Njg5NjEgMTA1LjgxMTIgMTExLjM4MjMyIDEyMS40NjI0NCAxMjYuODUzMiAxMzYuOTMzMzIgMTQ4LjA3NTU2IDE1OS4yNzc5MiAxNjkuMzU4MDUgMTczLjgwNjkyIDE4NC45NDkxNiAxOTYuMTUxNTIgMjAxLjQyMjA0IDIxMi41NjQyOSAyMjIuNjg0NDggMjI4LjA3NTI0IDIzMy42NDYzNiAyNDQuNzg4NlwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wia2V5IGhpZ2hsaWdodHMgY2F1c2luZyB1cyB0byBcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICAgIDxnIGlkPVwiZzMxOFwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0NTIuMDMyMjEsLTQ1MS4zODkxOSlcIj5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDMyNClcIiBpZD1cImczMjBcIj5cbiAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICBpZD1cInRleHQzMjhcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcbiAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNTUyLjU1LDEwODMuOTQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjMyNlwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgNi42NzMzMTk4IDE3Ljg1NTY0IDI3Ljg3NTY0MSAzOS4wNzc5OTkgNTAuMjIwMjQyIDYwLjMwMDM2MiA2NC43NDkyMzcgNzUuODkxNDc5IDg3LjAzMzcyMiA5My43MDcwMzkgOTkuMTc3OTYzIDEwNC4zMjgyNCAxMTUuNDcwNDggMTI2LjYxMjcyIDEzNi42MzI3MiAxNDcuNzc0OTYgMTUyLjIyMzg1IDE2My4zNjYwNyAxNzQuNTA4MzIgMTc5LjkxOTExIDE5MS4wNjEzNiAyMDIuMjAzNiAyMTMuMzQ1ODQgMjE4Ljc5NjcyIDIyOS45Mzg5NiAyMzQuMzg3ODMgMjM5Ljk1ODk1IDI1MS4xMDEyIDI1Ny43NzQ1MSAyNjMuMjA1MzUgMjczLjIyNTM3IDI4NC40Mjc3MyAzMDEuMTIxMDMgMzEyLjI2MzI4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJyZWNvbnNpZGVyLCBkZXZlbG9wIGFuZCBhbHRlciBzb21lIFwifVxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICAgPGcgaWQ9XCJnMzMwXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzM2KVwiIGlkPVwiZzMzMlwiPlxuICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDM0MFwiXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NjYuMTEsMTA1OS45NClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMzM4XCJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAxNi43MTMzNiAyMi4wODQwOCAyNy42NTUxOTkgMzguNzk3NDQgNDkuOTM5Njc4IDU1LjMzMDQ0MSA2Ni40NzI2NzkgNzYuNTUyODAzIDg3LjY5NTAzOCA5OC44MzcyOCAxMDguOTM3NDQgMTE0LjUwODU2IDEyNC41Mjg1NiAxMjkuNjk4ODggMTQwLjg0MTEzIDE0Ni40MTIyNSAxNTEuOTAzMiAxNjMuMDQ1NDQgMTc0LjE4NzY4IDE4MC45MjExMyAxODYuMTkxNjQgMTk3LjMzMzg4IDIwNC4wNDcyOSAyMTUuMTg5NTEgMjE5LjYzODQgMjMwLjc4MDY0IDI0MC44NjA3NiAyNDYuNDMxODggMjUxLjY2MjMyIDI2Mi44MDQ1NyAyNzMuOTQ2ODEgMjg1LjA4OTA1XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJvZiB0aGUgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCBhbmQgXCJ9XG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cbiAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgICA8ZyBpZD1cImczNDJcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzNDgpXCIgaWQ9XCJnMzQ0XCI+XG4gICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzUyXCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDY2OS43LDEwMzUuOTQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjM1MFwiXG4gICAgICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICAgICAgeD1cIjAgNi42NzMzMTk4IDE3Ljg1NTY0IDI3Ljg3NTY0MSAzOS4wNzc5OTkgNTAuMjIwMjQyIDU2LjkzMzY0IDY2Ljk1MzY0NFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wicmVzZWFyY2hcIn1cbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgPC9nPlxuICA8L3N2Zz5cbik7XG5cbiIsICJleHBvcnQgY29uc3QgV2hvbGVNZW5kZWxvdyA9ICgpID0+IChcbiAgPHN2Z1xuICB2aWV3Qm94PVwiLTE1MDAgMCA5MDAwIDYwMDBcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIHhtbG5zWGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICB4bWxTcGFjZT1cInByZXNlcnZlXCJcbiAgICBvdmVyZmxvdz1cImhpZGRlblwiXG4gID5cbiAgICA8ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTMzOSAtODI5KVwiPlxuICAgICAgPGc+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0yOC42NDU4LTIuOTYxOGUtMDYgMjguNjQ2MiAzMzQ3LjI0LTI4LjY0NTUgMzM0Ny4yNC0yOC42NDU4IDIuOTYxOGUtMDZaTTg1LjkzNzggMzMxOC41OSAwLjAwMDM2MDg5MiAzNDkwLjQ3LTg1LjkzNzIgMzMxOC41OVpcIlxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICBmaWxsUnVsZT1cIm5vbnplcm9cIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAtMSA4NzEuNSA1MDQ5Ljk3KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xMjg2IDE2MjMuODRDMTI4NiAxNDQ0LjQ0IDE0MzEuNDQgMTI5OSAxNjEwLjg0IDEyOTlMMjkxMC4xNiAxMjk5QzMwODkuNTYgMTI5OSAzMjM1IDE0NDQuNDQgMzIzNSAxNjIzLjg0TDMyMzUgMjkyMy4xNkMzMjM1IDMxMDIuNTYgMzA4OS41NiAzMjQ4IDI5MTAuMTYgMzI0OEwxNjEwLjg0IDMyNDhDMTQzMS40NCAzMjQ4IDEyODYgMzEwMi41NiAxMjg2IDI5MjMuMTZaXCJcbiAgICAgICAgICBmaWxsPVwiI0I4NUJEMVwiXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgLz5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDE0NDIuMzQgMjA4OSlcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiSGlnaCBQb3dlciwgTG93IEludGVyZXN0XCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsyMzh9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDE0MzkuNDggMjU0OClcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiS2VlcCBcIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjA4OC4wMiAyNTQ4KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJTYXRpc2ZpZWRcIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMzM4NiAxNjIzLjg0QzMzODYgMTQ0NC40NCAzNTMxLjQ0IDEyOTkgMzcxMC44NCAxMjk5TDUwMTAuMTYgMTI5OUM1MTg5LjU2IDEyOTkgNTMzNSAxNDQ0LjQ0IDUzMzUgMTYyMy44NEw1MzM1IDI5MjMuMTZDNTMzNSAzMTAyLjU2IDUxODkuNTYgMzI0OCA1MDEwLjE2IDMyNDhMMzcxMC44NCAzMjQ4QzM1MzEuNDQgMzI0OCAzMzg2IDMxMDIuNTYgMzM4NiAyOTIzLjE2WlwiXG4gICAgICAgICAgZmlsbD1cIiM4NTBFNzhcIlxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgIC8+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cInZhcigtLW91cmJlaWdlKVwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFdlaWdodD17NDAwfVxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzNTI1LjgzIDIwODkpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtcIkhpZ2ggUG93ZXIsIEhpZ2ggSW50ZXJlc3RcIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzcxMS43NSAyNTQ4KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJLZWVwIENsb3NlXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTEyODYgMzc0My44NEMxMjg2IDM1NjQuNDQgMTQzMS40NCAzNDE5IDE2MTAuODQgMzQxOUwyOTEwLjE2IDM0MTlDMzA4OS41NiAzNDE5IDMyMzUgMzU2NC40NCAzMjM1IDM3NDMuODRMMzIzNSA1MDQzLjE2QzMyMzUgNTIyMi41NiAzMDg5LjU2IDUzNjggMjkxMC4xNiA1MzY4TDE2MTAuODQgNTM2OEMxNDMxLjQ0IDUzNjggMTI4NiA1MjIyLjU2IDEyODYgNTA0My4xNlpcIlxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1kYXJrZXJiZWlnZSlcIlxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgIC8+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezE0N31cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTQ1OC42NyA0MjA4KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJMb3cgUG93ZXIsIExvdyBJbnRlcmVzdFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTQ5Mi4yIDQ2NjcpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtcIktlZXAgTWluaW1hbFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0zMzg2IDM3NDMuODRDMzM4NiAzNTY0LjQ0IDM1MzEuNDQgMzQxOSAzNzEwLjg0IDM0MTlMNTAxMC4xNiAzNDE5QzUxODkuNTYgMzQxOSA1MzM1IDM1NjQuNDQgNTMzNSAzNzQzLjg0TDUzMzUgNTA0My4xNkM1MzM1IDUyMjIuNTYgNTE4OS41NiA1MzY4IDUwMTAuMTYgNTM2OEwzNzEwLjg0IDUzNjhDMzUzMS40NCA1MzY4IDMzODYgNTIyMi41NiAzMzg2IDUwNDMuMTZaXCJcbiAgICAgICAgICBmaWxsPVwiI0EwQTdGM1wiXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgLz5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM1NDIuMTYgNDIwOClcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiSGlnaCBQb3dlciwgTG93IEludGVyZXN0XCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsyMzh9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM1MjYuMTIgNDY2NylcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiS2VlcCBcIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDE3NC42NiA0NjY3KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJJbmZvcm1lZFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0yOC42NDU4LTIuOTYxOGUtMDYgMjguNjQ2MiAzMzQ3LjI0LTI4LjY0NTUgMzM0Ny4yNC0yOC42NDU4IDIuOTYxOGUtMDZaTTg1LjkzNzggMzMxOC41OSAwLjAwMDM2MDg5MiAzNDkwLjQ3LTg1LjkzNzIgMzMxOC41OVpcIlxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICBmaWxsUnVsZT1cIm5vbnplcm9cIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCg2LjEyMzIzZS0xNyAxIDEgLTYuMTIzMjNlLTE3IDE2NDEuNSA1ODA0LjUpXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250U2l6ZT17MTY1fVxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEuODM2OTdlLTE2IC0xIDEgLTEuODM2OTdlLTE2IDY2NS4xNTMgNDA5MilcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiUE9XRVIgXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250U2l6ZT17MTY1fVxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEuODM2OTdlLTE2IC0xIDEgLTEuODM2OTdlLTE2IDY2NS4xNTMgMzQyMylcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiT0YgSU1QQUNUXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250U2l6ZT17MTY1fVxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMzY4LjM4IDYxMTMpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtcIklOVEVSRVNUIFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezE2NX1cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzIzMC4wNCA2MTEzKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJGT1IgUFJPSkVDVFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIml0YWxpY1wiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezE4M31cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNjU0LjU4NyA1ODcxKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJMT1dcIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJpdGFsaWNcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxODN9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDU2ODQuOTUgNTg1NilcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiSElHSFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIml0YWxpY1wiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezE4M31cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNjM4LjI3NyAxMDY3KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJISUdIXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgIDwvZz5cbiAgICA8L2c+XG4gIDwvc3ZnPlxuKTtcblxuXG4iLCAiZXhwb3J0IGZ1bmN0aW9uIFN0YWtlaG9sZGVyTWFuYWdlbWVudCgpe1xuXG4gICAgcmV0dXJuKFxuICA8c3ZnXG4gICAgdmlld0JveD1cIjAgMCA0NzAwIDI1MDBcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIHhtbG5zWGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICB4bWxTcGFjZT1cInByZXNlcnZlXCJcbiAgICBvdmVyZmxvdz1cImhpZGRlblwiXG5cbiAgPlxuICAgIDxnIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtMTA0MCAtMjAyMSlcIj5cbiAgICAgIDxnPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMCAwLjA0MjcyOSAwIDcxNy4wNzggNDMwLjk1NyAxMTQ4IDQzMC45NTcgMC4wNDI3MjlaXCJcbiAgICAgICAgICBmaWxsPVwiIzdFODRDMVwiXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEgMCAwIDEgNDE1MyAzMTA4KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk00MzAuOTY1IDAgMCA0MzEgMTE0Ny45NiA0MzEgMTE0Ny45NiAwWlwiXG4gICAgICAgICAgZmlsbD1cIiM4RjQ3QTJcIlxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDQxNTQgMjE4OSlcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMC4wNDI3MzI1IDAgMC4wNDI3MzI1IDExNDcuOTYgNDMxIDExNDcuOTYgNDMxIDQzMC45NjUgMC4wNDI3MzI1IDBaXCJcbiAgICAgICAgICBmaWxsPVwiIzVFMEE1NFwiXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEgMCAwIDEgMjUxOCAyMTg5KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0wLjA0MjcyOSAwLjA0MjczMjUgMC4wNDI3MjkgNDMxIDcxNy4wNzggNDMxIDExNDggMC4wNDI3MzI1WlwiXG4gICAgICAgICAgZmlsbD1cIiMwODA2MDdcIlxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDMyMzUgMzgyNSlcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNNTk1LjQ4OSAwIDE2NC41MTEgNDMwLjg1OCAxNjQuNTExIDkxOC44NzMgMCA5MTguODczIDM4MCAxMzgwLjk2IDc2MCA5MTguODczIDU5NS40ODkgOTE4Ljg3MyA1OTUuNDg5IDBaXCJcbiAgICAgICAgICBzdHJva2U9XCIjQjg1QkQxXCJcbiAgICAgICAgICBzdHJva2VXaWR0aD17My40Mzc1fVxuICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJidXR0XCJcbiAgICAgICAgICBzdHJva2VMaW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PXsxMH1cbiAgICAgICAgICBzdHJva2VPcGFjaXR5PXsxfVxuICAgICAgICAgIGZpbGw9XCIjQjg1QkQxXCJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSAwIDAgMSA0MzE4LjUgMjE4OS41KVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk00NjIuMTI3IDAgMC4wNDI3MTg0IDM4MCA0NjIuMTI3IDc2MCA0NjIuMTI3IDU5NS40ODkgMTM4MSA1OTUuNDg5IDk1MC4xODUgMTY0LjUxMSA0NjIuMTI3IDE2NC41MTEgNDYyLjEyNyAwWlwiXG4gICAgICAgICAgc3Ryb2tlPVwiIzg1MEU3OFwiXG4gICAgICAgICAgc3Ryb2tlV2lkdGg9ezMuNDM3NX1cbiAgICAgICAgICBzdHJva2VMaW5lY2FwPVwiYnV0dFwiXG4gICAgICAgICAgc3Ryb2tlTGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD17MTB9XG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eT17MX1cbiAgICAgICAgICBmaWxsPVwiIzg1MEU3OFwiXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEgMCAwIDEgMzQ2OC41IDIwMjUuNSlcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMzgwIDAuMDQyNzE4NCAwLjA0MjczMDIgNDYyLjEyNyAxNjQuNTU0IDQ2Mi4xMjcgMTY0LjU1NCAxMzgxIDU5NS40ODkgOTUwLjE4NSA1OTUuNDg5IDQ2Mi4xMjcgNzYwIDQ2Mi4xMjcgMzgwIDAuMDQyNzE4NFpcIlxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSAwIDAgMSAyNjgyIDI4NzUpXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTkxOC44NzIgMC4wNDI3MzAyIDkxOC44NzIgMTY0LjU1NCAwIDE2NC41NTQgNDMwLjgxNSA1OTUuNDg5IDkxOC44NzIgNTk1LjQ4OSA5MTguODcyIDc2MCAxMzgwLjk2IDM4MCA5MTguODcyIDAuMDQyNzMwMlpcIlxuICAgICAgICAgIGZpbGw9XCIjQTBBN0YzXCJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSAwIDAgMSA0MTUzIDM2NjEpXCJcbiAgICAgICAgLz5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiI0EwQTdGM1wiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQxOTAuMTUgNDIyNClcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiSU1QTEVNRU5UQVRJT05cIn1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIGZpbGw9XCIjQjg1QkQxXCJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICBmb250RmFtaWx5PVwiRmlyYSBTYW5zLEZpcmEgU2Fuc19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFNpemU9ezE0N31cbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDM3OC4yNSAyMzI3KVwiXG4gICAgICAgID5cbiAgICAgICAgICB7XCJSRUdVTEFUSU9OICYgXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiI0I4NUJEMVwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ4ODAuMTMgMjUwMylcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiU0FGRVRZXCJ9XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBmaWxsPVwiIzVFMEE1NFwiXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDExMzAuODIgMjM0MilcIlxuICAgICAgICA+XG4gICAgICAgICAge1wiUEVSQ0VQVElPTlwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJGaXJhIFNhbnMsRmlyYSBTYW5zX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxMTMwLjgyIDQyMDIpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtcIklNUEFDVFwifVxuICAgICAgICA8L3RleHQ+XG4gICAgICA8L2c+XG4gICAgPC9nPlxuICA8L3N2Zz5cbik7XG5cbn0iLCAiXG5leHBvcnQgZnVuY3Rpb24gU1dPVG9uZSgpe1xuXG4gICAgcmV0dXJuKFxuICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgdmlld0JveD1cIjAgMCA1NTAwIDI1MDBcIlxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICB4bWxuc1hsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXG4gICAgICAgICAgICB4bWxTcGFjZT1cInByZXNlcnZlXCJcbiAgICAgICAgICAgIG92ZXJmbG93PVwiaGlkZGVuXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTQzNSAtMzU3NSlcIj5cbiAgICAgICAgICAgICAgPGc+XG4gICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMzIyMiA1MzA1LjMgMzM1MS45MSA1MzA1LjMgMzM1MS45MSA1NjMyLjkyIDMyMzYuMjIgNTYzMi45MiAzMjI2LjQ0IDU2MDEuNDNDMzIyMy41MyA1NTg3LjE5IDMyMjIgNTU3Mi40NiAzMjIyIDU1NTcuMzZaTTM1NTQuOTYgNTIyMy4zNSAzNzA4LjUyIDUyMjMuMzUgMzcwOC41MiA1NjMyLjkyIDM1NTQuOTYgNTYzMi45MlpNMzkxMC4xNiA1MDQzLjYyIDQwNjMuODQgNTA0My42MiA0MDYzLjg0IDU2MzIuOTIgMzkxMC4xNiA1NjMyLjkyWk00MzgzLjUxIDM3MDQuMzJDNDQzNC44OCAzNzA0LjMyIDQ0NzguODIgMzcxNC41NSA0NTE1Ljg0IDM3MzMuMThMNDUyMi44MyAzNzM3LjkgNDUyOS41NiAzNzU5LjU3QzQ1MzIuNDcgMzc3My44MSA0NTM0IDM3ODguNTQgNDUzNCAzODAzLjY0TDQ1MzQgNDQxNS40MiA0NTIxLjk0IDQ0MjIuOTNDNDQ4NC44NCA0NDQyLjcxIDQ0NDAuMSA0NDUzLjg1IDQzODYuNzIgNDQ1My44NSA0MTkwLjg4IDQ0NTMuODUgNDA5Ni4xNyA0MjkwLjE0IDQwOTYuMTcgNDA3My40NiA0MDk2LjE3IDM4NTguNCA0MTgyLjg1IDM3MDQuMzIgNDM4My41MSAzNzA0LjMyWk0zNDQwLjY3IDM1ODUgNDEwMi4zMSAzNTg1IDQwNzAgMzYwNS4yNUMzOTI3LjM0IDM3MDUuODcgMzg0OC45NiAzODc3LjY2IDM4NDguOTYgNDA3OC4yOCAzODQ4Ljk2IDQzOTYuMDcgNDAzMC4zNSA0NjQ4LjA1IDQzNzguNjkgNDY0OC4wNSA0NDIzLjY0IDQ2NDguMDUgNDQ2NS44NSA0NjQzLjkxIDQ1MDUuMzEgNDYzNi4wN0w0NTM0IDQ2MjguNzkgNDUzNCA1NTU3LjM2QzQ1MzQgNTY3OC4xMSA0NDM2LjEgNTc3NiA0MzE1LjMzIDU3NzZMMzQ0MC42NyA1Nzc2QzMzNjUuMTkgNTc3NiAzMjk4LjY0IDU3MzcuNzYgMzI1OS4zNSA1Njc5LjYxTDMyNTAuNjIgNTY2My41MyA0MjEzLjI2IDU2NjMuNTNDNDIyNC41MSA1NjYzLjUzIDQyMzEuNjEgNTY1Ny40NyA0MjMxLjYxIDU2NDcuNjEgNDIzMS42MSA1NjQwLjMyIDQyMjMuMDkgNTYzMi45MiA0MjEzLjI2IDU2MzIuOTJMNDA5OS4wMSA1NjMyLjkyIDQwOTkuMDEgNTAyOC45NEM0MDk5LjAxIDUwMTkuMTggNDA5Mi4wMiA1MDEzLjAyIDQwODIuMTkgNTAxMy4wMkwzODk0LjY1IDUwMTMuMDJDMzg4NC44MiA1MDEzLjAyIDM4NzcuNzIgNTAxOS4xOCAzODc3LjcyIDUwMjguOTRMMzg3Ny43MiA1NjMyLjkyIDM3NDMuODEgNTYzMi45MiAzNzQzLjgxIDUyMDcuNDNDMzc0My44MSA1MTk4LjkxIDM3MzYuNyA1MTkyLjc0IDM3MjUuNDYgNTE5Mi43NEwzNTM5LjQ1IDUxOTIuNzRDMzUyOC4wOCA1MTkyLjc0IDM1MjEuMSA1MTk4LjkxIDM1MjEuMSA1MjA3LjQzTDM1MjEuMSA1NjMyLjkyIDMzODcuMTkgNTYzMi45MiAzMzg3LjE5IDUyOTAuNjJDMzM4Ny4xOSA1MjgwLjc2IDMzODAuMDkgNTI3NC43IDMzNzAuMjYgNTI3NC43TDMyMjIgNTI3NC43IDMyMjIgNTIxMS41IDMyNzMuNDUgNTIwMy40N0MzMzMyLjU5IDUxOTMuMTQgMzQwNC4yMSA1MTc3LjE1IDM0ODIuOTcgNTE1Mi4zOCAzNjAwLjA3IDUxMTUuNzIgMzcxMS4zNyA1MDY2LjgzIDM4MTEuNTMgNTAwOC4wOSAzODIxLjM2IDUwMDQuNDkgMzgyMi43OCA0OTk0LjYzIDM4MTcuMSA0OTg3LjM0IDM4MTMuNDMgNDk4Mi42MiAzODA4LjEgNDk3OS45NSAzODAyLjQyIDQ5NzkuOTUgMzc5OS4zNCA0OTc5Ljk1IDM3OTYuMTQgNDk4MC42NyAzNzkzLjE4IDQ5ODIuNDEgMzY5NC40NCA1MDQxLjE2IDM1ODUuOTggNTA4Ny41OCAzNDcwLjMxIDUxMjMuMTEgMzM5My42NyA1MTQ2Ljk1IDMzMjQuMTYgNTE2Mi4zNiAzMjY2Ljg0IDUxNzIuMzdMMzIyMiA1MTc5LjQgMzIyMiA1MTQ0Ljk5IDMyNjEuNDIgNTEzOC43MkMzMzE4LjA4IDUxMjguNzIgMzM4Ni44MiA1MTEzLjQyIDM0NjEuOSA1MDkwLjA0IDM2MjguMjUgNTAzNy40NiAzODY3Ljg5IDQ5MzIuMjkgNDA2My44NCA0NzIwLjczIDQwNzQuNjEgNDcxMS4zOCA0MDY0LjU1IDQ2OTYuMjkgNDA0OS45OSA0Njk2LjI5IDQwNDkuNCA0Njk2LjI5IDQwNDguOTIgNDY5Ni4yOSA0MDQ4LjMzIDQ2OTYuMjlMMzk5MS45NyA0NzAyLjQ1QzM5OTAuMiA0NzAyLjc2IDM5ODguNTQgNDcwMi45NiAzOTg3IDQ3MDIuOTYgMzk3OC4yNCA0NzAyLjk2IDM5NzEuOTYgNDY5Ny40MiAzOTcwLjc4IDQ2OTAuMjMgMzk2Ni41MiA0NjgwLjM3IDM5NzYuNDYgNDY3MC42MSAzOTg3LjcxIDQ2NjkuMzhMNDEzOC41NSA0NjUyLjMzQzQxMzkuMjYgNDY1Mi4yMyA0MTM5Ljk3IDQ2NTIuMjMgNDE0MC42OCA0NjUyLjIzIDQxNTEuMjIgNDY1Mi4yMyA0MTYxLjA1IDQ2NjAuMjQgNDE2MS4wNSA0NjY5LjM4TDQxNjEuMDUgNDc5OC45OUM0MTYxLjA1IDQ4MDguODUgNDE1Mi42NCA0ODE2LjE0IDQxNDEuMzkgNDgxNi4xNCA0MTMwLjAzIDQ4MTYuMTQgNDEyMS42MiA0ODA4Ljg1IDQxMjEuNjIgNDc5OC45OUw0MTIxLjYyIDQ3NTkuODZDNDEyMS42MiA0NzUzLjggNDExNy4zNiA0NzQ3LjY0IDQxMTEuNzkgNDc0NS4yOCA0MTEwLjAyIDQ3NDQuOTcgNDEwOC4yNCA0NzQ0Ljc2IDQxMDYuMzUgNDc0NC43NiA0MTAwLjQzIDQ3NDQuNzYgNDA5NC4xNSA0NzQ2LjQxIDQwOTIuMDIgNDc1MC4xIDQwMjcuMTQgNDgyMS4wNyAzOTUxLjAxIDQ4ODMuNDEgMzg2OS4zMSA0OTM4LjQ2IDM4NjIuMjEgNDk0My4yOCAzODYwLjc5IDQ5NTMuMTQgMzg2Ni40NyA0OTU5LjIgMzg3MC4wMiA0OTYzLjEgMzg3NS44MiA0OTY1LjQ3IDM4ODEuMzkgNDk2NS40NyAzODg0LjcgNDk2NS40NyAzODg3Ljc4IDQ5NjQuNjUgMzg5MC4zOSA0OTYyLjkgMzk2MC45NSA0OTE1LjE0IDQwMjguNTYgNDg2MC4yIDQwODcuNzYgNDgwMi42OSA0MDkwLjYgNDgyOC4zNiA0MTEzLjA5IDQ4NDcuOTggNDE0Mi42OSA0ODQ3Ljk4IDQxNzIuNDEgNDg0Ny45OCA0MTk3Ljc1IDQ4MjcuMTMgNDE5Ny43NSA0ODAwLjIyTDQxOTcuNzUgNDY3MC42MUM0MTk0LjkxIDQ2NTcuMTYgNDE4Ny44IDQ2NDQuOTQgNDE3NS4xNCA0NjM2LjQxIDQxNjQuNzIgNDYyOC4zIDQxNTIuMTcgNDYyMy41OCA0MTM5LjUgNDYyMy41OCA0MTM2Ljc3IDQ2MjMuNTggNDEzNC4xNyA0NjIzLjc4IDQxMzEuNDUgNDYyNC4xOUwzOTgwLjYxIDQ2NDAuMTFDMzk1MS4wMSA0NjQzLjcgMzkyOS45MyA0NjY4LjE1IDM5MzQuMDcgNDY5My44MiAzOTM2LjggNDcxNy45NiAzOTYxLjc4IDQ3MzUuNjIgMzk4OS4zNyA0NzM1LjYyIDM5OTEuMTQgNDczNS42MiAzOTkyLjkyIDQ3MzUuNjIgMzk5NC42OSA0NzM1LjQyTDQwMDcuMzYgNDczMi45NUMzODIyLjc4IDQ5MTguODQgMzYwNC4yMiA1MDE0LjI1IDM0NDkuMjMgNTA2MS45IDMzNzYuMjggNTA4NC4zOSAzMzA5LjY2IDUwOTkuMyAzMjU0LjgxIDUxMDkuMTVMMzIyMiA1MTE0LjUgMzIyMiAzODAzLjY0QzMyMjIgMzY4Mi44OSAzMzE5LjkgMzU4NSAzNDQwLjY3IDM1ODVaXCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjQzhDQkYxXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTU0MTAuNTUgNTM2NC44M0M1NDA1LjY2IDUzNjQuODMgNTQwMC4yOSA1MzY2LjQgNTM5NS4yNyA1MzY5LjQxIDUzODguMjMgNTM3NS42NSA1Mzg4LjIzIDUzODUuNTIgNTM5NS4yNyA1Mzk0LjI1TDU0MjAuOTMgNTQxNS4yNSA1Mzk1LjI3IDU0MzcuNUM1Mzg4LjIzIDU0NDMuNzMgNTM4OC4yMyA1NDUzLjYxIDUzOTUuMjcgNTQ2Mi4yNCA1Mzk5LjU3IDU0NjQuNzMgNTQwNS4zIDU0NjUuOTggNTQwOS40OCA1NDY1Ljk4IDU0MTUuMiA1NDY1Ljk4IDU0MjAuOTMgNTQ2NC43MyA1NDIzLjY4IDU0NjIuMjRMNTQ0OS4zNCA1NDM5Ljk5IDU0NzMuNDQgNTQ2Mi4yNEM1NDc3Ljc0IDU0NjQuNzMgNTQ4My4zNSA1NDY1Ljk4IDU0ODcuNjQgNTQ2NS45OCA1NDkzLjM3IDU0NjUuOTggNTQ5OC45OCA1NDY0LjczIDU1MDEuODUgNTQ2Mi4yNCA1NTA5LjAxIDU0NTYuMSA1NTA5LjAxIDU0NDQuOTggNTUwMS44NSA1NDM3LjVMNTQ3Ny43NCA1NDE1LjI1IDU1MDEuODUgNTM5NC4yNUM1NTA5LjAxIDUzODguMDIgNTUwOS4wMSA1Mzc2Ljg5IDU1MDEuODUgNTM2OS40MSA1NDk4LjI3IDUzNjYuNCA1NDkzLjczIDUzNjQuODMgNTQ4OC43MiA1MzY0LjgzIDU0ODMuNzEgNTM2NC44MyA1NDc4LjQ2IDUzNjYuNCA1NDczLjQ0IDUzNjkuNDFMNTQ0OS4zNCA1MzkwLjUxIDU0MjMuNjggNTM2OS40MUM1NDIwLjIyIDUzNjYuNCA1NDE1LjU2IDUzNjQuODMgNTQxMC41NSA1MzY0LjgzWk00ODg4LjA4IDUzMjkuOEM0OTE5LjM0IDUzMjkuOCA0OTQ2LjMxIDUzNTMuNCA0OTQ2LjMxIDUzODEuODggNDk0Ni4zMSA1NDA5LjAxIDQ5MTkuMzQgNTQzMi42MSA0ODg4LjA4IDU0MzIuNjEgNDg1NS4zOCA1NDMyLjYxIDQ4MjkuODQgNTQwOS4wMSA0ODI5Ljg0IDUzODEuODggNDgyOS44NCA1MzUzLjQgNDg1NS4zOCA1MzI5LjggNDg4OC4wOCA1MzI5LjhaTTUwNzEuODYgNTEzNy4wOEM1MDY2LjczIDUxMzcuMDggNTA2MS4zNiA1MTM4LjY0IDUwNTcuMTggNTE0MS43NiA1MDUwLjAyIDUxNDcuODkgNTA1MC4wMiA1MTU5LjAxIDUwNTcuMTggNTE2Ni41TDUwODEuMjkgNTE4Ny40OSA1MDU3LjE4IDUyMDkuODRDNTA1MC4wMiA1MjE1Ljk4IDUwNTAuMDIgNTIyNy4xIDUwNTcuMTggNTIzNC41OCA1MDU5LjkzIDUyMzcuMDggNTA2NS42NSA1MjM5LjQ3IDUwNzEuMzggNTIzOS40NyA1MDc1LjU2IDUyMzkuNDcgNTA4MS4yOSA1MjM3LjA4IDUwODUuNTggNTIzNC41OEw1MTA5LjY5IDUyMTIuMjMgNTEzNS4yMyA1MjM0LjU4QzUxMzguMDkgNTIzNy4wOCA1MTQzLjgyIDUyMzkuNDcgNTE0OS40MyA1MjM5LjQ3IDUxNTMuNzMgNTIzOS40NyA1MTU5LjQ2IDUyMzcuMDggNTE2My42MyA1MjM0LjU4IDUxNzAuNzkgNTIyOC4zNSA1MTcwLjc5IDUyMTcuMjIgNTE2My42MyA1MjA5Ljg0TDUxMzguMDkgNTE4Ny40OSA1MTYzLjYzIDUxNjYuNUM1MTcwLjc5IDUxNjAuMjYgNTE3MC43OSA1MTQ5LjE0IDUxNjMuNjMgNTE0MS43NiA1MTYwLjE3IDUxMzguNjQgNTE1NS4xNiA1MTM3LjA4IDUxNTAuMDMgNTEzNy4wOCA1MTQ0LjkgNTEzNy4wOCA1MTM5LjUzIDUxMzguNjQgNTEzNS4yMyA1MTQxLjc2TDUxMDkuNjkgNTE2Mi43NSA1MDg1LjU4IDUxNDEuNzZDNTA4MiA1MTM4LjY0IDUwNzYuOTkgNTEzNy4wOCA1MDcxLjg2IDUxMzcuMDhaTTUzODMuOTQgNTExNS43N0M1MzgzLjk0IDUxMTUuNzcgNTM4MS4wNyA1MTE1Ljc3IDUzODEuMDcgNTExNy4wMkw1MzI5Ljk5IDUxNDAuNTFDNTMyMS40IDUxNDQuMjUgNTMxNS42NyA1MTU0LjEzIDUzMjEuNCA1MTYyLjc2IDUzMjUuNTggNTE2OS4yIDUzMzIuMTQgNTE3Mi44NCA1MzM5Ljc4IDUxNzIuODQgNTM0Mi41MyA1MTcyLjg0IDUzNDUuMzkgNTE3Mi40MiA1MzQ4LjM3IDUxNzEuMzhMNTM2Mi41NyA1MTY1LjI1QzUzMzcuMDMgNTIzOS40NyA1MjkxLjU3IDUyOTUuMTkgNTIyOS4wMyA1MzI5LjggNTE2Ni43NCA1MzY0Ljk0IDUwOTcuMjggNTM3Mi40MiA1MDQ2LjkyIDUzNzIuNDIgNTAyMi42OSA1MzcyLjQyIDUwMDIuNzYgNTM3MC42NiA0OTkwLjM1IDUzNjkuNDEgNDk4My4xOSA1MzI4LjY2IDQ5NDMuNDUgNTI5Ny42OCA0ODk1LjEyIDUyOTcuNjggNDg0MS4xOCA1Mjk3LjY4IDQ3OTcuMTQgNTMzNi4wNCA0Nzk3LjE0IDUzODMuMDMgNDc5Ny4xNCA1NDI4Ljg3IDQ4NDEuMTggNTQ2OC40NyA0ODk1LjEyIDU0NjguNDcgNDk0MC41OSA1NDY4LjQ3IDQ5ODAuNDUgNTQzOS45OSA0OTkwLjM1IDU0MDIuODggNTAwNC41NSA1NDA0LjEzIDUwMjQuNDggNTQwNi42MiA1MDUwLjAyIDU0MDYuNjIgNTEwMy45NiA1NDA2LjYyIDUxODAuNyA1Mzk2LjY0IDUyNTAuMzkgNTM1OC4yOSA1MzE5Ljk3IDUzMTkuOTMgNTM2OS43MyA1MjYwLjU3IDUzOTguMTQgNTE4MC4xMkw1NDAxIDUxODVDNTQwNS4zIDUxOTEuMjQgNTQxMi4zNCA1MTkzLjczIDU0MTkuNSA1MTkzLjczIDU0MjIuMjQgNTE5My43MyA1NDIzLjY4IDUxOTMuNzMgNTQyNy45NyA1MTkyLjQ5IDU0MjkuNCA1MTg3LjUgNTQzMy43IDUxNzcuNjIgNTQyNy45NyA1MTY3Ljc1TDU0MDEgNTEyMy4xNUM1NDAxIDUxMjMuMTUgNTQwMSA1MTIxLjkgNTM5OS41NyA1MTIxLjlMNTM5NS4yNyA1MTE4LjI3IDUzOTMuODQgNTExNy4wMkM1MzkzLjg0IDUxMTcuMDIgNTM5Mi40MSA1MTE3LjAyIDUzOTIuNDEgNTExNS43N1pNNDczMC45IDUwOTAuMDlDNDcyNS42NSA1MDkwLjA5IDQ3MjAuNCA1MDkxLjY1IDQ3MTYuMSA1MDk0LjY3IDQ3MDguOTQgNTEwMC45IDQ3MDguOTQgNTExMi4wMyA0NzE2LjEgNTExOS40MUw0NzQwLjIxIDUxNDEuNzYgNDcxNi4xIDUxNjIuNzVDNDcwOC45NCA1MTY4Ljk5IDQ3MDguOTQgNTE4MC4xMSA0NzE2LjEgNTE4Ny40OSA0NzE4Ljk3IDUxOTEuMjQgNDcyNC41OCA1MTkyLjQ4IDQ3MzAuMzEgNTE5Mi40OCA0NzM0LjYgNTE5Mi40OCA0NzQwLjIxIDUxOTEuMjQgNDc0NC41MSA1MTg3LjQ5TDQ3NjguNzMgNTE2Ni41IDQ3OTQuMjcgNTE4Ny40OUM0Nzk3LjE0IDUxOTEuMjQgNDgwMi43NSA1MTkyLjQ4IDQ4MDguNDcgNTE5Mi40OCA0ODEyLjc3IDUxOTIuNDggNDgxOC4zOCA1MTkxLjI0IDQ4MjIuNjggNTE4Ny40OSA0ODI5Ljg0IDUxODEuMzYgNDgyOS44NCA1MTcxLjM4IDQ4MjIuNjggNTE2Mi43NUw0Nzk3LjE0IDUxNDEuNzYgNDgyMi42OCA1MTE5LjQxQzQ4MjkuODQgNTExMy4yNyA0ODI5Ljg0IDUxMDMuNCA0ODIyLjY4IDUwOTQuNjcgNDgxOS4xIDUwOTEuNjUgNDgxNC4yIDUwOTAuMDkgNDgwOC45NSA1MDkwLjA5IDQ4MDMuODIgNTA5MC4wOSA0Nzk4LjU3IDUwOTEuNjUgNDc5NC4yNyA1MDk0LjY3TDQ3NjguNzMgNTExNy4wMiA0NzQ0LjUxIDUwOTQuNjdDNDc0MC45MyA1MDkxLjY1IDQ3MzYuMDMgNTA5MC4wOSA0NzMwLjkgNTA5MC4wOVpNNTM1Ni45NiA0ODk2LjY0IDU2MTQuMTQgNDg5Ni42NEM1NjUzLjg4IDQ4OTYuNjQgNTY4My43MiA0OTI1LjEzIDU2ODMuNzIgNDk1Ny4zNUw1NjgzLjcyIDU1NzYuMTYgNTY3OS40MiA1NTc2LjE2QzU2NzkuNDIgNTYxMC43OCA1NjQ4LjI3IDU2MzYuNzcgNTYxMS4yOCA1NjM2Ljc3TDQ2MjkuNDEgNTYzNi43NyA0NjE4LjQ0IDU2MDEuNDMgNDYxNi4zOSA1NTgxLjA1IDUyNjQuNTkgNTU4MS4wNUM1Mjc0LjUgNTU4MS4wNSA1Mjg0LjUyIDU1NzMuNjcgNTI4NC41MiA1NTYzLjc5IDUyODQuNTIgNTU1NS4wNiA1Mjc0LjUgNTU0Ni40MyA1MjY0LjU5IDU1NDYuNDNMNDYyMC44NyA1NTQ2LjQzIDQ2MjAuODcgNDk4OC4yMiA0ODQ1LjM1IDQ5ODguMjJDNDg0OS42NSA1MDE0LjIxIDQ4NzUuMzEgNTAzMi44MiA0OTA3Ljg5IDUwMzIuODJMNTI5MyA1MDMyLjgyQzUzMjIuODMgNTAzMi44MiA1MzQ5LjggNTAxMi45NiA1MzU1LjUzIDQ5ODguMjJMNTU3OC41OCA0OTg4LjIyIDU1NzguNTggNTU0Ni40MyA1MzYxLjE0IDU1NDYuNDNDNTM1MS4yNCA1NTQ2LjQzIDUzNDIuNzYgNTU1NS4wNiA1MzQyLjc2IDU1NjMuNzkgNTM0Mi43NiA1NTczLjY3IDUzNTEuMjQgNTU4MS4wNSA1MzYxLjE0IDU1ODEuMDVMNTU5OC41MSA1NTgxLjA1QzU2MDguNDEgNTU4MS4wNSA1NjE3LjAxIDU1NzMuNjcgNTYxNy4wMSA1NTYzLjc5TDU2MTcuMDEgNDk3MC45N0M1NjE3LjAxIDQ5NjIuMjQgNTYwOC40MSA0OTU0Ljg2IDU1OTguNTEgNDk1NC44Nkw1MzU2Ljk2IDQ5NTQuODZaTTQ2MTQgNDg5Ni42NCA0ODQ0LjA0IDQ4OTYuNjQgNDg0NC4wNCA0OTU0Ljg2IDQ2MTQgNDk1NC44NlpNNTA5Ni45MiA0ODc1LjY1QzUxMTUuNDIgNDg3NS42NSA1MTI5LjYyIDQ4ODguMDIgNTEyOS42MiA0OTAyLjg4IDUxMjkuNjIgNDkxOC45OSA1MTE1LjQyIDQ5MzEuMzYgNTA5Ni45MiA0OTMxLjM2IDUwNzkuODYgNDkzMS4zNiA1MDY1LjY2IDQ5MTguOTkgNTA2NS42NiA0OTAyLjg4IDUwNjUuNjYgNDg4OC4wMiA1MDc5Ljg2IDQ4NzUuNjUgNTA5Ni45MiA0ODc1LjY1Wk01MDk2LjkyIDQ4MzkuNzlDNTA1OC41IDQ4MzkuNzkgNTAyNC40OCA0ODY4LjE2IDUwMjQuNDggNDkwMi44OCA1MDI0LjQ4IDQ5MzcuNSA1MDU3LjE4IDQ5NjcuMjMgNTA5Ni45MiA0OTY3LjIzIDUxMzYuNjYgNDk2Ny4yMyA1MTY5LjM2IDQ5MzguNzUgNTE2OS4zNiA0OTAyLjg4IDUxNjcuOTMgNDg2OC4xNiA1MTM2LjY2IDQ4MzkuNzkgNTA5Ni45MiA0ODM5Ljc5Wk01MDU4LjQ5IDQ2OTQuOTggNTEyOS42MiA0Njk0Ljk4QzUxNzAuNzkgNDY5NC45OCA1MjAzLjQ5IDQ3MjMuMzYgNTIwMy40OSA0NzU5LjMzTDUyMDMuNDkgNDc5Ny42OEM1MjAzLjQ5IDQ4MjcuNDEgNTIzMS45IDQ4NTIuMTUgNTI2Ni4wMyA0ODUyLjE1TDUyODQuNTIgNDg1Mi4xNUM1Mjk1Ljg2IDQ4NTIuMTUgNTMwNy4yIDQ4NjIuMDMgNTMwNy4yIDQ4NzEuOUw1MzA3LjIgNDk3OS42QzUzMDcuMiA0OTg5LjQ3IDUyOTUuODYgNDk5OS40NSA1Mjg0LjUyIDQ5OTkuNDVMNDg5Ny45OCA0OTk5LjQ1QzQ4ODYuNjQgNDk5OS40NSA0ODc1LjMxIDQ5ODkuNDcgNDg3NS4zMSA0OTc5LjZMNDg4MC45MSA0ODcxLjlDNDg4MC45MSA0ODYyLjAzIDQ4OTAuODIgNDg1Mi4xNSA0OTAzLjcxIDQ4NTIuMTVMNDkyMi4wOSA0ODUyLjE1QzQ5NTQuNzkgNDg1Mi4xNSA0OTgzLjE5IDQ4MjcuNDEgNDk4My4xOSA0Nzk3LjY4TDQ5ODMuMTkgNDc1OS4zM0M0OTgzLjE5IDQ3MjMuMzYgNTAxNy4zMiA0Njk0Ljk4IDUwNTguNDkgNDY5NC45OFpNNDgzMi42NyAzNTg1IDUxMjIuNjMgMzU4NSA1MTIyLjYzIDM3MjEuOTcgNTQ1OS43MyAzNzIxLjk3IDU0NTkuNzMgNDYzMiA1Njk4LjkyIDQ2MzIgNTY5OC45MiAzNzIxLjk3IDU5MDkuODggMzcyMS45NyA1OTIxLjU2IDM3NTkuNTdDNTkyNC40NyAzNzczLjgxIDU5MjYgMzc4OC41NCA1OTI2IDM4MDMuNjRMNTkyNiA1NTU3LjM2QzU5MjYgNTY3OC4xMSA1ODI4LjEgNTc3NiA1NzA3LjMzIDU3NzZMNDgzMi42NyA1Nzc2QzQ3NTcuMTkgNTc3NiA0NjkwLjY0IDU3MzcuNzYgNDY1MS4zNSA1Njc5LjYxTDQ2NDguMjMgNTY3My44OCA1NjExLjI4IDU2NzMuODhDNTY3MC45NSA1NjczLjg4IDU3MjAuNzEgNTYzMC42MyA1NzIwLjcxIDU1NzcuNDFMNTcyMC43MSA0OTU4LjZDNTcxOS4yOCA0OTA1LjM4IDU2NjkuNTIgNDg2My4yOCA1NjA4LjQxIDQ4NjMuMjhMNTM1MS4yNCA0ODYzLjI4QzUzNDUuNTEgNDgzNy4yOSA1MzIxLjQgNDgxOC42OCA1Mjg4LjcgNDgxOC42OEw1MjcxLjY0IDQ4MTguNjhDNTI1OC44NyA0ODE4LjY4IDUyNDguOTYgNDgwOC44MSA1MjQ4Ljk2IDQ3OTcuNjhMNTI0OC45NiA0NzU5LjMzQzUyNDguOTYgNDcwMy42MSA1MTk2LjMzIDQ2NTkuMDIgNTEzMi40OCA0NjU5LjAyTDUwNjEuMzYgNDY1OS4wMkM0OTk3LjM5IDQ2NTkuMDIgNDk0Ni4zMSA0NzAzLjYxIDQ5NDYuMzEgNDc1OS4zM0w0OTQ2LjMxIDQ3OTcuNjhDNDk0Ni4zMSA0ODA4LjgxIDQ5MzYuMjkgNDgxOC42OCA0OTIzLjUyIDQ4MTguNjhMNDkwNS4xNCA0ODE4LjY4QzQ4NzUuMzEgNDgxOC42OCA0ODQ4LjIxIDQ4MzguNTQgNDg0NC4wNCA0ODYzLjI4TDQ2MTQgNDg2My4yOCA0NjE0IDM4MDMuNjRDNDYxNCAzNjgyLjg5IDQ3MTEuOSAzNTg1IDQ4MzIuNjcgMzU4NVpcIlxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiNFRUY5RkZcIlxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICAgIGQ9XCJNNzMxLjA5NCA1NjY2LjIzIDg3OS44MDUgNTc3NiA2NTcuNjcxIDU3NzZDNjQyLjU3NSA1Nzc2IDYyNy44MzYgNTc3NC40NyA2MTMuNjAxIDU3NzEuNTZMNTk1LjA5IDU3NjUuODFaTTQ2MS44OTQgNTY1Mi45OCA1NDEuNTM5IDU2NTIuOTggNTI2LjQyNSA1NzI2LjYzIDUyNi43MjEgNTczMS40OSA1MDMuMDQ3IDU3MTEuOTZDNDkzLjE1NSA1NzAyLjA3IDQ4NC4yMDUgNTY5MS4yNCA0NzYuMzQ1IDU2NzkuNjFaTTQzOSA1NTIxLjc5IDU2OC45OTcgNTUyMS43OSA1NDkuNzMxIDU2MTEuNjUgNDQ2LjYxNSA1NjExLjY1IDQ0My40NDMgNTYwMS40M0M0NDAuNTI5IDU1ODcuMTkgNDM5IDU1NzIuNDYgNDM5IDU1NTcuMzZaTTEwNDQuMjEgNTMwMy43MUMxMDM0LjY0IDUzMDMuNzEgMTAyNi40NCA1MzEyLjUgMTAyNi40NCA1MzI0LjM4IDEwMjYuNDQgNTMzNC42NiAxMDM0LjY0IDUzNDQuOTMgMTA0NC4yMSA1MzQ0LjkzTDExNjcuODkgNTM0NC45M0MxMTc4Ljg1IDUzNDQuOTMgMTE4Ny4xNiA1MzM0LjY2IDExODcuMTYgNTMyNC4zOCAxMTg3LjE2IDUzMTIuNSAxMTc4Ljg1IDUzMDMuNzEgMTE2Ny44OSA1MzAzLjcxWk03NTguNTUzIDUxOTQuNjhDNzQ3LjU5MiA1MTk0LjY4IDczOS4yODUgNTIwMy40NiA3MzkuMjg1IDUyMTUuMjIgNzM5LjI4NSA1MjI3LjEgNzQ3LjU5MiA1MjM1Ljg5IDc1OC41NTMgNTIzNS44OUwxMTY3Ljg5IDUyMzUuODlDMTE3OC44NSA1MjM1Ljg5IDExODcuMTYgNTIyNy4xIDExODcuMTYgNTIxNS4yMiAxMTg3LjE2IDUyMDMuNDYgMTE3OC44NSA1MTk0LjY4IDExNjcuODkgNTE5NC42OFpNOTYxLjgzNCA0OTczLjYyQzk1Mi4yNTggNDk3My42MiA5NDMuOTUyIDQ5ODIuNDEgOTQzLjk1MiA0OTk0LjI5IDk0My45NTIgNTAwNi4wNSA5NTIuMjU4IDUwMTQuODQgOTYxLjgzNCA1MDE0Ljg0TDExNjcuODkgNTAxNC44NEMxMTc4Ljg1IDUwMTQuODQgMTE4Ny4xNSA1MDA2LjA1IDExODcuMTUgNDk5NC4yOSAxMTg3LjE1IDQ5ODIuNDEgMTE3OC44NSA0OTczLjYyIDExNjcuODkgNDk3My42MlpNNTUyLjQ5OCA0ODYzLjFDNTQxLjUzOCA0ODYzLjEgNTMzLjIzMSA0ODcxLjg5IDUzMy4yMzEgNDg4My43NyA1MzMuMjMxIDQ4OTUuNTMgNTQxLjUzOCA0OTA0LjMyIDU1Mi40OTggNDkwNC4zMkwxMTY3Ljg5IDQ5MDQuMzJDMTE3OC44NCA0OTA0LjMyIDExODcuMTUgNDg5NS41MyAxMTg3LjE1IDQ4ODMuNzcgMTE4Ny4xNSA0ODcxLjg5IDExNzguODQgNDg2My4xIDExNjcuODkgNDg2My4xWk0xMzUzLjI5IDQ4NjAuMTMgMTM3NS4zMyA0ODYwLjEzQzE0MDkuNzEgNDg2MC4xMyAxNDM5LjgyIDQ4ODkuNTkgMTQzOS44MiA0OTI3Ljk2TDE0MzkuODIgNTU0NS4zMUMxNDM4LjU1IDU1ODIuMTkgMTQwOC4zMiA1NjEzLjEzIDEzNzMuOTQgNTYxMy4xM0wxMDQ2Ljk4IDU2MTMuMTNDMTA0MS41NiA1NjEzLjEzIDEwMzQuNjQgNTYxNy41OSAxMDMwLjQ4IDU2MjAuNTYgMTAyNy44MyA1NjI2LjM3IDEwMjYuNDQgNTYzMi4zMiAxMDI3LjgzIDU2MzYuNzdMMTA1Ny4zNiA1Nzc2IDk0Ni42OTUgNTc3NiA3NjUuNDc1IDU2NDIuNTkgOTMwLjIyNCA1NTIxLjc5IDEyNTEuNjUgNTUyMS43OUMxMzA5LjMzIDU1MjEuNzkgMTM1My4yOSA1NDczLjE1IDEzNTMuMjkgNTQxMi43NVpNNDM5IDQ3MjcuNDUgMTI1MS42NSA0NzI3LjQ1QzEyODYuMDMgNDcyNy40NSAxMzE2LjI2IDQ3NTcuMDQgMTMxNi4yNiA0Nzk1LjI4TDEzMTYuMjYgNTQxMi43NUMxMzE2LjI2IDU0NDkuNjQgMTI4OC44IDU0ODAuNTggMTI1MS42NSA1NDgwLjU4TDkyNC44MDIgNTQ4MC41OEM5MjAuNjQ5IDU0ODAuNTggOTE3Ljg4IDU0ODEuOTQgOTEzLjcyNiA1NDgzLjQyTDU2Ni4yMjkgNTczOC4zOEM1NjMuNDYgNTczOC4zOCA1NjMuNDYgNTczNi45IDU2My40NiA1NzM2LjlMNjE0LjMzOSA1NTA0LjA5QzYxNS43MjMgNTQ5OC4xNSA2MTQuMzM5IDU0OTAuODUgNjEwLjE4NSA1NDg3Ljg4IDYwNi4wMzEgNTQ4MS45NCA2MDEuOTk0IDU0ODAuNTggNTk1LjA3MSA1NDgwLjU4TDQzOSA1NDgwLjU4IDQzOSA1MzQ0LjkzIDk2NC42MDYgNTM0NC45M0M5NzQuMTgyIDUzNDQuOTMgOTgyLjQ4OSA1MzM0LjY2IDk4Mi40ODkgNTMyNC4zOCA5ODIuNDg5IDUzMTIuNSA5NzQuMTgyIDUzMDMuNzEgOTY0LjYwNiA1MzAzLjcxTDQzOSA1MzAzLjcxIDQzOSA1MjM1Ljg5IDYzNC44NzQgNTIzNS44OUM2NDQuNTY1IDUyMzUuODkgNjUyLjc1NiA1MjI3LjEgNjUyLjc1NiA1MjE1LjIyIDY1NS41MjUgNTIwMy40NiA2NDUuOTQ5IDUxOTQuNjggNjM0Ljg3NCA1MTk0LjY4TDQzOSA1MTk0LjY4IDQzOSA1MTI1LjM3IDExNjcuODkgNTEyNS4zN0MxMTc4Ljg1IDUxMjUuMzcgMTE4Ny4xNiA1MTE2LjU4IDExODcuMTYgNTEwNC43IDExODcuMTYgNTA5Mi45NCAxMTc4Ljg1IDUwODQuMTUgMTE2Ny44OSA1MDg0LjE1TDQzOSA1MDg0LjE1IDQzOSA1MDE0Ljg0IDg4Mi4yMyA1MDE0Ljg0Qzg5MS44MDUgNTAxNC44NCA4OTkuOTk3IDUwMDYuMDUgODk5Ljk5NyA0OTk0LjI5IDg5OS45OTcgNDk4Mi40MSA4OTEuODA1IDQ5NzMuNjIgODgyLjIzIDQ5NzMuNjJMNDM5IDQ5NzMuNjIgNDM5IDQ5MDQuMzIgNDcxLjUwOSA0OTA0LjMyQzQ4MS4wODUgNDkwNC4zMiA0OTAuNjYgNDg5NS41MyA0OTAuNjYgNDg4My43NyA0OTAuNjYgNDg3MS44OSA0ODEuMDg1IDQ4NjMuMSA0NzEuNTA5IDQ4NjMuMUw0MzkgNDg2My4xWk0xNTc3LjE2IDM2ODYuNjZDMTY2Ni40NSAzNjg2LjY2IDE3MTQuMzYgMzcxNS41IDE3NDAuODcgMzc1My45OEwxNzQ3LjEyIDM3NjUuMTQgMTc1MSAzODAzLjY0IDE3NTEgMzk4My43NSAxNzA1LjEgMzk2OS42M0MxNjg2Ljk0IDM5NjQuNDkgMTY2Ny44NiAzOTU5LjUxIDE2NDcuNzkgMzk1NC42OSAxNDY4IDM5MTQuNTcgMTQyMS40NSAzODgyLjQ3IDE0MjEuNDUgMzgwNS40MyAxNDIxLjQ1IDM3MjYuNzkgMTQ3OS4yNCAzNjg2LjY2IDE1NzcuMTYgMzY4Ni42NlpNNjU3LjY3MSAzNTg1IDEzMDEuNzIgMzU4NSAxMjgyLjM5IDM1OTkuMTlDMTIxMy41NyAzNjU1Ljc3IDExNzcuNDUgMzczNi40MiAxMTc3LjQ1IDM4MzIuNzIgMTE3Ny40NSAzOTgxLjk4IDEyNTEuMjkgNDA5Mi43MiAxNTUzLjA4IDQxNjMuMzQgMTY0Ny43OSA0MTg1LjAxIDE3MDguMzkgNDIwNS40OCAxNzQ1LjMxIDQyMzEuOTZMMTc1MSA0MjM3LjA5IDE3NTEgNDQzMy4yNiAxNzI2LjgxIDQ0NDcuODFDMTY5OC40MSA0NDYxLjA3IDE2NjAuNjMgNDQ2OC4yOSAxNjEyLjQ3IDQ0NjguMjkgMTQ4NC4wNSA0NDY4LjI5IDE0MDUuNCA0NDE4LjU0IDEzNzkuNzEgNDMwNy43OUwxMTM4LjkyIDQzMDcuNzlDMTE2NC42MSA0NTEwLjAyIDEzMTMuOSA0NjQ4LjA1IDE1OTQuODIgNDY0OC4wNSAxNjQ5LjYgNDY0OC4wNSAxNjk5LjQ3IDQ2NDMuMTQgMTc0NC4zNCA0NjMzLjg0TDE3NTEgNDYzMi4xOSAxNzUxIDU1NTcuMzZDMTc1MSA1Njc4LjExIDE2NTMuMSA1Nzc2IDE1MzIuMzMgNTc3NkwxMDk2LjYyIDU3NzYgMTA3MC40IDU2NTIuOTggMTM3My45NCA1NjUyLjk4QzE0MzAuMjQgNTY1Mi45OCAxNDc1LjU4IDU2MDUuODMgMTQ3NS41OCA1NTQ1LjMxTDE0NzUuNTggNDkyNy45NkMxNDc1LjU4IDQ4NjguOTIgMTQyOC44NiA0ODE4LjkyIDEzNzMuOTQgNDgxOC45MkwxMzUxLjkxIDQ4MTguOTIgMTM1MS45MSA0Nzk1LjI4QzEzNTEuOTEgNDczNC44OCAxMzA3Ljk1IDQ2ODYuMjQgMTI1MC4yNiA0Njg2LjI0TDQzOSA0Njg2LjI0IDQzOSAzODAzLjY0QzQzOSAzNjgyLjg5IDUzNi45MDIgMzU4NSA2NTcuNjcxIDM1ODVaXCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjQkY2M0I3XCJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTI2MTIuNjggNTQ4My4zMUMyNjAzLjAyIDU0ODMuMzEgMjU5NC41OCA1NDkwLjUgMjU5NC41OCA1NTAxLjE5IDI1OTQuNTggNTUxMC42OCAyNjAxLjggNTUxNy44OCAyNjEyLjY4IDU1MTcuODhMMjcyNC4xMiA1NTE3Ljg4QzI3MzMuNzggNTUxNy44OCAyNzQyLjIyIDU1MTAuNjggMjc0Mi4yMiA1NTAxLjE5IDI3NDIuMjIgNTQ5MC41IDI3MzMuNzggNTQ4My4zMSAyNzI0LjEyIDU0ODMuMzFaTTIzNTAuMDMgNTQ4My4zMUMyMzQxLjQ5IDU0ODMuMzEgMjMzMS44MyA1NDkwLjUgMjMzMS44MyA1NTAxLjE5IDIzMzEuODMgNTUxMC42OCAyMzQwLjI2IDU1MTcuODggMjM1MC4wMyA1NTE3Ljg4TDI0NjIuNTkgNTUxNy44OEMyNDcxLjAzIDU1MTcuODggMjQ4MC42OSA1NTEwLjY4IDI0ODAuNjkgNTUwMS4xOSAyNDgwLjY5IDU0OTAuNSAyNDczLjQ3IDU0ODMuMzEgMjQ2Mi41OSA1NDgzLjMxWk0yMDg5LjcyIDU0ODMuMzFDMjA4MS4xNyA1NDgzLjMxIDIwNzEuNTEgNTQ5MC41IDIwNzEuNTEgNTUwMS4xOSAyMDcxLjUxIDU1MTAuNjggMjA3OS45NSA1NTE3Ljg4IDIwODkuNzIgNTUxNy44OEwyMjAyLjI4IDU1MTcuODhDMjIxMC43MiA1NTE3Ljg4IDIyMjAuNDggNTUxMC42OCAyMjIwLjQ4IDU1MDEuMTkgMjIyMC40OCA1NDkwLjUgMjIxMS45NCA1NDgzLjMxIDIyMDIuMjggNTQ4My4zMVpNMjYxMi42OCA1MzM1Ljg0QzI2MDMuMDIgNTMzNS44NCAyNTk0LjU4IDUzNDIuOTQgMjU5NC41OCA1MzUzLjYzIDI1OTQuNTggNTM2NC40MiAyNjAxLjggNTM3MS41MSAyNjEyLjY4IDUzNzEuNTFMMjcyNC4xMiA1MzcxLjUxQzI3MzMuNzggNTM3MS41MSAyNzQyLjIyIDUzNjQuNDIgMjc0Mi4yMiA1MzUzLjYzIDI3NDIuMjIgNTM0Mi45NCAyNzMzLjc4IDUzMzUuODQgMjcyNC4xMiA1MzM1Ljg0Wk0yMDg5LjcyIDUzMzUuODRDMjA4MS4xNyA1MzM1Ljg0IDIwNzEuNTEgNTM0Mi45NCAyMDcxLjUxIDUzNTMuNjMgMjA3MS41MSA1MzY0LjQyIDIwNzkuOTUgNTM3MS41MSAyMDg5LjcyIDUzNzEuNTFMMjIwMi4yOCA1MzcxLjUxQzIyMTAuNzIgNTM3MS41MSAyMjIwLjQ4IDUzNjQuNDIgMjIyMC40OCA1MzUzLjYzIDIyMjAuNDggNTM0Mi45NCAyMjExLjk0IDUzMzUuODQgMjIwMi4yOCA1MzM1Ljg0Wk0yNDYyLjA4IDUyOTguNjhDMjQ1Ny43MSA1Mjk4LjY4IDI0NTMuNDQgNTMwMC43OCAyNDUwLjQ5IDUzMDQuODdMMjM4OC43NyA1MzY1LjYyIDIzNjMuMjUgNTM0MC42NEMyMzU5LjA4IDUzMzYuNDQgMjM1NC41IDUzMzQuMzUgMjM1MC4yMyA1MzM0LjM1IDIzNDYuMDYgNTMzNC4zNSAyMzQyLjEgNTMzNi40NCAyMzM5LjA1IDUzNDAuNjQgMjMzMC42MSA1MzQ3LjczIDIzMzAuNjEgNTM1OC40MiAyMzM5LjA1IDUzNjQuNDJMMjM3Ni41NyA1NDAxLjI4QzIzNzkuMDEgNTQwMy42OCAyMzgzLjg5IDU0MDUuOTggMjM4OC43NyA1NDA1Ljk4IDIzOTMuNTUgNTQwNS45OCAyMzk3LjIxIDU0MDMuNjggMjQwMC44NyA1NDAxLjI4TDI0NzQuNjkgNTMyOC42NUMyNDgxLjkxIDUzMjIuNzYgMjQ4MS45MSA1MzEwLjg3IDI0NzQuNjkgNTMwNC44NyAyNDcxLjAzIDUzMDAuNzggMjQ2Ni40NiA1Mjk4LjY4IDI0NjIuMDggNTI5OC42OFpNMjM1MC4wMyA1MTg5LjQ4QzIzNDEuNDkgNTE4OS40OCAyMzMxLjgzIDUxOTcuODcgMjMzMS44MyA1MjA3LjM2IDIzMzEuODMgNTIxOC4wNSAyMzQwLjI2IDUyMjUuMjUgMjM1MC4wMyA1MjI1LjI1TDI0NjIuNTkgNTIyNS4yNUMyNDcxLjAzIDUyMjUuMjUgMjQ4MC42OSA1MjE4LjA1IDI0ODAuNjkgNTIwNy4zNiAyNDgwLjY5IDUxOTcuODcgMjQ3My40NyA1MTg5LjQ4IDI0NjIuNTkgNTE4OS40OFpNMjcyMy42MSA1MTUyLjAxQzI3MTkuMjQgNTE1Mi4wMSAyNzE0Ljk3IDUxNTMuODEgMjcxMS45MiA1MTU3LjQxTDI2NTAuMiA1MjE4LjA1IDI2MjQuNzggNTE5My4wN0MyNjIxLjIyIDUxODkuNDggMjYxNi42NCA1MTg3Ljc4IDI2MTIuMjcgNTE4Ny43OCAyNjA3LjkgNTE4Ny43OCAyNjAzLjYzIDUxODkuNDggMjYwMC41OCA1MTkzLjA3IDI1OTMuMzYgNTIwMC4yNyAyNTkzLjM2IDUyMTAuOTYgMjYwMC41OCA1MjE2Ljg1TDI2MzguMSA1MjUzLjcyQzI2NDEuNzYgNTI1Ny4zMiAyNjQ1LjQyIDUyNTguNTEgMjY1MC4yIDUyNTguNTEgMjY1NS4wOCA1MjU4LjUxIDI2NTkuOTYgNTI1Ny4zMiAyNjYyLjMgNTI1My43MkwyNzM2LjIyIDUxODEuMThDMjc0NC42NiA1MTc1LjI5IDI3NDQuNjYgNTE2NC41IDI3MzYuMjIgNTE1Ny40MSAyNzMyLjU2IDUxNTMuODEgMjcyNy45OSA1MTUyLjAxIDI3MjMuNjEgNTE1Mi4wMVpNMjIwMS43NyA1MTUyLjAxQzIxOTcuNCA1MTUyLjAxIDIxOTMuMjMgNTE1My44MSAyMTkwLjE4IDUxNTcuNDFMMjEyOC40NiA1MjE4LjA1IDIxMDMuMDQgNTE5My4wN0MyMDk4Ljc2IDUxODkuNDggMjA5NC4xOSA1MTg3Ljc4IDIwOTAuMDIgNTE4Ny43OCAyMDg1Ljc1IDUxODcuNzggMjA4MS43OCA1MTg5LjQ4IDIwNzguODMgNTE5My4wNyAyMDcwLjI5IDUyMDAuMjcgMjA3MC4yOSA1MjEwLjk2IDIwNzguODMgNTIxNi44NUwyMTE2LjM2IDUyNTMuNzJDMjExOC43IDUyNTcuMzIgMjEyMy41OCA1MjU4LjUxIDIxMjguNDYgNTI1OC41MSAyMTMzLjI0IDUyNTguNTEgMjEzNi45IDUyNTcuMzIgMjE0MC41NiA1MjUzLjcyTDIyMTQuMzggNTE4MS4xOEMyMjIwLjQ4IDUxNzUuMjkgMjIyMC40OCA1MTY0LjUgMjIxNC4zOCA1MTU3LjQxIDIyMTAuNzIgNTE1My44MSAyMjA2LjI1IDUxNTIuMDEgMjIwMS43NyA1MTUyLjAxWk0yNjEyLjY4IDUwNDMuMjFDMjYwMy4wMiA1MDQzLjIxIDI1OTQuNTggNTA1MC4zIDI1OTQuNTggNTA2MS4wOSAyNTk0LjU4IDUwNzAuNTggMjYwMS44IDUwNzguODggMjYxMi42OCA1MDc4Ljg4TDI3MjQuMTIgNTA3OC44OEMyNzMzLjc4IDUwNzguODggMjc0Mi4yMiA1MDcwLjU4IDI3NDIuMjIgNTA2MS4wOSAyNzQyLjIyIDUwNTAuMyAyNzMzLjc4IDUwNDMuMjEgMjcyNC4xMiA1MDQzLjIxWk0yMDg5LjcyIDUwNDMuMjFDMjA4MS4xNyA1MDQzLjIxIDIwNzEuNTEgNTA1MC4zIDIwNzEuNTEgNTA2MS4wOSAyMDcxLjUxIDUwNzAuNTggMjA3OS45NSA1MDc4Ljg4IDIwODkuNzIgNTA3OC44OEwyMjAyLjI4IDUwNzguODhDMjIxMC43MiA1MDc4Ljg4IDIyMjAuNDggNTA3MC41OCAyMjIwLjQ4IDUwNjEuMDkgMjIyMC40OCA1MDUwLjMgMjIxMS45NCA1MDQzLjIxIDIyMDIuMjggNTA0My4yMVpNMjQ2Mi4wOCA1MDA1Ljc1QzI0NTcuNzEgNTAwNS43NSAyNDUzLjQ0IDUwMDcuNTQgMjQ1MC40OSA1MDExLjA0TDIzODguNzcgNTA3Mi45OCAyMzYzLjI1IDUwNDYuODFDMjM1OS4wOCA1MDQzLjIxIDIzNTQuNSA1MDQxLjQxIDIzNTAuMjMgNTA0MS40MSAyMzQ2LjA2IDUwNDEuNDEgMjM0Mi4xIDUwNDMuMjEgMjMzOS4wNSA1MDQ2LjgxIDIzMzAuNjEgNTA1NS4xIDIzMzAuNjEgNTA2NC41OSAyMzM5LjA1IDUwNzAuNTlMMjM3Ni41NyA1MTA4LjY1QzIzNzkuMDEgNTExMS4wNSAyMzgzLjg5IDUxMTIuMjUgMjM4OC43NyA1MTEyLjI1IDIzOTMuNTUgNTExMi4yNSAyMzk3LjIxIDUxMTEuMDUgMjQwMC44NyA1MTA4LjY1TDI0NzQuNjkgNTAzNC45MkMyNDgxLjkxIDUwMjcuNzMgMjQ4MS45MSA1MDE3LjAzIDI0NzQuNjkgNTAxMS4wNCAyNDcxLjAzIDUwMDcuNTQgMjQ2Ni40NiA1MDA1Ljc1IDI0NjIuMDggNTAwNS43NVpNMTkwMy4yMyA0ODIzLjExIDI2NTEuNDIgNDgyMy4xMSAyNjUxLjQyIDQ4MjQuMzFDMjY1MS40MiA0ODQzLjM5IDI2NjguNCA0ODU5Ljk3IDI2ODcuNzIgNDg1OS45N0wyNzI2LjQ3IDQ4NTkuOTdDMjc0NS44OSA0ODU5Ljk3IDI3NjIuODcgNDg0My4zOSAyNzYyLjg3IDQ4MjQuMzFMMjc2Mi44NyA0ODIzLjExIDI4MDAuMzkgNDgyMy4xMUMyODIwLjkzIDQ4MjMuMTEgMjgzNy45MSA0ODM4LjU5IDI4MzcuOTEgNDg1OS45N0wyODM3LjkxIDU1OTIuODFDMjgzNy45MSA1NjExLjc5IDI4MTkuNzEgNTYyOS42OCAyNzk5LjE3IDU2MjkuNjhMMTg0My4yMSA1NjI5LjY4IDE4MzQuNDQgNTYwMS40M0MxODMxLjUzIDU1ODcuMTkgMTgzMCA1NTcyLjQ2IDE4MzAgNTU1Ny4zNkwxODMwIDU1MjQuMzYgMTg1NC44MyA1NTQ4Ljc1QzE4NTcuMjcgNTU1MS4xNSAxODYyLjA1IDU1NTIuMzUgMTg2Ni45MyA1NTUyLjM1IDE4NzAuNTkgNTU1Mi4zNSAxODc1LjM3IDU1NTEuMTUgMTg3OS4wMyA1NTQ4Ljc1TDE5NTIuODUgNTQ3NS4wMkMxOTYwLjE3IDU0NjcuODMgMTk2MC4xNyA1NDU3LjEzIDE5NTIuODUgNTQ1MS4yNCAxOTQ4LjY4IDU0NDcuNjQgMTk0NC4xMSA1NDQ1Ljg0IDE5MzkuODQgNTQ0NS44NCAxOTM1LjY3IDU0NDUuODQgMTkzMS43IDU0NDcuNjQgMTkyOC42NSA1NDUxLjI0TDE4NjYuOTMgNTUxMy4wOCAxODQwLjI5IDU0ODYuOTEgMTgzMCA1NDgyLjUxIDE4MzAgNTM3MS41MSAxOTQwLjc1IDUzNzEuNTFDMTk0OS4yOSA1MzcxLjUxIDE5NTguOTUgNTM2NC40MiAxOTU4Ljk1IDUzNTMuNjMgMTk1OC45NSA1MzQyLjk0IDE5NDkuMjkgNTMzNS44NCAxOTQwLjc1IDUzMzUuODRMMTgzMCA1MzM1Ljg0IDE4MzAgNTIyNS4yNSAxOTQwLjc1IDUyMjUuMjVDMTk0OS4yOSA1MjI1LjI1IDE5NTguOTUgNTIxOC4wNSAxOTU4Ljk1IDUyMDcuMzYgMTk1OC45NSA1MTk3Ljg3IDE5NDkuMjkgNTE4OS40OCAxOTQwLjc1IDUxODkuNDhMMTgzMCA1MTg5LjQ4IDE4MzAgNTA3OC44OCAxOTQwLjc1IDUwNzguODhDMTk0OS4yOSA1MDc4Ljg4IDE5NTguOTUgNTA3MC41OCAxOTU4Ljk1IDUwNjEuMDkgMTk1OC45NSA1MDUwLjMgMTk0OS4yOSA1MDQzLjIxIDE5NDAuNzUgNTA0My4yMUwxODMwIDUwNDMuMjEgMTgzMCA0OTMxLjQxIDI3ODAuOTcgNDkzMS40MUMyNzg5LjQgNDkzMS40MSAyNzk5LjE3IDQ5MjMuMDIgMjc5OS4xNyA0OTEzLjUyIDI3OTkuMTcgNDkwMi44MyAyNzg5LjQgNDg5NS43NCAyNzgwLjk3IDQ4OTUuNzRMMTgzMCA0ODk1Ljc0IDE4MzAgNDg1OS45NyAxODY2LjkzIDQ4NTkuOTdDMTg4Ni4yNSA0ODU5Ljk3IDE5MDMuMjMgNDg0My4zOSAxOTAzLjIzIDQ4MjQuMzFaTTI3MjIuOTEgNDc0Ni45OEMyNzIyLjkxIDQ3NDYuOTggMjcyNC4xMyA0NzQ2Ljk4IDI3MjQuMTMgNDc0OC4xN0wyNzI0LjEzIDQ4MjAuNzFDMjcyNC4xMyA0ODIwLjcxIDI3MjQuMTMgNDgyMy4xMSAyNzIyLjkxIDQ4MjMuMTFMMjY4NS4zOSA0ODIzLjExQzI2ODUuMzkgNDgyMy4xMSAyNjg0LjE2IDQ4MjMuMTEgMjY4NC4xNiA0ODIwLjcxTDI2ODQuMTYgNDc0OC4xNyAyNjg1LjM5IDQ3NDguMTdaTTE4NjQuNDkgNDc0Ni45OEMxODY0LjQ5IDQ3NDYuOTggMTg2NS43MSA0NzQ2Ljk4IDE4NjUuNzEgNDc0OC4xN0wxODY1LjcxIDQ4MjAuNzFDMTg2NS43MSA0ODIwLjcxIDE4NjUuNzEgNDgyMy4xMSAxODY0LjQ5IDQ4MjMuMTFMMTgzMCA0ODIzLjExIDE4MzAgNDc0OC4wOFpNMzExMS4wOCAzNjkzLjIyIDMxMjQuODIgMzcxOC41M0MzMTM1Ljg4IDM3NDQuNjkgMzE0MiAzNzczLjQ1IDMxNDIgMzgwMy42NEwzMTQyIDM4MTIuODcgMzExMy45NiAzNzA0LjIyWk0yNDgzLjgyIDM1ODUgMjgyOS40NCAzNTg1IDI4MjEuNjcgMzYxNi40OUMyNzU3LjQ5IDM4NzEuNDkgMjY3MC41OSA0MTg4LjcgMjYzNC4wNyA0MzY3LjA2TDI2MzIuNDYgNDM2Ny4wNkMyNjIwLjQyIDQyNTIuNyAyNTc4Ljc1IDQwNDYuNjYgMjQ4Ny42MiAzNjAzLjQ1Wk0yMDQ4LjY3IDM1ODUgMjIzMi4yNCAzNTg1IDI0OTYuMDEgNDYxNy40NCAyNzQzLjIyIDQ2MTcuNDRDMjgwMi42MiA0Mzk0LjM0IDI5MDIuMTQgNDAyMS45OSAyOTQyLjI3IDM4MjQuNTdMMjk0My44OCAzODI0LjU3QzI5ODIuNDEgNDAxMy45NiAzMDgwLjMzIDQzNzEuODcgMzEzOC4xMiA0NjE3LjQ0TDMxNDIgNDYxNy40NCAzMTQyIDU1NTcuMzZDMzE0MiA1Njc4LjExIDMwNDQuMSA1Nzc2IDI5MjMuMzMgNTc3NkwyMDQ4LjY3IDU3NzZDMTk3My4xOSA1Nzc2IDE5MDYuNjQgNTczNy43NiAxODY3LjM1IDU2NzkuNjFMMTg1OC45NSA1NjY0LjE1IDI3OTcuOTUgNTY2NC4xNUMyODM5LjEzIDU2NjQuMTUgMjg3Mi45OSA1NjMyLjA3IDI4NzIuOTkgNTU5MS42MUwyODcyLjk5IDQ4NTguNzdDMjg3Mi45OSA0ODE4LjQxIDI4MzkuMTMgNDc4NS4wNCAyNzk5LjE3IDQ3ODUuMDRMMjc2MC40MyA0Nzg1LjA0IDI3NjAuNDMgNDc0OC4xN0MyNzYwLjQzIDQ3MjkuMTkgMjc0NC42NyA0NzEyLjUxIDI3MjQuMTMgNDcxMi41MUwyNjg2LjUgNDcxMi41MUMyNjY3LjE4IDQ3MTIuNTEgMjY1MC4yIDQ3MjkuMTkgMjY1MC4yIDQ3NDguMTdMMjY1MC4yIDQ3ODUuMDQgMTkwMC43OSA0Nzg1LjA0IDE5MDAuNzkgNDc0OC4xN0MxOTAwLjc5IDQ3MjkuMTkgMTg4My45MSA0NzEyLjUxIDE4NjQuNDkgNDcxMi41MUwxODMwIDQ3MTIuNTEgMTgzMCAzODAzLjY0QzE4MzAgMzY4Mi44OSAxOTI3LjkgMzU4NSAyMDQ4LjY3IDM1ODVaXCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjQzdBMENFXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTE1NzcuMTUgMzY4Ni42M0MxNjY2LjQ0IDM2ODYuNjMgMTcxNC4zNSAzNzE1LjU0IDE3NDAuODYgMzc1NC4xMkwxNzUxIDM3NzIuMjcgMTc1MSAzNzgzLjg5QzE3NTEgMzg0OS4xMiAxNjk4LjI1IDM5MDIgMTYzMy4xNyAzOTAyTDE0ODEuMTUgMzkwMiAxNDY3LjE5IDM4OTQuNDFDMTQzMy4wOCAzODcxLjY4IDE0MjEuNDQgMzg0NC4zMyAxNDIxLjQ0IDM4MDUuNzEgMTQyMS40NCAzNzI2Ljg2IDE0NzkuMjMgMzY4Ni42MyAxNTc3LjE1IDM2ODYuNjNaTTU1Ni44MjcgMzU3OSAxMzEyLjc0IDM1NzkgMTI4Mi4zOSAzNTk4LjkzQzEyMTMuNTYgMzY1NS42NSAxMTc3LjQ0IDM3MzYuNTEgMTE3Ny40NCAzODMzLjA2IDExNzcuNDQgMzg1MS43NyAxMTc4LjYgMzg2OS44NyAxMTgxLjIgMzg4Ny4zN0wxMTg0LjgxIDM5MDIgNTU2LjgyNyAzOTAyQzQ5MS43NTMgMzkwMiA0MzkgMzg0OS4xMiA0MzkgMzc4My44OUw0MzkgMzY5Ny4xMUM0MzkgMzYzMS44OCA0OTEuNzUzIDM1NzkgNTU2LjgyNyAzNTc5WlwiXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0JGNjNCN1wiXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezEyOH1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNzExLjc0OCAzNzc2KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiU1RSRU5HVEhTXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTI5NDIuMjcgMzg0Mi41MSAyOTQzLjg4IDM4NDIuNTFDMjk0Ni4yOSAzODU0LjM2IDI5NDguOTMgMzg2Ni44NyAyOTUxLjc4IDM4NzkuOTZMMjk1Ni4yNCAzOTAwIDI5MjkuOTkgMzkwMCAyOTM0LjA4IDM4ODEuNTNDMjkzNy4wMyAzODY3Ljg5IDI5MzkuNzcgMzg1NC44NiAyOTQyLjI3IDM4NDIuNTFaTTMwNzguMiAzNTg2LjgzIDMwNzkuMDggMzU4Ny4xQzMxMTYuMDYgMzYwMi43NSAzMTQyIDM2MzkuMzggMzE0MiAzNjgyLjA4TDMxNDIgMzc5Ni45MiAzMTM4LjE2IDM4MTUuOTMgMzExMy45NiAzNzIyLjA3QzMxMDQuNDIgMzY4NS40NiAzMDk1LjIxIDM2NTAuNTIgMzA4Ni41OCAzNjE4LjFaTTI0NzguOTQgMzU3OSAyODM1LjQ0IDM1NzkgMjgzNS4wNCAzNTgwLjYxQzI4MTMuNDIgMzY2OC4yMSAyNzg4LjIzIDM3NjUuNTggMjc2Mi44IDM4NjMuNTdMMjc1My4zNSAzOTAwIDI1NDQuNjMgMzkwMCAyNTM2LjUyIDM4NjAuMDNDMjUyMi4wOSAzNzg5LjE0IDI1MDUuODUgMzcwOS45MiAyNDg3LjYyIDM2MjEuMjFaTTE5MzMuMDIgMzU3OSAyMjI2LjE4IDM1NzkgMjMwOC4xMiAzOTAwIDE5MzMuMDIgMzkwMEMxODc2LjEyIDM5MDAgMTgzMCAzODUzLjg1IDE4MzAgMzc5Ni45MkwxODMwIDM2ODIuMDhDMTgzMCAzNjI1LjE1IDE4NzYuMTIgMzU3OSAxOTMzLjAyIDM1NzlaXCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjQzdBMENFXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTI4fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMTI5LjIxIDM3NzYpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJXRUFLTkVTU1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk00MzgzLjUxIDM3MDcuNDdDNDQzNC44OCAzNzA3LjQ3IDQ0NzguODIgMzcxNy42OCA0NTE1Ljg0IDM3MzYuMjhMNDUzNCAzNzQ2LjkxIDQ1MzQgMzgxOS42NEM0NTM0IDM4NzcuODMgNDQ4Ni43MyAzOTI1IDQ0MjguNDIgMzkyNUw0MTEzLjggMzkyNSA0MTM0LjE4IDM4NjUuMDFDNDE3Ny4yMSAzNzY3LjU1IDQyNTguMSAzNzA3LjQ3IDQzODMuNTEgMzcwNy40N1pNMzMyNy41OCAzNTgxIDQxMTQuMTIgMzU4MSA0MDcwIDM2MDguNTlDMzk3MC4xNCAzNjc4Ljg5IDM5MDEuNzcgMzc4NCAzODY5Ljc0IDM5MDkuNDJMMzg2Ni40OSAzOTI1IDMzMjcuNTggMzkyNUMzMjY5LjI3IDM5MjUgMzIyMiAzODc3LjgzIDMyMjIgMzgxOS42NEwzMjIyIDM2ODYuMzZDMzIyMiAzNjI4LjE3IDMyNjkuMjcgMzU4MSAzMzI3LjU4IDM1ODFaXCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjQzhDQkYxXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTI4fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzMzYzLjMzIDM3ODkpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJPUFBPUlRVTklUSUVTXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgICBkPVwiTTU2OTguOTIgMzcyMS45OCA1OTI2IDM3MjEuOTggNTkyNiAzODM0Ljk3QzU5MjYgMzg4NC42OSA1ODg1LjYxIDM5MjUgNTgzNS43OCAzOTI1TDU2OTguOTIgMzkyNVpNNDcwNC4yMiAzNTgxIDUxMjIuNjMgMzU4MSA1MTIyLjYzIDM3MjEuOTggNTQ1OS43MyAzNzIxLjk4IDU0NTkuNzMgMzkyNSA0NzA0LjIyIDM5MjVDNDY1NC4zOSAzOTI1IDQ2MTQgMzg4NC42OSA0NjE0IDM4MzQuOTdMNDYxNCAzNjcxLjAzQzQ2MTQgMzYyMS4zMSA0NjU0LjM5IDM1ODEgNDcwNC4yMiAzNTgxWlwiXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0VFRjlGRlwiXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezEyOH1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDk3OS44OCAzNzg5KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiVEhSRUFUU1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNjQ5LjU1NCA0OTU5KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiUHJlQ3lzZVwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTE0Mi44MyA0OTU5KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widXRcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDEyNTYuMjcgNDk1OSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImlcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDEyODguOTMgNDk1OSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImxpemVzXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1NDkuODY2IDUxMDIpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJub3ZlbCB0ZWNobm9sb2d5IHRvIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTU2LjE2OCA1MjQ1KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiY3VyZSBnZW5lIG11dGF0aW9uIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNjQwLjY4NSA1Mzg4KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib2YgY3lzdGljIGZpYnJvc2lzXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxOTgxLjA2IDQ5NTMpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJHZW5lIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjMwMS4zMiA0OTUzKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZWRpdGluZ1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjcxNy44MyA0OTUzKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wibmVlZFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTkzOS41NCA1MDk2KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiY29udGVyYWN0XCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyNTAyLjcxIDUwOTYpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJvZmZcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDI2NDkuOTUgNTA5NilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcIi1cIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDI2OTUuNzkgNTA5NilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcInRhcmdldCBcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDIwMjEuNzQgNTIzOSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImVmZmVjdHNcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDI0MjkuMDggNTIzOSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcIiYgXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyNTUxLjExIDUyMzkpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJyZXF1aXJlXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMDEzLjQ0IDUzODIpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJzYWZldHlcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDIzODAuMTEgNTM4MilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImV2YWx1YXRpb25cIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDMzNzkuOSA0OTQ5KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiVGVjaG5vbG9neSBcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQwNTQuMjMgNDk0OSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcIm1pZ2h0XCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzMzA2IDUwOTIpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJlbmFibGVcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM3MDcuNjEgNTA5MilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImRpcmVjdGlvbnNcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQyOTQuODUgNTA5MilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImZvclwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzM0MS4yMiA1MjM1KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1widHJlYXRtZW50c1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzk4MS4xNyA1MjM1KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib2ZcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQxMTguMSA1MjM1KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib3RoZXJcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM0MTMuNzEgNTM3OClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImdlbmV0aWNcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM4NTYgNTM3OClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImRpc2Vhc2VzXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0ODMwIDQ5NDkpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJSZXF1aXJtZW50c1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTU2OS42NCA0OTQ5KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wib24gXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0NzAyLjgyIDUwOTIpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJyZWd1bGF0b3J5XCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1Mjc3LjQ1IDUwOTIpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCIsIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTMzOC4xOCA1MDkyKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZXRoaWNhbFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTc0My4yMyA1MDkyKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiJiBcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ3NDguNjUgNTIzNSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImxlZ2FsIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTA0NS45OSA1MjM1KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wicmVxdWlyZW1lbnRzXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0ODMwLjg1IDUzNzgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJvZmZlclwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTExOS42IDUzNzgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJsaW1pdGF0aW9uc1wifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NDAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA2MjMuNDU3IDQzNjEpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJJbnRlcm5hbCBwb3NpdGl2ZSBmYWN0b3JzIFwifVxuICAgICAgICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NDAwfVxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA2OTkuMDgyIDQ0NzEpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7XCJwcm92aWRlIGFkdmFudGFnZXNcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTk5OC41MiA0MzYwKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiSW50ZXJuYWwgbmVnYXRpdmUgZmFjdG9ycyBcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjA1My43OSA0NDcwKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wicHJvdmlkZSBkaXNhZHZhbnRhZ2VcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzM5Ny4zNSA0MzYwKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiRXh0ZXJuYWwgcG9zaXRpdmUgZmFjdG9ycyBcIn1cbiAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgPHRleHRcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzQzNS40NiA0NDcwKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge1wiZW5hYmxlIG5ldyBkaXJlY3Rpb25zXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17OTJ9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ3NzIuNDIgNDM2MClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcIkV4dGVybmFsIG5lZ2F0aXZlIGZhY3RvcnMgXCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17OTJ9XG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ3NzYuMTYgNDQ3MClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtcImltcGFjdCBlbmRhbmdlciBwcm9qZWN0XCJ9XG4gICAgICAgICAgICAgICAgPC90ZXh0PlxuICAgICAgICAgICAgICA8L2c+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgICk7XG4gICAgICAgXG59O1xuXG5cbiIsICJpbXBvcnQgeyBvcGVuRWxlbWVudCB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9vcGVuRWxlbWVudFwiO1xuXG5leHBvcnQgY29uc3QgSFBVbmRlcnN0YW5kaW5nID0gKCkgPT4gKFxuICA8c3ZnXG4gICAgdmlld0JveD1cIjAgMCA4NTMuMDU2NDUgNTU2LjAwODQ4XCJcbiAgICBoZWlnaHQ9ezIwMC4wMDg0OH1cbiAgICB3aWR0aD17ODUzLjA1NjQ2fVxuICAgIHhtbFNwYWNlPVwicHJlc2VydmVcIlxuICAgIGlkPVwic3ZnMlwiXG4gICAgeG1sbnNYbGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPG1ldGFkYXRhIGlkPVwibWV0YWRhdGE4XCI+XG4gICAgPC9tZXRhZGF0YT5cbiAgICA8ZGVmcyBpZD1cImRlZnM2XCI+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDMwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDI4XCJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWQ9XCJwYXRoNDRcIlxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGg2NFwiXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDkwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDg4XCJcbiAgICAgICAgICBkPVwiTSA1OTkuNCw4MzAuNTIgSCA2NzIgViA5MDMgaCAtNzIuNiB6XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8bWFza1xuICAgICAgICBpZD1cIm1hc2s5NFwiXG4gICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgIHk9ezB9XG4gICAgICAgIHg9ezB9XG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcbiAgICAgID5cbiAgICAgICAgPGltYWdlXG4gICAgICAgICAgaWQ9XCJpbWFnZTk2XCJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQU1rQUFBREpDQUFBQUFDc3JVblpBQUFBQVhOQ1NWUUk1Z3BibVFBQUNHOUpSRUZVZUp6dG5YbHNWRVVjeCtkdHQ5MUNWM3B3MkhKSUJhdUZSc0dLV3RFcWh3R0JhRHdiQ0JBdmtNUXJYc1FFUlJNUndZUERJL0VHTFNUMTFwQ3FvSElFQkt5R2FvQlNiVDB3TGRoU1dscEsyKzFlNHg5ZG9MdnZOMi9uOTJiZm05ZGtQbi9Pekh2Ny9iNTVNMi91SlVTaFVDZ1VDb1ZDb1ZBb0ZBcUZRcUZRT0EvTitwL0l1dUhTVVJuK0U5Vy83UEJaLzJQV01lV3p3MkVhb2Z2UU93V3k5WmhFVzNpUVJoUGFPY09HdHlEaFhMZWZBbXdlSlZzWEZtMXBFREpDYWVCdWwyeHRLTksrZzMxUVN1bXJIZ3QrVU9pdFRjcktURXZSZ3AxdFRmN1lxSE1xeGhoY1dIYVg3Z0tKZUVhLzFITDZJWWMzWFQwZ09yS1NuU09VVXJyT09lVSsrYjVBakxnTjNyT3gydnZHUmloZExFOTZOQ1hkUUVuKzhFejA3SGhHYUdDRVJQVm5HWHdJbHRjNExoTGZFZGNKL1UydWhSNnViMlkrNmFjSUlZUzhGZDhJRFpkSWRrRUltZHRwSVBBMWpaQTg0TlhUYzFpMkQzS3J6MURnTWtMZTRERkNRNUUybUt0NDViZFZMYjZ3cjZIeWt3ZHpiVFF5L21RY2hiT1RHcm1jMEsyRUVESjI5ZEVvZTdzVzJkVUFTSzJOSnpENEJKOFJlc3BGOGpib1d6Uk45N3B0Y2JLT1V5WUhRYzlqY0lIYWwyK0RrYUZjaFptVG82eUljSW1KSmtBU0x2bTJSSDdRem1GRmFIZjQ5dEFFL2hCQWtqK0JXV0xJYzNodHFOUnJKcUovd0NUWHRsWWdyMEM5a083MlZPVHR6ZU12ck1KZGdLcTlQU200bTR1UThqbnlBcFNUSWp1N3JSZXR4S1ZIYWJzRmQyOUJrRjk3Vk9xclVMY1dKZU5GVkhKVWlXOU5SOTFibE9aQm1OU29QUEhHVDVKSXNsQ2ZZWlNURHB3U1ViUWxxTlNZeEpXWDRxU0k0a3NMOHlkRzVjbE9yQlJCM01tSXhDZ25ueUtWaU9MQzlGVGlwKzMzNklJc1Q3S0xoUDIrWnZPaVRLRWhXK3FHOTdxbmxqRk9iUXVZV3Q4NFQrWStueXYwSU96RXlFbk9ocW0yNlFDaGlLckxxTVJQMnlmWkNBbUhFSW5aVGtxK3loSFhJa1k0Z0VqTS9ETE8vTkxHemdpRHRoVVRDM0pTZlkwMUZic1AvR2YySnFPN0pGWlpBT0Z2SnNlWkNHUGtpYWM1emV3enNJemo4N1ladlcxd09kRStjcDRSTW1oelJiWkJOSnduSXc5Ym9rVVlldk1tWmh6WUh0QXFCbG9tUmdpdEpIazdNdzRLeksrMlRvd2c0ZGNmWWNTQWViTDhNZ3UxaUtGZDd0dk5pQUhDMHBzdy9RSzc2UzQ4QklaRGRkZUZUalpDUEx2Z3RqN2s1SEpycFlpU3RRSU1ocHhjYTYwU1lSYUROU3ZrNUdLTGxRanpEQlFJbGZpMkFVQ2dvOGhzMVlkQmVXTHpBSjBKb0xjR2NoSzBXb2d3aTRBdzZPMnFHMjYxRWxHQy9mV3RZaWhQYXF5WElvZ2JlTmFRRSt3TW53UUc2NE1nSnp1czFpRU9VTHRDVG42M1hJZ3dRRThZY2xLMzMzSWxGZ0E1b1V0dGw0R2xXeDhFOXVPZHY1Uy9UUjhFT2puSjZwYzVoaVo5RUR3aTRXbnBiN0VVTWZ4ZXZpOGpJZDBYWWNhVzdlZGpZT0NMTWRkeTBuMmR0VnJFZUtCT0g4WWNGOTR5elVvcGdtVHdsbmhDQ0puRkhGaVN6eXVBRVlOWjdPVDFjNjNUSXNiQUZpQ1FQWDhTbVArUWs3Wlc5R0k1Wk1SNFpjRzR0Wk1za1NMRzhXeHdxc3R3bnJpeHRDcDNtRFZ5ek9PN0F2Z3M4akMrckVibVBMYU9BS3Y5d2JOdXhUdjl5cnlzU3pMTVBZa0VFMXIxcE9ndFBwQ2RHWlJTU2dQc1pqcjN5aEI0V05sbS9MZDh3NHpqZGxLWkVDbGk3SnNHMXI4OWNLL3Z5alM0aVQwMDNiN0hhQ1NPZTFYVWljOFNJQWJEMkZXOWRkTk5SY04zR2c0cDhxKzVtN2JGckNaemFDU2xvSERLK1BQNmR6VlU3OTd6KzdINDZYbEovZFBXajJRSXU1K0dmODJkN3dIa3JjWG93bDZBV0QzNExYTEp2aGpvOVgwSUovNGI3T3dTMTJNdndLem9yTC9iNG8wNnZVRy9BS2kxcWFXbDlsbGhmOHdaSUxkMmZYSzdUZHZCT3pLdzgxSElIU1VsdVAwSDV2bkMrb20xeWFmZ1ZtcnJzd2x0OU9JM2lLQjMrV3cvZnlNVXZDcTNBZjNiQm16ZW04aTdNUmxYRnZzRTM3NlFFTjVOc2x6WXRoVWhkK0hXME9rZjlaWFBIMElJSVE4bjBNZ0xKalNacm9vOEJhT0dwSkdPLy82cGlvelJ6aS9sdmZUcldYRVMvRnBzODA2WGFDWnhQL0hDamNieHh5V2ZNWkhON1NUSHZjVW91ajFQcmhGQ3FqaU4xQlBpTGpmSWthR3lqWkRsbkU2V0VFTElLc1lnV3ZpQUF3NHR1b0xUeVFXRUVFSUsyNkc0N21jbG0raWhqc3RJUTZTNmREMnVqeXUzNHVnbEU4emtjakxoVFBxMG00NzBqdWg0UEZQazF4UFp0UFg4elZGWUc0ZjNhaHRxMlNPblg1TS8yTjM2MTgvbDFRME9tdVNZRUQ5SGdybXlSWExoV2hQWHlVdXlOWEtTVWhQSGlEMU4zRVNRZXNUUVNMVjlwemNJay9XM2daRXFlM2VsQytMNWlXbGtxek56WkdEeHUzOTBuanI0ZXBGdXJ1c04rRENwTHZ3UktuYVFzZjZNd3REcTJOVTZvMnBDT2graEE4NWM4SHB6dE13SnNmSDVzUTJYV3NkTklmZXdPaHl0TTZ5YnhYUmwzSFgyeU5SOWM5S2RjMmhpRkN2MGhlQkJJSmwzV0Y3QnhXTXV5SGJnTnJ3SUpmcFNRSVBYeUZabGd2NzFVTTFVNjVEMk9JWm5JQ09VM2lsYkY1NXEyTWtlMmJyUTVNSkdLSlc5QngzZC83K1JGV0hiSVdVTTBFN0dzU0prajFLaG5UQjNCTXZlM0lWMjBzbUtBSmE2MndyYXlWK3NpQ05pUW9SQk8yR2VUZVNJQTRNeHVFL0FsWEJqQWsvZU1RVTZUNEkvd09FZllzNUdjUWFYZ0dQVGdUNzN6d0NFa0RjaEowL0xWbVVHN3dHOWtiM09IR3lJeDhoL1k0Mzg0ZEFUTk9JeUpDWlhmbkZ1dHpBZTJwSmVwM0dmZ1BZVDl4MjBSZTJCTUtXaHdMRTVzcVh3NGw2d28vSGZNcURKcnFWNjB3ZDRQUTRkTmRHUnRUTnlabFRMTXRsU3hKalJjclk0VkRyL0tBTTJNNklPOGFwMTlERXNocHdiODJjQTM4c1daSnIzWXI1L3diR3lGWm1rWDF2c3A3elBkVUVpM0taclhYWFo4NDhMNWpEb24raUhlcE1kc0thRWlZRTIvYUZ5U1U3K0RCbzQwYS9SdDNFSk54NERKL3JUSklMTzNtdk9aSVN1eEo5MDh0dGx4SSt4VHU2WHJjZ3NVMk9NSE91cldVTEkyaWdqdmlMWmVzeVRYTnJMU09jODJYSkVjQzArMDh1dEtwWXRScEQwbHl0Ymd2NmpPKzdzdTJWRW9WQW9GQXFGUXFGUUtCUUtoVUtoVUVqa2YvTGQzSWhidXBvN0FBQUFBRWxGVGtTdVFtQ0NcIlxuICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICAvKiBzdHlsZT17e1xuICAgICAgICAgICAgaW1hZ2VSZW5kZXJpbmc6IFwib3B0aW1pemVTcGVlZFwiLFxuICAgICAgICAgIH19Ki9cbiAgICAgICAgICBoZWlnaHQ9ezF9XG4gICAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgIC8+XG4gICAgICA8L21hc2s+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEwNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpZD1cInBhdGgxMDRcIlxuICAgICAgICAgIGQ9XCJtIDcxMS44NCw3MTQuNiBoIDY4LjA0IHYgNjguMDQgaCAtNjguMDQgelwiXG4gICAgICAgIC8+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPG1hc2tcbiAgICAgICAgaWQ9XCJtYXNrMTEwXCJcbiAgICAgICAgaGVpZ2h0PXsxfVxuICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgeT17MH1cbiAgICAgICAgeD17MH1cbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxuICAgICAgPlxuICAgICAgICA8aW1hZ2VcbiAgICAgICAgICBpZD1cImltYWdlMTEyXCJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUx3QUFBQzhDQUFBQUFEbklwdDNBQUFBQVhOQ1NWUUk1Z3BibVFBQUJGZEpSRUZVZUp6dDJsdG9GRmNjeC9IWnBNYnRyalhhTnF2eEZrU3NDQzI5MlZpclJLbEtEVlNvb0tqMFJSUXFCVnRxc1JlMnBaQVdvV1JwQzRGVTFCZEZud29WRVUzUnZ0UW1GWVBZZ3RlbVNkUzBsallwMlFkejNlenUvUHVRM1Z4bXpwd3paODdwbmszNWZWN0U1TXlaNzA0T3N6T3phMWtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEZ1E4bTJNOTNwM2d1N3c2WkRBbGo5TTQyNnQ5cDBpcXpIVDlHWVZLM3BHaW1oTHpJMFFWK1Y2U0FKdTN0b3NwT21pM3hiOFFzNVpTdE1SL2xUM3BSeHRST3RNNTNseTVjRGpIU2lyYWE3Zk5qaFhPeDVyNWt1RTFyV1pudTAwd3JUYlFLUjg2ekZQcXJ2SWROMWZIVWpudWxFYjV1dTQ2cmhwZFB2SmFiN09Dcis0cVZUYW9IcFFHL1IwOXgwYXBzNVBqYWtaNWZoTXRtL3BUMlVadnkwYkc4RGQ2dHN3N3VTK3hHSUxHL3M1eDh0cHV5aG1IT21VSFdXdjAxeWxkNzBPZlhlNXpRQmU5L2t2L3ZpRHNINDVqS3Q2WlVKejNjU1Arb25UQlU3SmhpY2ltdE5yMnBVU2llaVYvSlRoZmR4VDQ5RTFMVmNaL3F5NDRybFJIUXpQOWs5d1VEN2xLWlRpMlZabHZYMHQrcnBSUFJNYnJvNy9HR3BQZnJLUTZ1KzA1Sk85RUZ1eG12Y1VUZm1Nak9Ddk5XRzF2OXdhVlBnRno3Wnd0eS9JN3hCalUvK3pmeTUvQVZhYVBQSEwwaHY1R2xBM0RHNC9heXV2ZTI4cm1uQmpNcmZGUDNxT2VMaW83clMzK2pVbWs1OUQrY203dllhOFdHcG52TFFnZnQ2MDRtK3prMDl5K050dW51bG52VFNPcTlieXVBNjhnZitIZmJ2dnluWGtsNzJWVko3T25WVjVxZDNQNXdoSW51WGx0dU82TkVIK3RPemlXaCsvcFdzcThuT3BhSXNQMis2NVljM1I2UmU2L2RYaFVPb3Q2VTlPZmEvSzR6bkFVZjJEMHJ0bE9teGM4T3l4L1F0eVYyODc1NWlwRmJEdFV5c1JYUzFweDcvb25zWHR6V2MzT2RlRDNTbklSZi94S0JyZ25wL2IveThVZk5iNSttOER2WHcwa1ZudzFEMURYK2JlcCtNRnZYZm4xK0E5czkvY3JiZml2aHM5MUx5VklDbExyOXNTbXVHbk50bTMxTXJ0NmE5ckpMdU4zNTZSWjM3TGpMcGVxVEF3VmdZNFZkUFRwZVlnZUhxYjhJaDRkanpyQThsZjF5cnRPTVplMXgveVlJWjNxbVVQbnQveWxnNjNYbEVKVDMyU2RwY09oMVR1UXhia0JBOGJQdFBKVGNxcEM4NVpMQ2M2TkpzaFhZcmJqSTk4Mm1nSlROMmg5aWNYcS95MnBYOFVYdUNnbXczZm50cnJ2NzBwZzcxU2N5c25PRTNBd2RQZkxCZzVOaTNiV2dLdk8ya3B5SUc2bzl1K1ZQYlhBVmVPZjFxSDhRN25rY1Y5dGhmVzlPcWQ4TENIZnZNQWYwZnd4ZW1QblZsN3h6bFZNYjFmUHlnOUN3RGx5KzNkZzBPcGRJakdadHM1U2dWVXNlK08vRnM1UXlqdVE1KzZ4OGNySW9VNEI1ZDBrYyt5bnRlanhaZnVHVlo0dnJNWjlOTUozTHc2dTJlNTB6bkNYaXVlN3Q5bHVrMk1ZOWpmMWY5OUZ3SXJHUC96NVQ1RHJXclBwMG8wdk1MaTZPK2ZaN3BJQ2tUNisyR1l2NVdIY3Q0ZmErNSsvUEE4dlUzMmQrN0tIS2o5VTFSOGNoaUZDZWl3MU50dVkrSjAxUTZRenJWbUE0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJRC9zWDhCN3pzUUFtZkdLRlFBQUFBQVNVVk9SSzVDWUlJPVwiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIC8qIHN0eWxlPXt7XG4gICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXG4gICAgICAgICAgfX0qL1xuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTIyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDEyMFwiXG4gICAgICAgICAgZD1cIm0gNTk2LjQsNjAyLjE2IGggNzMuNjggdiA3My42OCBIIDU5Ni40IFpcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxtYXNrXG4gICAgICAgIGlkPVwibWFzazEyNlwiXG4gICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgIHk9ezB9XG4gICAgICAgIHg9ezB9XG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcbiAgICAgID5cbiAgICAgICAgPGltYWdlXG4gICAgICAgICAgaWQ9XCJpbWFnZTEyOFwiXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFNd0FBQURNQ0FBQUFBQWFTUk11QUFBQUFYTkNTVlFJNWdwYm1RQUFDaWxKUkVGVWVKenRuWDl3RmRVVngrKysvRENCaUNJU2ZvellUR09aVHFXRmtmNlFjU3hTT2tVeW90RFNVVWN4REhXbVdoUnFmOUFwYUNFbXBza1FiSEFnWXh4bkNoSEwxTm9VRFU2aDBHcVIxRktDRFl4SnEwQnFJZWp3U0tDRUVKS1g5OTdwSHkvSk8vZWV1N3QzbjltOTIrbjkvRVYyejEyKzMremRlM2Z2bnJOaHpHQXdHQXdHZzhGZ01CZ01Cb1BCWURBWURBYkRDRlptemNiTyt2eE5Fd3Z5V094eTE4bjJsb3VqcXlsak1qQ1RNLzlyODJibW9BM1EvdGIrUDE0YU5VbkJZYzJxN2dVSlYrcm5SSFJyODBqa1MyL0xuS1JvdXoxTHR6NHZURGxzYndVQTRQU25NcndFZzhmYTdHd0ZBR0Q3LzhqSm1YVFczUXRBZEladW5Tb3N1YVRpQmFEM0VkMUszVm1UVVBNQ0VLL1NyZFdOY2xVckFKQ3MwYTNXbVhVZXZBQWtxM1hyZGVMK3BFenlwYTZ1SHB2T1Z4N2VRYTJvVHhRNzBOR3c4QnJHR0JzejcvbmpWeVJ1MW9mVlRhUmJVTnBmUHdidno2MGdaZ0UyaFBUbTVnMUI1OVk4TVNKM0xlMXVsVHFrdXZKWlh1U0h4YktncWNkRU04bU5RUXRWNEtwVG5NYkdhK1JoWStxSm0wM0JDbFhoYms3aGkxZlp4V1ZWaE45TkhuZGlHbTI5TUdZOUhmcWV0cEM3WG16NldBcXJrcmlwRE5lWXRodUx1OGs1MXFvaGsydFptT2FiYVZqWlZ0Znd6V1NJRHRQcytTalMxVS9tRjBxdGFBYksvUmVweW10SVZyMUtnMnJpSmpSM25aR2V0S2lCTWU3eGpGbmhIYUZuSTFFZGFrMGtJL1N6L29wVUJWOHlEWXB0Skc3QzhiUzJCVW02VTdXUnBLZXQ4Vk9rS3I5RGdod25UQTZMakFLSkpUNktWT1ZBV28rbnRlUmFNdDlJNzdXRDVkMjBtaTVQRFRlTDl3SlhydlpKb2pwdG1acGhOZUtwK2FVL0NqM3dYbHBNajdlVzlLN3pEbDhVZWdCMXM2VFNuSm1Hak5EdjU3ZzM4cFUvSXpIelBMYTF5Z1EzRC9zaVVaMUdwT1Y1cjQwdFlSbjBnMncvSktxREo4M2pubHRINm5nM0QvaWcwQU9QSUNsWGNqMDN6ejNLbVhuVEI0VWV1QVZycWZEZVBwOWJIa3hPSEgyRlhrQ1BBTkRuL2RTd1pkeXAwYnd3dUF0cldadkJBYmpGbmNPanJzOFQrS0tCeEZUdkIxaUJENkE1K2VFR3Jwc2NjNXM0QzZlTDZ3UVI3azNvRi8zU3FVWVQ1NmJlYWEybG9Pd2t3T0NCYi9KYnViV3FaM3pWNnNvQ3pneFUyTC9vbnpZOER0ZHhLMy9MY2ZPRHZ1dDFKTGVUZC9PMG5adjh2NDNFN01BeGhmaGh3UHZFTzdvczVNMUFwWTJiSjFETUt6Z21pblowQmlMWm5oenh2Wm5ONnNUZmNVd1Q2bW40THVCY01KcnQrWXhnSnJsWkZoV0pjMEdONlhQVGpEYWZEMHkxRGRhcmdwdEVyU1JxbkJDMGM4VE5RYlQxUW9DNjVXUjNDVUtobWw0M2xwaU4wakRjMDFyUXh1NWdsY3VZZVZsMEl4bWg5NG94MjRiY2RLQnRad05XTHVQUnVLaVVqdENMeEpBaE56a0RhTk9wNExWVHFzaGJKT3FtVGd5QkJvc3g5bFc4NVgwTjJpbWJpQnZTMHlJN2lKdWRGdit3Q251MGlDY292SGV4WGlFeGpSRzg5QWJ3aEE3cEVtaVNGaG1oclNZUzAxVE0vWGlERHVVU3N0YUxRaE5rOW93MGlqSEE1UTEvcEVPNGxLd05vdEJralhqZFdEdUpHOHlmdEFpWEVxa2tvd0M1NjdRYW5NeXMwS0xiaG8zdUkzUmttNzJYOHc3NUhScWdJM1NaQnpjdmFkRnNEM1ZUTG1hVVJPeDZXbUsyRnNrTzBKNVdKeTZuMlkwQ3Iyc1I3TWpQaWNpaitVS0lSVWRvQUVqZXFrV3ZJeEh4VFFWQTN6SXhoczZlQUM4SU1mTis5bXBMeDcvYjl0Y3R6MkE1YnJTZzh3M0FxUlg4bFZOTWEyeGlrOUs3cjYvNFp4ZStFZTg5dFdkQndDNkd5WktsbjUvZHZid3d0VHRuN3BZMlNVRHlzYUhtZWV1T0RVcjJuOXY5RlQxMnFtVkoyNUNNSG0wKzJOSXhJTnNIQU1sVmpERTJmc3NGbS8wQWYvMjJGamQwaEZZZ3VZcmxyK3QzREdtK1hZZWJaek55VS9FdnQ1REVjMk0xdUtFWmpLUEVoYzlwY0ZQaGx4dFlwQ0ZMOVR0K21ZRWZCMi9HK3JKZlpwSTZhcU9tSEhJWE5walJTS0VqRTlKYVpqOXBwRlJ0bS94WVJtNjBaRUpPck9weGtQVG1YTWJZcXVET3pTY3VlWjMwL2Z1S3BEdjY5OVdtbnZsWC8wTDZuNXhzYlQ5eE5wWTNjZnJOc3lRSGdJMC8rYVRLTWlKeTE1NU84YmZmZTZSc3drZ0F5ZGtFNkc2NEdSM2hDeTlGYVlpK3VyV2l0YzBkMFo3K2VEeldkNzZ6ZlhzSkZwSjNnaW85SWJ5VnpxMmlOYTFoeXJ3ZjRVZXlpNkpMZktKajc5SDFoWERWZURER1dMNjhqdmkwbUZOZzBXTFE4Tld0MGVmc0ZHMGtCWFdwbUhNYnVtb2k2eU1iTTlCQ01xVVhFemNoeWJ3ZlpvWFVDQUFBdkhPdEdMd2s1RzZhcFQ2RzNDaWNtekQxdEZ6SHp3aTBrT3RtRVhFVG9ycTFCNXk4QUxTVFBLbHZrTldPOE5TdHZZVmw5ZEc3ems0eTM4eVBpVEVid3VLR3l3VGN5eDRrNTZhTFZMTE5wK3ZaT3BSTDRHNnFGekNybENnOVVTQzJLU0UxSHVHb1d4dUx0WitMTU1hK1M5eTBrakh0SGpJS2hLSnU3UTRzNlErTU1jYm9kWE5JWWI1NUtuRHBsSlZZMFhPcGJmUnBUV0gyakMwTldqcUZTeDlZUGJTUnVqbEVyaHZTMHk1b2ZGY3dCUGVWZ0h1SHQ5S2U5bnZTa293Q3VsTWlHWHNCeTFrOHNwbU1Bb2xwcENtWmIxWUdLVndHVjYxMWYzcjdja0VvdkV6YmZsMjhGNWhBWTNoOHZ2SGhjakxRNjZidER3SWZLRm4rMzM5WGt0OVFOMXFxTXFRRS8yYTM0RDBQOHozdHRLeTFlTmVwdVQ1eUF0YXluOXYxUGM3Tkc5TG13Z2l0KzlUZ2pNaHV2azgvanR6WXZZb3U1Y3pFSndlZzJJRXpXRXdKdjI5MTJzMFJ1L2I4dSsySC9KYnJEUGNWd2IzQ3pzZUhlOUVaMnhreHJ4VWY0SURQYWwzZ0ZzMHVpN2VVOTV3QkFJai9aWXI5QVlxNFUrTVFHQUFGWE9KdGs3amJ1blBIdnBvaXh5TzhqQTl3bjE4NjFlQSs0alI0bmZjRGpNVnpwelIxZndUZlZ3dGV3ejlrWjFBVDNJZW5JTTJKVWVQNGo1ODFlZi90NGZUdi8vaWcwQXUvNHN3QXlldDB4Y0svamtJL0pLb3pROGk5TC9mc0JpK0thQzdCWTJLZUk4bUVkQU9QSVNYdTRiNVNMQlo1ZUQwM3YwRnQ3M1VLREdEdDgrUlBoUTFQUHVQTkRTN3UwcjRlbVBVUDRkVFkxYTNaZ0ovd0hMTzRnbGlWVHN3WHQvekFlZklUdUI3OTIrT25QUHhnam5ocXBIVnJkdUN2ZDgvMFRhTXlWaWxkY1ZXL2JvNmpadXJmSmZJUm10SGxVRmtzZ0FyNHdsQzB4bVRaZHJhVnhRS0Y2S3p1ODFla01qUVRVdEhOaTZoSmFGNm1LOVN0eWNqQmMrN2R2cXRVSmJQdkJkNkc0dU9odVA1VEtOU3RFWEp4OHZDdUFFU3FvbEszSmxLS3d4ZTdSUWRKRnFtS29IVnJQTk54QW50c1hFQTYxVkNwVzhPTTQ1WVFNdmxXaksvUWFpS0hKNExjMTdsSS9lK2JST2dJdmNsdWxhT0ErNFlQaFBHdkoxQTN2NVYveE9uVFI3aW9BZjJmRlpSQWUxcjBOdHJWc3IvRnIrc2t3ek5oY3BEdkJRSzBUK0tmckxKbmlqbkdyWnJFdWhHUlZIb2xlOWFrRTAvRzE1STZyNmpDOHFHZVArV1Q5ZFI2eWRaNDk4VXpIMThjZjJQaHRkZVJCK0RCVzk4TlFGZG1TT3ZXbkNqVnJkZ1JlZDJhSFQvVUxkY0ZMN1ZSWWZmQzJKTWtTODZHV0xqN1dJcWxMZ1VyUTBSdjBTMVVpYWtmdUZ0SnR1cit6S3N5SzkyOERJUjAzcGN5NGRlT1hxcENlVDltVC9GVzh2R2tJV0pydzNmUDc4cmtodzVRSi9GZGl6MC9WNGJrTHhOT21UdG45b3lScFpmb3NjUHZ2SjNCNjh1UW1HR01NVlo0WStIVmtjSGVqejhNeTE5T05SZ01Cb1BCWURBWURBYUR3V0F3R0F3R3cvOGYvd1ZsVzBvd0dSUzdXUUFBQUFCSlJVNUVya0pnZ2c9PVwiXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgIC8qIHN0eWxlPXt7XG4gICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXG4gICAgICAgICAgfX0qL1xuICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICB3aWR0aD17MX1cbiAgICAgICAgLz5cbiAgICAgIDwvbWFzaz5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTM4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDEzNlwiXG4gICAgICAgICAgZD1cIk0gMCwxNDE3LjMyIEggMTQxNy4zMiBWIDMuNjYyMWUtNCBMIDAsMi40NDE0ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8bGluZWFyR3JhZGllbnRcbiAgICAgICAgaWQ9XCJsaW5lYXJHcmFkaWVudDE2NlwiXG4gICAgICAgIHNwcmVhZE1ldGhvZD1cInBhZFwiXG4gICAgICAgIGdyYWRpZW50VW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXG4gICAgICAgIHkyPXs4NjAuMDM5OTh9XG4gICAgICAgIHgyPXs5ODYuMzQ5OTh9XG4gICAgICAgIHkxPXs0MDQuNDd9XG4gICAgICAgIHgxPXs5NDguNjN9XG4gICAgICA+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTQwXCJcbiAgICAgICAgICBvZmZzZXQ9ezB9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE0MlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjAzMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzg1MGU3OFwiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTQ0XCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMDd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE0NlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AxNDhcIlxuICAgICAgICAgIG9mZnNldD17MC4zMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTUwXCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzl9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE1MlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjODUwZTc4XCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AxNTRcIlxuICAgICAgICAgIG9mZnNldD17MC42MzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzg1MGU3OFwiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTU2XCJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjY2Njd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE1OFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE2MFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjczNjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjODUwZTc4XCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AxNjJcIlxuICAgICAgICAgIG9mZnNldD17MC45NDMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTY0XCJcbiAgICAgICAgICBvZmZzZXQ9ezF9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTc2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDE3NFwiXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDIuNDQxNGUtNCBMIC05LjE1NTNlLTUsMS4yMjA3ZS00XCJcbiAgICAgICAgLz5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8bGluZWFyR3JhZGllbnRcbiAgICAgICAgaWQ9XCJsaW5lYXJHcmFkaWVudDIwNFwiXG4gICAgICAgIHNwcmVhZE1ldGhvZD1cInBhZFwiXG4gICAgICAgIGdyYWRpZW50VW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXG4gICAgICAgIHkyPXs5NzAuOTI5OTl9XG4gICAgICAgIHgyPXszODguNDI5OTl9XG4gICAgICAgIHkxPXs1MTcuODQwMDN9XG4gICAgICAgIHgxPXs0MjUuOTUwMDF9XG4gICAgICA+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTc4XCJcbiAgICAgICAgICBvZmZzZXQ9ezB9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE4MFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjAzMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2I4NWJkMVwiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTgyXCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMDd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE4NFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AxODZcIlxuICAgICAgICAgIG9mZnNldD17MC4zMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTg4XCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzl9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE5MFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AxOTJcIlxuICAgICAgICAgIG9mZnNldD17MC42MzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2I4NWJkMVwiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMTk0XCJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjY2Njd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE5NlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDE5OFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjczNjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AyMDBcIlxuICAgICAgICAgIG9mZnNldD17MC45NDMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjAyXCJcbiAgICAgICAgICBvZmZzZXQ9ezF9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjE0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICB9fVxuICAgICAgICAgIGlkPVwicGF0aDIxMlwiXG4gICAgICAgICAgZD1cIk0gMCwxNDE3LjMyIEggMTQxNy4zMiBWIDMuNjYyMWUtNCBMIDEuMjIwN2UtNCwyLjQ0MTRlLTRcIlxuICAgICAgICAvPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxsaW5lYXJHcmFkaWVudFxuICAgICAgICBpZD1cImxpbmVhckdyYWRpZW50MjQyXCJcbiAgICAgICAgc3ByZWFkTWV0aG9kPVwicGFkXCJcbiAgICAgICAgZ3JhZGllbnRVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcbiAgICAgICAgeTI9ezEwODIuNzN9XG4gICAgICAgIHgyPXs5ODcuNzE5OTd9XG4gICAgICAgIHkxPXs2MjcuMTUwMDJ9XG4gICAgICAgIHgxPXs5NTB9XG4gICAgICA+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjE2XCJcbiAgICAgICAgICBvZmZzZXQ9ezB9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDIxOFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjAzMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjIwXCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMDd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDIyMlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AyMjRcIlxuICAgICAgICAgIG9mZnNldD17MC4zMzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjI2XCJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzl9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDIyOFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYTBhN2YzXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AyMzBcIlxuICAgICAgICAgIG9mZnNldD17MC42MzMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjMyXCJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjY2Njd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDIzNFwiXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8c3RvcFxuICAgICAgICAgIGlkPVwic3RvcDIzNlwiXG4gICAgICAgICAgb2Zmc2V0PXswLjczNjY3fVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYTBhN2YzXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPHN0b3BcbiAgICAgICAgICBpZD1cInN0b3AyMzhcIlxuICAgICAgICAgIG9mZnNldD17MC45NDMzM31cbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxzdG9wXG4gICAgICAgICAgaWQ9XCJzdG9wMjQwXCJcbiAgICAgICAgICBvZmZzZXQ9ezF9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cbiAgICA8L2RlZnM+XG4gICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDEuMzMzMzMzMywwLDAsLTEuMzMzMzMzMywtNDkwLjg1MTcyLDEyNDUuNDQpXCIgaWQ9XCJnMTBcIj5cbiAgICA8YSBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJ1bmRlci1yZXNwb25zaXZlXCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cbiAgICAgIDxwYXRoXG4gICAgICAgIGlkPVwicGF0aDIyXCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgfX1cbiAgICAgICAgZD1cIm0gNjI4LjIsNzExLjM2IGMgMzYuOSwwIDY2LjgsLTMxLjU4IDY2LjgsLTcwLjU0IDAsLTM4Ljk2IC0yOS45LC03MC41OCAtNjYuOCwtNzAuNTggaCAzMDguNDQgYyAzNi45LDAgNjYuOCwzMS42MiA2Ni44LDcwLjU4IDAsMzguOTYgLTI5LjksNzAuNTQgLTY2LjgsNzAuNTQgelwiXG4gICAgICAvPlxuICAgICAgPC9hPlxuICAgICAgPGcgaWQ9XCJnMjRcIj5cbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzApXCIgaWQ9XCJnMjZcIj5cbiAgICAgICAgICA8dGV4dFxuICAgICAgICAgICAgaWQ9XCJ0ZXh0MzRcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXG4gICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwiYm9sZFwiLFxuICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMS45NnB4XCIsXG4gICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxcIixcbiAgICAgICAgICAgICAgLyogd3JpdGluZ01vZGU6IFwibHItdGJcIiwqL1xuICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxuICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw3NjUuODQsNjMyLjU3KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwidW5kZXItcmVzcG9uc2l2ZVwiLCBjbGFzc1RvSGlkZTogXCJ1bmRlcnN0YW5kaW5ndGFiXCJ9KX0+XG4gICAgICAgICAgICA8dHNwYW5cbiAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjMyXCJcbiAgICAgICAgICAgICAgeT17MH1cbiAgICAgICAgICAgICAgeD1cIjAgMTUuODU1MTIgMzAuNTAyNDM5IDQ1LjE0OTc2MSA1OS43OTcwODEgNzYuNzk0MTIxIDkyLjY0OTIzOSAxMDcuMjk2NTYgMTEzLjQwMTQ0IDEyOC4wNDg3N1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtcIlJFU1BPTlNJVkVcIn1cbiAgICAgICAgICAgIDwvdHNwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC90ZXh0PlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGgzNlwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDYyOC43OCw3MTEuMzYgYyAtMzYuOTEsMCAtNjYuODIsLTMxLjU4IC02Ni44MiwtNzAuNTQgMCwtMzguOTYgMjkuOTEsLTcwLjU4IDY2LjgyLC03MC41OCAzNi45LDAgNjYuODYsMzEuNjIgNjYuODYsNzAuNTggMCwzOC45NiAtMjkuOTYsNzAuNTQgLTY2Ljg2LDcwLjU0IHpcIlxuICAgICAgLz5cbiAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlZmxlY3Rpb25cIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxuICAgICAgPHBhdGhcbiAgICAgICAgaWQ9XCJwYXRoMzhcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICB9fVxuICAgICAgICBkPVwibSA2MjguMiw5MzQuMDggYyAzNi45LDAgNjYuOCwtMzEuNTUgNjYuOCwtNzAuNDggMCwtMzguOTIgLTI5LjksLTcwLjUyIC02Ni44LC03MC41MiBoIDMwOC40NCBjIDM2LjksMCA2Ni44LDMxLjYgNjYuOCw3MC41MiAwLDM4LjkzIC0yOS45LDcwLjQ4IC02Ni44LDcwLjQ4IHpcIlxuICAgICAgLz5cbiAgICAgIDwvYT5cbiAgICAgIDxnIGlkPVwiZzQwXCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQ2KVwiIGlkPVwiZzQyXCI+XG4gICAgICAgICAgPHRleHRcbiAgICAgICAgICAgIGlkPVwidGV4dDUwXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxuICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcImJvbGRcIixcbiAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjEuOTZweFwiLFxuICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsXCIsXG4gICAgICAgICAgICAgIC8qIHdyaXRpbmdNb2RlOiBcImxyLXRiXCIsKi9cbiAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vdXJiZWlnZSlcIixcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNzY3LjA0LDg1NS4zOClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlZmxlY3Rpb25cIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxuICAgICAgICAgICAgPHRzcGFuXG4gICAgICAgICAgICAgIGlkPVwidHNwYW40OFwiXG4gICAgICAgICAgICAgIHk9ezB9XG4gICAgICAgICAgICAgIHg9XCIwIDE1Ljg1NTEyIDMwLjUwMjQzOSA0My45MTk5OTggNTcuMzM3NTU5IDcxLjk4NDg3OSA4Ny44Mzk5OTYgMTAxLjI1NzU2IDEwNy4zNjI0NCAxMjQuNDQ3MzJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7XCJSRUZMRUNUSU9OXCJ9XG4gICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvdGV4dD5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPHBhdGhcbiAgICAgICAgaWQ9XCJwYXRoNTJcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICB9fVxuICAgICAgICBkPVwibSA2MjguNzgsOTM0LjA4IGMgLTM2LjkxLDAgLTY2LjgyLC0zMS41NSAtNjYuODIsLTcwLjQ4IDAsLTM4LjkyIDI5LjkxLC03MC41MiA2Ni44MiwtNzAuNTIgMzYuOSwwIDY2Ljg2LDMxLjYgNjYuODYsNzAuNTIgMCwzOC45MyAtMjkuOTYsNzAuNDggLTY2Ljg2LDcwLjQ4IHpcIlxuICAgICAgLz5cbiAgICAgIDxwYXRoXG4gICAgICAgIGlkPVwicGF0aDU0XCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgfX1cbiAgICAgICAgZD1cIm0gNTYxLjk2LDg2My4xIGMgMCwzOC45NCAzMS41Niw3MC41IDcwLjUsNzAuNSAzOC45NCwwIDcwLjUsLTMxLjU2IDcwLjUsLTcwLjUgMCwtMzguOTQgLTMxLjU2LC03MC41IC03MC41LC03MC41IC0zOC45NCwwIC03MC41LDMxLjU2IC03MC41LDcwLjUgelwiXG4gICAgICAvPlxuICAgICAgPHBhdGhcbiAgICAgICAgaWQ9XCJwYXRoNTZcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICB9fVxuICAgICAgICBkPVwibSA1NjEuOTYsNjQwLjk4IGMgMCwzOC45NCAzMS41Niw3MC41IDcwLjUsNzAuNSAzOC45NCwwIDcwLjUsLTMxLjU2IDcwLjUsLTcwLjUgMCwtMzguOTQgLTMxLjU2LC03MC41IC03MC41LC03MC41IC0zOC45NCwwIC03MC41LDMxLjU2IC03MC41LDcwLjUgelwiXG4gICAgICAvPlxuICAgICAgPGEgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwidW5kZXItcmVzcG9uc2liaWxpdHlcIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGlkPVwicGF0aDU4XCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkPVwibSA0MzkuMzMsODIzLjA4IGMgLTM2LjkyLDAgLTY2Ljg1LC0zMS41OCAtNjYuODUsLTcwLjU0IDAsLTM4Ljk2IDI5LjkzLC03MC41OCA2Ni44NSwtNzAuNTggaCAzMDguNjMgYyAtMzYuOTMsMCAtNjYuODUsMzEuNjIgLTY2Ljg1LDcwLjU4IDAsMzguOTYgMjkuOTIsNzAuNTQgNjYuODUsNzAuNTQgelwiXG4gICAgICAgIC8+XG4gICAgICA8L2E+XG4gICAgICA8ZyBpZD1cImc2MFwiPlxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg2NilcIiBpZD1cImc2MlwiPlxuICAgICAgICAgIDx0ZXh0XG4gICAgICAgICAgICBpZD1cInRleHQ3MFwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJib2xkXCIsXG4gICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIxLjk2cHhcIixcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbFwiLFxuICAgICAgICAgICAgICAvKiB3cml0aW5nTW9kZTogXCJsci10YlwiLCovXG4gICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDQ0Ny41LDc0NC4zMSlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlc3BvbnNpYmlsaXR5XCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cbiAgICAgICAgICAgIDx0c3BhblxuICAgICAgICAgICAgICBpZD1cInRzcGFuNjhcIlxuICAgICAgICAgICAgICB5PXswfVxuICAgICAgICAgICAgICB4PVwiMCAxNS44NTUxMiAzMC41MDI0MzkgNDUuMTQ5NzYxIDU5Ljc5NzA4MSA3Ni43OTQxMjEgOTIuNjQ5MjM5IDEwNy4yOTY1NiAxMTMuNDAxNDQgMTI5LjI1NjU2IDEzNS4zNjE0MyAxNDguNzc5MDEgMTU0Ljg4Mzg4IDE2OC4zMDE0NFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtcIlJFU1BPTlNJQklMSVRZXCJ9XG4gICAgICAgICAgICA8L3RzcGFuPlxuICAgICAgICAgICAgPC9hPiAgXG4gICAgICAgICAgPC90ZXh0PlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGg3MlwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDc0Ny4zNCw4MjMuMDggYyAtMzYuOTEsMCAtNjYuODIsLTMxLjU4IC02Ni44MiwtNzAuNTQgMCwtMzguOTYgMjkuOTEsLTcwLjU4IDY2LjgyLC03MC41OCAzNi45NSwwIDY2Ljg2LDMxLjYyIDY2Ljg2LDcwLjU4IDAsMzguOTYgLTI5LjkxLDcwLjU0IC02Ni44Niw3MC41NCB6XCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGg3NFwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDY3My4yLDc1Mi43IGMgMCwzOC45NCAzMS41Niw3MC41IDcwLjUsNzAuNSAzOC45NCwwIDcwLjUsLTMxLjU2IDcwLjUsLTcwLjUgMCwtMzguOTQgLTMxLjU2LC03MC41IC03MC41LC03MC41IC0zOC45NCwwIC03MC41LDMxLjU2IC03MC41LDcwLjUgelwiXG4gICAgICAvPlxuICAgICAgPHBhdGhcbiAgICAgICAgaWQ9XCJwYXRoNzZcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDYzMi41Myw5MDkuODQgYyAtMjUuNTUsMCAtNDYuMjYsLTIwLjcxIC00Ni4zLC00Ni4yMyAwLC0yNC43MyAyMC4yLC00NS41OCA0NC45MiwtNDYuMzIgaCAwLjYgYyAxNy44NCwtMC4yNyAzNC45NSwtNi45MiA0Ny41OSwtMTkuNTYgbCAwLjYsLTAuNiBjIDExLjY2LC0xMS42NyAxNy42MSwtMjcuNjMgMTcuNDcsLTQ0LjE1IHYgLTAuNDYgLTAuMjMgYyAwLjA1LC0xNy4xMSAtNS45OSwtMzMuNjMgLTE4LjA3LC00NS42NyBsIC0xLjUzLC0xLjUyIGMgLTExLjI1LC0xMS4zMSAtMjYuNDgsLTE4LjExIC00Mi4zOCwtMTguMTEgLTAuNTIsMCAtMS4wNCwwLjAxIC0xLjU2LDAuMDIgLTAuNDYsMC4wMiAtMC45MiwwLjAzIC0xLjM5LDAuMDMgLTAuNDYsMCAtMC45MiwtMC4wMSAtMS4zOCwtMC4wMyAtMjMuODksLTAuNjkgLTQzLjc2LC0yMC4yNSAtNDQuODMsLTQ0LjE1IC0xLjE1LC0yNi40OCAxOS45NywtNDguMzUgNDYuMjEsLTQ4LjM1IGggMC4yMyAwLjM4IGMgMTQuNDQsMCAyOC40NCwtNS4yMSAzOC42OSwtMTUuNDUgbCA1Ljc2LC01Ljc3IGMgMTIuNzcsLTEyLjc4IDE5LjM2LC0zMC4xNyAxOS44NywtNDguMjYgMC4wNSwtMi4wMyAwLjIzLC00LjEgMC41NiwtNi4xOCAzLjEzLC0yMC4wNyAtNDMuNjE2NzksMTM4Ljc3Nzk1IC0wLjM0NjcxLDMyLjY3NDE3IC00Ni43MDcyNiw5My45MTc2NCAxMS40NjY1NSwtMi4xOTIxOSAxMy40MzY1NSwtMi4xOTIxOSAyNy41MywwIDE4LjYwNzIyLC0xMC4zNjgwOSAxNS4wMjcyMiwxNy44ODE5MSAtMi41OCwyMC4yMSAxMS42NTgxNSwzOS4yOTYzNiAyNC42ODI5NCw0Ljc4NjExIC0yLjA4LDAuMzIgLTQuMTEsMC40NiAtNi4xNCwwLjUgLTE4LjI1LDAuNDIgLTM1Ljg3LDYuOTcgLTQ4Ljc4LDE5Ljk0IGwgLTIuMDgsMi4wMyBjIC0xMS4xMiwxMS4xNiAtMTYuNTEsMjYuNyAtMTUuMTcsNDIuMzkgMC4wOSwxLjI5IDAuMTQsMi41OCAwLjE0LDMuOTIgdiAwLjIzIGMgLTAuMDksMTcuMDMgNS45OSwzMy41NCAxOC4wMyw0NS41OCBsIDEuNTcsMS41NyBjIDExLjMsMTEuMzEgMjYuNTMsMTguMTEgNDIuNDMsMTguMTEgMC41MiwwIDEuMDQsLTAuMDEgMS41NiwtMC4wMiBoIDIuNzIgYyAyMy44OSwwLjc0IDQzLjc3LDIwLjMgNDQuNzgsNDQuMiAxLjE1LDI2LjQ4IC0xOS45Nyw0OC4zNCAtNDYuMjEsNDguMzQgLTAuMzcsMCAtMC43OCwwIC0xLjE1LC0wLjA0IC0wLjUyLC0wLjAyIC0xLjA0LC0wLjAyIC0xLjU1LC0wLjAyIC0xNS45NiwwIC0zMS4zMyw2LjIgLTQyLjYzLDE3LjUgLTEyLjczLDEyLjY5IC0xOS4zMiwyOS45NCAtMTkuNTUsNDcuODkgdiAwLjYgYyAtMC42LDI0Ljc3IC0yMS40NSw0NS4wNyAtNDYuMjEsNDUuMTIgelwiXG4gICAgICAvPlxuICAgICAgPGEgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwidW5kZXItcmVzcG9uc2l2ZVwiLCBjbGFzc1RvSGlkZTogXCJ1bmRlcnN0YW5kaW5ndGFiXCJ9KX0+XG4gICAgICA8cGF0aFxuICAgICAgICBpZD1cInBhdGg3OFwiXG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXG4gICAgICAgIH19XG4gICAgICAgIGQ9XCJtIDYzMy4yNCw1ODEuMSBjIDAsMzEuMTggMjguOCw1Ni40NiA2NC4zMiw1Ni40NiAzNS41MiwwIDY0LjMyLC0yNS4yOCA2NC4zMiwtNTYuNDYgMCwtMzEuMTggLTI4LjgsLTU2LjQ2IC02NC4zMiwtNTYuNDYgLTM1LjUyLDAgLTY0LjMyLDI1LjI4IC02NC4zMiw1Ni40NiB6XCJcbiAgICAgIC8+XG4gICAgICA8L2E+ICBcbiAgICAgIDxwYXRoXG4gICAgICAgIGlkPVwicGF0aDgwXCJcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxuICAgICAgICB9fVxuICAgICAgICBkPVwibSA1ODcuMDQsNjM5LjY2IGMgMCwyNS4yOCAyMC44Nyw0NS43OCA0Ni42Miw0NS43OCAyNS43NSwwIDQ2LjYyLC0yMC41IDQ2LjYyLC00NS43OCAwLC0yNS4yOCAtMjAuODcsLTQ1Ljc4IC00Ni42MiwtNDUuNzggLTI1Ljc1LDAgLTQ2LjYyLDIwLjUgLTQ2LjYyLDQ1Ljc4IHpcIlxuICAgICAgLz5cbiAgICAgIDxnIGlkPVwiZzg0XCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDkwKVwiIGlkPVwiZzg2XCI+XG4gICAgICAgICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDcyLjYsMCwwLDcyLjQ4LDU5OS40LDgzMC41MilcIiBpZD1cImc5MlwiPlxuICAgICAgICAgICAgPGltYWdlXG4gICAgICAgICAgICAgIGlkPVwiaW1hZ2U5OFwiXG4gICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI21hc2s5NClcIlxuICAgICAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQU1rQUFBREpDQVlBQUFDSnhoWUZBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFGQzFKUkVGVWVKenQzWGxjVkdYYkIvRGZtVE16TUNBb2lLaUk0TDVDbXZ1U0dwcVdxYmt2dWFTcHVXVHFrMHRwRnBhcG1Wb3VUMm5hWXB2N25nc3VsYWxrYXFhSVlZaW95Q0pJSUp2QU1NdVo5dzhmVzE2Vnc4emM1NXc1dy9YOUx4MnU2K29qUDRZNTV6NzN6UUd3Z1JEeVNCcWxCeURFMVZGSUNCRkJJU0ZFQklXRUVCRVVFa0pFVUVnSUVVRWhJVVFFaFlRUUVSUVNRa1JRU0FnUlFTRWhSQVNGaEJBUkZCSkNSRkJJQ0JGQklTRkVCSVdFRUJFVUVrSkVVRWdJRVVFaElVUUVoWVFRRVJRU1FrUlFTQWdSUVNFaFJBU0ZoQkFSV3FVSElQZDRlVlZDZVBQdUNLMzFHQUlEYThQZ1ZSRldpd21GaGJtNGxSYVA2OWZPSS82UGs3QmFURXFQV3U1UVNCVFVxRWtuZE92K0VtclhiUW4veXNIUWFFcC9ZemViUzVCNSt3WVM0ay9oeUtFMVNFKzdJdE9rNVJzSDJ1WlVkcDBqWGtDUG5sTVFYTE9Kd3pVRXdZcUVLNzlnLzU0UDhIdnNENkIvUnVsUVNHVFVvRkZIakJ5ekRDR2g0VXpyeHNZY3hkY2JaaUFyTTRscFhYSVBoVVFHSE1laGQ5L1o2RGRvTG5oZW10OXdMUll6dnZ4MEtxSlBiQVlnU05LanZLS1FTRXluTjJENnpNMEllNnliTFAyT1JLM0IxbzF2d21vMXk5S3ZQQ2gzSWRGb05QRHk5b08zZHlWNGVIaERxOVVESEdDMVdtQXFLVVp4VVI3dTNyMERDNE9yU0I0ZTNvaGNlQXcxZ2hzem1MenNmb25laHMvWFRZVEZZcEcxcjdzcUYxZTNlRjRIUC84Z1JEdzFEbDBpUnFPQ2ozK3ByeGNFQVRIbm8zRHd1eFZJVFltRDBYalhnWjU2ekoxL1NQYUFBRUQ3SjRiQWJEWml3NmV2d0dZclZ6OERKZUhXN3lROHIwT25MaU13OHNVUG9kWHFISzRUZldJenZ2NzhQekNaaXNyMGVvN2pNT2FsLzZKTHhHaUhlN0t3NWR0NU9IUmd0YUl6dUFPM0RVbXJOdjB3OFpYUG9OTjVNS2xudFZwd0tub3JQdjlra3Voclc3Y2JnQ25UdjJMUzF4a1dpeG16cDRjajUwNmEwcU9vbXR1RnBFSUZmOHlkZnhnMWdodEpVajh2THhQTEZ2VkZhc3J2RCsvdlV4bkxWOGZCMDlOYmt2NzJTazZLUmVUY2prcVBvV284Z0xlVkhvS1Z4bUZQWW01a0ZBS3FoRWpXdzlQVEc1MGpSdi92WnQ2cEIvNSsyS2ozVUw5Qlc4bjYyOHZIdHdyU1V1TnhLeTFlNlZGVXkyMFdPTGJyTUJqL21iVVZQajZWSmUrbDFlb3dhTmg4REg5aEtUaU8rK3ZQQTZ2V1FhY3VJeVh2YncrTlJvT2hJeFlxUFlhcXVjWFZyUmF0K21Ec3hEWFE2ejFsN2R1ajUyUVVGK1ZoOTQ1Ri8vdnZsNWw5Qm1LcGNrQXdnbW8wS3VYZFJJUDZEZHFnV1l0bkVCSWFqc29CTlZHeFVsWG85VjdRYXZXd1dFd29Lc3BEYms0R01qT3VJLzZQazdoNDRUQ3lzNUpsL2Y5UWl1by9rOVFNQ2NNYjh3L0Q0T1dyMkF4clZvM0J1Yk43c09MakJGU3NGS2pZSEtXSnUvUVRsaTN1ODY4L3F4N1VFRjI2amtiYjlvUGc1MS9kcm5wV3F4V0pDYWR4S25vcmp2KzRnZVdvTGtmVklkRnE5Vmk0OUN5cVZhK3I2QndXaXdYYk4wZmkrVkdMRloyak5FYmpYVXg2OFY0UUFxdldRZDhCYzlDdTQyQW15MlR5ODdPd2JWTWtUcDNjREVGd3Z4dVlxZzdKMklscjBQbkpVVXFQb1FwV3F3VVRSZ2VpVzQ4SkdQejhBdWgwZXVZOWJseS9nSFVmalVORytsWG10WldrMnBCVXJGZ1Z5LzhiNTVLZkFWeFZUazQ2L1B6cys3WEtYb0lnWU0ycTBmanQxNzF1YzdkZnRaZUFYM3ZyQUFJQ2FpbzlocW9ZREQ2UzkrQTREbTNhRDRDcHBCaFhFODVDcFQrRC8wV1ZsNEExR2g2aG9ZOHBQUVlweFpEaEM5QnYwQnlseDJCQ2xTRVpNbnloVTJ1eGlEejZEbmdkVHowOVdla3huS2E2a0hDY0ZsMjdqMWQ2REZJR0hLZkIwQkh2SXFoR1E2VkhjWXJxUXFMVDZlbGRSRVYwT2crODh1b21wY2R3aXVwQ1VyZGVLMmcwdk5KakVEc0UxV2lBZ2NQZVZub01oNmt1SkMxYTl4Ri9FWEU1WGJ1TmhRcS8zUUNvY09wNkxyVENscFNkZHdVL0RCbitqdEpqT0VSMUlRbXNXbHZwRVlpRE9xbDBkWVRxUXVMcFdVSHBFWWlEdkwzOTRPY1hwUFFZZGxOZFNFcEtDcFVlZ1RoSW85R2dULy9aU285aE45V0Y1SGJHRGFWSElFN28ySGtFMVBadHA2NXBBU1RFLzZ6MENNUUpXbDRMWHF1dVovMVVGNUt6WjNZclBRSnhBcWZSZ05lb0t5UXVNYTFXNjRHbmU3MkNMaEZqNEYyaEVuUTZEL0M4RGhxTkJqWWJZTE1Kc0ZqTU1KdU51RnVRcmZTNHhBa2N4NGtlTWVGcUZBc0p4M0hvMkhrRWV2ZWRoU3FCb1k5OFF1N2VQZ3NhOEx3V0hoNEdWS2pnSit1Y2hDMk8wNENqa0locjIyRXdCZzJOUkpYQVdrcTBKOFF1c29ha1lzV3FlR25LZW9TRmQ1V3pMWEVoZ2lCQUVLeEtqMkVYMlVMU0pDd0NMNzI4VHZMSFI0bHJzOWtFMkNna0QycmR0ai9HVC80RUhoNWVjclFqTHN4bUUyQzFVa2orSmJ4WmQweVk4aWx0MkVBQUFDVWxSZWp4N0JUVWI5QU9OWUlib1dLbGF0RHBQR0V4RzVHWGw0bU05RVJjVHp5SHF3bW5rWkljaC95ODIwcVBMTzF1S1FGVmFtSHg4bDlsMzFtUnVBZWJUVURzaGFNNHVIOFZFaE5PSzNaNmwyUWg0YlU2Zkx3K0JaNEcxOWhkbmFoYmZ2NmZXUGZSZU1SZlBnR3JWZDROOENRS0NZZXBNemFpSlQwZ1JSaEx1aEdERDVjTVFINytuN0wxbE9TdWpyOS9EUW9Ja1VTdDJzMnhjbTBpbWozK2pHdzlKZGljamtQa3dwOWtPUUtCbEU4Y3g2Rk51NEhnTlZyRVh6NGhlVC9tN3lUVnF0ZEQ5YUQ2ck1zUzhpODh6Nk5QLzFsNGZ0UVN5WHN4RDBtUG5sTllseVRrb1RRYUhrODlQUkU5ZTArWHRnL0xZZ2FETHpwSHFQTTVacUpPUEsvRmdNRnZvbnBRQThsNk1BMUoxV3Axb2RXeTM5S2ZrTkxvOUo1NDQrMmprdTNIeGpRa3RldTJZRm1Pa0RMejhmSEh3S0h6SmFuTk5DUU5Hei9Cc2h3aGR1bjEzS3Z3OW1iL3ZCSFRrQVNITkdWWmpoQzc5UjNBL3JnSHBpSHg5Ni9Cc2h3aGR1dng3TXN3R05nZU1zczBKSjZldEU2TEtJLzFielJNUXlMM3dqTkNIaWFpMjFpbTlaaUdSTTVGWjRROFNwdjJBOEh6N002d1lScVNqUFJFbHVVSWNZaFdxME1saG8rSk13M0o5YXUvc2l4SGlNTjhmUU9ZMVdJYWt2Zy9vbG1XSThSaG5sN3NybkF4RFVsNmVnTExjb1E0VE1kd2VSVFRrT1JrcHlFNUtaWmxTVUlVeHpRa05wc05PN2N2WkZtU0VJZVlMU1ptdFpnL1QzTGxjalJLU29wWmx5WEVMc1ZGK2N4cU1RK0owVmlBVFYrL3pyb3NJWFlwWUhqUFRwS05JS0pQYklUUlNNZTJFV1dZVFNYSXpVbG5WaytTa0ZndEpzeVorYmpxTmtZbTd1SE02WjFNbDBoSmRsQkU3cDEwN051OVZLcnloRHpTVDk5L3pyU2VwS2VwN042eEdKZGl2cGV5QlNFUFNFdUxaMXBQOGlPSFZpd2JqTXUvL3lSMUcwSUFBQWYzcldSNlpRdVFlTVBzKzNoZWgzRVQxNkJEcDJGU3R5TGwzTXZqYTZLb01KZHBUVmtPcjdOYXpWaS9aZ0srL21JR3pPWVNPVnFTY21qdnJ2ZVpCd1NRNloza240SkR3akRpaGZmUnVHbG5PZHNTTjFlUW40WHBrK3RKY2tWVjlwQUE5L1p5YmRXbUg1N3BQUTExNjdXU3V6MXhNeWFURVcrOTNoNjNNNlI1bmttUmtQeFRjRWdZZWozM0ttclhlUnhWQW1zLzhxaHFRaDdHYWpGank4WjVPSHBvcldROUZBL0pQK24xWGdodjFnMTE2clZHdFdwMTRWM0JIelZEdytEdFhVbnAwWWdMc2xvdE9IUmdOYlp2bG1aVHV2dGNLaVFQTTI3U1duVHFNbExwTVlpTHNWck0yTE56Q2ZidGtmNkd0Y3YvYm5NcmxlMk5JYUorWnJNSnF6OFloa3NYajhyU3orVkRjalBwb3RJakVCZVNkTzA4bGk1K0RrVkZlYkwxZFBtUUpOMklVWG9FNGdMeThqTHg4WXBSdUpwd0dqYWJJR3R2Q1k2RFk4dHNOaUlvdURGcUJEZFdlaFRpb0xrelc4SmtNcUoyM1paMkhZOWdzd200Y080QTFxK2RnSzBiMzBSVzFrMG84UkhhNVQrNEEwRFQ4SzZZL2NaZXBjY2dEaHJ6dkE4QVFLdlZJNmhHUTRUV2JvN0dUVHNqTkxRWi9BT0NvZGQ3d1d3MklqYzNBK2xwVjNEMXlta2tKcHhCK3EwRUZCUmtLVHk5U2tLaTFlcXhkR1VzL0N2VGh0eHFZN1ZhTUc0aysrTVE1Q1RMMmkxbldTd21mTE5oaHRKakVBZVlUT3JmNzBBVklRR0FpeGVQSURYbHN0SmpFRHZkdlh0SDZSR2NwcHFRQ0JZTFBuaXZIejBTckRJNTJXbEtqK0EwMVlRRUFISnkwdkhaMmtteVh3SWtqa3R6ZzV2QnFnb0pBSnlLM29Mb0U1c2dDQlFVTmJnWWMxanBFWnltdXBBQXdPZWZUTWE1TTd2cEhjWEZHWTJGdUhqK2tOSmpPRTJWSVFHQU5hdkhZUC9lRDVVZWc1VGkzTm05YnZHRFRMVWhBWUNkVzkvQmtnVTlKZDBJcjZnd0Q3dTJMNUtzdmpzN2R2UXpwVWRnUXRVaEFlNmRpVEpyV2xQOGZHSVQ4OW9IOTYzQ3pHbGh5TSs5emJ5MnU0dU5PWXByaWU1eHFKUExMM0FzaTdzRjJmaDA3VVJFN1YrTlhuMW5vSDNISVU3Vk8vYjlGNGc2c0JxWkdkY0FBSjRHSHhaamxpdFNQd2dsSjdjSXlYMnBLWEZZOTlFNDdOanlEcHFHUjZCdGgwRm8xTGdUZUw3MFJYVm1jd25pTGgzRG1WTTc4SHZzRHcrc0Y3SXczTWEvUE5pM1p6bFNraThwUFFZemJoV1MrN0t6a25IaTJGYzRjZXdyOEx3T3dUV2JJQ0N3Rm54OXE4RER3d3NBVUZKU2lOemMyOGpLVE1LdHRQaFM5NDR0TE15UmEzU254SnlQUXZNV1BSV2RJZWw2RFBidFhxYm9ES3k1WlVqK3lXbzE0MmJTUmFjZTNycWprcnZHdTdZdlFsRmhubUtiQUJia1oyUFZCME5oTWhVcDBsOHFxdi9nTGdlMW5BV1psNU9CVDlkT1JPeEYrZmRmTGk0dXdMdVJYWkZ6NTVic3ZhVkdJU21EL054TXBLYjhvZlFZcGJxVG5ZcTh2TnV3MlFTc1dEb1lGMzZMa3ExM1FVRTI1c3hvZ2N6YjEyWHJLU2NLU1JtZFA3ZFA2UkZLOWNPUnYrOUoyQVFMVmkwZmdxajlxNW1lMC9ILzJXd0NVcExqTUhWQ0hlVGxaa2pXUjJrVWtqSTZmKzZBMGlPVTZ0Y3p1eDc0czYwYjUrR2RlVjFRWEZ6QXZKL1pYSUxkTzk3RFc2KzNBNkQrdStxbG9aQ1VVZEwxODhqT1NsRjZqSWZLemNuQW41bEpELzI3NUp1eG1EdzJHSnUvZVlOWnZ3dm5vekRweGVyNGJ0Y1NaalZkbVNvZTMzVVY0YzI2WSthY0IzOWlLMjMrM0U2NG1TUytxNHhlYjBDVHBsM3d3cmlWZGo4S1hXSXN4Szd0QzNIeStMZVM3Tnp1eWlna2R1QjVQWmF0dWdUL3lrRktqL0tYM056YmVQWGxSckRaeXY3WmcrTTQrUGdHSXFCS0NNTEN1NkpCb3c2b0h0UUFQcjRCNEhrdGlncnpjRHZ6T200a25rUE0rY05JVDcrQy9Oek1jbnRUbFVKaXA5RGF6ZkhPNHBOS2p3SGczaVlMczZlSDQwNTJxdEtqdURYNlRHS25temRpY2ZqQVIwcVBBUUE0dEg4MUJVUUdGQks3Q2RpK1pUNHkwcVU1QzZPc3JpYWN3Zll0N3JPSTBKWFJyMXNPMG1vOXNXelZSZmo1eS8vNTVGYmFGVVRPZVFJV2kxSDIzdVVSdlpNNHlHSXhZdDdzdHNpOGZVUFd2cWtwbC9GdVpGY0tpSXpvbmNSSlBLL0gzUGxScUZlL2plUzk0bjcvQ1N2ZUgxaHVyeklweGUxRDR1M3RoNkRnaHVqWWFUZ2FOdTRJLzhyQnNOa0VaR1VtNDNMY2Nadyt0UTNwdHhKUlhPVGN0ZjhSbzVmaHlhNWpvTk43TXByOGJ5WlRNUTd1VzRrOU94WXpyMDNFdVcxSURBWmZESDloQ1RvOU9VcjB0WUpneFpHb05kaTFiYUZUeTd3REFtdGg1dXU3VUxWYUhidDJUeTl0cnJUVWVIeXdwRDl5YzlLZHJrY2M0NVloZWJ4bEwweWZ0Y1docjMzN2pVNU9uNGxTclZvOXpKNjNENVVEZ2gydWtaR2VpQ1VMZWlMWGpSY09xb1hiaFdUWXlNWG8wWE1LTkJySHJra0lnb0R0bStjamF2OUtwMmN4ZVBtaVJjdmU2Tmw3R29KRG1vcSsvc2IxQzRqYXZ4cVhZbzdBYUN5QXplWlcvelNxNVZZaEdUaDBQdnIwbThXazFqY2JadUtISSt1WjFBSUFUMDh2ZUJvcVFxODNRS3ZWZytNMEVBUUxyQll6aktaQ0dJc0szR0lIZG5ma05pRnAzYllmSmsvN2tzbG5BZURla28vM0Z2UkVZc0pwSnZXSWVybkZmUks5M2hQUGoxckNMQ0FBd1BOYWpKKzBGcnhXejZ3bVVTZTNDTW5UdmFaSmNncFd0ZXIxMExiOVFPWjFpYnE0UlVqYWR4Z3NXZTJJYm1NbHEwM1VRZlVocVJ4UUUwSEJqU1NyWDc5aE8vaFdESlNzUG5GOXFnK0pISnV4MVcvUVR2SWV4SFdwUGlRaG9lR1M5Nmhhclk3a1BZanJVbjFJdkN2NFM5N0Q0T1VyZVEvaXVsUWZFck1NTitETTVoTEpleERYcGZxUTNKYmhlWTZjTzdTNHNEeFRmVWl1eFA4c2VZL2twRmpKZXhEWHBmcVF4TWRGbzFEQ2ZhRHljalBkNnF3TllqL1ZoOFJtc3lBdTlwaGs5YU5QYklRZ1dDV3JUMXlmNmtNQ0FOL3RmbCtTamFFdEZqT08vZkFGODdwRVhkd2lKS2twY1RqKzQ1Zk02KzdadVJoWmo5aGpsNVFmYmhFU0FOaXlhUjVTa3VPWTFVdE1PSU5EKzExakV6cWlMTGNKaWNsWWhCVkxCeUhyejJTbmE2WGZ1b29WU3dmVHRqMEVnQnM5ZEhXZmowOEFYbnR6SDJxR2hEbjA5ZGV2L1lZbEM1NTF1M1AvaU9QY0xpVEF2VjNUbiswekE3Mzd6WVNoakdld0Z4Ym1ZdHVtU0J6L2NZUEUweEcxY2N1UTNNZHhIRHBIak1Hd2tZdWcxeHZBY1pxL05vZ1FCQUUyd1lyQ3dseDgrOVZzblAxbHA4TFRFbGVsZUVnMEdpMmU2RElDN1RzT1JWQ05CakNialVoTU9JdWpoei9CdGF0bm1mVGdPQTQ4N3dHdFZndE9vNEZOc0FHd3dtS3h3R28xMDY0a3BGU0toY1RMdXhLbXpkaU1PdlZhUWYrSVhRL3YzczNCOTRmWFljK09SVEpQUjhqZkZBbEoyR05QWWZMVUwrQmR3YTlNcjArNkVZTWxDM3JDYUx3cjhXU0VQRWoya0lRMzY0NnBNelk5OHQzalVUTFNFekZ2ZG10Smoxd201R0ZrdlUvaTQxc0Y0eWQvWW5kQWdIczdsN3o2Mmc0SnBpS2tkTEtHWk9DUVNGUjBZbE9GeGsyN29IcFFBNFlURVNKT3RwRG9kSjVvMDc2L1V6VjRYb3RKVStrK0JwR1hiQ0Y1ckhrUGVIbFZkTHBPOWFBRzREaTNXVTFEVkVDMjc3YjZEZHN6cWNQek92Qzhsa2t0UXNwQ3RwQlVxbFNWU1IyZVo3ZmZMeUZsSVZ0SVdCMHJJQWlDKzY2aklTNUp0cEN3ZXRaREVDd0FMU01oTXBJdEpPZk83bVZTeDJ3dXVSY1VRbVFpVzBoeTdxVGhTdndwcCt0czIvUVdMVWdrc3BMMVd1cnU3YzR0Vk16UCt4UEh2cWVOR1lpOFpBMUovT1VUT0h6d1k0ZSsxbVF5WXVYeUlYRGp4MStJaStJQnZDMW53ei9panFOeVFFMjdkb00zbFJUamkvV3Y0TkxGb3hKT1JzakR5UjRTbTAzQStYTUhZVFRlUmQxNnJhSFRlWlQ2K3RTVXkxaXplZ3hpWXc3TE5DRWgvNmJvazRrR2d5LzY5SitOSm1FUkNLZ1NBb1BCQnpaQlFFRkJOakxTRTNIeStEYzRkWEtMa2lNU292emp1NFM0T2xvcFNJZ0lDZ2toSWlna2hJaWdrQkFpZ2tKQ2lBZ0tDU0VpS0NTRWlLQ1FFQ0tDUWtLSUNBb0pJU0lvSklTSW9KQVFJb0pDUW9nSUNna2hJaWdraElpZ2tCQWlna0pDaUFnS0NTRWlLQ1NFaUtDUUVDS0NRa0tJQ0FvSklTSW9KSVNJb0pBUUl1TC9BSkM5SVRxL2ZtRkdBQUFBQUVsRlRrU3VRbUNDXCJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDAsMSlcIlxuICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXG4gICAgICAgICAgICAgIC8qIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgaW1hZ2VSZW5kZXJpbmc6IFwib3B0aW1pemVTcGVlZFwiLFxuICAgICAgICAgICAgICB9fSAqL1xuICAgICAgICAgICAgICBoZWlnaHQ9ezF9XG4gICAgICAgICAgICAgIHdpZHRoPXsxfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICAgIDxnIGlkPVwiZzEwMFwiPlxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMDYpXCIgaWQ9XCJnMTAyXCI+XG4gICAgICAgICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDY4LjA0LDAsMCw2OC4wNCw3MTEuODQsNzE0LjYpXCIgaWQ9XCJnMTA4XCI+XG4gICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgaWQ9XCJpbWFnZTExNFwiXG4gICAgICAgICAgICAgIG1hc2s9XCJ1cmwoI21hc2sxMTApXCJcbiAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFMd0FBQUM4Q0FZQUFBRENTY1NyQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBQytKSlJFRlVlSnp0M1dsMFUzVWV4dkVuU1pPV0FxV2xSYXIxdEVLaFVLQnFSNVlaVkppRGlBc0t5cUt5Q0RJNEZFUlpYQUVWeFRNTU1xTTRqQjZCVWNFUkQ2aUk0bEpFSElvVlJWU3dDQlJLV1F1bFpiR1E3bTJTZXpNdjlBWGpRSm8wZDBueWV6N24rQ3IvM3Z0NzhTV21OL2YrYXdIZ0JaRVFWck1ISURJU2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENRS2d5ZFJHRHlKd3VCSkZBWlBvakI0RW9YQmt5Z01ua1JoOENSS2xOa0RFUGxpaFJYWHBnN0VnQ3NHbzB0U0Q4UTU0bEhucnNHQnMzdVJYN0lCbTQrdWgxdDErMzA4Q3dDdmZ1TVNOVjltMGxWNG9PZHNkRTdNdk9pYVV6VmxXUGpOTE96OStTZS9qc25nS2VTMGRzUmplcCtuY1YzcVFML1d1eFFYNXVWUHg0N3lyVTJ1WmZBVU1peXdZR0wyVE56WmRTeHNWbHRBUDF2bnJzUGtUKy9FNmJxVFB0ZnhsMVlLQ1RkMkdJcFZ3elpoUkxmeEFjY09BTEgyV0l5LzZxRW0xL0Vkbmt6VktTRVRNMzcvTERxMTdScjBzUlJWd2FpMUExRGxjbDUwRGEvU2tDbGk3YTB3NjlybmNjMmxmWnYxam40aE5xc05hZkhwMkgxNngwWFhNSGd5M0o5Lzl3Z0dkeHFKR0hzTHpZOGRGNTNnODNVR1Q0YnBsem9JRC9TY2pmZ1diWFU3aDZvcVBsOW44S1M3bEZhcGVQYVBMK1B5dUZSWUxQcGVKem5UeEZVYUJrKzZjVmhqTUxmL0ltUW45NEhOcW45cWRlNWFISGJ1OTdtR3daTXV4bVpOeHQzZDc0ZmRaamZzbkcvdWZCbXFWL1c1aHNHVHBucTB5OGFDRzE0ek5IUUFPRjFUam8rTDMyMXlIWU1uVGNSRngyUEpyZThqTWJhZDRlZDJLUzdNM0RnT2dPOTNkNERCVTVDaWJURjRvdThDOUUwZFlNcjVqMWNleGJRTm8xRHZxZk5yUFlPL0NMdlZqaWlySFJhTEZSYXpod21DNmxYaFVsMVFWSStteDQyeVJ1R1c5QkdZMm51MnBzZjFsNko2c0s1b0ZWNHJlREdnbjJQd3YzSkV4ZUNTMkdRTTZUd0tBOU52UjZ5OXBka2phVVpSRlh4MmNDMVc3bm9WbFkzbmdqeWFCUmx0dStHbFFTdGhzMm56RFdtZ3Fob3JNWGZ6VkJSVjdBNzRaOFhmU3hNZjNSYkRNdS9GOE14eGhsdzZNNU9xcWxpeWZTRStPZkJPczM2K2ZjdkxzR0RBTWx3V2w2cnhaUDd4ZWxYc09WMkEyWG1UNEdubS83SEVCcDhRazRoaG1lTXd2T3M0V0syeWJocDlyM0E1bHU5YzdQZjZOdEVKbUpnOUU0UFNoK280bFc5dXhZV1Z1NWJndmIzTGd6cU91T0RieFNaalpMY0p1SzN6WGVKQ1A5K2NUVG40OGVRMm4ydnNWZ2R1VHI4VGs2NTV6UERMak9jN1ZWT0dKL09tb0xUNmFOREhFaE44U3VzMDNOUDlmdHlZUHNUc1VVSkNpZk1RY25LSCtWeno1cEQxU0c2ZFl0QkUvMC8xcXRoNlBBL3p0endLcjBhWlJ2YUhWZ0FkNGpNd3BrY09ya3Z6NzNFeEtkTGkwOUVoUGdOSG5NVVhYYU5WWk0zaDhyand5Zy96c2ZId09rMlBHNUhCVzJCQmw4UXNqTW5LUWErVTY4d2VKMlQxdkxTdnorRDl2YmF0dGFQbkRtSlczaVE0R3lvMFAzWkVCVytCQlZlMjc0VXhXVG00c24xUHM4Y0plVW14eVQ1Zjl3U3cvWVZXUGlwYWpTVTdudGZ0K0JFUnZBVVc5RTdwaDFFOUpxRnJVZyt6eHdrYkRVcTl6OWR0RnVPdXM5ZTc2N0RnNnlmd2ZkbFh1cDRuN0lQdm4zWXpSblcvSDFja2REWjdsTEJ6b0tMUTUrc09XN1FoYyt3NnRSM1A1YzlFamJ0SzkzT0ZiZkMzZGhxR0VkMG00TExXNW53SkV1N3EzTFg0L3NRV24ydGFPZUowbjJONXdUL3cvcjYzb0hwOVA2bWtsYkFMZm5qWGNiaWo2MWkwYTluZTdGSEMycWJEbjhLbE5sNzA5Vmg3SzhSRngrdDIvblAxRlhqbXkya29QcnRIdDNOY1NGZ0ViN1ZZTWJwSERnWjNIb21FRm9sbWp4UDJ5cXFPNFY4L3Z1Qnp6YUNPUXpYYlRlQzN2aXI1SEl1L2V3NjE3aHBkanU5TFNBY2ZaWTNDaEt0bllGREhJV2dkM2Nic2NTTENxWm95UFBMRmZYQ3JMcC9yQm5hOFhmTnpxNnFLUmR2bUl1OUlMbFEvN2wzWFEwZ0dIMjJOd2VTZWo2TmYyazFvNldobDlqZ1JRVkVWZkxEdkxieTlleWthbFFhZmF6UGE5a0RIK0M2YW5yK3MramlleXB1Q3NwcmptaDQzVUNFVmZFdDdLenpVK3luMFNlbVBGdlpZczhkcGxoMWxXM0hnN0Y2enh3RHd5ejBqMVExT0ZKNHB3SW5xWTM1ZkJYbXcxeHhON3pQS0xWNkRaVHRlZ0V2MS9RL05DQ0VSZkd0SEd6ejZoNzhnTzdrUEhGSEdYQXJUeTdZVCtmaWt1SG0zMzRhQ0VabmprWkhVWFpOanVSVVg1dVhQd0k3eXJhYmVwbkErVTRPUGkwN0EzT3NYb1V0U2xxbDM0OUV2dWlSbStiVWhxVCtPT1EvajRZM2pEYm0ySGdoVGdvK1BTY1NDQVV1UjJpWmR0eXNCRkppVTFxbFllTVBybXJ6eHJDbGNnUlU3LzJuYUw2YStHQnA4MjVoMldIenoyMGlNdlFSV25YZWdJdjkxVGJ3U0w5eTRBbEcyNEhKbzlEVGdvYzlHNDFqVklZMG0wNTRod1NmRkp1TzEyejRNMjE5RUk5bUVxNmZoN3U0VGd6NU9pZk1nY25LSGF6Q1J2blFOUHExTko3eHl5MnJZYlE0OVQwTUJzbHFzeUV5NkNuOGRzQlRSVVRGQkhVdFZWYnhSOEJMV0ZyMmwwWFQ2MGp4NG16VUszWk95TVgvQXF3dzloRVJaN1lpMXQ4U1F6dmRnZEZhT0pwY2RxeHNyTWZIam9haHlCYnNUZ25FMGU4VFBibldnZDhyMWVLTHZnckMvdEJpTTRvcENsRmFWbUQwR0FNQmhzNk5OZENJeUVyc0YvVTcrVzd0T2JzZmptNEwvS0dTMG9JT1BpV3FCZnFrM1lXcXZPWWdXSExvVUxxVVJMMzc3TlBKTFBqZDdsR1pwOWtlYVZvNDRET3d3QkgvS25nNEhQN3FJVUY1ZGlpbTVJNXA4Y0NTVUJSeDhtK2dFRE80MEVxT3pKaUdLWHhhSnNmSFFPaXphTmcvK2JGZ2F5dndPUHJIRkpiaWp5eGdNeTd5WFh4WUpVdDFZaWZsYkhzUE9VOStaUFlvbW1ndyt1ZVhsR05GdFBHN0x1TXVJZVNpRTdEMjlFM1B6SDBTTnE5cnNVVFRUWlBEOTAyNWk3TUlvcWdlcjk3eU90M2N2UTdoL2hQa3RHNEJuZlMwb1BGTUF0K0pHOXFWOWpKbUlUSFc2dGh4UGI1Nkt2S081aU1STjZab01IbUQwVW54ekxBOVBicDZDOHBwU3MwZlJqVi9CQTR3K2tyazhqWGoxaCtmeCtzNUZUVDc2Ris3OERoNWc5SkhvZU9VUnpObzBDZHZMdnpaN0ZFTUVGRHpBNkNQSitnUHY0N2t0RCtOcy9SbXpSekZNd01FRGpEN2MxYnZyTUgvTFkxaGI5Ry9OLy9aVHFHdFc4QUNqRDFlSHp1N0hvMS9jaC8wR2I0QVVLb0s2UGZqZHZXOEFBQ1prVDlOa0dOS1BvbnF3dkdBeFBpeGFCUld5M3RYUEYvVDk4SXcrZExrOExoeHhGbVBEb1ErdzlmaG1WRGFlTlhzazAybnlBRWlrUlYvdnJrUFJ6N3V3NzlmL3p0U1dvMUZwaEV0cGdFdHhRL1Y2NEZiY1VLRkE5WG9OMndpVWdxZlpFMC9oR3YyNStncjg1L0FueUR1NkhzNkdDdFI3YXREZ01YL0RJTktIcG8vNGhVUDBkYTRhck51L0NwOGRYSXRLbHhNdVR5TWk4U3QwdWpETm4ya054ZWpQMVZkZzJZNi80OXZTelhBcGpTR3pDeFlaVDVkZEMwSWhla1gxNEowOWIyRFZubVZRK0JtYmZxWGJOaDFtUk8vMWVsSFpjQTVQNWszR0llZCt3ODVMNFVQWGZXbU1pbDcxcWlpck9vN3BHMGFqMW1QOEp2c1VQblRmZVV6djZFOVdsMkw2aHJHb0RLTzlVY2c4aG15MXAwZjB6b2F6bVBmbERPeXIrRW16WTFMa2EvYTlOSUhTNnQ0YmorTEcycUtWZUNwdkNzN1VuOVJvT3BMQ3NPQ0I0S00vVVZXQ0I5YmZoYTJsbXpTZWpLUXdOSGlnZWRHclhoVWY3VitOdVY5T1E3Mm5Wc2ZwS05JWkhqd1FXUFJWRFU0OGt6OE51UWZlQTc4UnBXQ1pFanpnWC9RbHpvT1kvdmtZbEZRZU5IQXlpbVNtQlEvNGp2NzdFMXN3SjI4eWF0MlJzd2tRbWMvVTRJRUxSNTlidkFZTHQ4NkI0bldiT0JsRkl0T0RCLzQzK2pXRks3RDB4NytCbjlkSkQ1cjlRUVF0ZEcrWGpjSXpCV2FQUVJFc3BJSW4waHYvZGlTSnd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSL2d1TnRhcjJNYUM2eFFBQUFBQkpSVTVFcmtKZ2dnPT1cIlxuICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXG4gICAgICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICAgICAgLyogc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXG4gICAgICAgICAgICAgIH19ICovXG4gICAgICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPGcgaWQ9XCJnMTE2XCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEyMilcIiBpZD1cImcxMThcIj5cbiAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJtYXRyaXgoNzMuNjgsMCwwLDczLjY4LDU5Ni40LDYwMi4xNilcIiBpZD1cImcxMjRcIj5cbiAgICAgICAgICAgIDxpbWFnZVxuICAgICAgICAgICAgICBpZD1cImltYWdlMTMwXCJcbiAgICAgICAgICAgICAgbWFzaz1cInVybCgjbWFzazEyNilcIlxuICAgICAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQU13QUFBRE1DQVlBQUFBL0lrenlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFHbGhKUkVGVWVKenQzVnR3Rk5lWkIvRC9PWDJabnBHNGc0VFFCUVRHUVdEQTJGZ1lTNENSQ0xiSjNSWEh1VmE4NjNXMmFyZVNxdVJoSC9acFh6ZVBXK1hOYnFxOGlWbkhXY2VPSGRzeDJOZ1N4b0RCWUM0R2JJRVJRa0pjeFIxSmMrbnUwMmNmRkJMQVhPWjA5MHozakw3ZlcrdzVQVi93L09udWMyVUFKQWdoZWVGUkYwQklLYUhBRUtLQUFrT0lBZ29NSVFvb01JUW9vTUFRb29BQ1E0Z0NDZ3doQ2lnd2hDaWd3QkNpZ0FKRGlBSUtEQ0VLS0RDRUtLREFFS0tBQWtPSUFnb01JUW9vTUlRb29NQVFvb0FDUTRnQ0Nnd2hDaWd3aENpZ3dCQ2lnQUpEaUFJS0RDRUtLRENFS0tEQUVLS0FBa09JQWdvTUlRcjBxQXNvRkFNNnB2SXFUT1ZWbU1Rbm9JSW5ZY0tFemtiK0x3c3BZTU5CMmt2amduY0pBOTQ1bkpSbmtKVzVpQ3NuY1ZZMmdkSEEwYWcxWUpZMkF6UDFCa3pWcXFFelRla2FudlF3SU03aHFPakhFYmNYUjBRdmJEZ0ZxcGlVSW9ZU1B1NkNBYWptVlZpb04yR0plUjhTUEJIcTlXM1B3VjduQUhZNys5SHZuUXoxMnFRMGxXeGdwckZxZk1WYWhSbEdmVkcrNzR4N0ZuL0t2bzErN3lSa2FmNlJrUkNVWEdBcWtjS1BrdDlHblRFdGt1Ky9KQzdqMStrWGNFVU9sdFlmSEFsRlNRVm1UYUlkTFlrSG9pNERBTEE3dHcrdjV0YlQzV2FVS1luQVZDQ0ZuMWI4UGNab2xWR1hjcDBoTVl6bjBpOWlRSjZQdWhSU0pMRVBUSk0yRzA4a3Z4cjZDMzFZY3A2TjlkbE83SFQzUmwwS0tZSllCNmJWYU1ZajFzUGdMTjdqcTBKNjJKTGJnUTMyKzFHWFFnb3N0b0ZwTjVlaHpXcUp1b3k4U1NteEpiY0RiOXNib3k2RkZGQXMvK3BlWVR4WVVtRUJBTVlZV2hQTldHMnVpTG9VVWtDeEcrbWZyemRobGJVODFHdDYwb01qSGJnUUFBQU5Ha3htaFA2b3h4akRDbXNwQkFRNjdhM1VnMWFHWWhXWWNSaUx4NjAxZ1gvSXJuUnh4UnRFcnppT2ZmWm42SmNudnpCSFRJZU9lbDZEK1VZVFp1a3pNSTZOZ2NHTlFOOTdWWnZWQ2s5S2JISzJ3WU1YeWpWSlBNVHFIZVpmSzMrR0NwN3kzZDZSTG5iYis3RXUxd0VYcmxKYkRvNlZ4a05vVFN5QkdWSndPcktiMFdsdkRlVmFKQjVpRTVnZldkL0dIUE11MysyMzVYWmhmYTRUNGkrUFhYNXhjTFNhemZoeVlua29qMnp2WnovRXUvWUhnYTlENGlFV2dabkVKdUFYWS83UlY5dUw0aEtlUy84ZUYrWGxVR3VxUkFXZVNqMkpHcjBxMEhXa2xOaWMrd2p2VUpkeldkQUEvRnUwQlhEOFU4VlRzTGlsM1BhQWZRaHJzeTlqU0E2SFhwY05CN3VkL1VqQlFwMWU0L3M2akRFMGFMVkl3RVMzNkEydlFCS0p5QU56dHpZVFN4TDNLYmZibWR1TFYzUHI0Q2krcTZqdzRPRnowUU5JaGthOXdmZDFHR09vMDZiQm90Q1V2RWdEbzRIanFkU1R5bmVYQS9ZaHZKcGJWN1FlcUtQaUdDQ0JtUUZEVTYvVndvQ0JJeFNha2hWcFlHWnBNN0EwY2I5U200dmlFdFptWHk3b25lVm1qb3BqNENIY2FScTBXbWpRMENQNlFxeU9GRXVrZ2ZtSzFZN0oyaVNsTnM4Ty82WWc3eXo1NkJISFlFZ2Q5ZG8wTU1aOFhZTXhoaGw2UFNBbCtzUUpHdHdzTVpGTmpSbUxNWmhqekZacXN5MjNLL1RlTUZYdjJPOWpXMjRYUEJuc2NiRGRXb1lWeGxJdytBc2VpVVprZ1psanpGTDZ2Q05kck05MUZxZ2FOZXZzRG55WSt6andkVllsbDZITkxLMDVjNk5kWklHWnJjOVUrdnh1ZTMvZ1Fja3dyYmM3c1NtN0xmQjEycXhXbXJCWlFpSUx6RXh0ZXQ2ZmRhV0xkYm1PQWxianp3WjdFenF6d2FlK0xFODhpRWZObFNGVVJBb3Rrc0RVOHFtd0ZGWlFYdkVHbGVlR0ZVdUh2UmtkMmMyQnJuRjFhY0JqRkpyWWl5WXcybFNsei9lSzR3V3FKQnlkOXRaUVF0T1NhS1k3VGN4RkVwZ3FQbG5wOC92c3p3cFVTWGc2N2EyQkg4OUdRdk1BV28zbWtLb2lZWXNrTUdQWm1Mdy82MGtQL2JJMGRwM3NzRGNIN2dqZ2pPTVI2MkUwYWY1bmJwUENpU1F3S1piTSs3T09kRXBxZy9BTjlpWnN5ZTRJTkU3REdjY1BLNzZOQ1d4OGlKV1JNRVFTR0pPWmVYL1dqVkZYY3I3VzI1MmhERzcrck9KcEdBaG5NUnNKUnlTQlVkMVZ2eFN0c3p1d0piY2owRFZNYnVDcmlWVWhWVVRDRUVsZ1ZHWlBhU2pkY0wxanY0K05BVHNDRmljV1lnYXZDNmtpRWxRa2dSRXkvekVWa3huUTQ3VlhoNUwzN00zb3lHNEpkSTF2V28rQngzTkhyRkVua3Y4S3Rzei9rQ0xPT09xNS94V1BjZEJwYndrMFRqTkZuNFJGK3J3UUt5SitSUktZdE13b2ZYNiswVlNnU29wblpKekcvNTFtZWVKQm10a2NBNUVFNW9vY1ZQcjhMSDFHWVFvcHNnNTdDN2JuZHZscU8xbWJoUGw2NmYvRlVlb2lDY3daY1U3cDgrUFltTEo1aG44cjE0R1Q3aGxmYlJjYkMwT3VocWlLNUZkNFhQRzhTSU1iV0drOFZLQnFpc3VEaC85T3I0WHRxUjgyMjZqWEk0WDhCMzFKK0NJSnpDbHZBRmxQYmZTK05iR2tiTzR5TGdUK2xGMnYzSTR6am9mTXhRV29pT1Fyc2wvZ0ViZFg2Zk1tTjlCcWxzK2t4RS9jejNCSnFDKzNucTAzRnFBYWtxL0lBbk5ZSEZWdTgrWEVjbFNpb2dEVlJLTWpwOTdWUElsUExFQWxKRitSQmVhUTA2M2Nock9SZmN5aUhzaE1JWW1KYkh6Z1dRaTczUU1ZOUlhVTJpUzVoV2xNYlQwUkNVOWt2N3dyR0VLWGZSaE5wdHJPTVRWNkZkWWsydkJtN3QyaWJsRmtRTWN5Y3dudU5lN0JKRzBDQUVCSWdXUHVDV3kxZDZKTEhQWjEzUlBpRk9ad3RUK0R1Y1pzbkxSUCsvbytFa3lrKzVLbFpRYUx6SHVVMjlYcE5ZQmtJenRTRnNGWVZvbW5VOS9EQW5NdVV2eHZ2VlNjY1V6UXhtR0JPUmNWU0k1c0s2dElnNGE1eHQxS2JaaGsyTzN1Vi80dUVseWszVTQ5NGhndWl5dSsyclpaTFdnelcwT3U2SXQwYVBoKzhsdW8wYXR2KzdrSEUvZmoyOVpYbFVmakQ3bEhsSmNCVlBMeWVZOHJOWkVHeG9PSDF6THEzYXRYdFZ1dFdHVXVDN0dpTDJvMkZxRmVyODNyczR2TWUvQ2s5VFdsNjZlUlVaNHFaSlR3Wk5SU0YvbkFSby9YaDJFdjdidjlTcXNGajVnUGgxZlFEUllaYW8rTTg4MjUrS0gxdUZJYjFSZC9iUlNzSjRxcnlBTWo0T0cvaHRjR3VrWnJvaGxyelBhUUtycGVOVmMvVUtuSnZCdmZzNzZaOStkdHFJMzZsOHNBYmltS3haLzhSWGtaKyswdTMrMDU0MWlhdUIrUG1XMGhWZ1dZTUtCeGYzOUU5NWh6OEIzcmEzbTkwNmoyOXRHYzVlakVJakFTRWk5bDM4Q3c4TDhyUDJjY3JWWnpxTnV1Mm5DVXAvQmNhNkU1RDQ5YmErNzRPVjF4M1Q3dDl4K2RXQVFHR0FuTmMrbmZ3L2JzUU5kWllTMUZlNGdkQWNmRWlVRHQ3elBuNC9IRTdVT1RZdm52QWdxQWpqS1BVR3dDQXdCbjVEbXN5M1ZDQk54dFphVExPWnhkOGJmYi90YXZYT3YreElKYmhvYURZeXpQZjU4MllHU3ZhUktOeU0rNHZORko3elFNR0ppdTFmbyt0QWdBWnVyVEFTbHhWUFFIcXVlOHZJZ0tKRkduVHd0MG5XbDZOU2F3Y1Rqb1hqOGxxSUhYNG9IRXZVclhHcFREMk83c0RsUVA4U2QyZ1FHQUk2SVhKa3cwaEJBYUZzS01nTTlGRHlheThhalJnaDFCWHFOVll4S2JnRS9kei8vNno1YVp6YWhYRE9OeGNRcWZ1UEhmUHJjY3hUSXdBTkF0ZXFGREh6bmVMb0JHdlFHNjFIQWs0Sm1TWGU1aFRHRVRVYTFOQ1hTZHFWb1ZxdGxrSEhBUEFnQWV0Vllxajl4dnorMVdYb1JId2hIYndBREFFZEVISmhIb0lGWUFtS0hYSXlGTmRQdFlVbkN0QSs0aFRHTlZtS0o0THVlTnFyVEptTWFxMEM5T1lyV2wzcXYzYW1ZZGJBVHJIQ0greERvd0FOQXIrdUY1RWpPTi9BOWd1cGs2clFaSldMN1c0Vnhybjl1RmFqWVpWWnJhQ1FRM21xSk53djNHUXVWZFFLK0lRWFE2d1E5eEl2N0VQakFBY013N0FTbTlrUmQ1bnhoanFOTnFZTUxBRWRFYnFKNEQ3a0ZNWWhNd05lQTdqWjh0YzQrTFU5ampIZ2owdmNTL2tnaU14RWh2bHlZNXBtdDFnWTc4bnE3WGdVdU9uaERlYWNhemNhalJiaitMT1d3YmMxdHh5aHNvNm5lU3Z5bUp3RnpWSS9wZ3dBamNlOWFvMXdNU2dYdlB1dHpER0kreG1IYUhxZjloU1hzWi9ESDc1Nkl1bkNQWEs2bkFBSC9yY3E3WHBnWHNjbTRJWlp5bVN4UXZOUHVkZzlkMVNaUGlLN25BQUNOZHpvblF4bWxDdU5PSXc1aFE0TWN6VDNyNFUvWnRERXExcFFBa1hDVVpHR0FrTk9FOG5qV2dBaWwwaTZPQkhuVU91dDJZR0VKSHdPMnV2OVhaV1pCcmsveVZiR0NBa2NjekRWcmd3YzA2dlFaenRMdXd4OWtQTDBCb1BuTS9ENlhMK1VhZTlQREh6RnU0UW5lWHlER1V3V3p4TnJNRjdWYndHY3EyNStCUDJmV0JwNTM4d0hvY2MwMjFqUzF1WjBkdUQxN1B2ZU83L1F4ZWowYTlIdFc4Q2hQNGVDUlpBaHdNdG5RdzZBM2hyTHlBNCtJVXV0MmpHSUwvSlJhalFWa0Vob05qaGJFVXE1TGhUT3UvSkM2akk3Y1p1MzJPZDB4ZzQvRFRpcWVSNFBtZjVYa3JydWZpbDBQUFloajVyZnRQd2tLTCtRRHVNZVlneFpKSU1ndWM1VDhwUGVmWnlNZ01Ccnh6MkdydlJIZkFNYXR5VXhhQkFRQUdoamF6QlcxV2VEdkpESHBET0NGTzQ0QnpFSWZjSTBqZjRrZkx3VkhQcDJHK01RY3o5ZW1CNTV0ZHk1TWUvcHg1RngrNWUyNzVHUTBhV28xbXpEZWFVS1ZOQ25YTi81QTNqT1B1U1hUbXR1S0VwTDNReWlZd1Y2MDJWNHdjUGhTZ0krQm1QT2toTFRNWTlJWmd3NEdFaEE0REtaYkFXRDRHT2l2Y1RpNmU5UEJXdGdQYm5ldlg1bGpNd2lxakZRdk5lZGZ0bDFZb0k1c1c3c0FCOTFEQnZ5dXV5aTR3QVBDb3VSS3RpZWJRUXhPbGEwTno5WTZ5TXZFUURGNzhZOGw3M1g1c3lMNlBQaS9ZYXRSU1ZKYUJBWURIekpWb0tjUFFiTXB0dzBKakhpWnE0eU92WmJ1OUN4dHltK0JnOUt3QUxkdkFBQ04zbXBaRU0zZ1poU1p1MGw0R3Z4NStBV2ZsK2FoTEtZcVNIb2U1azI3UkN3M0JKbXlTMnpPWWdRY1Q5K09FZXdybjVjV295eW00c2c0TThKZjltNzByeWh0K0V6VUx6WG5JZVRiNnkveTlwdXdEQTR3Y0VYalE2VWF6cWJiWkJGRnpsejRER2d6MGxQSFl6YWdJREFBTXlpSHN5TzNCREswTzQvallxTXNCTURJb0NhQnNIaGNaWTVpdTFjS0VXYllEbnFNbU1NRElUcFlmTy90d1hsekFUSzBCQml0K2x5d0FTQ214Mjk2UHRabVhjY203ak5uNnpMSUtUWU5XaTBTWmhtWlVCZWFxTTk1WmZHenZnNVRBVkQ2bG9JT08xNUpTb3NmdHd4OHpiMkdidXdzT0hKendUaU1qczVpdE41WlZhT3JMOUU1VDF0M0srYWhBQ2crWmk3SEFtRnV3c1EzSGMzRFk3Y1dIOWs0YzlXNis5dVpCNDM1OHhXcFhtdmVWci9QaUFrNkpBUXg0NTNEZXU0Z2hPUXhYQ2hoTVI0cWxNSVZQUkpVMkdUVzhPdFEvQXlrbFBzaHR4d1o3VTJqWGpOcW9EOHkxdnFUTndoTGpQa3pWcG1BTXJ3ejA0ODE1TnM1NTUzSFE3Y1kyZXhjeXlONnhUYnU1REcxV09GdmNwcjBNRGpyZCtNRGVyalJHVXMwbVkxbGlDV2JyTTBNNzZhd3p1d1dkOXRheVdGcE5nYm1GOFJpREJlWThmRW1iaGJHOEVpWXpvVU9IRHUwdmowNE1FaEtlRkhBaDRFZ0hXZVJ3UXB6R1Byc0wzWjdhZ2pRTkhEK3IrQWRNMXNJNVZ2eWNld0gva1g0T0FzSlhldzZPVmVaeVBHZ3VRb0tyYlpaK00rOWxObU9UczYza04xS253TVJFaS9FQTFpVERQUlJxV0tUeHkrRm40Zm9NelZVL1RUMk5hbTF5NEhlc2p1eG1kTnFsdmFmYXFIenBqeHNOR242Y2VpTDB6Z2VURzFpa3o4Y09aMCtndjlsM09uc2g0R0tXUGlOUVBUUDE2ZEJDMk9JcVNoU1lHRmhsTHNOZFJtTkJybTN4Qk9acXM3SEhPUUFSSURSOTRqak9pQUhNMDc4VTZFNHpYYXVERWNKbWlsR2h3TVRBRTlaWFEzbFB1SlZLWG9HN3RKazQ0SFlGZWp3NzY1M0hhVEdBZTR3NWdUWlRMT1Z4R2dwTXhPN1Q1Mk5SUXUya1pqL0c4a28wOG5vY2NBLzY3Z2dBZ0hQeVFpaWhxZE9td1NyQjBGQmdJdmExeEdxTTE0b3pWV2VjTmhhTnZCNmZpa09CN2pSaGhhWmVxeTI1eHpNS1RJUTRPTlpZYlVXYmFRQ01oR2FXMW9oOXpxZUIzbW5PeVFzNEtVNWp2dEVVK1BGTWcxWXlIUUVVbUFqTjErZGdvVG12Nk44N2xsZWlTWnVOWGM3K1FMMW41K1ZGOUlzVFdHQTArUjdrWll5TjdDc25KZnJFaWRnUGJzYnFVTmpSNWdGRGZibUI3VGw0SS9NT3BBejJ3NnJXcCtEbkZUK0JqbUE3ekhTTFh2eDIrQTl3WmJDeG5uWnJHVllZUzhFUTcvbDBGSmdJVGVUcTg3WjYzWDU4NU96Qkh6SnZCdjcrOGRwWS9FdkZQME1MR0pvZXJ3L1BENzhFTCtEcDE2dVN5MEk3L2JwUTZKRXNRdTJKWmNydkw2OW4zc0ZGZVFsbnZMTzRLQzZoU1o4ZGFGekU1QWJtYTAzWTVYd1M2UEhzb3J5TTQrSVVGZ1I0cHdIQ081TzBVQ2d3RWRHaG96MnhUT25ITmVRTjQ0M2Noci8rNzlQZUFLNTRRL2lTUGl2UWp6VEZrN2hibTRWOWJsZWdMdWNMOGlKT2lUT1lINkQzREJnWjNJenIwZ0FLVEVRYWVDMFdKeFlvdGVsemoyT3YrK2wxLyt5a2R3WnBMeDE0RWRvWVhvbEczaENiY1pwNmJSbzhlT2dUeDMzWFVnajBEaE9SYXE2K3cvOVo3OEpOLy9sSDdoNjhsZTBJL0E3UllOVGl4OG52SUlGZ2UwSjNpY040TWYxYW9IbzQ0MmhMdEdLZUZxL05TeWd3RWZHenI4QjU3OWJiR0cxM2RvVVNtdWxHSFo1S1Bna0R3Y2FHdXNSaC9DNzlhcUI2ZEtiaFc4bkhVSWx3MXVXRWdRSVRFWXRaeW0yRzVPMlBvdGp1N01LZk0rK0djcWY1WHZKYmdhNEJBQWRGTjlhbVh3bFVUNUluOFV6RkR3TFhFaFlLVEVUOFBOMjc4czVic243azdzSHJJWXpUek5ZYk1SWmpBbDBEQUE2TEh2eG0rUDhDamROTTFpWmlpYjRvY0MxaG9NQkVKQ2R0NVRaR25sM1FIN3VmNEpYTVc4clh2eFpuSEt1dEZZR3VjVldQZHd6UEQ3OEVFU0EwWDA4OWdpVFU3OHBobzhCRTVJb2NWRzVUeWZKL2x0L3JIc0JMNlRjQzNXa2F0V0JISVY2cnh6dUd0ZW1YQXoyZWZkMWFIVm85ZmxGZ0luTFdVOSs4ZXhLZm9QVDVmZTVuZUMyelBzQ1BOTnhwS3QyaUZ5K2svK2k3bmdYbVhFeGc0MEt0U1JVRkppTDk0cFJ5bXlsOGtuS2JYZTQrdkpuWjRPdEhldG9iVUc1eko0ZkVrVUJkemkxbWM4Z1ZxYUhBUkNTTExHeFA3VDJtUnF2MjlWMDczTDE0Sy91ZTBvL1VreDQyNWdxellVV1hPSXhYZmI1ak5adjNvaEtwa0N2S0h3VW1RbG5rbEQ1ZndWT1lyZmxiKzcvZDJhMDBUbk5Tbk1GeFQvMHVtSzg5N3Fmb3lHNVdicWN4RFhmcGhkbi9JQjhVbUFoZDhZYVUyenhrTHZiOWZTT0RtM2UrMDF3V1YvQy82VmQ4ZjArK050bmJjZEk5bzl4dXNiR3dBTlhraHdJVG9YM09aOHB0Wm1qMXNKai9EVE8yTzd2eHUvU3J1Q3l1Zk9IZkNlbWh6ejJPL3h4K0hrTzQvU0JwR0FRRVhzaW9CN1BSYUloczlKOG1YMGJvdERlQVplWVNwZFdLR3ROUXhTWmpuOXZsKzN2UHlRdlk2dXpFTVhka1l1T1FONFRQM0VQNFEvb05mT2g4REJ1TzcydXJ5c0hHUkRZZU5WcVZVcnNUN2lrTXlITUZxdXJXaXJlWW5IeUJBeGNENGp4cWRMVWZ5OTNHVENTeUNlUVUzNEZ1MUMxNll6R0YvdlhzMjFoZ05FRmorUzlrYTlCcnNWOGNMR0JWTjBlUFpCSHJjajlYYnFNeERiK28vQWw0bWZ6bmMrRGlrdmZGUjhUYm1hWk5MVkExdDFjZWYrSWxiTFA5a1hMM01qQ3lPZC8zcmVBVEpPUGlyZXg3U3ArdjVsTUtWTW50VVdBaVpzUEJaKzVoWDIyYnpObDR4SHc0M0lJaWNrZ2NVZnFMSThrdFZDQlp3SXB1amdJVEErL25Qb1R3T2ZLOTNIb1E3V1pyeUJWRkl5MHpTcCtQNHF4U0Nrd01uSlhuc2RjKzRMdDltOVVhKzkxVzhwR1JpZ081Q3BOUncwS0JpWW1OOWxaZjd6Slh0VnZMU3Y1T2MwNXhRbXFDQlZ0SzdRY0ZKaVl1eXN0NEovdCtvR3UwV2ExWVpTNFBwNkFJRENzK2t2RUlOdjJqd01USVIrNGVETGpCQnVOV1dnL2gwUkx0Q0hDazJvQnBGTWYvVVdCaVJFTGlmOUsvRDN5ZGxrUXoxcGpoSHY5WERDbW0xdXVWVlh6bkNRTUZKbVlHTVl4ZkRUMGY2QnFjY1N4TjNJODFabHRJVlJYSFJNVUZjb05lNGVlNzNZZ0NFMFBIdlZONE9mMW00SDI5V3F4bXJEYkRXWmRmREdNVWp6bS9KTlZtQjRTQkFoTlRlOTFQc1NtM0xmRHVMeXVzcFdnM2w0VlVWV0VsRmJhZUdoUkRnZWZTK1VHQmliSDM3TTNZa3RzUk9EUnRWa3ZzeDJsU1NDb0Y1clIzdG9EVjNCb0ZKdWJldGpkaWF3aWhhYmZpZlpURTZzUUtwV1VPeDMzc2lSQUdDa3dKV0c5dkRPVk9Neks0R2IvSE13Nk9oY1pjcFRiOTRrU0Jxcms5Q2t5SmVOdmVpQTl5MndOZnA4MXFpVjFIUUMycmdjbnpIN1VYMGtPZkY4MnUvclRpc29RY0VYMWdjdVRRb1NCbTZQV3dwSW5ENG1oSWxmbkh3Zkh6eW1lVUZvOTFPWWV4eC9VLzl5NEl1c09VbUU1N0s5N0xxTysyY3FPbGljV3hHTnhjb0RmQjRJWlNtOTNPdmdKVmMyY1VtQklqSWJISjJlWnJpNkpyWFIzY2pISWF6U1EyQWQ5S1BxYlV4dlZFcEVlVTB5TlpDWktRT0NyNm9VbU82VnBkb0pPK3B1dDE0SklYL1Vkb3dzUlRxU2N4VGxNN0llRGQ3QWZvOFk0VnFLbzdvOENVc0I3UkJ3TUdHclRhZ0FleDFvTko0S2dvemcrUmcrTzcxamZRYUtpL2k3MlNlYk9vdTlyY2lBSlQ0bzZJWHBnd1VhOU5DM3g2c1NrTjlJaGprQWpXZlgwN0JneDgxL29HNXBycVIvRnR5bTVIbC9DM25Ec3NGSmd5MEMxNmtZQVorRTR6WGE5REZadUVIcmNQRHU1OGVKT3FpWHc4ZnB4OEFyT01HY3B0WGMvRi8yWmVob2hnU3YrMUtEQmxvbHYwaHZKNFZxVk54bjNHZlBTNUp6QW8xYmV5dlJrR2hybmFiUHhkNm51WW9La2ZWK0ZKRHk5bVhzV1pDRGJ1dXhFRENuai9KVVgzWlhNNUhyWWVDdVZhWjl5emVDNzlJb2FodGhMeUtnYUdLallaejFUOEFFbnUvL1N3ays1cFBKdityZS8yWWFMQWxLRTJzd1h0VmpoVFlEenB3ZlpzYkxRL3hEWm5Gd1R1Zk95ZXhTeTBHUzFZYkM1RVFtRUUvMmFHdkdIOCs5Q3prYXl1dkJrS1RCbmk0RmhoTE1XcVpManp4b1FVU01zTXNqS0h5OTRnaHVRUXNsNE9TWjdFZURZR0Zid0NTV1loeVN5bGlaUzM0a29YdnhwYWk5TXkvSU9kL0tMQWxDa0doamF6QlcxVzZlNGs4M0w2VGV4MVA0MjZqT3ZRU0grWmtwRG9zTGRnVXpiNElyUW9yTXQweEM0c0FBV203RzJ3TjJGTGJrZWc1YzdGdGk3VGdhM096cWpMdUNsNkpCc2xWcGhMMFpab2hhNHdLN2pZWE9uaXRjejZXTjVacnFMQWpDTHp0THZ4emVSalNQSGliK0o5SjBQZU1INDcvQkpPeGVnRi8yWW9NS05NSlNyd1RPb0htS3hQakxvVUFDUGQxcWZGQUg2VlhodWJydVBib2NDTVVzMzZJbndqOVVpa05iaWVpeGN6citHUU9CSnBIU29vTUtOWUVoYSticTNHQWxOdFBYMFkzczl1eHlaN2E2UXpqLzJnd0JCTVlPUFFZamFqMmJ4WGFhbXdLdGNUNk1odHhtNW5mMUZPYVM0RUNnejVxd3FrY0pmZWlBZU1oYjdXcXR5TWtCNE9PZDNZNWV4RGorZ3J1VHZLalNndzVLWXFVWUZHclI3MWVpMXF0YW1vNWxQeW1rQTVLSVp3Mmp1TDQrSWsrc1ZKOUlwKzVPRC8zSnU0b2NDUXZGVWdpWEY4TENwWUNnbVdBQU9ESndWeXNESG9EZU9TdkJMSjlxM0ZSSUVoUkFGTmpTRkVBUVdHRUFVVUdFSVVVR0FJVVVDQklVUUJCWVlRQlJRWVFoUlFZQWhSUUlFaFJBRUZoaEFGRkJoQ0ZGQmdDRkZBZ1NGRUFRV0dFQVVVR0VJVVVHQUlVVUNCSVVRQkJZWVFCUlFZUWhSUVlBaFJRSUVoUkFFRmhoQUZGQmhDRkZCZ0NGRkFnU0ZFQVFXR0VBVVVHRUlVL0Q5aHVTQTZDbFBaUWdBQUFBQkpSVTVFcmtKZ2dnPT1cIlxuICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXG4gICAgICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICAgICAgLyogc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXG4gICAgICAgICAgICAgIH19ICovXG4gICAgICAgICAgICAgIGhlaWdodD17MX1cbiAgICAgICAgICAgICAgd2lkdGg9ezF9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPGcgaWQ9XCJnMTMyXCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEzOClcIiBpZD1cImcxMzRcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgaWQ9XCJwYXRoMTY4XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZpbGw6IFwidXJsKCNsaW5lYXJHcmFkaWVudDE2NilcIixcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkPVwibSA5MzUuMjYsNzExLjA3IGMgMzkuMTUsMC4zNiA3MS4wNywtMzEuNjcgNzEuMjksLTcxLjUyIDAuMiwtMzMuNDUgLTIyLjIxLC02Mi43MSAtNTQuMTMsLTcwLjcxIGwgLTAuODQsLTExLjcyIC0yMC43NiwxMy42NiAyMy4wMiwxNy45MiAtMC44NCwtMTEuNjkgYyAzMy41NCw5Ljg4IDUyLjk3LDQ1LjYgNDMuNCw3OS43OSAtNy43OCwyNy43OCAtMzIuNzYsNDYuODEgLTYxLjEsNDYuNTQgelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPGcgaWQ9XCJnMTcwXCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE3NilcIiBpZD1cImcxNzJcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgaWQ9XCJwYXRoMjA2XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZpbGw6IFwidXJsKCNsaW5lYXJHcmFkaWVudDIwNClcIixcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkPVwibSA0MzkuNDMsODIyLjggYyAtMzkuMTQsMC4zIC03MS4wNiwtMzEuNTYgLTcxLjI5LC03MS4xNiAtMC4xOSwtMzMuMjggMjIuMjcsLTYyLjM2IDU0LjIzLC03MC4yMyBsIDAuODQsLTExLjczIDIwLjY0LDEzLjcyIC0yMi44OSwxNy44NiAwLjgzLC0xMS43IGMgLTMzLjU1LDkuNzIgLTUzLjA0LDQ1LjE0IC00My41Miw3OS4xMSA3Ljc0LDI3LjY1IDMyLjc0LDQ2LjYzIDYxLjEyLDQ2LjQgelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9nPlxuICAgICAgPGcgaWQ9XCJnMjA4XCI+XG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIxNClcIiBpZD1cImcyMTBcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgaWQ9XCJwYXRoMjQ0XCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZpbGw6IFwidXJsKCNsaW5lYXJHcmFkaWVudDI0MilcIixcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkPVwibSA5MzYuNjQsOTMzLjc2IGMgMzkuMTQsMC4zNSA3MS4wNiwtMzEuNjcgNzEuMjksLTcxLjUyIDAuMTksLTMzLjQ1IC0yMi4yMSwtNjIuNzEgLTU0LjEzLC03MC43MSBsIC0wLjg0LC0xMS43MiAtMjAuNzcsMTMuNjUgMjMuMDIsMTcuOTMgLTAuODMsLTExLjY5IGMgMzMuNTQsOS44OCA1Mi45Nyw0NS42IDQzLjQsNzkuNzkgLTcuNzgsMjcuNzggLTMyLjc2LDQ2LjgxIC02MS4xLDQ2LjU0IHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvZz5cbiAgICA8L2c+XG4gIDwvc3ZnPlxuKTtcblxuIiwgImltcG9ydCB7IEJ1dHRvbk9uZSwgQnV0dG9uT25lV2l0aFNjcm9sbCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IEg0LCBINSB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgeyBIUFRpbWVsaW5lIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvSFAtdGltZWxpbmVcIjtcbmltcG9ydCB7ICBMb3JlbVNob3J0IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvTG9yZW1pcHN1bVwiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvcHJlY3lzZVwiO1xuaW1wb3J0IHsgU2VjdGlvbiwgU3ViZXNjdGlvbiB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3NlY3Rpb25zXCI7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XG5pbXBvcnQgeyBIUGNvbmNsdXNpb24gfSBmcm9tIFwiLi9Db25jbGlzdWluXCI7XG5pbXBvcnQgeyBIUEZlZWRiYWNrIH0gZnJvbSBcIi4vRmVlZGJhY2tcIjsgICAgXG5pbXBvcnQgIHsgSFAzbmV3IH0gZnJvbSBcIi4vSFAgc3Zncy9ocDNcIjtcbmltcG9ydCB7V2hvbGVNZW5kZWxvd30gZnJvbSBcIi4vSFAgc3Zncy9tZW5kZWxvd3NcIjtcbmltcG9ydCB7IFN0YWtlaG9sZGVyTWFuYWdlbWVudCB9IGZyb20gXCIuL0hQIHN2Z3Mvc3Rha2Vob2xkZXItbWFuYWdlbWVudFwiO1xuaW1wb3J0IHsgU1dPVG9uZSB9IGZyb20gXCIuL0hQIHN2Z3Mvc3dvdHNcIjtcbmltcG9ydCB7IEhQVW5kZXJzdGFuZGluZyB9IGZyb20gXCIuL0hQIHN2Z3MvdW5kZXJzdGFuZGluZ1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gSFBJbnRlZ3JhdGVkKCl7XG4gICAgY29uc3QgeyBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xuXG4gICAgcmV0dXJuKFxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzXCIgaWQ9XCJJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlc1wiPlxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJGcmFtZXdvcmtcIiBpZD1cIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzMVwiPlxuICAgICAgICAgICAgICAgIDxwPk91ciB0ZWFtIGhhcyBkZWZpbmVkIGEgZnJhbWV3b3JrIGZvciBtYW5hZ2luZyBpbnRlcmFjdGlvbnMgd2l0aCBzdGFrZWhvbGRlcnMgZHVyaW5nIGVhY2ggc3RlcCBvZiB0aGUgcHJvamVjdDpcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPG9sPlxuICA8bGk+IDxiPlN0YWtlaG9sZGVyIE1hbmFnZW1lbnQgRnJhbWV3b3JrIDwvYj4tIFRvIGlkZW50aWZ5IHN0YWtlaG9sZGVycyBhbmQgZGVmaW5lIGhvdyBwb3RlbnRpYWwgc3Rha2Vob2xkZXJzIGZpdCBvdXIgcHJvamVjdC48L2xpPlxuICA8bGk+PGI+UG93ZXItSW50ZXJlc3QgTWF0cml4IDwvYj4tIEFjY29yZGluZyB0byBNZW5kZWxvdyB0byBpZGVudGlmeSBhbmQgZXZhbHVhdGUgdGhlIHByaW9yaXRpZXMgb2YgcG90ZW50aWFsIHN0YWtlaG9sZGVycy48L2xpPlxuICA8bGk+PGI+U1dPVCBhbmFseXNpczwvYj4gLSBBc3Nlc3NtZW50IG9mIHRoZSBzdHJlbmd0aHMsIHdlYWtuZXNzZXMsIG9wcG9ydHVuaXRpZXMgYW5kIHRocmVhdHMgb2YgdGhlIHZhcmlvdXMgZ3JvdXBzIHByZXZpb3VzbHkgaWRlbnRpZmllZCBhcyBwb3RlbnRpYWwgc3Rha2Vob2xkZXJzLjwvbGk+XG4gIDxsaT48Yj5BUkVBIEZyYW1ld29yazwvYj4gLSBUbyBzdHJ1Y3R1cmUgYW5kIG9wdGltaXplIHByb2plY3QtcmVsYXRlZCBkZWNpc2lvbnMuPC9saT5cbiAgPGxpPjxiPkZlZWRiYWNrLUN5Y2xlPC9iPiAtIFRvIHN0cnVjdHVyZSBpbnRlcmFjdGlvbnMgd2l0aCBzdGFrZWhvbGRlcnMgZm9yIGVmZmljaWVudCBhbmQgaW5mb3JtYXRpdmUgZGVzaWduIGFuZCBtYXhpbWl6YXRpb24gb2YgcG90ZW50aWFsLjwvbGk+XG4gIDxsaT48Yj5UaGlyZC1QYXJ0eSBGZWVkYmFjayBUZW1wbGF0ZXMgPC9iPi0gVG8gaW50cm9kdWNlIHRoZSBzdGFrZWhvbGRlcnMsIHN1bW1hcml6ZSB0aGUgaW50ZXJhY3Rpb25zIGFuZCBpbXBsZW1lbnQgdGhlIG91dHB1dCBpbiBvdXIgcHJvamVjdC48L2xpPlxuICA8bGk+PGI+Q3ljbGUgb2YgUmVmbGVjdGlvbjwvYj4gLSBBY2NvcmRpbmcgdG8gR2liYnMgZGVtb25zdHJhdGUgdGhlIHJlc3BvbnNlIGFuZCBpbXBsZW1lbnRhdGlvbiBhcyBhIHBhcnQgb2Ygb3VyIGZlZWRiYWNrIGN5Y2xlLjwvbGk+XG48L29sPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiNXZoXCIsIG1hcmdpbkJvdHRvbTogXCI1dmhcIn19PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHRleHQ9XCJTdGFrZWhvbGRlciBNYW5hZ2VtZW50XCIgc2Nyb2xsSWQ9XCJzdGFrZUhcIiBvcGVuPVwic3Rha2VtYW1hbmdlXCIgb3BlbmNsYXNzPVwiZnJhbWVjeWNsZXRhYlwiPjwvQnV0dG9uT25lV2l0aFNjcm9sbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCB0ZXh0PVwiTWVuZGVsb3cgQW5hbHlzaXNcIiBvcGVuPVwibWVuZGVsb3dcIiAgc2Nyb2xsSWQ9XCJtZW5kZWxvd0hcIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHRleHQ9XCJTV09UIGFuYWx5c2lzXCIgc2Nyb2xsSWQ9XCJzd290SFwiIG9wZW49XCJzd290XCIgb3BlbmNsYXNzPVwiZnJhbWVjeWNsZXRhYlwiPjwvQnV0dG9uT25lV2l0aFNjcm9sbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9e3ttYXJnaW5Cb3R0b206IFwiNXZoXCJ9fT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBzY3JvbGxJZD1cImFyZWFIXCIgdGV4dD1cIkZlZWRiYWNrIEN5Y2xlXCIgb3Blbj1cImFyZWFcIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHNjcm9sbElkPVwidGhpcmRIXCIgdGV4dD1cIlRoaXJkIFBhcnR5IEZlZWRiYWNrXCIgb3Blbj1cInRoaXJkcGFydHlcIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHNjcm9sbElkPVwiZmVlZEhcIiB0ZXh0PVwiQ3ljbGUgb2YgUmVmbGVjdGlvblwiIG9wZW49XCJmZWVkY3ljbGVcIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHNjcm9sbElkPVwiZ2lic29uSFwiIHRleHQ9XCJHaWJicycgQ3ljbGVcIiBvcGVuPVwiZ2lic29uXCIgb3BlbmNsYXNzPVwiZnJhbWVjeWNsZXRhYlwiPjwvQnV0dG9uT25lV2l0aFNjcm9sbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZnJhbWVjeWNsZXRhYlwiIGlkPVwic3Rha2VtYW1hbmdlXCIgc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cbiAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPFN0YWtlaG9sZGVyTWFuYWdlbWVudC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+ICBcbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlN0YWtlaG9sZGVyIE1hbmFnZW1lbnQgRnJhbWV3b3JrXCIgaWQ9XCJzdGFrZUhcIi8+XG4gICAgICAgICAgICAgICAgPHA+VG8gY2xlYXJseSBjb21tdW5pY2F0ZSB0byBvdXIgc3Rha2Vob2xkZXJzIGhvdyB0aGV5IGNhbiBzdXBwb3J0IHRoZSA8UHJlQ3lzZS8+IHByb2plY3QgYW5kIHRoZSBzcGVjaWZpYyBhcmVhcyByZXF1aXJpbmcgXG4gICAgICAgICAgICAgICAgICAgIHRoZWlyIGlucHV0LCB3ZSBkZXZlbG9wZWQgYSBzdGFrZWhvbGRlciBtYW5hZ2VtZW50IGZyYW1ld29yayBoaWdobGlnaHRpbmcgZm91ciBrZXkgYXJlYXMuIFN0YXJ0aW5nIGF0IHRoZSBib3R0b20gcmlnaHQgb2YgdGhlIFxuICAgICAgICAgICAgICAgICAgICBmaWd1cmUgYW5kIG1vdmluZyBjbG9ja3dpc2UsIHRoZSBmaXJzdCBhcmVhIG5lZWRpbmcgZmVlZGJhY2sgaXMgPGI+aW1wbGVtZW50YXRpb248L2I+LiBJdCBpcyBjcnVjaWFsIGZvciBvdXIgdGVhbSB0byBlbnN1cmUgdGhhdCB0aGUgcHJvamVjdCBcbiAgICAgICAgICAgICAgICAgICAgaGFzIGFsbCBuZWNlc3NhcnkgY29tcG9uZW50cyBmb3IgcmVhbGlzdGljIGFwcGxpY2F0aW9uIGluIGhlYWx0aGNhcmUgc2V0dGluZ3MsIGZvY3VzaW5nIG9uIHRoZSBnZW5lIHRoZXJhcHkgdHJlYXRtZW50IGZvciBjeXN0aWMgZmlicm9zaXMuXG4gICAgICAgICAgICAgICAgICAgICBUaGlzIGluY2x1ZGVzIGJvdGggdGhlIHRlY2huaWNhbCBkZXNpZ24gYW5kIHRoZSBhcHByb3ByaWF0ZSBidXNpbmVzcyBtb2RlbCB0byBlbnN1cmUgc3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbi5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+VGhlIHNlY29uZCBrZXkgYXJlYSBpcyA8Yj5zdXN0YWluYWJpbGl0eSBhbmQgc29jaWFsIGltcGFjdC48L2I+IFdlIHNlZWsgdG8gdW5kZXJzdGFuZCBob3cgb3VyIHByb2plY3QgYWxpZ25zIHdpdGggY3VycmVudCBoZWFsdGhjYXJlIGluaXRpYXRpdmVzIGFuZCBmYWNpbGl0aWVzIGluIEdlcm1hbnkgYW5kIEV1cm9wZSwgYnV0IGFsc28gaW4gdGhlIGdsb2JhbGx5LCBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIHNvY2lhbCBlZmZvcnRzIHJlbGF0ZWQgdG8gQ0YgYXdhcmVuZXNzIGFuZCBnZW5lIHRoZXJhcHkgc3RyYXRlZ2llcy5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+TmV4dCwgd2Ugd2FudCB0byBzaGFwZSB0aGUgPGI+cHVibGljIHBlcmNlcHRpb248L2I+IG9mIG91ciBwcm9qZWN0LCB3aGljaCBpcyBiYXNlZCBvbiBzeW50aGV0aWMgYmlvbG9neSB0byB0YWNrbGUgYSBtYWpvciBoZWFsdGhjYXJlIGNoYWxsZW5nZS4gV2UgYXNrIHN0YWtlaG9sZGVycyBhYm91dCB0aGVpciBrbm93bGVkZ2UgYW5kIG9waW5pb25zIG9uIG91ciBnZW5lIHRoZXJhcGV1dGljIGFwcHJvYWNoIGFuZCBpdHMgcG90ZW50aWFsIGFwcGxpY2F0aW9uIHRvIGltcHJvdmUgQ0YgdHJlYXRtZW50cy5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+VGhlIGZpbmFsIGFyZWEgaW52b2x2ZXMgPGI+cmVndWxhdG9yeSBhbmQgc2FmZXR5IGNvbnNpZGVyYXRpb25zPC9iPi4gR2l2ZW4gdGhlIHN0cmluZ2VudCByZWd1bGF0aW9ucyBnb3Zlcm5pbmcgaGVhbHRoY2FyZSBpbiBHZXJtYW55LCB3aGljaCB2YXJ5IGJ5IG11bmljaXBhbGl0eSwgaXQgaXMgZXNzZW50aWFsIHRvIGNvbnN1bHQgd2l0aCBzdGFrZWhvbGRlcnMgZmFtaWxpYXIgd2l0aCB0aGVzZSByZWd1bGF0aW9ucyB0byBlbnN1cmUgb3VyIHByb2plY3QgY29tcGxpZXMgd2l0aCBhbGwgbmVjZXNzYXJ5IHNhZmV0eSBzdGFuZGFyZHMuXG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJtZW5kZWxvd1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlBvd2VyLUludGVyZXN0IE1hdHJpeCBhY2NvcmRpbmcgdG8gTWVuZGVsb3dcIiBpZD1cIm1lbmRlbG93SFwiLz5cbiAgICAgICAgICAgICAgICA8cD5Vc2luZyB0aGUgTWVuZGVsb3cgUG93ZXItSW50ZXJlc3QgTWF0cml4LCB3ZSBjbGFzc2lmaWVkIHRoZSBwb3RlbnRpYWwgc3Rha2Vob2xkZXJzIGFzc29jaWF0ZWQgd2l0aCBvdXIgcHJvamVjdCBpbiB0ZXJtcyBvZiB0aGVpciBwb3dlciAodGhlIGFiaWxpdHkgdG8gcHJvdmlkZSBpbXBvcnRhbnQgZmVlZGJhY2sgb24gb3VyIHByb2plY3QgZGVzaWduIGFuZCBpbmZsdWVuY2Ugb3VyIHByb2plY3QgZGV2ZWxvcG1lbnQpIGFuZCBpbnRlcmVzdCBpbiBvdXIgcHJvamVjdC4gVGhlIG1hdHJpeCBjb25zaXN0cyBvZiBmb3VyIHF1YWRyYW50cyBhcnJhbmdlZCBpbiBkZXNjZW5kaW5nIG9yZGVyIGFjY29yZGluZyB0byB0aGVpciBwcmlvcml0eSBsZXZlbCBpbiB0aGUgcHJvamVjdDpcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgIDxsaT5IaWdoIFBvd2VyLCBIaWdoIEludGVyZXN0IChLZXkgUGxheWVycyk8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5IaWdoIFBvd2VyLCBMb3cgSW50ZXJlc3QgKEtlZXAgU2F0aXNmaWVkKTwvbGk+XG4gICAgICAgICAgICAgICAgPGxpPkxvdyBQb3dlciwgSGlnaCBJbnRlcmVzdCAoS2VlcCBJbmZvcm1lZCk8L2xpPlxuICAgICAgICAgICAgICAgIDxsaT5Mb3cgUG93ZXIsIExvdyBJbnRlcmVzdCAoTWluaW1hbCBFZmZvcnQpPC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgIDxwPlRoaXMgY2F0ZWdvcml6YXRpb24gaGVscHMgdG8gZGV2ZWxvcCBhcHByb3ByaWF0ZSBjb21tdW5pY2F0aW9uIGFuZCBtYW5hZ2VtZW50IHN0cmF0ZWdpZXMgZm9yIHRoZSBkaWZmZXJlbnQgc3Rha2Vob2xkZXIgZ3JvdXBzIGFuZCB0byBlbnN1cmUgdGhhdCB0aGVpciBuZWVkcyBhbmQgaW5mbHVlbmNlcyBhcmUgY29uc2lkZXJlZCBkdXJpbmcgdGhlIHByb2plY3QuXG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxXaG9sZU1lbmRlbG93Lz5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJtZW5kZWxvdy1vbmVcIiwgc2Nyb2xsVG9JZDogXCJrZXlwbGF5ZXJzSFwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9tZW5kZWxvdy0xLWFrdHVlbGwuc3ZnXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwibWVuZGVsb3ctdHdvXCIsIHNjcm9sbFRvSWQ6IFwia2VlcEhcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbWVuZGVsb3ctMi5zdmdcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcIm1lbmRlbG93LXRocmVlXCIsIHNjcm9sbFRvSWQ6IFwiaW5mb3JtZWRIXCIgfSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL21lbmRlbG93LTMtMS5zdmdcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcIm1lbmRlbG93LWZvdXJcIiwgc2Nyb2xsVG9JZDogXCJtaW5pbWFsSFwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9tZW5kZWxvdy00LnN2Z1wiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgey8qIFRBQlMgKi99XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtZW5kZWxvd3RhYlwiIGlkPVwibWVuZGVsb3ctb25lXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIktleSBQbGF5ZXJzXCIgaWQ9XCJrZXlwbGF5ZXJzSFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJIaWdoIFBvd2VyLCBIaWdoIEludGVyZXN0IC0gUHJpb3JpdHkgTGV2ZWwgNFwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2Ugc3VwcG9ydCBhbmQgZXh0ZW5zaXZlIGZlZWRiYWNrIGFyZSBuZWNlc3NhcnkgdG8gc3VjY2Vzc2Z1bGx5IGltcGxlbWVudCBQcmVDeXNlLiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBncm91cHMgaW5jbHVkZSBleHBlcnRzIGFuZCBwaHlzaWNpYW5zIHdpdGggZXhwZXJ0aXNlIGluIGdlbmUgdGhlcmFweSBhbmQgdHJlYXRtZW50IFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RyYXRlZ2llcyBmb3IgY3lzdGljIGZpYnJvc2lzLiBUaGUgcHJvamVjdCBoYXMgYSByZWFzb25hYmxlLCByZXNwb25zaWJsZSwgYW5kIGZ1dHVyZS1vcmllbnRlZCBcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25pZmljYW5jZSBmb3IgdGhlIHdvcmxkLiBGdXJ0aGVybW9yZSwgc2NpZW50aWZpYy10ZWNobm9sb2dpY2FsIGtub3dsZWRnZSBhbmQgYmlvc2FmZXR5IGFyZSBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNydWNpYWwuIENvbGxhYm9yYXRpb24gd2l0aCBzcGVjaWFsaXN0cyBpbiB0aGUgZmllbGQgb2YgZ2VuZSB0aGVyYXB5LCBjeXN0aWMgZmlicm9zaXMsIGFuZCBkaWZmZXJlbnQgXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmVhdG1lbnQgc3RyYXRlZ2llcyBlbnN1cmVzIHRoZSBxdWFsaXR5IGFuZCBlZmZlY3RpdmVuZXNzIG9mIHRoZSBzb2x1dGlvbnMgZGV2ZWxvcGVkLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5TY2llbnRpZmljIGNvbW11bml0eSBhbmQgcmVzZWFyY2ggaW5zdGl0dXRpb25zPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyBncm91cCBpbmNsdWRlcyByZXNlYXJjaGVycywgc2NpZW50aXN0cywgYW5kIHJlc2VhcmNoIGluc3RpdHV0aW9ucyBzcGVjaWFsaXppbmcgaW4gZ2VuZSBlZGl0aW5nIFxuICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGdlbmUgdGhlcmFweS4gVGhleSBoYXZlIGEgaGlnaCBpbnRlcmVzdCBpbiB0aGUgc3VjY2VzcyBvZiBwcmltZSBlZGl0aW5nIHRlY2hub2xvZ3kgYW5kIGhhdmUgXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGUgcG93ZXIgdG8gc2lnbmlmaWNhbnRseSBpbmZsdWVuY2UgdGhlIHByb2plY3QsIGJlIGl0IHRocm91Z2ggY29sbGFib3JhdGlvbnMsIHNjaWVudGlmaWMgc3VwcG9ydCwgXG4gICAgICAgICAgICAgICAgICAgICAgICBvciBjcml0aWNhbCByZXZpZXdzIG9mIHRoZSByZXNlYXJjaCByZXN1bHRzLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5SZWd1bGF0b3J5IGF1dGhvcml0aWVzIChlLmcuIEZEQSwgRU1BKTwvYj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFJlZ3VsYXRvcnkgYWdlbmNpZXMgaGF2ZSBib3RoIHRoZSBwb3dlciBhbmQgdGhlIGludGVyZXN0IHRvIGVuc3VyZSB0aGF0IGdlbmUgdGhlcmFweSBpcyBzYWZlIGFuZCBcbiAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdGl2ZS4gVGhleSBhcmUgY3J1Y2lhbCBmb3IgdGhlIGFwcHJvdmFsIGFuZCBhdXRob3JpemF0aW9uIG9mIHRoZSB0aGVyYXB5IGZvciBjbGluaWNhbCB1c2UuXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG5cblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWVuZGVsb3d0YWJcIiBpZD1cIm1lbmRlbG93LXR3b1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCIgS2VlcCBTYXRpc2ZpZWRcIiBpZD1cImtlZXBIXCIvPlxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkhpZ2ggUG93ZXIsIExvdyBJbnRlcmVzdCAtIFByaW9yaXR5IExldmVsIDNcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICBJbiBvcmRlciB0byBzdWNjZXNzZnVsbHkgaW1wbGVtZW50IFByZUN5c2UsIGFsbCBjb25jZXJucyBtdXN0IGJlIGZ1bGx5IGNvbnNpZGVyZWQsIGV2ZW4gaWYgdGhleSBcbiAgICAgICAgICAgICAgICAgICAgbWF5IGRpZmZlciBmcm9tIHRoZSBwcm9qZWN0IGludGVyZXN0cy4gQ0Ygc3BlY2lhbGlzdHMsIGJpb2V0aGljcyBzcGVjaWFsaXN0cywgYW5kIHJlZ3VsYXRvcnkgZXhwZXJ0cyBcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZSBpbXBvcnRhbnQgaW5mb3JtYXRpb24uIFRoZWlyIGlucHV0IGlzIGJlbmVmaWNpYWwgdG8gdGhlIGltcGxlbWVudGF0aW9uIG9mIG91ciBwcm9qZWN0LiBcbiAgICAgICAgICAgICAgICAgICAgVGhlc2UgY2F0ZWdvcmllcyBvZiBleHBlcnRzIGhlbHAgdG8gZW5zdXJlIHRoYXQgdGhlIHByb2plY3QgaXMgZXRoaWNhbCBhbmQgY29tcGxpYW50IHdpdGggdGhlIGxhdy4gXG4gICAgICAgICAgICAgICAgICAgIFRoZWlyIGV4cGVydGlzZSBlbnN1cmVzIHRoYXQgYWxsIHJlbGV2YW50IGFzcGVjdHMgYXJlIGNvdmVyZWQuXG4gICAgICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgICAgICA8cD48Yj5Hb3Zlcm5tZW50IGFuZCBwdWJsaWMgaGVhbHRoIGF1dGhvcml0aWVzPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIEFsdGhvdWdoIHRoZXNlIHN0YWtlaG9sZGVycyBoYXZlIHNvbWUgaW50ZXJlc3QgaW4gbmV3IHRoZXJhcGllcyB0aGF0IGltcHJvdmUgcG9wdWxhdGlvbiBoZWFsdGgsIFxuICAgICAgICAgICAgICAgICAgICB0aGVpciBkYXktdG8tZGF5IGludGVyZXN0IG1heSBub3QgYmUgc3BlY2lmaWNhbGx5IGZvY3VzZWQgb24gdGhlIGlHRU0gcHJvamVjdC4gSG93ZXZlciwgdGhleSBoYXZlIFxuICAgICAgICAgICAgICAgICAgICB0aGUgcG93ZXIgdG8gaW5mbHVlbmNlIHRoZSBwcm9qZWN0IHRocm91Z2ggZnVuZGluZywgcG9saXRpY2FsIHN1cHBvcnQsIG9yIHJlZ3VsYXRvcnkgYWN0aW9uLlxuICAgICAgICAgICAgICAgICAgICA8L3A+XG5cbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+UGhhcm1hY2V1dGljYWwgY29tcGFuaWVzIGFuZCBpbmR1c3RyaWVzPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIExhcmdlIHBoYXJtYWNldXRpY2FsIGNvbXBhbmllcyBoYXZlIHRoZSBwb3dlciB0byBzaWduaWZpY2FudGx5IHN1cHBvcnQgdGhlIHByb2plY3QgdGhyb3VnaCBcbiAgICAgICAgICAgICAgICAgICAgaW52ZXN0bWVudCBvciBzdHJhdGVnaWMgcGFydG5lcnNoaXBzLiBIb3dldmVyLCB0aGVpciBpbnRlcmVzdCBtYXkgYmUgbG93IGZvciB0aGUgdGltZSBiZWluZyB1bnRpbCBcbiAgICAgICAgICAgICAgICAgICAgdGhlIHByb2plY3QgaGFzIHByb3ZlbiB0aGF0IGl0IGlzIGNvbW1lcmNpYWxseSBwcm9taXNpbmcuXG4gICAgICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWVuZGVsb3d0YWJcIiBpZD1cIm1lbmRlbG93LXRocmVlXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIktlZXAgSW5mb3JtZWRcIiBpZD1cImluZm9ybWVkSFwiLz5cbiAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJLRUVQIElORk9STUVEIC0gTG93IFBvd2VyLCBIaWdoIEludGVyZXN0IC0gUHJpb3JpdHkgTGV2ZWwgMlwiLz5cbiAgICAgICAgICAgICAgICAgICAgPHA+IDxiPlBvdGVudGlhbCB1c2VycyBvZiBQcmVDeXNlPC9iPiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICBhcmUgaW1wb3J0YW50IGZvciB1bmRlcnN0YW5kaW5nIHRoZSBuZWVkcywgZXZlbiBpZiB0aGVpciBleHBlcnRpc2UgXG4gICAgICAgICAgICAgICAgICAgIG1heSBub3QgYmUgc3VmZmljaWVudCB0byBzb2x2ZSBhbGwgdGhlIHByb2JsZW1zIHRoYXQgYXJpc2UgaW4gdGhlIHByb2plY3QuIEl0IGlzIHRoZXJlZm9yZSBpbXBvcnRhbnQgdG8gXG4gICAgICAgICAgICAgICAgICAgIGtlZXAgdGhlbSBpbmZvcm1lZC4gVGhlc2UgdXNlcnMgaW5jbHVkZSBzdGFrZWhvbGRlcnMgYXMgdGhlaXIgbmVlZHMgY29pbmNpZGUgd2l0aCB0aGUgcHJvamVjdC4gXG4gICAgICAgICAgICAgICAgICAgIFRoZWlyIGZlZWRiYWNrIGNhbiBwcm92aWRlIHZhbHVhYmxlIGluc2lnaHRzLiBUaGlzIGNvbGxhYm9yYXRpb24gaGVscHMgdG8gYmV0dGVyIHRhaWxvciB0aGUgcHJvamVjdCBcbiAgICAgICAgICAgICAgICAgICAgdG8gdXNlciBuZWVkcy5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD48Yj5QYXRpZW50cyBhbmQgcGF0aWVudCBvcmdhbml6YXRpb25zPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBQYXRpZW50cyBzdWZmZXJpbmcgZnJvbSBjeXN0aWMgZmlicm9zaXMgYW5kIHRoZSBvcmdhbml6YXRpb25zIHRoYXQgc3VwcG9ydCB0aGVtIGhhdmUgYSBoaWdoIGludGVyZXN0IGluIFxuICAgICAgICAgICAgICAgICAgICBuZXcgdGhlcmFwaWVzIHRoYXQgY291bGQgaW1wcm92ZSB0aGVpciBxdWFsaXR5IG9mIGxpZmUuIEhvd2V2ZXIsIHRoZWlyIHBvd2VyIHRvIGluZmx1ZW5jZSB0aGUgcHJvamVjdCBcbiAgICAgICAgICAgICAgICAgICAgaXMgbGltaXRlZC5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD4gPGI+QWNhZGVtaWMgY29tbXVuaXR5IGFuZCBzdHVkZW50czwvYj48L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgVGhpcyBncm91cCBpbmNsdWRlcyB1bml2ZXJzaXRpZXMsIHByb2Zlc3NvcnMsIGFuZCBzdHVkZW50cyB3aG8gYXJlIGludGVyZXN0ZWQgaW4gdGhlIGxhdGVzdCByZXNlYXJjaCBcbiAgICAgICAgICAgICAgICAgICAgaW4gZ2VuZSB0aGVyYXB5LiBBbHRob3VnaCB0aGV5IGRvIG5vdCBoYXZlIHRoZSBkaXJlY3QgcG93ZXIgdG8gaW5mbHVlbmNlIHRoZSBwcm9qZWN0LCB0aGV5IGNhbiBcbiAgICAgICAgICAgICAgICAgICAgc3VwcG9ydCBhbmQgcHJvbW90ZSB0aGUgcHJvamVjdCB0aHJvdWdoIHJlc2VhcmNoIGFuZCBhY2FkZW1pYyBwdWJsaWNhdGlvbnMuXG4gICAgICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWVuZGVsb3d0YWJcIiBpZD1cIm1lbmRlbG93LWZvdXJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTWluaW1hbCBFZmZvcnRcIiBpZD1cIm1pbmltYWxIXCIvPlxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkxvdyBQb3dlciwgTG93IEludGVyZXN0IC0gUHJpb3JpdHkgTGV2ZWwgMVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5TdGFrZWhvbGRlcnMgd2hvIGFyZSByZWd1bGFybHkgbW9uaXRvcmVkPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgbWF5IG5vdCBiZSBpbnRlcmVzdGVkIGluIHRoZSBwcm9qZWN0IGFuZCBkbyBub3QgcHJvdmlkZSBmZWVkYmFjay4gSG93ZXZlciwgdGhpcyBjYW4gY2hhbmdlIG92ZXIgdGltZS4gXG4gICAgICAgICAgICAgICAgICAgICAgICBTdGFrZWhvbGRlcnMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgaW52b2x2ZWQgaW4gdGhlIHJpZ2h0IHNpdHVhdGlvbi4gRm9yIGV4YW1wbGUsIHRoZSBwdWJsaWMgb2YgQmllbGVmZWxkIGlzIFxuICAgICAgICAgICAgICAgICAgICAgICAgZXNzZW50aWFsIGZvciB1bmRlcnN0YW5kaW5nIHRoZSBiYWNrZ3JvdW5kIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhd2FyZW5lc3Mgb2YgZ2VuZSB0aGVyYXB5IG9yIEN5c3RpYyBGaWJyb3Npcy4gXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGVpciBpbnZvbHZlbWVudCBvY2N1cnMgd2hlbiBpdCBpcyByZWxldmFudCBhbmQgb3RoZXIgZ3JvdXBzIG9mIHBlb3BsZSBjYW5ub3QgbWVldCB0aGVpciBuZWVkcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGI+R2VuZXJhbCBwdWJsaWMgb2YgQmllbGVmZWxkPC9iPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHB1YmxpYyBtYXkgaGF2ZSBsaXR0bGUgaW50ZXJlc3QgYW5kIHBvd2VyIGluIHJlbGF0aW9uIHRvIHRoZSBzcGVjaWZpYyBpR0VNIHByb2plY3QuIFdoaWxlIGEgY2VydGFpbiBsZXZlbCBcbiAgICAgICAgICAgICAgICAgICAgICAgIG9mIGVkdWNhdGlvbiBhbmQgYXdhcmVuZXNzIG9mIHRoZSB0b3BpYyBpcyBpbXBvcnRhbnQsIGludGVuc2l2ZSBpbnZvbHZlbWVudCBvZiB0aGlzIGdyb3VwIGlzIGdlbmVyYWxseSBub3QgbmVjZXNzYXJ5LlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5NZWRpYTwvYj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBtZWRpYSBtYXkgaGF2ZSBhbiBpbnRlcmVzdCBpbiBzY2llbnRpZmljIGJyZWFrdGhyb3VnaHMgYW5kIG5ldyB0ZWNobm9sb2dpZXMsIGJ1dCB0aGV5IHRlbmQgdG8gaGF2ZSBsaXR0bGUgXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3dlciBpbiB0ZXJtcyBvZiBkaXJlY3RseSBpbmZsdWVuY2luZyB0aGUgcHJvamVjdC4gTmV2ZXJ0aGVsZXNzLCBzdHJhdGVnaWMgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBtZWRpYSBjYW4gXG4gICAgICAgICAgICAgICAgICAgICAgICBiZSBpbXBvcnRhbnQgdG8gbWFuYWdlIHB1YmxpYyBwZXJjZXB0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJzd290XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiU1dPVCBBbmFseXNlc1wiIGlkPVwic3dvdEhcIi8+XG4gICAgICAgICAgICAgICAgPHA+QSA8Yj5TV09UPC9iPiBhbmFseXNpcyBpcyBhIHN0cmF0ZWdpYyB0b29sIHVzZWQgdG8gZXZhbHVhdGUgdGhlIDxiPlM8L2I+dHJlbmd0aHMsIDxiPlc8L2I+ZWFrbmVzc2VzLCA8Yj5PPC9iPnBwb3J0dW5pdGllcywgYW5kIDxiPlQ8L2I+aHJlYXRzIG9mIGFuIFxuICAgICAgICAgICAgICAgIG9yZ2FuaXphdGlvbi4gSW4gdGhlIGNvbnRleHQgb2Ygb3VyIEh1bWFuIFByYWN0aWNlIGFwcHJvYWNoLCB0aGlzIGFuYWx5c2lzIGhlbHBzIHVzIGlkZW50aWZ5IGludGVybmFsIHN0cmVuZ3RocyBhbmQgd2Vha25lc3NlcyBvZiBvdXIgcHJvamVjdCwgc3VjaCBhcyBcbiAgICAgICAgICAgICAgICB0ZWNobmljYWwgY2FwYWJpbGl0aWVzIGFuZCByZXNvdXJjZSBsaW1pdGF0aW9ucywgd2hpbGUgYWxzbyBleGFtaW5pbmcgZXh0ZXJuYWwgb3Bwb3J0dW5pdGllcywgbGlrZSBwb3RlbnRpYWwgY29sbGFib3JhdGlvbnMsIGFuZCB0aHJlYXRzLCBzdWNoIGFzIHJlZ3VsYXRvcnkgXG4gICAgICAgICAgICAgICAgY2hhbGxlbmdlcyBvciBwdWJsaWMgcGVyY2VwdGlvbi4gXG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxTV09Ub25lLz5cblxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiNXZoXCIsIG1hcmdpbkJvdHRvbTogXCIxdmhcIn19PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIlBhdGllbnRzXCIgb3Blbj1cInBhdHNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIkluZHVzdHJ5XCIgb3Blbj1cImluZHNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIkFjYWRlbWlhXCIgb3Blbj1cImFjc1wiIG9wZW5jbGFzcz1cInN1YmN5Y2xldGFiXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiSGVhbHRoY2FyZVwiIG9wZW49XCJoZWFsdGhzXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT17eyBtYXJnaW5Cb3R0b206IFwiNXZoXCJ9fT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJHb3Zlcm5tZW50XCIgb3Blbj1cImdvdnNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiQ29tbXVuaXR5XCIgb3Blbj1cImNvbW1zXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIlRoZSBQdWJsaWNcIiBvcGVuPVwicHVic1wiIG9wZW5jbGFzcz1cInN1YmN5Y2xldGFiXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJCdXNpbmVzc1wiIG9wZW49XCJidXNpXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBzdWJjeWNsZXRhYlwiIGlkPVwicGF0c1wiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+IFxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUGF0aWVudCBBZHZvY2FjeSBhbmQgU3VwcG9ydCBHcm91cHNcIi8+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJvbmcgc3VwcG9ydCBuZXR3b3JrIGZvciBwYXRpZW50cyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5JbmZsdWVudGlhbCBpbiBwb2xpY3kgYWR2b2NhY3kgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UGVyc29uYWwgY29ubmVjdGlvbiB0byBwYXRpZW50IGNvbW11bml0aWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5MaW1pdGVkIGZ1bmRpbmcgYW5kIHJlc291cmNlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgcmVzaXN0YW5jZSB0byBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkRlcGVuZGVuY2Ugb24gZG9uYXRpb25zIGFuZCBncmFudHMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5JbmNyZWFzZWQgcGF0aWVudCBlbmdhZ2VtZW50IGFuZCBzdXBwb3J0IGZvciBuZXcgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFkdm9jYWN5IGNhbiBkcml2ZSBwb2xpY3kgY2hhbmdlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbmhhbmNpbmcgYXdhcmVuZXNzIGFuZCBlZHVjYXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgb3Bwb3NpdGlvbiBmcm9tIGdyb3VwcyBza2VwdGljYWwgb2YgbmV3IHRyZWF0bWVudHMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWlzaW5mb3JtYXRpb24gb3IgbWlzY29tbXVuaWNhdGlvbiBhYm91dCBuZXcgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkNvbXBldGluZyBwcmlvcml0aWVzIGFtb25nIGFkdm9jYWN5IGdyb3VwcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImluZHNcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQaGFybWFjZXV0aWNhbCBDb21wYW5pZXNcIiAvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVzb3VyY2VzIGZvciBsYXJnZS1zY2FsZSBwcm9kdWN0aW9uIGFuZCBkaXN0cmlidXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXhwZXJpZW5jZSB3aXRoIHJlZ3VsYXRvcnkgcHJvY2Vzc2VzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN0cm9uZyByZXNlYXJjaCBhbmQgZGV2ZWxvcG1lbnQgY2FwYWJpbGl0aWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Gb2N1cyBvbiBwcm9maXRhYmlsaXR5IG1heSBjb25mbGljdCB3aXRoIHBhdGllbnQgYWZmb3JkYWJpbGl0eSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Mb25nIGRldmVsb3BtZW50IHRpbWVsaW5lcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGhpZ2ggcHJpY2luZyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgZGV2ZWxvcGluZyBuZXcgdHJlYXRtZW50IG1vZGFsaXRpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWFya2V0IGV4cGFuc2lvbiBhbmQgY29tcGV0aXRpdmUgYWR2YW50YWdlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBhcnRuZXJzaGlwcyB3aXRoIHJlc2VhcmNoIGluc3RpdHV0aW9ucyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggY29zdCBhbmQgcmlzayBhc3NvY2lhdGVkIHdpdGggbmV3IHRoZXJhcHkgZGV2ZWxvcG1lbnQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+U3RyaW5nZW50IHJlZ3VsYXRvcnkgYW5kIGNvbXBsaWFuY2UgcmVxdWlyZW1lbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBwdWJsaWMgYmFja2xhc2ggb3ZlciBoaWdoIHRyZWF0bWVudCBjb3N0cyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQmlvZW5naW5lZXJpbmcgYW5kIEJpb3RlY2hub2xvZ3kgRGVwYXJ0bWVudHMgXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QWdpbGUgYW5kIGlubm92YXRpdmUsIGNhbiBxdWlja2x5IGFkYXB0IHRvIG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Rm9jdXNlZCBvbiBuaWNoZSBtYXJrZXRzIGFuZCBjdXR0aW5nLWVkZ2Ugc29sdXRpb25zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN0cm9uZyBlbnRyZXByZW5ldXJpYWwgc3Bpcml0IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk9wcG9ydHVuaXR5IGZvciByYXBpZCBncm93dGggYW5kIHBhcnRuZXJzaGlwIHdpdGggbGFyZ2VyIGZpcm1zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCB0byBkaXNydXB0IGV4aXN0aW5nIG1hcmtldHMgd2l0aCBpbm5vdmF0aXZlIHNvbHV0aW9ucyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBjb2xsYWJvcmF0aW9uIGFuZCBhY3F1aXNpdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggcmlzayBvZiBmYWlsdXJlIGFuZCBtYXJrZXQgdm9sYXRpbGl0eSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5JbnRlbnNlIGNvbXBldGl0aW9uIGFuZCBmYXN0LXBhY2VkIGluZHVzdHJ5IGNoYW5nZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVndWxhdG9yeSBhbmQgbWFya2V0IGVudHJ5IGJhcnJpZXJzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImFjc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkdlbmV0aWMgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFwiLz5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5PcHBvcnR1bml0aWVzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4cGVydGlzZSBpbiBnZW5ldGljIGRpc29yZGVycyBhbmQgYWR2YW5jZWQgcmVzZWFyY2ggY2FwYWJpbGl0aWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFjY2VzcyB0byBzdGF0ZS1vZi10aGUtYXJ0IHJlc2VhcmNoIGZhY2lsaXRpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+U3Ryb25nIHRyYWNrIHJlY29yZCBvZiBpbm5vdmF0aW9uIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5NYXkgaGF2ZSBsaW1pdGVkIHByYWN0aWNhbCBleHBlcmllbmNlIHdpdGggdGhlcmFweSBkZWxpdmVyeSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZGlzY29ubmVjdCBiZXR3ZWVuIHJlc2VhcmNoIGFuZCBjbGluaWNhbCBhcHBsaWNhdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5IaWdoIG9wZXJhdGlvbmFsIGNvc3RzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29sbGFib3JhdGlvbiBjYW4gbGVhZCB0byBicmVha3Rocm91Z2hzIGluIGdlbmUgZWRpdGluZyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGdyb3VuZGJyZWFraW5nIHJlc2VhcmNoIGFuZCBuZXcgZGlzY292ZXJpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29sbGFib3JhdGl2ZSByZXNlYXJjaCBvcHBvcnR1bml0aWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb21wZXRpdGlvbiBmb3IgZnVuZGluZyBhbmQgcmVzZWFyY2ggZ3JhbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJhcGlkIHRlY2hub2xvZ2ljYWwgY2hhbmdlcyByZXF1aXJpbmcgY29uc3RhbnQgYWRhcHRhdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FdGhpY2FsIGFuZCByZWd1bGF0b3J5IGNoYWxsZW5nZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlVuaXZlcnNpdGllcyBhbmQgQWNhZGVtaWMgUmVzZWFyY2hlcnMgXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+U3Ryb25nIHJlc2VhcmNoIGZvdW5kYXRpb24gYW5kIGlubm92YXRpb24gY2FwYWJpbGl0aWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFjY2VzcyB0byBhIGRpdmVyc2UgcG9vbCBvZiBhY2FkZW1pYyB0YWxlbnQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXN0YWJsaXNoZWQgcmVzZWFyY2ggaW5mcmFzdHJ1Y3R1cmUgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBoYXZlIGxpbWl0ZWQgcmVzb3VyY2VzIGZvciBjb21tZXJjaWFsaXphdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5MaW1pdGVkIGluZHVzdHJ5IGNvbm5lY3Rpb25zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggY29tcGV0aXRpb24gZm9yIGFjYWRlbWljIGdyYW50cyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgZ3JvdW5kYnJlYWtpbmcgcmVzZWFyY2ggYW5kIG5ldyBkaXNjb3ZlcmllcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIHdpdGggaW5kdXN0cnkgZm9yIGFwcGxpZWQgcmVzZWFyY2ggPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdGllcyBmb3IgaW50ZXJkaXNjaXBsaW5hcnkgcmVzZWFyY2ggPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5GdW5kaW5nIGxpbWl0YXRpb25zIGFuZCBidXJlYXVjcmF0aWMgY2hhbGxlbmdlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5JbnRlbGxlY3R1YWwgcHJvcGVydHkgYW5kIHRlY2hub2xvZ3kgdHJhbnNmZXIgaXNzdWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkJhbGFuY2luZyBhY2FkZW1pYyByZXNlYXJjaCB3aXRoIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImhlYWx0aHNcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQdWxtb25vbG9naXN0cyBhbmQgUmVzcGlyYXRvcnkgU3BlY2lhbGlzdHNcIi8+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5EZWVwIHVuZGVyc3RhbmRpbmcgb2YgQ0YgYW5kIGl0cyBjb21wbGljYXRpb25zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkRpcmVjdCBwYXRpZW50IGNhcmUgZXhwZXJpZW5jZSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Fc3RhYmxpc2hlZCBwYXRpZW50IHRydXN0IGFuZCByYXBwb3J0IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5NYXkgbGFjayBleHBlcnRpc2UgaW4gZ2VuZSBlZGl0aW5nIGFuZCBuZXcgZGVsaXZlcnkgc3lzdGVtcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5MaW1pdGVkIHRpbWUgYW5kIHJlc291cmNlcyBmb3IgcmVzZWFyY2ggaW52b2x2ZW1lbnQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmlzayBvZiBzbG93IGFkb3B0aW9uIG9mIG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DYW4gcHJvdmlkZSB2YWx1YWJsZSBpbnNpZ2h0cyBmb3IgdGhlcmFweSBvcHRpbWl6YXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdGllcyBmb3IgY2xpbmljYWwgdHJpYWxzIGFuZCBwYXRpZW50IGZlZWRiYWNrIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVuaGFuY2VkIHRyZWF0bWVudCBwcm90b2NvbHMgdGhyb3VnaCBjb2xsYWJvcmF0aW9uIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVzaXN0YW5jZSB0byBhZG9wdCBuZXcgYW5kIHVucHJvdmVuIHRoZXJhcGllcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgbGlhYmlsaXR5IGlzc3VlcyB3aXRoIG5ldyB0cmVhdG1lbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkNvbXBldGl0aW9uIGZyb20gYWx0ZXJuYXRpdmUgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJTcGVjaWFsaXplZCBDbGluaWNzIGFuZCBIb3NwaXRhbHNcIi8+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5EaXJlY3QgYWNjZXNzIHRvIHBhdGllbnQgcG9wdWxhdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BYmlsaXR5IHRvIGNvbmR1Y3QgY2xpbmljYWwgdHJpYWxzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4cGVyaWVuY2VkIG1lZGljYWwgc3RhZmYgYW5kIGluZnJhc3RydWN0dXJlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5NYXkgbGFjayBleHBlcnRpc2UgaW4gZ2VuZSB0aGVyYXB5IGFuZCBuZXcgZGVsaXZlcnkgc3lzdGVtcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5IaWdoIG9wZXJhdGlvbmFsIGNvc3RzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBsaWFiaWxpdHkgYW5kIGV0aGljYWwgY29uY2VybnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DbGluaWNhbCB0cmlhbHMgYW5kIHJlYWwtd29ybGQgYXBwbGljYXRpb24gb2YgbmV3IHRoZXJhcGllcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBpbXByb3ZpbmcgcGF0aWVudCBjYXJlIGFuZCBvdXRjb21lcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIHdpdGggcmVzZWFyY2ggaW5zdGl0dXRpb25zIGZvciB0aGVyYXB5IGRldmVsb3BtZW50IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb3N0IGFuZCBjb21wbGV4aXR5IG9mIGludGVncmF0aW5nIG5ldyB0aGVyYXBpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVzaXN0YW5jZSBmcm9tIGNsaW5pY2FsIHN0YWZmIHRvIGFkb3B0IG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29tcGV0aXRpb24gZm9yIHBhdGllbnRzIGFuZCBjbGluaWNhbCB0cmlhbCBwYXJ0aWNpcGF0aW9uIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJIZWFsdGhjYXJlIE5ldHdvcmtzXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QnJvYWQgcmVhY2ggYW5kIGluZmx1ZW5jZSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BYmlsaXR5IHRvIGltcGxlbWVudCBuZXcgdGhlcmFwaWVzIHdpZGVseSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Fc3RhYmxpc2hlZCByZWxhdGlvbnNoaXBzIHdpdGggcGF0aWVudCBjb21tdW5pdGllcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+VmFyaWFiaWxpdHkgaW4gbmV0d29yayBjYXBhYmlsaXRpZXMgYW5kIHJlc291cmNlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db21wbGV4IGNvb3JkaW5hdGlvbiByZXF1aXJlZCA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZGlzcGFyaXRpZXMgaW4gY2FyZSBxdWFsaXR5IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBsYXJnZS1zY2FsZSBpbXBhY3Qgb24gcGF0aWVudCBjYXJlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkxldmVyYWdpbmcgbmV0d29yayBmb3IgbGFyZ2Utc2NhbGUgY2xpbmljYWwgdHJpYWxzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN0YW5kYXJkaXppbmcgY2FyZSBhY3Jvc3MgbXVsdGlwbGUgZmFjaWxpdGllcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk9yZ2FuaXphdGlvbmFsIHJlc2lzdGFuY2UgdG8gY2hhbmdlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVjb25vbWljIHByZXNzdXJlcyBhbmQgYnVkZ2V0IGNvbnN0cmFpbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlZhcmlhYmlsaXR5IGluIHJlZ3VsYXRvcnkgY29tcGxpYW5jZSBhY3Jvc3MgcmVnaW9ucyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHN1YmN5Y2xldGFiXCIgaWQ9XCJnb3ZzXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQmlvZXRoaWNzIENvbW1pdHRlZXMgXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RW5zdXJlIGV0aGljYWwgc3RhbmRhcmRzIGFyZSBtZXQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UHJvdmlkZSBndWlkYW5jZSBvbiBjb21wbGV4IGlzc3VlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbmhhbmNlIGNyZWRpYmlsaXR5IGFuZCBhY2NlcHRhbmNlIG9mIG5ldyB0aGVyYXBpZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBiZSBjb25zZXJ2YXRpdmUgYW5kIHNsb3cgdG8gYXBwcm92ZSBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgY29uZmxpY3Rpbmcgb3BpbmlvbnMgd2l0aGluIHRoZSBjb21taXR0ZWUgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGltaXRlZCBhdXRob3JpdHkgdG8gZW5mb3JjZSBkZWNpc2lvbnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Fc3RhYmxpc2hpbmcgZXRoaWNhbCBmcmFtZXdvcmtzIGZvciBuZXcgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVuaGFuY2luZyBwdWJsaWMgdHJ1c3QgdGhyb3VnaCBldGhpY2FsIG92ZXJzaWdodCA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIHdpdGggcmVndWxhdG9yeSBhZ2VuY2llcyBmb3IgY29tcHJlaGVuc2l2ZSBvdmVyc2lnaHQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FdGhpY2FsIGRpbGVtbWFzIGFuZCBwdWJsaWMgcGVyY2VwdGlvbiBpc3N1ZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmFwaWQgYWR2YW5jZW1lbnRzIG91dHBhY2luZyBldGhpY2FsIGd1aWRlbGluZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWlzYWxpZ25tZW50IHdpdGggZmFzdC1wYWNlZCB0ZWNobm9sb2dpY2FsIGFkdmFuY2VtZW50cyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVnYWwgRXhwZXJ0c1wiLz5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5PcHBvcnR1bml0aWVzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5hdmlnYXRlIGNvbXBsZXggbGVnYWwgbGFuZHNjYXBlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbnN1cmUgY29tcGxpYW5jZSB3aXRoIHJlZ3VsYXRpb25zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4cGVydGlzZSBpbiBoZWFsdGhjYXJlIGxhdyBhbmQgZ2VuZXRpYyByZXNlYXJjaCByZWd1bGF0aW9ucyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb3N0cyBmb3IgbGVnYWwgc2VydmljZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBsZW5ndGh5IGxlZ2FsIHByb2Nlc3NlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5SaXNrIG9mIHN0aWZsaW5nIGlubm92YXRpb24gd2l0aCBvdmVybHkgY2F1dGlvdXMgYWR2aWNlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RGV2ZWxvcG1lbnQgb2YgY29tcHJlaGVuc2l2ZSBsZWdhbCBmcmFtZXdvcmtzIGZvciBuZXcgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlByb3RlY3RpbmcgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZCBlbnN1cmluZyByZWd1bGF0b3J5IGNvbXBsaWFuY2UgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QWR2aXNpbmcgb24gYmVzdCBwcmFjdGljZXMgZm9yIGV0aGljYWwgYW5kIGxlZ2FsIHN0YW5kYXJkcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkxlZ2FsIGNoYWxsZW5nZXMgYW5kIGxpYWJpbGl0eSBpc3N1ZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmFwaWRseSBjaGFuZ2luZyBsZWdhbCBlbnZpcm9ubWVudHMgYW5kIHJlZ3VsYXRpb25zIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgbGl0aWdhdGlvbiBhbmQgbGVnYWwgZGlzcHV0ZXMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT4gICAgXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImNvbW1zXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUGF0aWVudCBhbmQgQ29tbXVuaXR5IE91dHJlYWNoIFByb2dyYW1zXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SW5jcmVhc2UgYXdhcmVuZXNzIGFuZCBlZHVjYXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QnVpbGQgcHVibGljIHN1cHBvcnQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Rm9zdGVyIGNvbm5lY3Rpb25zIGJldHdlZW4gcGF0aWVudHMsIHJlc2VhcmNoZXJzLCBhbmQgaGVhbHRoY2FyZSBwcm92aWRlcnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkxpbWl0ZWQgcmVhY2ggYW5kIHJlc291cmNlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgbWlzaW5mb3JtYXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RGVwZW5kZW5jZSBvbiB2b2x1bnRlZXIgZWZmb3J0cyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVuaGFuY2VkIHB1YmxpYyBlbmdhZ2VtZW50IGFuZCBzdXBwb3J0IGZvciBuZXcgdGhlcmFwaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk9wcG9ydHVuaXRpZXMgZm9yIGNvbW11bml0eS1kcml2ZW4gYWR2b2NhY3kgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmFpc2luZyBmdW5kcyBhbmQgcmVzb3VyY2VzIHRocm91Z2ggcHVibGljIGVuZ2FnZW1lbnQgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5QdWJsaWMgc2tlcHRpY2lzbSBhbmQgcmVzaXN0YW5jZSB0byBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkNvbXBldGluZyBtZXNzYWdlcyBhbmQgcHJpb3JpdGllcyBhbW9uZyB2YXJpb3VzIGNvbW11bml0eSBncm91cHMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWlzY29tbXVuaWNhdGlvbiBsZWFkaW5nIHRvIG1pc2luZm9ybWF0aW9uIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cInB1YnNcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJFZHVjYXRpb25hbCBJbnN0aXR1dGlvbnNcIi8+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FZHVjYXRlIGZ1dHVyZSBzY2llbnRpc3RzIGFuZCBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UHJvbW90ZSByZXNlYXJjaCBhbmQgaW5ub3ZhdGlvbiA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Fc3RhYmxpc2hlZCBpbmZyYXN0cnVjdHVyZSBmb3IgZWR1Y2F0aW9uIGFuZCByZXNlYXJjaCA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGltaXRlZCBmdW5kaW5nIGFuZCByZXNvdXJjZXMgZm9yIGxhcmdlLXNjYWxlIHByb2plY3RzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgYWNhZGVtaWMgYnVyZWF1Y3JhY3kgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb21wZXRpdGlvbiBmb3IgcmVzZWFyY2ggZ3JhbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdHkgdG8gZm9zdGVyIG5ldyB0YWxlbnQgYW5kIGlubm92YXRpb24gPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29sbGFib3JhdGlvbiB3aXRoIGluZHVzdHJ5IGFuZCByZXNlYXJjaCBpbnN0aXR1dGlvbnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdGllcyBmb3IgaW50ZXJkaXNjaXBsaW5hcnkgZWR1Y2F0aW9uIGFuZCByZXNlYXJjaCA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkZ1bmRpbmcgY29uc3RyYWludHMgYW5kIGFjYWRlbWljIHByZXNzdXJlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5CYWxhbmNpbmcgYWNhZGVtaWMgb2JqZWN0aXZlcyB3aXRoIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmlzayBvZiBicmFpbiBkcmFpbiB0byBtb3JlIGx1Y3JhdGl2ZSBpbmR1c3RyaWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImJ1c2lcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJGdW5kaW5nIEFnZW5jaWVzIGFuZCBWZW50dXJlIENhcGl0YWxpc3RzXCIvPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UHJvdmlkZSBjcnVjaWFsIGZpbmFuY2lhbCBzdXBwb3J0IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkRyaXZlIGlubm92YXRpb24gdGhyb3VnaCBpbnZlc3RtZW50IDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4dGVuc2l2ZSBuZXR3b3JrcyBhbmQgaW5kdXN0cnkgY29ubmVjdGlvbnMgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkZvY3VzIG9uIFJPSSBtYXkgbGltaXQgZnVuZGluZyBmb3IgaGlnaC1yaXNrIHByb2plY3RzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggY29tcGV0aXRpb24gZm9yIGZ1bmRpbmcgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmlzayBhdmVyc2lvbiBtYXkgbGltaXQgaW5ub3ZhdGl2ZSBidXQgdW5jZXJ0YWluIHByb2plY3RzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBoaWdoIHJldHVybnMgYW5kIGltcGFjdCBvbiBoZWFsdGhjYXJlIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN1cHBvcnRpbmcgdHJhbnNmb3JtYXRpdmUgdGVjaG5vbG9naWVzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPklkZW50aWZ5aW5nIGFuZCBudXJ0dXJpbmcgYnJlYWt0aHJvdWdoIHRlY2hub2xvZ2llcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVjb25vbWljIGRvd250dXJucyBhZmZlY3RpbmcgaW52ZXN0bWVudCBjYXBhY2l0eSA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGhpZ2ggZmluYW5jaWFsIGxvc3NlcyA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DaGFuZ2VzIGluIGVjb25vbWljIGFuZCBwb2xpY3kgZW52aXJvbm1lbnRzIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+ICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJ0aGlyZHBhcnR5XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUaGUgVGhpcmQtUGFydHkgRmVlZGJhY2sgVGVtcGxhdGVcIiBpZD1cInRoaXJkSFwiLz5cbiAgICAgICAgICAgICAgICA8cD5UbyBkcml2ZSBzdGFrZWhvbGRlciBpbnRlcmFjdGlvbnMgZm9yIHRoZSA8UHJlQ3lzZS8+IHByb2plY3QsIG91ciB0ZWFtIGltcGxlbWVudGVkIHRoZSBcdTIwMUNUaGlyZC1QYXJ0eSBGZWVkYmFjayBUZW1wbGF0ZVx1MjAxRC4gVGhpcyB0ZW1wbGF0ZSBoZWxwcyB1cyBpbnRyb2R1Y2UgaW5kaXZpZHVhbHMgdG8gb3VyIHN0YWtlaG9sZGVycyBhbmQgZGVtb25zdHJhdGUgdGhlaXIgc2lnbmlmaWNhbmNlIHRvIG91ciBwcm9qZWN0LiBUaGVyZSBhcmUgdGhyZWUgbWFpbiBzZWN0aW9ucyBpbiB0aGlzIHRlbXBsYXRlLiBGaXJzdCwgd2UgYWRkcmVzcyB0aGUgaW1wb3J0YW50IHF1ZXN0aW9uIG9mIHdobyBvdXIgc3Rha2Vob2xkZXJzIGFyZSwgaW50cm9kdWNpbmcgdGhlaXIgYmFja2dyb3VuZHMgYW5kIGV4cGxhaW5pbmcgd2h5IHdlIHJlYWNoZWQgb3V0IHRvIHRoZW0uIE5leHQsIHdlIHN1bW1hcml6ZSB0aGUgY29udmVyc2F0aW9ucyBhbmQga25vd2xlZGdlIGV4Y2hhbmdlZCBkdXJpbmcgb3VyIGludGVyYWN0aW9ucy4gRmluYWxseSwgd2Ugc2hhcmUgb3VyIHJlZmxlY3Rpb25zIGZyb20gdGhlc2Ugc3Rha2Vob2xkZXIgY29udmVyc2F0aW9ucyBhbmQgaG93IHRoZXNlIGludGVyYWN0aW9ucyBoYXZlIGd1aWRlZCB0aGUgbmV4dCBzdGVwcyBvZiBvdXIgcHJvamVjdC4gIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhQVW5kZXJzdGFuZGluZy8+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHVuZGVyc3RhbmRpbmd0YWJcIiBpZD1cInVuZGVyLXJlZmxlY3Rpb25cIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PExvcmVtU2hvcnQvPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCB1bmRlcnN0YW5kaW5ndGFiXCIgaWQ9XCJ1bmRlci1yZXNwb25zaWJpbGl0eVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxMb3JlbVNob3J0Lz48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgdW5kZXJzdGFuZGluZ3RhYlwiIGlkPVwidW5kZXItcmVzcG9uc2l2ZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxMb3JlbVNob3J0Lz48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZnJhbWVjeWNsZXRhYlwiIGlkPVwiYXJlYVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkFSRUEgRnJhbWV3b3JrXCIgaWQ9XCJhcmVhSFwiLz5cbiAgICAgICAgICAgICAgICA8cD5UaGUgQVJFQSBGcmFtZXdvcmsgQW5hbHlzaXMgaXMgYSBtb2RlbCB0aGF0IGhlbHBzIHN0cnVjdHVyZSBhbmQgb3B0aW1pemUgZGVjaXNpb24tbWFraW5nIGluIGNvbXBsZXggcHJvamVjdHMsIGVzcGVjaWFsbHkgd2hlbiBtdWx0aXBsZSBzdGFrZWhvbGRlcnMgYXJlIGludm9sdmVkLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiaHAzLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEhQM25ldy8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQWdlbmRhXCIvPlxuICAgICAgICAgICAgICAgIDxwPlxuICAgIFRoZSBjZW50cmFsIGdvYWwgb2YgdGhlIFByZUN5c2UgcHJvamVjdCBpcyB0byBkZXZlbG9wIGFuIGlubm92YXRpdmUgZ2VuZSB0aGVyYXB5IHNvbHV0aW9uIGZvciBjeXN0aWMgZmlicm9zaXMgKENGKSB0aGF0IGlzIG5vdCBvbmx5IHRlY2huaWNhbGx5IGVmZmVjdGl2ZSBidXQgYWxzbyBzb2NpYWxseSBhY2NlcHRhYmxlIGFuZCBldGhpY2FsbHkganVzdGlmaWFibGUuIFRoZSBwcmltYXJ5IHF1ZXN0aW9ucyBpbmNsdWRlOlxuPC9wPlxuPHVsPlxuICAgIDxsaT5Ib3cgY2FuIHRoZSBwcm9qZWN0IGltcHJvdmUgdGhlIGxpdmVzIG9mIENGIHBhdGllbnRzPzwvbGk+XG4gICAgPGxpPkhvdyBjYW4gdGhlIHByb2plY3QgZW5zdXJlIHRoYXQgdGhlIHByb3Bvc2VkIHRoZXJhcHkgbWVldHMgZXRoaWNhbCBhbmQgcmVndWxhdG9yeSBzdGFuZGFyZHM/PC9saT5cbiAgICA8bGk+SG93IGNhbiB0aGUgc29sdXRpb24gYmUgaW50ZWdyYXRlZCBpbnRvIGN1cnJlbnQgaGVhbHRoY2FyZSBpbml0aWF0aXZlcz88L2xpPlxuICAgIDxsaT5Ib3cgZG9lcyB0aGUgcHJvamVjdCBpbmZsdWVuY2UsIGFuZCBob3cgaXMgaXQgaW5mbHVlbmNlZCBieSwgdGhlIHBlcmNlcHRpb25zIG9mIHN0YWtlaG9sZGVycywgcGFydGljdWxhcmx5IHBhdGllbnRzLCByZWd1bGF0b3J5IGF1dGhvcml0aWVzLCBhbmQgdGhlIHNjaWVudGlmaWMgY29tbXVuaXR5PzwvbGk+XG48L3VsPlxuPHA+XG4gICAgSGVyZSwgdGhlIG5lZWQgaXMgZGVmaW5lZCB0byBkZXZlbG9wIGEgaG9saXN0aWMgdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJvamVjdFx1MjAxOXMgaW1wYWN0cywgY29uc2lkZXJpbmcgYm90aCB0ZWNobm9sb2dpY2FsIGFzcGVjdHMgYW5kIGh1bWFuIHBlcnNwZWN0aXZlcy5cbjwvcD5cblxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUmVzZWFyY2hcIi8+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgVG8gZ2FpbiBhIGNvbXByZWhlbnNpdmUgdW5kZXJzdGFuZGluZyBvZiB0aGUgbmVlZHMgYW5kIGV4cGVjdGF0aW9ucywgdGhlIFByZUN5c2UgdGVhbSBlbXBsb3llZCB2YXJpb3VzIG1ldGhvZHMgdG8gY29sbGVjdCBkYXRhIGZyb20gcmVsZXZhbnQgc3Rha2Vob2xkZXJzLCBpbmNsdWRpbmc6XG48L3A+XG48cD5cbiAgICA8Yj5TdXJ2ZXlzIG9mIENGIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllczo8L2I+IFRoZXNlIHByb3ZpZGVkIGluc2lnaHRzIGludG8gdGhlIHNwZWNpZmljIGNoYWxsZW5nZXMgYW5kIG5lZWRzIHRoYXQgQ0YgcGF0aWVudHMgZmFjZSBpbiBkYWlseSBsaWZlLiBDcml0aWNhbCBxdWVzdGlvbnMgcmVnYXJkaW5nIHNhZmV0eSwgYWNjZXNzaWJpbGl0eSwgYW5kIHRoZSBsb25nLXRlcm0gYXBwbGljYXRpb24gb2YgZ2VuZSB0ZWNobm9sb2d5IHdlcmUgYWRkcmVzc2VkLlxuPC9wPlxuPHA+XG4gICAgPGI+RXhwZXJ0IGNvbnN1bHRhdGlvbnMgd2l0aCByZXNlYXJjaGVycyBhbmQgcGh5c2ljaWFuczo8L2I+IFNjaWVudGlzdHMgYW5kIGRvY3RvcnMgd29ya2luZyBpbiBnZW5lIHRoZXJhcHkgcHJvdmlkZWQgZXNzZW50aWFsIHRlY2huaWNhbCBmZWVkYmFjayBhbmQgaGVscGVkIGFzc2VzcyB0aGUgZmVhc2liaWxpdHkgYW5kIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlIHByb3Bvc2VkIHRoZXJhcHkuXG48L3A+XG48cD5cbiAgICA8Yj5SZWd1bGF0b3J5IGF1dGhvcml0aWVzOjwvYj4gRmVlZGJhY2sgZnJvbSBhZ2VuY2llcyBsaWtlIHRoZSBGREEgYW5kIEVNQSBwbGF5ZWQgYSBjZW50cmFsIHJvbGUgaW4gYXNzZXNzaW5nIHNhZmV0eSByZXF1aXJlbWVudHMgYW5kIHJlZ3VsYXRvcnkgY2hhbGxlbmdlcyB0aGF0IG5lZWQgdG8gYmUgYWRkcmVzc2VkIGJlZm9yZSBjbGluaWNhbCBhcHBsaWNhdGlvbi4gVGhpcyByZXNlYXJjaCBwaGFzZSB3YXMgY3JpdGljYWwgdG8gZW5zdXJpbmcgdGhhdCB0aGUgdGVjaG5pY2FsIHNvbHV0aW9uIGFsaWduZWQgd2l0aCBwYXRpZW50IG5lZWRzIGFuZCByZWd1bGF0b3J5IHN0YW5kYXJkcy5cbjwvcD5cblxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRXZhbHVhdGlvblwiLz5cbiAgICAgICAgICAgICAgICA8cD5CYXNlZCBvbiB0aGUgcmVzZWFyY2ggcGhhc2UgcmVzdWx0cywgYSBkZXRhaWxlZCBhc3Nlc3NtZW50IG9mIHRoZSBzdHJlbmd0aHMsIHdlYWtuZXNzZXMsIG9wcG9ydHVuaXRpZXMsIGFuZCB0aHJlYXRzIChTV09UIGFuYWx5c2lzKSB3YXMgY29uZHVjdGVkIChzZWUgYWJvdmUpLiBUaGUgZXZhbHVhdGlvbiBoZWxwZWQgdGhlIHRlYW0gcmVmbGVjdCBvbiB0aGUgZ2F0aGVyZWQgaW5zaWdodHMgYW5kIGZvY3VzIG9uIGtleSBjaGFsbGVuZ2VzIHRvIGVuc3VyZSBsb25nLXRlcm0gZmVhc2liaWxpdHkgYW5kIGFjY2VwdGFuY2UuXG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQWdlbmRhXCIvPlxuICAgICAgICAgICAgICAgIDxwPlxuICAgIEJhc2VkIG9uIHRoZSBhbmFseXNpcywgc2V2ZXJhbCBtZWFzdXJlcyB3ZXJlIHRha2VuIHRvIGVuc3VyZSB0aGF0IHRoZSBQcmVDeXNlIHByb2plY3QgaXMgbm90IG9ubHkgc2NpZW50aWZpY2FsbHkgYWR2YW5jZWQgYnV0IGFsc28gc29jaWFsbHkgYW5kIHJlZ3VsYXRvcmlseSBhY2NlcHRhYmxlOlxuPC9wPlxuPHA+XG4gICAgPGI+SW50ZWdyYXRlZCBmZWVkYmFjayBsb29wczo8L2I+IFN0YWtlaG9sZGVycyB3ZXJlIGNvbnRpbnVvdXNseSBpbnZvbHZlZCwgYW5kIHRoZWlyIGZlZWRiYWNrIHdhcyBkaXJlY3RseSBpbmNvcnBvcmF0ZWQgaW50byB0aGUgYWRhcHRhdGlvbiBhbmQgaW1wcm92ZW1lbnQgb2YgdGhlIHByb2plY3QgZGVzaWduLiBBbiBleGFtcGxlIG9mIHRoaXMgaXMgdGhlIGFwcGxpY2F0aW9uIG9mIEdpYmJzJyBSZWZsZWN0aW9uIEN5Y2xlIHRvIGVuc3VyZSB0aGF0IGFsbCBmZWVkYmFjayBpcyB0aG9yb3VnaGx5IGFuYWx5emVkIGFuZCBpbmNvcnBvcmF0ZWQgaW50byBmdXR1cmUgZGVjaXNpb25zLlxuPC9wPlxuPHA+XG4gICAgPGI+UmVndWxhdG9yeSBhbmQgZXRoaWNhbCBhZGp1c3RtZW50czo8L2I+IEJ5IHdvcmtpbmcgY2xvc2VseSB3aXRoIHJlZ3VsYXRvcnkgYXV0aG9yaXRpZXMgYW5kIGV0aGljcyBjb21taXR0ZWVzLCBtZWFzdXJlcyB3ZXJlIHRha2VuIHRvIGVuc3VyZSB0aGF0IHRoZSBwcm9qZWN0IGNvbXBsaWVzIHdpdGggcmVndWxhdG9yeSByZXF1aXJlbWVudHMgYW5kIHJlbWFpbnMgZXRoaWNhbGx5IGp1c3RpZmlhYmxlLlxuPC9wPlxuPHA+XG4gICAgPGI+U2FmZXR5IGNvbnNpZGVyYXRpb25zOjwvYj4gVGhlIHNhZmV0eSBvZiB0aGUgdGhlcmFweSB3YXMgYSBrZXkgY29uY2VybiBpbiBzdGFrZWhvbGRlciBpbnRlcmFjdGlvbnMuIFNwZWNpZmljIHNhZmV0eSBwcm90b2NvbHMgd2VyZSBkZXZlbG9wZWQgdG8gbWluaW1pemUgcmlza3MgZm9yIHBhdGllbnRzLlxuPC9wPlxuPHA+XG4gICAgPGI+UHVibGljIGF3YXJlbmVzczo8L2I+IFRvIGluY3JlYXNlIHB1YmxpYyBhd2FyZW5lc3Mgb2YgdGhlIHBvdGVudGlhbCBhbmQgc2FmZXR5IG9mIGdlbmUgdGVjaG5vbG9naWVzLCB0YXJnZXRlZCBjb21tdW5pY2F0aW9uIG1lYXN1cmVzIHdlcmUgdGFrZW4gdG8gYWRkcmVzcyBtaXN1bmRlcnN0YW5kaW5ncyBhbmQgaW1wcm92ZSBhY2NlcHRhbmNlIG9mIHRoZSB0ZWNobm9sb2d5LlxuPC9wPlxuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGZyYW1lY3ljbGV0YWJcIiBpZD1cImZlZWRjeWNsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gXG4gICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUaGUgRmVlZGJhY2sgQ3ljbGUgb2Ygb3VyIElIUCBBcHByb2FjaFwiIGlkPVwiZmVlZEhcIi8+XG4gICAgICAgICAgICAgICAgPHA+VG8gZm9zdGVyIHByb2R1Y3RpdmUgY29udmVyc2F0aW9ucyBhbmQgZW5zdXJlIG91ciB0ZWFtIG1heGltaXplcyBlYWNoIHN0YWtlaG9sZGVyIGludGVyYWN0aW9uIGZvciB0aGUgUHJlQ3lzZSBwcm9qZWN0LCB3ZSBkZXZlbG9wZWQgYSBmZWVkYmFjayBjeWNsZSB0aGF0IG91dGxpbmVzIGEgc3RydWN0dXJlZCBhcHByb2FjaCBmb3Igb3VyIG1lZXRpbmdzLiBUaGUgZmlyc3Qgc3RlcCBpbiBvdXIgY3ljbGUgaW52b2x2ZXMgbGlzdGVuaW5nIHRvIGVhY2ggc3Rha2Vob2xkZXIncyBleHBlcmllbmNlcywgcGVyc29uYWwgc3Rvcmllcywgb3IgaW5zaWdodHMuIE91ciB0ZWFtIHRoZW4gZm9sbG93cyB1cCBieSBhc2tpbmcgcmVsZXZhbnQgcXVlc3Rpb25zIHRvIGRpdmUgZGVlcGVyIGludG8gdGhlIHNoYXJlZCBpbmZvcm1hdGlvbiBvciB0byBpbnRyb2R1Y2UgbmV3IHRvcGljcyBvciBkaXJlY3Rpb25zIGluIHRoZSBjb252ZXJzYXRpb24uIFRvd2FyZHMgdGhlIGVuZCBvZiB0aGUgbWVldGluZywgd2UgYXNrIGNsYXJpZnlpbmcgcXVlc3Rpb25zIGFuZCByZWl0ZXJhdGUga2V5IHBvaW50cyB0byBlbnN1cmUgb3VyIHVuZGVyc3RhbmRpbmcgaXMgYWNjdXJhdGUgYW5kIHRoYXQgdGhlIHN0YWtlaG9sZGVyIGhhcyBubyBhZGRpdGlvbmFsIGlucHV0LiBGaW5hbGx5LCB3ZSBleHBsb3JlIG5ldyBkaXJlY3Rpb25zIGFuZCBpZGVhcyBpbnNwaXJlZCBieSB0aGUgc3Rha2Vob2xkZXIgaW50ZXJhY3Rpb24sIGVuY291cmFnaW5nIG91ciB0ZWFtIHRvIHB1cnN1ZSBpbm5vdmF0aXZlIGFuZCBub3ZlbCBjb25jZXB0cy5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvZmVlZGJhY2tjeWNsZS5zdmdcIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZnJhbWVjeWNsZXRhYlwiIGlkPVwiZ2lic29uXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiBcbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkN5Y2xlIG9mIFJlZmxlY3Rpb25zIGFjY29yZGluZyB0byBHaWJic1wiIGlkPVwiZ2lic29uSFwiLz5cbiAgICAgICAgICAgICAgICA8cD5Gb3IgdGhlIDxQcmVDeXNlLz4gcHJvamVjdCB0byBpbXBhY3QgdGhlIHdvcmxkLCBpdCBuZWVkcyB0byB3b3JrIHdpdGggYWxsIHR5cGVzIG9mIHN0YWtlaG9sZGVycy4gVGhlcmVmb3JlLCB3ZSBhcmUgb3B0aW1pemluZyBHaWJicycgUmVmbGVjdGlvbiBDeWNsZSB0byBkZW1vbnN0cmF0ZSBvdXIgaW5jbHVzaXZlIHJlc3BvbnNlIHRvIHRoZSBjaGFsbGVuZ2VzIHdlIGVuY291bnRlcmVkIGR1cmluZyBvdXIgaUdFTSBqb3VybmV5LiBUaGUgY3ljbGUgaW5jbHVkZXMgdGhlIGltcGV0dXMgZm9yIG91ciBlbmdhZ2VtZW50LCB0aGUgdW5iaWFzZWQgdHdvLXdheSBjb21tdW5pY2F0aW9uIHdpdGggc3Rha2Vob2xkZXJzLCBvdXIgdGhvcm91Z2ggYW5hbHlzaXMgb2YgdGhlIGZlZWRiYWNrIGFuZCBvdXIgYWN0aW9ucyB0byBpbXBsZW1lbnQgdGhlIHN0YWtlaG9sZGVyIGlucHV0cyBpbnRvIG91ciBwcm9qZWN0LlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7aGVpZ2h0OiBcIjIwJVwifX0+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2dpYmJzcmVmbGVjdGlvbi5zdmdcIiBzdHlsZT17e2hlaWdodDogXCIyMCVcIn19Lz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8cD5cbiAgICA8Yj5JbXBldHVzOjwvYj4gV2hlbiBkZXZlbG9waW5nIGEgc3lzdGVtYXRpYyBhcHByb2FjaCB0byBhIHJlY3VycmluZyBwcm9ibGVtLCBpdCdzIGVhc3kgdG8gZ2V0IGRpc3RyYWN0ZWQgYnkgbXVsdGlwbGUgcG9pbnRzIG9mIHZpZXcuIFdlIG5lZWQgdG8gcHJpb3JpdGl6ZSBxdWFsaXR5IG92ZXIgcXVhbnRpdHkuIFRoaXMgc2VjdGlvbiBwcmVzZW50cyB0aGUgc3VjY2Vzc2l2ZSBpbXBldHVzIHRoYXQgZHJpdmVzIHRoZSBjb250aW51b3VzIGltcGxlbWVudGF0aW9uIG9mIEh1bWFuIFByYWN0aWNlcyBhY3Rpdml0aWVzLlxuPC9wPlxuPHA+XG4gICAgPGI+VHdvLXdheSBjb21tdW5pY2F0aW9uOjwvYj4gRm9yIG91ciBzb2x1dGlvbiB0byBiZSBodW1hbi1jZW50ZXJlZCwgdGhlIHR3by13YXkgY29tbXVuaWNhdGlvbiBtZXRob2QgaXMgdG8gY29tbXVuaWNhdGUgdG8gc3Rha2Vob2xkZXJzIHRoZSB2YWx1ZXMgd2UgYXJlIGluY29ycG9yYXRpbmcgaW50byBvdXIgcHJvamVjdCBkZXNpZ24uIFdlIG1ha2Ugc3VyZSB0aGV5IHVuZGVyc3RhbmQgdGhlIHByb2plY3QgY2xlYXJseSBzbyB0aGF0IHRoZXkgY2FuIGFydGljdWxhdGUgdGhlaXIgY29uY2VybnMgYW5kIHN1Z2dlc3Rpb25zIHByZWNpc2VseS5cbjwvcD5cbjxwPlxuICAgIDxiPkFuYWx5c2lzOjwvYj4gVGhlIHR3by13YXkgY29tbXVuaWNhdGlvbiB3aXRoIG91ciBzdGFrZWhvbGRlcnMgaXMgY2FyZWZ1bGx5IGFuYWx5emVkLiBJbiB0aGlzIHNlY3Rpb24sIHN0YWtlaG9sZGVyIGZlZWRiYWNrIGlzIHByb2Nlc3NlZCBhbmQgdHVybmVkIGludG8gY29uc3RydWN0aXZlIGd1aWRhbmNlIGZvciBwcm9qZWN0IGltcGxlbWVudGF0aW9uLCBhbGxvd2luZyB1cyB0byBjb25zaWRlciB3aGF0IHdvcmsgc2hvdWxkIGJlIHByaW9yaXRpemVkIHRvIGJlc3QgYWRkcmVzcyBzdGFrZWhvbGRlciBjb25jZXJucy5cbjwvcD5cbjxwPlxuICAgIDxiPkltcGxlbWVudGF0aW9uOjwvYj4gSW1wbGVtZW50YXRpb24gc2hvd3Mgb3VyIG1lYXN1cmVzIGZvciBldmFsdWF0aW5nIGFuZCByZWZpbmluZyB0aGUgcHJvamVjdC4gVGhlc2UgYWN0aW9ucyBhcmUgZnVsbHkgaW50ZWdyYXRlZCBpbnRvIHRoZSBwcm9qZWN0IGRlc2lnbnMgYW5kIG90aGVyIHBhcnRzIG9mIG91ciBwcm9qZWN0IHRvIGVuc3VyZSB0aGF0IG91ciBwcm9qZWN0IGFuZCBhY3Rpdml0aWVzIGFyZSBnb29kLCByZXNwb25zaWJsZSBhbmQgZW5nYWdpbmcgZm9yIHRoZSB3b3JsZC5cbjwvcD5cbjxwPlxuICAgIEluIHRoZSBhcmVhcyBvZiA8Yj5Db21tdW5pY2F0aW9uICYgSW1wbGVtZW50YXRpb248L2I+LCA8Yj5OZWNlc3NpdHkgJiBSZWxldmFuY2U8L2I+LCA8Yj5TY2llbmNlICYgVGVjaG5vbG9neTwvYj4sIDxiPkV0aGljcyAmIFJlZ3VsYXRpb248L2I+LCBvdXIgSHVtYW4gUHJhY3RpY2UgYWN0aXZpdGllcyBhcmUgY29uZHVjdGVkIHdpdGggWCBncm91cHMgb2Ygc3Rha2Vob2xkZXJzIHRocm91Z2hvdXQgb3VyIGlHRU0gam91cm5leS4gSW4gZG9pbmcgc28sIHdlIGV4cGxvcmUgdGhlIGNvbnRleHRzIHRoYXQgZGVmaW5lIHByb2plY3RzLCBpZGVhbGl6ZSBzb2x1dGlvbnMgYW5kIGV2YWx1YXRlIG91dGNvbWVzIGZvciBvdXIgaHVtYW4gcHJhY3RpY2UgYXBwcm9hY2guXG48L3A+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJUaW1lbGluZVwiIGlkPVwiSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMyXCI+XG4gICAgICAgICAgICAgICAgPEhQVGltZWxpbmUvPlxuICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJJbXBsZW1lbnRhdGlvbiAmIEZlZWRiYWNrXCIgaWQ9XCJJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlczNcIj5cbiAgICAgICAgICAgICAgICA8SFBGZWVkYmFjay8+XG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG5cbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM0XCI+XG4gICAgICAgICAgICAgIDxIUGNvbmNsdXNpb24vPlxuICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgKVxufSIsICJpbXBvcnQgeyBCdXR0b25PbmUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgeyBINCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgeyBMb3JlbU1lZGl1bSB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0xvcmVtaXBzdW1cIjtcbmltcG9ydCB7IFBERiB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1BkZnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhQQ29sbGFicygpe1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPXt7bWFyZ2luVG9wOiBcIjV2aFwiLCBtYXJnaW5Cb3R0b206IFwiNXZoXCJ9fT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImNvbGwtY3ljbGV0YWJcIiB0ZXh0PVwiT3ZlcnZpZXdcIiBvcGVuPVwiY29sbC1vdmVydmlld1wiPjwvQnV0dG9uT25lPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwiY29sbC1jeWNsZXRhYlwiIHRleHQ9XCJDb2xsYWJzIGluIDIwMjRcIiBvcGVuPVwiY29sbHMyMDI0XCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSBvcGVuY2xhc3M9XCJjb2xsLWN5Y2xldGFiXCIgdGV4dD1cIkxOUCBIYW5kYm9va1wiIG9wZW49XCJIYW5kYm9va1wiPjwvQnV0dG9uT25lPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjb2xsLW92ZXJ2aWV3XCIgY2xhc3NOYW1lPVwiY29sbC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICAgICAgPEg0IGlkPVwiY29sbC1vdmVydmlldy1oZWFkaW5nXCIgdGV4dD1cIlwiLz5cbiAgICAgICAgICAgICAgICA8TG9yZW1NZWRpdW0vPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiY29sbHMyMDI0XCIgY2xhc3NOYW1lPVwiY29sbC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICA8SDQgaWQ9XCJjb2xsczIwMjQtaGVhZGluZ1wiIHRleHQ9XCJDb2xsYWJvcmF0aW9uIHdpdGggTGluZ2tcdTAwRjZwaW5nXCIvPlxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiSG9tZSBVbml2ZXJzaXR5IG9mIExpbmtcdTAwRjZwaW5nXCIvPlxuICAgICAgICAgICAgICAgIDxwPlRoZSBVbml2ZXJzaXR5IG9mIExpbmtcdTAwRjZwaW5nIGlzIG9uZSBvZiB0aGUgYmlnZ2VyIHVuaXZlcnNpdGllcyBsb2NhdGVkIGluIFN3ZWRlbi4gU2luY2UgaXRzIGluY2VwdGlvbiBpbiAxOTc1LCBpdCBoYXMgYmVjb21lIGEgdmVyeSBpbm5vdmF0aXZlIGFuZCBoaWdobHkgcmVub3duZWQgaW5zdGl0dXRpb24uICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+VGhlIHByb2plY3Qgb2YgTGlua1x1MDBGNnBpbmdzIGlHRU0gMjAyNCB0ZWFtOiAoZGVzY3JpcHRpb24gdGFrZW4gZnJvbSB0aGVpciB3ZWJzaXRlKTwvcD5cbiAgICAgICAgICAgICAgICA8cD5cdTIwMUNUaGUgcHJvZHVjdCBjb21wb3NpdGlvbiB3aWxsIGRlcGVuZCBvbiB0aGUgZW56eW1lIG1pc3Npbmcgb3IgbWFsZnVuY3Rpb25pbmcgaW4gZWFjaCBvZiB0aGUgZGlzZWFzZSB0eXBlcy4gV2VcdTIwMTlyZSBnb2luZyB0byB0YXJnZXQgYXV0b3NvbWFsIHJlY2Vzc2l2ZSBjb25nZW5pdGFsIGljaHRoeW9zaXMsIGFzIHRoaXMgaXMgdGhlIG9uZSBvdXIgZnJpZW5kIGlzIHN0cnVnZ2xpbmcgd2l0aC4gV2Ugd2lsbCBmb2N1cyBvbiB0aGUgY29uc2VxdWVuY2VzIG9mIG11dGF0aW9ucyBpbiB0aHJlZSBkaWZmZXJlbnQgZ2VuZXMgKFRHTTEsIEFMT1hFMywgQUxPWDEyQikgdGhhdCBjYW4gdW5kZXJsaWUgdGhpcyBjb25kaXRpb24gWzVdLiBIb3dldmVyLCBpZiBvdXIgYXBwcm9hY2ggdHVybnMgb3V0IHRvIGJlIHN1Y2Nlc3NmdWwsIGFmdGVyIHNvbWUgYWRqdXN0bWVudHMsIHRoZSBwcm90b2NvbCBjb3VsZCBiZSBhcHBsaWVkIGZvciB0aGUgcmVtYWluaW5nIHR5cGVzIG9mIHRoZSBkaXNlYXNlIGFzIHdlbGwuIEZpcnN0IG9mIGFsbCwgd2VcdTIwMTlsbCBlbmdpbmVlciBFLiBjb2xpIHRvIHByb2R1Y2UgdGhlIGNob3NlbiBlbnp5bWVzIGVuY29kZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgZ2VuZXMgd2UgY2hvc2U6IHRyYW5zZ2x1dGFtaW5hc2UgMSwgRXBpZGVybWlzLXR5cGUgbGlwb3h5Z2VuYXNlIDMsIEFyYWNoaWRvbmF0ZSAxMi1saXBveHlnZW5hc2UgYW5kIHRoZW4gd2Ugd2lsbCBwdXJpZnkgdGhlbSBmcm9tIHRoZSBiYWN0ZXJpYS4gT25jZSB0aGlzIHN5c3RlbSBpcyBlc3RhYmxpc2hlZCBhbmQgb3B0aW1pemVkLCB3ZVx1MjAxOWxsIHByb2NlZWQgdG8gZGVzaWduIGEgZnVuY3Rpb25pbmcgZGVsaXZlcnkgc3lzdGVtIHRoYXQgd2Ugd2lsbCBlbmNhcHN1bGF0ZSB0aGUgZW56eW1lcyBpbi4gV2UgaGF2ZSBkZWNpZGVkIHRvIHByb2R1Y2UgbW9kdWxhdGVkIGxpcG9zb21lcyB0aGF0IHdpbGwgYmUgYWJsZSB0byBrZWVwIHRoZSBlbnp5bWVzIGFjdGl2ZSB3aGlsZSB0cmFuc3BvcnRpbmcgdGhlbS4gT25jZSB0aGUgdGFyZ2V0IHNraW4gbGF5ZXIgaXMgcmVhY2hlZCwgdGhlIGxpcG9zb21lcyB3aWxsIGZ1c2Ugd2l0aCB0aGUgbWVtYnJhbmVzIG9mIHRoZSBjZWxscyBvZiBpbnRlcmVzdCwgZGVsaXZlcmluZyB0aGUgcHJvZHVjdCB0byBpdHMgZmluYWwgZGVzdGluYXRpb24uIEZ1bmN0aW9uaW5nIGxpcG9zb21lcyBwYWNrZWQgd2l0aCB0aGUgcHJvZHVjZWQgZW56eW1lcyB3aWxsIHRoZW4gYmUgaW5jb3Jwb3JhdGVkIGludG8gYSBzdWl0YWJsZSBtZWRpdW0gdG8gZmFjaWxpdGF0ZSB0aGUgdG9waWNhbCBhcHBsaWNhdGlvbiBmb3IgdGhlIHBhdGllbnRzXHUyMDFELiA8L3A+XG4gICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJpR0VNIHRlYW0gTGl1IHByb2plY3Qgb3VyIGlkZWFcIi8+XG4gICAgICAgICAgICAgICAgPHA+V2UgZmlyc3QgbWFkZSBjb250YWN0IHdpdGggdGhlIHRlYW0gb2YgTElVIHZpYSBlbWFpbCwgZHVlIHRvIGJvdGggb3VyIHRlYW1zXHUyMDE5IGludGVyZXN0IGluIHdvcmtpbmcgd2l0aCBMTlAgYmFzZWQgZGVsaXZlcnkgc3lzdGVtcy4gSXQgcmFwaWRseSBiZWNhbWUgYXBwYXJlbnQgdGhhdCBvdXIgdHdvIHRlYW1zIGNvdWxkIGJlbmVmaXQgZnJvbSBhIGNvcnBvcmF0aW9uIGVzcGVjaWFsbHkgc2luY2UgdGhlIHRlYW0gb2YgTGlVIHdhcyB3b3JraW5nIG9uIGFuIExOUCBoYW5kYm9vayBhdCB0aGUgdGltZS48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJIYW5kYm9va1wiIGNsYXNzTmFtZT1cImNvbGwtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgPEg0IGlkPVwiSGFuZGJvb2staGVhZGluZ1wiIHRleHQ9XCJIYW5ib29rIGZvciBkb3dubG9hZFwiLz5cbiAgICAgICAgICAgICAgICA8UERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2xpcG9zb21lcy1oYW5kYm9vay5wZGZcIiBuYW1lPVwibGlwb3NvbWVzLWhhbmRib29rLnBkZlwiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICApXG59IiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRWR1U291cmNlcygpe1xuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSBzcGVjaWFsPVwiZWR1XCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG5gQGFydGljbGV7YXJ0aWNsZSxcbmF1dGhvciA9IHtBc3dlZ2VuLCBFbGxpZSBhbmQgUGVuZGVyZ2FzdCwgRG9ubmF9LFxueWVhciA9IHsyMDIzfSxcbm1vbnRoID0gezA4fSxcbnBhZ2VzID0gezEtMTV9LFxudGl0bGUgPSB7VGhlIGltcGFjdCBvZiBpbnRlcmVzdDogYW4gZW1lcmdlbnQgbW9kZWwgb2YgaW50ZXJlc3QgZGV2ZWxvcG1lbnQgaW4gdGhlIGVhcmx5IHllYXJzfSxcbnZvbHVtZSA9IHsxOTN9LFxuam91cm5hbCA9IHtFYXJseSBDaGlsZCBEZXZlbG9wbWVudCBhbmQgQ2FyZX0sXG5kb2kgPSB7MTAuMTA4MC8wMzAwNDQzMC4yMDIzLjIyNDU1NzV9XG59YFxuXSIsICJpbXBvcnQgeyBCdXR0b25PbmVXaXRoU2Nyb2xsIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xuaW1wb3J0IHsgIEg0IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7ICBINSB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCJcbmltcG9ydCB7IFRhYlNjcm9sbExpbmsgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9MaW5rXCI7XG5pbXBvcnQgUHJlQ3lzZSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9wcmVjeXNlXCI7XG5pbXBvcnQgRWR1U291cmNlcyBmcm9tIFwiLi4vLi4vLi4vc291cmNlcy9lZHVjYXRpb24tc291Y2VzXCI7XG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzXCI7XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gSFBFZHVjYXRpb24oKXtcbiAgICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPXt7bWFyZ2luVG9wOiBcIjV2aFwiLCBtYXJnaW5Cb3R0b206IFwiNXZoXCJ9fT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlZHUtY3ljbGV0YWJcIiB0ZXh0PVwiT3ZlcnZpZXdcIiBvcGVuPVwiZWR1LW92ZXJ2aWV3XCIgc2Nyb2xsSWQ9XCJlZHUtaGVhZGluZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlZHUtY3ljbGV0YWJcIiB0ZXh0PVwiVGV1dG8gcnVmdCFcIiBvcGVuPVwidGV1dG9ydWZ0XCIgc2Nyb2xsSWQ9XCJ0ZXVyb3J1ZnQtaGVhZGluZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlZHUtY3ljbGV0YWJcIiB0ZXh0PVwiU2NoXHUwMEZDbGVyKmlubmVuIEFrYWRlbWllXCIgb3Blbj1cImFrYWRlbWllXCIgc2Nyb2xsSWQ9XCJzdHVkZW50LWFjYWRlbXktaGVhZGluZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlZHUtY3ljbGV0YWJcIiB0ZXh0PVwiTUlOVCBTb21tZXJcIiBvcGVuPVwibWludFwiIHNjcm9sbElkPVwibWludC1oZWFkaW5nXCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cblxuXG5cblxuICAgICAgICAgICAgPGRpdiBpZD1cImVkdS1vdmVydmlld1wiIGNsYXNzTmFtZT1cImVkdS1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICA8SDQgaWQ9XCJlZHUtaGVhZGluZ1wiIHRleHQ9XCJFZHVjYXRpb24gYXMgcGFydCBvZiBhIGludGVncmF0ZWQgaHVtYW4gcHJhY3RpY2UgLSBidXQgd2h5P1wiLz5cbiAgICAgICAgICAgIDxwPldoaWxlIGVkdWNhdGlvbiBpcyBub3QgZGlyZWN0bHkgY29uc2lkZXJlZCBwYXJ0IG9mIEh1bWFuIFByYWN0aWNlcyBpbiBpR0VNLCBpdCByZW1haW5zIGEgdml0YWwgY29tcG9uZW50IG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCBzY2llbnRpZmljIGFkdmFuY2VtZW50IFxuICAgICAgICAgICAgICAgIGZvciBzZXZlcmFsIGltcG9ydGFudCByZWFzb25zOjwvcD5cbiAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICA8bGk+VG8gaGVscCBwZW9wbGUgbWFrZSA8Yj5pbmZvcm1lZCBjaG9pY2VzPC9iPiBhbmQgZW5jb3VyYWdlIDxiPmVtYW5jaXBhdGlvbiB0aHJvdWdoIGVkdWNhdGlvbjwvYj4uPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+T25seSBpbmZvcm1lZCBwYXJ0aWNpcGFudHMgYWxsb3cgZm9yIDxiPmV0aGljYWwgZW5nYWdlbWVudDwvYj4uPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+VG8gZW5zdXJlIDxiPmNvbnRpbnVvdXMgbGVhcm5pbmc8L2I+IGluIG9yZGVyIHRvIHNlY3VyZSB0aGUgZnV0dXJlIG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCBjeXN0aWMgZmlicm9zaXMgcmVzZWFyY2guPC9saT5cbiAgICAgICAgICAgICAgICA8bGk+T25seSBhd2FyZW5lc3MgYW5kIGtub3dsZWRnZSBjYW4gPGI+cHJldmVudCBtaXN1c2UgYW5kIG1pc2luZm9ybWF0aW9uPC9iPi48L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDxwPlRoaXMgaXMgYXBwbGljYWJsZSB0byBib3RoIGN5c3RpYyBmaWJyb3NpcyBhbmQgc3ludGhldGljIGJpb2xvZ3kgaW4gZ2VuZXJhbC48L3A+XG4gICAgICAgICAgICA8cD5NYW55IHBlb3BsZSBncmF2aXRhdGUgdG93YXJkcyBmaWVsZHMgdGhleSBhcmUgaW50ZXJlc3RlZCBpbi4gQXdhcmVuZXNzLCBleHBsb3JhdGlvbiwgYW5kIHJlY2VpdmluZyBuZXcga25vd2xlZGdlIGFyZSBuZWNlc3NhcnkgdG8gY3VsdGl2YXRlIGFuIGF1dGhlbnRpYyBcbiAgICAgICAgICAgICAgICBpbnRlcmVzdCwgd2hpY2gsIHRvZ2V0aGVyIHdpdGggcG9zaXRpdmUgc29jaWFsIGludGVyYWN0aW9uLCBmb3JtcyBhIHByb21pc2luZyBmb3VuZGF0aW9uIGZvciBhIGxhc3RpbmcgaW50ZXJlc3Q8VGFiU2Nyb2xsTGluayB0YWI9XCJlZHUtb3ZlcnZpZXdcIiBudW09XCIxXCIgc2Nyb2xsSWQ9XCJkZXNjLWVkdVwiLz4uIEFzIGZ1dHVyZSByZXNlYXJjaGVycyBhbmQgcGFydCBvZiBhIFxuICAgICAgICAgICAgICAgIGNvbXBldGl0aW9uIGFpbWluZyBmb3IgY29udGludW91cyBpbm5vdmF0aW9uLCB3ZSBmZWVsIGVkdWNhdGlvbiBpcyBhbiBpbXBvcnRhbnQgYXNjcGVjdCB0aGF0IHNob3VsZCBub3QgYmUgc2hydWdnZWQgb2ZmIHVuZGVyIHRoZSBndWlzZSBvZiBmb2N1c2luZyBvbiBIdW1hbiBQcmFjdGljZXMuPC9wPlxuXG4gICAgICAgICAgICA8SDQgaWQ9XCJlZHUtd2h5LWhlYWRpbmdcIiB0ZXh0PVwiT3VyIGVkdWNhdGlvbmFsIGFjdGl2aXRpZXNcIi8+XG4gICAgICAgICAgICA8cD5JbiBib3RoIFwiRGVyIFRldXRvIHJ1ZnQhXCIgYW5kIHRoZSBDZUJpVGVjIFN0dWRlbnQgQWNhZGVteSwgb3VyIHRlYW0gZm9jdXNlZCBvbiBlZHVjYXRpb24gdGhyb3VnaCBwZXJzb25hbCBjb250YWN0IG5vdCBvbmx5IGFzIHdheSB0byBzcHJlYWQgXG4gICAgICAgICAgICAgICAgYXdhcmVuZXNzIGFib3V0IGN5c3RpYyBmaWJyb3NpcywgYnV0IHRvIHNwcmVhZCB0aGUgbG92ZSB3ZSBoYXZlIGZvciB3aGF0IHdlIGRvLiA8L3A+XG4gICAgICAgICAgICA8cD5XZSBhcmUgZ2xhZCB0byBoYXZlIGhhZCB0aGUgcG9zc2liaWxpdHkgdG8gd29yayB3aXRoIHN1Y2ggZGlmZmVyZW50IGF1ZGllbmNlcy4gV2hpbGUgXCJEZXIgVGV1dG8gcnVmdCFcIiBoYWQgYSBmb2N1cyBvbiBmYW1pbGllcyBhbmQgcmVxdWlyZWQgYSBjcmVhdGl2ZVxuICAgICAgICAgICAgICAgIGFwcHJvYWNoLCB0aGUgXCJTY2hcdTAwRkNsZXIqaW5uZW4gQWthZGVtaWVcIiBhbmQgXCJNSU5UIFNvbW1lclwiIGFsbG93ZWQgdXMgdG8gaW50ZXJhY3Qgd2l0aCBhc3BpcmluZyByZXNlYXJjaGVycyB3aG8gbWF5IHZlcnkgd2VsbCBiZSBvdXIgZnV0dXJlIGNsYXNzbWF0ZXMgYXQgXG4gICAgICAgICAgICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHkuIFxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHA+SG93ZXZlciwgd2UgY2FtZSB0byByZWFsaXplIHRoYXQgXCJEZXIgVGV1dG8gcnVmdCFcIiBtYXkgaGF2ZSBiZWVuIHRoZSBtb3JlIGltcGFjdGZ1bCBldmVudCBmb3Igb3VyIHBlcnNvbmFsIGdyb3d0aC4gSXQgdG9vayB1cyBvdXQgb2YgdGhlIGZhbWlsaWFyIFxuICAgICAgICAgICAgICAgIFwic2NpZW5jZSBidWJibGVcIiBhbmQgaW50byBhIHNwYWNlIHdoZXJlIHdlIGNvdWxkIGludGVyYWN0IHdpdGggdGhlIGdlbmVyYWwgcHVibGljXHUyMDE0cGVvcGxlIHdobyBkb25cdTIwMTl0IG5lY2Vzc2FyaWx5IGhhdmUgYSBzY2llbnRpZmljIGJhY2tncm91bmQuIFRoaXMgXG4gICAgICAgICAgICAgICAgZXhwZXJpZW5jZSByZW1pbmRlZCB1cyBob3cgbm9uLXNjaWVudGlzdHMgcGVyY2VpdmUgY29tcGxleCB0b3BpY3MgbGlrZSBnZW5lIHRoZXJhcHkgYW5kIGN5c3RpYyBmaWJyb3Npcy4gSXQgYWxzbyBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBub3Qgb25seSBcbiAgICAgICAgICAgICAgICBldGhpY2FsIHJlc3BvbnNpYmlsaXR5IGJ1dCBhbHNvIHNvY2lhbCByZXNwb25zaWJpbGl0eSBpbiBjb21tdW5pY2F0aW5nIHNjaWVuY2UuIFdlIGdhaW5lZCBhbmQgcmVnYWluZWQgaW5zaWdodCBpbnRvIHRoZSBjb25jZXJucywgbWlzY29uY2VwdGlvbnMsIGFuZCBcbiAgICAgICAgICAgICAgICBob3BlcyB0aGF0IHRoZSBwdWJsaWMgaGFzIHJlZ2FyZGluZyBzeW50aGV0aWMgYmlvbG9neSwgYWxsb3dpbmcgdXMgdG8gYmV0dGVyIHVuZGVyc3RhbmQgd2hhdCBpcyBub3Qgb25seSBzY2llbnRpZmljYWxseSBzb3VuZCBidXQgYWxzbyBzb2NpYWxseSBcbiAgICAgICAgICAgICAgICBhY2NlcHRhYmxlLiBXZSBhcmUgY29uZmlkZW50IHRoYXQgcGFydGljaXBhdGluZyBpbiBcIkRlciBUZXV0byBydWZ0IVwiIHZlcnkgcG9zaXRpdmVseSBpbmZsdWVuY2VkIG91ciBhcHByb2FjaCB0byBmdXJ0aGVyIGNvbW11bmljYXRpb24uIDwvcD5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUmVmZXJlbmNlc1wiPjwvSDQ+XG4gICAgICAgICAgICA8RWR1U291cmNlcy8+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBpZD1cImFrYWRlbWllXCIgY2xhc3NOYW1lPVwiZWR1LWN5Y2xldGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgIDxINCBpZD1cInN0dWRlbnQtYWNhZGVteS1oZWFkaW5nXCIgdGV4dD1cIlN0dWRlbnQgYWNhZGVteSBvbiB0aGUgdG9waWMgb2Ygc3ludGhldGljIGJpb2xvZ3lcIi8+XG4gICAgICAgICAgICAgICAgPEg1IGlkPVwiU2NoXHUwMEZDbGVyKmlubmVuIEFrYWRlbWllXCIgdGV4dD1cIlRlYWNoaW5nIHRoZSBOZXh0IEdlbmVyYXRpb24gb2YgU3luQmlvIFBpb25lZXJzIFwiLz5cbiAgICAgICAgICAgICAgICA8cD4gVGhlIENlbnRlciBmb3IgQmlvdGVjaG5vbG9neSAoQ2VCaVRlYykgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgb3JnYW5pemVzIHRoZSBhbm51YWwuIDxhIGhyZWY9XCJodHRwczovL3d3dy5jZWJpdGVjLnVuaS1iaWVsZWZlbGQuZGUvZXZlbnRzL2Z1dGhlci1ldmVudHMvNjQ4LTExLXNjaHVlbGVyYWthZGVtaWVcIiB0aXRsZT1cIkNlQmlUZWMgU3R1ZGVudCBBY2FkZW15IGZvciBcdTIwMUNCaW90ZWNobm9sb2d5IGFuZCBCaW9tZWRpY2luZVwiID4gQ2VCaVRlYyBTdHVkZW50IEFjYWRlbXkgZm9yIFx1MjAxQ0Jpb3RlY2hub2xvZ3kgYW5kIEJpb21lZGljaW5lIDwvYT4gU3VwcG9ydGVkIGJ5IDxhIGhyZWY9XCJodHRwczovL3d3dy5vc3RodXNoZW5yaWNoLXN0aWZ0dW5nLmRlXCIgdGl0bGU9XCJPc3RodXNoZW5yaWNoIEZvdW5kYXRpb25cIiA+IE9zdGh1c2hlbnJpY2ggRm91bmRhdGlvbiA8L2E+IGFuZCB0aGUgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmJlenJlZy1kZXRtb2xkLm5ydy5kZS9cIiB0aXRsZT1cIkRldG1vbGQgZGlzdHJpY3QgZ292ZXJubWVudFwiID4gRGV0bW9sZCBkaXN0cmljdCBnb3Zlcm5tZW50IDwvYT4sIHRoZSBhY2FkZW15IG9mZmVycyBzdHVkZW50cyBhIHVuaXF1ZSBvcHBvcnR1bml0eSB0byBkZWVwZW4gdGhlaXIgdW5kZXJzdGFuZGluZyBvZiBiaW9sb2d5LCBnZW5ldGljcywgYW5kIG1vbGVjdWxhciBiaW9sb2d5IHRocm91Z2ggaGFuZHMtb24gZXhwZXJpbWVudHMgYW5kIGV4cGVydCBsZWN0dXJlcy4gS2V5IHRvcGljcyBpbmNsdWRlIG5hbm9wb3JlIHNlcXVlbmNpbmcsIHR1bW9yIGRpYWdub3N0aWNzLCBhbmQgdGhlIGV2b2x1dGlvbiBvZiBTQVJTLUNvVi0yLiBUaGUgcHJvZ3JhbSBpcyBlc3BlY2lhbGx5IHZhbHVhYmxlIGZvciBzdHVkZW50cyB0cmFuc2l0aW9uaW5nIGZyb20gc2Nob29sIHRvIHBvdGVudGlhbCBzdHVkaWVzIGluIHRoZSBuYXR1cmFsIHNjaWVuY2VzLiBcbkR1ZSB0byBvdXIgY29sbGFib3JhdGlvbiB3aXRoIHRoZSBTdHVkZW50IEFjYWRlbXksIHdlIGNvbmR1Y3RlZCB0aGUgbmFub3BvcmUgc2VxdWVuY2luZyBleHBlcmltZW50IGFuZCBzZXJ2ZWQgYXMgdGVhY2hlcnMsIGFzc2lzdGluZyBpbiBleHBlcmltZW50IHByZXBhcmF0aW9uLCBleGVjdXRpb24sIG9mZmVyaW5nIGd1aWRhbmNlLCBhbmQgYW5zd2VyaW5nIHF1ZXN0aW9ucy4gVGhpcyByb2xlIGFsbG93ZWQgdXMgdG8gdGVhY2ggdGhlIHN0dWRlbnRzIGFib3V0IGxhYm9yYXRvcnkgd29yaywgdGhlIGNyaXRpY2FsIGFzcGVjdHMgb2YgY29uZHVjdGluZyBleHBlcmltZW50cywgYW5kIGVzc2VudGlhbCBzYWZldHkgY29uc2lkZXJhdGlvbnMuIFRoZSBleHBlcmltZW50IGludm9sdmVkIGlzb2xhdGluZyBiYWN0ZXJpYWwgRE5BLCBwcmVwYXJpbmcgc2FtcGxlcyBmb3Igc2VxdWVuY2luZywgYW5kIHBlcmZvcm1pbmcgYm90aCBzZXF1ZW5jaW5nIGFuZCBkYXRhIGFuYWx5c2lzLjwvcD5cbjxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZWRjYXRpb24tYW5kLW91dHJlYWNoL3NjaGllbGVyYWthZGVtaWUtdm9ydHJhZy1qb2Vybi5qcGdcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC9zY2hpZWxlcmFrYWRlbWllLWxpc2EtZ3J1cHBlMi5qcGdcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBcbjxwPjwvcD5cbjxwPjwvcD5cbiAgICAgICAgPHA+U2luY2Ugd2UgcHJlc2VudGVkIG91ciBpR0VNIHByb2plY3QgPFByZUN5c2UvPiB0byB0aGVtIGFzIHdlbGwsIHRoZSBzdHVkZW50cyB3ZXJlIGludHJvZHVjZWQgdG8gc3R1ZHktcmVsYXRlZCBwcm9qZWN0cyBsaWtlIGlHRU0uIFRoZXkgbGVhcm5lZCBhYm91dCB0aGUgZGFpbHkgdGFza3MsIGNoYWxsZW5nZXMsIGFuZCByZXNwb25zaWJpbGl0aWVzIGludm9sdmVkIGluIGlHRU0gdGhyb3VnaCBwcm9qZWN0IGRpc2N1c3Npb25zLiBNYW55IHN0dWRlbnRzIHdlcmUgY2FwdGl2YXRlZCBieSB0aGUgaUdFTSBjb25jZXB0IGFuZCBleHByZXNzZWQgaW50ZXJlc3QgaW4gcGFydGljaXBhdGluZyBkdXJpbmcgdGhlaXIgZnV0dXJlIHN0dWRpZXMuIFRoZXkgd2VyZSBwYXJ0aWN1bGFybHkgZmFzY2luYXRlZCBieSB0aGUgb3Bwb3J0dW5pdHkgdG8gZGV2ZWxvcCByZWFsIHJlc2VhcmNoIHByb2plY3RzLCB3b3JrIGluZGVwZW5kZW50bHkgaW4gdGhlIGxhYiwgbGVhcm4gZXh0ZW5zaXZlbHkgYWJvdXQgc3ludGhldGljIGJpb2xvZ3ksIGFuZCBpbXBsZW1lbnQgY3JlYXRpdmUgaWRlYXMgd2hpbGUgY29sbGFib3JhdGluZyB3aXRoIGFuIGludGVybmF0aW9uYWwgdGVhbS48L3A+ICAgICAgIFxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBpZD1cInRldXRvcnVmdFwiIGNsYXNzTmFtZT1cImVkdS1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgPEg0IGlkPVwidGV1cm9ydWZ0LWhlYWRpbmdcIiB0ZXh0PVwiRWR1Y2F0aW9uYWwgY2l0eSB0b3VyIGZvciB5b3VuZyBhbmQgb2xkXCIvPlxuICAgICAgICAgICAgICAgICAgICA8SDUgaWQ9XCJEZXIgVGV1dG8gcnVmdCFcIiB0ZXh0PVwiIFdoYXQgaXMgXHUyMDFDRGVyIFRldXRvIHJ1ZnQhXHUyMDFEIGFuZCB3aHkgd2UgcGFydGljaXBhdGVcIi8+ICAgICAgICAgICAgICAgXG48cD5cIkRlciBUZXV0byBydWZ0IVwiIGlzIGFuIG91dHJlYWNoIGV2ZW50IGxvY2F0ZWQgYWxsIG92ZXIgdGhlIGNpdHkgb2YgQmllbGVmZWxkIHdoZXJlIHZhcmlvdXMgbG9jYWwgY29tcGFuaWVzIGFuZCBpbnN0aXR1dGlvbnMgZW5nYWdlIHdpdGggdGhlIHB1YmxpYyB0byBpbmZvcm0gdGhlbSBhYm91dCB0aGVpciB3b3JrLiBTaW5jZSB3ZSB3YW50ZWQgdG8gcmFpc2UgYXdhcmVuZXNzIGZvciBjeXN0aWMgZmlicm9zaXMgYW5kIHByZXNlbnQgb3VyIGFwcHJvYWNoIHRvIGRldmVsb3BpbmcgYW4gb3B0aW1pemVkIGdlbmUgdGhlcmFweSB0byBjb21iYXQgdGhpcyBkaXNlYXNlLCBvdXIgcGFydGljaXBhdGlvbiBpbiB0aGUgXCJEZXIgVGV1dG8gcnVmdCFcIiBldmVudCBpbiBCaWVsZWZlbGQgd2FzIHRoZSBwZXJmZWN0IG9wcG9ydHVuaXR5IHRvIGRvIHNvLjwvcD4gICAgICAgICAgICAgICBcbjxINSBpZD1cIldoYXQgd2FzIG91ciBzdHJhdGVneT9cIiB0ZXh0PVwiV2hhdCBpcyBvdXIgc3RyYXRlZ3k/XCIvPlxuPHA+T3VyIGdvYWwgd2FzIHRvIGVkdWNhdGUgY2hpbGRyZW4gYWJvdXQgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMsIGVzcGVjaWFsbHkgdGhlIG9uZXMgd2l0aCBsdW5nIHByb2JsZW1zLiBUaGUga25vd2xlZGdlIHdoaWNoIHdlIGdhaW5lZCBhdCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdjb21td29ya3Nob3AnLCAnL2NvbnRyaWJ1dGlvbicpfT4gU2NpZW5jZSBDb21tdW5pY2F0aW9uIFdvcmtzaG9wIDwvYT4gYXMgcGFydCBvZiB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdiZmgtZXVyb3BlYW4tbWVldHVwJywgJy9jb250cmlidXRpb24nKX0+IEJGSCBNZWV0dXAgPC9hPiB3YXMgdGhlIG9wdGltYWwgYmFzaXMgdG8gcGxhbiBvdXIgb3V0cmVhY2ggdG8gdGhlIHB1YmxpYy4gV2UgZW5nYWdlZCB0aGUgY2hpbGRyZW4gd2l0aCBhY3Rpdml0aWVzIGxpa2UgY29sb3JpbmcgbHVuZyBpbWFnZXMgYW5kIGNvbmR1Y3RpbmcgZXhwZXJpbWVudHMgdG8gZXhwZXJpZW5jZSBhbmQgdW5kZXJzdGFuZCBsdW5nIHJlbGF0ZWQgc3ltcHRvbXMuICBcbk9uZSBzdWNoIGV4cGVyaW1lbnQgaW52b2x2ZWQgY3JlYXRpbmcgYSBsdW5nIG1vZGVsIGZyb20gYmFsbG9vbnMgYW5kIHN0cmF3cywgZGVtb25zdHJhdGluZyB0aGUgZGlmZmljdWx0eSBwYXRpZW50cyBoYXZlIGluIGJyZWF0aGluZyBieSBoYXZpbmcgdGhlIGNoaWxkcmVuIGJsb3cgaW50byB0aGUgc3RyYXdzLiBBZGRpdGlvbmFsbHksIHdlIHNldCB1cCBhIHRhbmsgd2l0aCBhIG1peHR1cmUgb2Ygc3RhcmNoIGFuZCB3YXRlciB0byBzaW11bGF0ZSBtdWN1cyBhbmQgcGxhY2VkIGEgYmFsbCBvbiB0b3AuIFRoZSBjaGlsZHJlbiB0cmllZCB0byBibG93IHRoZSBiYWxsIGFjcm9zcyB0aGUgc3VyZmFjZSwgaWxsdXN0cmF0aW5nIGhvdyBoYXJkIGl0IGlzIGZvciBhaXIgdG8gbW92ZSB0aHJvdWdoIG11Y3VzIGNvbXBhcmVkIHRvIHdhdGVyLCB3aGVyZSB0aGUgYmFsbCBtb3ZlZCBtdWNoIG1vcmUgZWFzaWx5LiBcblRoZSB2ZXJ5IGxpdHRsZSBvbmVzIGNvdWxkIHBhaW50IGNvbG9yaW5nIHBhZ2VzIHdoaWNoIHdlIGRlc2lnbmVkIGFuZCBwcmludGVkIGZvciB0aGVtLiBGb3IgdGhlIGFkdWx0cywgd2UgcHJvdmlkZWQgaW5mb3JtYXRpb24gYWJvdXQgb3VyIHByb2plY3QgYW5kIGRpc2N1c3NlZCB0aGUgaW1wbGljYXRpb25zIGFuZCBwb3RlbnRpYWwgb2YgZ2VuZSB0aGVyYXB5IGZvciBjeXN0aWMgZmlicm9zaXMuIFRoZXNlIGNvbnZlcnNhdGlvbnMgYXMgd2VsbCBhcyB0aGUgcmVzdWx0cyBvZiBvdXIgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdvdXItc3VydmV5cy1vbi1jeXN0aWMtZmlicm9zaXMtYW5kLWdlbmUtdGhlcmFweScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBzdXJ2ZXkgb24gQ0YgYW5kIGdlbmUgdGhlcmFweSA8L2E+IHdoaWNoIHdhcyBjb25kdWN0ZWQgZXZlbnRzIGxpa2UgdGhlc2UgbWFkZSBpdCBhYnVuZGFudGx5IGNsZWFyIHRoYXQgZGVncmVlcyBvZiBrbm93bGVkZ2Ugb24gdGhpcyB0b3BpYyB3aWRlbHkgdmFyeSB0aHJvdWdob3V0IHRoZSBwdWJsaWMgYW5kIHdlIHdlcmUgaGFwcHkgdG8gZmlsbCBpbiB0aGUgZXhpc3RpbmcgZ2FwcyBpbiBwZW9wbGUncyBrbm93bGVkZ2UgYW5kIGV4Y2hhbmdlIHBvaW50cyBvZiB2aWV3IG9uIGdlbmUgdGhlcmFweS4gIFxuTW9yZW92ZXIsIHdlIGNvbm5lY3RlZCB3aXRoIG90aGVyIGluc3RpdHV0aW9ucyBhbmQgcGFydGljaXBhbnRzIGF0IHRoZSBldmVudC4gV2Ugc2hhcmVkIG91ciBib290aCBhdCBCaWVsZWZlbGRcdTIwMTlzIFx1MjAxQ1NrdWxwdHVyZW5wYXJrXHUyMDFEIG9uIHRoZSBvdXRzaWRlIHdpdGggPGEgaHJlZj1cImh0dHBzOi8vYnRzLWV2LmRlL2JpZWxlZmVsZC9cIiB0aXRsZT1cImJ0U1wiID4gYnRTIDwvYT4sIHRoZSBsaWZlIHNjaWVuY2Ugc3R1ZGVudCBpbml0aWF0aXZlIGZyb20gQmllbGVmZWxkIFVuaXZlcnNpdHksIHdpdGggd2hvc2UgbWVtYmVycyB3ZSBoYWQgc3RpbXVsYXRpbmcgZGlzY3Vzc2lvbnMgYXMgd2VsbC4gV2Ugd2VyZSBtb3JlIHRoYW4gZGVsaWdodGVkIHdoZW4gdGhlIGNpdHkgb2YgQmllbGVmZWxkIGZlYXR1cmVkIHVzIG9uIHRoZWlyIEluc3RhZ3JhbSwgaGlnaGxpZ2h0aW5nIG91ciBwcmVzZW5jZSBkdXJpbmcgXCJEZXIgVGV1dG8gcnVmdCFcIi4gVGhpcyBjb2xsYWJvcmF0aW9uIGhlbHBlZCB1cyByZWFjaCBhIHdpZGVyIGF1ZGllbmNlIGFuZCByYWlzZSBhd2FyZW5lc3MgYWJvdXQgb3VyIHJlc2VhcmNoIGVmZm9ydHMuPC9wPlxuPGJyLz5cbnsvKiA8YSBocmVmPVwiaHR0cHM6Ly91bmliaWVsZWZlbGRkZS5zaGFyZXBvaW50LmNvbS9zaXRlcy9pR0VNMjAyNHRlYW1zL19sYXlvdXRzLzE1L3N0cmVhbS5hc3B4P2lkPSUyRnNpdGVzJTJGaUdFTTIwMjR0ZWFtcyUyRkZyZWlnZWdlYmVuZSUyMERva3VtZW50ZSUyRkdlbmVyYWwlMkZGb3RvcyUyQyUyMFZpZGVvcyUyMHVuZCUyMENvJTJGVGV1dG8lMjBydWZ0JTJGVmlkZW8lMjBJbnN0YSUyMFRldXRvJTIwUnVmdCUyRW1vdiZnYT0xJnJlZmVycmVyPVN0cmVhbVdlYkFwcCUyRVdlYiZyZWZlcnJlclNjZW5hcmlvPUFkZHJlc3NCYXJDb3BpZWQlMkV2aWV3JTJFZTRhNDNhNTUlMkRmZmYzJTJENGI0NCUyRGIwODElMkRhZDI2MzA2ZjkzZTBcIiB0aXRsZT1cInZpZGVvIFRldXRvIHJ1ZnRcIiA+IHdhdGNoIG1lPC9hPiBcbiAqL31cbiA8YnIvPlxuPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPEg1IGlkPVwiY29uY2x1c2lvblwiIHRleHQ9XCJXaGF0IGlzIG91ciBjb25jbHVzaW9uXCIvPlxuICAgICAgICA8cD5EZXNwaXRlIHRoZSBjaGFuZ2VhYmxlIHdlYXRoZXIsIHdlIGNvdWxkIGVkdWNhdGUgbWFueSBwZW9wbGUgb2YgQmllbGVmZWxkJ3MgY29tbXVuaXR5IGFib3V0IGN5c3RpYyBmaWJyb3Npcywgb3VyIHRoZXJhcGV1dGljIGFwcHJvYWNoIGFuZCBnZW5lIHRoZXJhcHkgaW4gZ2VuZXJhbCBhbmQgaGFkIHRoZSBvcHBvcnR1bml0eSB0byBpbXByb3ZlIG91ciBzY2llbmNlIGNvbW11bmljYXRpb24gZm9yIHRoZSBmdXR1cmUgYXMgd2VsbCBzbyBpdCB3YXMgYSBzdWNjZXNzZnVsIGV2ZW50ISA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICA8ZmlndXJlPlxuICAgICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IFRldXRvIHJ1ZnQhICgyMDI0KSBbR2VybWFuXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvNzA0OTljYWUtNDhhZS00NTFhLWE4ODktMTAyZWY1ZTZjY2VhXCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT5cbiAgICAgICAgPGZpZ2NhcHRpb24+IDxiPkZpZ3VyZSAxLiA8L2I+IEluc3RhZ3JhbS1TdG9yeSBwb3N0ZWQgYnkgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vYmllbGVmZWxkamV0enQvXCI+PGk+QGJpZWxlZmVsZGpldHp0PC9pPjwvYT4gPC9maWdjYXB0aW9uPlxuICAgIDwvZmlndXJlPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4gICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZWRjYXRpb24tYW5kLW91dHJlYWNoL3RldXRvcnVmdC1leHBlcm1pbmV0LmpwZWdcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC90ZXV0b3J1ZnQtZ3J1cHBlLmpwZWdcIj48L2ltZz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICBcbiAgICAgICAgPC9kaXY+XG5cblxuXG5cbiAgICAgICAgPGRpdiBpZD1cIm1pbnRcIiBjbGFzc05hbWU9XCJlZHUtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICA8SDQgaWQ9XCJtaW50LWhlYWRpbmdcIiB0ZXh0PVwiTUlOVCBTb21tZXJcIi8+XG4gICAgICAgICAgICAgICAgPEg1IGlkPVwid2hhdCBhbmQgd2h5IG1pbnQgc3VtbWVyXCIgdGV4dD1cIldoYXQgaXMgTUlOVCBTdW1tZXIgYW5kIHdoeSB3ZXJlIHdlIHBhcnRpY2lwYXRpbmc/XCIvPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL21pbnRzb21tZXJsb2dvLnBuZ1wiIHN0eWxlPXt7d2lkdGg6XCIzMCVcIiwgaGVpZ2h0OlwiMjAlXCJ9fS8+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cdTIwMUNNSU5UIFN1bW1lciAyMDI0XHUyMDFEIGlzIGEgY29tcHJlaGVuc2l2ZSBwcm9ncmFtIGRlc2lnbmVkIHByaW1hcmlseSBmb3IgaGlnaCBzY2hvb2wgZ3JhZHVhdGVzIG9mIHRoZSBjbGFzcyBvZiAyMDI0LCB3aG8gYXJlIGNvbnNpZGVyaW5nIHB1cnN1aW5nIHN0dWRpZXMgaW4gU1RFTSBmaWVsZHMgKFNjaWVuY2UsIFRlY2hub2xvZ3ksIEVuZ2luZWVyaW5nLCBhbmQgTWF0aGVtYXRpY3MsIGluY2x1ZGluZyB0ZWFjaGluZyBkZWdyZWVzKS4gVGhlIHByb2dyYW0gaXMgcGVyZmVjdCBmb3IgdGhvc2Ugd2hvIGFyZSBzdGlsbCB1bmNlcnRhaW4gaWYgdGhleSB3YW50IHRvIHN0dWR5IGluIFNURU0gb3Igd2hpY2ggc3BlY2lmaWMgZGlzY2lwbGluZSBhbGlnbnMgYmVzdCB3aXRoIHRoZWlyIGludGVyZXN0cy48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5PdXIgcGFydGljaXBhdGlvbiBpbiA8YSBocmVmPVwiaHR0cHM6Ly93d3cudW5pLWJpZWxlZmVsZC5kZS9zdHVkaXVtL3N0dWRpZW5pbnRlcmVzc2llcnRlL21pbnQtc29tbWVyL1wiIHRpdGxlPVwiTWludCBTdW1tZXJcIiA+TUlOVCBTdW1tZXIgPC9hPiBvZmZlcmVkIHVzIHRoZSBjaGFuY2UgdG8gcmFpc2UgYXdhcmVuZXNzIG9mIGN5c3RpYyBmaWJyb3NpcyBhbmQgc2hvd2Nhc2Ugb3VyIGN1dHRpbmctZWRnZSBhcHByb2FjaCB0byBkZXZlbG9wIGFuIG9wdGltaXplZCBnZW5lIHRoZXJhcHkgdG8gY29tYmF0IHRoaXMgZGlzZWFzZS4gVGhyb3VnaCB0aGUgZXZlbnQgd2UgZW5nYWdlZCB3aXRoIHBvdGVudGlhbCBmdXR1cmUgc2NpZW50aXN0cyBhbmQgcmVzZWFyY2hlcnMsIGluZm9ybWluZyB0aGVtIGFib3V0IG91ciBwcm9qZWN0LCBpR0VNIGFuZCB0aGUgaW1wb3J0YW5jZSBvZiBzY2llbnRpZmljIHJlc2VhcmNoIGluIGFkdmFuY2luZyBtZWRpY2FsIHRyZWF0bWVudHMuIFRoaXMgcHJvZ3JhbSBub3Qgb25seSBhbGxvd3MgdXMgdG8gc2hhcmUgb3VyIG1pc3Npb24gYnV0IGFsc28gdG8gaW5zcGlyZSB0aGUgbmV4dCBnZW5lcmF0aW9uIG9mIFNURU0gc3R1ZGVudHMgYnkgaGlnaGxpZ2h0aW5nIHRoZSByZWFsLXdvcmxkIGltcGFjdCBvZiB0aGVpciBzdHVkaWVzLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8SDUgaWQ9XCJzdHJhdGVneSBzdW1tZXJcIiB0ZXh0PVwiV2hhdCB3YXMgb3VyIHN0cmF0ZWd5P1wiLz5cbiAgICAgICAgICAgICAgICAgICAgPHA+T3VyIG9iamVjdGl2ZSBhdCBNSU5UIFN1bW1lciB3YXMgdG8gaW5mb3JtIGF0dGVuZGVlcywgZXNwZWNpYWxseSBhc3BpcmluZyBTVEVNIHN0dWRlbnRzLCBhYm91dCB0aGUgdW5pcXVlIGNoYWxsZW5nZXMgZmFjZWQgYnkgY3lzdGljIGZpYnJvc2lzIChDRikgcGF0aWVudHMsIHdpdGggYSBwYXJ0aWN1bGFyIGZvY3VzIG9uIGx1bmctcmVsYXRlZCBjb21wbGljYXRpb25zLiBXZSBkcmV3IGhlYXZpbHkgb24gdGhlIGluc2lnaHRzIGdhaW5lZCBmcm9tIHRoZSBTY2llbmNlIENvbW11bmljYXRpb24gV29ya3Nob3AgYXQgdGhlIEJGSCBNZWV0dXAsIHdoaWNoIHByb3ZpZGVkIHVzIHdpdGggdGhlIHBlcmZlY3QgZnJhbWV3b3JrIHRvIG1ldGljdWxvdXNseSBwbGFuIG91ciBvdXRyZWFjaCBmb3IgdGhpcyBldmVudC4gVGhpcyBmb3VuZGF0aW9uIGFsbG93ZWQgdXMgdG8gY3JhZnQgZW5nYWdpbmcgYW5kIGVkdWNhdGlvbmFsIGFjdGl2aXRpZXMgdGhhdCBlZmZlY3RpdmVseSBjb252ZXllZCB0aGUgY29tcGxleGl0aWVzIG9mIENGIHRvIG91ciBhdWRpZW5jZSwgZW5zdXJpbmcgb3VyIG1lc3NhZ2Ugd2FzIGJvdGggaW1wYWN0ZnVsIGFuZCBhY2Nlc3NpYmxlLiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPldlIHRvb2sgdGhlIG9wcG9ydHVuaXR5IHRvIGV4cGxhaW4gdGhlIGlHRU0gY29tcGV0aXRpb24gYW5kIG91ciBwcm9qZWN0IHRvIHBhcnRpY2lwYW50cy4gV2Ugc2hhcmVkIGhvdyBpR0VNIGlzIGEgZ2xvYmFsIGNvbXBldGl0aW9uIHRoYXQgYnJpbmdzIHRvZ2V0aGVyIHN0dWRlbnQgdGVhbXMgdG8gc29sdmUgcmVhbC13b3JsZCBwcm9ibGVtcyB1c2luZyBzeW50aGV0aWMgYmlvbG9neS4gV2UgZGlzY3Vzc2VkIGhvdyBvdXIgYXBwcm9hY2ggYWltcyB0byBjb3JyZWN0IHRoZSBnZW5ldGljIG11dGF0aW9uIHJlc3BvbnNpYmxlIGZvciBDRiwgcG90ZW50aWFsbHkgb2ZmZXJpbmcgYSBtb3JlIGVmZmVjdGl2ZSB0cmVhdG1lbnQuIEJ5IGVuZ2FnaW5nIHdpdGggYXR0ZW5kZWVzLCB3ZSB3ZXJlIGFibGUgdG8gaGlnaGxpZ2h0IHRoZSBzaWduaWZpY2FuY2Ugb2Ygb3VyIHJlc2VhcmNoIGFuZCB0aGUgaW1wYWN0IGl0IGNvdWxkIGhhdmUgb24gaW1wcm92aW5nIHRoZSBsaXZlcyBvZiB0aG9zZSBhZmZlY3RlZCBieSB0aGlzIGNoYWxsZW5naW5nIGNvbmRpdGlvbi4gVGhleSBnb3QgdGhlIG9wcG9ydHVuaXR5IHRvIGNvbnRyaWJ1dGUgdG8gb3VyIHByb2plY3QgYnkgcGFydGljaXBhdGluZyBpbiBvdXIgc3VydmV5LiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPk92ZXIgdGhlIHRpbWUgb2YgdHdvIHdlZWtzLCB3ZSBlc3RhYmxpc2hlZCBtZWFuaW5nZnVsIGNvbm5lY3Rpb25zIHdpdGggcHJvZmVzc29ycywgc3R1ZGVudHMsIGFuZCBwYXJ0aWNpcGFudHMgYWNyb3NzIHZhcmlvdXMgU1RFTSBmaWVsZHMgZHVyaW5nIHRoZSBldmVudCwgbGlrZSB0aGUgc3R1ZGVudCBpbml0aWF0aXZlIGJ0UyBhbmQgdGhlIENhbXB1c2JyYXVlcmVpIEJpZWxlZmVsZC4gU2hhcmluZyBvdXIgcHJvamVjdCB3aXRoIHRoZSBsaWZlIHNjaWVuY2Ugc3R1ZGVudHMgd2FzIGhlbHBmdWwsIG1vdGl2YXRpbmcgYW5kIG9wZW5lZCB0aGUgZG9vciB0byBlbmdhZ2luZyBkaXNjdXNzaW9ucyB0aGF0IGVucmljaGVkIG91ciBwZXJzcGVjdGl2ZSBhbmQgZm9zdGVyZWQgY29sbGFib3JhdGlvbi4gVGhlc2UgaW50ZXJhY3Rpb25zIGFsbG93ZWQgdXMgdG8gY29ubmVjdCB3aXRoIGV4cGVydHMgYW5kIHN0dWRlbnRzIGZyb20gZGlmZmVyZW50IGRpc2NpcGxpbmVzLCBlbmhhbmNpbmcgb3VyIHVuZGVyc3RhbmRpbmcgb2YgaG93IG91ciBnZW5lIHRoZXJhcHkgcmVzZWFyY2ggZm9yIGN5c3RpYyBmaWJyb3NpcyBmaXRzIHdpdGhpbiB0aGUgYnJvYWRlciBzY2llbnRpZmljIGxhbmRzY2FwZS48L3A+XG4gICAgICAgICAgICAgICAgPEg1IGlkPVwiY29uY2x1c2lvbiBzdW1tZXJcIiB0ZXh0PVwiV2hhdCBpcyBvdXIgY29uY2x1c2lvbj9cIi8+XG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSBleHBlcmllbmNlIGFsbG93ZWQgdXMgdG8gcmVmaW5lIG91ciBzY2llbmNlIGNvbW11bmljYXRpb24gc2tpbGxzIGFuZCBjb25uZWN0IHdpdGggYSBicm9hZCByYW5nZSBvZiBTVEVNIHByb2Zlc3Npb25hbHMgYW5kIHN0dWRlbnRzLiBPdmVyYWxsLCB0aGUgZXZlbnQgd2FzIGEgdmFsdWFibGUgb3Bwb3J0dW5pdHkgZm9yIGJvdGggZWR1Y2F0aW9uIGFuZCBwcm9mZXNzaW9uYWwgZ3Jvd3RoLCBtYWtpbmcgaXQgYSByZXdhcmRpbmcgYW5kIGltcGFjdGZ1bCBleHBlcmllbmNlIGZvciBvdXIgdGVhbS4gPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbn0iLCAiaW1wb3J0IHsgIEJ1dHRvbk9uZVdpdGhTY3JvbGwgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgeyBINCwgSDUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgTG9yZW1TaG9ydCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0xvcmVtaXBzdW1cIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gSFBFbnRyZXByZW5ldXIoKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiNXZoXCIsIG1hcmdpbkJvdHRvbTogXCI1dmhcIn19PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlbnQtY3ljbGV0YWJcIiB0ZXh0PVwiT3ZlcnZpZXdcIiBvcGVuPVwiZW50LW92ZXJ2aWV3XCIgc2Nyb2xsSWQ9XCJlbnQtaGVhZGluZ1wiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlbnQtaW50ZXJ2aWV3XCIgdGV4dD1cIkludGVydmlld3Mgd2l0aCBGb3VuZGVyc1wiIG9wZW49XCJlbnQtaW50ZXJ2aWV3XCIgc2Nyb2xsSWQ9XCJlbnQtaW50ZXItaGVhZGluZ1wiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlbnQtaW50ZXJ2aWV3XCIgdGV4dD1cIk5leHQgU3RlcHNcIiBvcGVuPVwiZW50LW5leHRcIiBzY3JvbGxJZD1cImVudC1jb3Vyc2UtaGVhZGluZ1wiLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgICBcblxuICAgICAgICA8ZGl2IGlkPVwiZW50LW92ZXJ2aWV3XCIgY2xhc3NOYW1lPVwiZW50LWludGVydmlld1wiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICA8SDQgaWQ9XCJlbnQtaGVhZGluZ1wiIHRleHQ9XCJFbnRyZXByZW5ldXJzaGlwIGFzIHBhcnQgb2YgYSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlIC0gYnV0IHdoeT9cIi8+XG4gICAgICAgICAgICA8cD5FbnRyZXByZW5ldXJzaGlwIGlzIG5vdCBvbmx5IGFuIGludGVyZXN0aW5nIHBvc3NpYmlsaXR5IGJ1dCBuZWNlc3NhcnkgdG8gdHVybiBvdXIgaWRlYXMgYW5kIHJlc3VsdHMgaW50byBhIHJlYWwgcHJvZHVjdCB0aGF0IGNhbiBoZWxwIHBlb3BsZS4gPC9wPlxuICAgICAgICAgICAgPHA+VGhhdCBpcyB3aHkgaW4gdGhpcyBzZWN0aW9uIHdlIGZvY3VzIG9uIHRoZSBhc3BlY3RzIG9mIGVudHJlcHJlbmV1cnNoaXAgdGhhdCBhcmUgY3J1Y2lhbCBmb3IgdGhlIHBvdGVudGlhbCBzdWNjZXNzZnVsIHJlYWxpc2F0aW9uIG9mIG91ciBwcm9qZWN0IHRvIGRldmVsb3AgbmV3IHRoZXJhcGllcyBmb3IgY3lzdGljIGZpYnJvc2lzLiBBIHBpdm90YWwgbW9tZW50IHdhcyBvdXIgaW50ZXJ2aWV3IHdpdGggTmljb2xlIEZyaWVkbGVpbiwgd2hpY2ggZ2F2ZSB1cyB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBjaGFsbGVuZ2VzIGFuZCBvcHBvcnR1bml0aWVzIGluIHRoZSBmaWVsZCBvZiBiaW9tZWRpY2FsIGlubm92YXRpb24uIFRoZSBkaXNjdXNzaW9ucyBpbiB0aGUgaW50ZXJ2aWV3IGVuY291cmFnZWQgdXMgdG8gbG9vayBtb3JlIGNsb3NlbHkgYXQgdGhlIHJlZ3VsYXRvcnkgcmVxdWlyZW1lbnRzLCB3aGljaCBpcyB3aHkgb25lIHRlYW0gbWVtYmVyIGNvbXBsZXRlZCBhIEd4UCBjb3Vyc2UgYW5kIHN1YnNlcXVlbnRseSB0cmFpbmVkIHRoZSB0ZWFtIGluIHRoaXMgYXJlYS4gSW4gYWRkaXRpb24sIHdlIGNvbmR1Y3RlZCBmdXJ0aGVyIGludGVydmlld3MgaW4gdGhlIGFyZWEgb2YgZW50cmVwcmVuZXVyc2hpcCB0byBnYWluIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHByYWN0aWNhbCBhc3BlY3RzIG9mIGJ1c2luZXNzIGRldmVsb3BtZW50LiBUaGVzZSBleHBlcmllbmNlcyBub3Qgb25seSBlbnJpY2hlZCB0aGUgc2NpZW50aWZpYyBkZXB0aCBvZiBvdXIgcHJvamVjdCwgYnV0IGFsc28gc2hhcnBlbmVkIG91ciBwZXJzcGVjdGl2ZSBvbiB0aGUgcHJhY3RpY2FsIGltcGxlbWVudGF0aW9uIGFuZCBtYXJrZXQgbGF1bmNoIG9mIG5ldyB0aGVyYXBpZXMuIFxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPEg0IGlkPVwiZW50LWhlYWRpbmdcIiB0ZXh0PVwiT3VyIEVudHJlcHJlbmV1cnNoaXBcIi8+XG4gICAgICAgICAgICA8TG9yZW1TaG9ydC8+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgaWQ9XCJlbnQtaW50ZXJ2aWV3XCIgY2xhc3NOYW1lPVwiZW50LWludGVydmlld1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgIDxINCBpZD1cImVudC1pbnRlci1oZWFkaW5nXCIgdGV4dD1cIlF1ZXN0aW9uIDE6IElkZWEgVmFsaWRhdGlvblwiLz5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB3ZSBhc2tlZCB0aGUgRm91bmRlcnNcIi8+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPkhvdyBkaWQgeW91IHRlc3QgdGhlIG1hcmtldGFiaWxpdHkgb2YgeW91ciBzY2llbnRpZmljIGlkZWEgLSBob3cgZGlkIHlvdSBnZXQgYSBmaXJzdCBpbXByZXNzaW9uIHRoYXQgdGhlcmUgaXMgYSBuZWVkIGZvciB5b3VyIHByb2R1Y3Qgb3Igc2VydmljZT8gPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHRoZSBGb3VuZGVycyBoYWQgdG8gc2F5IFwiLz5cbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxuICAgICAgICAgICAgPHA+UGxhc21pZEZhY3RvcnkgdGVzdGVkIHRoZSBtYXJrZXRhYmlsaXR5IG9mIHRoZWlyIGlkZWEgdGhyb3VnaCBwYXJ0aWNpcGF0aW9uIGluIHNjaWVudGlmaWMgY29uZmVyZW5jZXMuIEVuZ2FnaW5nIHdpdGggb3RoZXIgc2NpZW50aXN0cyBhbmQgcHJlc2VudGluZyB0aGVpciBvd24gcmVzZWFyY2ggYWxsb3dlZCB0aGVtIHRvIGdhdWdlIHRoZSBpbnRlcmVzdCBhbmQgbmVlZHMgd2l0aGluIHRoZSBmaWVsZC4gRGlyZWN0IGZlZWRiYWNrIGZyb20gdGhlc2UgZXZlbnRzIGhlbHBlZCB0aGVtIGFzc2VzcyB3aGV0aGVyIHRoZWlyIHByb2R1Y3Qgd2FzIGFsaWduZWQgd2l0aCBtYXJrZXQgZGVtYW5kIGFuZCBpZiB0aGV5IG5lZWRlZCB0byBtb2RpZnkgb3IgYWNjZWxlcmF0ZSBjZXJ0YWluIGFzcGVjdHMgb2YgZGV2ZWxvcG1lbnQuICAgICBcbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwPjxiPlJOaGFsZSAoQmVuamFtaW4gV2lua2VsamFubik8L2I+PC9wPlxuICAgICAgICAgICAgPHA+Uk5oYWxlIHZhbGlkYXRlZCB0aGVpciBpZGVhIGJ5IHNlZWtpbmcgZmVlZGJhY2sgZnJvbSBib3RoIHRoZSBzY2llbnRpZmljIGNvbW11bml0eSBhbmQgaW5kdXN0cnkgcHJvZmVzc2lvbmFscyBhdCBjb25mZXJlbmNlcyBhbmQgbmV0d29ya2luZyBldmVudHMuIFRoZXkgbm90aWNlZCBncm93aW5nIGludGVyZXN0IGluIFJOQSB0aGVyYXBldXRpY3MsIHBhcnRpY3VsYXJseSBmb3IgbHVuZyBkZWxpdmVyeS4gVGhlIGNoYWxsZW5nZXMgc3Vycm91bmRpbmcgZGVsaXZlcnkgc3lzdGVtcywgZXNwZWNpYWxseSBoaWdobGlnaHRlZCBkdXJpbmcgdGhlIENPVklELTE5IHBhbmRlbWljLCBjb25maXJtZWQgdGhhdCB0aGVyZSB3YXMgYSBzdHJvbmcgbWFya2V0IGRlbWFuZCBmb3IgdGhlaXIgdGVjaG5vbG9neSwgd2hpY2ggbW90aXZhdGVkIHRoZW0gdG8gbW92ZSBmb3J3YXJkIHdpdGggY29tbWVyY2lhbGl6YXRpb24uPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxuICAgICAgICAgICAgPHA+Rm9yIG91ciBwcm9qZWN0LCBhIGNvbmNyZXRlIG5leHQgc3RlcCB3b3VsZCBiZSB0byBhY3RpdmVseSBzZWVrIGZlZWRiYWNrIGZyb20gY3lzdGljIGZpYnJvc2lzIHJlc2VhcmNoIGNvbW11bml0aWVzIGFuZCBiaW90ZWNoIGNvbmZlcmVuY2VzLiBXZSBzaG91bGQgY29udGludWUgdG8gcHJlc2VudCBvdXIgUk5BLWJhc2VkIGdlbmUgdGhlcmFweSBhcHByb2FjaCB0byBleHBlcnRzIGluIGdlbmUgZWRpdGluZyBhbmQgZGVsaXZlcnkgc3lzdGVtcywgc3BlY2lmaWNhbGx5IGFza2luZyBmb3IgaW5wdXQgb24gb3VyIGRlbGl2ZXJ5IG1lY2hhbmlzbSB1c2luZyBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gVGhpcyBlYXJseSBlbmdhZ2VtZW50IGNvdWxkIGhlbHAgaWRlbnRpZnkgd2hldGhlciBvdXIgYXBwcm9hY2ggYWRkcmVzc2VzIGEgcmVhbCB1bm1ldCBuZWVkIGluIGN5c3RpYyBmaWJyb3NpcyB0cmVhdG1lbnQgYW5kIHJlZmluZSBvdXIgcHJvZHVjdCB0byBiZXR0ZXIgbWVldCBjbGluaWNhbCBhbmQgcGF0aWVudCBuZWVkcy4gXG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8SDQgaWQ9XCJlbnQtZXhwZXJ0LWhlYWRpbmdcIiB0ZXh0PVwiUXVlc3Rpb24gMjogUHJvb2Ytb2YtQ29uY2VwdFwiLz5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB3ZSBhc2tlZCB0aGUgRm91bmRlcnNcIi8+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPkhvdyBkaWQgeW91IGRldmVsb3AgdGhlIGZpcnN0IHByb29mLW9mLWNvbmNlcHQgYmVmb3JlIHlvdSBoYWQgaW52ZXN0b3JzPyBEaWQgeW91IHdvcmsgd2l0aCB1bml2ZXJzaXRpZXMgb3IgcmVzZWFyY2ggaW5zdGl0dXRpb25zIHRvIGdldCBhY2Nlc3MgdG8gbGFib3JhdG9yaWVzIGFuZCBlcXVpcG1lbnQ/IDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IHdhcyBhd2FyZSBvZiB0aGUgZGVtYW5kIGZvciBETkEgZWFybHkgb24sIGFzIHRoZSBmb3VuZGVycyBoYWQgYWxyZWFkeSBwcm9kdWNlZCBETkEgZm9yIGN1c3RvbWVycyBkdXJpbmcgdGhlaXIgcHJldmlvdXMgd29yay4gSW5pdGlhbGx5LCB0aGV5IGNvbGxhYm9yYXRlZCB3aXRoIGFjYWRlbWljIHBhcnRuZXJzIGFuZCBjdXN0b21lcnMgdG8gbWVldCB0aGUgZGVtYW5kIGZvciBwbGFzbWlkIEROQSwgd2hpY2ggaGVscGVkIHRoZW0gZXN0YWJsaXNoIGEgcHJvb2Ytb2YtY29uY2VwdC4gT3ZlciB0aW1lLCB0aGV5IHNoaWZ0ZWQgZnJvbSBwcmltYXJpbHkgd29ya2luZyB3aXRoIGFjYWRlbWljIGluc3RpdHV0aW9ucyB0byBjb2xsYWJvcmF0aW5nIG1vcmUgd2l0aCB0aGUgcmVzZWFyY2gtYmFzZWQgcGhhcm1hY2V1dGljYWwgaW5kdXN0cnksIHdoaWxlIG1haW50YWluaW5nIHRoZWlyIGNvbm5lY3Rpb25zIHdpdGggdW5pdmVyc2l0aWVzLiA8L3A+XG4gICAgICAgICAgICA8cD48Yj5STmhhbGUgKEJlbmphbWluIFdpbmtlbGphbm4pPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlJOaGFsZSBkZXZlbG9wZWQgdGhlaXIgcHJvb2Ytb2YtY29uY2VwdCB0aHJvdWdoIGNvbGxhYm9yYXRpb25zIHdpdGggdW5pdmVyc2l0aWVzLiBUaGV5IHN0YXJ0ZWQgd2l0aCBpbiB2aXRybyBjZWxsIGN1bHR1cmUgbW9kZWxzIGFuZCBsYXRlciBhZHZhbmNlZCB0byBtb3JlIGNvbXBsZXggc3lzdGVtcywgc3VjaCBhcyBhaXItbGlxdWlkIGludGVyZmFjZSBtb2RlbHMgYW5kIHByZWNpc2lvbi1jdXQgbHVuZyBzbGljZXMuIEFkZGl0aW9uYWxseSwgdGhleSBwZXJmb3JtZWQgYW4gaW4gdml2byBzdHVkeSBhbmQgaGFkIGFjY2VzcyB0byBodW1hbiBsdW5nIHRpc3N1ZSBzYW1wbGVzLCB3aGljaCBoZWxwZWQgdGhlbSB2YWxpZGF0ZSB0aGVpciB0ZWNobm9sb2d5IGluIGEgcmVsZXZhbnQgY2xpbmljYWwgY29udGV4dCBiZWZvcmUgc2Vla2luZyBpbnZlc3RvcnMuIDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVhcm5pbmdzIGFuZCBJbXBsaWNhdGlvbnMgZm9yIG91ciBwcm9qZWN0IFwiLz5cbiAgICAgICAgICAgIDxwPkFzIHRoZSBpR0VNIFRlYW0gb2YgQmllbGVmZWxkIFVuaXZlcnNpdHksIHdlIGhhdmUgYWNjZXNzIHRvIGV4Y2VsbGVudCByZXNlYXJjaCBpbmZyYXN0cnVjdHVyZS4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgZm9yIHVzIGNvdWxkIGJlIGxldmVyYWdpbmcgdGhlIHVuaXZlcnNpdHkncyBjZWxsIGN1bHR1cmUgYW5kIGdlbmUgZWRpdGluZyBmYWNpbGl0aWVzIHRvIGRldmVsb3AgYW4gYWR2YW5jZWQgcHJvb2Ytb2YtY29uY2VwdC4gQWRkaXRpb25hbGx5LCBjb2xsYWJvcmF0aW5nIHdpdGggb3RoZXIgZGVwYXJ0bWVudHMgd2l0aGluIEJpZWxlZmVsZCBvciBwYXJ0bmVyIGluc3RpdHV0aW9ucyBjb3VsZCBoZWxwIHVzIHBlcmZvcm0gaW4gdml2byBzdHVkaWVzLiBUaGlzIHdvdWxkIGFsbG93IHVzIHRvIHZhbGlkYXRlIG91ciBsaXBpZCBuYW5vcGFydGljbGUgZGVsaXZlcnkgc3lzdGVtIGFuZCBwcmVzZW50IHN0cm9uZyBwcmVsaW1pbmFyeSBkYXRhIGZvciBmdXR1cmUgaW52ZXN0b3JzIG9yIHBhcnRuZXJzLiA8L3A+XG5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUXVlc3Rpb24gMzogVHJhbnNpdGlvbiBmcm9tIFJlc2VhcmNoIHRvIENvbW1lcmNpYWxpemF0aW9uIFwiLz5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB3ZSBhc2tlZCB0aGUgRm91bmRlcnNcIi8+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPldoYXQgd2VyZSB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2VzIGluIHRoZSB0cmFuc2l0aW9uIGZyb20gZXhwbG9yaW5nIGEgc2NpZW50aWZpYyBpZGVhIHRvIGEgY29tbWVyY2lhbCBzdGFydC11cD8gTG9va2luZyBiYWNrLCBhcmUgdGhlcmUgY2VydGFpbiBzdGVwcyB5b3Ugd291bGQgaGF2ZSB0YWtlbiBlYXJsaWVyIG9yIGRpZmZlcmVudGx5PyA8L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgdGhlIEZvdW5kZXJzIGhhZCB0byBzYXkgXCIvPlxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5PbmUgb2YgdGhlIG1ham9yIGNoYWxsZW5nZXMgd2FzIGVuc3VyaW5nIHRoYXQgdGhlaXIgaWRlYSB3YXMgbWFya2V0YWJsZSwgd2hpY2ggaXMgbmV2ZXIgZW50aXJlbHkgY2xlYXIgYXQgdGhlIGJlZ2lubmluZy4gQW5vdGhlciBzaWduaWZpY2FudCBjaGFsbGVuZ2Ugd2FzIHNlY3VyaW5nIGNhcGl0YWwgZm9yIGRldmVsb3BtZW50LiBUaGV5IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2Ygc3BlbmRpbmcgb25seSB3aGF0IHdhcyBhdmFpbGFibGUgYW5kIGhpZ2hsaWdodGVkIHRoZSByb2xlIG9mIHJlc2VhcmNoIGZ1bmRpbmcgcHJvZ3JhbXMgKEVVIG9yIG5hdGlvbmFsKSBpbiBzdXBwb3J0aW5nIGVhcmx5LXN0YWdlIGJpb3RlY2ggY29tcGFuaWVzLiBMb29raW5nIGJhY2ssIHRoZXkgbWlnaHQgbm90IGhhdmUgZG9uZSB0aGluZ3MgZGlmZmVyZW50bHkgYnV0IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY2FyZWZ1bCBmaW5hbmNpYWwgcGxhbm5pbmcgYW5kIG1ha2luZyBzdXJlIHRoZSBwcm9kdWN0IGhhcyBhIHBvdGVudGlhbCBtYXJrZXQuPC9wPlxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5Gb3IgUk5oYWxlLCB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2Ugd2FzIHNlY3VyaW5nIHN1ZmZpY2llbnQgZnVuZGluZywgYXMgdHJhbnNpdGlvbmluZyBmcm9tIHVuaXZlcnNpdHktYmFzZWQgcmVzZWFyY2ggdG8gdGhlIHByaXZhdGUgc2VjdG9yIHJlcXVpcmVzIGEgc3RyYXRlZ2ljIGFwcHJvYWNoIHRvIGJyaWRnaW5nIHRoaXMgZ2FwLiBUaGV5IGFsc28gbWVudGlvbmVkIHRoYXQgZGV2ZWxvcGluZyBhIGNsZWFyIGJ1c2luZXNzIG1vZGVsIGVhcmxpZXIgb24gY291bGQgaGF2ZSBzcGVkIHVwIHRoZSBwcm9jZXNzLiBBbm90aGVyIGNoYWxsZW5nZSB3YXMgZm9ybWluZyBwYXJ0bmVyc2hpcHMgd2l0aCBpbmR1c3RyeSBhdCBhbiBlYXJsaWVyIHN0YWdlLCB3aGljaCBtaWdodCBoYXZlIGVhc2VkIGJvdGggdGhlIGZ1bmRpbmcgcHJvY2VzcyBhbmQgY29tbWVyY2lhbGl6YXRpb24gZWZmb3J0cy48L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XG4gICAgICAgICAgICA8cD5Cb3RoIGZvdW5kZXJzIGVtcGhhc2l6ZWQgdGhlIGNoYWxsZW5nZSBvZiBzZWN1cmluZyBmdW5kaW5nIGFuZCBidWlsZGluZyBhIGNsZWFyIGJ1c2luZXNzIG1vZGVsLiBBdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2Ugc2hvdWxkIGNvbnNpZGVyIGV4cGxvcmluZyBwYXJ0bmVyc2hpcHMgd2l0aCBpbmR1c3RyeSBlYXJseSwgc3VjaCBhcyBiaW90ZWNoIGZpcm1zIG9yIHBoYXJtYWNldXRpY2FsIGNvbXBhbmllcy4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgY291bGQgYmUgaWRlbnRpZnlpbmcgcmVsZXZhbnQgZnVuZGluZyBwcm9ncmFtcyBsaWtlIEVYSVNUIG9yIEVVIGdyYW50cywgd2hpY2ggY291bGQgaGVscCBicmlkZ2UgdGhlIGdhcCBiZXR3ZWVuIG91ciB1bml2ZXJzaXR5IHJlc2VhcmNoIGFuZCBjb21tZXJjaWFsaXphdGlvbi4gRGV2ZWxvcGluZyBhIGJ1c2luZXNzIG1vZGVsIHRhaWxvcmVkIHRvIFJOQS1iYXNlZCB0aGVyYXBldXRpY3MgZm9yIGN5c3RpYyBmaWJyb3NpcyB3aWxsIGFsc28gYmUgY3JpdGljYWwgdG8gYXR0cmFjdCBpbnZlc3RvcnMuIDwvcD5cblxuXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDQ6IEZ1bmRpbmcgXCIvPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImFzay1wXCI+V2hhdCBzb3VyY2VzIG9mIGZ1bmRpbmcgZGlkIHlvdSB1c2UgaW4gdGhlIGVhcmx5IHN0YWdlcyBvZiB5b3VyIGNvbXBhbnk/IFdlcmUgdGhlcmUgYW55IHNwZWNpYWwgZnVuZGluZyBwcm9ncmFtcyBvciBpbnZlc3RvcnMgdGhhdCBzcGVjaWFsaXplZCBpbiBiaW90ZWNobm9sb2d5IHN0YXJ0LXVwcz8gPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHRoZSBGb3VuZGVycyBoYWQgdG8gc2F5IFwiLz5cbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxuICAgICAgICAgICAgPHA+SW4gdGhlIGVhcmx5IHN0YWdlcywgZnVuZGluZyBwcm9ncmFtcyBmb3Igc3RhcnQtdXBzIGRpZCBub3QgZXhpc3QgYXMgdGhleSBkbyB0b2RheS4gUGxhc21pZEZhY3RvcnkgcmVsaWVkIG9uIHRyYWRpdGlvbmFsIHNvdXJjZXMgbGlrZSB0aGVpciBsb2NhbCBiYW5rIGFuZCBjcmVhdGl2ZSBzb2x1dGlvbnMgbGlrZSBwdXJjaGFzaW5nIHNlY29uZC1oYW5kIGVxdWlwbWVudCB0aHJvdWdoIHBsYXRmb3JtcyBsaWtlIGVCYXkuIFRoZWlyIGZpcnN0IGN1c3RvbWVycyBhbHNvIHBsYXllZCBhIGtleSByb2xlLCBhcyB0aGUgcmV2ZW51ZSBmcm9tIGluaXRpYWwgc2FsZXMgYWxsb3dlZCB0aGVtIHRvIHJlaW52ZXN0IGluIHRoZSBidXNpbmVzcyBhbmQgZnVydGhlciBpdHMgZ3Jvd3RoLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPlJOaGFsZSAoQmVuamFtaW4gV2lua2VsamFubik8L2I+PC9wPlxuICAgICAgICAgICAgPHA+Uk5oYWxlIGluaXRpYWxseSByZWxpZWQgb24gcHVibGljIGZ1bmRpbmcgZnJvbSB1bml2ZXJzaXR5IGdyYW50cyBhbmQgZ292ZXJubWVudCBwcm9ncmFtcyBzdWNoIGFzIEdyb3dCaW8gYW5kIEVYSVNULCB3aGljaCBwcm92aWRlZCBjcnVjaWFsIHByZS1zZWVkIHN1cHBvcnQuIEFzIHRoZXkgdHJhbnNpdGlvbmVkIGludG8gYSBwcml2YXRlIGNvbXBhbnksIHRoZXkgc2VjdXJlZCBhZGRpdGlvbmFsIGZ1bmRpbmcgdGhyb3VnaCB0aGUgRXVyb3BlYW4gVW5pb25cdTIwMTlzIEVJQyBUcmFuc2l0aW9uIGdyYW50LiBUaGV5IGFsc28gYXR0cmFjdGVkIHZlbnR1cmUgY2FwaXRhbCBmcm9tIGZpcm1zIHNwZWNpYWxpemluZyBpbiBiaW90ZWNoLCBzdWNoIGFzIHRoZSBIaWdodGVjaC1Hclx1MDBGQ25kZXJmb25kcyBhbmQgaW50ZXJuYXRpb25hbCBpbnZlc3RvcnMgbGlrZSBLYXJtYSBGdW5kIGFuZCBXZWxsaW5ndG9uLCB3aG8gdW5kZXJzdG9vZCB0aGUgbG9uZyB0aW1lbGluZXMgYW5kIGhpZ2ggY29zdHMgYXNzb2NpYXRlZCB3aXRoIGJpb3RlY2ggZGV2ZWxvcG1lbnQuPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxuICAgICAgICAgICAgPHA+Qm90aCBmb3VuZGVycyBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBzZWN1cmluZyBkaXZlcnNlIGZ1bmRpbmcgc291cmNlcyBlYXJseSBvbi4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgY291bGQgYmUgY29sbGFib3JhdGluZyB3aXRoIHRoZSB1bml2ZXJzaXR5XHUyMDE5cyBzdGFydHVwIHN1cHBvcnQgc2VydmljZXMgdG8gaWRlbnRpZnkgcG90ZW50aWFsIGludmVzdG9ycywgZXNwZWNpYWxseSB0aG9zZSB3aXRoIGJpb3RlY2ggZXhwZXJpZW5jZS4gQWRkaXRpb25hbGx5LCBleHBsb3Jpbmcgbm9uLXRyYWRpdGlvbmFsIHNvdXJjZXMgc3VjaCBhcyBpbmR1c3RyeS1zcG9uc29yZWQgcmVzZWFyY2ggY29sbGFib3JhdGlvbnMgY291bGQgcHJvdmlkZSBjcnVjaWFsIGluaXRpYWwgZnVuZGluZyB0byBzdXBwb3J0IHRoZSBkZXZlbG9wbWVudCBvZiBvdXIgY3lzdGljIGZpYnJvc2lzIGdlbmUgdGhlcmFweS4gPC9wPlxuXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDU6IFRlYW0gQnVpbGRpbmcgXCIvPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImFzay1wXCI+V2hhdCBxdWFsaWZpY2F0aW9ucyBhbmQgc2tpbGxzIHdlcmUgcGFydGljdWxhcmx5IGltcG9ydGFudCB3aGVuIGJ1aWxkaW5nIHlvdXIgdGVhbT8gRGlkIHlvdSBicmluZyBpbiBleHBlcnRzIGZyb20gaW5kdXN0cnkgb3Igb3RoZXIgYXJlYXM/IDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPkZvciBQbGFzbWlkRmFjdG9yeSwgaG9uZXN0eSwgY29tbWl0bWVudCwgYW5kIGhhcmQgd29yayB3ZXJlIGNydWNpYWwuIFRoZSBpbml0aWFsIHRlYW0gY29uc2lzdGVkIG9mIGxhYiB0ZWNobmljaWFucywgYmlvY2hlbWlzdHMsIGFuZCBiaW9sb2dpc3RzLiBPdmVyIHRpbWUsIHRoZXkgZXhwYW5kZWQgdG8gaW5jbHVkZSBlbXBsb3llZXMgZnJvbSB2YXJpb3VzIGZpZWxkcywgc3VjaCBhcyBiaW90ZWNobm9sb2d5IGFuZCBldmVuIG5vbi1zY2llbnRpZmljIGFyZWFzIGxpa2UgYnVzaW5lc3MgYWRtaW5pc3RyYXRpb24gYW5kIG1hcmtldGluZy4gQnJpbmdpbmcgaW4gc29tZW9uZSB3aXRoIGluZHVzdHJ5IGV4cGVyaWVuY2Ugd2FzIHNlZW4gYXMgcGFydGljdWxhcmx5IHZhbHVhYmxlLCBhcyBpbmR1c3RyeSBvcGVyYXRlcyBkaWZmZXJlbnRseSBmcm9tIGFjYWRlbWljIGVudmlyb25tZW50cy4gPC9wPlxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5STmhhbGUgZW1waGFzaXplZCB0aGUgbmVlZCBmb3IgYSBiYWxhbmNlIGJldHdlZW4gdGVjaG5pY2FsIGV4cGVydGlzZSBhbmQgYnVzaW5lc3MgYWN1bWVuIHdoZW4gYnVpbGRpbmcgdGhlaXIgdGVhbS4gVGhleSBwcmlvcml0aXplZCBvcGVyYXRpb25hbCBhbGlnbm1lbnQgYW5kIHJlY3J1aXRlZCBpbmRpdmlkdWFscyBza2lsbGVkIGluIGJpb2xvZ2ljcyBtYW51ZmFjdHVyaW5nLCBpbiB2aXRybyBhbmQgaW4gdml2byBwZXJmb3JtYW5jZSwgYW5kIGJ1c2luZXNzIGRldmVsb3BtZW50LiBUaGV5IGFsc28gYnJvdWdodCBpbiBleHRlcm5hbCBleHBlcnRzLCBzdWNoIGFzIGEgcGF0ZW50IGF0dG9ybmV5LCByZWd1bGF0b3J5IGFkdmlzb3JzLCBhbmQgcHJlY2xpbmljYWwgc3BlY2lhbGlzdHMuIE1hbnkgb2YgdGhlc2UgY29ubmVjdGlvbnMgY2FtZSBmcm9tIG5ldHdvcmtpbmcgYW5kIHN0YXJ0dXAgYm9vdGNhbXBzLCB3aGljaCBwcm92aWRlZCB2YWx1YWJsZSByZXNvdXJjZXMgZm9yIGJ1aWxkaW5nIGEgd2VsbC1yb3VuZGVkIHRlYW0uIDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVhcm5pbmdzIGFuZCBJbXBsaWNhdGlvbnMgZm9yIG91ciBwcm9qZWN0IFwiLz5cbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgc3RyZXNzZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29tYmluaW5nIHRlY2huaWNhbCBleHBlcnRpc2Ugd2l0aCBidXNpbmVzcyBhY3VtZW4uIEF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3ZSBzaG91bGQgZm9jdXMgb24gYnVpbGRpbmcgYSBkaXZlcnNlIHRlYW0gdGhhdCBpbmNsdWRlcyBub3Qgb25seSBzY2llbnRpc3RzIHNraWxsZWQgaW4gUk5BIHRoZXJhcGV1dGljcyBhbmQgZ2VuZSBlZGl0aW5nIGJ1dCBhbHNvIGluZGl2aWR1YWxzIHdpdGggZXhwZXJpZW5jZSBpbiBidXNpbmVzcyBkZXZlbG9wbWVudCBhbmQgcmVndWxhdG9yeSBhZmZhaXJzLiBBIGNvbmNyZXRlIG5leHQgc3RlcCBjb3VsZCBiZSByZWFjaGluZyBvdXQgdG8gdGhlIHVuaXZlcnNpdHlcdTIwMTlzIGJ1c2luZXNzIGFuZCBsZWdhbCBmYWN1bHRpZXMgdG8gYnJpbmcgaW4gZXhwZXJ0cyB3aG8gY2FuIGhlbHAgdXMgbmF2aWdhdGUgY29tbWVyY2lhbGl6YXRpb24gYW5kIHJlZ3VsYXRvcnkgcHJvY2Vzc2VzLiA8L3A+XG5cblxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiA2OiBSZWd1bGF0b3J5IENoYWxsZW5nZXMgXCIvPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImFzay1wXCI+V2hhdCByZWd1bGF0b3J5IGNoYWxsZW5nZXMgZGlkIHlvdSBmYWNlIGluIHlvdXIgc3RhcnQtdXAgcHJvY2VzcywgYW5kIGhvdyBkaWQgeW91IG92ZXJjb21lIHRoZW0/IFdoYXQgYWR2aWNlIHdvdWxkIHlvdSBnaXZlIHRvIG90aGVyIHN0YXJ0LXVwcyBpbiB0ZXJtcyBvZiBjb21wbGlhbmNlIHdpdGggcmVndWxhdGlvbnMgYW5kIGxhd3M/IDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IGVtcGhhc2l6ZWQgdGhlIHN0cmljdCByZWd1bGF0aW9ucyBpbiB0aGUgYmlvdGVjaCBhbmQgcGhhcm1hY2V1dGljYWwgaW5kdXN0cmllcywgcGFydGljdWxhcmx5IGluIHRoZSBmaWVsZCBvZiBnZW5ldGljIGVuZ2luZWVyaW5nLiBUaGV5IGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGFkaGVyaW5nIHRvIGxhd3MgZnJvbSB0aGUgc3RhcnQuIFNpbmNlIHRoZSBmb3VuZGVycyBkaWRuXHUyMDE5dCBoYXZlIGV4dGVuc2l2ZSBleHBlcnRpc2UgaW4gcmVndWxhdG9yeSBjb21wbGlhbmNlLCB0aGV5IG92ZXJjYW1lIHRoaXMgY2hhbGxlbmdlIGJ5IGNvbGxhYm9yYXRpbmcgd2l0aCBpbnN0aXR1dGlvbnMgbGlrZSB1bml2ZXJzaXRpZXMgYW5kIHJlc2VhcmNoIGNlbnRlcnMsIHdoaWNoIHByb3ZpZGVkIHRoZSBuZWNlc3NhcnkgcmVndWxhdG9yeSBrbm93bGVkZ2UuPC9wPlxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5STmhhbGUgZmFjZWQgc2lnbmlmaWNhbnQgcmVndWxhdG9yeSBjaGFsbGVuZ2VzLCBwYXJ0aWN1bGFybHkgaW4gbWVldGluZyB0aGUgc3RyaWN0IHJlcXVpcmVtZW50cyBmb3IgY2xpbmljYWwgdGVzdGluZy4gVGhleSBuZWVkZWQgdG8gY29uZHVjdCBwcmVjbGluaWNhbCBzdHVkaWVzIHVuZGVyIEdvb2QgTGFib3JhdG9yeSBQcmFjdGljZSAoR0xQKSBjb25kaXRpb25zIGFuZCBlbnN1cmUgdGhlaXIgcHJvZHVjdCB3YXMgbWFudWZhY3R1cmVkIHVuZGVyIEdvb2QgTWFudWZhY3R1cmluZyBQcmFjdGljZSAoR01QKS4gVG8gbmF2aWdhdGUgdGhlc2UgcmVndWxhdGlvbnMsIHRoZXkgd29ya2VkIHdpdGggZXh0ZXJuYWwgYWR2aXNvcnMgYW5kIGNvbnRyYWN0IHJlc2VhcmNoL21hbnVmYWN0dXJpbmcgb3JnYW5pemF0aW9ucyAoQ1JPcyBhbmQgQ01PcykuIFRoZXkgcmVjb21tZW5kZWQgaW50ZWdyYXRpbmcgcmVndWxhdG9yeSBjb25zaWRlcmF0aW9ucyBlYXJseSBpbiB0aGUgZGV2ZWxvcG1lbnQgcHJvY2VzcyBhbmQgbWFpbnRhaW5pbmcgY2xvc2UgY29udGFjdCB3aXRoIHJlZ3VsYXRvcnkgZXhwZXJ0cyBhbmQgYXV0aG9yaXRpZXMgdG8gcHJldmVudCBkZWxheXMgYW5kIGVuc3VyZSBjb21wbGlhbmNlLjwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVhcm5pbmdzIGFuZCBJbXBsaWNhdGlvbnMgZm9yIG91ciBwcm9qZWN0IFwiLz5cbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgaGlnaGxpZ2h0ZWQgdGhlIGNvbXBsZXhpdHkgb2YgcmVndWxhdG9yeSBjb21wbGlhbmNlLCBwYXJ0aWN1bGFybHkgaW4gYmlvdGVjaC4gRm9yIG91ciBwcm9qZWN0LCB3ZSBuZWVkIHRvIGludGVncmF0ZSByZWd1bGF0b3J5IGNvbnNpZGVyYXRpb25zIGVhcmx5LCBlc3BlY2lhbGx5IHJlZ2FyZGluZyBjbGluaWNhbCB0cmlhbHMgYW5kIHNhZmV0eSBzdGFuZGFyZHMgZm9yIGdlbmUgdGhlcmFwaWVzLiBBIGNvbmNyZXRlIHN0ZXAgd291bGQgYmUgdG8gY29uc3VsdCB3aXRoIGV4cGVydHMgaW4gR29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApIGFuZCBHb29kIExhYm9yYXRvcnkgUHJhY3RpY2UgKEdMUCksIGVuc3VyaW5nIHRoYXQgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZSBzeXN0ZW0gbWVldHMgdGhlIG5lY2Vzc2FyeSByZWd1bGF0aW9ucy4gQWRkaXRpb25hbGx5LCBlYXJseSBlbmdhZ2VtZW50IHdpdGggcmVndWxhdG9yeSBib2RpZXMgY291bGQgc21vb3RoIHRoZSBwYXRoIHRvIGV2ZW50dWFsIGNsaW5pY2FsIHRyaWFscy4gPC9wPlxuXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDc6IE1hcmtldCBFbnRyeSBhbmQgTmV0d29ya2luZyBcIi8+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5XaGF0IHJvbGUgZGlkIG5ldHdvcmtzIGFuZCBwYXJ0bmVyc2hpcHMgcGxheSB3aGVuIHlvdSBlbnRlcmVkIHRoZSBtYXJrZXQ/IEhvdyBkaWQgeW91IGFjcXVpcmUgeW91ciBmaXJzdCBjdXN0b21lcnMgb3IgcGFydG5lcnMsIGFuZCB3aGljaCBzdHJhdGVnaWVzIHdlcmUgcGFydGljdWxhcmx5IHN1Y2Nlc3NmdWw/IDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5J3Mgc3RyYXRlZ3kgd2FzIHNpbXBsZTogZGVtb25zdHJhdGUgc2NpZW50aWZpYyBleHBlcnRpc2UgdG8gYnVpbGQgdHJ1c3QuIFRoaXMgYXBwcm9hY2ggaGVscGVkIHRoZW0gZ2FpbiBjcmVkaWJpbGl0eSBhbmQgYXR0cmFjdCBjdXN0b21lcnMuIFRoZXkgZW1waGFzaXplZCBwYXRpZW5jZSwgbm90aW5nIHRoYXQgc3VjY2VzcyBjYW4gdGFrZSBhIGxvbmcgdGltZVx1MjAxNHNvbWV0aW1lcyB1cCB0byAxMCB5ZWFyc1x1MjAxNGJ1dCBwZXJzZXZlcmFuY2UgYW5kIG1haW50YWluaW5nIHN0cm9uZyByZWxhdGlvbnNoaXBzIHdpdGggcGFydG5lcnMgYW5kIGN1c3RvbWVycyB3ZXJlIGtleSB0byB0aGVpciBzdWNjZXNzLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPlJOaGFsZSAoQmVuamFtaW4gV2lua2VsamFubik8L2I+PC9wPlxuICAgICAgICAgICAgPHA+TmV0d29ya3MgYW5kIHBhcnRuZXJzaGlwcyB3ZXJlIGNyaXRpY2FsIGZvciBSTmhhbGUncyBtYXJrZXQgZW50cnkuIFRoZXkgbGV2ZXJhZ2VkIGNvbm5lY3Rpb25zIGZyb20gdGhlaXIgdW5pdmVyc2l0eSBhZmZpbGlhdGlvbnMsIHN0YXJ0dXAgYm9vdGNhbXBzLCBhbmQgY29uZmVyZW5jZXMgdG8gYnVpbGQgcmVsYXRpb25zaGlwcyB3aXRoIGluZHVzdHJ5IGV4cGVydHMuIFRoZWlyIGZpcnN0IGN1c3RvbWVycyBhbmQgcGFydG5lcnMgd2VyZSBhY3F1aXJlZCB0aHJvdWdoIHRoZXNlIG5ldHdvcmtzLiBQYXJ0aWNpcGF0aW5nIGluIHN0YXJ0dXAgYWNjZWxlcmF0b3JzIGFuZCBwaXRjaCBldmVudHMgYWxsb3dlZCB0aGVtIHRvIHNob3djYXNlIHRoZWlyIGJ1c2luZXNzIG1vZGVsIGFuZCB0ZWNobm9sb2d5LCB3aGljaCBoZWxwZWQgc2VjdXJlIHBhcnRuZXJzaGlwcyBhbmQgYnVpbGQgY3JlZGliaWxpdHkgaW4gdGhlIFJOQSB0aGVyYXBldXRpY3MgZmllbGQuPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxuICAgICAgICAgICAgPHA+Qm90aCBmb3VuZGVycyBzdHJlc3NlZCB0aGUgaW1wb3J0YW5jZSBvZiBidWlsZGluZyBuZXR3b3JrcyBhbmQgcGFydG5lcnNoaXBzIGVhcmx5LiBGb3Igb3VyIHByb2plY3QsIHdlIHNob3VsZCBmb2N1cyBvbiBkZXZlbG9waW5nIHJlbGF0aW9uc2hpcHMgd2l0aCBpbmR1c3RyeSBleHBlcnRzIGFuZCBwb3RlbnRpYWwgcGFydG5lcnMgdGhyb3VnaCBjb25mZXJlbmNlcywgcGl0Y2ggZXZlbnRzLCBhbmQgYmlvdGVjaCBzdGFydHVwIHByb2dyYW1zLiBBIGNvbmNyZXRlIG5leHQgc3RlcCBjb3VsZCBiZSB0byBwYXJ0aWNpcGF0ZSBpbiBuZXR3b3JraW5nIGV2ZW50cyB3aGVyZSB3ZSBjYW4gcHJlc2VudCBvdXIgUk5BLWJhc2VkIHRoZXJhcHkgYW5kIGdhaW4gdmFsdWFibGUgY29udGFjdHMgaW4gdGhlIHBoYXJtYWNldXRpY2FsIGluZHVzdHJ5LiBUaGlzIGNvdWxkIGFsc28gaGVscCB1cyBpZGVudGlmeSBlYXJseSBjdXN0b21lcnMgb3Igc3RyYXRlZ2ljIHBhcnRuZXJzIHRvIGFjY2VsZXJhdGUgbWFya2V0IGVudHJ5LiA8L3A+XG5cblxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiA4OiBJbnRlbGxlY3R1YWwgUHJvcGVydHkgKElQKSBcIi8+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5Ib3cgZGlkIHlvdSBzZWN1cmUgeW91ciBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzPyBXaGF0IHN0ZXBzIHdlcmUgbmVjZXNzYXJ5IHRvIG9idGFpbiBwYXRlbnRzIG9yIGxpY2Vuc2VzPyA8L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgdGhlIEZvdW5kZXJzIGhhZCB0byBzYXkgXCIvPlxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5QbGFzbWlkRmFjdG9yeSBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBrZWVwaW5nIGlkZWFzIGNvbmZpZGVudGlhbCBpbiB0aGUgZWFybHkgc3RhZ2VzIHRvIHByZXZlbnQgb3RoZXJzIGZyb20gdGFraW5nIHRoZW0uIFRoZXkgZGlzY3Vzc2VkIHRocmVlIHN0cmF0ZWdpZXM6IHJlY29yZGluZyB0aGUgaWRlYSBhcyBhIGRlZWQgd2l0aCBhIG5vdGFyeSwgcmVnaXN0ZXJpbmcgaXQgYXMgYSB1dGlsaXR5IG1vZGVsIGZvciBsb3dlci1jb3N0IHByb3RlY3Rpb24sIGFuZCBldmVudHVhbGx5IHB1cnN1aW5nIGEgZnVsbCBwYXRlbnQsIGluaXRpYWxseSBmb2N1c2luZyBvbiBHZXJtYW55IGFuZCBwb3NzaWJseSBhIGZldyBvdGhlciBjb3VudHJpZXMuIEluIGxpY2Vuc2luZyBhZ3JlZW1lbnRzLCB0aGV5IGVuc3VyZWQgdGhhdCBmZWVzIHdlcmUgb25seSBkdWUgdG8gdGhlIHRlY2hub2xvZ3kgb3duZXIgb25jZSB0aGUgc3RhcnR1cCBlYXJuZWQgbW9uZXkgZnJvbSBpdC48L3A+XG4gICAgICAgICAgICA8cD48Yj5STmhhbGUgKEJlbmphbWluIFdpbmtlbGphbm4pPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlJOaGFsZSBzZWN1cmVkIHRoZWlyIGludGVsbGVjdHVhbCBwcm9wZXJ0eSB0aHJvdWdoIHVuaXZlcnNpdHkgbGljZW5zaW5nIGFuZCBzdHJhdGVnaWMgcGF0ZW50IGZpbGluZ3MuIEVhcmx5IHdvcmsgd2FzIHBhdGVudGVkIGJ5IHRoZSB1bml2ZXJzaXR5LCBhbmQgdGhleSBzZWN1cmVkIGV4Y2x1c2l2ZSByaWdodHMgdG8gdXNlIHRoZSB0ZWNobm9sb2d5IGZvciBjb21tZXJjaWFsaXphdGlvbiB0aHJvdWdoIGEgbGljZW5zaW5nIGFncmVlbWVudC4gRm9yIGxhdGVyIGRldmVsb3BtZW50cywgdGhleSB0b29rIGEgc3RyYXRlZ2ljIGFwcHJvYWNoLCBmaWxpbmcgcHJpb3JpdHkgcGF0ZW50cyB0byBwcm90ZWN0IG5vdmVsdHkgYW5kIGV4cGFuZGluZyBwYXRlbnQgY2xhaW1zIHdpdGhpbiB0aGUgMTItbW9udGggd2luZG93IHRvIGNvdmVyIGNvbW1lcmNpYWxseSByZWxldmFudCBhc3BlY3RzLiBUaGV5IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgbmVnb3RpYXRpbmcgSVAgYWdyZWVtZW50cyBlYXJseSwgZXNwZWNpYWxseSB3aGVuIHdvcmtpbmcgd2l0aCB1bml2ZXJzaXRpZXMsIGFuZCBwbGFubmluZyBhIHJvYnVzdCBwYXRlbnQgc3RyYXRlZ3kuPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxuICAgICAgICAgICAgPHA+Qm90aCBmb3VuZGVycyBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIHNlY3VyaW5nIElQIGVhcmx5LCBlc3BlY2lhbGx5IHdoZW4gd29ya2luZyB3aXRoIHVuaXZlcnNpdGllcyBvciBleHRlcm5hbCBwYXJ0bmVycy4gRm9yIG91ciBwcm9qZWN0LCB3ZSBzaG91bGQgZGV2ZWxvcCBhIGNsZWFyIHBhdGVudCBzdHJhdGVneSBmb3Igb3VyIFJOQS1iYXNlZCBjeXN0aWMgZmlicm9zaXMgdGhlcmFweS4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgd291bGQgYmUgdG8gY29uc3VsdCB3aXRoIElQIGV4cGVydHMgdG8gZW5zdXJlIG91ciB0ZWNobm9sb2d5IGlzIHdlbGwgcHJvdGVjdGVkLiBOZWdvdGlhdGluZyBlYXJseSBJUCBhZ3JlZW1lbnRzIHdpdGggdGhlIHVuaXZlcnNpdHkgb3IgZXh0ZXJuYWwgY29sbGFib3JhdG9ycyBpcyBjcnVjaWFsIHRvIHNhZmVndWFyZCBvdXIgaW5ub3ZhdGlvbnMgd2hpbGUgYWxsb3dpbmcgcm9vbSBmb3IgZnV0dXJlIGRldmVsb3BtZW50cy4gPC9wPlxuXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDk6IFBpdm90aW5nIFwiLz5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB3ZSBhc2tlZCB0aGUgRm91bmRlcnNcIi8+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPldlcmUgdGhlcmUgbW9tZW50cyB3aGVuIHlvdSBoYWQgdG8gYWRhcHQgb3IgY29tcGxldGVseSBjaGFuZ2UgeW91ciBvcmlnaW5hbCBpZGVhPyBXaGF0IHdlcmUgdGhlIHRyaWdnZXJzLCBhbmQgaG93IGRpZCB5b3UgZGVhbCB3aXRoIHRoZW0/IDwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IGRpZCBub3QgZXhwZXJpZW5jZSBhIG1ham9yIHBpdm90IGluIHRoZWlyIGJ1c2luZXNzIG1vZGVsIGJ1dCBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNvbnN0YW50IGRpYWxvZ3VlIHdpdGggY3VzdG9tZXJzLiBJbiBzb21lIGNhc2VzLCBjdXN0b21lcnMgZGlkIG5vdCBpbml0aWFsbHkgYWNjZXB0IHRoZWlyIGlkZWFzLCBidXQgcmF0aGVyIHRoYW4gZ2l2aW5nIHVwLCB0aGV5IHJlbWFpbmVkIHBhdGllbnQgYW5kIHJldmlzaXRlZCB0aGUgZGlzY3Vzc2lvbiB3aXRoIHJlZmVyZW5jZXMgZnJvbSBvdGhlciBzYXRpc2ZpZWQgY2xpZW50cyB0byBidWlsZCBjcmVkaWJpbGl0eS4gPC9wPlxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5STmhhbGUgaGFkIHRvIGFkYXB0IHRoZWlyIG9yaWdpbmFsIGlkZWEgc2V2ZXJhbCB0aW1lcy4gT25lIHNpZ25pZmljYW50IHBpdm90IHdhcyBzaGlmdGluZyBmcm9tIHByb3ZpZGluZyBhIHNlcnZpY2UgZm9yIGxpcGlkIG5hbm9wYXJ0aWNsZSBmb3JtdWxhdGlvbiB0byBkZXZlbG9waW5nIHRoZWlyIG93biBwcm9wcmlldGFyeSB0aGVyYXBldXRpYyBwcm9kdWN0IGZvciBzZXZlcmUgYXN0aG1hLiBGZWVkYmFjayBmcm9tIGludmVzdG9ycyBhbmQgcGFydGljaXBhdGlvbiBpbiBzdGFydHVwIGJvb3RjYW1wcyByZXZlYWxlZCBhIHN0cm9uZ2VyIG1hcmtldCBkZW1hbmQgZm9yIGEgcHJvZHVjdC1kcml2ZW4gYXBwcm9hY2ggd2l0aCBhIGNsZWFyIGV4aXQgc3RyYXRlZ3kuIFRoaXMgbGVkIHRoZW0gdG8gcmV2aXNlIHRoZWlyIGJ1c2luZXNzIG1vZGVsIHdoaWxlIHN0aWxsIGxldmVyYWdpbmcgdGhlaXIgY29yZSB0ZWNobm9sb2d5LjwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVhcm5pbmdzIGFuZCBJbXBsaWNhdGlvbnMgZm9yIG91ciBwcm9qZWN0IFwiLz5cbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgZGlzY3Vzc2VkIHRoZSBpbXBvcnRhbmNlIG9mIHJlbWFpbmluZyBhZGFwdGFibGUgdG8gZmVlZGJhY2sgYW5kIG1hcmtldCBuZWVkcy4gRm9yIG91ciBwcm9qZWN0LCB3ZSBtdXN0IGJlIG9wZW4gdG8gbWFraW5nIHN0cmF0ZWdpYyBhZGp1c3RtZW50cyBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgd2UgcmVjZWl2ZSBmcm9tIGNsaW5pY2FsIHRyaWFscywgaW52ZXN0b3JzLCBvciBwYXJ0bmVycy4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgd291bGQgYmUgdG8gZXN0YWJsaXNoIGEgZmxleGlibGUgYnVzaW5lc3MgcGxhbiB0aGF0IGFsbG93cyBmb3IgcGl2b3RzLCBzdWNoIGFzIGZvY3VzaW5nIG9uIHNwZWNpZmljIHN1YnR5cGVzIG9mIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cyBvciBhZGp1c3Rpbmcgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZSBkZWxpdmVyeSBzeXN0ZW0gdG8gbWVldCBldm9sdmluZyB0ZWNobm9sb2dpY2FsIG9yIHJlZ3VsYXRvcnkgcmVxdWlyZW1lbnRzLiA8L3A+XG5cbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUXVlc3Rpb24gMTA6IExvbmctdGVybSBWaXNpb24gXCIvPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImFzay1wXCI+RGlkIHlvdSBoYXZlIHNvbWV0aGluZyBsaWtlIGEgbG9uZy10ZXJtIHZpc2lvbiBmb3IgeW91ciBjb21wYW55IGFuZCwgaWYgc28sIGhvdyBkaWQgeW91IHJlY29uY2lsZSB0aGlzIHZpc2lvbiB3aXRoIHRoZSBzaG9ydC10ZXJtIGdvYWxzPyA8L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgdGhlIEZvdW5kZXJzIGhhZCB0byBzYXkgXCIvPlxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XG4gICAgICAgICAgICA8cD5QbGFzbWlkRmFjdG9yeSBoYWQgYSBsb25nLXRlcm0gdmlzaW9uIGZyb20gdGhlIGJlZ2lubmluZywgd2hpY2ggd2FzIHRvIHByb2R1Y2UgcGhhcm1hY2V1dGljYWwtZ3JhZGUgcGxhc21pZCBETkEgKEdNUCkuIEhvd2V2ZXIsIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGFuZCBjZXJ0aWZ5aW5nIGEgR01QIGZhY2lsaXR5IHdhcyBjb3N0bHkgYW5kIHRpbWUtY29uc3VtaW5nLiBUbyBtYW5hZ2Ugc2hvcnQtdGVybSBnb2FscywgdGhleSBkZXZlbG9wZWQgYW4gaW50ZXJtZWRpYXRlIHF1YWxpdHkgc3RhbmRhcmQgY2FsbGVkIFx1MjAxQ2hpZ2ggcXVhbGl0eSxcdTIwMUQgd2hpY2ggYWxsb3dlZCB0aGVtIHRvIHN1cHBseSBzdGFydGluZyBtYXRlcmlhbHMgZm9yIHBoYXJtYWNldXRpY2FsIHZlY3RvciBwcm9kdWN0aW9uLiBJdCB0b29rIHRoZW0gMjUgeWVhcnMgdG8gb3BlbiB0aGVpciBmaXJzdCBHTVAgZmFjaWxpdHksIGRlbW9uc3RyYXRpbmcgdGhlaXIgZm9jdXMgb24gbG9uZy10ZXJtIHBsYW5uaW5nIHdoaWxlIGJhbGFuY2luZyBpbW1lZGlhdGUgbWlsZXN0b25lcy48L3A+XG4gICAgICAgICAgICA8cD48Yj5STmhhbGUgKEJlbmphbWluIFdpbmtlbGphbm4pPC9iPjwvcD5cbiAgICAgICAgICAgIDxwPlJOaGFsZVx1MjAxOXMgbG9uZy10ZXJtIHZpc2lvbiB3YXMgdG8gZGV2ZWxvcCBSTkEtYmFzZWQgdGhlcmFwZXV0aWNzLCBwYXJ0aWN1bGFybHkgZm9yIHJlc3BpcmF0b3J5IGRpc2Vhc2VzLiBUaGV5IHJlY29uY2lsZWQgdGhpcyB2aXNpb24gd2l0aCBzaG9ydC10ZXJtIGdvYWxzIGJ5IGJyZWFraW5nIHRoZWlyIHZpc2lvbiBpbnRvIGFjdGlvbmFibGUgbWlsZXN0b25lcywgc3VjaCBhcyBkZXZlbG9waW5nIGEgbGVhZCBjYW5kaWRhdGUgZm9yIHNldmVyZSBhc3RobWEuIEFsb25nc2lkZSB0aGVpciBjb3JlIHRoZXJhcGV1dGljIGZvY3VzLCB0aGV5IG9mZmVyZWQgc21hbGwtc2NhbGUgbWFudWZhY3R1cmluZyBzZXJ2aWNlcyB0byBnZW5lcmF0ZSByZXZlbnVlIGFuZCBidWlsZCBjcmVkaWJpbGl0eS4gVGhpcyBkdWFsIGFwcHJvYWNoIGhlbHBlZCB0aGVtIG1haW50YWluIG1vbWVudHVtIHdoaWxlIHdvcmtpbmcgdG93YXJkcyB0aGVpciBsYXJnZXIgZ29hbCBvZiBlc3RhYmxpc2hpbmcgYSBwaXBlbGluZSBvZiBSTkEgdGhlcmFwZXV0aWNzLiA8L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XG4gICAgICAgICAgICA8cD5Cb3RoIGZvdW5kZXJzIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGFsaWduaW5nIHNob3J0LXRlcm0gZ29hbHMgd2l0aCBhIGxvbmctdGVybSB2aXNpb24uIEZvciBvdXIgcHJvamVjdCwgd2UgbXVzdCBlbnN1cmUgdGhhdCB3aGlsZSBmb2N1c2luZyBvbiBpbW1lZGlhdGUgbWlsZXN0b25lcywgc3VjaCBhcyBkZW1vbnN0cmF0aW5nIHRoZSBlZmZpY2FjeSBvZiBvdXIgUk5BLWJhc2VkIHRoZXJhcHksIHdlIG1haW50YWluIHNpZ2h0IG9mIG91ciBicm9hZGVyIGdvYWw6IHJldm9sdXRpb25pemluZyBjeXN0aWMgZmlicm9zaXMgdHJlYXRtZW50LiBBIGNvbmNyZXRlIG5leHQgc3RlcCB3b3VsZCBiZSB0byBicmVhayBkb3duIG91ciBsb25nLXRlcm0gdmlzaW9uIGludG8gYWN0aW9uYWJsZSBzaG9ydC10ZXJtIGdvYWxzLCBzdWNoIGFzIG9wdGltaXppbmcgb3VyIGRlbGl2ZXJ5IHN5c3RlbSBhbmQgc2VjdXJpbmcgcmVndWxhdG9yeSBhcHByb3ZhbHMsIHdoaWxlIGJ1aWxkaW5nIGEgc3VzdGFpbmFibGUgcGlwZWxpbmUgZm9yIGZ1dHVyZSBSTkEgdGhlcmFwZXV0aWNzLiA8L3A+ICAgXG4gICAgICAgIDwvZGl2PlxuXG5cblxuICAgICAgICA8ZGl2IGlkPVwiZW50LW5leHRcIiBjbGFzc05hbWU9XCJlbnQtaW50ZXJ2aWV3XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgPEg0IGlkPVwiZW50LWNvdXJzZS1oZWFkaW5nXCIgdGV4dD1cIkdYUCBpbiB0aGUgY29udGV4dCBvZiBjbGluaWNhbCB0cmlhbHMgXCIvPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJSb2xlIG9mIEdYUCBpbiBTY2FsaW5nIGFuZCBQcm9vZi1vZi1Db25jZXB0XCIvPlxuICAgICAgICAgICAgPHA+VG8gdGFrZSBvdXIgUk5BLWJhc2VkIGdlbmUgdGhlcmFweSBmb3IgY3lzdGljIGZpYnJvc2lzIGNsb3NlciB0byBjbGluaWNhbCB0cmlhbHMgYW5kIHBvdGVudGlhbCBtYXJrZXQgZW50cnksIGludmVzdG9ycyBhbmQgcmVndWxhdG9yeSBhdXRob3JpdGllcyBuZWVkIFxuICAgICAgICAgICAgICAgIGNvbmZpZGVuY2UgaW4gdGhlIHF1YWxpdHkgYW5kIHJlbGlhYmlsaXR5IG9mIG91ciB3b3JrLiBXaGlsZSB0aGUgY3VycmVudCBpR0VNIHByb29mLW9mLWNvbmNlcHQgZGVtb25zdHJhdGVzIGZlYXNpYmlsaXR5LCBpbnZlc3RvcnMgdHlwaWNhbGx5IGV4cGVjdCBhIFxuICAgICAgICAgICAgICAgIG1vcmUgc29waGlzdGljYXRlZCB2YWxpZGF0aW9uLCBlc3BlY2lhbGx5IGluIDxiPkluLVZpdm8gbW9kZWxzPC9iPi4gR1hQIHdvdWxkIGJlIGZ1bmRhbWVudGFsIGluIGFjaGlldmluZyB0aGlzIG5leHQgc3RlcDogPC9wPlxuICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkdvb2QgTGFib3JhdG9yeSBQcmFjdGljZSAoR0xQKTwvYj4gd291bGQgZ3VpZGUgdGhlIGV4cGVyaW1lbnRhbCBzZXR1cCBpbiBhbmltYWwgbW9kZWxzLCBlbnN1cmluZyB0aGF0IHRoZSByZXN1bHRzIHdlIGdlbmVyYXRlIGFyZSByZXByb2R1Y2libGUgYW5kIG1lZXQgcmVndWxhdG9yeSBzdGFuZGFyZHMgZm9yIGRhdGEgaW50ZWdyaXR5IGFuZCBzYWZldHkuIFRoaXMgaXMgY3JpdGljYWwgZm9yIHByb2dyZXNzaW5nIHRvIHByZWNsaW5pY2FsIHRyaWFscy4gPC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkdvb2QgTWFudWZhY3R1cmluZyBQcmFjdGljZSAoR01QKSA8L2I+IHdvdWxkIHBsYXkgYSBrZXkgcm9sZSBhcyB3ZSBsb29rIHRvIHNjYWxlIG91ciBwcm9kdWN0aW9uLiBOb3Qgb25seSB3b3VsZCB3ZSBuZWVkIHRvIHByb2R1Y2Ugb3VyIFJOQSBjb25zdHJ1Y3RzIGNvbnNpc3RlbnRseSwgYnV0IHdlIHdvdWxkIGFsc28gaGF2ZSB0byBkZW1vbnN0cmF0ZSB0aGF0IG91ciBtYW51ZmFjdHVyaW5nIHByb2Nlc3MgY2FuIGJlIHNjYWxlZCB3aGlsZSBtYWludGFpbmluZyBxdWFsaXR5IGFuZCBzYWZldHksIHdoaWNoIGlzIGVzc2VudGlhbCBmb3IgYXR0cmFjdGluZyBpbnZlc3RtZW50LiA8L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIkluc2lnaHRzIGZyb20gR1hQIFRyYWluaW5nXCIvPlxuICAgICAgICAgICAgPHA+T25lIG9mIG91ciB0ZWFtIG1lbWJlcnMgcmVjZW50bHkgY29tcGxldGVkIGFuIGludGVuc2l2ZSBHWFAgY291cnNlLCB3aGljaCByZWluZm9yY2VkIHRoZSBpbXBvcnRhbmNlIG9mIHN0YW5kYXJkIG9wZXJhdGluZyBwcm9jZWR1cmVzIChTT1BzKSBhbmQgcmlnb3JvdXMgZG9jdW1lbnRhdGlvbiB0aHJvdWdob3V0IHRoZSBkZXZlbG9wbWVudCBwcm9jZXNzXHUyMDBCKEhQX0dYUCBjb3Vyc2UpLiBUaGlzIHRyYWluaW5nIGhhcyBwcmVwYXJlZCB1cyB0byBpbXBsZW1lbnQgcHJhY3RpY2VzIHN1Y2ggYXMgRmFpbHVyZSBNb2RlIGFuZCBFZmZlY3RzIEFuYWx5c2lzIChGTUVBKSwgYSByaXNrIGFzc2Vzc21lbnQgdGVjaG5pcXVlIHRoYXQgd2lsbCBoZWxwIGlkZW50aWZ5IHBvdGVudGlhbCBpc3N1ZXMgZWFybHkgaW4gdGhlIGRldmVsb3BtZW50IHBoYXNlLCBlbnN1cmluZyB3ZSBjYW4gcHJlZW1wdGl2ZWx5IG1pdGlnYXRlIHJpc2tzLiA8L3A+XG4gICAgICAgICAgICA8cD5BcyB3ZSBhaW0gdG8gbW92ZSB0b3dhcmRzIGNsaW5pY2FsIHRyaWFscywgR1hQIGVuc3VyZXMgdGhhdCBvdXIgcHJvZHVjdCBkZXZlbG9wbWVudCBwaXBlbGluZSBpcyBib3RoIGV0aGljYWwgYW5kIGNvbXBsaWFudCB3aXRoIGludGVybmF0aW9uYWwgc2FmZXR5IHN0YW5kYXJkcywgd2hpY2ggd2lsbCBiZSBrZXkgaW4gZGlzY3Vzc2lvbnMgd2l0aCBpbnZlc3RvcnMgYW5kIHJlZ3VsYXRvcnkgYm9kaWVzLiBCeSBlbWJlZGRpbmcgdGhlc2UgcHJpbmNpcGxlcyBlYXJseSwgd2Ugbm90IG9ubHkgZW5oYW5jZSB0aGUgcXVhbGl0eSBhbmQgcmVsaWFiaWxpdHkgb2Ygb3VyIGRhdGEgYnV0IGFsc28gbGF5IGEgZm91bmRhdGlvbiBmb3IgZnV0dXJlIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJOZXh0IFN0ZXBzXCIvPlxuICAgICAgICAgICAgPHA+QXMgd2UgbW92ZSBmb3J3YXJkLCBvdXIgdGVhbSBwbGFucyB0byBncmFkdWFsbHkgaW50ZWdyYXRlIEdYUCBzdGFuZGFyZHMgaW50byBvdXIgZGV2ZWxvcG1lbnQgcGlwZWxpbmUuIFRoZSBrbm93bGVkZ2UgZ2FpbmVkIGZyb20gdGhlIEdYUCBjb3Vyc2UsIGFsb25nIHdpdGggZXhwZXJ0IGNvbnN1bHRhdGlvbnMsIHByb3ZpZGVzIHVzIHdpdGggYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcmVndWxhdG9yeSBleHBlY3RhdGlvbnMgaW4gdGhlIGJpb3RlY2hub2xvZ3kgZmllbGQuIFdoaWxlIHdlIGFyZSBzdGlsbCBpbiB0aGUgZWFybHkgc3RhZ2VzIG9mIGFwcGx5aW5nIHRoZXNlIHN0YW5kYXJkcywgd2UgYWltIHRvIGFsaWduIG91ciBwcm9jZXNzZXMgd2l0aCBpbmR1c3RyeSByZXF1aXJlbWVudHMuIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCwgYXMgd2UgcHJvZ3Jlc3MsIHdlIG1haW50YWluIGEgaGlnaCBsZXZlbCBvZiBxdWFsaXR5IGFuZCBjb21wbGlhbmNlLCBwYXJ0aWN1bGFybHkgYXMgd2Ugc2NhbGUgdXAgcHJvZHVjdGlvbiBhbmQgbW92ZSBjbG9zZXIgdG8gcG90ZW50aWFsIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gPC9wPlxuICAgICAgICAgICAgPEg0IHRleHQ9XCJNYXJrZXQgRXZhbHVhdGlvblwiLz4gXG4gICAgICAgICAgICA8SDUgdGV4dD1cIjEuIFRhcmdldCBNYXJrZXQgRGVmaW5pdGlvbiBcIi8+XG4gICAgICAgICAgICA8cD48Yj5QYXRpZW50IFBvcHVsYXRpb246PC9iPiBDeXN0aWMgRmlicm9zaXMgKENGKSBpcyBhIHJhcmUgZ2VuZXRpYyBkaXNvcmRlciBhZmZlY3Rpbmcgb3ZlciA4MCwwMDAgaW5kaXZpZHVhbHMgd29ybGR3aWRlLCB3aXRoIGEgc2lnbmlmaWNhbnQgXG4gICAgICAgICAgICBjb25jZW50cmF0aW9uIGluIE5vcnRoIEFtZXJpY2EgYW5kIEV1cm9wZS4gQWJvdXQgOTAlIG9mIENGIHBhdGllbnRzIGhhdmUgYXQgbGVhc3Qgb25lIGNvcHkgb2YgdGhlIEY1MDhkZWwgbXV0YXRpb24sIHdoaWNoIG1ha2VzIHRoZW0gcG90ZW50aWFsIFxuICAgICAgICAgICAgY2FuZGlkYXRlcyBmb3IgdGhlcmFwaWVzIHRhcmdldGluZyB0aGlzIG11dGF0aW9uIFsxXSBbMl0uIDwvcD5cbiAgICAgICAgICAgIDxwPjxiPkdlb2dyYXBoaWNhbCBGb2N1czo8L2I+VGhlIGxhcmdlc3QgbWFya2V0cyBhcmUgaW4gTm9ydGggQW1lcmljYSBhbmQgRXVyb3BlLCB3aGVyZSBDRiBwcmV2YWxlbmNlIGlzIGhpZ2hlc3QsIGFuZCBhY2Nlc3MgdG8gYWR2YW5jZWQgdGhlcmFwaWVzIFxuICAgICAgICAgICAgbGlrZSBSTkEtYmFzZWQgdHJlYXRtZW50cyBpcyB3ZWxsLXN1cHBvcnRlZC4gVGhpcyB3b3VsZCBiZSB0aGUgcHJpbWFyeSBmb2N1cyBmb3Igb3VyIHRoZXJhcHksIHBhcnRpY3VsYXJseSBpbiBjb3VudHJpZXMgd2l0aCBlc3RhYmxpc2hlZCBDRiBcbiAgICAgICAgICAgIHRyZWF0bWVudCBpbmZyYXN0cnVjdHVyZXMgc3VjaCBhcyB0aGUgVS5TLiwgR2VybWFueSwgYW5kIHRoZSBVLksuIFszXS48L3A+XG4gICAgICAgICAgICA8cD48Yj5Vbm1ldCBOZWVkczogPC9iPkRlc3BpdGUgYWR2YW5jZW1lbnRzIGxpa2UgQ0ZUUiBtb2R1bGF0b3JzIChlLmcuLCBLYWZ0cmlvKSwgYXJvdW5kIDEwJSBvZiBwYXRpZW50cyBkbyBub3QgcmVzcG9uZCB0byBjdXJyZW50IHRyZWF0bWVudHMgYW5kIHJlbHkgb24gXG4gICAgICAgICAgICBzeW1wdG9tYXRpYyBjYXJlIFs0XS4gT3VyIFJOQS1iYXNlZCBnZW5lIHRoZXJhcHkgY291bGQgYWRkcmVzcyB0aGlzIHVubWV0IG5lZWQsIHNwZWNpZmljYWxseSB0YXJnZXRpbmcgdGhlIERlbHRhIEY1MDggbXV0YXRpb24gZm9yIHdoaWNoIG1hbnkgcGF0aWVudHMgaGF2ZSBcbiAgICAgICAgICAgIGxpbWl0ZWQgb3B0aW9ucy4gPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCJNYXJrZXQgU2l6ZSBhbmQgR3Jvd3RoIFBvdGVudGlhbFwiLz5cbiAgICAgICAgICAgIDxwPjxiPk1hcmtldCBTaXplOiA8L2I+IFRoZSBnbG9iYWwgY3lzdGljIGZpYnJvc2lzIHRyZWF0bWVudCBtYXJrZXQgd2FzIHZhbHVlZCBhdCBVU0QgOS40MSBiaWxsaW9uIGluIDIwMjMgYW5kIGlzIGV4cGVjdGVkIHRvIGdyb3cgdG8gVVNEIDI5LjE5IGJpbGxpb24gYnkgXG4gICAgICAgICAgICAyMDMyLCB3aXRoIGEgY29tcG91bmQgYW5udWFsIGdyb3d0aCByYXRlIChDQUdSKSBvZiAxMy40JSBbNV0uIFRoaXMgZ3Jvd3RoIGlzIGRyaXZlbiBieSBhZHZhbmNlbWVudHMgaW4gZ2VuZSB0aGVyYXB5IGFuZCBpbmNyZWFzZWQgcmVzZWFyY2ggZnVuZGluZy4gR2VuZSBcbiAgICAgICAgICAgIHRoZXJhcHkgdGFyZ2V0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCB0aGUgbW9zdCBjb21tb24gQ0YgbXV0YXRpb24sIHByZXNlbnRzIGEgc2lnbmlmaWNhbnQgbWFya2V0IG9wcG9ydHVuaXR5IHdpdGhpbiB0aGlzIGxhcmdlciBDRiB0cmVhdG1lbnQgbWFya2V0WzZdLiAgPC9wPlxuICAgICAgICAgICAgPHA+PGI+R3Jvd3RoIERyaXZlcnM6PC9iPiBUaGUgaW5jcmVhc2UgaW4gQ0YgcGF0aWVudCBsaWZlc3BhbiBkdWUgdG8gaW1wcm92ZWQgdHJlYXRtZW50cywgYWxvbmdzaWRlIG9uZ29pbmcgaW5ub3ZhdGlvbiBpbiBSTkEtYmFzZWQgdGhlcmFwaWVzLCBvZmZlcnMgXG4gICAgICAgICAgICBzaWduaWZpY2FudCBncm93dGggcG90ZW50aWFsLiBUaGUgcmlzZSBpbiBnb3Zlcm5tZW50LWJhY2tlZCBpbml0aWF0aXZlcyBhbmQgbm9uLXByb2ZpdCBmdW5kaW5nIGZ1cnRoZXIgc3VwcG9ydHMgbWFya2V0IGV4cGFuc2lvbiBbN11bOF0uIDwvcD5cbiAgICAgICAgICAgIDxwPjxiPk9wcG9ydHVuaXR5IGZvciBSTkEtQmFzZWQgVGhlcmFwaWVzOjwvYj4gV2hpbGUgY3VycmVudCB0cmVhdG1lbnRzIGxpa2UgQ0ZUUiBtb2R1bGF0b3JzIHByb3ZpZGUgcmVsaWVmIGZvciBtYW55IHBhdGllbnRzLCBhcHByb3hpbWF0ZWx5IDEwJSBvZiBDRiBcbiAgICAgICAgICAgIHBhdGllbnRzIGRvIG5vdCBiZW5lZml0IGZyb20gdGhlc2UgdGhlcmFwaWVzIFs5XS4gT3VyIFJOQS1iYXNlZCB0aGVyYXB5IGhhcyB0aGUgcG90ZW50aWFsIHRvIGNhcHR1cmUgdGhpcyBzZWdtZW50IG9mIHRoZSBtYXJrZXQsIGFkZHJlc3NpbmcgYW4gdW5tZXQgXG4gICAgICAgICAgICBjbGluaWNhbCBuZWVkLjwvcD5cbiAgICAgICAgICAgIDxINSB0ZXh0PVwiMy4gQ29tcGV0aXRpdmUgTGFuZHNjYXBlIFwiLz5cbiAgICAgICAgICAgIDxwPjxiPkN1cnJlbnQgQ29tcGV0aXRvcnM6PC9iPlRoZSBjeXN0aWMgZmlicm9zaXMgdHJlYXRtZW50IHNwYWNlIGlzIGRvbWluYXRlZCBieSBwaGFybWFjZXV0aWNhbCBnaWFudHMgc3VjaCBhcyBWZXJ0ZXggUGhhcm1hY2V1dGljYWxzLCB3aGljaCBoYXMgZGV2ZWxvcGVkIFxuICAgICAgICAgICAgQ0ZUUiBtb2R1bGF0b3JzIGxpa2UgS2FmdHJpby9UcmlrYWZ0YS4gVGhlc2UgbW9kdWxhdG9ycyBhcmUgY3VycmVudGx5IHRoZSBnb2xkIHN0YW5kYXJkIGZvciB0cmVhdGluZyBDRiBwYXRpZW50cyB3aXRoIHRoZSBGNTA4ZGVsIG11dGF0aW9uIFsxMF0uIFxuICAgICAgICAgICAgT3RoZXIga2V5IHBsYXllcnMgaW4gdGhlIG1hcmtldCBpbmNsdWRlIE5vdmFydGlzLCBHaWxlYWQgU2NpZW5jZXMsIGFuZCBBYmJWaWUsIGFsbCBvZiB3aG9tIGFyZSBhY3RpdmUgaW4gQ0YgZHJ1ZyBkZXZlbG9wbWVudFsxMV0uPC9wPlxuICAgICAgICAgICAgPHA+PGI+R2VuZSBUaGVyYXB5IENvbXBldGl0b3JzOjwvYj5XaGlsZSBDRlRSIG1vZHVsYXRvcnMgaGF2ZSBiZWVuIGhpZ2hseSBzdWNjZXNzZnVsLCBzZXZlcmFsIGNvbXBhbmllcyBhcmUgZXhwbG9yaW5nIGdlbmUgdGhlcmFwaWVzIGFpbWVkIGF0IGFkZHJlc3NpbmcgdGhlIFxuICAgICAgICAgICAgcm9vdCBjYXVzZSBvZiBDRiBieSBjb3JyZWN0aW5nIG9yIHJlcGxhY2luZyBkZWZlY3RpdmUgQ0ZUUiBnZW5lcy4gRWFybHktc3RhZ2UgZ2VuZSB0aGVyYXB5IHRyaWFscyBoYXZlIGZhY2VkIGNoYWxsZW5nZXMsIGJ1dCBhZHZhbmNlbWVudHMgaW4gZGVsaXZlcnkgXG4gICAgICAgICAgICB0ZWNobm9sb2dpZXMgYW5kIENSSVNQUi1iYXNlZCB0aGVyYXBpZXMgYXJlIG9wZW5pbmcgbmV3IHBhdGh3YXlzWzEyXS48L3A+XG4gICAgICAgICAgICA8cD48Yj5PdXIgRGlmZmVyZW50aWF0aW9uOiA8L2I+IFVubGlrZSBleGlzdGluZyBDRlRSIG1vZHVsYXRvcnMgdGhhdCByZXF1aXJlIGxpZmVsb25nIGFkbWluaXN0cmF0aW9uLCBvdXIgUk5BLWJhc2VkIHRoZXJhcHkgYWltcyB0byBwcm92aWRlIGEgbW9yZSBcbiAgICAgICAgICAgIHBlcm1hbmVudCBzb2x1dGlvbiBieSBkaXJlY3RseSBhZGRyZXNzaW5nIHRoZSBnZW5ldGljIGNhdXNlIG9mIENGLCBzcGVjaWZpY2FsbHkgdGFyZ2V0aW5nIHBhdGllbnRzIHdobyBkbyBub3QgcmVzcG9uZCB0byBjdXJyZW50IENGVFIgbW9kdWxhdG9ycy4gXG4gICAgICAgICAgICBUaGlzIGNvdWxkIHBvc2l0aW9uIHVzIGFzIGEgdW5pcXVlIHBsYXllciBpbiB0aGUgbWFya2V0LCB0YXJnZXRpbmcgYW4gdW5kZXJzZXJ2ZWQgcGF0aWVudCBncm91cC48L3A+XG4gICAgICAgICAgICA8SDUgdGV4dD1cIjQuIEJhcnJpZXJzIHRvIEVudHJ5IFwiLz5cbiAgICAgICAgICAgIDxwPjxiPlJlZ3VsYXRvcnkgSHVyZGxlczo8L2I+T25lIG9mIHRoZSBiaWdnZXN0IGNoYWxsZW5nZXMgaW4gYnJpbmdpbmcgYSBnZW5lIHRoZXJhcHkgdG8gbWFya2V0IGlzIG5hdmlnYXRpbmcgdGhlIGNvbXBsZXggcmVndWxhdG9yeSBlbnZpcm9ubWVudC4gXG4gICAgICAgICAgICBDb21wbGlhbmNlIHdpdGggR29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApIGFuZCBHb29kIExhYm9yYXRvcnkgUHJhY3RpY2UgKEdMUCkgaXMgZXNzZW50aWFsIGZvciBvYnRhaW5pbmcgYXBwcm92YWxzIGZyb20gYm9kaWVzIGxpa2UgdGhlIEZEQSBhbmQgRU1BLiBcbiAgICAgICAgICAgIFNlY3VyaW5nIGFwcHJvdmFsIGZvciBSTkEtYmFzZWQgZ2VuZSB0aGVyYXBpZXMsIHBhcnRpY3VsYXJseSB0aG9zZSB0YXJnZXRpbmcgcmFyZSBkaXNlYXNlcyBsaWtlIGN5c3RpYyBmaWJyb3NpcywgY2FuIGludm9sdmUgbGVuZ3RoeSBhbmQgZXhwZW5zaXZlIGNsaW5pY2FsIFxuICAgICAgICAgICAgdHJpYWxzWzEzXVsxNF0uPC9wPlxuICAgICAgICAgICAgPHA+PGI+SGlnaCBSJkQgQ29zdHM6PC9iPiBEZXZlbG9waW5nIGdlbmUgdGhlcmFwaWVzIGludm9sdmVzIHNpZ25pZmljYW50IHVwZnJvbnQgY29zdHMsIGZyb20gcmVzZWFyY2ggYW5kIGRldmVsb3BtZW50IHRvIGNsaW5pY2FsIHRyaWFscy4gRm9yIGEgc21hbGwgXG4gICAgICAgICAgICBiaW90ZWNoIHN0YXJ0dXAsIHNlY3VyaW5nIHRoZSBuZWNlc3NhcnkgZnVuZGluZyBjYW4gYmUgYSBiYXJyaWVyLCBlc3BlY2lhbGx5IHdoZW4gY29tcGV0aW5nIGFnYWluc3QgZXN0YWJsaXNoZWQgcGhhcm1hY2V1dGljYWwgY29tcGFuaWVzIHdpdGggbGFyZ2VyIFImRCBcbiAgICAgICAgICAgIGJ1ZGdldHNbMTVdLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPkRlbGl2ZXJ5IENoYWxsZW5nZXM6PC9iPiBFZmZlY3RpdmUgZGVsaXZlcnkgb2YgUk5BLWJhc2VkIHRoZXJhcGllcyB0byB0aGUgbHVuZ3MgcmVtYWlucyBhIHRlY2huaWNhbCBiYXJyaWVyLiBXaGlsZSBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBzaG93IFxuICAgICAgICAgICAgcHJvbWlzZSwgb3B0aW1pemluZyB0aGUgZGVsaXZlcnkgbWV0aG9kIHRvIGVuc3VyZSBjb25zaXN0ZW50LCBzYWZlLCBhbmQgZWZmZWN0aXZlIGRpc3RyaWJ1dGlvbiBvZiB0aGUgdGhlcmFweSBpbiBsdW5nIHRpc3N1ZXMgaXMgYSBjaGFsbGVuZ2UgdGhhdCBzdGlsbCBcbiAgICAgICAgICAgIG5lZWRzIHRvIGJlIGZ1bGx5IGFkZHJlc3NlZCBbMTZdLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPk1hcmtldCBTYXR1cmF0aW9uIGFuZCBFbnRyZW5jaGVkIENvbXBldGl0b3JzOjwvYj4gVGhlIENGIHRyZWF0bWVudCBtYXJrZXQgaXMgYWxyZWFkeSBkb21pbmF0ZWQgYnkgZXN0YWJsaXNoZWQgcGxheWVycyBsaWtlIFZlcnRleCBQaGFybWFjZXV0aWNhbHMuIFxuICAgICAgICAgICAgR2FpbmluZyBhIGZvb3Rob2xkIGluIGEgbWFya2V0IHdoZXJlIENGVFIgbW9kdWxhdG9ycyBhcmUgdGhlIHN0YW5kYXJkIG9mIGNhcmUgd2lsbCByZXF1aXJlIGRlbW9uc3RyYXRpbmcgc2lnbmlmaWNhbnQgY2xpbmljYWwgYWR2YW50YWdlcywgcGFydGljdWxhcmx5IGZvciBcbiAgICAgICAgICAgIHBhdGllbnRzIG5vdCBzZXJ2ZWQgYnkgZXhpc3RpbmcgdHJlYXRtZW50c1sxN10uPC9wPlxuICAgICAgICAgICAgPEg1IHRleHQ9XCI1LiBHby10by1NYXJrZXQgU3RyYXRlZ3lcIi8+XG4gICAgICAgICAgICA8cD48Yj5Jbml0aWFsIEZvY3VzIG9uIENsaW5pY2FsIFBhcnRuZXJzaGlwczo8L2I+IFRoZSBmaXJzdCBzdGVwIGluIGJyaW5naW5nIG91ciBSTkEtYmFzZWQgZ2VuZSB0aGVyYXB5IHRvIG1hcmtldCB3aWxsIGJlIHBhcnRuZXJpbmcgd2l0aCBhY2FkZW1pYyBcbiAgICAgICAgICAgIGluc3RpdHV0aW9ucyBhbmQgY2xpbmljYWwgcmVzZWFyY2ggY2VudGVycyB0byBjb25kdWN0IGluaXRpYWwgY2xpbmljYWwgdHJpYWxzLiBFc3RhYmxpc2hpbmcgY3JlZGliaWxpdHkgdGhyb3VnaCBjb2xsYWJvcmF0aW9ucyB3aXRoIGtleSBvcGluaW9uIGxlYWRlcnMgXG4gICAgICAgICAgICBpbiBjeXN0aWMgZmlicm9zaXMgdHJlYXRtZW50IHdpbGwgaGVscCBidWlsZCB0cnVzdCBhbmQgdmFsaWRhdGUgdGhlIGVmZmljYWN5IG9mIG91ciB0aGVyYXB5IFsxOF1bMTldLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPkVhcmx5IEFkb3B0ZXJzOiA8L2I+T3VyIGZvY3VzIHdpbGwgYmUgb24gdGFyZ2V0aW5nIGVhcmx5IGFkb3B0ZXJzLCBzdWNoIGFzIHNwZWNpYWxpemVkIGN5c3RpYyBmaWJyb3NpcyBjbGluaWNzIGFuZCBob3NwaXRhbHMgdGhhdCBhcmUgZmFtaWxpYXIgXG4gICAgICAgICAgICB3aXRoIGN1dHRpbmctZWRnZSBnZW5lIHRoZXJhcGllcy4gVGhlc2UgaW5zdGl0dXRpb25zIGFyZSBtb3JlIGxpa2VseSB0byBhZG9wdCBub3ZlbCB0cmVhdG1lbnRzIGFuZCBwcm92aWRlIHVzIHdpdGggcmVhbC13b3JsZCBkYXRhIHRvIGZ1cnRoZXIgcmVmaW5lIG91ciBcbiAgICAgICAgICAgIHRoZXJhcHlbMjBdLjwvcD5cbiAgICAgICAgICAgIDxwPjxiPlBhcnRuZXJzaGlwcyB3aXRoIEJpb3RlY2ggYW5kIFBoYXJtYWNldXRpY2FsIENvbXBhbmllczo8L2I+IFBhcnRuZXJpbmcgd2l0aCBlc3RhYmxpc2hlZCBiaW90ZWNoIG9yIHBoYXJtYWNldXRpY2FsIGNvbXBhbmllcyBjb3VsZCBoZWxwIGFjY2VsZXJhdGUgXG4gICAgICAgICAgICBjb21tZXJjaWFsaXphdGlvbiBieSBwcm92aWRpbmcgYWNjZXNzIHRvIGRpc3RyaWJ1dGlvbiBjaGFubmVscywgcmVndWxhdG9yeSBleHBlcnRpc2UsIGFuZCBhZGRpdGlvbmFsIGZ1bmRpbmcuIExpY2Vuc2luZyBhZ3JlZW1lbnRzIG9yIGNvLWRldmVsb3BtZW50IFxuICAgICAgICAgICAgZGVhbHMgd2l0aCBjb21wYW5pZXMgc3BlY2lhbGl6aW5nIGluIGdlbmUgdGhlcmFweSBjb3VsZCBiZSBrZXkgdG8gc2NhbGluZyBwcm9kdWN0aW9uWzIxXS48L3A+XG4gICAgICAgICAgICA8cD48Yj5SZWd1bGF0b3J5IFN0cmF0ZWd5OjwvYj5OYXZpZ2F0aW5nIHRoZSByZWd1bGF0b3J5IGVudmlyb25tZW50IHdpbGwgYmUgYSBwcmlvcml0eSwgYW5kIGVhcmx5IGVuZ2FnZW1lbnQgd2l0aCB0aGUgRkRBLCBFTUEsIGFuZCBvdGhlciByZWd1bGF0b3J5IFxuICAgICAgICAgICAgYm9kaWVzIHdpbGwgaGVscCBlbnN1cmUgYSBzbW9vdGhlciBhcHByb3ZhbCBwcm9jZXNzLiBGb2N1c2luZyBvbiBvcnBoYW4gZHJ1ZyBkZXNpZ25hdGlvbiBvciBmYXN0LXRyYWNrIGFwcHJvdmFscyBmb3IgcmFyZSBkaXNlYXNlcyBsaWtlIGN5c3RpYyBmaWJyb3NpcyBcbiAgICAgICAgICAgIGNvdWxkIGV4cGVkaXRlIHRoZSByZWd1bGF0b3J5IHRpbWVsaW5lWzIyXS48L3A+XG4gICAgICAgICAgICA8cD48Yj5Mb25nLVRlcm0gVmlzaW9uOjwvYj4gQWZ0ZXIgaW5pdGlhbCBzdWNjZXNzIGluIHRyZWF0aW5nIGN5c3RpYyBmaWJyb3Npcywgb3VyIFJOQS1iYXNlZCB0aGVyYXB5IGNvdWxkIGJlIGV4cGFuZGVkIHRvIHRyZWF0IG90aGVyIGdlbmV0aWMgZGlzb3JkZXJzLiBcbiAgICAgICAgICAgIFRoZSBtb2R1bGFyIG5hdHVyZSBvZiBvdXIgdGVjaG5vbG9neSBhbGxvd3MgdXMgdG8gYWRhcHQgdGhlIHRoZXJhcHkgZm9yIG90aGVyIHJhcmUgZGlzZWFzZXMsIHByb3ZpZGluZyBhIGJyb2FkZXIgbWFya2V0IHBvdGVudGlhbCBpbiB0aGUgZnV0dXJlWzIzXS48L3A+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG4gICAgKVxufSIsICJpbXBvcnQgeyBCdXR0b25PbmUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgeyAgSDQgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi91dGlscy91c2VOYXZpZ2F0aW9uXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBIUE91dHJlYWNoKCl7XG4gICAgY29uc3QgeyBnb1RvUGFnZXNBbmRPcGVuVGFiIH0gPSB1c2VOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT17e21hcmdpblRvcDogXCI1dmhcIiwgbWFyZ2luQm90dG9tOiBcIjV2aFwifX0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPEJ1dHRvbk9uZSBvcGVuY2xhc3M9XCJvdXQtY3ljbGV0YWJcIiB0ZXh0PVwiT3ZlcnZpZXdcIiBvcGVuPVwib3V0LW92ZXJ2aWV3XCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwib3V0LWN5Y2xldGFiXCIgdGV4dD1cIk1VS09tb3ZlXCIgb3Blbj1cIm11a29tb3ZlXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwib3V0LWN5Y2xldGFiXCIgdGV4dD1cIldhZmZsZSBTYWxlXCIgb3Blbj1cIldhZmZsZSBzYWxlXCI+PC9CdXR0b25PbmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBcblxuICAgICAgICA8ZGl2IGlkPVwib3V0LW92ZXJ2aWV3XCIgY2xhc3NOYW1lPVwib3V0LWN5Y2xldGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cbiAgICAgICAgICA8SDQgaWQ9XCJvdXQtd2h5LWhlYWRpbmdcIiB0ZXh0PVwiUHVibGljIGVuZ2FtZW50IGFzIHBhcnQgb2YgYSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlIC0gYnV0IHdoeT9cIi8+XG4gICAgICAgICAgPHA+V2hpbGUgbWFueSBvZiBvdXIgZWZmb3J0cyBpbiBzY2llbmNlIGNvbW11bmljYXRpb24gd2VyZSBlZHVjYXRpb25hbCwgd2UgYWxzbyByZWNvZ25pemVkIHRoZSBpbXBvcnRhbmNlIG9mIHB1YmxpYyBlbmdhZ2VtZW50IHRocm91Z2ggYWN0aXZpdGllcyBcbiAgICAgICAgICAgIHRoYXQgd2VyZSBub3QgZm9jdXNlZCBvbiBmb3JtYWwgZWR1Y2F0aW9uIGJ1dCByYXRoZXIgb24gcmFpc2luZyBhd2FyZW5lc3MuIEluaXRpYXRpdmVzIGxpa2UgTVVLT21vdmUgYW5kIG91ciB3YWZmbGUgc2FsZSB3ZXJlIGVzc2VudGlhbCBpbiBicmluZ2luZyBcbiAgICAgICAgICAgIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIGludG8gcHVibGljIGZvY3VzIGFuZCBzaG93aW5nIGEgdmlzaWJsZSBjb21taXRtZW50IHRvIHRoZSBjYXVzZS48L3A+XG4gICAgICAgICAgPHA+UHVibGljIGVuZ2FuZWdtZW50IGFuZCBvdXRyZWFjaCBzZXJ2ZXMgYXMgYSByZW1pbmRlciB0aGF0IHNjaWVuY2UgZG9lcyBub3QgaGFwcGVuIGluIGlzb2xhdGlvbiAtIGl0IGlzIHJvb3RlZCBcbiAgICAgICAgICAgIGluIHJlYWwtd29ybGQgcHJvYmxlbXMgdGhhdCBpbXBhY3QgaW5kaXZpZHVhbHMgYW5kIGNvbW11bml0aWVzLiBFc3RhYmxpc2hpbmcgcHJlc2VuY2UgYWxsb3dzIGRpdmVydGluZyBpbnRlcmVzdCB0byBvdXIgcHJvamVjdCBhbmQgb3VyIGNhdXNlIHdoaWNoIGluIHR1cm4gXG4gICAgICAgICAgICBwYXZlcyB0aGUgd2F5IHRvIGVkY3VhdGUgaW50ZXJlc3RlZCBwZW9wbGUgYW5kIHRvIGxheSB0aGUgZ3JvdW5kd29yayBmb3IgYSBkZWVwZXIgY29ubmVjdGlvbiBiZXR3ZWVuIHVzIGFuZCBvdXIgcHJvamVjdCBhbmQgdGhlIGdlbmVyYWwgcHVibGljLiA8L3A+XG4gICAgICAgICAgICA8SDQgaWQ9XCJvdXQtaGVhZGluZ1wiIHRleHQ9XCJPdXIgcHVibGljIGVuZ2FnZW1lbnRcIi8+XG4gICAgICAgICAgICA8cD5PdXIgcHVibGljIGVuZ2FnZW1lbnQgc2VydmVkIGJvdGggYXMgYSBmb3JtIG9mIHNwcmVhZGluZyBhd2FyZW5lc3MgYW5kIHRvIGVzdGFibGlzaCBmaXJzdCBjb250YWN0cy4gQnkgaW52aXRpbmcgb3RoZXIgcGVvcGxlIGluIEJpZWxlZmVsZCB0byBqb2luIG91ciB0ZWFtIFxuICAgICAgICAgICAgZm9yIE1VS09tb3ZlLCB3ZSB3ZXJlIGFibGUgdG8gcmVhY2ggYSB3aWRlciBhdWRpZW5jZSBhbmQgZm9zdGVyIGNvbm5lY3Rpb25zIHRoYXQgZXh0ZW5kZWQgYmV5b25kIG91ciB1bml2ZXJzaXR5LjwvcD5cbiAgICAgICAgICAgIDxwPkluIGFkZGl0aW9uIHRvIG91ciBpbi1wZXJzb24gZXZlbnRzLCB3ZSB1c2VkIHNvY2lhbCBtZWRpYSBhcyBhIHRvb2wgdG8ga2VlcCB0aGUgY29tbXVuaXR5IGVuZ2FnZWQgYW5kIHVwZGF0ZWQuIFdlIHNoYXJlZCBvdXIgcHJvZ3Jlc3MgaW4gXG4gICAgICAgICAgICAgIE1VS09tb3ZlLCBwcm9tb3RlZCBvdXIgZXZlbnRzLCBhbmQgcG9zdGVkIGVkdWNhdGlvbmFsIGNvbnRlbnQgYWJvdXQgY3lzdGljIGZpYnJvc2lzIGFuZCBnZW5lIHRoZXJhcHkuIE91ciBzb2NpYWwgbWVkaWEgcHJlc2VuY2UgaGVscGVkIHVzIFxuICAgICAgICAgICAgICBzdGF5IGNvbm5lY3RlZCB3aXRoIGEgYnJvYWRlciBhdWRpZW5jZSwgZW5zdXJpbmcgdGhhdCBldmVuIHRob3NlIHdobyBjb3VsZCBub3QgYXR0ZW5kIG91ciBldmVudHMgY291bGQgc3RpbGwgZm9sbG93IGFsb25nIGFuZCBzdXBwb3J0IG91ciBtaXNzaW9uLjwvcD5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIFRocm91Z2ggdGhlc2UgZWZmb3J0cywgd2UgYWxzbyBtYWRlIHZhbHVhYmxlIGNvbm5lY3Rpb25zLCByZXN1bHRpbmcgaW4gYW4gaW50ZXJ2aWV3IHdpdGggdGhlIFwiTXVrbyBEaW5vXCIgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignZGlubycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlRob21hcyBNYWxlbmtlPC9hPi4gVGhpcyBoaWdobGlnaHRlZCB0aGUgcG93ZXIgXG4gICAgICAgICAgICAgIG9mIG9ubGluZSBwbGF0Zm9ybXMgaW4gZXhwYW5kaW5nIG91ciByZWFjaCBhbmQgZm9zdGVyaW5nIGNvbGxhYm9yYXRpb24gYmV5b25kIG91ciBpbW1lZGlhdGUgY29tbXVuaXR5LjwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGlkPVwiV2FmZmxlIHNhbGVcIiBjbGFzc05hbWU9XCJvdXQtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICA8SDQgdGV4dD1cIldhZmZsZSBTYWxlXCI+PC9IND5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxwPlRvIHN1cHBvcnQgb3VyIHJlc2VhcmNoIHByb2plY3QgYW5kIHJhaXNlIGZ1bmRzIGZvciBvdXIgaUdFTSB0ZWFtIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3ZSBkZWNpZGVkIHRvIG9yZ2FuaXplIGEgd2FmZmxlIHNhbGUgaW4gdGhlIG1haW4gaGFsbCBvZiB0aGUgdW5pdmVyc2l0eS4gVGhpcyBpbml0aWF0aXZlIHdhcyBhaW1lZCBhdCByYWlzaW5nIGF3YXJlbmVzcyBhYm91dCBvdXIgcHJvamVjdCBhbmQgY29sbGVjdGluZyBmdW5kcyBmb3Igb3VyIHJlc2VhcmNoIGludG8gY3lzdGljIGZpYnJvc2lzLiA8L3A+XG4gICAgICAgICAgICA8cD5UaGUgc2FsZSB0b29rIHBsYWNlIGluIGN5c3RpYyBmaWJyb3NpcyBhd2FyZW5lc3MgbW9udGggTWF5IGluIHRoZSBHcmVhdCBIYWxsIG9mIG91ciBVbml2ZXJzaXR5LiBBcyBwZW9wbGUgcGFzc2VkIGJ5LCB3ZSBlbmdhZ2VkIHRoZW0gYnkgaW50cm9kdWNpbmcgb3VyIHJlc2VhcmNoIGdyb3VwIGFuZCBleHBsYWluaW5nIG91ciBwcm9qZWN0XHUyMDE5cyBvYmplY3RpdmVzLiBXZSBzaGFyZWQgaW5mb3JtYXRpb24gYWJvdXQgY3lzdGljIGZpYnJvc2lzIGFuZCB3aHkgd2UgYXJlIHJhaXNpbmcgbW9uZXkuIE91ciBnb2FsIHdhcyB0byBub3Qgb25seSBqdXN0IHRvIHNlbGwgd2FmZmxlcywgYnV0IGFsc28gdG8gZWR1Y2F0ZSB0aGUgdW5pdmVyc2l0eSBjb21tdW5pdHkgYWJvdXQgb3VyIHJlc2VhcmNoIGFuZCBpdHNcdTIwMTkgcG90ZW50aWFsIGltcGFjdC4gVGhlIHJlc3BvbnNlIGhhcyBiZWVuIG92ZXJ3aGVsbWluZ2x5IHBvc2l0aXZlLiBNYW55IHdlcmUgZ2VudWluZWx5IGludGVyZXN0ZWQgaW4gb3VyIHdvcmsgYW5kIGFza2VkIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgb3VyIHJlc2VhcmNoIGFuZCB0aGUgZ29hbHMgb2Ygb3VyIHByb2plY3QuIFRoaXMgZW50aHVzaWFzbSBzdHJlbmd0aGVuZWQgb3VyIGNvbW1pdG1lbnQgdG8gdGhlIHByb2plY3QgYW5kIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGNvbW11bml0eSBpbnZvbHZlbWVudCBpbiBzY2llbnRpZmljIHJlc2VhcmNoLiA8L3A+XG4gICAgICAgICAgICA8cD5UaGUgd2FmZmxlIHNhbGUgd2FzIGEgZ3JlYXQgc3VjY2VzcywgYm90aCBpbiB0ZXJtcyBvZiByYWlzaW5nIGZ1bmRzIGFuZCBpbmNyZWFzaW5nIGF3YXJlbmVzcyBhYm91dCBvdXIgd29yayB3aXRoaW4gdGhlIHVuaXZlcnNpdHkuIEl0IHdhcyBhIGNvbGxhYm9yYXRpdmUgZWZmb3J0IHRoYXQgYnJvdWdodCBvdXIgdGVhbSBjbG9zZXIgdG9nZXRoZXIgYW5kIGRlbW9uc3RyYXRlZCB0aGUgcG93ZXIgb2YgY29tbXVuaXR5IHN1cHBvcnQgaW4gYWR2YW5jaW5nIHNjaWVudGlmaWMgcmVzZWFyY2guIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPiBcbiAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZWRjYXRpb24tYW5kLW91dHJlYWNoL3NjcmVlbnNob3QtMjAyNC0wOS0yNS0yMDIwMDgucG5nXCIgc3R5bGU9e3tvYmplY3RGaXQ6IFwiY292ZXJcIiwgbWF4SGVpZ2h0OiBcIjUwJVwiLCB3aWR0aDogXCIxMDAlXCJ9fS8+IFxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIFxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGlkPVwibXVrb21vdmVcIiBjbGFzc05hbWU9XCJvdXQtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgIDxINCBpZD1cImNmLW1vbnRoXCIgdGV4dD1cIkN5c3RpYyBmaWJyb3NpcyBhd2FyZW5lc3MgbW9udGhcIi8+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZnVsbC1zbWFsbCBjb2wtM1wiPlxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwibWF4NDAwXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL3BvLW11a29tb3ZlL3dpci1wbGFrYXQtbXVrb21vdmUuanBlZ1wiPjwvaW1nPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPGgzPldoYXQgaXMgTVVLT21vdmU/PC9oMz5cbiAgICAgICAgICAgIDxwPkFzIHBhcnQgb2YgdGhlIGN5c3RpYyBmaWJyb3NpcyBhd2FyZW5lc3MgbW9udGggTWF5LCB3ZSB0b29rIHBhcnQgaW4gdGhpcyB5ZWFyJ3MgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvbW92ZVwiPk1VS09tb3ZlPC9hPiBmcm9tIE1heSA4dGggdG8gTWF5XG4gICAgICAgICAgICAgIDEydGggdW5kZXIgdGhlIHRlYW0gbmFtZSBpR0VNIEJpZWxlZmVsZC4gTVVLT21vdmUgaXMgYSBwYXJ0aWNpcGF0b3J5IHNwb3J0cyBpbml0aWF0aXZlIG9yZ2FuaXplZCBieSBcbiAgICAgICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm11a28uaW5mby9cIj4gTXVrb3Zpc3ppZG9zZSBlLlYuPC9hPiwgdGhlIEdlcm1hbiBDeXN0aWMgRmlicm9zaXMgQXNzb2NpYXRpb24sIGFpbWVkIGF0IHJhaXNpbmcgYXdhcmVuZXNzIGFuZCBmdW5kcyBcbiAgICAgICAgICAgICAgZm9yIGN5c3RpYyBmaWJyb3NpcyByZXNlYXJjaCBhbmQgc3VwcG9ydC4gVGhpcyBhbm51YWwgZXZlbnQgZW5jb3VyYWdlcyBpbmRpdmlkdWFscyBhbmQgdGVhbXMgdG8gXG4gICAgICAgICAgICAgIGVuZ2FnZSBpbiB2YXJpb3VzIHBoeXNpY2FsIGFjdGl2aXRpZXMsIHRyYWNrIHRoZWlyIG1vdmVtZW50LCBhbmQgc2hhcmUgdGhlaXIgZXhwZXJpZW5jZXMgb25saW5lLiAgPC9wPlxuICAgICAgICAgICAgICA8YnV0dG9uPlNwZW5kZW48L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxici8+IFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPGgzPldoeSBhbmQgaW4gd2hpY2ggd2F5cyB3ZXJlIHdlIGludmVzdGVkIGluIE1VS09tb3ZlPyA8L2gzPlxuICAgICAgICAgICAgPHA+V2hpbGUgTVVLT21vdmUgd2FzIG5vdCBhIHNjaWVudGlmaWMgb3IgZWR1Y2F0aW9uYWwgZXZlbnQsIGl0IHBsYXllZCBhbiBpbXBvcnRhbnQgcm9sZSBpbiBkZW1vbnN0cmF0aW5nIG91ciBwcmVzZW5jZSBpbiB0aGUgYnJvYWRlciBDRiBcbiAgICAgICAgICAgICAgY29tbXVuaXR5LjwvcD5cbiAgICAgICAgICA8cD5XZSBkaWQgbm90IHN0b3AgYXQgb3VyIHBhcnRpY2lwYXRpb24gaXRzZWxmIC0gd2Ugd2FudGVkIHRvIG1ha2Ugb3RoZXIgcGVvcGxlIGZyb20gb3VyIHVuaXZlcnNpdHkgYW5kIGNpdHkgXG4gICAgICAgICAgICBhd2FyZSBvZiB0aGUgZXZlbnQgYW5kIGNvbGxlY3Qgc3BvcnQgaG91cnMgZm9yIGN5c3RpYyBmaWJyb3NpcyB3aXRoIHRoZW0gYnkgaW52aXRpbmcgdGhlbSB0byBqb2luIG91ciB0ZWFtLiBcbiAgICAgICAgICAgIE91ciBzdXJ2ZXkgYWJvdXQgY3lzdGljIGZpYnJvc2lzIGF3YXJlbmVzcyBhbmQgb3VyIGRpc2N1c3Npb25zIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignSW52V2VzdGhvZmYnLCAnL2h1bWFuLXByYWN0aWNlcz90YWI9Jyl9PkthdGhyaW4gV2VzdGhvZmY8L2E+LCB0aGUgaGVhZCBvZiBhIFxuICAgICAgICAgICAgcHJhY3RpY2UgZm9yIHBoeXNpb3RoZXJhcHkgaW4gR1x1MDBGQ3RlcnNsb2ggd2hvIGlzIGFsc28gdHJlYXRpbmcgeW91bmcgQ0YgcGF0aWVudHMsIHNob3dlZCB1cyBob3cgbGl0dGxlIGtub3duIFxuICAgICAgICAgICAgdGhpcyBpbGxuZXNzIHN0aWxsIGlzLiBFc3BlY2lhbGx5IHRoZSBpbnRlcnZpZXcgd2l0aCB0aGUgcGh5c2lvdGhlcmFwaXN0IG1hZGUgdXMgcmVhbGl6ZSBob3cgaW1wb3J0YW50IFxuICAgICAgICAgICAgZXhlcmNpc2UgaXMgZm9yIGV2ZXJ5b25lIGFuZCBob3cgaXQgYnJpbmdzIGEgY29tbXVuaXR5IHRvZ2V0aGVyIC0gd2Ugd2FudGVkIHRvIGVzdGFibGlzaCBNVUtPbW92ZSBpbiBcbiAgICAgICAgICAgIEJpZWxlZmVsZC4gVGhhdCBpcyB3aHkgd2UgcmVhbGx5IGdvdCB0aGUgcHVibGljaXR5IGdvaW5nIGJ5IHB1dHRpbmcgdXAgcG9zdGVycyBhbmQgZGlzdHJpYnV0aW5nIGZseWVycyBcbiAgICAgICAgICAgIGF0IHRoZSB1bml2ZXJzaXR5IGFuZCBpbiBvdXIgY2l0eSBhcyB5b3UgY2FuIHNlZSBpbiB0aGUgZm9sbG93aW5nIHBpY3R1cmUuIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmdWxsLXNtYWxsIGNvbC00XCI+XG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJtYXg0MDBcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvcG8tbXVrb21vdmUvaW1nLTc4MjguanBlZ1wiPjwvaW1nPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxici8+IFxuICAgICAgICAgIDxwPldlIGFsc28gY2FsbGVkIGZvciBNVUtPbW92ZSBvbiBvdXIgc29jaWFscyBhbmQgc2V0IG91ciB0ZWFtIGEgZ29hbCBvZiBjb2xsZWN0aW5nIDI0MCBob3VycyBkb2luZyBzcG9ydHMgdG9nZXRoZXIsIFxuICAgICAgICAgICAgd2hpbGUgdGhlIGVudGlyZSBNVUtPbW92ZSBoYWQgYSBnb2FsIG9mIGNvbGxlY3RpbmcgMjQsMDAwIHNwb3J0IGhvdXJzLiBJbiBjb29wZXJhdGlvbiB3aXRoIG91ciB1bml2ZXJzaXR5J3MgXG4gICAgICAgICAgICBzcG9ydHMgZmFjaWxpdGllcywgdXNpbmcgdGhlaXIgPGEgaHJlZj1cImh0dHBzOi8vd3d3LnVuaS1iaWVsZWZlbGQuZGUvZWlucmljaHR1bmdlbi9ob2Noc2NodWxzcG9ydC96dXNhdHphbmdlYm90ZS9ob3ViaS9cIj5cdTIwMUNIT1VCSS1Ba3Rpdm1vYmlsXCI8L2E+IGFuZCBvdGhlciBlcXVpcG1lbnQsIHdlIG9yZ2FuaXplZCBhIHRlYW0gZXZlbnQgYXQgdGhlIHNwb3J0cyBcbiAgICAgICAgICAgIGdyb3VuZCBvZiBvdXIgdW5pdmVyc2l0eSBhdCB0aGUgYmVnaW4gb2YgTVVLT21vdmUuIEV2ZXJ5b25lIHdhcyB3YXJtbHkgaW52aXRlZCB0byBvdXIgZXZlbnQgb24gTWF5IDh0aCwgYW5kIFxuICAgICAgICAgICAgaXQgd2FzIGEgbG90IG9mIGZ1biB0byBwbGF5IHZhcmlvdXMgc3BvcnQgZ2FtZXMgdG9nZXRoZXIgb3V0c2lkZSBpbiB0aGUgc3VuIC0gY2hlY2sgb3V0IGluIHRoZSBmb2xsb3dpbmcgXG4gICAgICAgICAgICB2aWRlbyEgPC9wPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogTVVLT21vdmUgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvZGQzZTZlZmYtOTVmNS00N2Y0LWEwZmMtZjQxNmRiODhkZmU0P2F1dG9wbGF5PTFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGJyLz5cbiAgICAgICAgICA8aDM+V2hhdCBkaWQgd2UgYWNoaWV2ZT88L2gzPlxuICAgICAgICAgIDxwPldlIGFyZSBoYXBweSB0byBhbm5vdW5jZSB0aGF0IGJvdGggbW92ZW1lbnQgZ29hbHMgd2VyZSBzdXJwYXNzZWQ6IFRlYW0gaUdFTSBCaWVsZWZlbGQgd2FzIGFibGUgdG8gY29sbGVjdCAzNTggc3BvcnQgaG91cnMsIGFuZCBldmVyeW9uZSB3aG8gdG9vayBwYXJ0IGluIE1VS09tb3ZlIHRvZ2V0aGVyIGNvbGxlY3RlZCAzNiw1NDIgc3BvcnQgaG91cnMhICA8L3A+XG4gICAgICAgICAgPHA+VGhlIE1VS09tb3ZlIHdhcyB0aGVyZWZvcmUgYSBjb21wbGV0ZSBzdWNjZXNzLCBhbmQgd2UgdGFrZSBwcmlkZSBpbiBoYXZpbmcgY29udHJpYnV0ZWQgdG8gdGhlIGdvYWwgd2hpbGUgcmFpc2luZyBtb3JlIGF3YXJlbmVzcyBmb3IgY3lzdGljIGZpYnJvc2lzIGluIG91ciByZWdpb24gYW5kIEdlcm1hbnkgYXMgYSB3aG9sZS48L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59IiwgImltcG9ydCB7IEg0IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhQUGFydG5lcnNoaXBzKCl7XG5cbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8SDQgdGV4dD1cIkNGIFZlc3RzXCI+PC9IND5cbiAgICAgICAgICAgIDxwPkNGIFZlc3RzIFdvcmxkd2lkZSBpcyBhIGRlZGljYXRlZCBjaGFyaXR5IG9yZ2FuaXphdGlvbiBjb21taXR0ZWQgdG8gcHJvdmlkaW5nIGxpZmUtc2F2aW5nIHZlc3QgZXF1aXBtZW50IHRvIHRob3NlIGluIG5lZWQsIHJlZ2FyZGxlc3Mgb2YgdGhlaXIgZmluYW5jaWFsIHNpdHVhdGlvbi4gQnV0IHRoZXkgY2FuJ3QgZG8gaXQgYWxvbmUgXHUyMDE0IHRoZXkgbmVlZCB5b3VyIHN1cHBvcnQuIEhlbHAgdXMgbWFrZSBhIGRpZmZlcmVuY2UhIEJ5IGRvbmF0aW5nIHRvIENGVldXLCB5b3UgY2FuIGRpcmVjdGx5IGltcGFjdCB0aGUgbGl2ZXMgb2YgY3lzdGljIGZpYnJvc2lzIHBhdGllbnRzLCBnaXZpbmcgdGhlbSB0aGUgY2hhbmNlIHRvIGJyZWF0aGUgZWFzaWVyIGFuZCBsaXZlIGZ1bGxlciBsaXZlcy4gRXZlcnkgY29udHJpYnV0aW9uIGNvdW50cy48L3A+XG4gICAgICAgICAgICA8cD48c3Ryb25nPkpvaW4gdXMgaW4gdGhlIGZpZ2h0IGFnYWluc3QgY3lzdGljIGZpYnJvc2lzLjwvc3Ryb25nPiA8YSBocmVmPVwiaHR0cHM6Ly9kb25vcmJveC5vcmcvaWdlbVwiPiBEb25hdGUgdG9kYXk8L2E+IGFuZCBoZWxwIHVzIGJyaW5nIGhvcGUsIG9uZSB2ZXN0IGF0IGEgdGltZSEgVG9nZXRoZXIsIHdlIGNhbiBjaGFuZ2UgbGl2ZXMuPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICApXG59IiwgImltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgSFBDb2xsYWJzIH0gZnJvbSBcIi4vQ29sbGFib3JhdGlvbnNcIjtcbmltcG9ydCB7IEhQRWR1Y2F0aW9uIH0gZnJvbSBcIi4vRWR1Y2F0aW9uXCI7XG5pbXBvcnQgeyBIUEVudHJlcHJlbmV1ciB9IGZyb20gXCIuL0VudHJlcHJlbmV1cnNoaXBcIjtcbmltcG9ydCB7IEhQT3V0cmVhY2ggfSBmcm9tIFwiLi9PdXRyZWFjaFwiO1xuaW1wb3J0IHsgSFBQYXJ0bmVyc2hpcHMgfSBmcm9tIFwiLi9QYXJ0bmVyc2hpcHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEhQRnVydGhlckVuZ2FnZW1lbnQoKXtcblxuICAgIHJldHVybihcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJGdXJ0aGVyIEVuZ2FnZW1lbnRcIiBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudFwiPlxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJFZHVjYXRpb25cIiBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudDFcIj5cbiAgICAgICAgICAgICAgICA8SFBFZHVjYXRpb24vPlxuICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQdWJsaWMgRW5nYWdlbWVudFwiIGlkPVwiRnVydGhlciBFbmdhZ2VtZW50MlwiPlxuICAgICAgICAgICAgICAgIDxIUE91dHJlYWNoLz5cbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRW50cmVwcmVuZXVyc2hpcFwiIGlkPVwiRnVydGhlciBFbmdhZ2VtZW50M1wiPlxuICAgICAgICAgICAgICAgIDxIUEVudHJlcHJlbmV1ci8+XG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkNvbGxhYm9yYXRpb25zXCIgaWQ9XCJGdXJ0aGVyIEVuZ2FnZW1lbnQ0XCI+XG4gICAgICAgICAgICAgICAgPEhQQ29sbGFicy8+XG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlBhcnRuZXJzaGlwc1wiIGlkPVwiRnVydGhlciBFbmdhZ2VtZW50NVwiPlxuICAgICAgICAgICAgICAgIDxIUFBhcnRuZXJzaGlwcy8+XG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICApXG59IiwgImltcG9ydCB7IERvd25sb2FkTGluayB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gSFBTdXBwbGVtZW50KCl7XG5cbiAgICByZXR1cm4oXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiU3VwcGxlbWVudGFyeSBNYXRlcmlhbFwiIGlkPVwiU3VwcGxlbWVudGFyeSBNYXRlcmlhbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxwPkNsaWNrIGhlcmUgdG8gc2VlIG91ciByYXcgZGF0YSBvZiBvdXIgc3VydmVyeXMuPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPERvd25sb2FkTGluayB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Jhdy1kYXRhLXN1cnZleXMucGRmXCIgIGZpbGVOYW1lPVwicmF3LWRhdGEtc3VydmV5cy5wZGZcIj48L0Rvd25sb2FkTGluaz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgKVxufSIsICJpbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIlxuXG5leHBvcnQgZnVuY3Rpb24gSFBBYnN0cmFjdCgpe1xuICAgIFxuICAgIHJldHVybihcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJBYnN0cmFjdFwiIGlkPVwiQWJzdHJhY3RcIj5cbiAgICAgICAgICAgIDxwPkFzIHRoZSBpR0VNIEJpZWxlZmVsZC1DZUJpVGVjIHRlYW0sIG91ciBwcm9qZWN0IGFpbWVkIHRvIGRldmVsb3AgYSBnZW5lIHRoZXJhcHkgZm9yIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHdpdGggYSBodW1hbi1jZW50ZXJlZCBhcHByb2FjaC4gXG4gICAgICAgICAgICAgICAgRnJvbSB0aGUgYmVnaW5uaW5nLCB3ZSBlbmdhZ2VkIGV4dGVuc2l2ZWx5IHdpdGggQ0YgcGF0aWVudHMsIGNsaW5pY2lhbnMsIHJlZ3VsYXRvcnkgYm9kaWVzLCBhbmQgcmVzZWFyY2hlcnMgdG8gZW5zdXJlIHRoYXQgb3VyIHNvbHV0aW9uIFxuICAgICAgICAgICAgICAgIGFkZHJlc3NlZCByZWFsLXdvcmxkIG5lZWRzLiBXZSBlc3RhYmxpc2hlZCBjb250aW51b3VzIGZlZWRiYWNrIGxvb3BzIHRvIHJlZmluZSBhbmQgZXZvbHZlIG91ciBwcm9qZWN0IGF0IGV2ZXJ5IHN0YWdlLCBpbmNvcnBvcmF0aW5nIGluc2lnaHRzIFxuICAgICAgICAgICAgICAgIGZyb20gZGl2ZXJzZSBzdGFrZWhvbGRlcnMgdG8gY3JlYXRlIGEgcmVzcG9uc2libGUsIGltcGFjdGZ1bCwgYW5kIGV0aGljYWxseSBzb3VuZCB0aGVyYXB5LiBPdXIgbWlzc2lvbiB3YXMgbm90IGp1c3QgdG8gZGV2ZWxvcCBhIHRlY2huaWNhbCBcbiAgICAgICAgICAgICAgICBzb2x1dGlvbiBidXQgdG8gY3JlYXRlIG9uZSB0aGF0IGFsaWducyB3aXRoIHNvY2lldGFsIHZhbHVlcyBhbmQgcGF0aWVudCBleHBlY3RhdGlvbnMuIDwvcD5cbiAgICAgICAgICAgIDxwPk91ciBpbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlcyBhcHByb2FjaCB3YXMgbm90IGp1c3QgYW4gYWRkaXRpb24gdG8gb3VyIHByb2plY3RcdTIwMTRpdCB3YXMgdGhlIGZvdW5kYXRpb24gb24gd2hpY2ggZXZlcnkgZGVjaXNpb24gd2FzIGJ1aWx0LiBCeSBhY3RpdmVseSBcbiAgICAgICAgICAgICAgICBlbmdhZ2luZyB3aXRoIGN5c3RpYyBmaWJyb3NpcyAoQ0YpIHBhdGllbnRzLCBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMsIGFuZCByZWd1bGF0b3J5IGV4cGVydHMsIHdlIGVuc3VyZWQgdGhhdCB0aGVpciBmZWVkYmFjayBkaXJlY3RseSBzaGFwZWQgb3VyIFxuICAgICAgICAgICAgICAgIHByb2plY3QsIGZyb20gZGVzaWduIHRvIGltcGxlbWVudGF0aW9uLiBPdXIgcGF0aWVudC1jZW50ZXJlZCwgZ2xvYmFsbHkgZm9jdXNlZCBhcHByb2FjaCBub3Qgb25seSBhZGRyZXNzZXMgZGlzcGFyaXRpZXMgaW4gQ0YgdHJlYXRtZW50IGJ1dCBhbHNvIHNldHMgXG4gICAgICAgICAgICAgICAgYSBuZXcgc3RhbmRhcmQgZm9yIGFjY2Vzc2liaWxpdHkgYW5kIGV0aGljYWwgcmVmbGVjdGlvbi4gV2UgZXh0ZW5zaXZlbHkgZG9jdW1lbnRlZCBvdXIgbWV0aG9kb2xvZ2llcywgaW5jbHVkaW5nIENGIGNlbGwgY3VsdHVyZSBwcm90b2NvbHMgYW5kIHN0YWtlaG9sZGVyIFxuICAgICAgICAgICAgICAgIGVuZ2FnZW1lbnQgcHJvY2Vzc2VzLCB0byBlbXBvd2VyIGZ1dHVyZSB0ZWFtcyB0byBidWlsZCB1cG9uIG91ciBzdWNjZXNzLiBPdXIgdGhvdWdodGZ1bCBpbnRlZ3JhdGlvbiBvZiBkaXZlcnNlIHN0YWtlaG9sZGVyIGluc2lnaHRzLCBjb21iaW5lZCB3aXRoIGV4cGVydCBcbiAgICAgICAgICAgICAgICBndWlkYW5jZSBpbiByZWd1bGF0b3J5IGNvbXBsaWFuY2UsIG5hbm9wYXJ0aWNsZSByZXNlYXJjaCwgYW5kIGdlbmUgdGhlcmFweSwgZW5zdXJlcyB0aGF0IG91ciBwcm9qZWN0IGlzIHJlc3BvbnNpYmxlLCBzY2llbnRpZmljYWxseSBzb3VuZCwgYW5kIGdsb2JhbGx5IFxuICAgICAgICAgICAgICAgIGltcGFjdGZ1bC4gPC9wPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgKVxufSIsICIvKiBcbi0gc2VpdHdcdTAwRTRydHMgXG4tIG1pdCBGYXJiZW4gdW5kIFRleHQgYW56ZWlnZW4gd296dSBkaWUgZ2VoXHUwMEY2cmVuIFxuLSBiZWkgc2hvdyBtb3JlIHVudGVuIGRydW50ZXIgVGFicyBcdTAwRjZmZm5lblxuLSB3ZW5uIG1hbiBhdWYgZGllIFBlcnNvbiBrbGlja3Qgc29sbCBlcyBJbmZvcyBcdTAwRkNiZXIgZGllIFBlcnNvbiBhbnplaWdlbiBcbi0ga2FubiBtbiBkaWUgS2FydGVuIG5hY2ggTGlua3MgdW5kIG5hY2ggcmVjaHRzIGF1c3dlaXRlbiB6YiBmXHUwMEZDciBNZWhyIGluZm9zIGZcdTAwRkNyIGRpZSBQZXJzb24/IFxuLSBGaWx0ZXIgbWl0IEhhbGJrcmVpc0RpbmcgYWxzIFRhYnN0ZXVlcnVuZyB8IEVpbnRlaWx1bmcgbmFjaCBCZXJlaWNoIChBY2FkZW1pYSwgSW5zdXN0cnksIC4uLiwgdW5kIGF1Y2ggbmFjaCBEZWxpdmVyeSB1bmQgTWVjaGFuaXNtKSBcbi0gRE5BIFN0cmFuZyBhbHMgVGltZWxpbmU/IFxuKi9cblxuXG4vKiAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgPGgzPk5hbWU8L2gzPlxuICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIFRhZ1wiPlxuICAgICAgICAgICAgICAgIEJlcnVmXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5PcmlnaW5hbCBsYW5ndWFnZTogR2VybWFuPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJRdW90ZVwiIGNpdGU9XCIuXCI+PC9CbG9ja1F1b3RlQj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIm1pZGRsZSBzZWNocHJvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGxhY2Vob2xkZXJzL3BsYWNlaGlsZGVycGVyc29uLmpwZWdcIi8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aDQ+QWltIG9mIGNvbnRhY3Q8L2g0PlxuICAgICAgICAgICAgPHA+PC9wPlxuICAgICAgICAgICAgPGg0Pkluc2lnaHRzPC9oND5cbiAgICAgICAgICAgIDxwPjwvcD5cbiAgICAgICAgICAgIDxoND5DbGFyaWZpY2F0aW9uPC9oND5cbiAgICAgICAgICAgIDxwPjwvcD5cbiAgICAgICAgICAgIDxoND5JbXBsZW1lbnRhdGlvbjwvaDQ+XG4gICAgICAgICAgICA8cD48L3A+ICovXG5cblxuLypcbiAgPGg0PkFpbSBvZiBjb250YWN0PC9oND5cbiAgPHA+PC9wPlxuICA8aDQ+SW5zaWdodHM8L2g0PlxuICA8cD48L3A+XG4gIDxoND5DbGFyaWZpY2F0aW9uPC9oND5cbiAgPHA+PC9wPlxuICA8aDQ+SW1wbGVtZW50YXRpb248L2g0PlxuICA8cD48L3A+IFxuICAgICAgICAgICAgKi9cbmltcG9ydCB7IG9wZW5FbGVtZW50IH0gZnJvbSBcIi4uLy4uL3V0aWxzL29wZW5FbGVtZW50XCI7XG5pbXBvcnQgeyBIUE92ZXJ2aWV3IH0gZnJvbSBcIi4vT3ZlcndpZXZcIjtcbmltcG9ydCB7IEhQSW50cm9kdWN0aW9uIH0gZnJvbSBcIi4vSW50cm9kdWN0aW9uXCI7XG5pbXBvcnQgeyBIUEludGVncmF0ZWQgfSBmcm9tIFwiLi9JSFBcIjtcbmltcG9ydCB7IEhQRnVydGhlckVuZ2FnZW1lbnQgfSBmcm9tIFwiLi9GdXJ0aGVyIEVuZ2FnZW1lbnQvRnVydGhlckVuZ2FnZW1lbnRcIjtcbmltcG9ydCB7IEhQU3VwcGxlbWVudCB9IGZyb20gXCIuL0Z1cnRoZXIgRW5nYWdlbWVudC9TdXBNYXRlcmlhbFwiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyBIUEFic3RyYWN0IH0gZnJvbSBcIi4vSFAtYWJzdHJhY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIEh1bWFuUHJhY3RpY2VzKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIFxuICBcbiAgb3BlbkVsZW1lbnQoe2J1dHRvbkNsYXNzOiBcInRhYmJ1dHRvblwiLCBlbGVtZW50VG9PcGVuOiBcIkFsbFwiLCBjbGFzc1RvSGlkZTogXCJ0aW1lbGluZWNhcmR0YWJzXCIsIH0pOyBcblxuICByZXR1cm4gKCAgXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgIDxIUEFic3RyYWN0Lz5cbiAgICAgIDxIUE92ZXJ2aWV3Lz5cbiAgICAgIDxIUEludHJvZHVjdGlvbi8+XG4gICAgICA8SFBJbnRlZ3JhdGVkLz5cbiAgICAgIDxIUEZ1cnRoZXJFbmdhZ2VtZW50Lz5cbiAgICAgIDxIUFN1cHBsZW1lbnQvPlxuICAgIDwvZGl2PlxuICAgIFxuICBcbiAgKTsgIFxufVxuXG5cbiIsICJpbXBvcnQgeyBjcmVhdGVTaWRlYmFyIH0gZnJvbSBcIi4uL3V0aWxzL2NyZWF0ZVNpZGViYXJcIjtcblxuXG5cbmV4cG9ydCBmdW5jdGlvbiBIcFNpZGViYXIoKXtcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICB7c2lkZWJhcn1cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufVxuXG5jb25zdCB0YWJzID0gW1xuICAgIHt0YWI6IFwiQWJzdHJhY3RcIn0sIFxuICAgIHsgdGFiOiBcIk92ZXJ2aWV3XCIgfSxcbiAgICB7dGFiOiBcIkludHJvZHVjdGlvblwifSxcbiAgICB7dGFiOiBcIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzXCIsIHN1YnRhYnM6IFtcIkZyYW1ld29ya1wiLCBcIlRpbWVsaW5lXCIsIFwiRmVlZGJhY2sgJiBJbXBsZW1lbnRhdGlvblwiLCBcIkNvbmNsdXNpb25cIl19LFxuICAgIHt0YWI6IFwiRnVydGhlciBFbmdhZ2VtZW50XCIsIHN1YnRhYnM6IFsgXCJFZHVjYXRpb25cIiwgXCJQdWJsaWMgRW5nYWdlbWVudFwiLCBcIkVudHJlcHJlbmV1cnNoaXBcIiwgXCJDb2xsYWJvcmF0aW9uc1wiLCBcIlBhcnRuZXJzaGlwc1wiXX0sXG4gICAge3RhYjogXCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCJ9LFxuICAgIC8vIHt0YWI6IFwiXCJ9LFxuICBdOyIsICJcbmltcG9ydCB7IEgyIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xuXG5leHBvcnQgZnVuY3Rpb24gSW1wcmVzc3VtKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxIMiBpZD1cImltcHJlc3N1bVwiIHRleHQ9XCJJbXByZXNzdW1cIi8+XG4gICAgICAgICAgPGhyIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxwPlxuICAgICAgICAgICAgPGgzPjxiPmlHRU0gVGVhbSBCaWVsZWZlbGQgQ2VCaVRlYyAyMDI0PC9iPjwvaDM+XG4gICAgICAgICAgICA8Yj5SZXNwb25zaWJsZSBmb3IgdGhlIGNvbnRlbnQgYWNjb3JkaW5nIHRvIFx1MDBBNyA1IFRNRyBhbmQgYWNjb3JkaW5nIHRvIFx1MDBBNyA1NSBBYnMuIDIgUlN0ViBHZXJtYW55OjwvYj48YnIgLz5cbiAgICAgICAgICAgIEpcdTAwRjZybiBLYWxpbm93c2tpPGJyIC8+XG4gICAgICAgICAgICBVbml2ZXJzaXRcdTAwRTR0c3N0cmFcdTAwREZlIDI1PGJyIC8+XG4gICAgICAgICAgICAzMzYxNSBCaWVsZWZlbGQ8YnIgLz5cbiAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgPGI+Q29udGFjdDwvYj48YnIgLz5cbiAgICAgICAgICAgIEUtbWFpbDogdGVhbTIwMjRAaWdlbS1iaWVsZWZlbGQuZGU8YnIgLz5cbiAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgPGI+U3VwZXJ2aXNvcnkgQXV0aG9yaXR5PC9iPjxiciAvPlxuICAgICAgICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHkgLSBDZW50ZXIgZm9yIEJpb3RlY2hub2xvZ3kgKENlQmlUZWMpXG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj4gIFxuICAgICAgPC9kaXY+XG4gICAgPC8+XG4gICk7XG59XG4gICIsICJpbXBvcnQgeyBCYWNrVXAgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XG5pbXBvcnQgSDEsIHsgSDIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFBhcnRuZXJzKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICA8ZGl2IGlkPVwic2lkZWJhcmJveFwiIGNsYXNzTmFtZT1cImNvbC0xICBkLWxnLWJsb2NrXCI+IDwvZGl2PlxuICAgICAgICA8YnIvPiBcbiAgICAgICAgPEgxICB0ZXh0PVwiQSBiaWcgdGhhbmsgeW91IHRvIGFsbCBvdXIgc3BvbnNvcnMgYW5kIHBhcnRuZXJzIVwiPjwvSDE+XG4gICAgICAgIDxici8+XG4gICAgICAgIDxici8+XG5cbiAgICAgICAgPGJyLz4gXG4gICAgICAgIHsvKiBHT0xEICovfVxuICAgICAgICA8SDIgaWQ9XCJnb2xkXCIgdGV4dD1cIlNwb25zb3IgY2F0ZWdvcnkgR29sZFwiLz5cbiAgICAgICAgPGJyLz4gXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lciBzcC1hXCIgaHJlZj1cImh0dHBzOi8vd3d3LnVuaS1iaWVsZWZlbGQuZGUvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLWFcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sb2dvcy10ZWFtL3VuaS1iaWVsZWZlbGQtZHVua2VsLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXIgc3AtYVwiIGhyZWY9XCJodHRwczovL3d3dy5jZWJpdGVjLnVuaS1iaWVsZWZlbGQuZGUvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLWFcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9jZWJpdGVjLWZhcmJlLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxici8+IFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnIvPiBcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCI+XG4gICAgICAgICAgICA8YSBocmVmPVwiaHR0cDovL3d3dy56ZWlzcy5kZS9uYXR1cndpc3NlbnNjaGFmdGVuXCI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiemVpc3MtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGltZyBpZD1cInplaXNzLXBvcnRyYWl0LWxvZ29cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy96ZWlzcy5wbmdcIj48L2ltZz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJ6ZWlzcy10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgPGg0PlpFSVNTIGlzdCBUZWNobm9sb2dpZS4gWkVJU1MgaXN0IE9wdGlrIHVuZCBJbm5vdmF0aW9uLjwvaDQ+XG4gICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgPHA+V2UgZGV2ZWxvcCwgbWFudWZhY3R1cmUgYW5kIHNlbGwgaGlnaGx5IGlubm92YXRpdmUgcHJvZHVjdHMgYW5kIHNvbHV0aW9ucyBmb3Igb3VyIGN1c3RvbWVycyBpbiBhIHdpZGUgcmFuZ2Ugb2YgYnVzaW5lc3MgYXJlYXMgLSBhbmQgaW4gZG9pbmcgc28sIHdlIHB1c2ggdGhlIGJvdW5kYXJpZXMgb2Ygd2hhdCBpcyBwb3NzaWJsZS4gQXMgYSBsZWFkaW5nIGdsb2JhbCB0ZWNobm9sb2d5IGNvbXBhbnkgd2l0aCBhIHN0cm9uZyBicmFuZCBhbmQgYSBwb3J0Zm9saW8gdGhhdCBpcyBnZWFyZWQgdG93YXJkcyBmdXR1cmUgZ3Jvd3RoIGFyZWFzIHN1Y2ggYXMgZGlnaXRhbGl6YXRpb24sIGhlYWx0aGNhcmUgYW5kIEluZHVzdHJ5IDQuMCwgd2UgYXJlIHNoYXBpbmcgdGhlIGZ1dHVyZSBmYXIgYmV5b25kIHRoZSBvcHRpY2FsIGFuZCBvcHRvZWxlY3Ryb25pYyBzZWN0b3IuIFpFSVNTJyBzdWNjZXNzIGFuZCB0aGUgY29udGludWVkIGV4cGFuc2lvbiBvZiBpdHMgdGVjaG5vbG9neSBhbmQgbWFya2V0IGxlYWRlcnNoaXAgYXJlIGJhc2VkIG9uIGl0cyBzdXN0YWluZWQgaGlnaCBsZXZlbCBvZiBpbnZlc3RtZW50IGluIHJlc2VhcmNoIGFuZCBkZXZlbG9wbWVudC4gRm91bmRlZCBpbiBKZW5hIGluIDE4NDYsIHRoZSBjb21wYW55IGlzIGhlYWRxdWFydGVyZWQgaW4gT2JlcmtvY2hlbiwgR2VybWFueS4gVGhlIHNvbGUgb3duZXIgb2YgdGhlIHBhcmVudCBjb21wYW55LCBDYXJsIFplaXNzIEFHLCBpcyB0aGUgQ2FybCBaZWlzcyBGb3VuZGF0aW9uLCBvbmUgb2YgdGhlIGxhcmdlc3QgR2VybWFuIGZvdW5kYXRpb25zIGZvciB0aGUgcHJvbW90aW9uIG9mIHNjaWVuY2UuPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgXG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnIvPiA8YnIvPiBcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBpZD1cImlkdC10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1sZWZ0XCI+XG4gICAgICAgICAgICAgIDxoND5BY2NlbGVyYXRlIHRoZSBwYWNlIG9mIGdlbm9taWNzLiBXZSdsbCBoZWxwLjwvaDQ+XG4gICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgIDxwPiBGb3IgbW9yZSB0aGFuIDM1IHllYXJzLCBJbnRlZ3JhdGVkIEROQSBUZWNobm9sb2dpZXMgKElEVCkgIGhhcyBlbXBvd2VyZWQgZ2Vub21pY3MgbGFib3JhdG9yaWVzIHdpdGggYW4gb2xpZ29udWNsZW90aWRlIG1hbnVmYWN0dXJpbmcgcHJvY2VzcyB1bmxpa2UgYW55b25lIGVsc2UgaW4gdGhlIGluZHVzdHJ5LCBmZWF0dXJpbmcgdGhlIG1vc3QgYWR2YW5jZWQgc3ludGhlc2lzLCBtb2RpZmljYXRpb24sIHB1cmlmaWNhdGlvbiwgYW5kIHF1YWxpdHkgY29udHJvbCBjYXBhYmlsaXRpZXMgYXZhaWxhYmxlLiBJRFQgaGFzIHN1cHBvcnRlZCBpR0VNIHRlYW0gZm9yIG92ZXIgYSBkZWNhZGUgd2l0aCAyMGtiIG9mIGZyZWUgRE5BIHRvIGhlbHAgYWNjZWxlcmF0ZSB0aGVpciBpbnNwaXJpbmcgcHJvamVjdHMgZm9yIHRoZSBHcmFuZCBKYW1ib3JlZS4gU2luY2UgaXRzIGZvdW5kaW5nIGluIDE5ODcsIElEVCBoYXMgcHJvZ3Jlc3NlZCBmcm9tIGEgbGVhZGluZyBvbGlnbyBtYW51ZmFjdHVyZXIgdG8gYSBnZW5vbWljcyBzb2x1dGlvbnMgcHJvdmlkZXIgc3VwcG9ydGluZyBrZXkgYXBwbGljYXRpb24gYXJlYXMgc3VjaCBhcyBuZXh0IGdlbmVyYXRpb24gc2VxdWVuY2luZywgQ1JJU1BSIGdlbm9tZSBlZGl0aW5nLCBzeW50aGV0aWMgYmlvbG9neSwgZGlnaXRhbCBQQ1IsIGFuZCBSTkEgaW50ZXJmZXJlbmNlLiBJRFQgbWFudWZhY3R1cmVzIHByb2R1Y3RzIHVzZWQgYnkgc2NpZW50aXN0cyByZXNlYXJjaGluZyB0aGUgdG91Z2hlc3QgY2hhbGxlbmdlcyBmYWNpbmcgb3VyIHBsYW5ldCB0b2RheSBhcyB3ZWxsIGFzIG1hbnkgZm9ybXMgb2YgY2FuY2VyIGFuZCBtb3N0IGluaGVyaXRlZCBhbmQgaW5mZWN0aW91cyBkaXNlYXNlcy4gPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5pZHRkbmEuY29tL1wiIGlkPVwiaWR0LXBvcnRyYWl0XCIgY2xhc3NOYW1lPVwiY29sLTUgc3BvbnNvci1wb3J0cmFpdFwiPlxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxici8+IDxici8+IFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICA8ZGl2IGlkPVwiaW50ZWdyYS1wb3J0cmFpdFwiIGNsYXNzTmFtZT1cImNvbC01IHNwb25zb3ItcG9ydHJhaXRcIj5cbiAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuaW50ZWdyYS1iaW9zY2llbmNlcy5jb21cIj5cbiAgICAgICAgICAgIDxpbWcgaWQ9XCJpbnRlZ3JhLXBvcnRyYWl0LWxvZ29cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9pbnRlZ3JhLWhpbnRlcmxlZ3QuanBlZ1wiPjwvaW1nPlxuICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGlkPVwiaW50ZWdyYS10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgPGg0PiBZb3VyIFJlbGlhYmxlIFBhcnRuZXIgRm9yIFByb2R1Y3RpdmUgUGlwZXR0ZXMgPC9oND5cbiAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICA8cD5cbiAgICAgICAgICAgIElOVEVHUkEgQmlvc2NpZW5jZXMgaXMgYVxuICAgICAgICAgICAgbGVhZGluZyBwcm92aWRlciBvZiBoaWdoLXF1YWxpdHkgbGFib3JhdG9yeSB0b29scyBhbmQgY29uc3VtYWJsZXMgZm9yXG4gICAgICAgICAgICBsaXF1aWQgaGFuZGxpbmcuIFRoZSBjb21wYW55IGlzIGNvbW1pdHRlZCB0byBjcmVhdGluZyBpbm5vdmF0aXZlXG4gICAgICAgICAgICBzb2x1dGlvbnMgd2hpY2ggZnVsZmlsIHRoZSBuZWVkcyBvZiBpdHMgY3VzdG9tZXJzIGluIHJlc2VhcmNoLCBkaWFnbm9zdGljc1xuICAgICAgICAgICAgYW5kIHF1YWxpdHkgY29udHJvbCB3aXRoaW4gdGhlIGxpZmUgc2NpZW5jZXMgbWFya2V0cyBhbmQgbWVkaWNhbCBzZWN0b3IuXG4gICAgICAgICAgICBJTlRFR1JBXHUyMDE5cyBlbmdpbmVlcmluZyBhbmQgcHJvZHVjdGlvbiB0ZWFtcyBpbiBaaXplcnMsIFN3aXR6ZXJsYW5kIGFuZFxuICAgICAgICAgICAgSHVkc29uLCBOSCwgVVNBLCBzdHJpdmUgdG8gZGV2ZWxvcCBhbmQgbWFudWZhY3R1cmUgaW5zdHJ1bWVudHMgYW5kXG4gICAgICAgICAgICBjb25zdW1hYmxlcyBvZiBvdXRzdGFuZGluZyBxdWFsaXR5LiBUb2RheSwgSU5URUdSQVx1MjAxOXMgaW5ub3ZhdGl2ZVxuICAgICAgICAgICAgbGFib3JhdG9yeSBwcm9kdWN0cyBhcmUgd2lkZWx5IHVzZWQgYWxsIGFyb3VuZCB0aGUgd29ybGQgd2hlcmUgdGhleSBoZWxwXG4gICAgICAgICAgICBzY2llbnRpc3RzIGFjY2VsZXJhdGUgc2NpZW50aWZpYyBkaXNjb3ZlcnkuIE91ciByZXZvbHV0aW9uYXJ5IGNvbmNlcHRcbiAgICAgICAgICAgIGNvbWJpbmVzIGlubm92YXRpdmUgcGlwZXR0aW5nIHdpdGggdGhlIG1vc3QgbW9kZXJuIHJvYm90aWNzLlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyLz4gPGJyLz4gXG4gICAgICAgIHsvKiBTSUxWRVIgKi99XG4gICAgICAgIDxIMiB0ZXh0PVwiU3BvbnNvciBjYXRlZ29yeSBzaWx2ZXJcIiBpZD1cInNpbHZlclwiLz5cbiAgICAgICAgPGJyLz4gPGJyLz5cbiAgICAgICAgPGRpdiBpZD1cInByb2plY3QtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuenltb3Jlc2VhcmNoLmNvbS9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvenltby5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuc3RlbWNlbGwuY29tL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9zdGVtY2VsbC1sb2dvLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cucGxhc21pZGZhY3RvcnkuY29tL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9wbGFzbWlkZmFjdG9yeS5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IFxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5kcndvbGZmZ3JvdXAuY29tL2VuL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9sb2dvLXdvbGZmLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly9zbmFwZ2VuZS5jb21cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvc25hcGdlbmUucG5nXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2Jpby5ucncuZGUvXCI+XG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9iaW9ucnctbG9nby5wbmdcIi8+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyLz4gPGJyLz4gXG4gICAgICAgIHsvKiBCUk9OWkUgKi99XG4gICAgICAgIDxIMiB0ZXh0PVwiU3BvbnNvciBjYXRlZ29yeSBicm9uemVcIiBpZD1cImJyb256ZVwiPjwvSDI+XG4gICAgICAgIDxici8+IDxici8+XG4gICAgICAgIDxkaXYgaWQ9XCJwcm9qZWN0LXBvcnRyYWl0XCIgY2xhc3NOYW1lPVwic3BvbnNvci1wb3J0cmFpdFwiIHN0eWxlPXt7cGFkZGluZzogXCIyMHB4XCJ9fT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LnByb21lZ2EuY29tXCI+XG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9wcm9tZWdhLWdlbGIucG5nXCIvPlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj4gIFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cubWljcm9zeW50aC5jb21cIj5cbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL21pY3Jvc3ludGgtbG9nby5wbmdcIi8+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cubmViLmNvbS9lbi9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvbmViLWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxici8+IDxici8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXYgaWQ9XCJwcm9qZWN0LXRleHRcIiBjbGFzc05hbWU9XCJjb2wgc3BvbnNvci10ZXh0LWxlZnRcIj5cbiAgICAgICAgICAgICAgPEgyIHRleHQ9XCJCRkggTWVldFVwIHNwb25zb3JzXCIgaWQ9XCJiZmgtc3BvbnNvcnNcIi8+XG4gICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgIDxwPjwvcD4gXG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBpZD1cInByb2plY3QtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5naXAuY29tL2hvbWUvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2dpcC5wbmdcIiAvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuamVuYWJpb3NjaWVuY2UuY29tL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9qYnMtZHVua2VsZ3J1ZW4tdGV4dC5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vdi1iaW8udmVudHVyZXMvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3ZiaW8tbG9nby5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3Lm1uLW5ldC5jb20vXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL21uLWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5maXotYmlvdGVjaC5kZS9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvZml6LWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IFxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5jZWxsc2lnbmFsLmNvbS9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2VsbC1zaWduYWxpbmctdGVjaG5vbG9neS1sb2dvLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly9nYXNiLmRlL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9nYXNiLWxvZ28uanBnXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyLz4gPGJyLz4gXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXYgaWQ9XCJtZWV0dXAtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LmFzaW1vdi5jb20vXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2FzaW1vdi1jb2xvcmZ1bC5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cudW5pLWJpZWxlZmVsZC5kZS9mYWt1bHRhZXRlbi90ZWNobmlzY2hlLWZha3VsdGFldC9hcmJlaXRzZ3J1cHBlbi9tdWx0aXNjYWxlLWJpb2VuZ2luZWVyaW5nL2NhbXB1c2JyYXVlcmVpL1wiPlxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2FtcHVzLWJyYXVlcmVpLnBuZ1wiLz5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2FsZ2VuaXVtLmRlL2FsZ2VuaXVtL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9hbGdlbml1bS5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9ndS1mcmFua2Z1cnQvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xvZ29zLXRlYW0vb3RoZXItdGVhbXMvZ3UtZnJhbmtmdXJ0LWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly9idHMtZXYuZGUvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvYnRzLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+IFxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL2hhbWJ1cmcvXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xvZ29zLXRlYW0vb3RoZXItdGVhbXMvaWdlbS1oYW1idXJnLWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5zdHVkLXNjaWNvbS5kZS9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvc3R1ZHNjaWNvbS1sb2dvLnBuZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgXG4gICAgICAgICAgPGRpdiBpZD1cIm1lZXR1cC10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1yaWdodFwiIHN0eWxlPXt7dGV4dEFsaWduOiBcInJpZ2h0XCJ9fT5cbiAgICAgICAgICAgIDxIMiB0ZXh0PVwiYW5kIGNvbGxhYm9yYXRvcnMgXCIgaWQ9XCJiZmgtY29sbGFic1wiLz5cbiAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnIvPiA8YnIvPlxuICAgICAgICA8SDIgdGV4dD1cIk90aGVyIGNvbGxhYm9yYXRvcnNcIiBpZD1cIm90ZWhyc1wiLz5cbiAgICAgICAgPGJyLz4gPGJyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGRpdiBpZD1cImlkdC10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1sZWZ0XCI+XG4gICAgICAgICAgICAgIDxoND5DaGFuZ2luZyBDRiBsaXZlcyBhcm91bmQgdGhlIHdvcmxkLCBvbmUgdmVzdCBhdCBhIHRpbWUuPC9oND5cbiAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgPHA+QWZ0ZXIgYmVpbmcgY29udGFjdGVkIHVuZXhwZWN0ZWRseSBieSB0d28gcHJldmlvdXNseSB1bmtub3duIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cyBpbiBDaGlsZSBhbmQgTGViYW5vbiBtb250aHMgYXBhcnQgaW4gZWFybHkgMjAyMCB0byByZXF1ZXN0IHRoZXJhcHkgdmVzdHMsIHRoZSBncmVhdCBuZWVkIGZvciB0aGlzIGVxdWlwbWVudCB0byBDRiBwYXRpZW50cyBhcm91bmQgdGhlIHdvcmxkIGJlY2FtZSBxdWlja2x5IGV2aWRlbnQuICBDRiBWZXN0cyBXb3JsZHdpZGUgd2FzIGVzdGFibGlzaGVkIGluIEp1bmUgMjAyMCB0byBtZWV0IHRoaXMgbmVlZC4gIFRoZSBtaXNzaW9uIG9mIENGIFZlc3RzIFdvcmxkd2lkZSBpcyB0byBkb25hdGUgbGlmZXNhdmluZyB0aGVyYXB5IHZlc3RzLCB3aXRoIGEgY29zdCBvZiBuZWFybHkgJDIwLDAwMCwgZm9yIHRob3NlIHdpdGggQ3lzdGljIEZpYnJvc2lzIG91dHNpZGUgb2YgdGhlIFVuaXRlZCBTdGF0ZXMuICBUaGUgbGlmZSBleHBlY3RhbmN5IG9mIENGIHBhdGllbnRzIG91dHNpZGUgdGhlIFUuUy4gY2FuIGJlIGFzIGxpbWl0ZWQgYXMgYXBwcm94aW1hdGVseSAyNCB5ZWFycyBvZiBhZ2UuICBUaGVzZSB0aGVyYXB5IHZlc3RzIG1lYW4gZXZlcnl0aGluZyB0byB0aGUgQ0YgcGF0aWVudCBhbmQgdGhlaXIgZmFtaWx5LiAgRnVydGhlciwgaW4gbW9zdCBDRiBjb21tdW5pdGllcyBpbiB0aGUgNTkgY291bnRyaWVzIHdoZXJlIENGIFZlc3RzIFdvcmxkd2lkZSBoYXMgZG9uYXRlZCBvdmVyIDMzMCB0aGVyYXB5IHZlc3RzLCBhY2Nlc3MgdG8gdGhlIG1vc3QgYmFzaWMgQ3lzdGljIEZpYnJvc2lzIG1lZGljYXRpb24gaXMgZWl0aGVyIGxpbWl0ZWQgb3Igbm9uLWV4aXN0ZW50LiAgSW4gdGhlc2UgY2FzZXMsIGEgdGhlcmFweSB2ZXN0IGRvbmF0ZWQgYnkgQ0YgVmVzdHMgV29ybGR3aWRlIGlzIHRoZSBvbmx5IGhvcGUgZm9yIGNvbWZvcnQgYW5kIGFuIGV4dGVuZGVkIGxpZmUuPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgaWQ9XCJcIiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCI+XG4gICAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuY2Z2d3cub3JnL1wiPlxuICAgICAgICAgICAgICA8aW1nIGlkPVwidmVzdHMtcG9ydHJhaXQtbG9nb1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NmdmVzdHNsb2dvLnBuZ1wiPjwvaW1nPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyLz4gPGJyLz5cbiAgICAgICAgPGRpdiBpZD1cIm1lZXR1cC1wb3J0cmFpdFwiIGNsYXNzTmFtZT1cInNwb25zb3ItcG9ydHJhaXRcIiBzdHlsZT17e3BhZGRpbmc6IFwiMjBweFwifX0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LmNhcmxyb3RoLmRlL1wiPlxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2VcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9yb3RoLmpwZ1wiLz5cbiAgICAgICAgICAgICAgPC9hPiBcbiAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cudW5pLWJpZWxlZmVsZC5kZS9mYWt1bHRhZXRlbi90ZWNobmlzY2hlLWZha3VsdGFldC9cIj5cbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3RlY2hmYWsuanBnXCIvPlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+ICBcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LnNhcnN0ZWR0LmNvbS9lbi9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvc2Fyc3RlZHQtbG9nby5wbmdcIi8+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2NvcmRlbnBoYXJtYS5jb20vXCI+XG4gICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY29yZGVuLXBoYXJtYS1sb2dvLnBuZ1wiLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICB7LyogbGVlciAqL31cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuY2Fwcmljb3JuLXNjaWVudGlmaWMuY29tL2VuXCI+XG4gICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2Fwcmljb3JuLWxvZ28ucG5nXCIvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy50d2lzdGJpb3NjaWVuY2UuY29tL1wiPlxuICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3R3aXN0LWJpb3NjaWVuY2UtbG9nby5wbmdcIi8+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIHsvKiBsZWVyICovfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxCYWNrVXAvPiBcbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgICBcbiAgICAgIDwvPlxuICAgICk7XG4gIH1cbiAgIiwgImltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xuXG5leHBvcnQgZnVuY3Rpb24gU3VwcGxlbWVudGFyeSgpIHtcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgIFxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgIFxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cbiAgIiwgImltcG9ydCB7IEJ1dHRvbk9uZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IFFhQm94LCBTcGVjaWFsUWFCb3ggfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Cb3hlc1wiO1xuaW1wb3J0IHsgdXNlRWZmZWN0IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyB1c2VMb2NhdGlvbiB9IGZyb20gXCJyZWFjdC1yb3V0ZXItZG9tXCI7XG5pbXBvcnQgeyAgSDMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xuaW1wb3J0IHsgb3BlbkZyb21PdGhlclBhZ2UgfSBmcm9tIFwiLi4vdXRpbHMvb3BlbkZyb21PdGhlcnBBZ2VcIjtcbmV4cG9ydCBmdW5jdGlvbiBJbnRzKCkge1xuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpO1xuICAgICAgICBjb25zdCBjb2xsYXBzZUlkID0gcGFyYW1zLmdldCgnY29sbGFwc2VJZCcpO1xuICAgICAgICBjb25zdCB0YWJJZCA9IHBhcmFtcy5nZXQoJ3RhYicpO1xuXG4gICAgICAgIC8vIFNjcm9sbCB0byB0aGUgc2VjdGlvbiBzcGVjaWZpZWQgYnkgY29sbGFwc2VJZFxuICAgICAgICBpZiAoY29sbGFwc2VJZCkge1xuICAgICAgICAgICAgY29uc3QgY29sbGFwc2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY29sbGFwc2VJZCk7XG4gICAgICAgICAgICBpZiAoY29sbGFwc2VFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudFRvcCA9IGNvbGxhcHNlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgKyB3aW5kb3cucGFnZVlPZmZzZXQ7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gd2luZG93LmlubmVySGVpZ2h0IC8gMiAtIGNvbGxhcHNlRWxlbWVudC5vZmZzZXRIZWlnaHQgLyAyO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFBvc2l0aW9uID0gZWxlbWVudFRvcCAtIG9mZnNldDtcblxuICAgICAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogc2Nyb2xsUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9wZW4gdGhlIHRhYiBzcGVjaWZpZWQgYnkgdGFiSWRcbiAgICAgICAgaWYgKHRhYklkKSB7XG4gICAgICAgICAgICBvcGVuRnJvbU90aGVyUGFnZSh0YWJJZCkoeyBjdXJyZW50VGFyZ2V0OiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWJJZCkhIH0pO1xuICAgICAgICB9XG4gICAgfSwgW2xvY2F0aW9uLnNlYXJjaF0pO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG5cblxuICAgICAgICA8YnIvPlxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cImp1bGlhSFwiPlxuICAgICAgICAgIDxoMyBpZD1cImp1bGlhXCI+SnVsaWE8L2gzPlxuICAgICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidC10YWcgUGF0aWVudFwiPlxuICAgICAgICAgICAgICAgIFBhcmVudFxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+T3JpZ2luYWwgbGFuZ3VhZ2U6IEdlcm1hbjwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbnRlcnZpZXctaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2p1bGlhLmpwZ1wiLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPEgzIGlkPVwianVsaWFub3Rlc1wiIHRleHQ9XCJOb3RlcyBmcm9tIHRoZSBpbnRlcnZpZXdcIi8+XG4gICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJRdWVzdGlvblwiXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDxici8+XG4gICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cImNvbFwiIGlkPVwibmljb2xlSFwiPlxuICAgICAgICA8aDMgaWQ9XCJuaWNvbGVcIj5OaWNvbGUgRnJpZWRsZWluPC9oMz5cbiAgICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIEFjYWRlbWlhXCI+XG4gICAgICAgICAgICAgICAgQWNhZGVtaWFcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wbGFjZWhvbGRlcnMvcGxhY2VoaWxkZXJwZXJzb24uanBlZ1wiLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPEgzIGlkPVwibmljb2xlbm90ZXNcIiB0ZXh0PVwiTm90ZXMgZnJvbSB0aGUgaW50ZXJ2aWV3XCIvPlxuICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxuICAgICAgICAgICAgICAgICAgYT1cIkFuc3dlclwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICA8YnIvPlxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cIm1hdHRpanNIXCI+XG4gICAgICAgICAgPGgzIGlkPVwibWF0dGlqc1wiPk1hdHRpanMgQnVsY2VhbjwvaDM+XG4gICAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXRhZyBBY2FkZW1pYVwiPlxuICAgICAgICAgICAgICAgICAgQWNhZGVtaWFcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBFbmdsaXNoPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbWF0dGlqcy5qcGdcIi8+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIkVyc3RlcyBJbnRlcnZpZXdcIiBvcGVuPVwibWF0dGlqc2ludjFcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiWndlaXRlcyBJbnRlcnZpZXdcIiBvcGVuPVwibWF0dGlqc2ludjJcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGN5Y2xldGFiXCIgaWQ9XCJtYXR0aWpzaW52MVwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XG4gICAgICAgICAgICAgIDxIMyBpZD1cIm1hdHRpanNub3RlczFcIiB0ZXh0PVwiTm90ZXMgZnJvbSB0aGUgZmlyc3QgaW50ZXJ2aWV3XCIvPlxuICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxuICAgICAgICAgICAgICAgICAgYT1cIkFuc3dlclwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgY3ljbGV0YWJcIiBpZD1cIm1hdHRpanNpbnYyXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICA8SDMgaWQ9XCJtYXR0aWpzbm90ZXMyXCIgIHRleHQ9XCJOb3RlcyBmcm9tIHRoZSBzZWNvbmQgaW50ZXJ2aWV3XCIvPlxuICAgICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxuICAgICAgICAgICAgICAgICAgYT1cIkFuc3dlclwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICA8YnIvPlxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cIndlc3Rob2ZmSFwiPlxuICAgICAgICAgIDxoMyBpZD1cIndlc3Rob2ZmXCI+S2F0cmluIFdlc3Rob2ZmPC9oMz5cbiAgICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIE1lZGljYWxcIj5cbiAgICAgICAgICAgICAgICBQaHlzaW90aGVyYXBpc3RcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAta2F0cmluLXBvcnRyYWl0LmpwZ1wiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGgzPk5vdGVzIGZyb20gdGhlIGludGVydmlldzwvaDM+XG4gICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgIHsvKiA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJRdWVzdGlvblwiXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcbiAgICAgICAgICAgICAgICAgIC8+ICovfVxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiRnJvbSB3aGF0IGFnZSBkbyB0aGUgcGF0aWVudHMgY29tZSB0byB5b3U/XCJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgcGF0aWVudHMgY29tZSB0byB1cyBhdCBhIHZlcnkgZWFybHkgYWdlLiBJdCBpcyBhbHdheXMgdmVyeSBkaWZmaWN1bHQsIGZvciB0aGUgcGFyZW50cyBpbiBwYXJ0aWN1bGFyLCB0byBkZWFsIHdpdGggdGhlIG5ldyBzaXR1YXRpb24uIEEgZGVmaW5pdGUgZGlhZ25vc2lzIGlzIG1hZGUgYWZ0ZXIgNiB3ZWVrcyBhdCB0aGUgbGF0ZXN0LiBPbmNlIHRoZSBkaWFnbm9zaXMgaGFzIGJlZW4gbWFkZSwgdGhlIHdob2xlIGZhbWlseSBpcyBnZW5ldGljYWxseSB0ZXN0ZWQsIGkuZS4gdGhlIHBhcmVudHMgYW5kIHNpYmxpbmdzLlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiSG93IGxvbmcgZG8gdGhleSBzdGF5P1wiXG4gICAgICAgICAgICAgICAgICBhPVwiV2hlbiB0aGUgY2hpbGRyZW4gYXJlIGRpc2NoYXJnZWQgZnJvbSBob3NwaXRhbCwgdGhleSBhcmUgaW1tZWRpYXRlbHkgc2VudCBmb3IgcGh5c2lvdGhlcmFweS4gSG93ZXZlciwgdGhlcmFweSBvZnRlbiBzdGFydHMgaW4gaG9zcGl0YWwuIFRoZXNlIG9mdGVuIGFsc28gaGF2ZSBDRiBvdXRwYXRpZW50IGNsaW5pY3MsIHN1Y2ggYXMgdGhlIEJldGhlbCBDbGluaWMgaW4gQmllbGVmZWxkLlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiSG93IG1hbnkgcGF0aWVudHMgZG8geW91IHRyZWF0P1wiXG4gICAgICAgICAgICAgICAgICBhPVwiV2UgY3VycmVudGx5IGhhdmUgOCBjaGlsZHJlbiB3aXRoIGN5c3RpYyBmaWJyb3NpcyBpbiBvdXIgbWVkaWNhbCBwcmFjdGljZSwgd2hpY2ggaXMgcXVpdGUgYSBsb3QuIEhvd2V2ZXIsIGlmIHlvdSBjb21wYXJlIHRoaXMgbnVtYmVyIHdpdGggb3RoZXIgZGlzZWFzZXMsIGl0IGlzIHJhdGhlciBhIHNtYWxsIG51bWJlci4gV2UgaGF2ZSBzbGlnaHRseSBtb3JlIGNoaWxkcmVuIHdpdGggY3lzdGljIGZpYnJvc2lzIGluIG91ciBwcmFjdGljZSBiZWNhdXNlIHdlIHNwZWNpYWxpemUgaW4gaXQsIGFtb25nIG90aGVyIGRpc2Vhc2VzLlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFNwZWNpYWxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQga2luZCBvZiBleGVyY2lzZXMgZG8geW91IGRvP1wiPlxuICAgICAgICAgICAgICAgICAgICA8cD5XZSBkbyBhIGxvdCBvZiBicmVhdGhpbmcgdGhlcmFweS4gSW4gYW55IGNhc2UsIGl0IGlzIGltcG9ydGFudCB0byBzYXkgdGhhdCB3ZSBoYXZlIGF0dGVuZGVkIHNwZWNpYWwgdHJhaW5pbmcgY291cnNlcyBmb3IgQ0YgdGhhdCBoYXZlIHNob3duIHVzIG5ldyB0ZWNobmlxdWVzLiBJbiBnZW5lcmFsLCB0aGUgc2FtZSB0aGluZ3MgYXJlIHRhdWdodCBpbiB0cmFpbmluZyBhcyAyNSB5ZWFycyBhZ28sIGJ1dCB1bmZvcnR1bmF0ZWx5IHRoaXMgZG9lc24ndCBoZWxwIENGIHBhdGllbnRzIGFzIHdlbGwgYXMgdGhlIG5ldyB0ZWNobmlxdWVzLiBUaGUgY3VycmVudCBnb2xkIHN0YW5kYXJkIGlzIGF1dG9nZW5vdXMgZHJhaW5hZ2UgYWNjb3JkaW5nIHRvIENoZXZhbGxpZXIuIFRoaXMgd29ya3MgdmVyeSB3ZWxsISBJbiBnZW5lcmFsLCB0aGUgbWFpbiBwcm9ibGVtIGlzIHRoZSBtdWN1cyB0aGF0IGNhbm5vdCBiZSByZW1vdmVkLiBXaXRoIGF1dG9nZW5vdXMgZHJhaW5hZ2UsIHRoZSBjaGVzdCBpcyBjb21wcmVzc2VkLCB3aGljaCBmb3JjZXMgdGhlIG11Y3VzIG91dC4gSXQncyBsaWtlIGNsZWFuaW5nIHRoZSBsdW5ncyBmcm9tIHRoZSBpbnNpZGUsIHdoaWNoIHdvcmtzIHJlYWxseSB3ZWxsLiBJdCBpcyBhbHNvIHZlcnkgaW1wb3J0YW50IHRvIGluaGFsZSwgd2hlcmVieSB0aGVyZSBhcmUgMyBkaWZmZXJlbnQgbGV2ZWxzIG9mIHNhbHQgY29udGVudCAoMC45JSwgMyUgb3IgNiUpLiBDaGlsZHJlbiB3aXRoIENGIGFsd2F5cyB1c2UgYXQgbGVhc3QgMyUgc2FsdCBjb250ZW50LjwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+T3VyIGdlbmVyYWwgcm91dGluZSBpcyBhcyBmb2xsb3dzOiA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgIDxvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT53ZXQgaW5oYWxhdGlvbiwgYXMgbW9pc3R1cmUgYmluZHMgbXVjdXM8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPmRyYWluYWdlIHRvIGdldCBtdWN1cyBvdXQgb2YgdGhlIGx1bmdzPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5hbnRpYmlvdGljcywgbm93IHRoZSBtZWRpY2F0aW9uIGNhbiB3b3JrIGJlc3QgYXMgdGhlIGx1bmdzIGFyZSBjbGVhbiBhbmQgZGlsYXRlZDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgPC9vbD5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8cD5UaGVyZSBhcmUgYWxzbyBzby1jYWxsZWQgXHUyMDFDbWFnaWMgcG9pbnRzXHUyMDFELiBDb21wcmVzc2lvbiBvZiB0aGVzZSBwb2ludHMgbGVhZHMgdG8gdGhlIGJlc3QgcG9zc2libGUgdmVudGlsYXRpb24gb2YgdGhlIGx1bmdzLiBUaGVyZSBhcmUgc3BlY2lhbCBiZWx0cyBmb3IgY29tcHJlc3NpbmcgdGhlc2UgcG9pbnRzIHRoYXQgcGF0aWVudHMgY2FuIHdlYXIgYXQgaG9tZSB0byBoZWxwIHRoZW0gYnJlYXRoZSBiZXR0ZXIuIE9sZGVyIHBhdGllbnRzIHdlYXIgdGhlc2UgYmVsdHMgZHVyaW5nIHNwb3J0LjwvcD5cbiAgICAgICAgICAgICAgICAgIDwvU3BlY2lhbFFhQm94PlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiV2hlbiBkb2VzIGRyYWluYWdlIHN0YXJ0PyBcIlxuICAgICAgICAgICAgICAgICAgYT1cIldlIHN0YXJ0IGRyYWluYWdlIGluIG5ld2Jvcm5zIHNvIHRoYXQgdGhlIG11Y3VzIGNhbm5vdCBzZXR0bGUgYXMgbXVjaC4gXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHRoZXJlIHNwZWNpYWwgZXhlcmNpc2VzIHRoYXQgY2FuIGFsc28gYmUgZG9uZSBhdCBob21lPyBcIlxuICAgICAgICAgICAgICAgICAgYT1cIlllcywgdGhlIHBhcmVudHMgYXJlIGluc3RydWN0ZWQgdG8gZG8gdGhlIGV4ZXJjaXNlcyB3aGljaCB3ZSBhbHNvIGRvIGluIG91ciBwcmFjdGljZS5cIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBvZnRlbiBkb2VzIHRoZSB0aGVyYXB5IHRha2UgcGxhY2U/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiVGhlcmFweSB1c3VhbGx5IHRha2VzIHBsYWNlIG9uY2UgYSB3ZWVrIG9yIGV2ZXJ5IHR3byB3ZWVrcy4gVGhhbmtzIHRvIGltcHJvdmVkIG1lZGljYXRpb24sIHRoZSBjaGlsZHJlbiBhZmZlY3RlZCBhcmUgbm93IGluIGEgbXVjaCBiZXR0ZXIgcG9zaXRpb24uIFRoZSB0aGVyYXB5IGhhcyBjaGFuZ2VkIGNvbnNpZGVyYWJseSBvdmVyIHRpbWUgYW5kIGhhcyBpbXByb3ZlZCBzaWduaWZpY2FudGx5LiBMZXNzIGFuZCBtb3JlIGZsdWlkIG11Y3VzIG1ha2VzIGl0IGVhc2llciB0byBjb3VnaCB1cCwgd2hpY2ggaW4gdHVybiBpbmNyZWFzZXMgdGhlIGNoaWxkcmVuJ3MgbGlmZSBleHBlY3RhbmN5LiBTcG9ydCBhbmQgZXhlcmNpc2UgcGxheSBhIGNlbnRyYWwgcm9sZSBpbiB0aGVyYXB5IGFuZCBzaG91bGQgYmUgZnVuLCBhcyB0aGV5IG11c3QgYmUgY2FycmllZCBvdXQgZm9yIGxpZmUuIEZyb20gdGhlIGFnZSBvZiA4IG9yIDksIGV4ZXJjaXNlIHN1Y2ggYXMgY3ljbGluZyB0byBzY2hvb2wgc2hvdWxkIGJlIHRoZSBub3JtLiBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgd291bGQgaGFwcGVuIGlmIG5vIHBoeXNpb3RoZXJhcHkgd2FzIHBlcmZvcm1lZD8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJJdCBpcyBkaWZmaWN1bHQgdG8gcHJlZGljdCBleGFjdGx5IHdoYXQgd291bGQgaGFwcGVuIGlmIHBoeXNpb3RoZXJhcHkgd2FzIG5vdCBjYXJyaWVkIG91dCwgYXMgdGhlcmUgaXMgbm8gY29tcGFyaXNvbiBncm91cC4gVGhlcmUgaXMgbm8gcmVhc29uIG5vdCB0byBkbyB0aGUgdGhlcmFweS4gSWYgY2hpbGRyZW4gZG8gbm90IHJlY2VpdmUgcGh5c2lvdGhlcmFweSBvdmVyIGEgbG9uZ2VyIHBlcmlvZCBvZiB0aW1lLCB0aGV5IG9mdGVuIGJlY29tZSBtb3JlIG11Y291c3kgYW5kIHRoZWlyIHZlbnRpbGF0aW9uIHdvcnNlbnMuIFNwZWNpZmljIHRoZXJhcHkgaXMgYWJzb2x1dGVseSBuZWNlc3NhcnkgYXQgdGhlIGxhdGVzdCBpbiB0aGUgZXZlbnQgb2YgYW4gaW5mZWN0aW9uLiAgXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiSG93IGRvIHlvdSBtZWFzdXJlIHN1Y2Nlc3MgKGluIHRlcm1zIG9mIGx1bmcgZnVuY3Rpb24gdGVzdCwgZXhlcmNpc2UsIGV0Yy4pPyBcIlxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBzdWNjZXNzIG9mIHRoZSB0aGVyYXB5IGlzIG1lYXN1cmVkIHN1YmplY3RpdmVseSBieSBsaXN0ZW5pbmcgdG8gYW5kIGZlZWxpbmcgdGhlIGJyZWF0aGluZyBhbmQgYnkgb2JzZXJ2aW5nIHRoZSBjaGlsZHJlbidzIHNraW4uIEFuIGV4YWN0IGFuc3dlciB0byB0aGUgc3VjY2VzcyBtZWFzdXJlbWVudCBpcyBkaWZmaWN1bHQuIEEgd2VsbC12ZW50aWxhdGVkIGx1bmcgdm9sdW1lIGlzIGluZGljYXRlZCBieSBhIFx1MjAxQ2Z1bGwgYmFycmVsXHUyMDFELCB3aGlsZSB3aGVlemluZyBhbmQgdmlicmF0aW5nIGluZGljYXRlIHBvb3IgdmVudGlsYXRpb24uIFZlZ2V0YXRpdmUgc2lnbnMgc3VjaCBhcyBhIHdoaXRlIG1vdXRoLW5vc2UgdHJpYW5nbGUgaW5kaWNhdGUgYSBoaWdoIGxldmVsIG9mIHN0cmVzcy4gSW4gdGhlIGNsaW5pYywgbHVuZyBmdW5jdGlvbiB0ZXN0cywgQ08yIG1lYXN1cmVtZW50cyBhbmQgXHUyMDFDZmluZ2VyIGNsaXBcdTIwMUQgdGVzdHMgYXJlIHBlcmZvcm1lZC4gSG93ZXZlciwgY2hpbGRyZW4gY2FuIHNvbWV0aW1lcyB0cnkgdG8gaW5mbHVlbmNlIHRoZSB0ZXN0cywgc28gdGhlIHJlc3VsdHMgYXJlIG5vdCBhbHdheXMgcmVsaWFibGUuICBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIkRvIHRoZSBleGVyY2lzZXMgYnJpbmcgcmVsaWVmIG9yIGFyZSB0aGV5IHByZXZlbnRhdGl2ZSBmb3IgZnVydGhlciBjb21wbGFpbnRzPyBcIlxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBleGVyY2lzZXMgc2VydmUgYm90aCB0byByZWxpZXZlIGFjdXRlIGluZmVjdGlvbnMgYW5kIHRvIHByZXZlbnQgZnVydGhlciBjb21wbGFpbnRzLiBUaGUgZmV3ZXIgbHVuZyBpbmZlY3Rpb25zIHRoZXJlIGFyZSwgdGhlIGxvd2VyIHRoZSBsaWtlbGlob29kIG9mIGFkaGVzaW9ucyBvZiBtdWN1cy4gIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHRoZXJlIGFueSB0b29scyB0byBwZXJmb3JtIHRoZXJhcHk/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiRGV2aWNlcyBzdWNoIGFzIHRoZSBcdTIwMUNmbHV0dGVyXHUyMDFEIG9yIFx1MjAxQ2Nvcm5ldFx1MjAxRCBhcmUgdXNlZCB0byBzdXBwb3J0IGV4aGFsYXRpb24uIFRoZXNlIGRldmljZXMgbG9vayBsaWtlIGEgd2hpc3RsZSB3aXRoIGEgbWV0YWwgYmFsbCBpbnNpZGUuIFdoZW4gZXhoYWxpbmcsIHRoZSBiYWxsIG1vdmVzIGFuZCBjcmVhdGVzIHZpYnJhdGlvbnMgdGhhdCBsb29zZW4gdGhlIG11Y3VzIGluIHRoZSBsdW5ncy4gU3VjaCBkZXZpY2VzIHNob3VsZCBiZSB1c2VkIGJ5IGFsbCBjaGlsZHJlbiB3aXRoIGx1bmcgZGlzZWFzZXMuIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiV2hhdCBjb21wbGFpbnRzIGRvIHBhdGllbnRzIGJyaW5nIHdpdGggdGhlbT8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJQYXRpZW50cyBvZnRlbiBoYXZlIGx1bmcgcHJvYmxlbXMsIGRyeSBsdW5nIG11Y29zYSBhbmQgcHJvYmxlbXMgd2l0aCB0aGUgcGFuY3JlYXMuIFRoZSBsYXR0ZXIgbGVhZHMgdG8gcG9vciBtZXRhYm9saXNtLCB3aGljaCBpcyB3aHkgdGhvc2UgYWZmZWN0ZWQgaGF2ZSB0byB0YWtlIGVuenltZSB0aGVyYXBldXRpY3MgYmVmb3JlIGVhdGluZy4gQ2hpbGRyZW4gb2Z0ZW4gaGF2ZSBncm93dGggZGlzb3JkZXJzIGR1ZSB0byBhIGxhY2sgb2YgZm9vZCwgd2hpY2ggaXMgd2h5IG51dHJpdGlvbmFsIGFkdmljZSBpcyBlc3NlbnRpYWwuIFNvbWUgY2hpbGRyZW4gYWxzbyBoYXZlIHByb2JsZW1zIHdpdGggZXhjZXNzaXZlIHBlcnNwaXJhdGlvbiwgYWx0aG91Z2ggdGhpcyBpcyBsZXNzIGNvbW1vbi4gIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHBhbmNyZWF0aWMgY29tcGxhaW50cyBhbHNvIHRyZWF0ZWQgYnkgcGh5c2lvdGhlcmFwaXN0cz8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJQYW5jcmVhdGljIGNvbXBsYWludHMgYXJlIHJhcmVseSB0cmVhdGVkIHdpdGggcGh5c2lvdGhlcmFweSwgdW5sZXNzIGl0IGlzIGFuIGluZmxhbW1hdGlvbi4gSW4gc3VjaCBjYXNlcywgdGhlIHBhdGllbnQgaXMgYWRtaXR0ZWQgdG8gYSBob3NwaXRhbC4gTWFzc2FnZSBvciB0YXBpbmcgdGhlIGludGVzdGluZXMgd2l0aCBraW5lc2lvbG9neSB0YXBlIGhlbHBzIHdpdGggY29uc3RpcGF0aW9uIGFuZCB3b3JrcyB2ZXJ5IHdlbGwuIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHRoZXJlIGFueSBzcGVjaWFsIGh5Z2llbmUgZ3VpZGVsaW5lcyBmb3IgeW91IHdoZW4gd29ya2luZyB3aXRoIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cz8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJIeWdpZW5lIGd1aWRlbGluZXMgYXJlIHZlcnkgaW1wb3J0YW50IHdoZW4gd29ya2luZyB3aXRoIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50cy4gQSBkaXN0aW5jdGlvbiBpcyBtYWRlIGJldHdlZW4gY2hpbGRyZW4gd2l0aCBhbmQgd2l0aG91dCBpbmZlY3Rpb25zIChQc2V1ZG9tb25hcykuIFJlZ3VsYXIgbmFzYWwgc3dhYnMgYXJlIHRha2VuIGFuZCBvbmx5IGNoaWxkcmVuIHdpdGggb3Igd2l0aG91dCBpbmZlY3Rpb25zIGFyZSB0cmVhdGVkIGluIHRoZSBwcmFjdGljZSBvbiBhbnkgZ2l2ZW4gZGF5LiBWZW50aWxhdGlvbiwgcGF0aWVudHMgd2VhcmluZyBtYXNrcyB3aGlsZSBpbmZlY3RlZCBhbmQgZGlzaW5mZWN0aW9uIG9mIHRoZSBmYWNpbGl0aWVzIGFyZSBlc3NlbnRpYWwuIENoaWxkcmVuIGluZmVjdGVkIHdpdGggbXVsdGktcmVzaXN0YW50IGdlcm1zIGFyZSBub3QgYWxsb3dlZCB0byBlbnRlciB0aGUgcHJhY3RpY2U7IGluIHN1Y2ggY2FzZXMsIHBoeXNpb3RoZXJhcGlzdHMgdmlzaXQgdGhlIHBhdGllbnRzJyBob21lcy4gXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJBcmUgdGhlIHNwZWNpZmljIGV4ZXJjaXNlcyBjdXN0b21pemVkPyBBbmQgaWYgc28sIGhvdyBkbyB5b3Uga25vdyB3aGljaCB0aGVyYXB5IGlzIHRoZSByaWdodCBvbmUgZm9yIHdoaWNoIHBhdGllbnQgKGJhc2VkIG9uIGxhYm9yYXRvcnkgdmFsdWVzLCB0ZXN0cywgZGlmZmVyZW50IG11dGF0aW9uIHBhdHRlcm5zLi4uKT8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgZXhlcmNpc2VzIGFyZSBpbmRpdmlkdWFsbHkgYWRhcHRlZCB0byB0aGUgcGF0aWVudCdzIGN1cnJlbnQgc2l0dWF0aW9uLiBJbXBvcnRhbnQgY3JpdGVyaWEgYXJlIHRoZSByZW1vdmFsIG9mIG11Y3VzIGFuZCB2ZW50aWxhdGlvbiBvZiB0aGUgbHVuZ3MuIEVhY2ggdGhlcmFwaXN0IGhhcyB0aGVpciBvd24gYXBwcm9hY2ggYW5kIHByZWZlcnJlZCBleGVyY2lzZXMgYW5kIHRlY2huaXF1ZXMuIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiRG8gcGF0aWVudHMgYWx3YXlzIGdvIHRvIHRoZSBzYW1lIHBoeXNpb3RoZXJhcGlzdD8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJJZiB0aGVyYXB5IGdvZXMgd2VsbCwgcGF0aWVudHMgc3RheSB3aXRoIHRoZSBzYW1lIHBoeXNpb3RoZXJhcGlzdC5cIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBtYW55IHBoeXNpb3RoZXJhcGlzdHMgb2ZmZXIgbXVjby10aGVyYXB5PyBcIlxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBleGFjdCBudW1iZXIgb2YgcGh5c2lvdGhlcmFwaXN0cyBvZmZlcmluZyBjeXN0aWMgZmlicm9zaXMgdGhlcmFweSBpcyB1bmtub3duLiBIb3dldmVyLCB0aGVyZSBhcmUgc2V2ZXJhbCBjaGlsZCB0aGVyYXBpc3RzIGluIHRoZSByZWdpb24gcHJvdmlkaW5nIHRoaXMgdGhlcmFweS4gXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJIb3cgYXJlIHRoZSByZWxhdGl2ZXMgZWR1Y2F0ZWQ/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiRWR1Y2F0aW5nIHJlbGF0aXZlcyBvZnRlbiBiZWdpbnMgaW4gdGhlIG1hdGVybml0eSB3YXJkIHdpdGggYSBzd2VhdCB0ZXN0LiBBZmZlY3RlZCBjaGlsZHJlbiBhcmUgb2Z0ZW4gcmVjb2duaXphYmxlIGR1ZSB0byBwb29yIGZvb2QgaW50YWtlLiBJbiBHXHUwMEZDdGVyc2xvaCwgd2hlcmUgb3VyIG9mZmljZSBpcyBsb2NhdGVkLCBhbGwgY2hpbGRyZW4gYXJlIHNlbnQgdG8gQmV0aGVsLCB3aGVyZSB0aGV5IGltbWVkaWF0ZWx5IHJlY2VpdmUgQ0YgY2FyZS4gUGFyZW50cyBhcmUgb2Z0ZW4gdHJhdW1hdGl6ZWQsIGFzIHRoZSBjaGlsZHJlbiBhcmUgc2V2ZXJlbHkgaWxsIGRlc3BpdGUgb2Z0ZW4gYXBwZWFyaW5nIGhlYWx0aHkuXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJXaGF0IGFyZSB0aGUgbGltaXRhdGlvbnMgb2YgaW5kaXZpZHVhbCBtZWRpY2luZT8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgZWZmZWN0aXZlbmVzcyBvZiBkcnVncyBjYW4gdmFyeSwgYW5kIHNvbWUgYXJlIG9ubHkgYXBwcm92ZWQgZnJvbSBhIGNlcnRhaW4gYWdlLiBCZXR0ZXIgbWVkaWNhdGlvbnMgY2FuIHNpZ25pZmljYW50bHkgZW5oYW5jZSB0aGUgcXVhbGl0eSBvZiBsaWZlIGFuZCBsaWZlIGV4cGVjdGFuY3kuIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDxici8+XG4gICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cImNvbFwiICBpZD1cImJlcmVuc0hcIj5cbiAgICAgICAgICA8aDMgaWQ9XCJiZXJlbnNcIj5Eci4gRXZhLU1hcmlhIEJlcmVuczwvaDM+XG4gICAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXRhZyBBY2FkZW1pYVwiPlxuICAgICAgICAgICAgICAgIEV0aGljcyBDb21taXR0ZWUgb2YgQmllbGVmZWxkIFVuaXZlcnNpdHkgXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5PcmlnaW5hbCBsYW5ndWFnZTogR2VybWFuPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVyZW5zLmpwZ1wiLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGgzPk5vdGVzIGZyb20gdGhlIGludGVydmlldzwvaDM+XG4gICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJRdWVzdGlvblwiXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NlY3Rpb24+ICBcbiAgICAgICAgPGJyLz5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwiY29sXCIgaWQ9XCJ3aXNjaG1leWVySFwiPlxuICAgICAgICA8aDMgaWQ9XCJ3aXNjaG1leWVyXCI+UHJvZi4gRHIuIEVyaGFyZCBXaXNjaG1leWVyPC9oMz5cbiAgICAgICAgICAgICAgPGhyLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIEFjYWRlbWlhXCI+XG4gICAgICAgICAgICAgIFJlc2VhcmNoIEdyb3VwIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSwgQmllbGVmZWxkIFVuaXZlcnNpdHlcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wbGFjZWhvbGRlcnMvcGxhY2VoaWxkZXJwZXJzb24uanBlZ1wiLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPGgzPk5vdGVzIGZyb20gdGhlIGludGVydmlldzwvaDM+XG4gICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJDYW4geW91IGVkdWNhdGUgdXMgYWJvdXQgeW91ciBhY2FkZW1pYyBjYXJlZXI/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiSSBkaWQgbXkgZG9jdG9yYXRlIDMwIHllYXJzIGFnbyBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSBhbmQgdGhlbiB3b3JrZWQgYXQgdGhlIE1heCBQbGFuY2sgSW5zdGl0dXRlIGluIEdcdTAwRjZ0dGluZ2VuIGEgbG90IHdpdGggdGhlIFBhdGNoLUNsYW1wIHAgdGVjaG5pcXVlLiBUb2RheSwgSVx1MjAxOW0gaGVhZCBvZiB0aGUgd29ya2luZyBncm91cCBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgb2YgdGhlIG1lZGljaW5lIGZhY3VsdHkgb2YgQmllbGVmZWxkIFVuaXZlcnNpdHkuIFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPFFhQm94XG4gICAgICAgICAgICAgICAgICBxPVwiV2hhdCBuZXcgbWV0aG9kcyBhcmUgY3VycmVudGx5IGF2YWlsYWJsZSBpbiBlbGVjdHJvcGh5c2lvbG9naWNhbCByZXNlYXJjaD8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJPbmUgb2YgdGhlIGxhdGVzdCBtZXRob2RzIGlzIEUtY2lzIG1lYXN1cmVtZW50cy4gVGhlc2UgbWFrZSBpdCBwb3NzaWJsZSB0byBleGFtaW5lIGEgbW9ub2xheWVyIG9mIGNvbmZsdWVudCBjZWxscyBhbmQgdG8gbWVhc3VyZSB0aGUgbWVtYnJhbmUgcG90ZW50aWFsIGJvdGggYWJvdmUgYW5kIGJlbG93LiBUaGUgY2hhbmdlIGluIGNvbmR1Y3Rpdml0eSBjYW4gYmUgYW5hbHl6ZWQgZm9yIGluc3RhbmNlIGFzIGEgZnVuY3Rpb24gb2YgQ0ZUUiBleHByZXNzaW9uLiBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBjYW4gd2UgcHJvY2VlZCB3aXRoIHRoZSBpbnZlc3RpZ2F0aW9uIG9mIENGVFIgaW4gZGlmZmVyZW50IGNlbGwgY3VsdHVyZXMgYnkgUGF0Y2gtQ2xhbXA/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiWW91IGNhbiBzdHVkeSBDRlRSIGV4cHJlc3Npb24gaW4gSEVLIGNlbGxzLCB3aGljaCBhbGxvd3MgZm9yIGEgbWVhc3VyYWJsZSBjaGFuZ2UgaW4gY2hsb3JpZGUgY29uZHVjdGFuY2UuIEkgYW0gbm90IHN1cmUgd2hldGhlciB3ZSB3aWxsIGJlIGFibGUgdG8gaW52ZXN0aWdhdGUgQ0ZUUiBzdWZmaWNpZW50bHkgaW4gZXBpdGhlbGlhbCBjZWxscyB3aGljaCB5b3Ugd2FudCB0byBjb2xsZWN0IGZyb20geW91ciBDRiBwYXRpZW50IGZyaWVuZCBhbmQgeW91ciB0ZWFtIG1lbWJlcnMuIFRoYXQgaXMgc29tZXRoaW5nIHdlIGhhdmUgdG8gdHJ5IG91dC4gXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJIb3cgY2hhbGxlbmdpbmcgaXMgdGhlIG1lYXN1cmVtZW50IG9mIENGVFIgY29uZHVjdGFuY2UgaW4gZXBpdGhlbGlhbCBjZWxscz8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJDRlRSIGluIGVwaXRoZWxpYWwgY2VsbHMgaGFzIHZlcnkgbG93IGNvbmR1Y3Rpdml0eSBpbiB0aGUgZmVtdG9hbXBlcmUgcmFuZ2UuIFRoZXJlZm9yZSwgZXh0cmVtZWx5IHNlbnNpdGl2ZSB0ZXN0aW5nIGlzIG5lY2Vzc2FyeSB0byBvYnRhaW4gbWVhbmluZ2Z1bCByZXN1bHRzLiAgXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJIb3cgY2hhbGxlbmdpbmcgaXMgdGhlIFBhdGNoLUNsYW1wIG1lYXN1cmVtZW50IG9mIENGVFIgY29uZHVjdGFuY2UgaW4gZXBpdGhlbGlhbCBjZWxscz8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgcHJvamVjdCB3aWxsIGNvdWxkIHRha2UgYXQgbGVhc3Qgb25lIHllYXIsIGV2ZW4gZm9yIGV4cGVyaWVuY2VkIHJlc2VhcmNoZXJzLiBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgdGVjaG5pY2FsIGNoYWxsZW5nZXMgZG8gd2UgZmFjZSBpbiBpbXBsZW1lbnRpbmcgdGhlIFBhdGNoLUNsYW1wIG1lYXN1cmVtZW50cz8gXCJcbiAgICAgICAgICAgICAgICAgIGE9XCJPbmUgb2YgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlcyBpcyBtZWFzdXJpbmcgdGhlIGN1cnJlbnQgYWNyb3NzIHRoZSBlbnRpcmUgY2VsbCwgYXMgd2UgZG8gbm90IHdhbnQgdG8gY2Fycnkgb3V0IHNpbmdsZS1jaGFubmVsIG1lYXN1cmVtZW50cywgYnV0IHJhdGhlciByZWNvcmQgdGhlIGN1cnJlbnQgYWNyb3NzIGNlbGxzIHdpdGggYSBzdHJvbmdseSBleHByZXNzaW5nIHZlY3RvciBjYXJyeWluZyB0aGUgZ2VuZSBmb3IgdGhlIGlvbiBjaGFubmVsLiBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxRYUJveFxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgcmVxdWlyZW1lbnRzIG11c3QgYmUgbWV0IGZvciBjdWx0aXZhdGlvbiBhbmQgdHJhbnNmZWN0aW9uIGJlZm9yZSB0aGUgUGF0Y2gtQ2xhbXAgbWVhc3VyZW1lbnQ/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiWW91IGhhdmUgdG8gY3VsdGl2YXRlIHRoZSBjZWxscyBvbiBwb2x5LWx5c2luZSBhbmQgbGFtaW5pbiBhbmQgdXNlIHJvdW5kIGNvdmVyc2xpcHMgb2YgMTAgbW0gZGlhbWV0ZXIgdG8gcHJlcGFyZSB0aGVtIGZvciBtZWFzdXJlbWVudC4gRm9yIGlkZW50aWZpY2F0aW9uIG9mIHBvc2l0aXZlIHRyYW5zZmVjdGFudHMsIHdlIHVzZSBHRlAgY28tdHJhbnNmZWN0ZWQgY2VsbHMgaW4gb3VyIHdvcmtpbmcgZ3JvdXAsIHlvdSBzaG91bGQgdGhpbmsgb2Ygc29tZXRoaW5nIGxpa2UgdGhhdCBhcyB3ZWxsLiBBIHRyYW5zZmVjdGlvbiByYXRlIG9mIDEwICUgaXMgc3VmZmljaWVudCB0byBnYWluIGVub3VnaCBjZWxscyBmb3IgdGhlIG1lYXN1cmVtZW50LiBZb3UgY2FuIHRoaW5rIG9mIG9wdGltaXppbmcgeW91ciB0cmFuc2ZlY3Rpb24gYnkgdXNpbmcgTGlwb2ZlY3RhbWluMjAwMCB0aGFuIExpcG9mZWN0YW1pbmUyMDAwLCB3aGljaCB3b3JrcyBnb29kIGZvciBvdXIgd29ya2luZyBncm91cC4gXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8UWFCb3hcbiAgICAgICAgICAgICAgICAgIHE9XCJXaG8gY291bGQgaGVscCB1cyB3aXRoIHRoZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudHM/IFwiXG4gICAgICAgICAgICAgICAgICBhPVwiVGhlIFBhdGNoLUNsYW1wIGRldmljZXMgYXJlIGhlYXZpbHkgdXRpbGl6ZWQgaW4gb3VyIHdvcmtpbmcgZ3JvdXAsIHNvIHlvdSBwcm9iYWJseSBjYW5ub3QgcGVyZm9ybSBtZWFzdXJlbWVudHMgb24geW91ciBvd24uIEhvd2V2ZXIsIHBvc3Rkb2NzIGNvdWxkIHN1cHBvcnQgeW91IGZvciBzb21lIG1lYXN1cmVtZW50cy4gRHIuIE9saXZlciBEclx1MDBFNGdlciBpcyBhdmFpbGFibGUgYXMgYSBjb250YWN0IHBlcnNvbiBvZiBteSB3b3JraW5nIGdyb3VwLiBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHA+IFRlc3QgYXVzIGRlbSBXaWtpIDwvcD4gPC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgPGJyLz5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cbiAgICAiLCAiaW1wb3J0IHsgSHdhdmUgfSBmcm9tIFwiLi9IZWFkaW5nc1wiO1xuXG5pbnRlcmZhY2UgUHJvcHN7XG4gICAgdGl0bGU6IHN0cmluZyAsXG4gICAgdGl0bGUyPzogc3RyaW5nLFxuICAgIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlLFxuICAgIGlkOiBzdHJpbmdcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gSGVhZGVyQm94KHtjaGlsZHJlbiwgdGl0bGUsIHRpdGxlMiwgaWR9OiBQcm9wcyApe1xuICB2YXIgdGk6IHN0cmluZyA9IFwiXCI7XG4gIGlmICh0aXRsZTIpIHtcbiAgICB0aSA9IHRpdGxlMjtcbiAgfVxuICAgIHJldHVybihcbiAgICAgICAgPD5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBoZWFkZXItY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBoZWFkZXItdGl0bGVcIiBpZD17aWR9PlxuICAgICAgICAgICAgICA8SHdhdmUgdGV4dD17dGl0bGV9PjwvSHdhdmU+XG4gICAgICAgICAgICAgIDxId2F2ZSB0ZXh0PXt0aX0+PC9Id2F2ZT5cblxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXNlXCI+XG4gICAgICAgICAgICBcbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICBcbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApXG59IiwgImltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBBVFRIKCkge1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJBdHRyaWJ1dGlvbnNcIiBpZD1cImF0dGhlYWRcIj5cbiAgICAgIDwvSGVhZGVyQm94PlxuICAgICk7XG4gIH0iLCAiaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIENPTlRIKCkge1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJDb250cmlidXRpb25cIiBpZD1cImNvbmhlYWRcIj5cbiAgICAgICAgXG4gICAgICA8L0hlYWRlckJveD5cbiAgICApO1xuICB9IiwgImV4cG9ydCBmdW5jdGlvbiBERVNDSCgpIHtcblxuICByZXR1cm4gKFxuICAgIDxIZWFkZXJCb3ggIHRpdGxlPVwiRGVzY3JpcHRpb25cIiBpZD1cImRlc2NoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiXG5cbmV4cG9ydCBmdW5jdGlvbiBIT01FSCgpIHsgXG5cbiAgXG4gIHJldHVybiAoXG4gICA8PjwvPlxuICAgICAgICBcbiAgICBcbiAgKTtcbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gRVhQSCgpIHtcblxuICByZXR1cm4gKFxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJFeHBlcmltZW50c1wiIGlkPVwiZXhoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIEhQSCgpIHtcblxuICByZXR1cm4gKFxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJIdW1hblwiIHRpdGxlMj1cIlByYWN0aWNlc1wiIGlkPVwiaHBoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIElNUEgoKSB7XG5cbiAgcmV0dXJuIChcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiXCIgaWQ9XCJpbXBoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIE5PVEVIKCkge1xuXG4gIHJldHVybiAoXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIk5vdGVib29rXCIgaWQ9XCJub3RoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIFJFU0goKSB7XG5cbiAgcmV0dXJuIChcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiUmVzdWx0c1wiIGlkPVwicmVzaGVhZFwiPlxuICAgICAgXG4gICAgPC9IZWFkZXJCb3g+XG4gICk7XG59XG5cbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBTQUZFSCgpIHtcblxuICByZXR1cm4gKFxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJCaW9zYWZldHlcIiBpZD1cInNhZmVoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIFRFQU1IKCkge1xuXG4gIHJldHVybiAoXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIk91ciBUZWFtXCIgaWQ9XCJ0ZWFtaGVhZFwiPlxuICAgICAgXG4gICAgPC9IZWFkZXJCb3g+XG4gICk7XG59XG5cbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBTUE9OSCgpIHtcblxuICByZXR1cm4gKFxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJTcG9uc29yc1wiIHRpdGxlMj1cIiYgUGFydG5lcnNcIiBpZD1cInNwaGVhZFwiPlxuICAgICAgXG4gICAgPC9IZWFkZXJCb3g+XG4gICk7XG59XG5cbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBFTkdIKCkge1xuXG4gIHJldHVybiAoXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIkVuZ2luZWVyaW5nXCIgaWQ9XCJlbmdoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiZXhwb3J0IGZ1bmN0aW9uIFNVUEgoKSB7XG5cbiAgcmV0dXJuIChcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiU3VwcGxlbWVudGFyeVwiIHRpdGxlMj1cIk1hdGVyaWFsXCIgaWQ9XCJzdXBoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiaW1wb3J0IHsgUGFydCB9IGZyb20gXCIuLi9kYXRhL3BhcnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBQYXJ0VGFibGUoe2RhdGEsIGNvbHN9OiB7ZGF0YTogQXJyYXk8UGFydD4sIGNvbHM6IEFycmF5PHN0cmluZz59KXtcbiAgICBsZXQgbGlzdDogSlNYLkVsZW1lbnRbXSAgPSBbXTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGF0YS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgbGlzdC5wdXNoKFxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0ucGFydG5hbWV9PC90ZD5cbiAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj17ZGF0YVtpbmRleF0udXJsfT57ZGF0YVtpbmRleF0ucmVnaXN0cnljb2RlfTwvYT48L3RkPlxuICAgICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0uZGVzY3JpcHRpb259PC90ZD5cbiAgICAgICAgICAgICAgICA8dGQ+e2RhdGFbaW5kZXhdLmxlbmd0aH08L3RkPlxuICAgICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0udHlwZX08L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgKVxuICAgIH1cbiAgICBsZXQgaGVhZHM6IEpTWC5FbGVtZW50W10gID0gW107IFxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjb2xzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBoZWFkcy5wdXNoKDx0ZD48Yj57Y29sc1tpbmRleF19PC9iPjwvdGQ+KVxuICAgIH1cbiAgICByZXR1cm4oXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1pbi13LWZ1bGwgb3ZlcmZsb3cteC1hdXRvXCI+XG4gICAgICAgPGRpdiBjbGFzc05hbWU9XCJpbmxpbmUtYmxvY2sgbWluLXctZnVsbCBweS00XCI+XG4gICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm92ZXJmbG93LWhpZGRlbiBwLTJcIj5cbiAgICAgICAgICAgPHRhYmxlIGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHBhcnR0YWJsZVwiPlxuICAgICAgICAgICAgIDx0aGVhZCBjbGFzc05hbWU9XCJiZy1kXCI+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICB7aGVhZHN9XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICB7bGlzdH1cbiAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgPC9kaXY+XG4gICAgICAgPC9kaXY+XG4gICAgIDwvZGl2PlxuICAgPC9kaXY+XG4gICAgKVxufSIsICJpbXBvcnQgeyBMb3JlbU1lZGl1bSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0xvcmVtaXBzdW1cIjtcbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgUGFydFRhYmxlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvVGFibGVcIjtcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xuaW1wb3J0IHsgQmFzaWNQYXJ0cywgQ29tcG9zaXRlUGFydHMgIH0gZnJvbSBcIi4uL2RhdGEvcGFydHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIFBhcnRzKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gIGxldCBoZWFkY29scyA9IFtcIlBhcnQgTmFtZVwiLCBcIlJlZ2lzdHJ5IENvZGVcIiwgXCJQYXJ0IERlc2NyaXB0aW9uXCIsIFwibGVuZ3RoIFticF1cIiwgXCJ0eXBlXCJdXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiSW50cm9kdWN0aW9uXCIgaWQ9XCJJbnRyb2R1Y3Rpb25cIj5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkRlc2NyaXB0aW9uXCIgaWQ9XCJJbnRyb2R1Y3Rpb24xXCI+XG4gICAgICAgICAgICA8TG9yZW1NZWRpdW0vPlxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkNoYXJhY3Rlcml6YXRpb25cIiBpZD1cIkludHJvZHVjdGlvbjJcIj5cbiAgICAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUHJvY2Vzc1wiIGlkPVwiUHJvY2Vzc1wiPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRUNcIiBpZD1cIlByb2Nlc3MxXCI+XG4gICAgICAgICAgICA8TG9yZW1NZWRpdW0vPiBcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJEZXNpZ24gYW5kIEJ1aWxkXCIgaWQ9XCJQcm9jZXNzMlwiPlxuICAgICAgICAgICAgPExvcmVtTWVkaXVtLz4gXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiRXhwZXJpbWVudHNcIiBpZD1cIkV4cGVyaW1lbnRzXCI+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJDbG9uaW5nXCIgaWQ9XCJFeHBlcmltZW50czFcIj5cbiAgICAgICAgICAgIDxMb3JlbU1lZGl1bS8+IFxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIk5pa2FzZS1Bc3NheVwiIGlkPVwiRXhwZXJpbWVudHMyXCI+XG4gICAgICAgICAgICA8TG9yZW1NZWRpdW0vPiBcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBY3Rpdml0eSBFeHBlcmltZW50c1wiIGlkPVwiRXhwZXJpbWVudHMzXCI+XG4gICAgICAgICAgICA8TG9yZW1NZWRpdW0vPiBcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJQYXJ0cyBDb2xsZWN0aW9uXCIgaWQ9XCJQYXJ0cyBDb2xsZWN0aW9uXCI+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQbGFzbWlkc1wiIGlkPVwiUGFydHMgQ29sbGVjdGlvbjFcIj5cbiAgICAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQmFzaWMgUGFydHNcIiBpZD1cIlBhcnRzIENvbGxlY3Rpb24yXCI+XG4gICAgICAgICAgICA8UGFydFRhYmxlIGNvbHM9e2hlYWRjb2xzfSBkYXRhPXtCYXNpY1BhcnRzfS8+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29tcG9zaXRlIFBhcnRzXCIgaWQ9XCJQYXJ0cyBDb2xsZWN0aW9uM1wiPlxuICAgICAgICAgIDxQYXJ0VGFibGUgY29scz17aGVhZGNvbHN9IGRhdGE9e0NvbXBvc2l0ZVBhcnRzfS8+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG4gICIsICJleHBvcnQgZnVuY3Rpb24gUEFSVEgoKSB7XG5cbiAgcmV0dXJuIChcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiUGFydHNcIiBpZD1cInBhcmhlYWRcIj5cbiAgICAgIFxuICAgIDwvSGVhZGVyQm94PlxuICApO1xufVxuXG5pbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJpbXBvcnQgeyBINSB9IGZyb20gXCIuLi9IZWFkaW5nc1wiO1xuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uL3ByZWN5c2VcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gQ2FsVGFicygpe1xuXG4gICAgbGV0IHRhYmxpc3Q6IEpTWC5FbGVtZW50W10gPSBbXTsgXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRhYnMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHRhYmxpc3QucHVzaChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2FsLWVudHJ5XCIgaWQ9e3RhYnNbaW5kZXhdLmNzc25hbWV9IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVudHJ5LWhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD17cGFyc2VEYXRlRnJvbUNvZGUodGFic1tpbmRleF0uY3NzbmFtZSl9Lz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImVudHJ5LWJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAge3RhYnNbaW5kZXhdLm5vZGV9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKVxuICAgICAgICBcbiAgICB9XG4gICAgcmV0dXJuIHRhYmxpc3Q7IFxufVxuXG5sZXQgdGFicyA9IFtcbiAgICB7ICAgXG4gICAgICAgIGNzc25hbWU6IFwiZmVicnVhcnkyN1wiLCBcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gZGlzY3Vzc2VkIGltcG9ydGFudCBkZWFkbGluZXMsIGluY2x1ZGluZyB0aGUgVGVhbSBNZW1iZXIgVGlja2V0IGR1ZSBvbiBBcHJpbCA1dGgsIHRoZSBUZWFtIEdyYW5kIEphbWJvcmVlIEZlZSBvbiBKdWx5IDMxc3QsIHRoZSBXaWtpIEZyZWV6ZSBvbiBPY3RvYmVyIDJuZCwgYW5kIHRoZSBwcmVzZW50YXRpb24gdmlkZW8gc3VibWlzc2lvbiBvbiBPY3RvYmVyIDl0aC4gRGVsaXZlcmFibGVzIHdlcmUgb3V0bGluZWQsIHdpdGggZWFjaCBtZW1iZXIgYXNzaWduaW5nIHRoZW1zZWx2ZXMgdG8gdGhyZWUgc3ViamVjdCBhcmVhcywgd2hpY2ggaW5jbHVkZSBhIHZpbGxhZ2UgcHJlc2VudGF0aW9uICgxNSBtaW51dGVzKSwgYSBqdWRnaW5nIHNlc3Npb24gKDMwIG1pbnV0ZXMpLCBhbmQgYSB0ZWFtIGJvb3RoLiBFc3NlbnRpYWwgZm9ybXMgc3VjaCBhcyB0aGUgcHJvamVjdCBzYWZldHkgZm9ybSwganVkZ2luZyBmb3JtLCBhbmQgYXR0cmlidXRpb24gZm9ybSB3ZXJlIGhpZ2hsaWdodGVkLCBhbG9uZyB3aXRoIHZpZGVvIHJlcXVpcmVtZW50cyBmb3IgYm90aCBwcmVzZW50YXRpb24gYW5kIHByb21vdGlvbi48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cbiAgICAgICAgPHA+VGVhbXMgYXJlIHRvIGJlIGVzdGFibGlzaGVkIGZvciB2YXJpb3VzIHJlc3BvbnNpYmlsaXRpZXMsIGluY2x1ZGluZyBhIHB1YmxpYyBvdXRyZWFjaCB0ZWFtIHdpdGggYSBtaW5pbXVtIG9mIGZpdmUgbWVtYmVycyBmb2N1c2luZyBvbiBzb2NpYWwgbWVkaWEgYW5kIG5ldHdvcmtpbmcgd2l0aCBvdGhlciBpR0VNIHRlYW1zLiBTcGVjaWZpYyBwb3NpdGlvbnMgdG8gZmlsbCBpbmNsdWRlIGEgZGVhZGxpbmUgbWFuYWdlciBhbmQgdGVhbXMgZm9yIHNwb25zb3JpbmcsIHRoZW1lIGFyZWFzLCBhbmQgdGhlIEdyYW5kIEphbWJvcmVlIHByZXNlbnRhdGlvbnMuIEFkZGl0aW9uYWwgcmVzcG9uc2liaWxpdGllcyBpbmNsdWRlIG9yZ2FuaXppbmcgdGhlIHZpbGxhZ2UgYm9vdGgsIGRlc2lnbiB0ZWFtIHRhc2tzLCBhbmQgZW5zdXJpbmcgdGhlIGNvbXBsZXRpb24gb2Ygc2FmZXR5LCBqdWRnaW5nLCBhbmQgYXR0cmlidXRpb24gZm9ybXMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIHBsYW5zIGEgdHJpcCB0byBQYXJpcyB2aWEgdHJhaW4sIHdoaWNoIHRha2VzIGFwcHJveGltYXRlbHkgNiBob3VycyBhbmQgMTUgbWludXRlcy4gVHJhdmVsIGNvc3RzIHdpbGwgYmUgY292ZXJlZCwgd2l0aCB0ZWFtIG1lbWJlcnMgb25seSBuZWVkaW5nIHRvIHBheSBmb3IgbWVhbHMuIFN1Z2dlc3RlZCB0cmF2ZWwgZGF0ZXMgYXJlIGZyb20gT2N0b2JlciAyMXN0IHRvIDMxc3QsIGNvaW5jaWRpbmcgd2l0aCB0aGUgaUdFTSBKYW1ib3JlZSBmcm9tIE9jdG9iZXIgMjNyZCB0byAyNnRoLCB3aXRoIGFjY29tbW9kYXRpb24gdG8gYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0ZWFtIHByZWZlcmVuY2VzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5MaW5rcyAmIENvPC9oMj5cbiAgICAgICAgPHA+QSBwcmVzZW50YXRpb24gcmVnYXJkaW5nIGlHRU0gZ3VpZGVsaW5lcyB3aWxsIGJlIHByb3ZpZGVkIGJ5IFNpbmFuLjwvcD5cbiAgICAgICAgPC8+XG4gICAgfSwgXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcImZlYnJ1YXJ5MjlcIixcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+VXJnZW50PC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gZGlzY3Vzc2VkIHRoZSBzdHJ1Y3R1cmUgZm9yIHRvcGljIGlkZW50aWZpY2F0aW9uLCBjb25zaWRlcmluZyB3aGV0aGVyIHRvIHN0YXJ0IHdpdGggZ2VuZXJhbCBvciBzcGVjaWZpYyBhcmVhcy4gQW4gaWRlYSB3YXMgcHJvcG9zZWQgdG8gY3JlYXRlIHRocmVlIG9yIG1vcmUgdG9waWMgYXJlYXMgZm9yIGdyb3VwIGZvcm1hdGlvbiBiYXNlZCBvbiBwZXJzb25hbCBpbnRlcmVzdHMsIHdpdGggZWFjaCBtZW1iZXIgcHJlcGFyaW5nIGEgc2xpZGUgdG8gZmFjaWxpdGF0ZSBjbHVzdGVyaW5nIGlkZWFzLiBTaW5hbiB3aWxsIGNyZWF0ZSBhIHByZXNlbnRhdGlvbiB0byBiZSBjb21wbGV0ZWQgYnkgVGh1cnNkYXksIE1hcmNoIDd0aC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cbiAgICAgICAgPHA+Rm9yIGZ1dHVyZSBjb21tdW5pY2F0aW9uLCB0ZWFtcyB3aWxsIHVzZSBhIGRlZGljYXRlZCBwbGF0Zm9ybSBzdGFydGluZyBNYXJjaCA1dGgsIHdoaWxlIFNsYWNrIHdpbGwgc2VydmUgZm9yIGluZm9ybWFsIG5ldHdvcmtpbmcuIFRoZSBuZWVkIGZvciBpbnRlcm5hbCBkZWFkbGluZXMgd2FzIGVtcGhhc2l6ZWQsIHN1Z2dlc3Rpbmcgb25lIHdlZWsgcHJpb3IgdG8gb2ZmaWNpYWwgZGVhZGxpbmVzLCBhbmQgZXZlcnlvbmUgaXMgZW5jb3VyYWdlZCB0byBtb25pdG9yIHRoZSBpR0VNIHdlYnNpdGUgZm9yIHVwZGF0ZXMuIFBvc3NpYmxlIGluaXRpYXRpdmVzIGluY2x1ZGUgb3JnYW5pemluZyBhIHN0aWNrZXIgYWxidW0sIG5ld3NsZXR0ZXIsIHBvc3RjYXJkIGNhbXBhaWduLCBhbmQgZXZlbiBhIE1pbmkgSmFtYm9yZWUgb3IgSnVuaW9yIEphbSBpbiBCaWVsZWZlbGQuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkRvY3VtZW50YXRpb248L2gyPlxuICAgICAgICA8cD5VdGlsaXppbmcgWm90ZXJvIGFzIGEgbGl0ZXJhdHVyZSBwbGF0Zm9ybSB3YXMgYWdyZWVkIHVwb24sIHdpdGggYXR0ZW50aW9uIG5lZWRlZCBvbiB0aGUgYWNjdXJhY3kgb2YgY2l0YXRpb25zLCBlc3BlY2lhbGx5IGZvciBvbGRlciBwdWJsaWNhdGlvbnMuIFRoZSBwcm9qZWN0IGRlc2NyaXB0aW9uIHNob3VsZCBiZSBjb25jaXNlLCBpbmNvcnBvcmF0aW5nIHJlbGV2YW50IGxpdGVyYXR1cmUgYW5kIGVuZ2FnaW5nIGNvbnRlbnQgZm9yIGp1ZGdlcywgd2l0aCBhIGZpbmFsIHZlcnNpb24gZHVlIGJ5IHRoZSBXaWtpIEZyZWV6ZSBhbmQgYSBwcmVsaW1pbmFyeSB2ZXJzaW9uIGJ5IEp1bmUgMjFzdC4gQWRkaXRpb25hbGx5LCBuZXcgcGFydHMgbXVzdCBiZSBjcmVhdGVkIGlmIHVuYXZhaWxhYmxlIGluIHRoZSBSZWdpc3RyeSwgZW5zdXJpbmcgY29tcGF0aWJpbGl0eSB3aXRoIHNwZWNpZmljIHJlc3RyaWN0aW9uIGVuenltZXMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlByb2plY3QgU29mdHdhcmU8L2gyPlxuICAgICAgICA8cD5EaXNjdXNzaW9uIGhpZ2hsaWdodGVkIHRoZSBwb3RlbnRpYWwgcmVsZXZhbmNlIG9mIHByb2plY3Qgc29mdHdhcmUgZGVwZW5kaW5nIG9uIHRoZSBmb2N1cywgd2l0aCBmdXJ0aGVyIGRldGFpbHMgYXZhaWxhYmxlIGluIHRoZSB1cGNvbWluZyBwcmVzZW50YXRpb24uIEF3YXJkcyB3ZXJlIG91dGxpbmVkLCBlbXBoYXNpemluZyB0aGF0IG1lZGFscyBkbyBub3QgcmVxdWlyZSBzcGVjaWFsIGF3YXJkcyBhbmQgZGVwZW5kIG9uIHByb2plY3Qgc3VjY2VzcyBhbmQgaHVtYW4gcHJhY3RpY2VzLiBUaGUgdGVhbSBhaW1zIGZvciB0aGUgR29sZCBtZWRhbCwgd2hpY2ggbmVjZXNzaXRhdGVzIHRocmVlIG1ham9yIGFjaGlldmVtZW50cyBhY3Jvc3MgdmFyaW91cyBjYXRlZ29yaWVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+QSB0ZWFtLWJ1aWxkaW5nIHdlZWtlbmQgd2FzIHByb3Bvc2VkLCB3aXRoIGRldGFpbHMgb24gcHJpY2luZyBhbmQgYSBmaW5hbCB2b3RlIHRvIGJlIGNsYXJpZmllZCBieSBLYXRobGVlbiBhbmQgS2ltLiBUaGUgdGVhbSBhbHNvIGFncmVlZCB0byBhIGJvd2xpbmcgYWN0aXZpdHkgaW5zdGVhZCBvZiB0aGUgbWVldGluZyBvbiBNYXJjaCA1dGgsIHdpdGggZnVydGhlciBpbmZvcm1hdGlvbiB0byBiZSBzaGFyZWQgdmlhIFdoYXRzQXBwLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UYXNrczwvaDI+XG4gICAgICAgIDxwPlNpbmFuIGlzIHRhc2tlZCB3aXRoIGNyZWF0aW5nIGEgcHJlc2VudGF0aW9uIHRvIG91dGxpbmUgdmFyaW91cyB0b3BpY3MgZm9yIHRoZSB0ZWFtLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5XaWtpPC9oMj5cbiAgICAgICAgPHA+VGhlIHdpa2kgd2lsbCBiZSBlc3NlbnRpYWwgZm9yIGRvY3VtZW50aW5nIHRoZSBwcm9qZWN0IGFuZCBwcmVzZW50aW5nIHJlc2VhcmNoLiBJdCB3aWxsIGluY2x1ZGUgc2VjdGlvbnMgZm9yIGNvbnRyaWJ1dGlvbnMgYW5kIG11c3Qgbm90IGFsdGVyIGlHRU0gbGlua3MuIEEgYmFzaWMgd2lraSB3aWxsIGJlIGVzdGFibGlzaGVkLCB3aXRoIGEgXHUyMDFDQ29sZCBXZWRuZXNkYXlcdTIwMUQgcGxhbm5lZCBmb3IgcmV2aWV3aW5nIHZpZGVvcyBhbmQgb3RoZXIgbWF0ZXJpYWxzIGJlZm9yZSB0aGUgV2lraSBGcmVlemUuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkxpbmtzICYgQ288L2gyPlxuICAgICAgICA8cD5TaW5hbiB3aWxsIGFsc28gcHJvdmlkZSBhIHByZXNlbnRhdGlvbiByZWdhcmRpbmcgaUdFTSBndWlkZWxpbmVzLjwvcD5cbiAgICAgICAgPC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwibWFyY2g3XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5UaGUgdGVhbSBkaXNjdXNzZWQgdGhlIGZvcm1hdGlvbiBvZiBzdWJ0ZWFtcywgZW1waGFzaXppbmcgdGhhdCBtb2RlcmF0aW9uIGFuZCBtYWluIHJlc3BvbnNpYmlsaXRpZXMgYXJlIHNoYXJlZCwgcmF0aGVyIHRoYW4gdW5pbGF0ZXJhbCBkZWNpc2lvbi1tYWtpbmcuIEEgZGVzaWduYXRlZCBwZXJzb24gd2lsbCBvdmVyc2VlIGFsbCBkZWFkbGluZXMgYW5kIGNoZWNrIHRoZW0gdHdvIHdlZWtzIGluIGFkdmFuY2UsIHdpdGggaW50ZXJuYWwgZGVhZGxpbmVzIG1hbmFnZWQgdGhyb3VnaCBhIGNhbGVuZGFyIG9uIE1pY3Jvc29mdCBUZWFtcywgd2hpY2ggd2lsbCBhbHNvIGluY2x1ZGUgYmlydGhkYXlzLiBTbWFsbCBncm91cCBicmFpbnN0b3JtaW5nIHNlc3Npb25zIGFpbWVkIHRvIGdlbmVyYXRlIDEtMyBjb25jcmV0ZSBwcm9qZWN0IGlkZWFzLCB3aXRoIHN1bW1hcmllcyByZWNvcmRlZCBmb3IgcmVmZXJlbmNlLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxwPkZvciBsaXRlcmF0dXJlIG1hbmFnZW1lbnQsIFpvdGVybyB3aWxsIGJlIHV0aWxpemVkIGZvciBvcmdhbml6aW5nIHB1YmxpY2F0aW9ucyBpbnRvIHN1YmZvbGRlcnMsIHJlcXVpcmluZyB0aGUgdXNlIG9mIERPSSBvciBJU0JOIGZvciBhdHRhY2htZW50cy4gVGhpcyB3aWxsIGVuc3VyZSBlYXN5IGFjY2VzcyBhbmQgcHJldmVudCBkdXBsaWNhdGUgZW50cmllcy4gTWljcm9zb2Z0IFRlYW1zIHdpbGwgYmUgc2V0IHVwIGZvciBjb21tdW5pY2F0aW9uLCB0cmFuc2ZlcnJpbmcgaW5mb3JtYXRpb24gZnJvbSBOb3Rpb24gdG8gZmFjaWxpdGF0ZSBjYWxlbmRhciBtYW5hZ2VtZW50LCBjaGF0LCBhbmQgZG9jdW1lbnQgdXBsb2Fkcy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+VGVhbTwvaDI+XG4gICAgICAgIDxwPlRoZSBib3dsaW5nIGV2ZW50IHdhcyBhIHN1Y2Nlc3MsIGFuZCBwaG90b3Mgd2VyZSB0YWtlbiBmb3IgcG90ZW50aWFsIGluY2x1c2lvbiBpbiBhIFwiUGhvdG8gQm9vay5cIiBUaGVyZSBpcyBhIHN1Z2dlc3Rpb24gdG8gbWFrZSB0aGlzIGEgbW9udGhseSB0ZWFtIGV2ZW50LCB3aXRoIGFuIHVwY29taW5nIGV4Y3Vyc2lvbiB3aGVyZSB0aGUgdGVhbSB3aWxsIHZvdGUgYmV0d2VlbiBUaGUgSGFndWUgb3IgSGFtYnVyZywgY29vcmRpbmF0ZWQgYnkgS2ltIGFuZCBLYXRobGVlbi48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gaWRlbnRpZmllZCBtZW1iZXJzIHJlc3BvbnNpYmxlIGZvciBwbGFubmluZyB0aGUgUGFyaXMgZXhjdXJzaW9uIGFuZCBkaXNjdXNzZWQgcHJlcGFyaW5nIGEgZGV0YWlsZWQgZG9jdW1lbnQgY292ZXJpbmcgYWNjb21tb2RhdGlvbiBhbmQgdHJhaW4gdHJhdmVsLiBFbXBoYXNpcyB3YXMgcGxhY2VkIG9uIG1haW50YWluaW5nIHRlYW0gZHluYW1pY3MgZHVyaW5nIHRoaXMgcGxhbm5pbmcgcGhhc2UuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XG4gICAgICAgIDxwPlRoZSBwdWJsaWMgb3V0cmVhY2ggdGVhbSwgY29uc2lzdGluZyBvZiBMeWRpYSwgQXNhbCwgUGhpbGlwLCBLYXlhLCBhbmQgVmVyYSwgd2lsbCBmb2N1cyBvbiBzb2NpYWwgbWVkaWEgYW5kIG5ldHdvcmtpbmcgaW5pdGlhdGl2ZXMuIFRoZXkgYXJlIHBsYW5uaW5nIGFjdGl2aXRpZXMgc3VjaCBhcyBwb3N0Y2FyZCBhbmQgc3RpY2tlciBjYW1wYWlnbnMgYW5kIGFpbSB0byBvcmdhbml6ZSBhIE1pbmkgSmFtYm9yZWUgaW52b2x2aW5nIGFwcHJveGltYXRlbHkgMjUgdGVhbXMgZnJvbSBhY3Jvc3MgRXVyb3BlLCBhbG9uZyB3aXRoIGNvbnRyaWJ1dGlvbnMgdG8gbG9jYWwgcmFkaW8vbmV3c3BhcGVyIGVmZm9ydHMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlNwb25zb3Jpbmc8L2gyPlxuICAgICAgICA8cD5UaGUgc3BvbnNvcmluZyB0ZWFtLCBtYWRlIHVwIG9mIFZpbmNlbnQsIEx5ZGlhLCBBbm5hLCBOYW5lLCBEYXlhbiwgYW5kIElzYWJlbGwsIHdpbGwgZGV2ZWxvcCBhbiBhcHBsaWNhdGlvbiBib29rbGV0IG91dGxpbmluZyB3aGF0IGlHRU0gZW50YWlscyBmb3IgcG90ZW50aWFsIHNwb25zb3JzLiBUaGVpciB0YXNrcyBpbmNsdWRlIG5lZ290aWF0aW5nIGNvbnRyYWN0IHRlcm1zIGFuZCBwcmljaW5nIGNhdGVnb3JpZXMsIHdpdGggYW4gZW1waGFzaXMgb24gc3RhcnRpbmcgdG8gY29udGFjdCBzcG9uc29ycyBpbW1lZGlhdGVseS48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sIFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDEyXCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5CcmFpbnN0b3JtaW5nIHdpbGwgY29udGludWUgaW4gdGhlIHNhbWUgZ3JvdXBzLCB3aXRoIGVhY2ggZ3JvdXAgc2VsZWN0aW5nIHR3byB0b3BpY3MgdG8gcHJlc2VudCBhdCB0aGUgbmV4dCBtZWV0aW5nLiBBbnlvbmUgd2l0aG91dCBhY2Nlc3MgdG8gdGhlIG1lZXRpbmcgcm9vbSBzaG91bGQgZW1haWwgTHV0eiBXb2JiZSwgd2l0aCBKXHUwMEY2cm4gY29waWVkLCBmb3IgYXNzaXN0YW5jZS4gRGV2aWNlIGJvcnJvd2luZyBjYXJkcyBoYXZlIGJlZW4gZGlzdHJpYnV0ZWQsIGdyYW50aW5nIGFjY2VzcyB0byB0aGUgRGlnaXRhbCBMZWFybmluZyBMYWIsIGFuZCByZXF1ZXN0cyB0byB1c2UgZmFjaWxpdGllcyBsaWtlIHRoZSAzRCBwcmludGVyIHNob3VsZCBiZSBzZW50IHZpYSBlbWFpbC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+VGVhbTwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGlzIHBsYW5uaW5nIGEgd2Vla2VuZCBpbiBUaGUgSGFndWUsIGZvY3VzaW5nIG9uIHdvcmtzaG9wIGNvbnRlbnQgYW5kIHRoZSBwb3NzaWJpbGl0eSBvZiBob3N0aW5nIGEgd29ya3Nob3AgdGhlbXNlbHZlcy4gQ29vcmRpbmF0aW9uIHdpdGggdGhlIExlaWRlbiBhbmQgRGVsZnQgdGVhbXMgZm9yIGEgbWVldC11cCBhbmQgYSB2aXNpdCB0byB0aGUgcmVzZWFyY2ggY2VudGVyIGlzIHVuZGVyd2F5LCB3aXRoIGRpc2N1c3Npb25zIG5lZWRlZCBvbiBwYXJ0aWNpcGFudCBudW1iZXJzLCBpbmNsdWRpbmcgc3VwZXJ2aXNvcnMgYW5kIFBJcy4gQWRkaXRpb25hbGx5LCBhIG1lbWUgY2hhbm5lbCB3aWxsIGJlIGNyZWF0ZWQgdG8gc2hhcmUgbGFiLXJlbGF0ZWQgaHVtb3IuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XG4gICAgICAgIDxwPkEgcG9sbCB3aWxsIGJlIGRpc3RyaWJ1dGVkIHRvIGFzc2VzcyB0aGUgZmVhc2liaWxpdHkgb2YgdGhlIHBsYW5uZWQgdHJpcCB0byBQYXJpcyBmcm9tIE9jdG9iZXIgMjEgdG8gT2N0b2JlciAzMSwgYXNraW5nIGZvciBwYXJ0aWNpcGF0aW9uIGluIHRoZSBmdWxsIHRyaXAgb3IgcGFydCBvZiBpdC4gVGhlIHN1aXRhYmlsaXR5IG9mIEJpZWxlZmVsZCBmb3IgYSBtZWV0LXVwIHdpbGwgYmUgZXZhbHVhdGVkLCB3aXRoIGFzc2lzdGFuY2UgZnJvbSB0aGUgSGFtYnVyZy9GcmFua2Z1cnQgdGVhbXMgZm9yIHByb2dyYW0gYW5kIHNwZWFrZXIgb3JnYW5pemF0aW9uLiBKXHUwMEY2cm4gaGFzIGNvbnRhY3RzIGZvciBwb3RlbnRpYWwgc3BlYWtlcnMsIGFuZCB0aGUgbWVldC11cCBwbGFuIGlzIGluIGRldmVsb3BtZW50LCBwZW5kaW5nIG9mZmljaWFsIGFwcHJvdmFsLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UYXNrczwvaDI+XG4gICAgICAgIDxwPkFsbCBtZWV0aW5nIG1pbnV0ZXMgd2lsbCBiZSBtZXJnZWQgaW50byBhIHNpbmdsZSBXb3JkIGRvY3VtZW50IGZvciBjbGFyaXR5LiBBIHRlYW0gb2YgYXQgbGVhc3QgdGhyZWUgKENocmlzdGlhbiwgTmFuZSwgYW5kIExpc2EpIGlzIHRhc2tlZCB3aXRoIHNldHRpbmcgdXAgdGhlIEF0dHJpYnV0aW9uIEZvcm0gdG8gZG9jdW1lbnQgY29udHJpYnV0aW9ucyBhbmQgZGVsaXZlcmFibGVzLiBBbGwgbWVtYmVycyBhcmUgZW5jb3VyYWdlZCB0byBtb25pdG9yIHRoZSBjYWxlbmRhciBjcmVhdGVkIGJ5IEthaSBhbmQgYWRkIGFueSBpbXBvcnRhbnQgZGF0ZXMgYW5kIGRlYWRsaW5lcy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cbiAgICAgICAgPHA+QSB0b3VyIG9mIHRoZSBNYWtpbmcgTWVkaWEgTGFiIGlzIHNjaGVkdWxlZCBmb3IgVGh1cnNkYXksIE1hcmNoIDE0LCBhdCAxNzozMCwgd2l0aCBwb3RlbnRpYWwgY29sbGFib3JhdGlvbiB3aXRoIHRoZSBIYW1idXJnIGFuZCBGcmFua2Z1cnQgdGVhbXMgZm9yIGEgcm90YXRpbmctbG9jYXRpb24gbWVldC11cC4gQSB2b3RlIHdpbGwgYmUgaGVsZCByZWdhcmRpbmcgdGhlIG9yZ2FuaXphdGlvbiBvZiB0aGlzIHllYXIncyBtZWV0LXVwIGluIEJpZWxlZmVsZCwgYW5kIGEgcHJvZmVzc2lvbmFsIHRlYW0gcGhvdG8gaXMgcGxhbm5lZCwgd2l0aCBjb25zZW50IGFscmVhZHkgb2J0YWluZWQgZnJvbSBhbGwgcHJlc2VudCBtZW1iZXJzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cbiAgICAgICAgPHA+VXBjb21pbmcgZXZlbnRzIGluY2x1ZGUgdGhlIExhYlN1cHBseSBGYWlyIG9uIEFwcmlsIDI0IGFuZCBGYW1lTGFiLCB3aXRoIHByZWxpbWluYXJ5IHJvdW5kcyBvbiBBcHJpbCAxMSBhbmQgdGhlIGZpbmFscyBvbiBKdW5lIDEyIGluIEJpZWxlZmVsZC4gVGhlIEp1bmlvckphbSBpbiBNXHUwMEZDbnN0ZXIgaXMgaGlnaGxpZ2h0ZWQgYXMgYSBcIm1hbmRhdG9yeSBldmVudFwiIGZyb20gQXVndXN0IDE2IHRvIDE4LCBhbmQgcGxhbm5pbmcgZm9yIGF0dGVuZGFuY2UgYW5kIG9yZ2FuaXphdGlvbiBpcyBuZWVkZWQuIFRoZSBzcG9uc29yaW5nIHRlYW0gd2lsbCBtZWV0IHR3aWNlIGEgd2VlayBhcyBwbGFubmluZyBpcyBqdXN0IGJlZ2lubmluZy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+V2lraTwvaDI+XG4gICAgICAgIDxwPk1heGltaWxpYW4gZW1waGFzaXplZCB0aGUgbmVlZCBmb3IgZXhwZXJpZW5jZSB3aXRoIEhUTUwsIENTUywgYW5kIEphdmFTY3JpcHQgZm9yIGJ1aWxkaW5nIHRoZSBXaWtpIHBhZ2UsIGFuZCBoZSB3aWxsIG9yZ2FuaXplIGFuIGludHJvZHVjdG9yeSBjb3Vyc2UgdG8gZW5zdXJlIGV2ZXJ5b25lIGxlYXJucyB0aGUgYmFzaWNzIGJlZm9yZSB0aGUgV2lraSBGcmVlemUuIEhlIHdpbGwgYWxzbyBjb25maWd1cmUgc29mdHdhcmUgZm9yIGVycm9yIGRldGVjdGlvbiBhbmQgYXV0b2NvbXBsZXRlIGZ1bmN0aW9uYWxpdHksIGFuZCB3aWxsIGFkZHJlc3MgdGhlIHRpbWUgZGVsYXkgZm9yIFdpa2kgdXBkYXRlcy4gSW5zcGlyYXRpb24gY2FuIGJlIGRyYXduIGZyb20gcHJldmlvdXMgV2lraSBkZXNpZ25zLCB3aXRoIGEgZ29hbCB0byBlbmhhbmNlIGNvbXBldGl0aXZlbmVzcyBpbiB0aGUgaUdFTSBjb250ZXN0LjwvcD5cbiAgICAgICAgPC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwibWFyY2gxNFwiLCBcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gYnJhaW5zdG9ybWVkIHZhcmlvdXMgdG9waWNzIGZvciBwb3RlbnRpYWwgcHJvamVjdHMsIGluY2x1ZGluZyBDeXN0aWMgRmlicm9zaXMsIER1Y2hlbm5lIE11c2N1bGFyIER5c3Ryb3BoeSwgUmFwaWQgQW50aWdlbiBUZXN0LCBIdW50aW5ndG9uXHUyMDE5cyBEaXNlYXNlLCBQaGFnZSBUaGVyYXB5IGZvciB0aGUgR3V0LCBNYWduZXRpYyBNaWNyb3N3aW1tZXJzLCBhbmQgVG94aWMgQ3lhbm9iYWN0ZXJpYWwgQmxvb21zLiBFYWNoIHRlYW0gd2lsbCBwcmVwYXJlIGEgYnJpZWYgaW50cm9kdWN0aW9uIG9mIHRoZWlyIGFzc2lnbmVkIHRvcGljLCB3aXRoIGd1aWRlbGluZXMgZm9yIGEgMTAtMTUgbWludXRlIHByZXNlbnRhdGlvbiBjb3ZlcmluZyB0aGUgcHJvYmxlbSwgcHJvcG9zZWQgc29sdXRpb24sIGV4aXN0aW5nIHN0dWRpZXMsIGFuZCBwcm9qZWN0IGNoYWxsZW5nZXMuIFRoZSBnb2FsIGlzIHRvIGNvbXBsZXRlIHRoZSBwcm9qZWN0IG91dGxpbmUgYnkgTWFyY2ggMjEsIDIwMjQsIGluY29ycG9yYXRpbmcgdW5pdmVyc2l0eSByZXNvdXJjZXMgYW5kIG91dGxpbmluZyBwb3NzaWJsZSBzdWJwcm9qZWN0cy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+VGVhbTwvaDI+XG4gICAgICAgIDxwPlRoZSBhdmFpbGFiaWxpdHkgb2YgbGFiIGNvYXRzIHdhcyBjb25maXJtZWQgZm9yIGEgdW5pZm9ybSB0ZWFtIHBob3RvLCBlbnN1cmluZyBldmVyeW9uZSBpcyBwcmVwYXJlZCBmb3IgdGhlIG9jY2FzaW9uLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxuICAgICAgICA8cD5UaGUgcGxhbm5pbmcgZm9yIHRoZSBQYXJpcyB0cmlwIGlzIHVuZGVyd2F5LCB3aXRoIHRoZSB0ZWFtIG5hcnJvd2luZyBkb3duIGFjY29tbW9kYXRpb24gb3B0aW9ucy4gVGhyZWUgdG8gZm91ciBob3RlbCBjaG9pY2VzIHdpbGwgYmUgcHJlc2VudGVkIGluIHRoZSB1cGNvbWluZyBtZWV0aW5nIG9uIFR1ZXNkYXkuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDE5XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5UaGUgdGVhbSBkaXNjdXNzZWQgdGhlIGltcGxlbWVudGF0aW9uIG9mIGEgcHJvdG9jb2wgc3RydWN0dXJlLCBlbXBoYXNpemluZyB0aGUgbmVlZCBmb3IgYW4gYWdlbmRhIHRvIGJlIGludHJvZHVjZWQgYWhlYWQgb2YgdGltZS4gUGFydGljaXBhbnRzIGNhbiBhZGQgdG9waWNzIHRvIGJlIGRpc2N1c3NlZCBpbiB0aGUgdXBjb21pbmcgbWVldGluZ3MgZGlyZWN0bHkgaW4gdGhlIG1pbnV0ZXMuIEFkZGl0aW9uYWxseSwgdG9waWMgcHJlc2VudGF0aW9ucyBhcmUgc2NoZWR1bGVkIGZvciBNYXJjaCAyNiwgYWltaW5nIHRvIGZvbGxvdyB0aGUgaUdFTSBwcmVzZW50YXRpb24gc3R5bGUgdG8gZWZmZWN0aXZlbHkgcGl0Y2ggaWRlYXMgYW5kIHByYWN0aWNlIGZvciBmdXR1cmUgcHJlc2VudGF0aW9ucy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cbiAgICAgICAgPHA+S2F0aGxlZW4gcHJlc2VudGVkIGZvdXIgYWNjb21tb2RhdGlvbiBvcHRpb25zIGZvciB0aGUgUGFyaXMgdHJpcCwgd2hpY2ggaGF2ZSBiZWVuIHVwbG9hZGVkIHRvIFRlYW1zIGZvciByZXZpZXcuIE9wdGlvbnMgcmFuZ2UgZnJvbSBzZWxmLWNhdGVyaW5nIGFwYXJ0bWVudHMgdG8gYSBob3N0ZWwsIGVhY2ggdmFyeWluZyBpbiBjb3N0LCBhdG1vc3BoZXJlLCBhbmQgcHJveGltaXR5IHRvIHRoZSBldmVudCB2ZW51ZS4gQSBwb2xsIGZvciBhY2NvbW1vZGF0aW9uIHByZWZlcmVuY2VzIHdpbGwgY2xvc2Ugb24gTWFyY2ggMjEsIDIwMjQsIGF0IDYgcC5tLiBvbiBXaGF0c0FwcCwgYWZ0ZXIgd2hpY2ggYWRkaXRpb25hbCBib29raW5nIGRldGFpbHMgd2lsbCBiZSBwcm92aWRlZC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+U3BvbnNvcmluZzwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGlzIGNvb3JkaW5hdGluZyBhdHRlbmRhbmNlIGFuZCBvcmdhbml6YXRpb24gZm9yIHRoZSBMYWItU3VwcGx5IEZhaXIgYW5kIG90aGVyIHJlbGF0ZWQgZXZlbnRzLiBUaGlzIGludGVybmFsIGNvb3JkaW5hdGlvbiBhaW1zIHRvIGVuc3VyZSBlZmZlY3RpdmUgcGFydGljaXBhdGlvbiBhbW9uZyBpbnRlcmVzdGVkIG1lbWJlcnMuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDIxXCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+VGhlIEhhbWJ1cmcgaUdFTSB0ZWFtIGlzIHNjaGVkdWxlZCBmb3IgYSByZXRyZWF0IGJ1dCBpcyBleHBlY3RlZCB0byBoYXZlIHRpbWUgYXZhaWxhYmxlIGZvciBhIG1lZXQtdXAgb24gRnJpZGF5LjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxuICAgICAgICA8cD5EdXJpbmcgdGhlIG1lZXRpbmcsIHRoZSB0ZWFtIGNvbmZpcm1lZCB0aGF0IHRoZSBBcGFydGhvdGVsIHdhcyB0aGUgcHJlZmVycmVkIGFjY29tbW9kYXRpb24gb3B0aW9uIGZvciB0aGUgUGFyaXMgdHJpcC4gSG93ZXZlciwgdGhlcmUgYXJlIGNoYWxsZW5nZXMgd2l0aCBib29raW5nLCBhcyBhY2NvbW1vZGF0aW9ucyBjYW5ub3QgYmUgcmVzZXJ2ZWQgdmlhIEJvb2tpbmcuY29tLCBhbmQgdGhlIGluZGl2aWR1YWwgYm9va2luZyBzaXRlcyBzaG93IGluc3VmZmljaWVudCBhdmFpbGFiaWxpdHkuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDI3XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8aDM+Rmlyc3QgUHJlc2VudGF0aW9uOiBSZWQgQmlvdGVjaG5vbG9neSAtIER1Y2hlbm5lIE11c2N1bGFyIER5c3Ryb3BoeTwvaDM+XG4gICAgICAgIDxwPkR1Y2hlbm5lIG11c2N1bGFyIGR5c3Ryb3BoeSBpcyBhIGdlbmV0aWMgZGlzZWFzZSBjaGFyYWN0ZXJpemVkIGJ5IG11c2NsZSB0aXNzdWUgcmVwbGFjZW1lbnQuIFNldmVyYWwgY3VyZSBhcHByb2FjaGVzIHdlcmUgZGlzY3Vzc2VkLCBpbmNsdWRpbmcgZXhvbiBza2lwcGluZyBhbmQgdXNpbmcgQUFWIHZlY3RvcnMsIGJ1dCBjdXJyZW50IHRyZWF0bWVudHMgYXJlIGxpbWl0ZWQuIFF1ZXN0aW9ucyByYWlzZWQgaW5jbHVkZWQgdGhlIGludGVncmF0aW9uIG9mIGxvbmcgRE5BIGludG8gY2VsbHMgYW5kIHBvdGVudGlhbCBjb21tdW5pdHkgZW5nYWdlbWVudCBzdHJhdGVnaWVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5TZWNvbmQgUHJlc2VudGF0aW9uOiBNYWduZXRpYyBNaWNyb3N3aW1tZXJzIGZvciBUYXJnZXRlZCBDYW5jZXIgVGhlcmFweTwvaDM+XG4gICAgICAgIDxwPlRoaXMgcHJlc2VudGF0aW9uIGZvY3VzZWQgb24gdXNpbmcgYmlvZGVncmFkYWJsZSBhbGdhZSBhcyBjYXJyaWVycyBmb3Igbm9uLWludmFzaXZlIGRydWcgZGVsaXZlcnkgdGFyZ2V0aW5nIG92YXJpYW4gY2FuY2VyLiBUaGUgbWV0aG9kIGludm9sdmVzIG1hZ25ldGl6aW5nIG1pY3Jvc3dpbW1lcnMgdG8gZW5oYW5jZSBtb2JpbGl0eSBhbmQgZGVsaXZlciBkcnVncyB0byBjYW5jZXIgY2VsbHMsIGVuc3VyaW5nIG1pbmltYWwgZGFtYWdlIHRvIGhlYWx0aHkgdGlzc3VlLiBRdWVzdGlvbnMgaW5jbHVkZWQgY29uY2VybnMgYWJvdXQgYmlvZGVncmFkYWJpbGl0eSB3aXRoIG1hZ25ldGljIHBhcnRpY2xlcyBhbmQgdGhlIGNoYWxsZW5nZXMgb2YgdGFyZ2V0aW5nIHNwZWNpZmljIGFyZWFzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5UaGlyZCBQcmVzZW50YXRpb246IEN5YW5vYmFjdGVyaWEgQmxvb20gUHJldmVudGlvbiB3aXRoIEFsZ2FlPC9oMz5cbiAgICAgICAgPHA+Q3lhbm9iYWN0ZXJpYSBibG9vbXMgcG9zZSBzaWduaWZpY2FudCBlY29sb2dpY2FsIHRocmVhdHMsIGFuZCBjdXJyZW50IGNvbnRyb2wgbWV0aG9kcyBhcmUgaW5hZGVxdWF0ZS4gVGhlIHByb3Bvc2VkIHNvbHV0aW9uIGludm9sdmVzIHVzaW5nIHBlcHRpZGVzIGZyb20gYWxnYWUgdG8gcHJldmVudCBibG9vbXMgd2hpbGUgcHJlc2VydmluZyBlY29zeXN0ZW1zLiBLZXkgcGF0aHdheXMgYW5kIHRhcmdldHMgd2VyZSBpZGVudGlmaWVkLCBlbXBoYXNpemluZyB0aGUgbmVlZCBmb3IgY29uc2VydmF0aW9uIGFuZCBiaW9kaXZlcnNpdHkuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgzPkZvdXJ0aCBQcmVzZW50YXRpb246IEN5c3RpYyBGaWJyb3NpczwvaDM+XG4gICAgICAgIDxwPkN5c3RpYyBmaWJyb3NpcyBhZmZlY3RzIGEgc2lnbmlmaWNhbnQgbnVtYmVyIG9mIGluZGl2aWR1YWxzIGFuZCBpcyBkaWFnbm9zZWQgdGhyb3VnaCBzd2VhdCB0ZXN0cyBhbmQgZ2VuZXRpYyBzY3JlZW5pbmcuIEN1cnJlbnQgdHJlYXRtZW50cyBmb2N1cyBvbiBtYW5hZ2luZyBzeW1wdG9tcywgYnV0IHRoZSBnb2FsIGlzIHRvIGRldmVsb3AgbG9uZy10ZXJtIGN1cmVzIGJ5IHRhcmdldGluZyB0aGUgZ2VuZXRpYyBiYXNpcyBvZiB0aGUgZGlzb3JkZXIuIFRoZSB0ZWFtIGlzIGNvbGxhYm9yYXRpbmcgd2l0aCB2YXJpb3VzIHNwZWNpYWxpc3RzIGFuZCBvcmdhbml6YXRpb25zIHRvIGRldmVsb3AgZWR1Y2F0aW9uYWwgbWF0ZXJpYWxzIGFuZCBvcHRpbWl6ZSB0cmVhdG1lbnQgc3RyYXRlZ2llcy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDM+RnVydGhlciBQcmVzZW50YXRpb25zPC9oMz5cbiAgICAgICAgPHA+RGlzY3Vzc2lvbnMgaW5jbHVkZWQgdGhlIHBvdGVudGlhbCBvZiBwaGFnZXMgYXMgYW4gYWx0ZXJuYXRpdmUgdG8gYW50aWJpb3RpY3MgYW5kIGZ1dHVyZSBwcmVzZW50YXRpb25zIG9uIHJlbGF0ZWQgdG9waWNzLjwvcD5cbiAgICAgICAgPC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwibWFyY2gyOVwiLCBcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cbiAgICAgICAgPGgzPlZvdGUgZm9yIFRvcGljPC9oMz5cbiAgICAgICAgPHA+RWFjaCBtZW1iZXIgd2FzIGFsbG93ZWQgb25lIHZvdGUgZm9yIGEgcHJvamVjdCB0b3BpYywgd2l0aCB0aGUgZmlyc3Qgdm90ZSBkdWUgYnkgbWlkbmlnaHQuIFRoZSB0b3AgdGhyZWUgcmVzdWx0cyB3ZXJlOiBNaWNyb3N3aW1tZXJzIHdpdGggNSB2b3RlcywgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpIHdpdGggNCB2b3RlcywgYW5kIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGFsc28gd2l0aCA0IHZvdGVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5Ub3BpYyBQcmVzZW50YXRpb25zPC9oMz5cbiAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbnMgd2VyZSBnZW5lcmFsbHkgd2VsbC1yZWNlaXZlZCwgdGhvdWdoIGltcHJvdmVtZW50cyBhcmUgc3RpbGwgbmVlZGVkLiBBIHNlbWluYXIgd2lsbCBwcm92aWRlIGEgYnJpZWYgb3ZlcnZpZXcgYW5kIGRpc2N1c3MgbGltaXRhdGlvbnMsIGNoYWxsZW5nZXMsIGFuZCB0aGUgcHJvcyBhbmQgY29ucyBvZiBlYWNoIHRvcGljLCB3aXRoIG1vcmUgZGV0YWlscyBhdmFpbGFibGUgaW4gdGhlIHByZXNlbnRhdGlvbnMgYW5kIG1lZXRpbmcgbWludXRlcyBmcm9tIE1hcmNoIDI2LjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+QSByZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdGVhbTogRG9uJ3QgZm9yZ2V0IHlvdXIgdG93ZWwhPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDJcIiwgXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XG5cbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XG4gICAgICAgIDxoMz5Wb3RlIGZvciBUb3BpYzwvaDM+XG4gICAgICAgIDxwPkVhY2ggbWVtYmVyIGhhcyBvbmUgdm90ZSBmb3IgYSBwcm9qZWN0IHRvcGljLCB3aXRoIHRoZSBmaXJzdCB2b3RlIGR1ZSBieSBtaWRuaWdodC4gVGhlIHRvcCB0aHJlZSByZXN1bHRzIGZyb20gdGhlIHZvdGluZyB3ZXJlOiBNaWNyb3N3aW1tZXJzIHdpdGggNSB2b3RlcywgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpIHdpdGggNCB2b3RlcywgYW5kIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGFsc28gd2l0aCA0IHZvdGVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5Ub3BpYyBQcmVzZW50YXRpb25zPC9oMz5cbiAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbnMgd2VyZSBnZW5lcmFsbHkgd2VsbC1yZWNlaXZlZCwgdGhvdWdoIHRoZXJlIGlzIHN0aWxsIHJvb20gZm9yIGltcHJvdmVtZW50LiBBIHByZXNlbnRhdGlvbiBzZW1pbmFyIGlzIHBsYW5uZWQgdG8gcHJvdmlkZSBhbiBvdmVydmlldyBhbmQgZmFjaWxpdGF0ZSBkaXNjdXNzaW9ucyBvbiB0aGUgbGltaXRhdGlvbnMsIGNoYWxsZW5nZXMsIGFuZCBwcm9zIGFuZCBjb25zIG9mIGVhY2ggdG9waWMsIHdpdGggbW9yZSBkZXRhaWxzIGF2YWlsYWJsZSBpbiB0aGUgbWVldGluZyBtaW51dGVzIGZyb20gTWFyY2ggMjYuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlRlYW08L2gyPlxuICAgICAgICA8cD5SZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdGVhbTogRG9uXHUyMDE5dCBmb3JnZXQgeW91ciB0b3dlbCE8L3A+XG4gICAgICAgIFxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDRcIiwgXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XG5cbiAgICAgICAgPGgyPlVyZ2VudDwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGhhcyBkZWNpZGVkIHRvIHB1cnN1ZSBhIHRoZXJhcHkgdG9waWMgaW5zdGVhZCBvZiBmb2N1c2luZyBvbiBjeWFub2JhY3RlcmlhLiBBbW9uZyB0aGUgb3B0aW9ucywgQ3lzdGljIEZpYnJvc2lzIChDRikgd2FzIHNlbGVjdGVkIG92ZXIgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+QSByZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdHJpcDogRGVwYXJ0dXJlIGlzIHNjaGVkdWxlZCBmb3IgRnJpZGF5IGF0IDggQU0uPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlRhc2tzPC9oMj5cbiAgICAgICAgPHA+QWxsIG1lbWJlcnMgYXJlIHJlcXVpcmVkIHRvIHNhdmUgdGhlIHBhcGVycyB0aGV5IGhhdmUgcmVhZCBpbiBab3Rlcm8gZHVyaW5nIHRoZWlyIHNlbGYtc3R1ZHkgdGltZS48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcImFwcmlsNlwiLCBcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgdGFza2VkIHdpdGggc2VhcmNoaW5nIFB1Yk1lZCBmb3IgcmV2aWV3cyBvbiBDeXN0aWMgRmlicm9zaXMgKENGKSBmcm9tIHRoZSBsYXN0IHR3byB5ZWFycyB0byBpZGVudGlmeSB1bmV4cGxvcmVkIHRoZXJhcGV1dGljIG5pY2hlcyBhbmQgZm9ybXVsYXRlIGNsZWFyIGdvYWxzLiBBIHN5c3RlbWljIGFwcHJvYWNoIHVzaW5nIEFBVi1iYXNlZCBzdHJhdGVnaWVzIGFuZCBvcmdhbi1zcGVjaWZpYyBhcHByb2FjaGVzIGlzIGJlaW5nIGNvbnNpZGVyZWQuIEFkZGl0aW9uYWxseSwgc3RyYXRlZ2llcyBmb3IgcmVhZGluZyBwYXBlcnMgaW5jbHVkZSBzdGFydGluZyB3aXRoIHRoZSByZXN1bHRzIHNlY3Rpb24gdG8gZGV0ZXJtaW5lIHRoZWlyIHZhbHVlIGJlZm9yZSBkZWx2aW5nIGludG8gdGhlIGRpc2N1c3Npb24uPC9wPlxuICAgICAgICA8cD5Qcm9qZWN0IGNvbmNlcHQgaWRlYXMgZGlzY3Vzc2VkIGluY2x1ZGUgZXBpZ2Vub21lIGVkaXRpbmcgd2l0aCBhIG1vZHVsYXIgdG9vbGtpdCBhbmQgdGhlIGFwcGxpY2F0aW9uIG9mIHNtYWxsZXIgQ2FzIHZhcmlhbnRzIHRvIGVuaGFuY2UgZGVsaXZlcnkgYW5kIGZhY2lsaXRhdGUgbnVjbGVhciBlbnRyeS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cbiAgICAgICAgPHA+QSBzY3JlZW5pbmcgZXZlbnQgZm9yIHRoZSBtb3ZpZSBcIkZpdmUgRmVldCBBcGFydCxcIiB3aGljaCBmb2N1c2VzIG9uIEN5c3RpYyBGaWJyb3Npcywgd2lsbCBiZSBvcmdhbml6ZWQsIGFsb25nIHdpdGggcHJvdmlkaW5nIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdG8gdGhlIGF1ZGllbmNlLiBQaGlsbGlwIHdpbGwgY29vcmRpbmF0ZSB3aXRoIHRoZSB1bml2ZXJzaXR5IGNpbmVtYSB0byBhcnJhbmdlIHRoZSBldmVudC48L3A+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGlzIGVuY291cmFnZWQgdG8gcGFydGljaXBhdGUgaW4gTVVLT21vdmUsIGEgQ3lzdGljIEZpYnJvc2lzIGF3YXJlbmVzcyBpbml0aWF0aXZlIGluIE1heSwgaW52b2x2aW5nIGEgc3BvcnQgZXZlbnQuIElzYWJlbGwgd2lsbCByZWdpc3RlciB0aGUgdGVhbSwgYW5kIHByb21vdGlvbmFsIGFjdGl2aXRpZXMgb24gc29jaWFsIG1lZGlhLCBpbmNsdWRpbmcgYSB1bmlxdWUgaGFzaHRhZywgd2lsbCBiZSBpbXBsZW1lbnRlZCB0byBpbmNyZWFzZSBhd2FyZW5lc3MgYW5kIHBhcnRpY2lwYXRpb24uPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPldldCBMYWI8L2gyPlxuICAgICAgICA8cD5TdWItdGVhbXMgYXJlIGV4cGVjdGVkIHRvIHByb3ZpZGUgdXBkYXRlcyBldmVyeSAzLTQgd2Vla3MgcmVnYXJkaW5nIGNlbGwgYWNxdWlzaXRpb24gZm9yIHRoZSBwcm9qZWN0LCB3aXRoIGEgZm9jdXMgb24gb2J0YWluaW5nIGhlYWx0aHkgYW5kIHBhdGllbnQtZGVyaXZlZCBjZWxsIGxpbmVzLiBWZXJhIGNvbmZpcm1lZCB0aGF0IHdpdGggYSBzYWZldHkgZm9ybSwgdGhlIHVzZSBvZiB0aGVpciBvd24gY2VsbHMgaXMgcG9zc2libGUuIFByZXBhcmF0aW9ucyBmb3IgdGhlIG5ldyBsYWIgaW5jbHVkZSBhc3Nlc3NpbmcgZXF1aXBtZW50IGFuZCBjcmVhdGluZyBhIHN0YWZmaW5nIHBsYW4gdG8gZW5zdXJlIGRhaWx5IGNvdmVyYWdlLjwvcD5cbiAgICAgICAgPHA+RWZmZWN0aXZlIGNvbW11bmljYXRpb24gYW5kIG9yZ2FuaXphdGlvbiBhcmUgZW1waGFzaXplZCBmb3IgbGFiIHdvcmssIHdpdGggcGxhbnMgdG8gZXN0YWJsaXNoIGEgc2hpZnQgc2NoZWR1bGUgZm9yIHRlYW0gbWVtYmVycy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+Q3JlYXRpdml0eTwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIG1lbWJlcnMgYXNzaWduZWQgdG8gcHJvbW90aW9uYWwgdGFza3MgaW5jbHVkZSBQaGlsaXAsIE1pY2hhZWwsIFZlcmEsIExpc2EsIExpbGlhbmEsIElzYWJlbGwsIGFuZCBBc2FsLiBUaGV5IHdpbGwgZm9jdXMgb24gZGV2ZWxvcGluZyBwcm9tb3Rpb25hbCBtYXRlcmlhbHMsIGluY2x1ZGluZyBmbHllcnMgYW5kIGxvZ28gZGVzaWduLCB0byBlbmhhbmNlIHRlYW0gdmlzaWJpbGl0eS48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMTFcIiwgXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XG5cbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGRpc2N1c3NlZCB2YXJpb3VzIHByb2plY3QgaWRlYXMgcmVsYXRlZCB0byBhY2Nlc3MgdG8gb29jeXRlcywgZW1waGFzaXppbmcgZ2VuZSBjb3JyZWN0aW9uIGFuZCBwb3RlbnRpYWwgc3RyYXRlZ2llcyBzdWNoIGFzIHVzaW5nIHRyYW5zcG9zYXNlIGZvciBnZW5vbWljIGludGVncmF0aW9uIHdpdGhvdXQgY3V0dGluZy4gS2V5IGNvbnNpZGVyYXRpb25zIGluY2x1ZGUgZXhwbG9yaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpIGZvciBsdW5nIGRlbGl2ZXJ5IGFuZCBhZGRyZXNzaW5nIHRoZSBwYWNrYWdpbmcgbGltaXRhdGlvbnMgb2YgQUFWLiBUaGUgdGVhbSBhaW1zIHRvIHJlYWQgbW9yZSBhYm91dCBDUklTUFIgYW5kIHJlbGV2YW50IGxpdGVyYXR1cmUsIGFuZCBwb3NzaWJseSBjb25zdWx0IGEgZ2VuZXRpYyBjb3Vuc2VsaW5nIGNlbnRlciBmb3IgZ3VpZGFuY2Ugb24gaW50ZXJ2ZW50aW9uIHN0cmF0ZWdpZXMuPC9wPlxuICAgICAgICA8cD5BIHByb29mIG9mIGNvbmNlcHQgZXhwZXJpbWVudCBpcyBlc3NlbnRpYWwgdG8gdmFsaWRhdGUgdGhlIHByb3Bvc2VkIGlkZWFzLCBpbmNsdWRpbmcgdGhlIHBvdGVudGlhbCB1c2Ugb2YgYSBtdWx0aS1vcmdhbiBjaGlwIGluIGNvbGxhYm9yYXRpb24gd2l0aCBhIHJlc2VhcmNoIGVudGl0eS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SHVtYW4gUHJhY3RpY2VzPC9oMj5cbiAgICAgICAgPHA+TWF4IHNoYXJlZCBpbnNpZ2h0cyBhYm91dCBlc3NlbnRpYWwgbWVkaWNhdGlvbnMgZm9yIEN5c3RpYyBGaWJyb3NpcyAoQ0YpLCBpbmNsdWRpbmcgaW5kaXZpZHVhbGl6ZWQgdHJlYXRtZW50cyBsaWtlIEtyZW9uIGFuZCBPcmthbWJpLiBLcmVvbiBhaWRzIGRpZ2VzdGlvbiBhbmQgaXMgYWRhcHRlZCBiYXNlZCBvbiBmYXQgY29udGVudCBpbiBtZWFscywgd2hpbGUgT3JrYW1iaSBpcyBhIHNpZ25pZmljYW50IG1lZGljYXRpb24gc3BlY2lmaWMgdG8gY2VydGFpbiBtdXRhdGlvbnMsIGFsdGhvdWdoIGl0IGNvbWVzIHdpdGggYSBoaWdoIGNvc3QuIFRoZSBkaXNjdXNzaW9uIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGRpYWdub3NpcyBhZ2UgYW5kIHRhcmdldGVkIHRyZWF0bWVudHMsIGFuZCBzdWdnZXN0ZWQgY3JlYXRpbmcgaW5mb3JtYXRpb25hbCBtYXRlcmlhbHMgZm9yIGhlYWx0aGNhcmUgcHJvZmVzc2lvbmFscy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+Q3JlYXRpdml0eTwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIHJldmlld2VkIHRoZSBwcmVzZW50YXRpb24gb2YgdGhlIGNvbG9yIHNjaGVtZSBhbmQgZGlzY3Vzc2VkIHRlYW0gcGhvdG9zIGFzIHBhcnQgb2YgdGhlaXIgcHJvbW90aW9uYWwgZWZmb3J0cy48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMTZcIiwgXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XG5cbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XG4gICAgICAgIDxwPlRoZSBCRkggTWVldC1VcCB3ZWJzaXRlIGlzIG5vdyBsaXZlLCBmZWF0dXJpbmcgZGV0YWlscyBvbiB0aGUgbG9jYXRpb24sIHByb2dyYW0sIHJlZ2lzdHJhdGlvbiwgYW5kIHByaWNpbmcuIFJlZ2lzdHJhdGlvbiBpcyBjdXJyZW50bHkgb3BlbiwgYW5kIGFsbCB0ZWFtIG1lbWJlcnMgYXJlIGVuY291cmFnZWQgdG8gc3VwcG9ydCB0aGUgSW5zdGFncmFtIGNoYW5uZWwuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPk1lY2hhbmlzbTwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGlzIGZvY3VzaW5nIG9uIFByaW1lIEVkaXRpbmcgYXMgdGhlIG1haW4gaWRlYSwgYnV0IGZ1cnRoZXIgZGV0YWlscyBuZWVkIHRvIGJlIGRldmVsb3BlZCB0byByZWZpbmUgdGhpcyBhcHByb2FjaC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+RGVsaXZlcnk8L2gyPlxuICAgICAgICA8cD5WYXJpb3VzIGRlbGl2ZXJ5IG1ldGhvZHMgd2VyZSBicmFpbnN0b3JtZWQsIGluY2x1ZGluZyBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSwgd2hpY2ggYXJlIGNvbnNpZGVyZWQgYSB2aWFibGUgb3B0aW9uLCBhbHRob3VnaCB0aGV5IHJlcXVpcmUgbW9yZSBlbGFib3JhdGlvbi4gQWRlbm8tQXNzb2NpYXRlZCBWaXJ1cyAoQUFWKSBkZWxpdmVyeSBoYXMgbW9yZSBhdmFpbGFibGUgbGl0ZXJhdHVyZSwgZXNwZWNpYWxseSBmb3Igb29jeXRlcywgYnV0IHJlbWFpbnMgdW5kZXJleHBsb3JlZC4gRW51Y2xlYXRlZCBzcGVybSBjZWxscyB3ZXJlIGFsc28gZGlzY3Vzc2VkIGFzIGEgbm9uLWludmFzaXZlIGFwcHJvYWNoLCB3aXRoIHBvdGVudGlhbCBmb3IgdGFyZ2V0aW5nIG9vY3l0ZXMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XG4gICAgICAgIDxwPkZvciBNdWtvTU9WRSwgcG9zdGVycyBoYXZlIGJlZW4gcHJlcGFyZWQgYW5kIHBob3RvcyB0YWtlbjsgSXNhYmVsbCBpcyBhcHBseWluZyBmb3IgcGVybWlzc2lvbiB0byBkaXNwbGF5IHRoZSBwb3N0ZXJzIGluIHRoZSBjaXR5IGZvciBhIGZlZSBvZiBcdTIwQUMxMiwgd2hpbGUgYWRkaXRpb25hbCBwb3N0ZXJzIHdpbGwgYmUgb3JkZXJlZC4gSG93ZXZlciwgaGFuZ2luZyBwb3N0ZXJzIGluIHRyYWlucyB3YXMgZGVlbWVkIHRvbyBleHBlbnNpdmUuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDE4XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+QSByZW1pbmRlciB3YXMgaXNzdWVkIGZvciBldmVyeW9uZSB0byBjb21wbGV0ZSB0aGUgQXR0cmlidXRpb24gRm9ybSwgd2hpY2ggdHJhY2tzIGNvbnRyaWJ1dGlvbnMgYW5kIHBhcnRpY2lwYXRpb24uIFRoZSBkb2N1bWVudCBpcyBhdmFpbGFibGUgb24gVGVhbXMgdW5kZXIgR2VuZXJhbCAmZ3Q7IERvY3VtZW50cyAmZ3Q7IEV2ZXJ5dGhpbmcgaUdFTSAmZ3Q7IEF0dHJpYnV0aW9uLiBBZGRpdGlvbmFsbHksIHRoZSBpR0VNIERpc3RyaWJ1dGlvbiBLaXQgd2FzIG9wZW5lZCB0byBjaGVjayBhdmFpbGFibGUgbWF0ZXJpYWxzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxuICAgICAgICA8cD5QbGFucyBmb3IgdGhlIEV1cm9wZWFuIE1lZXQtVXAgaW5jbHVkZSBjcmVhdGluZyBhIGxpc3Qgb2Ygc25hY2tzIHdpdGggbmFtZXMsIGRhdGVzLCB0eXBlcywgYW5kIHF1YW50aXRpZXMgdG8gZW5zdXJlIGFkZXF1YXRlIHByZXBhcmF0aW9uLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5GaW5kaW5ncyB3ZXJlIHByZXNlbnRlZCwgaGlnaGxpZ2h0aW5nIGEgcHJvb2Ygb2YgY29uY2VwdCB1c2luZyBhbiBleGlzdGluZyBwcmltZSBlZGl0aW5nIHN5c3RlbSB0byB0YXJnZXQgdGhlIGZpdmUgbW9zdCBjb21tb24gbXV0YXRpb25zIGluIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLiBPcHRpbWl6YXRpb24gZWZmb3J0cyBpbnZvbHZlIGEgbW9kaWZpZWQgQ2FzMTJhIGZvciBoaWdoZXIgc3BlY2lmaWNpdHkgYW5kIGEgbmV3IGVuenltZSBjYWxsZWQgRmFuem9yLCB3aGljaCByZXF1aXJlcyBlbmdpbmVlcmluZyBmb3IgcHJlY2lzZSBjdXRzLiBBIGRlYmF0ZSBvbiB0YXJnZXRpbmcgb29jeXRlcyB2ZXJzdXMgbHVuZ3Mgd2FzIGhlbGQsIHdpdGggcGxhbnMgZm9yIHBhcmFsbGVsIHdvcmsgb24gYm90aCBhcHByb2FjaGVzIGFuZCBzdWdnZXN0aW9ucyBmb3IgZWZmaWNpZW50IGxhYiBjb25jZXB0IGRlc2lnbnMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkRlbGl2ZXJ5PC9oMj5cbiAgICAgICAgPHA+VHdvIG1haW4gZGVsaXZlcnkgcG9zc2liaWxpdGllcyB3ZXJlIGRpc2N1c3NlZDogYWVyb3NvbGl6aW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCB3aGljaCBmYWNlIHN0YWJpbGl0eSBpc3N1ZXMgYW5kIGx1bmcgZGVmZW5zZSBtZWNoYW5pc21zLCBhbmQgaW50cmF2ZW5vdXMgZGVsaXZlcnksIHdoaWNoIG5lY2Vzc2l0YXRlcyByZWd1bGFyIGRvY3RvciB2aXNpdHMgZHVlIHRvIHRoZSBsaXZlciBhY3RpbmcgYXMgYSBmaWx0ZXIuIFJlc2VhcmNoIG9uIExOUCBwcm9kdWN0aW9uIGFuZCBjZWxsdWxhciB0YXJnZXRpbmcsIHBhcnRpY3VsYXJseSBvZiBiYXNhbCBjZWxscyBvciBlcnl0aHJvY3l0ZXMsIHdhcyBhbHNvIGhpZ2hsaWdodGVkLiBUaGUgZmVhc2liaWxpdHkgb2YgYSBtb2RlbCBzeXN0ZW0gdG8gZW5zdXJlIHRoZSBkcnVnJ3MgZWZmaWNhY3kgaW4gcmVhY2hpbmcgdGhlIHRhcmdldCBjZWxscyB3YXMgY29uc2lkZXJlZCBhZHZhbnRhZ2VvdXMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XG4gICAgICAgIDxwPkZvciB0aGUgTXVrb01PVkUgaW5pdGlhdGl2ZSwgcGxhbnMgdG8gaGFuZyBwb3N0ZXJzIGluIEJpZWxlZmVsZCBpbmNsdWRlIGNyZWF0aW5nIGEgbWFwIGZvciBkZXNpZ25hdGVkIHJlc3BvbnNpYmlsaXRpZXMgYW5kIGVuc3VyaW5nIHRoZXkgYXJlIHJlbW92ZWQgdGhlIGRheSBhZnRlciB0aGUgZXZlbnQuIEFkZGl0aW9uYWxseSwgYSBmbHllciBkaXN0cmlidXRpb24gcGxhbiB3YXMgcHJvcG9zZWQsIGludm9sdmluZyB0aHJlZSB0ZWFtIG1lbWJlcnMgcGVyIGRheSB0byBkaXN0cmlidXRlIGZseWVycyBpbiB0aGUgY2FmZXRlcmlhLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cbiAgICAgICAgPHA+QSB0YWJsZSB3YXMgY3JlYXRlZCB0byBvcmdhbml6ZSBwYXJ0aWNpcGF0aW9uIGZvciBib3RoIHRoZSBIYW5ub3ZlciBGYWlyIGFuZCB0aGUgTGFiLVN1cHBseSBGYWlyLCBlbnN1cmluZyBlZmZlY3RpdmUgcGxhbm5pbmcgYW5kIHJlc291cmNlIGFsbG9jYXRpb24uPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDIzXCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5UaGUgZm9jdXMgaXMgb24gcHJpbWUgZWRpdGluZyB1c2luZyBhIGZ1c2lvbiBwcm90ZWluIHRoYXQgY29tYmluZXMgQ2FzIGFuZCBSTkEgbW9sZWN1bGVzLCB3aXRoIHBsYW5zIHRvIHJlcGxhY2UgdGhlIENhcyBwcm90ZWluIHdpdGggdGhlIEZhbnpvciBwcm90ZWluLiBJdCBpcyBlc3NlbnRpYWwgdG8gZGV0ZXJtaW5lIHRoZSBleGFjdCB0YXJnZXQgYW5kIG9yZ2FuaXplIHRoZSBuZWNlc3Nhcnkgc2VxdWVuY2VzLCBwb3RlbnRpYWxseSByZXF1aXJpbmcgY2xvbmluZy4gQXR0ZW50aW9uIG11c3QgYmUgcGFpZCB0byB0aGUgZGV2ZWxvcG1lbnQgY3ljbGUsIGFzIHRoaXMgd2lsbCBiZSBzY3J1dGluaXplZCBieSBqdWRnZXMsIHBhcnRpY3VsYXJseSByZWdhcmRpbmcgdGhlIFdpa2kgcHJlc2VudGF0aW9uLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5EZWxpdmVyeTwvaDI+XG4gICAgICAgIDxwPkRpc2N1c3Npb25zIGhpZ2hsaWdodGVkIFJOQSBhcyB0aGUgY2FyZ28sIHdpdGggcG90ZW50aWFsIGNlbGwgdGFyZ2V0cyBpbmNsdWRpbmcgaW9ub2N5dGVzIGFuZCBjbHViIGNlbGxzLCBhcyBiYXNhbCBjZWxscyBhcmUgdG9vIGRlZXAtc2VhdGVkLiBOTEQxLCB3aGljaCBjb250YWlucyBQRUcgZm9yIHN0YWJpbGl0eSwgZmFjZXMgdHJhbnNwb3J0YXRpb24gY2hhbGxlbmdlcyBkdWUgdG8gaXRzIGxpbWl0ZWQgc2hlbGYgbGlmZS4gQWx0ZXJuYXRpdmUgZGVsaXZlcnkgbWV0aG9kcywgc3VjaCBhcyBDaGl0b3NhbiBMTlAgYW5kIEF0b21pYyBGb3JjZSBNaWNyb3Njb3B5LCBhcmUgYmVpbmcgZXhwbG9yZWQsIHdpdGggdGhlIGNvbXBhbnkgQUlSaW5oYWxlIG1lbnRpb25lZCBmb3IgY29sbGFib3JhdGlvbi48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SHVtYW4gUHJhY3RpY2VzPC9oMj5cbiAgICAgICAgPHA+SnVkZ2luZyBpbiBodW1hbiBwcmFjdGljZXMgd2lsbCBiZSByaWdvcm91czsgdHJhbnNwYXJlbmN5IGFuZCBkZXRhaWxlZCBkb2N1bWVudGF0aW9uIGFyZSBjcnVjaWFsIHRvIHdpbiBvdmVyIGp1ZGdlcy4gSW50ZXJ2aWV3cyBzaG91bGQgaW5jbHVkZSBhIGRpdmVyc2UgcmFuZ2Ugb2YgZXhwZXJ0cywgYW5kIHZpc3VhbCBkb2N1bWVudGF0aW9uLCBpbmNsdWRpbmcgcGhvdG9zLCBpcyBlc3NlbnRpYWwgdG8gc3VwcG9ydCB0aGUgbmFycmF0aXZlLiBBZGRpdGlvbmFsbHksIHRoZXJlIGlzIGEgbmVlZCB0byBnYXRoZXIgcmVzZWFyY2ggb24gaG93IG90aGVyIHRlYW1zIGFwcHJvYWNoIHZhcmlvdXMgc3ViLWFzcGVjdHMgb2YgdGhlaXIgcHJvamVjdHMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XG4gICAgICAgIDxwPlJlc3RyaWN0aW9ucyBmb3IgTVVLT01vdmUgcG9zdGVycyBoYXZlIGJlZW4gZW1waGFzaXplZCwgd2l0aCBndWlkZWxpbmVzIHVwbG9hZGVkIGJ5IElzYSBmb3IgYWRoZXJlbmNlLiBQb3N0ZXJzIG11c3QgaW5jbHVkZSA0MCBzdGlja2VycyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciwgYW5kIHRoZXkgY2Fubm90IGJlIGRpc3BsYXllZCB3aXRob3V0IHRoZW0uPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlVyZ2VudDwvaDI+XG4gICAgICAgIDxwPkxpbGlhbmEgaXMgdGFza2VkIHdpdGggcmVhY2hpbmcgb3V0IHRvIGluZGl2aWR1YWxzIGZvciB2aWRlbyBjb250cmlidXRpb25zIHJlZ2FyZGluZyBnZW5lIHRoZXJhcHkgZm9yIHRoZSB1cGNvbWluZyBFdXJvcGVhbiBDb25mZXJlbmNlIG9mIEN5c3RpYyBGaWJyb3Npcywgc2NoZWR1bGVkIGZvciBKdW5lIDV0aCB0byA4dGggaW4gR2xhc2dvdy4gVGhlcmUgd2lsbCBiZSBhIHNwZWNpYWwgcHJpemUgZm9yIGVmZm9ydHMgaW4gaHVtYW4gcHJhY3RpY2VzLCBvdXRyZWFjaCwgYW5kIGVkdWNhdGlvbiwgaW5jbHVkaW5nIG9wcG9ydHVuaXRpZXMgZm9yIFwiZXBvc3RlcnNcIiBhbmQgY29ubmVjdGluZyB3aXRoIGV4cGVydHMuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDI1XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5VcmdlbnQ8L2gyPlxuICAgICAgICA8cD5UaGUgcHJvamVjdCBkZXNjcmlwdGlvbiBmb3IgdGhlIFByb21lZ2EgcHJvamVjdCBuZWVkcyB0byBiZSBjb21wbGV0ZWQgaW1tZWRpYXRlbHkuIEthaSB3aWxsIGRyYWZ0IHRoZSBkZXNjcmlwdGlvbiBhbmQgc2hhcmUgaXQgb24gVGVhbXMgZm9yIHRlYW0gbWVtYmVycyB0byByZXZpZXcgYW5kIHByb3ZpZGUgZmVlZGJhY2suPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XG4gICAgICAgIDxwPlRoZSBwcmVzZW50YXRpb24gb24gTW9uZGF5IHdpbGwgYmUgcHJlcGFyZWQgYnkgS2ltLCBLYWksIFBoaWxsaXAsIGFuZCBBc2FsLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5QbGFzbWlkIGFuZCBjb25zdHJ1Y3QgcGxhbm5pbmcgaXMgYW4gaW1tZWRpYXRlIHByaW9yaXR5LCB3aXRoIHRoZSB0ZWFtIHB1cnN1aW5nIHRocmVlIGFwcHJvYWNoZXM6IENhczksIENhczEyLCBhbmQgRmFuem9yLiBLZXkgY29tcG9uZW50cyBpbmNsdWRlIFJldmVyc2UgVHJhbnNjcmlwdGFzZSwgdGVtcGxhdGUgRE5BLCBhbmQgcGVnUk5BLCB3aGljaCBtdXN0IGJlIGNhcmVmdWxseSBkZXNpZ25lZCB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSB3aXRoIHRoZSBjb25zdHJ1Y3RzLiBUaGUgRmFuem9yIHJlcXVpcmVzIG1vZGlmaWNhdGlvbiB0byBhY3QgYXMgYSBuaWNrYXNlLCBhbmQgdGhlIHRlYW0gd2lsbCB3b3JrIHRvIG9wdGltaXplIHRoZSBjb25zdHJ1Y3RzIHRvIGNyZWF0ZSBzbWFsbGVyLCBtb3JlIGVmZmVjdGl2ZSBkZXNpZ25zLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5Qcm9vZiBvZiBDb25jZXB0PC9oMz5cbiAgICAgICAgPHA+QSBwbGFzbWlkIHdpdGggYSBDTVYgcHJvbW90ZXIgd2lsbCBiZSBvcmRlcmVkIGFjY29yZGluZyB0byBndWlkZWxpbmVzIGluIGEgcmVsZXZhbnQgcGFwZXIsIGFuZCBhIFQ3IHByb21vdGVyIHdpbGwgYmUgdXNlZCBmb3IgbVJOQSBwcm9kdWN0aW9uLiBUZXN0aW5nIHdpbGwgaW52b2x2ZSBIRUMvSEVMQSBjZWxsIGxpbmVzIHRvIGV2YWx1YXRlIGV4cHJlc3Npb24sIHdpdGggYSBmb2N1cyBvbiBhIGNvbnRyb2wgY2VsbCBsaW5lIGxhY2tpbmcgdGhlIENGVFIgZ2VuZS4gVGhlIGNvbnN0cnVjdHMgd2lsbCBiZSBjaGFyYWN0ZXJpemVkIG92ZXIgdGltZSwgYW5kIGEgdHJhbnNmZWN0aW9uIG1hcmtlciB3aWxsIGJlIGluY2x1ZGVkIHRvIGFzc2VzcyByZXBhaXIgZnVuY3Rpb25hbGl0eS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDM+VGFzayBEaXN0cmlidXRpb248L2gzPlxuICAgICAgICA8cD5UZWFtIG1lbWJlcnMgYXJlIGFzc2lnbmVkIHRvIHZhcmlvdXMgdGFza3M6IGV2ZXJ5b25lIHdpbGwgcmV2aWV3IHRoZSBSRkMxMCBzdGFuZGFyZCwgd2hpbGUgdGhlIGV4cGVyaW1lbnRhbCB3b3JrZmxvdyB0ZWFtIHdpbGwgaW5jbHVkZSBLYWksIENocmlzdGlhbiwgYW5kIExpbGlhbmEuIE90aGVyIHRhc2tzIHdpbGwgZm9jdXMgb24gc2VxdWVuY2luZywgbGlua2VycywgYW5kIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgd2l0aCBsYWJvcmF0b3J5IHRhc2tzIHN1Y2ggYXMgcG91cmluZyBwbGF0ZXMgYW5kIG1ha2luZyBFLiBjb2xpIGNvbXBldGVudCBhbHNvIHByaW9yaXRpemVkLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxuICAgICAgICA8cD5UaGUgTXVrb01PVkUgaW5pdGlhdGl2ZSBpcyBwcm9ncmVzc2luZywgd2l0aCB0aGUgY2FmZXRlcmlhIGNvdmVyZWQgYW5kIDIxIHBvc3RlcnMgaHVuZyBhcm91bmQgdGhlIE9sZCBUb3duLiBSZW1haW5pbmcgcG9zdGVycyB3aWxsIGJlIGRpc3RyaWJ1dGVkIHNvb24uPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkJpb3NhZmV0eTwvaDI+XG4gICAgICAgIDxwPlNhZmV0eSBtZWNoYW5pc21zIGRpc2N1c3NlZCBpbmNsdWRlIGEgcHJvdGVpbiB0aGF0IGRlZ3JhZGVzIHRoZSBsaW5rZXIgdXNpbmcgYSByZXBvcnRlciBzeXN0ZW0gKFRvZWhvbGQgU3dpdGNoKSwgd2hpY2ggYWN0aXZhdGVzIG9ubHkgaW4gdGhlIHByZXNlbmNlIG9mIHRoZSBtUk5BIHRyYW5zY3JpcHQuIEFkZGl0aW9uYWxseSwgYSBOYSsgcmlib3N3aXRjaCB3aWxsIG1hc2sgdGhlIGd1aWRlIHNlcXVlbmNlIHVuZGVyIGxvdyBpb24gY29uZGl0aW9ucywgdW5mb2xkaW5nIG9ubHkgd2hlbiBzdWZmaWNpZW50IGlvbnMgYXJlIHByZXNlbnQuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDMwXCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5UaGUgU3RlZXJpbmcgQ29tbWl0dGVlIHByb3ZpZGVkIHBvc2l0aXZlIGZlZWRiYWNrIG9uIHRoZSBwcm9qZWN0LCBlbXBoYXNpemluZyBzaW1wbGljaXR5IGFuZCB0aGUgaW1wb3J0YW5jZSBvZiBzbWFsbCBzdWNjZXNzZXMuIFRoZXJlIHdhcyBkaXNjdXNzaW9uIGFib3V0IHRoZSB1c2Ugb2YgdGhlIFVzc2luZyBjaGFtYmVyIGFuZCBhIHByZWZlcmVuY2UgZm9yIHRoZSBwYXRjaC1jbGFtcCBtZXRob2QgZm9yIG1lYXN1cmluZyBpb24gY2hhbm5lbHMuIFRoZSBjb21taXR0ZWUgZW5jb3VyYWdlZCBtb3JlIGNvbGxhYm9yYXRpb24gd2l0aCB0aGUgbWVkaWNhbCBmYWN1bHR5IGFuZCBhY2tub3dsZWRnZWQgY29udHJpYnV0aW9ucyBmcm9tIFBoaWxpcCwgS2ltLCBhbmQgQ2hyaXN0aWFuLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cbiAgICAgICAgPHA+S2F5YSBleHByZXNzZWQgY29uY2VybnMgYWJvdXQgbWlzc2luZyBtZWV0aW5ncyBhbmQgcHJvcG9zZWQgY2hhbmdlcyB0byB0aGUgbWVldGluZyBzdHJ1Y3R1cmUgdG8gaW1wcm92ZSBhdHRlbmRhbmNlLiBLYXRobGVlbiBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgcGVyc29uYWwgYWNjb3VudGFiaWxpdHksIHVyZ2luZyBldmVyeW9uZSB0byB0YWtlIG1vcmUgaW5pdGlhdGl2ZS4gVGhlIE1pcm8gYm9hcmQgd2FzIGRlbW9uc3RyYXRlZCBmb3IgdGFzayBhc3NpZ25tZW50cywgYW5kIGl0IHdhcyBzdWdnZXN0ZWQgdGhhdCBvbmUgcGVyc29uIGJlIHJlc3BvbnNpYmxlIGZvciBzdWItdGVhbXMgd2hpbGUgS2F5YSB3aWxsIGNvbXBpbGUgbWVldGluZyBtaW51dGVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxuICAgICAgICA8cD5DdXJyZW50bHksIGFyb3VuZCA3MCBwZW9wbGUgYXJlIHJlZ2lzdGVyZWQgZm9yIHRoZSBCRkggbWVldHVwIHdpdGggYWJvdXQgMTAgdGVhbXMgcGFydGljaXBhdGluZywgd2hpY2ggd2lsbCBhbHNvIGJlIHByb21vdGVkIG9uIExpbmtlZEluLiBBZGRpdGlvbmFsbHksIHRoZSBpR0VNIEVpbmRob3ZlbiBNZWV0dXAgaXMgc2NoZWR1bGVkIGZvciBPY3RvYmVyLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5UaGUgY3VycmVudCBmb2N1cyBpbmNsdWRlcyBkaXNjdXNzaW9ucyBvbiBSTkEsIHBhcnRpY3VsYXJseSByaWJvc3dpdGNoZXMsIHdoaWxlIGNpcmN1bGFyIFJOQSB0b3BpY3MgYXJlIHBvc3Rwb25lZC4gVGhlcmUgaXMgYSBuZWVkIGZvciBhIGNvbXByZWhlbnNpdmUgY29uY2VwdCB0aGF0IG91dGxpbmVzIFByaW1lIEVkaXRpbmcgaW1wcm92ZW1lbnRzIGFuZCBleHBsb3JlcyB0aGUgYmluZGluZyBjYXBhYmlsaXRpZXMgb2YgdG9laG9sZCBzd2l0Y2hlcy4gVGhlIHRlYW0gcGxhbnMgdG8gcHJvZHVjZSBtUk5BIGZvciBkZWxpdmVyeSwgcGFja2FnaW5nIGl0IGludG8gTE5Qcywgd2l0aCBhIGRldGFpbGVkIG1STkEgcGF0aHdheSBlc3RhYmxpc2hlZCBmb3IgZWZmZWN0aXZlIGNlbGx1bGFyIGVudHJ5LjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMz5TcGVjaWZpY3Mgb24gQ29uc3RydWN0czwvaDM+XG4gICAgICAgIDxwPlBsYW5zIGludm9sdmUgdXNpbmcgNjAwIEZhbnpvciBhbmQgMTYwMCBSZXZlcnNlIFRyYW5zY3JpcHRhc2UgKFJUKSBmb3IgY29uc3RydWN0IG9wdGltaXphdGlvbi4gVGhlIENoaW1lcmEgc29mdHdhcmUgd2lsbCBiZSB1dGlsaXplZCB0byBhbmFseXplIGFtaW5vIGFjaWQgc2VxdWVuY2VzIGFuZCByZXZpZXcgbGlua2Vycywgd2hpbGUgUEFNIGFuZCBUQU0gc2VxdWVuY2VzIHdpbGwgYmUgcmVzZWFyY2hlZCBieSBLYXRobGVlbiBmb3IgZWZmZWN0aXZlIGN1dCBzaXRlcy4gVGVzdGluZyBmb3IgQ2FzIHByb3RlaW5zIHdpbGwgaW5jbHVkZSBkZXRlcm1pbmluZyB3aGljaCBDYXMxMiB0byB1c2UsIG11dGF0aW9uIGludGVncmF0aW9uLCBhbmQgY29uZHVjdGluZyBQQ1IgZm9yIG11dGF0aW9uIHRlc3RpbmcuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkh1bWFuIFByYWN0aWNlczwvaDI+XG4gICAgICAgIDxwPkxpbGlhbmEgcmVwb3J0ZWQgdGhhdCBtb3JlIGluZGl2aWR1YWxzIGFyZSBhdmFpbGFibGUgZm9yIGludGVydmlld3MsIHdpdGggc29tZSBwcmVmZXJyaW5nIFpvb20gZm9yIHZpZGVvIGludGVyYWN0aW9ucy4gVGhlIHRlYW0gaXMgZW5jb3VyYWdlZCB0byBtYWludGFpbiBmbGV4aWJpbGl0eSBpbiBjb25kdWN0aW5nIGludGVydmlld3MuPC9wPlxuICAgICAgICA8Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJtYXkyXCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5VcmdlbnQ8L2gyPlxuICAgICAgICA8cD5UaGUgcHJvamVjdCBuYW1lIG11c3QgYmUgZmluYWxpemVkIGJ5IE1heSA2dGguPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlRlYW08L2gyPlxuICAgICAgICA8cD5UZWFtIG9yZ2FuaXphdGlvbiBpcyBjcnVjaWFsOyBhbGwgbWVtYmVycyBzaG91bGQgYmVsb25nIHRvIGF0IGxlYXN0IHR3byBvciB0aHJlZSB0ZWFtcywgd2l0aCBhIGNsZWFyIGRlZmluaXRpb24gb2Ygc3BlY2lhbCBwcml6ZSBjYXRlZ29yaWVzLiBQdWJsaWMgT3V0cmVhY2ggYW5kIEh1bWFuIFByYWN0aWNlcyB3aWxsIGhhdmUgc2VwYXJhdGUgdGVhbXMsIGFuZCBpbmRpdmlkdWFsIHRlYW0gbWVldGluZ3Mgc2hvdWxkIGJlIG9yZ2FuaXplZCBieSBNYXkgN3RoIHRvIGRpc2N1c3MgcHJvZ3Jlc3MuIE1vbnRobHkgU3RlZXJpbmcgQ29tbWl0dGVlIG1lZXRpbmdzIHdpbGwgb2NjdXIsIHJlcXVpcmluZyBlYWNoIHRlYW0gdG8gcmVwb3J0IHVwZGF0ZXMgb24gYSBzaW5nbGUgc2xpZGUuPC9wPlxuICAgICAgICBcbiAgICAgICAgPHA+VGhlIGN1cnJlbnQgcHJvamVjdCBkaXJlY3Rpb24gaXMgcHJvbWlzaW5nLCBidXQgdGhlcmUncyBhIHJpc2sgb2YgYmVjb21pbmcgb3Zlcmx5IHRoZW9yZXRpY2FsLCBkZWxheWluZyBwcmFjdGljYWwgbGFiIHdvcmsuIFRoZSBnb2FsIGlzIHRvIHRyYW5zaXRpb24gZnJvbSB0aGVvcnkgdG8gcHJhY3RpY2UgcXVpY2tseSwgZm9jdXNpbmcgb24gZ2VuZXJhdGluZyBhIFByaW1lIEVkaXRpbmcgQ29tcGxleCAoUEVDKSBhbmQgZGVtb25zdHJhdGluZyBpdHMgZnVuY3Rpb25hbGl0eSBpbiBhIHN1aXRhYmxlIG1vZGVsIHN5c3RlbS4gQnkgYnJlYWtpbmcgZG93biBnb2FscyBpbnRvIG1hbmFnZWFibGUgc3RhZ2VzLCB0aGUgdGVhbSBjYW4gYWltIGZvciBnb2xkIHdoaWxlIGFsc28gZXhwbG9yaW5nIG9wcG9ydHVuaXRpZXMgZm9yIHNwZWNpYWwgcHJpemVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5QaGlsaXAgd2lsbCBwcmVwYXJlIGEgc3VtbWFyeSBvZiB0aGUgY29uc3RydWN0cyBhbmQgcmVzb3VyY2VzLCBpbmNsdWRpbmcgYSBZb3VUdWJlIHZpZGVvIG9uIFByaW1lIEVkaXRpbmcgZXhwZXJpbWVudHMgYW5kIENoaW1lcmFYIGV4cGxvcmF0aW9uLiBRdWVzdGlvbnMgcmVnYXJkaW5nIHRoZSBleHBvcnRhYmlsaXR5IG9mIENoaW1lcmFYIGludG8gM0QgZm9ybWF0cyB3aWxsIGJlIGFkZHJlc3NlZC4gRmluYWxpemF0aW9uIG9mIHRoZSBCaW9kaXZlcnNpdHkgUHJlLURlbGl2ZXJhYmxlIGFuZCBwcm9jZWVkaW5nIHdpdGggcGxhc21pZCBvcmRlcnMgYXJlIG5leHQgc3RlcHMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPkRlbGl2ZXJ5PC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgaW4gdGhlIGZpbmFsIHN0YWdlcyBvZiBjb21wbGV0aW5nIHRoZSBsb2dvLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5IdW1hbiBQcmFjdGljZXM8L2gyPlxuICAgICAgICA8cD5BbGwgZXh0ZXJuYWwgY29udGFjdHMgc2hvdWxkIGJlIGRvY3VtZW50ZWQgaW4gYSBXb3JkIGZpbGUgdW5kZXIgSHVtYW4gUHJhY3RpY2VzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxuICAgICAgICA8cD5UaGUgdW5pdmVyc2l0eSB3aWxsIHV0aWxpemUgc3BvcnRzIHNldHMgZm9yIE11a29tb3ZlLCBlbmNvdXJhZ2luZyBmYW1pbHkgYW5kIGZyaWVuZHMgdG8gcHJvbW90ZSB0aGUgaW5pdGlhdGl2ZS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+U3BvbnNvcmluZzwvaDI+XG4gICAgICAgIDxwPkFzc2lzdGFuY2UgaXMgdXJnZW50bHkgbmVlZGVkIGZvciBzcG9uc29yc2hpcCBlZmZvcnRzLjwvcD5cbiAgICAgICAgPC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwibWF5N1wiLCBcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cblxuICAgICAgICA8aDI+VXJnZW50PC9oMj5cbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgY3VycmVudGx5IGJlaGluZCB0aGUgcGxhbm5lZCB0aW1lbGluZSBmb3IgdGhlIGxhYiBhY3Rpdml0aWVzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5UaGUgTWljcm9zeW50aCBhY2NvdW50IGhhcyBiZWVuIGFwcHJvdmVkIGFuZCB3aWxsIGJlIGZvcndhcmRlZCB0byB0aGUgU3BvbnNvcmluZyB0ZWFtLiBUaGVyZSB3aWxsIGJlIG5vIG1lZXRpbmcgdGhpcyBUaHVyc2RheS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+VGVhbTwvaDI+XG4gICAgICAgIDxwPlRoZSBoZWFkcyBvZiB0ZWFtcyBoYXZlIGJlZW4gZXN0YWJsaXNoZWQgYXMgZm9sbG93czogS2F0aGxlZW4gZm9yIFB1YmxpYyBPdXRyZWFjaCwgTGlsaWFuYSBmb3IgV2lraSwgVmVyYSBmb3IgRGVsaXZlcnksIFBoaWxpcCBmb3IgTWVjaGFuaXNtLCBhbmQgTWljaGFlbCBmb3IgRGVzaWduLiBTcG9uc29yaW5nIHN0aWxsIG5lZWRzIGEgbGVhZCwgcG9zc2libHkgSXNhYmVsbC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cbiAgICAgICAgPHA+Rm9yIHRoZSB1cGNvbWluZyBtZWV0LXVwLCBzZXZlcmFsIGl0ZW1zIGFyZSBzdGlsbCBuZWVkZWQ6IGEgc2NpZW50aWZpYyBwb3N0ZXIgKFBoaWxpcCwgS2ltLCBDaHJpc3RpYW4pLCBULXNoaXJ0cyAoRGVzaWduIHRlYW0pLCBhIHByZXNlbnRhdGlvbiAoUGhpbGlwLCBLYXlhKSwgc3RpY2tlcnMgKDMweDMwbW0sIERlc2lnbiB0ZWFtKSwgYSBwcm9qZWN0IHRpdGxlIChtYXggMTUgd29yZHMpLCBhbmQgYW4gYWJzdHJhY3QgKDE1MCB3b3JkcykuIEFkZGl0aW9uYWxseSwgYXNzaXN0YW5jZSBpcyByZXF1aXJlZCBmb3IgcGhvdG9ncmFwaHkgYXQgdGhlIEJGSCwgd2l0aCBNaWNoYWVsIGFjdGluZyBhcyB0aGUgY2FtZXJhbWFuIGFuZCBuZWVkaW5nIG1vcmUgc3VwcG9ydC48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+V2V0IExhYjwvaDI+XG4gICAgICAgIDxwPkRpc2N1c3Npb24gb24gY2VsbCBjdWx0dXJlIHJlc3BvbnNpYmlsaXRpZXMgaGlnaGxpZ2h0ZWQgdGhhdCBMaXNhIGFuZCBLYXRobGVlbiBoYXZlIGhhbmRzLW9uIGV4cGVyaWVuY2UsIHdoaWxlIG90aGVycyB3aWxsIHJlcXVpcmUgZ3VpZGFuY2UuIFR3byBncm91cHMgd2lsbCB3b3JrIHdpdGggSEVDIGFuZCBIRUxBLCB3aXRoIHNjaGVkdWxlZCBzZXNzaW9ucyBuZXh0IHdlZWsgZm9yIGZhbWlsaWFyaXphdGlvbiB3aXRoIEJlbmNobGluZy4gVGhlIHBvc3NpYmlsaXR5IG9mIHRoYXdpbmcgSEVMQSAmIEhFSyBjZWxscyBmb3IgcHJhY3RpY2Ugd2FzIGRpc2N1c3NlZCwgYWxvbmcgd2l0aCBzb3VyY2luZyBjZWxscyBmcm9tIEx1a2FzIGFuZCBITk8gZm9yIHRyYWluaW5nIHB1cnBvc2VzLjwvcD5cbiAgICAgICAgXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxuICAgICAgICA8cD5BbiB1cGRhdGUgb24gcHVyY2hhc2VkIHNlcXVlbmNlcyB3YXMgc2hhcmVkLCBpbmRpY2F0aW5nIGRpZmZpY3VsdGllcyB3aXRoIEZhbnpvciBhbmQgcGxhbnMgdG8gb3JkZXIgQ2FzLTkgZW5kb251Y2xlYXNlIGFzIGEgYmFja3VwLiBDbGFyaWZpY2F0aW9uIGlzIG5lZWRlZCBvbiB3aGV0aGVyIHRvIHB1cmNoYXNlIHBsYXNtaWRzIHdpdGggb3Igd2l0aG91dCBhIHJlcG9ydGVyIHN5c3RlbSwgYXMgd2VsbCBhcyB0aGUgcG90ZW50aWFsIG9yZGVyaW5nIG9mIHJldmVyc2UgdHJhbnNjcmlwdGFzZS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SHVtYW4gUHJhY3RpY2VzPC9oMj5cbiAgICAgICAgPHA+UXVlc3Rpb25zIGZvciBhbiB1cGNvbWluZyBpbnRlcnZpZXcgd2l0aCBQcm9mLiBXZWJlciBhcmUgcHJlcGFyZWQsIHdpdGggdGhlIHBvc3NpYmlsaXR5IG9mIGFkZGluZyBtb3JlLiBUaGUgTWVjaGFuaXNtIHRlYW0gd2lsbCBjcmVhdGUgYWRkaXRpb25hbCBzbGlkZXMsIGFuZCBMaXNhIHdpbGwgaW5xdWlyZSBhYm91dCBib3Jyb3dpbmcgYSBjYW1lcmEgYW5kIHJlY29yZGluZyBkZXZpY2UgZm9yIHRoZSBpbnRlcnZpZXcuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XG4gICAgICAgIDxwPkZvciBNdWtvTW92ZSwgTGlsaWFuYSB3aWxsIHByaW50IHRoZSBzdGFydGluZyBudW1iZXJzLCB3aGlsZSBLYWphIHdpbGwgc2hhcmUgdGhpcyBpbmZvcm1hdGlvbiBvbiBUZWFtcywgYW5kIEtheWEgd2lsbCBvYnRhaW4gc2FmZXR5IHBpbnMgZm9yIGF0dGFjaG1lbnQuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlNwb25zb3Jpbmc8L2gyPlxuICAgICAgICA8cD5BIG1lZXRpbmcgd2l0aCBWZXJlbmEgS3JcdTAwRTR1dG5lciBpcyBzY2hlZHVsZWQgZm9yIE1vbmRheSwgd2hlcmUgYSBkcmF3IHdpbGwgZGV0ZXJtaW5lIHRoZSBzcG9uc29yc2hpcCB3aW5uZXIsIHdpdGggTHlkaWEgc3VnZ2VzdGluZyBhIHRpbWUgb2YgNTozMCBQTS4gQWRkaXRpb25hbGx5LCBhIG1lZXRpbmcgd2l0aCBTdGVtY2VsbCB3aWxsIGZvbGxvdyB1cCBvbiB0aGUgcHJvdmlzaW9uIG9mIG1lZGl1bS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+Q3JlYXRpdml0eTwvaDI+XG4gICAgICAgIDxwPlRoZSB0ZWFtIGhhcyBjaG9zZW4gdGhlIG5hbWUgXCI8UHJlQ3lzZS8+XCIgYW5kIGlzIGRldmVsb3BpbmcgYSBsb2dvLCBlbXBoYXNpemluZyBzaW1wbGljaXR5IGFuZCBhdm9pZGluZyBvdmVybHkgZmluZSBkZXRhaWxzIG9yIHdoaW1zaWNhbCBpbWFnZXJ5LiBGZWVkYmFjayB3aWxsIGJlIGdhdGhlcmVkIG9uIHRoZSBwcm9wb3NlZCBsb2dvcyBhbmQgbmFtZS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+V2lraTwvaDI+XG4gICAgICAgIDxwPlRoZXJlIGlzIGEgbmVlZCBmb3IgdGVhbSBtZW1iZXJzIHRvIHdyaXRlIHRleHRzIGZvciB0aGUgd2lraSwgZm9jdXNpbmcgb24gdGFza3Mgb3V0bGluZWQgaW4gdGhlIFdpa2ksIEh1bWFuIFByYWN0aWNlcywgYW5kIERlc2lnbiBjaGFubmVscy4gVGhlIHRlYW0gc2hvdWxkIGFsc28gYWdyZWUgb24gYSBjaXRhdGlvbiBzdHlsZS48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcIm1heTE0XCIsIFxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxuXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxuICAgICAgICA8cD5UaGVyZSB3YXMgYSByZXBvcnQgcmVnYXJkaW5nIGEgRmFjZWJvb2sgcGFnZSBhdHRyaWJ1dGVkIHRvIEZyaWVkZXJpa2UgTGVobGUsIHByb21wdGluZyBhIGRpc2N1c3Npb24gb24gd2hldGhlciBpdCBpcyBnZW51aW5lIG9yIHNwYW0uIEFkZGl0aW9uYWxseSwgdGhlIHRlYW0gcmVjZWl2ZWQgY29uZ3JhdHVsYXRpb25zIG9uIHRoZSBzcG9uc29yc2hpcCBmcm9tIFByb21lZ2EgR21iSCwgd2l0aCB0aGUgbmV4dCBzdGVwcyBvdXRsaW5lZCBpbiB0aGUgY29tbXVuaWNhdGlvbi48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cbiAgICAgICAgPHA+RGlzY3Vzc2lvbnMgYWJvdXQgdGhlIHVwY29taW5nIG1lZXQtdXAgaW5jbHVkZWQgcmVzcG9uc2liaWxpdGllcyBmb3IgaGFuZGxpbmcgbWlsayBhbHRlcm5hdGl2ZXMgYW5kIHN1Z2FyLiBUaGUgdGVhbSBpcyBhbHNvIGVuY291cmFnZWQgdG8gYXNrIGZyaWVuZHMgZm9yIGFzc2lzdGFuY2Ugd2l0aCBmaWxtaW5nIGR1cmluZyB0aGUgZXZlbnQuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPk1lY2hhbmlzbTwvaDI+XG4gICAgICAgIDxwPlRoZSBmaXJzdCBwbGFzbWlkcyBoYXZlIGJlZW4gb3JkZXJlZCwgaW5jbHVkaW5nIHBNSjMyNiAoRmFuem9yKSBhbmQgcENNVi1QRTIgKFN0YW5kYXJkIFByaW1lIEVkaXRpbmcpLiBSZW1haW5pbmcgdGFza3MgaW5jbHVkZSB0aGUgb3JkZXJpbmcgb2YgYSBzaG9ydGVuZWQgUlQgcGxhc21pZCwgcGVnUk5BIGFjY2VwdG9yIHBsYXNtaWQsIGFuZCBzY3JlZW5pbmcgcGxhc21pZC4gTWFsdGUgYW5kIEtheWEgYXJlIHdvcmtpbmcgb24gcGVnUk5BIGRlc2lnbiwgYW5kIHRoZXJlJ3MgYSBuZWVkIHRvIGV4cGxvcmUgdmFyaW91cyBwZWcgaW50ZWdyYXRpb25zIGludG8gdGhlIGFjY2VwdG9yIHBsYXNtaWQuPC9wPlxuICAgICAgICA8cD5QcmltZXIgZGVzaWduIGlzIGNoYWxsZW5naW5nIGR1ZSB0byBpbmV4cGVyaWVuY2UsIGJ1dCB0aGUgdGVhbSBhaW1zIHRvIG1lZXQgQmlvQnJpY2sgc3RhbmRhcmRzIG9uY2UgdGhlIHZlY3RvcnMgYXJlIGF2YWlsYWJsZS4gS2FpIGFuZCBDaHJpc3RpYW4gYXJlIHNlbGVjdGluZyBjYW5kaWRhdGVzIGZvciBGYW56b3IgbXV0YXRpb25zLCBhbmQgdGVzdGluZyBlZGl0aW5nIHZpYSBHRlAgaXMgcGxhbm5lZCwgcmVxdWlyaW5nIGFkYXB0YXRpb24gb2YgdGhlIHBsYXNtaWQgZm9yIHN0YWJsZSB0cmFuc2ZlY3Rpb24gaW50byBjZWxscy48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+SHVtYW4gUHJhY3RpY2VzPC9oMj5cbiAgICAgICAgPHA+RGV0YWlscyBmb3IgdGhlIGludGVydmlldyB3aXRoIFByb2YuIFdlYmVyIGFyZSB1bmRlciBkaXNjdXNzaW9uLCBpbmNsdWRpbmcgcHJlc2VudGF0aW9uIHJlc3BvbnNpYmlsaXRpZXMgYW5kIGxvZ2lzdGljYWwgYXJyYW5nZW1lbnRzLiBUaGVyZSBpcyBhbHNvIGEgbm90ZSBvbiBhIHBhdGllbnQgaW50ZXJ2aWV3IHJlcXVlc3QgaW52b2x2aW5nIGEgeW91bmcgY2hpbGQgd2l0aCBjeXN0aWMgZmlicm9zaXMuPC9wPlxuICAgICAgICBcbiAgICAgICAgPGgyPlNwb25zb3Jpbmc8L2gyPlxuICAgICAgICA8cD5BIG1lZXRpbmcgd2l0aCBTdGVtY2VsbCBpcyBwbGFubmVkIHdoZXJlIHRoZSB0ZWFtIG11c3QgZGVjaWRlIG9uIHRoZSB0eXBlcyBhbmQgcXVhbnRpdGllcyBvZiBtZWRpYSBuZWVkZWQgYXMgc29vbiBhcyBwb3NzaWJsZS48L3A+XG4gICAgICAgIFxuICAgICAgICA8aDI+V2lraTwvaDI+XG4gICAgICAgIDxwPlRoZSB3aWtpIGlzIGV4cGVjdGVkIHRvIGJlIG9ubGluZSBieSBNYXkgMjJuZC48L3A+XG4gICAgICAgIDwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcIlwiLCBcbiAgICAgICAgbm9kZTogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJcIiwgXG4gICAgICAgIG5vZGU6IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxuICAgICAgICBub2RlOiA8PjwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcIlwiLCBcbiAgICAgICAgbm9kZTogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJcIiwgXG4gICAgICAgIG5vZGU6IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxuICAgICAgICBub2RlOiA8PjwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcIlwiLCBcbiAgICAgICAgbm9kZTogPD48Lz5cbiAgICB9LFxuICAgIHtcbiAgICAgICAgY3NzbmFtZTogXCJcIiwgXG4gICAgICAgIG5vZGU6IDw+PC8+XG4gICAgfSxcbiAgICB7XG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxuICAgICAgICBub2RlOiA8PjwvPlxuICAgIH0sXG4gICAge1xuICAgICAgICBjc3NuYW1lOiBcIlwiLCBcbiAgICAgICAgbm9kZTogPD48Lz5cbiAgICB9LFxuXG4gICAgXG5dXG5cblxuZnVuY3Rpb24gcGFyc2VEYXRlRnJvbUNvZGUoY29kZTogc3RyaW5nKTogc3RyaW5nICB7XG4gICAgY29uc3QgbW9udGhzOiB7IFtrZXk6IHN0cmluZ106IG51bWJlciB9ID0ge1xuICAgICAgICBqYW51YXJ5OiAxLFxuICAgICAgICBmZWJydWFyeTogMixcbiAgICAgICAgbWFyY2g6IDMsXG4gICAgICAgIGFwcmlsOiA0LFxuICAgICAgICBtYXk6IDUsXG4gICAgICAgIGp1bmU6IDYsXG4gICAgICAgIGp1bHk6IDcsXG4gICAgICAgIGF1Z3VzdDogOCxcbiAgICAgICAgc2VwdGVtYmVyOiA5LFxuICAgICAgICBvY3RvYmVyOiAxMCxcbiAgICAgICAgbm92ZW1iZXI6IDExLFxuICAgICAgICBkZWNlbWJlcjogMTJcbiAgICB9O1xuXG4gICAgLy8gUmVnZXggdG8gbWF0Y2ggdGhlIG1vbnRoIGFuZCBkYXkgKGUuZy4sIGZlYnJ1YXJ5MiwgbWFyY2g1LCBldGMuKVxuICAgIGNvbnN0IHJlZ2V4ID0gL14oW2EtekEtWl0rKShcXGR7MSwyfSkkLztcbiAgICBjb25zdCBtYXRjaCA9IGNvZGUudG9Mb3dlckNhc2UoKS5tYXRjaChyZWdleCk7XG5cbiAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgY29uc3QgbW9udGhTdHIgPSBtYXRjaFsxXTtcbiAgICAgICAgY29uc3QgZGF5ID0gcGFyc2VJbnQobWF0Y2hbMl0sIDEwKTtcblxuICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1ttb250aFN0cl07XG4gICAgICAgIGlmIChtb250aCAmJiBkYXkgPiAwICYmIGRheSA8PSAzMSkge1xuICAgICAgICAgICAgY29uc3QgeWVhciA9IDIwMjQ7XG4gICAgICAgICAgICAvLyBGb3JtYXQgZGF5IGFuZCBtb250aCB3aXRoIGxlYWRpbmcgemVyb3NcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZERheSA9IGRheS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XG4gICAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRNb250aCA9IG1vbnRoLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcbiAgICAgICAgICAgIHJldHVybiBgJHtmb3JtYXR0ZWREYXl9LiR7Zm9ybWF0dGVkTW9udGh9LiR7eWVhcn1gO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFwiZXJyb3JcIjsgLy8gUmV0dXJuIG51bGwgaWYgdGhlIGNvZGUgaXMgaW52YWxpZFxufVxuXG4iLCAiaW1wb3J0IHsgQ2FsVGFicyB9IGZyb20gXCIuL2NhbC1jb250ZW50XCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIENhbGVuZGFyKCl7XG5sZXQgYXJyb3dzOiBKU1guRWxlbWVudFtdID0gQXJyb3dzKCk7IFxubGV0IHRhYnM6IEpTWC5FbGVtZW50W10gPSBDYWxUYWJzKCk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYWxcIj5cblxuICAgIHthcnJvd3N9XG4gXG5cbjx1bCBjbGFzc05hbWU9XCJ3ZWVrZGF5c1wiPlxuICA8bGk+TW88L2xpPlxuICA8bGk+VHU8L2xpPlxuICA8bGk+V2U8L2xpPlxuICA8bGk+VGg8L2xpPlxuICA8bGk+RnI8L2xpPlxuICA8bGk+U2E8L2xpPlxuICA8bGk+U3U8L2xpPlxuPC91bD5cbntGZWJydWFyfVxue01hcmNofVxue0FwcmlsfVxue01heX1cbntKdW5lfVxue0p1bHl9XG57QXVndXN0fVxue1NlcHRlbWJlcn1cbntPY3RvYmVyfVxuPGJyLz5cbnt0YWJzfVxuICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cblxuXG5mdW5jdGlvbiBBcnJvd3MoKXtcbiAgICBjb25zdCBtb250aHMgPSBbXCJGZWJydWFyeVwiLCBcIk1hcmNoXCIsIFwiQXByaWxcIiwgXCJNYXlcIiwgXCJKdW5lXCIsIFwiSnVseVwiLCBcIkF1Z3VzdFwiLCBcIlNlcHRlbWJlclwiLCBcIk9jdG9iZXJcIl1cbiAgICBsZXQgYXJyb3dzOiBKU1guRWxlbWVudFtdID0gW107XG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG1vbnRocy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgaWYgKGluZGV4ID09IDApIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBtb250aHNbaW5kZXhdID0gJHttb250aHNbaW5kZXhdfWAgKVxuICAgICAgICAgICAgYXJyb3dzLnB1c2goXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb250aCBoaWRlYWJsZVwiIGlkPXtgJHttb250aHNbaW5kZXhdfS1oZWFkYH0gc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT4gICAgICBcbiAgICAgICAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwibmV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e3N3aXRjaFRvKG1vbnRoc1tpbmRleCsxXSl9PjxkaXY+JiMxMDA5NTs8L2Rpdj48L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge21vbnRoc1tpbmRleF19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7Zm9udFNpemU6XCIxOHB4XCJ9fT4yMDI0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgaWYgKGluZGV4ID09IChtb250aHMubGVuZ3RoIC0gMSkpIHtcbiAgICAgICAgICAgIGFycm93cy5wdXNoKFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9udGggaGlkZWFibGVcIiBpZD17YCR7bW9udGhzW2luZGV4XX0taGVhZGB9IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gICAgICBcbiAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJwcmV2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtzd2l0Y2hUbyhtb250aHNbaW5kZXgtMV0pfT48ZGl2PiYjMTAwOTQ7PC9kaXY+PC9hPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICAgICAge21vbnRoc1tpbmRleF19XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT17e2ZvbnRTaXplOlwiMThweFwifX0+MjAyNDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIGVsc2V7XG4gICAgICAgICAgICBhcnJvd3MucHVzaChcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vbnRoIGhpZGVhYmxlXCIgaWQ9e2Ake21vbnRoc1tpbmRleF19LWhlYWRgfSAgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiAgICAgIFxuICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICA8c3BhbiA+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJwcmV2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtzd2l0Y2hUbyhtb250aHNbaW5kZXgtMV0pfT48ZGl2PiYjMTAwOTQ7PC9kaXY+PC9hPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwibmV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17c3dpdGNoVG8obW9udGhzW2luZGV4KzFdKX0+PGRpdj4mIzEwMDk1OzwvZGl2PjwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHttb250aHNbaW5kZXhdfVxuICAgICAgICAgICAgICAgICAgICAgICAgPGJyLz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9e3tmb250U2l6ZTpcIjE4cHhcIn19PjIwMjQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIClcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYXJyb3dzOyBcbn1cblxuZnVuY3Rpb24gc3dpdGNoVG8obW9udGg6IHN0cmluZyl7XG4gICAgY29uc29sZS5sb2coYENhbGxlZCBOZXh0IERhdGUgd2l0aCAke21vbnRofWApXG4gICAgY29uc3QgbmV4dGRhdGUgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhcIm5leHREYXRlIG9wZW5cIilcbiAgICAgICAgbGV0IGVsZW1lbnRzVG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImhpZGVhYmxlXCIpOyBcbiAgICAgICAgY29uc29sZS5sb2coZWxlbWVudHNUb0hpZGUpXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBlbGVtZW50c1RvSGlkZS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgXG4gICAgICAgICAgICAoZWxlbWVudHNUb0hpZGVbaW5kZXhdIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7ICBcbiAgICAgICAgfSBcbiAgICAgICAgXG4gICAgICAgIGNvbnNvbGUubG9nKFwibmV3IG1vbnRoIGlzOiBcIiArIG1vbnRoICsgXCIgYW5kIHdlIGFyZSBjYWxsaW5nIFwiICsgIGAke21vbnRofS1uYW1lYClcbiAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke21vbnRofS1kYXRlc2ApKSB7XG4gICAgICAgICAgICBsZXQgbmV3ZGF0ZXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHttb250aH0tZGF0ZXNgKTtcbiAgICAgICAgICAgIChuZXdkYXRlcyBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgICAgICAgfVxuICAgICAgICBlbHNle1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgRWxlbWVudCB3aXRoIGlkICR7bW9udGh9LWRhdGVzIGRvZXMgbm90IGV4aXN0YClcbiAgICAgICAgfVxuICAgICAgICBsZXQgbmV3QXJyb3dzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYCR7bW9udGh9LWhlYWRgKTtcbiAgICAgICAgKG5ld0Fycm93cyBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgICAgICAgY29uc29sZS5sb2cobmV3QXJyb3dzKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG5leHRkYXRlOyAgXG59XG5cbmZ1bmN0aW9uIHNob3dFbnRyeShlbnRyeTpzdHJpbmcpe1xuICAgIGNvbnN0IHNob3dlbnRyeSA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgICAgIGxldCBlbGVtZW50c1RvSGlkZSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJjYWwtZW50cnlcIik7IFxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZWxlbWVudHNUb0hpZGUubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgIFxuICAgICAgICAgICAgKGVsZW1lbnRzVG9IaWRlW2luZGV4XSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiOyAgXG4gICAgICAgIH0gXG4gICAgICAgIGxldCBlbnRyeUJsb2NrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZW50cnkpO1xuICAgICAgICAoZW50cnlCbG9jayBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcbiAgICB9XG4gICAgcmV0dXJuIHNob3dlbnRyeTsgXG59XG5cbmNvbnN0IEZlYnJ1YXIgPSA8dWwgaWQ9XCJGZWJydWFyeS1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIj4gIFxuPGxpPjwvbGk+XG48bGk+PC9saT5cbjxsaT48L2xpPlxuICA8bGk+MTwvbGk+XG4gIDxsaT4yPC9saT5cbiAgPGxpPjM8L2xpPlxuICA8bGk+NDwvbGk+XG4gIDxsaT41PC9saT5cbiAgPGxpPjY8L2xpPlxuICA8bGk+NzwvbGk+XG4gIDxsaT44PC9saT5cbiAgPGxpPjk8L2xpPlxuICA8bGk+MTA8L2xpPlxuICA8bGk+MTE8L2xpPlxuICA8bGk+MTI8L2xpPlxuICA8bGk+MTM8L2xpPlxuICA8bGk+MTQ8L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+MTY8L2xpPlxuICA8bGk+MTc8L2xpPlxuICA8bGk+MTg8L2xpPlxuICA8bGk+MTk8L2xpPlxuICA8bGk+MjA8L2xpPlxuICA8bGk+MjE8L2xpPlxuICA8bGk+MjI8L2xpPlxuICA8bGk+MjM8L2xpPlxuICA8bGk+MjQ8L2xpPlxuICA8bGk+MjU8L2xpPlxuICA8bGk+MjY8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiZmVicnVhcnkyN1wiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Mjc8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT4yODwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJmZWJydWFyeTI5XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yOTwvc3Bhbj48L2E+PC9saT5cblxuPC91bD5cbmNvbnN0IE1hcmNoID0gPHVsIGlkPVwiTWFyY2gtZGF0ZXNcIiBjbGFzc05hbWU9XCJkYXlzIGhpZGVhYmxlXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiAgXG48bGk+PC9saT5cbjxsaT48L2xpPlxuPGxpPjwvbGk+XG48bGk+PC9saT5cbiAgPGxpPjE8L2xpPlxuICA8bGk+MjwvbGk+XG4gIDxsaT4zPC9saT5cbiAgPGxpPjQ8L2xpPlxuICA8bGk+NTwvbGk+XG4gIDxsaT42PC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1hcmNoN1wiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Nzwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjg8L2xpPlxuICA8bGk+OTwvbGk+XG4gIDxsaT4xMDwvbGk+XG4gIDxsaT4xMTwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDEyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMjwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjEzPC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1hcmNoMTRcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjE0PC9zcGFuPjwvYT48L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+MTY8L2xpPlxuICA8bGk+MTc8L2xpPlxuICA8bGk+MTg8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwibWFyY2gxOVwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTk8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT4yMDwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDIxXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yMTwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjIyPC9saT5cbiAgPGxpPjIzPC9saT5cbiAgPGxpPjI0PC9saT5cbiAgPGxpPjI1PC9saT5cbiAgPGxpPjI2PC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1hcmNoMjdcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjI3PC9zcGFuPjwvYT48L2xpPlxuICA8bGk+Mjg8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwibWFyY2gyOVwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Mjk8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT4zMDwvbGk+XG4gIDxsaT4zMTwvbGk+XG48L3VsPlxuY29uc3QgQXByaWwgPSA8dWwgaWQ9XCJBcHJpbC1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICBcbiAgPGxpPjE8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiYXByaWwyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yPC9zcGFuPjwvYT48L2xpPlxuICA8bGk+MzwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDRcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjQ8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT41PC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsNlwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Njwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjc8L2xpPlxuICA8bGk+ODwvbGk+XG4gIDxsaT45PC9saT5cbiAgPGxpPjEwPC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsMTFcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjExPC9zcGFuPjwvYT48L2xpPlxuICA8bGk+MTI8L2xpPlxuICA8bGk+MTM8L2xpPlxuICA8bGk+MTQ8L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiYXByaWwxNlwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTY8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT4xNzwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDE4XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xODwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjE5PC9saT5cbiAgPGxpPjIwPC9saT5cbiAgPGxpPjIxPC9saT5cbiAgPGxpPjIyPC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsMjNcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjIzPC9zcGFuPjwvYT48L2xpPlxuICA8bGk+MjQ8L2xpPlxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiYXByaWwyNVwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MjU8L3NwYW4+PC9hPjwvbGk+XG4gIDxsaT4yNjwvbGk+XG4gIDxsaT4yNzwvbGk+XG4gIDxsaT4yODwvbGk+XG4gIDxsaT4yOTwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDMwXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4zMDwvc3Bhbj48L2E+PC9saT5cbjwvdWw+XG5jb25zdCBNYXkgPSA8dWwgaWQ9XCJNYXktZGF0ZXNcIiBjbGFzc05hbWU9XCJkYXlzIGhpZGVhYmxlXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiAgXG48bGk+PC9saT5cbjxsaT48L2xpPlxuICA8bGk+MTwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXkyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yPC9zcGFuPjwvYT48L2xpPlxuICA8bGk+MzwvbGk+XG4gIDxsaT40PC9saT5cbiAgPGxpPjU8L2xpPlxuICA8bGk+NjwvbGk+XG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXk3XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj43PC9zcGFuPjwvYT48L2xpPlxuICA8bGk+ODwvbGk+XG4gIDxsaT45PC9saT5cbiAgPGxpPjEwPC9saT5cbiAgPGxpPjExPC9saT5cbiAgPGxpPjEyPC9saT5cbiAgPGxpPjEzPC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1heTE0XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xNDwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjE1PC9saT5cbiAgPGxpPjE2PC9saT5cbiAgPGxpPjE3PC9saT5cbiAgPGxpPjE4PC9saT5cbiAgPGxpPjE5PC9saT5cbiAgPGxpPjIwPC9saT5cbiAgPGxpPjIxPC9saT5cbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1heTIyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yMjwvc3Bhbj48L2E+PC9saT5cbiAgPGxpPjIzPC9saT5cbiAgPGxpPjI0PC9saT5cbiAgPGxpPjI1PC9saT5cbiAgPGxpPjI2PC9saT5cbiAgPGxpPjI3PC9saT5cbiAgPGxpPjI4PC9saT5cbiAgPGxpPjI5PC9saT5cbiAgPGxpPjMwPC9saT5cbiAgPGxpPjMxPC9saT5cbjwvdWw+XG5jb25zdCBKdW5lID0gPHVsIGlkPVwiSnVuZS1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICBcbjxsaT48L2xpPlxuPGxpPjwvbGk+XG48bGk+PC9saT5cbjxsaT48L2xpPlxuPGxpPjwvbGk+XG4gIDxsaT4xPC9saT5cbiAgPGxpPjI8L2xpPlxuICA8bGk+MzwvbGk+XG4gIDxsaT40PC9saT5cbiAgPGxpPjU8L2xpPlxuICA8bGk+NjwvbGk+XG4gIDxsaT43PC9saT5cbiAgPGxpPjg8L2xpPlxuICA8bGk+OTwvbGk+XG4gIDxsaT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMDwvc3Bhbj48L2xpPlxuICA8bGk+MTE8L2xpPlxuICA8bGk+MTI8L2xpPlxuICA8bGk+MTM8L2xpPlxuICA8bGk+MTQ8L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+MTY8L2xpPlxuICA8bGk+MTc8L2xpPlxuICA8bGk+MTg8L2xpPlxuICA8bGk+MTk8L2xpPlxuICA8bGk+MjA8L2xpPlxuICA8bGk+MjE8L2xpPlxuICA8bGk+MjI8L2xpPlxuICA8bGk+MjM8L2xpPlxuICA8bGk+MjQ8L2xpPlxuICA8bGk+MjU8L2xpPlxuICA8bGk+MjY8L2xpPlxuICA8bGk+Mjc8L2xpPlxuICA8bGk+Mjg8L2xpPlxuICA8bGk+Mjk8L2xpPlxuICA8bGk+MzA8L2xpPlxuPC91bD5cbmNvbnN0IEp1bHkgPSA8dWwgaWQ9XCJKdWx5LWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxuICA8bGk+MTwvbGk+XG4gIDxsaT4yPC9saT5cbiAgPGxpPjM8L2xpPlxuICA8bGk+NDwvbGk+XG4gIDxsaT41PC9saT5cbiAgPGxpPjY8L2xpPlxuICA8bGk+NzwvbGk+XG4gIDxsaT44PC9saT5cbiAgPGxpPjk8L2xpPlxuICA8bGk+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTA8L3NwYW4+PC9saT5cbiAgPGxpPjExPC9saT5cbiAgPGxpPjEyPC9saT5cbiAgPGxpPjEzPC9saT5cbiAgPGxpPjE0PC9saT5cbiAgPGxpPjE1PC9saT5cbiAgPGxpPjE2PC9saT5cbiAgPGxpPjE3PC9saT5cbiAgPGxpPjE4PC9saT5cbiAgPGxpPjE5PC9saT5cbiAgPGxpPjIwPC9saT5cbiAgPGxpPjIxPC9saT5cbiAgPGxpPjIyPC9saT5cbiAgPGxpPjIzPC9saT5cbiAgPGxpPjI0PC9saT5cbiAgPGxpPjI1PC9saT5cbiAgPGxpPjI2PC9saT5cbiAgPGxpPjI3PC9saT5cbiAgPGxpPjI4PC9saT5cbiAgPGxpPjI5PC9saT5cbiAgPGxpPjMwPC9saT5cbiAgPGxpPjMxPC9saT5cbjwvdWw+XG5jb25zdCBBdWd1c3QgPSA8dWwgaWQ9XCJBdWd1c3QtZGF0ZXNcIiBjbGFzc05hbWU9XCJkYXlzIGhpZGVhYmxlXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiAgXG48bGk+PC9saT5cbjxsaT48L2xpPlxuPGxpPjwvbGk+XG4gIDxsaT4xPC9saT5cbiAgPGxpPjI8L2xpPlxuICA8bGk+MzwvbGk+XG4gIDxsaT40PC9saT5cbiAgPGxpPjU8L2xpPlxuICA8bGk+NjwvbGk+XG4gIDxsaT43PC9saT5cbiAgPGxpPjg8L2xpPlxuICA8bGk+OTwvbGk+XG4gIDxsaT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMDwvc3Bhbj48L2xpPlxuICA8bGk+MTE8L2xpPlxuICA8bGk+MTI8L2xpPlxuICA8bGk+MTM8L2xpPlxuICA8bGk+MTQ8L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+MTY8L2xpPlxuICA8bGk+MTc8L2xpPlxuICA8bGk+MTg8L2xpPlxuICA8bGk+MTk8L2xpPlxuICA8bGk+MjA8L2xpPlxuICA8bGk+MjE8L2xpPlxuICA8bGk+MjI8L2xpPlxuICA8bGk+MjM8L2xpPlxuICA8bGk+MjQ8L2xpPlxuICA8bGk+MjU8L2xpPlxuICA8bGk+MjY8L2xpPlxuICA8bGk+Mjc8L2xpPlxuICA8bGk+Mjg8L2xpPlxuICA8bGk+Mjk8L2xpPlxuICA8bGk+MzA8L2xpPlxuICA8bGk+MzE8L2xpPlxuPC91bD5cblxuY29uc3QgU2VwdGVtYmVyID0gPHVsIGlkPVwiU2VwdGVtYmVyLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxuPGxpPjwvbGk+XG48bGk+PC9saT5cbjxsaT48L2xpPlxuPGxpPjwvbGk+XG48bGk+PC9saT5cbjxsaT48L2xpPlxuICA8bGk+MTwvbGk+XG4gIDxsaT4yPC9saT5cbiAgPGxpPjM8L2xpPlxuICA8bGk+NDwvbGk+XG4gIDxsaT41PC9saT5cbiAgPGxpPjY8L2xpPlxuICA8bGk+NzwvbGk+XG4gIDxsaT44PC9saT5cbiAgPGxpPjk8L2xpPlxuICA8bGk+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTA8L3NwYW4+PC9saT5cbiAgPGxpPjExPC9saT5cbiAgPGxpPjEyPC9saT5cbiAgPGxpPjEzPC9saT5cbiAgPGxpPjE0PC9saT5cbiAgPGxpPjE1PC9saT5cbiAgPGxpPjE2PC9saT5cbiAgPGxpPjE3PC9saT5cbiAgPGxpPjE4PC9saT5cbiAgPGxpPjE5PC9saT5cbiAgPGxpPjIwPC9saT5cbiAgPGxpPjIxPC9saT5cbiAgPGxpPjIyPC9saT5cbiAgPGxpPjIzPC9saT5cbiAgPGxpPjI0PC9saT5cbiAgPGxpPjI1PC9saT5cbiAgPGxpPjI2PC9saT5cbiAgPGxpPjI3PC9saT5cbiAgPGxpPjI4PC9saT5cbiAgPGxpPjI5PC9saT5cbiAgPGxpPjMwPC9saT5cbjwvdWw+XG5cbmNvbnN0IE9jdG9iZXIgPSA8dWwgaWQ9XCJPY3RvYmVyLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxuPGxpPjwvbGk+XG4gIDxsaT4xPC9saT5cbiAgPGxpPjI8L2xpPlxuICA8bGk+MzwvbGk+XG4gIDxsaT40PC9saT5cbiAgPGxpPjU8L2xpPlxuICA8bGk+NjwvbGk+XG4gIDxsaT43PC9saT5cbiAgPGxpPjg8L2xpPlxuICA8bGk+OTwvbGk+XG4gIDxsaT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMDwvc3Bhbj48L2xpPlxuICA8bGk+MTE8L2xpPlxuICA8bGk+MTI8L2xpPlxuICA8bGk+MTM8L2xpPlxuICA8bGk+MTQ8L2xpPlxuICA8bGk+MTU8L2xpPlxuICA8bGk+MTY8L2xpPlxuICA8bGk+MTc8L2xpPlxuICA8bGk+MTg8L2xpPlxuICA8bGk+MTk8L2xpPlxuICA8bGk+MjA8L2xpPlxuICA8bGk+MjE8L2xpPlxuICA8bGk+MjI8L2xpPlxuICA8bGk+MjM8L2xpPlxuICA8bGk+MjQ8L2xpPlxuICA8bGk+MjU8L2xpPlxuICA8bGk+MjY8L2xpPlxuICA8bGk+Mjc8L2xpPlxuICA8bGk+Mjg8L2xpPlxuICA8bGk+Mjk8L2xpPlxuICA8bGk+MzA8L2xpPlxuICA8bGk+MzE8L2xpPlxuPC91bD5cblxuXG4iLCAiaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9DYWxlbmRhci9DYWxlbmRhclwiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFByb0Rlc2MoKSB7XG4gIHVzZVRhYk5hdmlnYXRpb24oKTtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPENhbGVuZGFyLz5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbiAgIiwgImV4cG9ydCBmdW5jdGlvbiBQUk9ERVNDKCkge1xuXG4gIHJldHVybiAoXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIlByb2plY3RcIiB0aXRsZTI9XCJEb2N1bWVudGF0aW9uXCIgaWQ9XCJkb2NoZWFkXCI+XG4gICAgICBcbiAgICA8L0hlYWRlckJveD5cbiAgKTtcbn1cblxuaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjsiLCAiaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9RdW90ZXNcIjtcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBKdWRnaW5nKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiT3ZlcnZpZXdcIiBpZD1cIk92ZXJ2aWV3XCI+XG4gICAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJKdWRnaW5nIGZvciBpR0VNIGlzIG9uZSBvZiB0aGUgaGlnaGxpZ2h0cyBvbiBteSBwcm9mZXNzaW9uYWwgY2FsZW5kYXJcdTIwMjZcIiBjaXRlPVwiRHIuIE5hbmN5IEJ1cmdlc3MsIERpcmVjdG9yIG9mIEp1ZGdpbmcgYXQgaUdFTSBIUVwiLz5cbiAgICAgICAgICA8cD5UaGUgaUdFTSBjb21wZXRpdGlvbiBjZWxlYnJhdGVzIGlubm92YXRpb24gaW4gc3ludGhldGljIGJpb2xvZ3ksIG9mZmVyaW5nIHRlYW1zIHRoZSBjaGFuY2UgdG8gY29tcGV0ZSBmb3IgYSByYW5nZSBvZiBhd2FyZHMgYmFzZWQgb24gdGhlaXIgYWNoaWV2ZW1lbnRzIGluIFxuICAgICAgICAgICAgdmFyaW91cyBjYXRlZ29yaWVzLiBKdWRnaW5nIGlzIGJhc2VkIG9uIGhvdyB3ZWxsIHRlYW1zIGludGVncmF0ZSBzY2llbnRpZmljIHJpZ29yIHdpdGggc29jaWV0YWwgaW1wYWN0LCBzYWZldHksIGFuZCBjcmVhdGl2aXR5LiBXZSBhaW0gdG8gY29tcGV0ZSBmb3IgXG4gICAgICAgICAgICBzZXZlcmFsIHByZXN0aWdpb3VzIGF3YXJkcywgaW5jbHVkaW5nIDxiPkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM8L2I+LCA8Yj5CaW9zYWZldHkgYW5kIFNlY3VyaXR5PC9iPiBBd2FyZCwgYW5kIDxiPkJlc3QgTmV3IEJhc2ljIFBhcnQ8L2I+LiBBZGRpdGlvbmFsbHksIHdlIHNlZWsgcmVjb2duaXRpb24gZm9yIG91ciA8Yj50aGVyYXBldXRpYyBwcm9qZWN0PC9iPiBhbmQgd2lsbCBzdHJpdmUgZm9yIGV4Y2VsbGVuY2UgaW4gYmVzdCB3aWtpLCBiZXN0IHByb21vdGlvbmFsIHZpZGVvLCBhbmQgdGhlIGlHRU1lcnMgcHJpemUuIDwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL290aGVyL3RoZXJhcGV1dGljLWF3YXJkLnN2Z1wiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL290aGVyL2locC1hd2FyZC5zdmdcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci9zYWZldHktYXdhcmQuc3ZnXCIgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3RoZXIvYmFzaWMtcGFydC1hd2FyZC5zdmdcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci93aWtpLWF3YXJkLnN2Z1wiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCZXN0IFRoZXJhcGV1dGljIFByb2plY3RcIiBpZD1cIkJlc3QgVGhlcmFwZXV0aWMgUHJvamVjdFwiPlxuICAgICAgICAgIDxwPk91ciBwcm9qZWN0IGlzIGEgZHVhbCB0aGVyYXBldXRpYyBhcHByb2FjaCB0YXJnZXRpbmcgY3lzdGljIGZpYnJvc2lzIChDRiksIHNwZWNpZmljYWxseSB0aGUgbW9zdCBjb21tb24gbXV0YXRpb24sIEY1MDhkZWwuIFdlIGFpbSB0byBkZXZlbG9wIGEgY3VyYXRpdmUgc29sdXRpb24gYnkgY29ycmVjdGluZyB0aGUgZ2VuZXRpYyBkZWZlY3QgdXNpbmcgUHJpbWUgRWRpdGluZyBUZWNobm9sb2d5IHdoaWxlIGVuaGFuY2luZyB0aGUgZm9sZGluZyBvZiB0aGUgQ0ZUUiBwcm90ZWluLiBBZGRpdGlvbmFsbHksIHdlIGRldmVsb3BlZCBhIExpcGlkIE5hbm9wYXJ0aWNsZSBmb3IgdGhlIGNlbGwtc3BlY2lmaWMgdGFyZ2V0aW5nIG9mIGx1bmcgZXBpdGhlbGlhbCBjZWxscy4gVGhpcyBwcm9qZWN0IGRpcmVjdGx5IGFkZHJlc3NlcyB0aGUgdW5tZXQgdGhlcmFwZXV0aWMgbmVlZHMgb2YgQ0YgcGF0aWVudHMsIHByb3ZpZGluZyBhIGxvbmctdGVybSBhbmQgcG90ZW50aWFsbHkgY3VyYXRpdmUgc29sdXRpb24uIDwvcD5cbiAgICAgICAgICA8aDQ+SGFzIHRoZSB0ZWFtIGNsZWFybHkgZGVmaW5lZCB0aGUgdGhlcmFwZXV0aWMgcHJvYmxlbSB0aGV5IGFyZSBhZGRyZXNzaW5nPyA8L2g0PlxuICAgICAgICAgIDxwPldlIGFyZSBhZGRyZXNzaW5nIEN5c3RpYyBGaWJyb3NpcyAoQ0YpLCBhIHNldmVyZSBnZW5ldGljIGRpc29yZGVyIGNhdXNlZCBieSBtdXRhdGlvbnMgaW4gdGhlIENGVFIgZ2VuZSwgcGFydGljdWxhcmx5IHRoZSBGNTA4ZGVsIG11dGF0aW9uLiBUaGlzIG11dGF0aW9uIGxlYWRzIHRvIHRoaWNrIG11Y3VzIGFjY3VtdWxhdGlvbiBpbiB2aXRhbCBvcmdhbnMsIGNhdXNpbmcgY2hyb25pYyBpbmZlY3Rpb25zIGFuZCBkYW1hZ2UsIHBhcnRpY3VsYXJseSBpbiB0aGUgbHVuZ3MuIE91ciBmb2N1cyBvbiB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgd2hpY2ggYWZmZWN0cyBhcm91bmQgOTAgJSBvZiBDRiBwYXRpZW50cyBpbiBFdXJvcGUgYW5kIGJleW9uZCwgZW5zdXJlcyBvdXIgcHJvamVjdCB0YXJnZXRzIGEgd2VsbC1kZWZpbmVkIGFuZCB3aWRlc3ByZWFkIHRoZXJhcGV1dGljIG5lZWQuIDwvcD5cbiAgICAgICAgICA8aDQ+SG93IHdlbGwgaXMgdGhlIHRoZXJhcGV1dGljIG1lY2hhbmlzbSBvZiBhY3Rpb24gdW5kZXJzdG9vZCBhbmQgZGVtb25zdHJhdGVkPyA8L2g0PlxuICAgICAgICAgIDxwPk91ciBwcm9qZWN0IGVtcGxveXMgYSBkdWFsIGFwcHJvYWNoOiA8L3A+XG4gICAgICAgICAgPG9sPlxuICAgICAgICAgICAgPGxpPm9ycmVjdGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiB1c2luZyBvdXIgUHJpbWUgRWRpdGluZyBUZWNobm9sb2d5XHRQcmltZUd1aWRlLCBhIHdlbGwgdW5kZXJzdG9vZCBnZW5lIGVkaXRpbmcgdG9vbCBkZXNpZ25lZCB0byByZXBhaXIgZGVmZWN0aXZlIGdlbmVzPC9saT5cbiAgICAgICAgICAgIDxsaT5kZWxpdmVyaW5nIG9mIG91ciBtUk5BIHRoZXJhcGV1dGljIHZpYSBzcGVjaWFsaXplZCBMaXBpZCBOYW5vcGFydGljbGVzIEFpckJ1ZGR5LCBlbnN1cmluZyBkaXJlY3QgYXBwbGljYXRpb24gaW4gbHVuZyBlcGl0aGVsaWFsIGNlbGxzPC9saT5cbiAgICAgICAgICA8L29sPlxuICAgICAgICAgIDxoND5IYXMgdGhlIHRlYW0gdmFsaWRhdGVkIHRoZSBlZmZlY3RpdmVuZXNzIG9mIHRoZWlyIHRoZXJhcGV1dGljIGFwcHJvYWNoPyA8L2g0PlxuICAgICAgICAgIDxwPldlIHRlc3RlZCB0aGUgdGhlcmFwZXV0aWMgZWZmaWNhY3kgPGk+aW4gdml0cm88L2k+IHVzaW5nIHBhdGllbnQtZGVyaXZlZCBwcmltYXJ5IGVwaXRoZWxpYWwgY2VsbHMgaW4gQWlyIExpcXVpZCBDdWx0dXJlIChBTEkpIGFuZCBBcGljYWwtT3V0IE9yZ2Fub2lkcyBjYXJyeWluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbi4gVGhlc2UgY2VsbHMgd2VyZSB0cmVhdGVkIHdpdGggUHJlQ3lzZSB0byBhc3Nlc3MgdGhlIGdlbmV0aWMgY29ycmVjdGlvbiwgd2hpbGUgZG93bnN0cmVhbSBhcHBsaWNhdGlvbnMgd2lsbCB2YWxpZGF0ZSB0aGUgaW1wcm92ZWQgZm9sZGluZyBhbmQgZnVuY3Rpb24gb2YgdGhlIENGVFIgcHJvdGVpbi4gT3VyIGV4cGVyaW1lbnRhbCBkZXNpZ24gYWxsb3dzIHVzIHRvIGdhdGhlciBwcm9vZi1vZi1jb25jZXB0IGRhdGEsIGRlbW9uc3RyYXRpbmcgdGhlIHZpYWJpbGl0eSBvZiBib3RoIGdlbmUgY29ycmVjdGlvbiBhbmQgZWZmaWNpZW50IGRlbGl2ZXJ5LiA8L3A+XG4gICAgICAgICAgPGg0PkRvZXMgdGhlIHByb2plY3QgY29uc2lkZXIgb2ZmLXRhcmdldCBlZmZlY3RzIG9yIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzPzwvaDQ+XG4gICAgICAgICAgPHA+QnkgaW5jb3Jwb3JhdGluZyBGQU5aT1IsIGEgbmV3IGV1a2FyeW90aWMgUk5BLWJpbmRpbmcgRE5BLWVuZG9udWNsZWFzZXMsIHdlIGVuaGFuY2UgdGhlIHByZWNpc2lvbiBvZiBQcmltZSBFZGl0aW5nLiBTaXRlLWRpcmVjdGVkIG11dGFnZW5lc2lzIGVuYWJsZSBuaWNrYXNpZmljYXRpb24gb2Ygb3VyIENhc1ggYW5kIEZBTlpPUiBjYW5kaWRhdGVzLiBUaGlzIGVuYWJsZXMgdGhlIHVzYWdlIGFzIFByaW1lIEVkaXRvciwgd2hpbGUgZW5oYW5jaW5nIGVmZmljaWVuY3kgYW5kIGRlY3JlYXNpbmcgUEUgY29tcGxleCBzaXplLiBXZSBoYXZlIGRlc2lnbmVkIG91ciBzeXN0ZW0gdG8gbWluaW1pemUgdW5pbnRlbmRlZCBjb25zZXF1ZW5jZXMsIGVuc3VyaW5nIHRoYXQgb3VyIHRoZXJhcGV1dGljIGludGVydmVudGlvbiBpcyBzYWZlIGZvciBjbGluaWNhbCBhcHBsaWNhdGlvbi4gPC9wPlxuICAgICAgICAgIDxoND5XaGF0IHBvdGVudGlhbCBkb2VzIHRoZSBwcm9qZWN0IGhhdmUgZm9yIHJlYWwtd29ybGQgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zPyA8L2g0PlxuICAgICAgICAgIDxwPk91ciBkdWFsIGFwcHJvYWNoIGhhcyBzaWduaWZpY2FudCBwb3RlbnRpYWwgZm9yIHJlYWwtd29ybGQgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiBQcmVDeXNlIHByb3ZpZGVzIGEgY3VyYXRpdmUgZ2VuZXRpYyBzb2x1dGlvbiwgaW1wcm92ZSBpbW1lZGlhdGUgcGh5c2lvbG9naWNhbCBmdW5jdGlvbnMuIFRoZSBwcm9qZWN0IGFkZHJlc3NlcyBhIGNydWNpYWwgbmVlZCBpbiBDRiB0aGVyYXB5IGJ5IHRhcmdldGluZyBib3RoIHRoZSByb290IGdlbmV0aWMgY2F1c2UgYW5kIHRoZSByZXN1bHRpbmcgcHJvdGVpbiBkeXNmdW5jdGlvbiwgb2ZmZXJpbmcgYSBtb3JlIGNvbXByZWhlbnNpdmUgc29sdXRpb24gdGhhbiBjdXJyZW50IHRyZWF0bWVudHMuIDwvcD5cbiAgICAgICAgICA8aDQ+SG93IHdlbGwgZGlkIHRoZSB0ZWFtIGludGVncmF0ZSBzYWZldHkgaW50byB0aGVpciB0aGVyYXBldXRpYyBkZXNpZ24/IDwvaDQ+XG4gICAgICAgICAgPHA+U2FmZXR5IGlzIGEgcHJpb3JpdHkgaW4gb3VyIHByb2plY3QuIFRoZSB1c2Ugb2YgRkFOWk9SIGVuaGFuY2VzIHRoZSBzcGVjaWZpY2l0eSBvZiBvdXIgZ2VuZS1lZGl0aW5nIGFwcHJvYWNoLCByZWR1Y2luZyB0aGUgbGlrZWxpaG9vZCBvZiBvZmYtdGFyZ2V0IGdlbmUgbW9kaWZpY2F0aW9ucy4gQWRkaXRpb25hbGx5LCB3ZSBhcmUgY29tbWl0dGVkIHRvIHJpZ29yb3VzIDxpPmluIHZpdHJvPC9pPiB0ZXN0aW5nIGJlZm9yZSBhZHZhbmNpbmcgdG8gPGk+aW4gdml2bzwvaT4gbW9kZWxzLCBlbnN1cmluZyB0aGF0IG91ciB0aGVyYXBldXRpYyBpbnRlcnZlbnRpb25zIGRvIG5vdCBwb3NlIHJpc2tzIHRvIHBhdGllbnRzLiBGb3IgdGhpcywgd2UgZGV2ZWxvcGVkIGFuIENGLXNwZWNpZmljIGZsdW9yZXNjZW5jZS1iYXNlZCBSZXBvcnRlciBTeXN0ZW0gbWltaWNraW5nIHRoZSBDRi1zcGVjaWZpYyBnZW5vbWljIGFsdGVyYXRpb24uIDwvcD5cbiAgICAgICAgICA8aDQ+VG8gd2hhdCBleHRlbnQgaGFzIHRoZSB0ZWFtIGNvbnNpZGVyZWQgcGF0aWVudCBpbXBhY3Q/IDwvaDQ+XG4gICAgICAgICAgPHA+V2UgaGF2ZSBjbG9zZWx5IGFsaWduZWQgb3VyIHByb2plY3Qgd2l0aCBwYXRpZW50IG5lZWRzIGJ5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgd2hpY2ggYWZmZWN0cyBhIHNpZ25pZmljYW50IHBvcnRpb24gb2YgQ0YgcGF0aWVudHMgd29ybGR3aWRlLiBPdXIgdGhlcmFwZXV0aWMgc29sdXRpb24gYWltcyB0byBpbXByb3ZlIHF1YWxpdHkgb2YgbGlmZSBieSBhZGRyZXNzaW5nIHRoZSByb290IGNhdXNlIG9mIENGIGFuZCByZWR1Y2luZyB0aGUgYnVyZGVuIG9mIGxpZmVsb25nIHRyZWF0bWVudHMuIFdlIGFyZSBhbHNvIGluIGNvbnRhY3Qgd2l0aCBDRiBwYXRpZW50cyBhbmQgaGF2ZSBnYXRoZXJlZCBpbnNpZ2h0cyBmcm9tIGhlYWx0aGNhcmUgcHJvdmlkZXJzIHRvIGVuc3VyZSBvdXIgdGhlcmFweSBpcyBwYXRpZW50LWNlbnRyaWMuIFByZUN5c2Ugb2ZmZXJzIGEgbG9uZy10aW1lIHNvbHV0aW9uLCB3aGlsZSBiZWluZyBjb3N0LWVmZmljaWVudCBhbmQgZWFzeS10by11c2UuIDwvcD5cbiAgICAgICAgICA8cD5PdXIgaW5ub3ZhdGl2ZSB0aGVyYXBldXRpYyBwcm9qZWN0IGxldmVyYWdlcyB0aGUgcG93ZXIgb2YgZ2VuZSBlZGl0aW5nIGFuZCBwcm90ZWluIG1vZHVsYXRpb24gdG8gb2ZmZXIgYSBwb3RlbnRpYWxseSBjdXJhdGl2ZSBzb2x1dGlvbiBmb3IgQ3lzdGljIEZpYnJvc2lzLCBwYXJ0aWN1bGFybHkgZm9yIHRoZSBwcmV2YWxlbnQgRjUwOGRlbCBtdXRhdGlvbi4gV2l0aCBhIHdlbGwtdmFsaWRhdGVkIHNjaWVudGlmaWMgZm91bmRhdGlvbiwgY29tcHJlaGVuc2l2ZSBzYWZldHkgbWVhc3VyZXMsIGFuZCBhIHN0cm9uZyBmb2N1cyBvbiBwYXRpZW50IG5lZWRzLCB3ZSBiZWxpZXZlIG91ciBwcm9qZWN0IGV4ZW1wbGlmaWVzIHRoZSBxdWFsaXRpZXMgZGVzZXJ2aW5nIG9mIHRoZSA8Yj5CZXN0IFRoZXJhcGV1dGljIFByb2plY3QgQXdhcmQ8L2I+LiBPdXIgZHVhbCBhcHByb2FjaCBwcm92aWRlcyBhIHRlbXBsYXRlIGZvciBmdXR1cmUgZ2VuZXRpYyBkaXNlYXNlIHRyZWF0bWVudHMsIHBhdmluZyB0aGUgd2F5IGZvciBtb3JlIGVmZmVjdGl2ZSBhbmQgcGVyc29uYWxpemVkIG1lZGljYWwgc29sdXRpb25zLiA8L3A+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VcIiBpZD1cIkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZVwiPlxuICAgICAgICAgIDxwPk91ciB0ZWFtXHUyMDE5cyBwcm9qZWN0IGF0IEJpZWxlZmVsZC1DZUJpVGVjIGludGVncmF0ZXMgSHVtYW4gUHJhY3RpY2VzIGludG8gZXZlcnkgYXNwZWN0IG9mIG91ciB3b3JrLCBlbnN1cmluZyB0aGF0IG91ciBzeW50aGV0aWMgYmlvbG9neSBpbm5vdmF0aW9uIGFsaWducyB3aXRoIHNvY2lldGFsIG5lZWRzLCBldGhpY2FsIGNvbnNpZGVyYXRpb25zLCBhbmQgZW52aXJvbm1lbnRhbCBzdXN0YWluYWJpbGl0eS4gQnkgcHJvYWN0aXZlbHkgZW5nYWdpbmcgd2l0aCBhIGJyb2FkIHJhbmdlIG9mIHN0YWtlaG9sZGVycywgaW5jbHVkaW5nIHNjaWVudGlzdHMsIHJlZ3VsYXRvcnkgYm9kaWVzLCBhbmQgY29tbXVuaXR5IGdyb3Vwcywgd2Ugc2hhcGVkIG91ciBwcm9qZWN0IHRvIGhhdmUgbWVhbmluZ2Z1bCBhbmQgcmVzcG9uc2libGUgaW1wYWN0cy4gT3VyIGNvbW1pdG1lbnQgdG8gdW5kZXJzdGFuZGluZyB0aGUgYnJvYWRlciBpbXBsaWNhdGlvbnMgb2Ygb3VyIHdvcmsgcG9zaXRpb25zIHVzIGFzIGEgc3Ryb25nIGNhbmRpZGF0ZSBmb3IgdGhlIDxiPkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMgQXdhcmQ8L2I+LiA8L3A+XG4gICAgICAgICAgPGg0PkludGVncmF0aW9uIG9mIEh1bWFuIFByYWN0aWNlcyA8L2g0PlxuICAgICAgICAgIDxwPldlIGFjdGl2ZWx5IGVuZ2FnZWQgd2l0aCBhIGRpdmVyc2UgYXJyYXkgb2Ygc3Rha2Vob2xkZXJzIHRocm91Z2hvdXQgb3VyIHByb2plY3QsIGZyb20gQ0YgcGF0aWVudHMgbGlrZSBNYXggQmVja21hbm5bTGlua10gdG8gY2xpbmljaWFucyBzdWNoIGFzIFByb2YuIERyLiBPbGFyaXUgW0xpbmtdLCBwaHlzaW90aGVyYXBpc3RzIGxpa2UgS2F0cmluIFdlc3Rob2ZmIFtMaW5rXSwgYW5kIGluZHVzdHJ5IGV4cGVydHMgaW5jbHVkaW5nIERyLiBCZW5qYW1pbiBXaW5rZWxqYW5uIFtMaW5rXSBhbmQgRHIuIEthdGhhcmluYSBLb2xvbmtvIFtMaW5rXS4gRWFjaCBvZiB0aGVzZSBjb2xsYWJvcmF0aW9ucyBkaXJlY3RseSBpbmZvcm1lZCBhbmQgc2hhcGVkIG91ciB0aGVyYXBldXRpYyBzb2x1dGlvbi4gTWF4IEJlY2ttYW5uXHUyMDE5cyBmaXJzdGhhbmQgZXhwZXJpZW5jZSBwcm92aWRlZCB1cyB3aXRoIGludmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgZGFpbHkgY2hhbGxlbmdlcyBvZiBsaXZpbmcgd2l0aCBDRiwgaGVscGluZyB1cyBhbGlnbiBvdXIgZ2VuZSB0aGVyYXB5IHdpdGggcGF0aWVudCBuZWVkcy4gQWRkaXRpb25hbGx5LCBjbGluaWNpYW5zIGFuZCBwaHlzaW90aGVyYXBpc3RzIGd1aWRlZCB1cyB0b3dhcmQgYSB0cmVhdG1lbnQgc3RyYXRlZ3kgdGhhdCBpcyBwcmFjdGljYWwsIGFjY2Vzc2libGUsIGFuZCBlZmZlY3RpdmUgZm9yIGRpZmZlcmVudCBwYXRpZW50IGRlbW9ncmFwaGljcy4gPC9wPlxuICAgICAgICAgIDxoND5JbnNwaXJhdGlvbiB0byBPdGhlcnMgPC9oND5cbiAgICAgICAgICA8cD5PdXIgcHJvamVjdCBzZXJ2ZXMgYXMgYSBtb2RlbCBmb3IgaG93IHN5bnRoZXRpYyBiaW9sb2d5IGNhbiBiZSBsZXZlcmFnZWQgdG8gbWVldCByZWFsLXdvcmxkIG5lZWRzIHdoaWxlIG1haW50YWluaW5nIGEgcGF0aWVudC1jZW50ZXJlZCBmb2N1cy4gQnkgaW50ZWdyYXRpbmcgZmVlZGJhY2sgZnJvbSBwYXRpZW50cyBhbmQgbWVkaWNhbCBwcm9mZXNzaW9uYWxzLCB3ZSBkZW1vbnN0cmF0ZSB0aGF0IGN1dHRpbmctZWRnZSBzY2llbmNlIGNhbiBjb2V4aXN0IHdpdGggZW1wYXRoeSBhbmQgcmVzcG9uc2liaWxpdHkuIE91ciBmb2N1cyBvbiBpbmNsdXNpdml0eSwgc2NhbGFiaWxpdHksIGFuZCBhZGRyZXNzaW5nIGdsb2JhbCBkaXNwYXJpdGllcyBpbiBDRiB0cmVhdG1lbnQgc2V0cyBhIHByZWNlZGVudCBmb3IgZnV0dXJlIGlHRU0gdGVhbXMgbG9va2luZyB0byBtYWtlIGEgbWVhbmluZ2Z1bCBpbXBhY3Qgb24gaGVhbHRoIGNoYWxsZW5nZXMuIDwvcD5cbiAgICAgICAgICA8aDQ+RG9jdW1lbnRhdGlvbiBmb3IgRnV0dXJlIFRlYW1zIDwvaDQ+XG4gICAgICAgICAgPHA+V2UgaGF2ZSBtZXRpY3Vsb3VzbHkgZG9jdW1lbnRlZCBldmVyeSBhc3BlY3Qgb2Ygb3VyIEh1bWFuIFByYWN0aWNlcyBpbnRlZ3JhdGlvbiwgcHJvdmlkaW5nIGZ1dHVyZSB0ZWFtcyB3aXRoIGEgY2xlYXIgcm9hZG1hcCBmb3IgaG93IHRvIGluY29ycG9yYXRlIHN0YWtlaG9sZGVyIGZlZWRiYWNrIGludG8gYSB0aGVyYXBldXRpYyBwcm9qZWN0LiBUaGlzIGluY2x1ZGVzIGRldGFpbGVkIGNhc2Ugc3R1ZGllcyBvbiBvdXIgaW50ZXJhY3Rpb25zIHdpdGggQ0YgcGF0aWVudHMsIG1lZGljYWwgcHJvZmVzc2lvbmFscywgYW5kIGluZHVzdHJ5IGV4cGVydHMsIGFsb25nIHdpdGggdGhlIGFkanVzdG1lbnRzIG1hZGUgdG8gb3VyIHByb2plY3QgYmFzZWQgb24gdGhlaXIgaW5wdXQuIE91ciB0aG9yb3VnaCBkb2N1bWVudGF0aW9uIGVuc3VyZXMgdGhhdCBvdGhlcnMgY2FuIGxlYXJuIGZyb20gb3VyIGFwcHJvYWNoIGFuZCBidWlsZCB1cG9uIG91ciBmaW5kaW5ncy4gPC9wPlxuICAgICAgICAgIDxoND5UaG91Z2h0ZnVsIEltcGxlbWVudGF0aW9uIDwvaDQ+XG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgaGFzIGJlZW4gZGVlcGx5IGluZm9ybWVkIGJ5IGV0aGljYWwsIGVudmlyb25tZW50YWwsIGFuZCBzb2NpZXRhbCBjb25zaWRlcmF0aW9ucy4gRm9yIGV4YW1wbGUsIG91ciBjb25zdWx0YXRpb24gd2l0aCBQcm9mLiBEci4gT2xhcml1IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgbWVudGFsIGhlYWx0aCBpbiBDRiBjYXJlLCBsZWFkaW5nIHVzIHRvIGluY29ycG9yYXRlIHBzeWNob3NvY2lhbCBlbGVtZW50cyBpbnRvIG91ciB0aGVyYXB5IGRlc2lnbi4gQWRkaXRpb25hbGx5LCB3ZSBhbGlnbmVkIG91ciBzb2x1dGlvbiB3aXRoIGdsb2JhbCBoZWFsdGhjYXJlIGRpc3Bhcml0aWVzLCBlbnN1cmluZyBvdXIgZ2VuZSB0aGVyYXB5IGNhbiBiZW5lZml0IHVuZGVycmVwcmVzZW50ZWQgcG9wdWxhdGlvbnMuIFRocm91Z2ggZW5nYWdlbWVudCB3aXRoIHJlZ3VsYXRvcnkgYm9kaWVzLCB3ZSBlbnN1cmVkIHRoYXQgb3VyIHByb2plY3QgY29tcGxpZXMgd2l0aCBhbGwgcmVsZXZhbnQgYmlvc2FmZXR5IGFuZCBsZWdhbCBzdGFuZGFyZHMuIDwvcD5cbiAgICAgICAgICA8aDQ+SW5jb3Jwb3JhdGlvbiBvZiBEaXZlcnNlIFN0YWtlaG9sZGVyIFZpZXdzIDwvaDQ+XG4gICAgICAgICAgPHA+V2UgZW5nYWdlZCB3aXRoIGEgYnJvYWQgcmFuZ2Ugb2Ygc3Rha2Vob2xkZXJzLCBpbmNsdWRpbmcgcGF0aWVudHMsIGhlYWx0aGNhcmUgcHJvdmlkZXJzLCByZXNlYXJjaGVycywgYW5kIHJlZ3VsYXRvcnkgZXhwZXJ0cywgZW5zdXJpbmcgdGhhdCBlYWNoIHBlcnNwZWN0aXZlIHBsYXllZCBhIHJvbGUgaW4gc2hhcGluZyB0aGUgZmluYWwgdGhlcmFwZXV0aWMgc29sdXRpb24uIEZvciBpbnN0YW5jZSwgZmVlZGJhY2sgZnJvbSBwaHlzaW90aGVyYXBpc3QgS2F0cmluIFdlc3Rob2ZmIGNvbmZpcm1lZCB0aGUgbmVjZXNzaXR5IG9mIGFuIGluaGFsYXRpb24tYmFzZWQgdGhlcmFweSB0aGF0IGlzIGVhc3kgZm9yIHlvdW5nZXIgcGF0aWVudHMgdG8gdXNlLiBDb2xsYWJvcmF0aW9ucyB3aXRoIGluZHVzdHJ5IGV4cGVydHMgbGlrZSBEci4gQmVuamFtaW4gV2lua2VsamFubiBlbmFibGVkIHVzIHRvIG9wdGltaXplIHRoZSB0ZWNobmljYWwgYXNwZWN0cyBvZiBvdXIgdHJlYXRtZW50IGZvciBzY2FsYWJpbGl0eSBhbmQgZW52aXJvbm1lbnRhbCBzdXN0YWluYWJpbGl0eS4gPC9wPlxuICAgICAgICAgIDxoND5DcmVhdGluZyBhIFJlc3BvbnNpYmxlIGFuZCBCZW5lZmljaWFsIFByb2plY3QgPC9oND5cbiAgICAgICAgICA8cD5PdXIgZ2VuZSB0aGVyYXB5IGZvciBDRiBhZGRyZXNzZXMgbm90IG9ubHkgdGhlIHNjaWVudGlmaWMgY2hhbGxlbmdlcyBidXQgYWxzbyB0aGUgc29jaWV0YWwgbmVlZCBmb3IgYWNjZXNzaWJsZSwgcGF0aWVudC1jZW50ZXJlZCBoZWFsdGhjYXJlIHNvbHV0aW9ucy4gQnkgaW5jb3Jwb3JhdGluZyBodW1hbiBwcmFjdGljZXMgYXQgZXZlcnkgc3RhZ2UsIHdlIGVuc3VyZWQgdGhhdCBvdXIgcHJvamVjdCBpcyBldGhpY2FsbHkgcmVzcG9uc2libGUgYW5kIGJlbmVmaWNpYWwgdG8gc29jaWV0eS4gVGhlIGZlZWRiYWNrIGZyb20gZGl2ZXJzZSBzdGFrZWhvbGRlcnMgaGVscGVkIHVzIHJlZmluZSBvdXIgYXBwcm9hY2gsIGVuc3VyaW5nIHRoYXQgdGhlIHNvbHV0aW9uIGlzIHN1c3RhaW5hYmxlLCBpbmNsdXNpdmUsIGFuZCBhZGRyZXNzZXMgdGhlIGdsb2JhbCBkaXNwYXJpdGllcyBpbiBDRiBjYXJlLiBUaGUgbG9uZy10ZXJtIHBvc2l0aXZlIGltcGFjdCBvbiB0aGUgQ0YgY29tbXVuaXR5XHUyMDE0Ym90aCBpbiB0ZXJtcyBvZiBoZWFsdGggb3V0Y29tZXMgYW5kIGFjY2Vzc2liaWxpdHlcdTIwMTRkZW1vbnN0cmF0ZXMgb3VyIHByb2plY3RcdTIwMTlzIGNvbW1pdG1lbnQgdG8gcmVzcG9uc2libGUgaW5ub3ZhdGlvbi4gPC9wPlxuICAgICAgICAgIDxwPk91ciBwcm9qZWN0IGV4ZW1wbGlmaWVzIHRoZSBzZWFtbGVzcyBpbnRlZ3JhdGlvbiBvZiBIdW1hbiBQcmFjdGljZXMgaW50byBldmVyeSBhc3BlY3Qgb2Ygc3ludGhldGljIGJpb2xvZ3kgcmVzZWFyY2guIFRocm91Z2ggY29sbGFib3JhdGlvbnMgd2l0aCBwYXRpZW50cywgaGVhbHRoY2FyZSBwcm9mZXNzaW9uYWxzLCBhbmQgZXhwZXJ0cyBhY3Jvc3MgZGlmZmVyZW50IGZpZWxkcywgd2UgaGF2ZSBkZXZlbG9wZWQgYSBnZW5lIHRoZXJhcHkgZm9yIGN5c3RpYyBmaWJyb3NpcyB0aGF0IGlzIHNjaWVudGlmaWNhbGx5IGlubm92YXRpdmUsIGV0aGljYWxseSBzb3VuZCwgYW5kIGRlZXBseSBhbGlnbmVkIHdpdGggdGhlIG5lZWRzIG9mIHRoZSBnbG9iYWwgQ0YgY29tbXVuaXR5LiBPdXIgY29tbWl0bWVudCB0byBpbmNsdXNpdml0eSwgZXRoaWNhbCByZWZsZWN0aW9uLCBhbmQgZW52aXJvbm1lbnRhbCBzdXN0YWluYWJpbGl0eSBtYWtlcyB1cyBhIHN0cm9uZyBjYW5kaWRhdGUgZm9yIHRoZSA8Yj5CZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzIEF3YXJkPC9iPiwgc2hvd2Nhc2luZyBvdXIgZGVkaWNhdGlvbiB0byByZXNwb25zaWJsZSBhbmQgaW1wYWN0ZnVsIHN5bnRoZXRpYyBiaW9sb2d5LiA8L3A+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJTYWZldHkgJiBTZWN1cml0eVwiIGlkPVwiU2FmZXR5ICYgU2VjdXJpdHlcIj5cbiAgICAgICAgICA8cD5PdXIgcHJvamVjdCBmb2N1c2VzIG9uIGFkdmFuY2luZyBiaW9zYWZldHkgYW5kIGJpb3NlY3VyaXR5IGluIHN5bnRoZXRpYyBiaW9sb2d5IHRocm91Z2ggdGhlIGRldmVsb3BtZW50IGFuZCBpbXBsZW1lbnRhdGlvbiBvZiByb2J1c3Qgc2FmZXR5IG1lY2hhbmlzbXMuIEFzIHBhcnQgb2Ygb3VyIFByZUN5c2UgcHJvamVjdCwgYWltZWQgYXQgZGV2ZWxvcGluZyBhIHByaW1lLWVkaXRpbmcgY29tcGxleCB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIGN5c3RpYyBmaWJyb3NpcyAoQ0YpLCB3ZSBwbGFjZSBncmVhdCBlbXBoYXNpcyBvbiBzYWZldHkgYXQgZXZlcnkgc3RhZ2Ugb2YgcmVzZWFyY2guIFdpdGggYSBjb21taXRtZW50IHRvIHJlc3BvbnNpYmxlIGlubm92YXRpb24sIHdlIGhhdmUgZW5zdXJlZCB0aGF0IGFsbCBwaGFzZXMgb2Ygb3VyIHdvcmsgYWRoZXJlIHRvIHRoZSBoaWdoZXN0IHNhZmV0eSBzdGFuZGFyZHMsIGFpbWluZyB0byBtaW5pbWl6ZSBib3RoIGVudmlyb25tZW50YWwgYW5kIGh1bWFuIGhlYWx0aCByaXNrcy4gT3VyIGFwcHJvYWNoIGluY29ycG9yYXRlcyBub3ZlbCBjb250YWlubWVudCBzeXN0ZW1zLCByaWdvcm91cyB2YWxpZGF0aW9uIHByb2Nlc3NlcywgYW5kIGNhcmVmdWxseSBwbGFubmVkIGNoZWNrcG9pbnRzIGR1cmluZyBleHBlcmltZW50cyB0byBwdXNoIHRoZSBib3VuZGFyaWVzIG9mIGJpb3NhZmV0eSBpbiBzeW50aGV0aWMgYmlvbG9neS4gPC9wPlxuICAgICAgICAgIDxoND5Db250cmlidXRpb24gdG8gQmlvc2FmZXR5IGFuZCBCaW9zZWN1cml0eSA8L2g0PlxuICAgICAgICAgIDxwPldlIGRldmVsb3BlZCBhIGNvbXByZWhlbnNpdmUgYmlvc2FmZXR5IHBsYW4gdG8gbWluaW1pemUgcmlza3MgYXNzb2NpYXRlZCB3aXRoIG91ciBzeW50aGV0aWMgYmlvbG9neSBwcm9qZWN0LiBUaGlzIGluY2x1ZGVzIGJpb2NvbnRhaW5tZW50IG1lYXN1cmVzIGFuZCBwcm90b2NvbHMgdG8gcHJldmVudCB0aGUgYWNjaWRlbnRhbCByZWxlYXNlIG9mIGdlbmV0aWNhbGx5IG1vZGlmaWVkIG9yZ2FuaXNtcyAoR01PcykgaW50byB0aGUgZW52aXJvbm1lbnQuIEJ5IGludGVncmF0aW5nIGJvdGggcGh5c2ljYWwgYW5kIGdlbmV0aWMgc2FmZWd1YXJkcywgd2UgaGF2ZSBlbnN1cmVkIHRoYXQgb3VyIHByb2plY3QgY29udHJpYnV0ZXMgdG8gc2FmZXIgc3ludGhldGljIGJpb2xvZ3kgYXBwbGljYXRpb25zLiBGb3IgZXhhbXBsZSwgb3VyIGZpbmFsIGNvbnN0cnVjdCB3aWxsIGJlIHRlc3RlZCBpbiBwcmltYXJ5IGN1bHR1cmVzIG9mIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgZnJvbSBDRiBwYXRpZW50cyBhbmQgaGVhbHRoeSBpbmRpdmlkdWFscywgd2l0aCBjYXJlZnVsbHkgcGxhbm5lZCBjaGVja3BvaW50cyBmb3IgY29udGludW91cyBtb25pdG9yaW5nIGFuZCB0aW1lbHkgYWRqdXN0bWVudHMuIDwvcD5cbiAgICAgICAgICA8cD5BcyBwYXJ0IG9mIG91ciBjb21taXRtZW50IHRvIGFkdmFuY2luZyBzYWZlIGFuZCBldGhpY2FsIHByYWN0aWNlcyBpbiBzeW50aGV0aWMgYmlvbG9neSBhbmQgcGF0aWVudCBjYXJlLCB3ZSBoYXZlIG1hZGUgc2V2ZXJhbCBrZXkgY29udHJpYnV0aW9ucyB0byBzdXBwb3J0IG91ciBwcm9qZWN0IGFuZCB0aGUgd2lkZXIgY29tbXVuaXR5LiBGaXJzdGx5LCB3ZSBkZXZlbG9wZWQgYSA8Yj5xdWVzdGlvbm5haXJlIHRvIGV2YWx1YXRlIHRoZSBtZWRpY2FsIGhpc3Rvcnkgb2YgY3lzdGljIGZpYnJvc2lzIChDRikgcGF0aWVudHM8L2I+LCB3aGljaCBoYXMgYmVlbiBzcGVjaWZpY2FsbHkgYWRhcHRlZCBmb3IgdGhlIGNvbGxlY3Rpb24gb2YgcHJpbWFyeSBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIChoTkVDcykuIFRoaXMgdG9vbCBlbnN1cmVzIHRoYXQgZXNzZW50aWFsIGhlYWx0aCBpbmZvcm1hdGlvbiBpcyBnYXRoZXJlZCBpbiBhIHN5c3RlbWF0aWMgYW5kIGV0aGljYWwgbWFubmVyLCBhaWRpbmcgdGhlIGFjY3VyYXRlIGNvbGxlY3Rpb24gb2Ygc2FtcGxlcyB3aGlsZSBzYWZlZ3VhcmRpbmcgcGF0aWVudCB3ZWxsLWJlaW5nLiAgPC9wPlxuICAgICAgICAgIDxwPlNlY29uZGx5LCB3ZSBjcmVhdGVkIDxiPkJlc3QgUHJhY3RpY2VzIGZvciBzYWZlIHByaW1hcnkgY3VsdHVyZSBoYW5kbGluZzwvYj4uIFRoaXMgZ3VpZGUgb3V0bGluZXMgdGhlIG5lY2Vzc2FyeSBzYWZldHkgcHJvdG9jb2xzIGZvciB3b3JraW5nIHdpdGggcHJpbWFyeSBjZWxsIGN1bHR1cmVzLCBlbnN1cmluZyB0aGF0IGFsbCBwcm9jZWR1cmVzIGFyZSBjb25kdWN0ZWQgd2l0aCBtaW5pbWFsIHJpc2sgb2YgY29udGFtaW5hdGlvbiBhbmQgZXhwb3N1cmUgdG8gaGFybWZ1bCBwYXRob2dlbnMuIFRoZXNlIHByYWN0aWNlcyBwcm9tb3RlIHNhZmV0eSBmb3IgYm90aCBsYWJvcmF0b3J5IHBlcnNvbm5lbCBhbmQgdGhlIGludGVncml0eSBvZiB0aGUgYmlvbG9naWNhbCBtYXRlcmlhbHMuPC9wPlxuICAgICAgICAgIDxwPkFkZGl0aW9uYWxseSwgd2UgZGV2ZWxvcGVkIGEgPGI+SHlnaWVuZSBDb25jZXB0IGZvciBJbW11bm9jb21wcm9taXNlZCBJbmRpdmlkdWFsczwvYj4gaW4gY29uc3VsdGF0aW9uIHdpdGggYSBDRiBwYXRpZW50LiBUaGlzIGNvbmNlcHQgYWRkcmVzc2VzIHRoZSBzcGVjaWZpYyBuZWVkcyBvZiBpbmRpdmlkdWFscyB3aXRoIHdlYWtlbmVkIGltbXVuZSBzeXN0ZW1zLCBzdWNoIGFzIHRob3NlIHdpdGggQ0YsIEhJViwgb3IgY2VydGFpbiBjYW5jZXJzLiBJdCBmb2N1c2VzIG9uIHJlZHVjaW5nIGhlYWx0aCByaXNrcyBpbiBoaWdoLWZvb3QtdHJhZmZpYyBwdWJsaWMgc3BhY2VzLCBlc3BlY2lhbGx5IHB1YmxpYyByZXN0cm9vbXMsIGJ5IGltcGxlbWVudGluZyB0YWlsb3JlZCBoeWdpZW5lIG1lYXN1cmVzLiBUaGVzZSBndWlkZWxpbmVzIGFpbSB0byBwcm90ZWN0IGltbXVub2NvbXByb21pc2VkIGluZGl2aWR1YWxzIGJ5IGNyZWF0aW5nIHNhZmVyIGVudmlyb25tZW50cyB3aXRoaW4gdW5pdmVyc2l0eSBzZXR0aW5ncyBhbmQgYmV5b25kLCBjb250cmlidXRpbmcgdG8gYnJvYWRlciBwdWJsaWMgaGVhbHRoIGluaXRpYXRpdmVzLiA8L3A+XG4gICAgICAgICAgPGg0PkNoYXJhY3Rlcml6YXRpb24gYW5kIFZhbGlkYXRpb24gPC9oND5cbiAgICAgICAgICA8cD5XZSByaWdvcm91c2x5IHRlc3RlZCB0aGUgc2FmZXR5IG1lY2hhbmlzbXMgYnVpbHQgaW50byBvdXIgcHJvamVjdCBsaWtlIHRoZSBkaXNydXB0aW9uIG9mIHRoZSBQQU0gc2VxdWVuY2UgYW5kIHBlZ1JOQSBkZXNpZ24uIFRoZXNlIG1lY2hhbmlzbXMgd2VyZSB2YWxpZGF0ZWQgdGhyb3VnaCBjb250cm9sbGVkIGV4cGVyaW1lbnRzLCBlbnN1cmluZyByZWxpYWJsZSBwZXJmb3JtYW5jZSB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuIEZ1cnRoZXJtb3JlLCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgcHJlY2lzaW9uIG9mIG91ciByZXN1bHRzLCB3ZSBpbnRyb2R1Y2VkIGEgc2VyaWVzIG9mIGNhcmVmdWxseSBwbGFubmVkIGV4cGVyaW1lbnRhbCBtaWxlc3RvbmVzLiBUaGVzZSBhbGxvdyBmb3IgdGhlIGNvbnRpbnVvdXMgdmFsaWRhdGlvbiBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4LCBhZGRyZXNzaW5nIHBvdGVudGlhbCBpc3N1ZXMgaW1tZWRpYXRlbHksIHdoaWNoIG1pbmltaXplcyByaXNrIGFuZCBpbXByb3ZlcyB0aGUgb3ZlcmFsbCBxdWFsaXR5IG9mIG91ciB3b3JrLiA8L3A+XG4gICAgICAgICAgPGg0PkJ1aWxkaW5nIG9uIEV4aXN0aW5nIEtub3dsZWRnZSA8L2g0PlxuICAgICAgICAgIDxwPk91ciB3b3JrIGJ1aWxkcyB1cG9uIGVzdGFibGlzaGVkIGJpb3NhZmV0eSBmcmFtZXdvcmtzLCBzcGVjaWZpY2FsbHkgaW1wcm92aW5nIGtub3duIGdlbmV0aWMgY29udGFpbm1lbnQgc3lzdGVtcy4gV2UgaW5jb3Jwb3JhdGVkIGxlc3NvbnMgZnJvbSBwcmV2aW91cyBpR0VNIHRlYW1zIGFuZCBhY2FkZW1pYyByZXNlYXJjaCB0byByZWZpbmUgdGhlc2UgdG9vbHMsIG1ha2luZyB0aGVtIG1vcmUgZWZmZWN0aXZlIGluIGNvbnRyb2xsaW5nIGdlbmUgZmxvdyBhbmQgcmVkdWNpbmcgdW5pbnRlbmRlZCBjb25zZXF1ZW5jZXMuIEJ5IGRyYXdpbmcgZnJvbSB0aGUgZXhpc3Rpbmcga25vd2xlZGdlIGJhc2UsIHdlIGVuc3VyZWQgb3VyIGJpb3NhZmV0eSBtZWNoYW5pc21zLCBzdWNoIGFzIHJpYm9zd2l0Y2ggYW5kIFBBTSBkaXNydXB0aW9uLCBhcmUgYm90aCBzY2FsYWJsZSBhbmQgcmVsaWFibGUsIHNpZ25pZmljYW50bHkgYWR2YW5jaW5nIGJpb3NhZmV0eSB0ZWNobm9sb2dpZXMuIDwvcD5cbiAgICAgICAgICA8aDQ+UmlzayBNYW5hZ2VtZW50IDwvaDQ+XG4gICAgICAgICAgPHA+RnJvbSB0aGUgb3V0c2V0LCB3ZSBjb25kdWN0ZWQgYSB0aG9yb3VnaCByaXNrIGFzc2Vzc21lbnQgdG8gaWRlbnRpZnkgcG90ZW50aWFsIGhhemFyZHMsIGluY2x1ZGluZyB0aG9zZSBhc3NvY2lhdGVkIHdpdGggaGFuZGxpbmcgR01PcyBhbmQgZ2VuZSB0cmFuc2Zlci4gSW4gcmVzcG9uc2UsIHdlIGltcGxlbWVudGVkIHN0cmluZ2VudCBsYWIgcHJvdG9jb2xzIGFuZCBiaW9jb250YWlubWVudCBzeXN0ZW1zIHRvIGVuc3VyZSB0aGUgc2FmZXR5IG9mIG91ciB0ZWFtIGFuZCB0aGUgc3Vycm91bmRpbmcgZW52aXJvbm1lbnQuIFRoaXMgcmlzayBtYW5hZ2VtZW50IGFwcHJvYWNoIGV4dGVuZHMgdGhyb3VnaG91dCB0aGUgbGlmZWN5Y2xlIG9mIHRoZSBwcm9qZWN0LCBmcm9tIHRoZSBkZXNpZ24gdG8gdGhlIGZpbmFsIHZhbGlkYXRpb24gc3RhZ2VzLiBXZSBhbHNvIGFkaGVyZWQgdG8gZ29vZCBsYWJvcmF0b3J5IHByYWN0aWNlcywgc3VjaCBhcyBzdGVyaWxpemF0aW9uIGFuZCBjb250cm9sbGVkIGFjY2Vzcywgd2hpY2ggZW5zdXJlcyBjb21wbGlhbmNlIHdpdGggYWxsIHJlbGV2YW50IGJpb3NhZmV0eSByZWd1bGF0aW9ucy4gPC9wPlxuICAgICAgICAgIDxoND5SZWFsLVdvcmxkIEFwcGxpY2F0aW9ucyA8L2g0PlxuICAgICAgICAgIDxwPldlIGRlc2lnbmVkIG91ciBwcm9qZWN0IHdpdGggcmVhbC13b3JsZCBiaW9zYWZldHkgY29uY2VybnMgaW4gbWluZCwgcGFydGljdWxhcmx5IHRoZSBwb3RlbnRpYWwgZW52aXJvbm1lbnRhbCBpbXBhY3Qgb2YgR01Pcy4gT3VyIGFwcHJvYWNoIGVuc3VyZXMgdGhhdCBvdXIgdGVjaG5vbG9neSBjYW4gYmUgc2FmZWx5IGFwcGxpZWQgb3V0c2lkZSB0aGUgbGFiLCB3aXRoIGJpb2NvbnRhaW5tZW50IHN0cmF0ZWdpZXMgdGhhdCBwcmV2ZW50IHVuaW50ZW5kZWQgcmVsZWFzZS4gRm9yIGluc3RhbmNlLCBieSBkZXNpZ25pbmcgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgdGhhdCBzZWxlY3RpdmVseSBmdXNlIHdpdGggbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3ZSByZWR1Y2UgdGhlIHJpc2sgb2YgdW53YW50ZWQgb2ZmLXRhcmdldCBpbnRlcmFjdGlvbnMuIEFkZGl0aW9uYWxseSwgd2UgY29uc2lkZXJlZCBkdWFsLXVzZSBjb25jZXJucywgZW5zdXJpbmcgb3VyIHRlY2hub2xvZ3kgY2Fubm90IGJlIGVhc2lseSBtaXNhcHByb3ByaWF0ZWQgZm9yIGhhcm1mdWwgcHVycG9zZXMsIG1ha2luZyBvdXIgcHJvamVjdCBhIG1vZGVsIGZvciByZXNwb25zaWJsZSBzeW50aGV0aWMgYmlvbG9neS4gPC9wPlxuICAgICAgICAgIDxoND5DaGVjay1JbnMgYW5kIGlHRU0gQ29tcGxpYW5jZSA8L2g0PlxuICAgICAgICAgIDxwPkluIGFsaWdubWVudCB3aXRoIGlHRU1cdTIwMTlzIGVtcGhhc2lzIG9uIGJpb3NhZmV0eSwgd2Ugc3VibWl0dGVkIENoZWNrLUlucyBmb3IgdGhlIGNvbXBvbmVudHMgYW5kIG9yZ2FuaXNtcyBub3QgY292ZXJlZCBieSB0aGUgaUdFTSBXaGl0ZSBsaXN0LiBUaGVzZSBmb3JtYWwgZXZhbHVhdGlvbnMgZW5zdXJlZCB0aGF0IGFsbCBhc3BlY3RzIG9mIG91ciBwcm9qZWN0IHdlcmUgdGhvcm91Z2hseSBhc3Nlc3NlZCBhbmQgYXBwcm92ZWQgYnkgdGhlIGlHRU0gU2FmZXR5IENvbW1pdHRlZS4gV2UgbWFpbnRhaW5lZCBhY3RpdmUgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBjb21taXR0ZWUgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhbGwgaUdFTSBzdGFuZGFyZHMsIHJlZmxlY3Rpbmcgb3VyIGRlZGljYXRpb24gdG8gYmlvc2FmZXR5IGFuZCBiaW9zZWN1cml0eS4gPC9wPlxuICAgICAgICAgIDxoND5MYWJvcmF0b3J5IGFuZCBTYWZldHkgUHJhY3RpY2VzIDwvaDQ+XG4gICAgICAgICAgPHA+QWxsIGV4cGVyaW1lbnRzIHdlcmUgY29uZHVjdGVkIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IGluIFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlcidzIGxhYm9yYXRvcnksIGZvbGxvd2luZyBCU0wtMSAoYW5kIEJTTC0yIGlmIG5lZWRlZCkgc3RhbmRhcmQgb3BlcmF0aW5nIHByb2NlZHVyZXMuIFRoZSB0ZWFtIHBhcnRpY2lwYXRlZCBpbiBtYW5kYXRvcnkgc2FmZXR5IGJyaWVmaW5ncyBhbmQgYWRoZXJlZCB0byByaWdvcm91cyBzYWZldHkgbWVhc3VyZXMsIGluY2x1ZGluZyByZWd1bGF0aW9ucyBjb25jZXJuaW5nIGhhemFyZG91cyBzdWJzdGFuY2VzLCBnZW5ldGljIGVuZ2luZWVyaW5nLCBhbmQgdGhlIGhhbmRsaW5nIG9mIGJpb2xvZ2ljYWwgbWF0ZXJpYWxzLiBPdXIgbGFiIGFjdGl2aXRpZXMgd2VyZSBtZXRpY3Vsb3VzbHkgcGxhbm5lZCB0byBtaW5pbWl6ZSByaXNrIGFuZCBlbnN1cmUgZGF0YSBpbnRlZ3JpdHkuIDwvcD5cbiAgICAgICAgICA8cD5CeSBidWlsZGluZyBvbiBleGlzdGluZyBrbm93bGVkZ2UsIHJpZ29yb3VzbHkgdGVzdGluZyBvdXIgYmlvc2FmZXR5IG1lYXN1cmVzLCBhbmQgcHJvYWN0aXZlbHkgbWFuYWdpbmcgcmlza3MsIHdlIGhhdmUgZGV2ZWxvcGVkIGEgcHJvamVjdCB0aGF0IHNpZ25pZmljYW50bHkgY29udHJpYnV0ZXMgdG8gdGhlIGZpZWxkIG9mIGJpb3NhZmV0eSBhbmQgYmlvc2VjdXJpdHkuIE91ciBjb21wcmVoZW5zaXZlIGFwcHJvYWNoIGVuc3VyZXMgdGhhdCBvdXIgdGVjaG5vbG9neSBjYW4gYmUgc2FmZWx5IGFwcGxpZWQgaW4gcmVhbC13b3JsZCBzY2VuYXJpb3MsIGFuZCB3ZSBiZWxpZXZlIHRoaXMgc2V0cyBhIG5ldyBzdGFuZGFyZCBmb3IgcmVzcG9uc2libGUgc3ludGhldGljIGJpb2xvZ3kuIE91ciBlZmZvcnRzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGRldmVsb3BtZW50IG9mIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggZm9yIENGIGFuZCB0aGUgYXNzb2NpYXRlZCBiaW9zYWZldHkgcHJvdG9jb2xzLCBtZXJpdCByZWNvZ25pdGlvbiBmb3IgdGhlIDxiPkJpb3NhZmV0eSBhbmQgU2VjdXJpdHkgQXdhcmQ8L2I+LiA8L3A+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCZXN0IE5ldyBCYXNpYyBQYXJ0XCIgaWQ9XCJCZXN0IE5ldyBCYXNpYyBQYXJ0XCI+XG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgZm9jdXNlcyBvbiBvcHRpbWl6aW5nIHByaW1lIGVkaXRpbmcgZm9yIHRoZSBjeXN0aWMgZmlicm9zaXMtY2F1c2luZyBDRlRSIEY1MDhkZWwgbXV0YXRpb24sIHdoaWNoIHJlcHJlc2VudHMgb25lIG9mIHRoZSBtb3N0IHNpZ25pZmljYW50IGFwcGxpY2F0aW9ucyBmb3IgcHJpbWUgZWRpdGluZy4gUHJpbWUgZWRpdGluZyBpcyBhIHByZWNpc2UgYW5kIHNhZmUgZ2VuZSBlZGl0aW5nIHRlY2huaXF1ZSwgYnV0IGl0cyBlZmZpY2llbmN5IHZhcmllcyBncmVhdGx5IGRlcGVuZGluZyBvbiB0aGUgZ2Vub21pYyBsb2N1cy4gVGhyb3VnaCBvdXIgZGV2ZWxvcG1lbnQgb2YgYSBjb250ZXh0LXNwZWNpZmljIFByaW1lIEVkaXRvciBBY3Rpdml0eSBSZXBvcnRlciAoUEVBUikgc3lzdGVtLCB3ZSBoYXZlIHN1Y2Nlc3NmdWxseSBvcHRpbWl6ZWQgdGhpcyBhZHZhbmNlZCB0ZWNobm9sb2d5LCBwYXZpbmcgdGhlIHdheSBmb3IgbW9yZSBlZmZlY3RpdmUgZ2Vub21pYyB0YXJnZXRpbmcsIG5vdCBqdXN0IGZvciBjeXN0aWMgZmlicm9zaXMgYnV0IGZvciBmdXR1cmUgc3ludGhldGljIGJpb2xvZ3kgYXBwbGljYXRpb25zIGFzIHdlbGwuIDwvcD5cbiAgICAgICAgICA8aDQ+IEVuZ2luZWVyaW5nIGFuZCBUZXN0aW5nIGZvciBDb250ZXh0dWFsIFByZWNpc2lvbiA8L2g0PlxuICAgICAgICAgIDxwPlRoZSBjaGFsbGVuZ2VzIHBvc2VkIGJ5IGxvdyBlZGl0aW5nIGVmZmljaWVuY3kgYW5kIHRoZSBkaWZmaWN1bHR5IGluIGRpc3Rpbmd1aXNoaW5nIHN1Y2Nlc3NmdWwgZWRpdHMgZnJvbSBiYWNrZ3JvdW5kIG5vaXNlIGxlZCB1cyB0byBkZXNpZ24gYSBoaWdobHkgc2Vuc2l0aXZlIHJlcG9ydGVyIHN5c3RlbS4gQWZ0ZXIgYW4gaW5pdGlhbCB1bnN1Y2Nlc3NmdWwgYXR0ZW1wdCB1c2luZyBhIGZsdW9yZXNjZW50IHJlcG9ydGVyLCB3ZSBzaGlmdGVkIHRvIHRoZSBQRUFSIHN5c3RlbSBwcm92ZWQgdG8gYmUgbXVjaCBtb3JlIGFkYXB0YWJsZSBhbmQgcmVsZXZhbnQgdG8gb3VyIG5lZWRzLiA8L3A+XG4gICAgICAgICAgPGg0Pkl0ZXJhdGl2ZSBEZXZlbG9wbWVudCA8L2g0PlxuICAgICAgICAgIDxwPkluIG91ciBmaXJzdCBhdHRlbXB0LCB3ZSBleHBsb3JlZCBhIGZsdW9yZXNjZW5jZS1iYXNlZCByZXBvcnRlciB0aGF0IHRhcmdldGVkIEdGUC4gV2hpbGUgdGhpcyBoZWxwZWQgdXMgdmlzdWFsaXplIHByaW1lIGVkaXRpbmcgaW4gYWN0aW9uLCB3ZSBxdWlja2x5IHJlYWxpemVkIHRoYXQgdGhlIGRpc3RhbmNlIG9mIHRoZSBtdXRhdGlvbiBzaXRlIGZyb20gdGhlIFBBTSBzZXF1ZW5jZSBpbiB0aGUgQ0ZUUiBnZW5lIG1lYW50IHRoYXQgdGhpcyBzeXN0ZW0gd2Fzblx1MjAxOXQgc3VpdGFibGUgZm9yIG91ciBzcGVjaWZpYyBnZW5vbWljIHRhcmdldC4gV2UgdGhlbiBtb3ZlZCB0byB0aGUgUEVBUiBzeXN0ZW0sIHdoaWNoIHdhcyBtb3JlIGZsZXhpYmxlIGFuZCBzZW5zaXRpdmUsIGFzIGl0cyBlZGl0aW5nIGZhY3RvcnMgYWxpZ25lZCB3aXRoIHRob3NlIHJlcXVpcmVkIGZvciBnZW5vbWljIGNvbnRleHRzLiA8L3A+XG4gICAgICAgICAgPHA+VGhyb3VnaCBtdWx0aXBsZSBpdGVyYXRpb25zLCBpbmNsdWRpbmcgdGVzdHMgaW4gSEVLMjkzIGNlbGxzLCBlcGl0aGVsaWFsIGNlbGxzLCBhbmQgaHVtYW4tZGVyaXZlZCBwcmltYXJ5IGNlbGxzLCB3ZSByZWZpbmVkIG91ciBzeXN0ZW0uIE91ciBleHBlcmltZW50cyBwcm92ZWQgdGhlIHN1Y2Nlc3NmdWwgdXNlIG9mIHRoZSBQRUFSIHJlcG9ydGVyIGluIGRldGVjdGluZyBwcmltZSBlZGl0aW5nIGFjdGl2aXR5IGZvciBDRlRSIEY1MDhkZWwgd2l0aCBtaW5pbWFsIG5vaXNlLCBtYWtpbmcgaXQgaWRlYWwgZm9yIGRldGVjdGluZyBlZGl0cyBpbiBzcGVjaWZpYyBnZW5vbWljIGxvY2kgd2l0aCBoaWdoIHNlbnNpdGl2aXR5LiA8L3A+XG4gICAgICAgICAgPGg0Pk1vZHVsYXJpdHkgYW5kIEJyb2FkZXIgQXBwbGljYXRpb25zIDwvaDQ+XG4gICAgICAgICAgPHA+UmVjb2duaXppbmcgdGhlIGxpbWl0YXRpb25zIG9mIHRoZSBvcmlnaW5hbCBQRUFSIHBsYXNtaWQsIGVzcGVjaWFsbHkgaW4gdGVybXMgb2YgbW9kaWZpY2F0aW9uIGZsZXhpYmlsaXR5IGFuZCBjb21wYXRpYmlsaXR5IHdpdGggQmlvQnJpY2sgc3RhbmRhcmRzLCB3ZSBjcmVhdGVkIGEgbW9yZSBtb2R1bGFyIGFuZCBhY2Nlc3NpYmxlIHN5c3RlbS4gT3VyIG5ldyB2ZXJzaW9uIGluY2x1ZGVzIGFuIG9saWdvbnVjbGVvdGlkZS1iYXNlZCBnb2xkZW4gZ2F0ZSBjbG9uaW5nIHNpdGUsIGVuYWJsaW5nIHF1aWNrIG1vZGlmaWNhdGlvbiBhbmQgYnJvYWRlciBhcHBsaWNhdGlvbnMgdG8gb3RoZXIgZ2Vub21pYyB0YXJnZXRzIGFuZCBwcmltZSBlZGl0b3IgdmFyaWFudHMuIDwvcD5cbiAgICAgICAgICA8cD5PdXIgdXBkYXRlZCBQRUFSIHN5c3RlbSBpcyBub3cgY29tcGF0aWJsZSB3aXRoIFJGQ1sxMDAwXSBzdGFuZGFyZHMsIG9mZmVyaW5nIGZ1dHVyZSBpR0VNIHRlYW1zIGEgdmVyc2F0aWxlIHRvb2wgdGhhdCBjYW4gYmUgYXBwbGllZCB0byBhIHdpZGUgcmFuZ2Ugb2YgZWRpdGluZyBzY2VuYXJpb3MuIFRoaXMgaXMgbm90IG9ubHkgYSBzaWduaWZpY2FudCBhZHZhbmNlbWVudCBmb3IgQ0ZUUi1yZWxhdGVkIHJlc2VhcmNoIGJ1dCBhbHNvIGZvciBhbnkgZ2VuZSBlZGl0aW5nIHByb2plY3QgcmVxdWlyaW5nIGhpZ2ggcHJlY2lzaW9uIGFuZCBzZW5zaXRpdml0eS4gPC9wPlxuICAgICAgICAgIDxoND5Db250cmlidXRpb24gdG8gdGhlIFN5bnRoZXRpYyBCaW9sb2d5IENvbW11bml0eSA8L2g0PlxuICAgICAgICAgIDxwPldlIGJlbGlldmUgb3VyIHBhcnQgY29udHJpYnV0ZXMgc2lnbmlmaWNhbnRseSB0byB0aGUgc3ludGhldGljIGJpb2xvZ3kgY29tbXVuaXR5IGJ5IHByb3ZpZGluZyBhbiBvcHRpbWl6ZWQgc3lzdGVtIHRoYXQgY2FuIGJlIGVhc2lseSBhZGFwdGVkIHRvIHZhcmlvdXMgZ2VuZSBlZGl0aW5nIGNvbnRleHRzLiBCeSBpbXByb3ZpbmcgdGhlIG1vZHVsYXJpdHkgYW5kIGVhc2Ugb2YgdXNlLCB3ZSBhcmUgY29uZmlkZW50IHRoYXQgdGhpcyBwYXJ0IHdpbGwgYmUgYSB2YWx1YWJsZSB0b29sIGZvciBmdXR1cmUgdGVhbXMgbG9va2luZyB0byBvcHRpbWl6ZSB0aGVpciBvd24gcHJpbWUgZWRpdGluZyBhcHByb2FjaGVzLiA8L3A+XG4gICAgICAgICAgPHA+T3VyIHdvcmsgaGFzIGRlbW9uc3RyYXRlZCB0aGF0IHByaW1lIGVkaXRpbmcgY2FuIGJlIG1hZGUgbW9yZSBlZmZpY2llbnQgYW5kIHJlbGlhYmxlLCBlc3BlY2lhbGx5IGluIGRpZmZpY3VsdC10by1lZGl0IHJlZ2lvbnMgbGlrZSBDRlRSLiBUaHJvdWdoIHJpZ29yb3VzIHRlc3RpbmcgYW5kIHZhbGlkYXRpb24sIHdlIGVuc3VyZWQgdGhhdCBvdXIgcGFydCBtZWV0cyBoaWdoIHN0YW5kYXJkcyBmb3IgYm90aCBleHBlcmltZW50YWwgcmVsaWFiaWxpdHkgYW5kIGNvbW11bml0eSB1dGlsaXR5LiBBcyBhIHJlc3VsdCwgd2UgcG9zaXRpb24gb3Vyc2VsdmVzIGFzIHN0cm9uZyBjYW5kaWRhdGVzIGZvciB0aGUgPGI+QmVzdCBOZXcgQmFzaWMgUGFydCBBd2FyZDwvYj4uPC9wPlxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiQ29uY2x1c2lvblwiPlxuICAgICAgICAgIDxwPkluIGNvbmNsdXNpb24sIG91ciBwcm9qZWN0IGV4ZW1wbGlmaWVzIHRoZSBiZXN0IG9mIHN5bnRoZXRpYyBiaW9sb2d5LCBjb21iaW5pbmcgY3V0dGluZy1lZGdlIHNjaWVuY2Ugd2l0aCBldGhpY2FsIHJlc3BvbnNpYmlsaXR5IGFuZCBhIGRlZXAgXG4gICAgICAgICAgICBjb21taXRtZW50IHRvIHNvY2lldGFsIGltcGFjdC4gQnkgaW50ZWdyYXRpbmcgaHVtYW4gcHJhY3RpY2VzIGludG8gZXZlcnkgc3RhZ2Ugb2Ygb3VyIHdvcmssIGVuc3VyaW5nIHRoZSBoaWdoZXN0IHN0YW5kYXJkcyBvZiBiaW9zYWZldHksIGFuZCBjb250cmlidXRpbmcgXG4gICAgICAgICAgICB2YWx1YWJsZSB0b29scyB0byB0aGUgY29tbXVuaXR5LCB3ZSBoYXZlIHNldCBhIG5ldyBzdGFuZGFyZCBmb3IgaW5ub3ZhdGlvbiBpbiB0aGUgZmllbGQuIE91ciB0aGVyYXBldXRpYyBhcHByb2FjaCBmb3IgY3lzdGljIGZpYnJvc2lzIGhhcyB0aGUgcG90ZW50aWFsIFxuICAgICAgICAgICAgdG8gcmV2b2x1dGlvbml6ZSB0cmVhdG1lbnQgZm9yIHRoaXMgbGlmZS10aHJlYXRlbmluZyBjb25kaXRpb24sIHdoaWxlIG91ciBjb250cmlidXRpb25zIHRvIGJpb3NhZmV0eSBhbmQgcGFydCBkZXZlbG9wbWVudCB3aWxsIGJlbmVmaXQgdGhlIGJyb2FkZXIgXG4gICAgICAgICAgICBzeW50aGV0aWMgYmlvbG9neSBlY29zeXN0ZW0uIFdlIGFyZSBjb25maWRlbnQgdGhhdCBvdXIgcHJvamVjdCBpcyBkZXNlcnZpbmcgb2YgcmVjb2duaXRpb24gaW4gbXVsdGlwbGUgYXdhcmQgY2F0ZWdvcmllcywgaW5jbHVkaW5nIDxiPkJlc3QgVGhlcmFwZXV0aWMgUHJvamVjdDwvYj4sIDxiPkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM8L2I+LCA8Yj5CaW9zYWZldHkgYW5kIFNlY3VyaXR5PC9iPiwgYW5kIDxiPkJlc3QgTmV3IEJhc2ljIFBhcnQ8L2I+LiBUaHJvdWdoIG91ciB3b3JrLCB3ZSBob3BlIHRvIGluc3BpcmUgZnV0dXJlIGlHRU0gdGVhbXMgdG8gcHVyc3VlIHNvbHV0aW9ucyB0aGF0IGFyZSBib3RoIHNjaWVudGlmaWNhbGx5IGV4Y2VsbGVudCBhbmQgc29jaWFsbHkgcmVzcG9uc2libGUuIDwvcD5cbiAgICAgICAgPC9TZWN0aW9uPlxuXG4gICAgICA8Lz5cbiAgICApO1xuICB9XG4gICIsICJpbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiO1xuXG5leHBvcnQgZnVuY3Rpb24gSlVER0VIKCkge1xuXG4gICAgcmV0dXJuIChcbiAgICAgIFxuICAgICAgPEhlYWRlckJveCB0aXRsZT1cIkp1ZGdpbmdcIiBpZD1cImp1Z2hlYWRcIj5cbiAgICAgICAgXG4gICAgICA8L0hlYWRlckJveD5cbiAgICApO1xuICB9IiwgIlxuaW1wb3J0IHsgQmx1ZUluZm9Cb3gsIEJ1bGJCb3gsIEluZm9Cb3gsIE5vdGVCb3gsIFFhQm94LCBXYXJuQm94IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQm94ZXNcIjtcbmltcG9ydCB7IEJGSE1vcmVCdXR0b24sIEJ1dHRvbk9uZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCBDb2xsYXBzaWJsZSBmcm9tIFwiLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xuaW1wb3J0IFBpZUNoYXJ0LCB7IEhvd09mdGVuVHJlYXRtZW50YXRpZW50cywgTW9yZUluZm9PblRoZXJhcHlCb3RoLCBPcGVuVG9HZW5lVGhlcmFweWF0aWVudHMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9HcmFwaFwiO1xuaW1wb3J0IEgxLCB7IEgyLCBIMywgSGhpZ2hsaWdodCwgSGhvcHAsIEhzbW9rZSwgSHNwb2lsZXIsIEh3YXZlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcbmltcG9ydCB7IExvcmVtTWVkaXVtLCBMb3JlbVNob3J0IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvTG9yZW1pcHN1bVwiO1xuaW1wb3J0IFNpbXBsZVNsaWRlciBmcm9tIFwiLi4vY29tcG9uZW50cy9TbGlkZXJcIjtcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCYXIsIERvdWdobnV0LCBQb2xhckFyZWEgfSBmcm9tICdyZWFjdC1jaGFydGpzLTInO1xuaW1wb3J0IHsgQ2hhcnQgYXMgQ2hhcnRKUywgVG9vbHRpcCwgTGVnZW5kLCBCYXJFbGVtZW50LCBDYXRlZ29yeVNjYWxlLCBMaW5lYXJTY2FsZSwgVGl0bGUsIFJhZGlhbExpbmVhclNjYWxlIH0gZnJvbSAnY2hhcnQuanMnO1xuLyogaW1wb3J0IFByb3RlaW5WaWV3ZXIgZnJvbSAnLi4vY29tcG9uZW50cy9GYW56b3J2aWV3ZXIudHN4JzsgKi9cbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvbi50c3hcIjtcblxuXG5DaGFydEpTLnJlZ2lzdGVyKFxuICAgIENhdGVnb3J5U2NhbGUsXG4gICAgUmFkaWFsTGluZWFyU2NhbGUsXG4gICAgTGluZWFyU2NhbGUsXG4gICAgQmFyRWxlbWVudCxcbiAgICBUaXRsZSxcbiAgICBUb29sdGlwLFxuICAgIExlZ2VuZFxuICApO1xuICBcbmV4cG9ydCBmdW5jdGlvbiBFeGFtcGxlKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG5cbiAgICBcbnsvKiAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGgxPlByb3RlaW4gU3RydWN0dXJlIFZpZXdlcjwvaDE+XG4gICAgICAgICAgICA8UHJvdGVpblZpZXdlci8+XG4gICAgICAgICAgPC9kaXY+ICovfVxuICAgICAgIFxuICAgICAgPGgxPiBIZXJlIHlvdSBjYW4gc2VlIHdoYXQgd2UgY2FuIHVzZTwvaDE+XG4gICAgICA8aDI+Q29sbGFwaXNibGVzPC9oMj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8ZGV0YWlscz5cbiAgICAgICAgICAgICAgICA8c3VtbWFyeT5FeHBhbmQgbWU8L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgPExvcmVtTWVkaXVtPjwvTG9yZW1NZWRpdW0+XG4gICAgICAgICAgICA8L2RldGFpbHM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiVGl0bGVcIiBpZD1cImNvbGxhcHNpYmxlXCI+IDxMb3JlbU1lZGl1bT48L0xvcmVtTWVkaXVtPjwvQ29sbGFwc2libGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8SG93T2Z0ZW5UcmVhdG1lbnRhdGllbnRzLz5cbiAgICAgICAgPE9wZW5Ub0dlbmVUaGVyYXB5YXRpZW50cy8+XG4gICAgICAgIDxNb3JlSW5mb09uVGhlcmFweUJvdGgvPlxuICAgICAgPC9kaXY+XG4gICAgPGgyPkJveGVzPC9oMj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8SW5mb0JveCB0aXRsZT1cIkluZm9Cb3hcIiBpZD1cImJveGlkXCI+PExvcmVtU2hvcnQ+PC9Mb3JlbVNob3J0PjwvSW5mb0JveD5cbiAgICAgICAgICAgIDxCbHVlSW5mb0JveCB0aXRsZT1cIkJsdWVJbmZvQm94XCI+PExvcmVtU2hvcnQ+PC9Mb3JlbVNob3J0PjwvQmx1ZUluZm9Cb3g+XG4gICAgICAgICAgICA8Tm90ZUJveCB0aXRsZT1cIk5vdGVCb3hcIiBpZD1cIm5vdGVib3hcIj48TG9yZW1TaG9ydD48L0xvcmVtU2hvcnQ+PC9Ob3RlQm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxXYXJuQm94IHRpdGxlPVwiV2FybkJveFwiPjxMb3JlbVNob3J0PjwvTG9yZW1TaG9ydD48L1dhcm5Cb3g+XG4gICAgICAgICAgICA8QnVsYkJveCB0aXRsZT1cIkJ1bGJCb3hcIj48TG9yZW1TaG9ydD48L0xvcmVtU2hvcnQ+PC9CdWxiQm94PlxuICAgICAgICAgICAgPFFhQm94IFxuICAgICAgICAgICAgcT1cIkEgcXVlc3Rpb24gb3Igc2VudGVuY2UuXCIgXG4gICAgICAgICAgICBhPVwiQW4gYW5zd2VyIG9yIHNlbnRlbmNlXCIvPiBcbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxoMj5IZWFkaW5nczwvaDI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICA8SDEgdGV4dD1cIkgxXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgIDxIMiB0ZXh0PVwiSDJcIiBpZD1cInRleHRcIiAvPlxuICAgICAgICA8SDMgdGV4dD1cIkgzXCIgaWQ9XCJ0ZXh0XCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxIc21va2UgdGV4dD1cIkhzbW9rZVwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICA8SGhvcHAgdGV4dD1cIkhob3BwXCIgaWQ9XCJ0ZXh0XCIgLz4gXG4gICAgICAgIDxIaGlnaGxpZ2h0PiBIaWdobGlnaHQ8L0hoaWdobGlnaHQ+ICAgICAgICAgICAgICBcbiAgICAgICAgPEhzcG9pbGVyPiAgSHNwb2lsZXIgPC9Ic3BvaWxlcj5cbiAgICAgICAgPEh3YXZlIHRleHQ9XCJId2F2ZVwiIGlkPVwidGV4dFwiIC8+IFxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzTmFtZT1cInVuZGVybGluZS0tbWFnaWNhbFwiPlByZUN5c2U8L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8aDI+QnV0dG9uczwvaDI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiVGhlIFB1YmxpY1wiIG9wZW49XCJwdWJzXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxCRkhNb3JlQnV0dG9uIGl0PVwiaWQgb2YgcGFydCB0byBiZSBvcGVuZWRcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJ0YWJsaW5rcyBQYXRpZW50IGhwLW1vcmUtYnV0dG9uXCIgPiBTb21ldGhpbmcgPC9idXR0b24+XG4gXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8aDI+R3JhcGhzPC9oMj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8UGllQ2hhcnQ+PC9QaWVDaGFydD5cbiAgICAgICAgICAgIDxEb3VnaG51dENoYXJ0PjwvRG91Z2hudXRDaGFydD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8QmFyQ2hhcnRUd29TZXRzPjwvQmFyQ2hhcnRUd29TZXRzPlxuICAgICAgICAgICAgPEJhckNoYXJ0PjwvQmFyQ2hhcnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgPEJhckNoYXJ0VmVydGljYWw+PC9CYXJDaGFydFZlcnRpY2FsPlxuICAgICAgICAgICAgPFBvbGFyQ2hhcnQ+PC9Qb2xhckNoYXJ0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGgyPkJveGVzPC9oMj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICBcbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICBcbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxuICAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9XCJleGFtcGxlXCI+RXhlcmNpc2VzPC9oMz5cbiAgICAgICAgICAgIDxpPjxoNj5CeSBZb3VyIG5hbWU8L2g2PjwvaT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxuICAgICAgICAgICAgICAgIDxwPiBBbGwgY29tcG9uZW50cyBzaG91bGQgYmUgaW4gdGhpcyBmaWxlLiBUaGUgZXh0cmEgY3NzIGhhcyB0byBiZSBwdXQgaW50byBleGFwbWxlLmNzcy4gVHVybiB0byBMaWxpYW5hIGlmIHlvdSBuZWVkIG9yIHdhbnQgYSBzY3NzIGZpbGUsIHRvby48L3A+XG4gICAgICAgICAgICAgICAgPHA+VGhlIGNvZGUgeW91IGNyZWF0ZSBzaG91bGQgYmUgaW4gdGhlIHJlc3BlY3RpdmUgY29sdW1ucyB3aGVyZSB0aGUgYXNzaWdubWVudHMgYXJlLCBpZiBub3Qgc3RhdGVkIG90aGVyd2lzZS4gPC9wPlxuICAgICAgICAgICAgICAgIDxwPldyaXRlIGRvd24gaG93IHlvdSBkaWQgaXQgaW4gdGhlIGRvY3VtZW50YXRpb24tYm94IGFzIGEgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIG90aGVycy4gVXNlIHRoZSBEb2N1LUJvYyBjb21wb25lbnQgZm9yIHRoYXQuWW91IGhhdmUgdG8gYWRkIGl0IHRvIHlvdXIgYXhlcmNpc2UgYmxvY2sgbWFudWFsbHkuIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPERvY3VCb3g+XG4gICAgICAgICAgICAgICAgPHA+SSB3cm90ZSBhIHRleHQuPC9wPlxuICAgICAgICAgICAgPC9Eb2N1Qm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+TGlzdHM8L2g0PjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj4gPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWVhc3ktdGFnXCI+RWFzeTwvZGl2PjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj5cbiAgICAgICAgICAgICAgICA8cD5hLiBDcmVhdGUgYSBudW1iZXJlZCBsaXN0IG9mIGZydWl0cy4gRml2ZSBpdGVtcyBhcmUgZW5vdWdoLiBVc2UgdGhlIEhUTUwgbGlzdCBlbGVtZW50LjwvcD4gXG4gICAgICAgICAgICAgICAgPHA+Yi4gQ3JlYXRlIGEgc2Vjb25kIGNvbHVtbiBuZXh0IHRvIHRoZSBvbmUgd2l0aCB0aGUgZnJ1aXQgbGlzdCB0aGF0IGNvbnRhaW5zIGEgYnV0dG9uLiA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxoci8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PlBpY3R1cmU8L2g0PjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZWFzeS10YWdcIj5FYXN5PC9kaXY+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxpPjxoNj5CeSA8L2g2PjwvaT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxuICAgICAgICAgICAgICAgIDxwPmEuIEluc2VydCBhIGNlbnRlcmVkIHBpY3R1cmUgb2YgU2luYW4gaGVyZS4gSXQgc2hvdWxkIGJlIGhhbGYgYXMgd2lkZSBhcyB0aGUgY29sdW1uIGFuZCBoYXZlIGEgZG90dGV0IGZyYW1lIGluIG91ciBwdXJwbGUuPC9wPlxuICAgICAgICAgICAgICAgIDxwPmIuIFdoZW4gaG92ZXJpbmcgb3ZlciB0aGUgcGljdHVyZSwgaXQgc2hvdWxkIHR1cm4gYmxhY2sgYW5kIHdoaXRlLiA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxoci8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PlBpY3R1cmUgU2xpZGVyPC9oND48L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWVhc3ktdGFnXCI+RWFzeTwvZGl2PjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj48L2Rpdj5cbiAgICAgICAgICAgIDxwPiBBZGQgYSBkdW1teSBzcG9uc29yIHRvIHRoaXMgc2xpZGVyLjwvcD5cbiAgICAgICAgICAgIDxTaW1wbGVTbGlkZXI+XG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2J0cy1ldi5kZS9cIj5cbiAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvclwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2J0cy5wbmdcIi8+XG4gICAgICAgICAgICA8L2E+IFxuICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cudW5pLWJpZWxlZmVsZC5kZS9mYWt1bHRhZXRlbi90ZWNobmlzY2hlLWZha3VsdGFldC9hcmJlaXRzZ3J1cHBlbi9tdWx0aXNjYWxlLWJpb2VuZ2luZWVyaW5nL2NhbXB1c2JyYXVlcmVpL1wiPlxuICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2FtcHVzLWJyYXVlcmVpLWhpbnRlcmxlZ3QuanBlZ1wiLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cInd3dy5pZHRkbmEuY29tXCI+XG4gICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3JcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9pZHQtbG9nby5wbmdcIj48L2ltZz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LmNlYml0ZWMudW5pLWJpZWxlZmVsZC5kZS9cIj5cbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3JcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9jZWJpdGVjLWZhcmJlLnBuZ1wiLz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L1NpbXBsZVNsaWRlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxoci8+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PkV4ZXJjaXNlIGJveDwvaDQ+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPjxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1tZWRpdW0tdGFnXCI+TWVkaXVtPC9kaXY+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxpPjxoNj5CeSA8L2g2PjwvaT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxuICAgICAgICAgICAgICAgIDxwPkNyZWF0ZSBhIGJveCB0aGF0IGRpZmZlcnMgaW4gbG9va3MgZnJvbSB0aGUgcmVzdCBvZiB0aGUgc2l0ZSBhbmQgZW1waGF6aXNlcyBpdCBjb250YWlucyBhbiBhc3NpZ25tZW50LiA8L3A+XG4gICAgICAgICAgICAgICAgPHA+QXJjaGlldmUgdGhpcyBlZmZlY3QgYnkgdXNpbmcgYmFja2dyb3VuZCwgc2hhZG93LCBib3JkZXIgYW5kL29yIG90aGVyIGNzcyBlZmZlY3RzIG9uIHRoZSBjbGFzcyBcImV4YW1wbGUtZXhlcmNpc2VcIi4gVGhlIGJveCBzaG91bGQgYmUgYWVzdGV0aWNhbGx5IHBsZWFzaW5nIHVubGlrZSB0aGUgZG9jdW1lbnRhdGlvbiBib3guIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+UERGPC9oND48L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLW1lZGl1bS10YWdcIj5NZWRpdW08L2Rpdj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+PC9kaXY+XG4gICAgICAgICAgICA8cD5hLiBJbnNlcnQgYSBwZGYgdXNpbmcgb3VyIFBERiBjb21wb25lbnQuPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZXhlcmNpc2VcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PiBTbWFydHBob25lIGNvbXBhdGliaWxpdHk8L2g0PjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTEgXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLW1lZGl1bS10YWdcIj5NZWRpdW08L2Rpdj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XG4gICAgICAgICAgICA8cD4gQ3JlYXRlIGEgc2ltcGxlIGJveCB0aGF0IGhhcyBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGNvbG9yIHdoZW4gdGhlIHdlYnNpdGUgaXMgdXNlZCBvbiBhIHNtYXJ0cGhvbmUgKHNjcmVlbiB3aWR0aCA3NjhweCBvciBzbWFsbGVyKS4gIDwvcD5cbiAgICAgICAgICAgIDxwPiBVc2UgQG1lZGlhIHJ1bGVzIGZvciB0aGF0LjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz4gXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGV4ZXJjaXNlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjxoND5Db2xsYXBzaWJsZTwvaDQ+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMSBcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtbWVkaXVtLXRhZ1wiPk1lZGl1bTwvZGl2PjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj5cbiAgICAgICAgICAgIDxwPiBhLiBVc2Ugb3VyIENvbGxhcHNpYmxlIGNvbXBvbmVudCB0byBjcmVhdGUgYSBjb2xsYXBzaWJsZS48L3A+XG4gICAgICAgICAgICA8cD4gYi4gVGhlIGNvbGxhcHNpYmxlIHNob3VsZCBjb250YWluIHRocmVlIGNpcmNsZXMgd2l0aCBhIGZldyB3b3JkcyBpbiBhIHJvdyAob3VyIENpcmNsZSBjb21wb25lbnQpIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz4gXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjxoND5IZWFkZXI8L2g0PjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtYWR2YW5jZWQtdGFnXCI+QWR2YW5jZWQ8L2Rpdj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XG4gICAgICAgICAgICA8cD5hLiBDcmVhdGUgYSBoZWFkZXIgZmlsZSBmb3IgdGhpcyBwYWdlLiBJdCBoYXMgdG8gYmUgdmlzaWJsZSBhbmQgdGhlcmVmb3JlIGJlIGFkZGVkIHRvIHBhZ2VzLnRzPC9wPlxuICAgICAgICAgICAgPHA+Yi4gQWRkIHRoaXMgcGFnZSB0byB0aGUgbmF2YmFyIHVuZGVyIFwiQ29udHJ1YnV0aW9uXCIuIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZXhlcmNpc2VcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PkNoYXJ0IHdpdGggVmljdG9yeTwvaDQ+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMSBcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtYWR2YW5jZWQtdGFnXCI+QWR2YW5jZWQ8L2Rpdj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XG4gICAgICAgICAgICA8cD5DcmVhdGUgYSBzaW1wbGUgYmFyIENoYXJ0IHdpdGggUmVhY3QtQ2hhcnRzLCB1c2luZyB0aGVpciA8YSBocmVmPVwiaHR0cHM6Ly9tdWkuY29tL3gvcmVhY3QtY2hhcnRzL1wiPiBkb2N1bWVudGF0aW9uPC9hPiAgYW5kIGR1bW15IGRhdGEgb2YgeW91ciBjaG9pY2UuIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyLz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZXhlcmNpc2VcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PiBTaW1wbGUgUmVhY3QgQ29tcG9uZW50PC9oND48L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xIFwiPjxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1hZHZhbmNlZC10YWdcIj5BZHZhbmNlZDwvZGl2PjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj5cbiAgICAgICAgICAgIDxwPiBDcmVhdGUgYSByZWFjdCBjb21wb25lbnQgdGhhdCB0YWtlcyBIVE1MLCBhIGxpbmsgdG8gYSBwaWN0dXJlLCBhIG51bWJlciBhbmQgYSB3b3JkIGFzIGlucHV0IGFuZCByZXR1cm4gdGhlIGNvZGUgaW4gYSBib3ggd2l0aCB0aGUgd29yZCBhcyBhIGhlYWRlci4gVGhlIHBpY3R1cmUgYW5kIG90aGVyIGNvZGUgc2hvdWxkIGJlIGluIHR3byBjb2x1bW5zIG5leHQgdG8gZWFjaCBvdGhlciwgdW5kZXIgdGhlIGhlYWRlci4gVGhlIG51bWJlciBzaG91bGQgYmUgbXVsdGlwbGllZCBieSAyIGFuZCB0aGVuIHNob3duIHNvbWV3aGVyZSB3aXRoIHRoZSBvdGhlciBwYXJ0cy48L3A+XG4gICAgICAgICAgICA8cD4gU2VlIERvY3VCb3ggY29tcG9uZW50LiAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aHIvPiAgXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBleGVyY2lzZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+IDwvaDQ+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMSBcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZWFzeS10YWdcIj48L2Rpdj48L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XG4gICAgICAgICAgICA8cD4gPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aHIvPiBcblxuICAgICAgICBcblxuXG4gICAgICA8Lz5cbiAgICApO1xuICB9XG5cblxuICBleHBvcnQgZnVuY3Rpb24gRG9jdUJveCh7Y2hpbGRyZW59OiB7Y2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xuICAgIHJldHVybihcbiAgICAgICAgPD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1kb2N1XCI+XG4gICAgICAgICAgICA8aDU+RG9jdW1lbnRhdGlvbjogPC9oNT5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC8+XG4gICAgKVxuICB9XG4gIFxuXG4gIGNvbnN0IEJhckNoYXJ0VHdvU2V0czogUmVhY3QuRkMgPSAoKSA9PiB7XG4gICAgY29uc3QgbGFiZWxzID0gWydKYW51YXJ5JywgJ0ZlYnJ1YXJ5JywgJ01hcmNoJywgJ0FwcmlsJywgJ01heScsICdKdW5lJywgJ0p1bHknXTtcblxuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICAgIGxhYmVscyxcbiAgICAgICAgZGF0YXNldHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBsYWJlbDogJ0RhdGFzZXQgMScsXG4gICAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAgICAgMC4wMDQ4NTgwMDAwMDAwMDAwMDEsXG4gICAgICAgICAgICAgICAgMC4wMDA4ODU5OTk5OTk5OTk5OTk3LFxuICAgICAgICAgICAgICAgIDAuNzI2NDE3OTk5OTk5OTk3MixcbiAgICAgICAgICAgICAgICAwLjIzODQxNTk5OTk5OTk5OTUsXG4gICAgICAgICAgICAgICAgMC4wMDM3MDMsXG4gICAgICAgICAgICAgICAgMC4yMzg0MTU5OTk5OTk5OTk1LFxuICAgICAgICAgICAgICAgIDAuMDAzNzAzXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDI1NSwgOTksIDEzMiwgMC41KScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBsYWJlbDogJ0RhdGFzZXQgMicsXG4gICAgICAgICAgICBkYXRhOiBbXG4gICAgICAgICAgICAgICAgMC4wMDQ4NTgwMDAwMDAwMDAwMDEsXG4gICAgICAgICAgICAgICAgMC4wMDA4ODU5OTk5OTk5OTk5OTk3LFxuICAgICAgICAgICAgICAgIDAuNzI2NDE3OTk5OTk5OTk3MixcbiAgICAgICAgICAgICAgICAwLjIzODQxNTk5OTk5OTk5OTUsXG4gICAgICAgICAgICAgICAgMC4wMDM3MDMsXG4gICAgICAgICAgICAgICAgMC4yMzg0MTU5OTk5OTk5OTk1LFxuICAgICAgICAgICAgICAgIDAuMDAzNzAzXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDUzLCAxNjIsIDIzNSwgMC41KScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH07XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgICAgcGx1Z2luczoge1xuICAgICAgICAgIGxlZ2VuZDoge1xuICAgICAgICAgICAgcG9zaXRpb246ICd0b3AnIGFzIGNvbnN0LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdGl0bGU6IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXG4gICAgICAgICAgICB0ZXh0OiAnQmFyQ2hhcnRUd29TZXRzJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxuICAgICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgQmFyQ2hhcnQ6IFJlYWN0LkZDID0gKCkgPT4ge1xuICAgIGNvbnN0IGxhYmVscyA9IFsnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICdBcHJpbCcsICdNYXknLCAnSnVuZScsICdKdWx5J107XG5cbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgICBsYWJlbHMsXG4gICAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6ICdEYXRhc2V0IDEnLFxuICAgICAgICAgICAgZGF0YTogW1xuICAgICAgICAgICAgICAgIDAuMDA0ODU4MDAwMDAwMDAwMDAxLFxuICAgICAgICAgICAgICAgIDAuMDAwODg1OTk5OTk5OTk5OTk5NyxcbiAgICAgICAgICAgICAgICAwLjcyNjQxNzk5OTk5OTk5NzIsXG4gICAgICAgICAgICAgICAgMC4yMzg0MTU5OTk5OTk5OTk1LFxuICAgICAgICAgICAgICAgIDAuMDAzNzAzLFxuICAgICAgICAgICAgICAgIDAuMjM4NDE1OTk5OTk5OTk5NSxcbiAgICAgICAgICAgICAgICAwLjAwMzcwM1xuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAncmdiYSgyNTUsIDk5LCAxMzIsIDAuNSknLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgICBsZWdlbmQ6IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiAndG9wJyBhcyBjb25zdCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxuICAgICAgICAgICAgdGV4dDogJ0JhckNoYXJ0T25lU2V0JyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxuICAgICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgQmFyQ2hhcnRWZXJ0aWNhbDogUmVhY3QuRkMgPSAoKSA9PiB7XG4gICAgY29uc3QgbGFiZWxzID0gWydKYW51YXJ5JywgJ0ZlYnJ1YXJ5JywgJ01hcmNoJywgJ0FwcmlsJywgJ01heScsICdKdW5lJywgJ0p1bHknXTtcblxuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICAgIGxhYmVscyxcbiAgICAgICAgZGF0YXNldHM6IFt7XG4gICAgICAgICAgICBheGlzOiAneScsXG4gICAgICAgICAgICBsYWJlbDogJ015IEZpcnN0IERhdGFzZXQnLFxuICAgICAgICAgICAgZGF0YTogWzY1LCA1OSwgODAsIDgxLCA1NiwgNTUsIDQwXSxcbiAgICAgICAgICAgIGZpbGw6IGZhbHNlLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBbXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMC4yKScsXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgMTU5LCA2NCwgMC4yKScsXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgMjA1LCA4NiwgMC4yKScsXG4gICAgICAgICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMC4yKScsXG4gICAgICAgICAgICAgICdyZ2JhKDU0LCAxNjIsIDIzNSwgMC4yKScsXG4gICAgICAgICAgICAgICdyZ2JhKDE1MywgMTAyLCAyNTUsIDAuMiknLFxuICAgICAgICAgICAgICAncmdiYSgyMDEsIDIwMywgMjA3LCAwLjIpJ1xuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBbXG4gICAgICAgICAgICAgICAgJ3JnYigyNTUsIDk5LCAxMzIpJyxcbiAgICAgICAgICAgICAgICAncmdiKDI1NSwgMTU5LCA2NCknLFxuICAgICAgICAgICAgICAgICdyZ2IoMjU1LCAyMDUsIDg2KScsXG4gICAgICAgICAgICAgICAgJ3JnYig3NSwgMTkyLCAxOTIpJyxcbiAgICAgICAgICAgICAgICAncmdiKDU0LCAxNjIsIDIzNSknLFxuICAgICAgICAgICAgICAgICdyZ2IoMTUzLCAxMDIsIDI1NSknLFxuICAgICAgICAgICAgICAgICdyZ2IoMjAxLCAyMDMsIDIwNyknXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIGJvcmRlcldpZHRoOiAxXG4gICAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgIGluZGV4QXhpczogJ3knIGFzIGNvbnN0LFxuICAgICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgICBwbHVnaW5zOiB7XG4gICAgICAgICAgbGVnZW5kOiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogJ3RvcCcgYXMgY29uc3QsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0aXRsZToge1xuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcbiAgICAgICAgICAgIHRleHQ6ICdWZXJ0aWNhbCBCYXIgQ2hhcnQnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICBcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuXG4gIGNvbnN0IERvdWdobnV0Q2hhcnQ6IFJlYWN0LkZDID0gKCkgPT4ge1xuXG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgbGFiZWxzOiBbJ1JlZCcsICdCbHVlJywgJ1llbGxvdycsICdHcmVlbicsICdQdXJwbGUnLCAnT3JhbmdlJ10sXG4gIGRhdGFzZXRzOiBbXG4gICAge1xuICAgICAgbGFiZWw6ICcjIG9mIFZvdGVzJyxcbiAgICAgIGRhdGE6IFsxMiwgMTksIDMsIDUsIDIsIDNdLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBbXG4gICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMC4yKScsXG4gICAgICAgICdyZ2JhKDU0LCAxNjIsIDIzNSwgMC4yKScsXG4gICAgICAgICdyZ2JhKDI1NSwgMjA2LCA4NiwgMC4yKScsXG4gICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMC4yKScsXG4gICAgICAgICdyZ2JhKDE1MywgMTAyLCAyNTUsIDAuMiknLFxuICAgICAgICAncmdiYSgyNTUsIDE1OSwgNjQsIDAuMiknLFxuICAgICAgXSxcbiAgICAgIGJvcmRlckNvbG9yOiBbXG4gICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMSknLFxuICAgICAgICAncmdiYSg1NCwgMTYyLCAyMzUsIDEpJyxcbiAgICAgICAgJ3JnYmEoMjU1LCAyMDYsIDg2LCAxKScsXG4gICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMSknLFxuICAgICAgICAncmdiYSgxNTMsIDEwMiwgMjU1LCAxKScsXG4gICAgICAgICdyZ2JhKDI1NSwgMTU5LCA2NCwgMSknLFxuICAgICAgXSxcbiAgICAgIGJvcmRlcldpZHRoOiAxLFxuICAgIH0sXG4gIF0sXG4gICAgfTtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XG4gICAgICAgIDxEb3VnaG51dCBkYXRhPXtkYXRhfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICApO1xuICB9O1xuXG5cbiAgY29uc3QgUG9sYXJDaGFydDogUmVhY3QuRkMgPSAoKSA9PiB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgbGFiZWxzOiBbJ1JlZCcsICdCbHVlJywgJ1llbGxvdycsICdHcmVlbicsICdQdXJwbGUnLCAnT3JhbmdlJ10sXG4gICAgICAgIGRhdGFzZXRzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6ICcjIG9mIFZvdGVzJyxcbiAgICAgICAgICAgIGRhdGE6IFsxMiwgMTksIDMsIDUsIDIsIDNdLFxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBbXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMC41KScsXG4gICAgICAgICAgICAgICdyZ2JhKDU0LCAxNjIsIDIzNSwgMC41KScsXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgMjA2LCA4NiwgMC41KScsXG4gICAgICAgICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMC41KScsXG4gICAgICAgICAgICAgICdyZ2JhKDE1MywgMTAyLCAyNTUsIDAuNSknLFxuICAgICAgICAgICAgICAncmdiYSgyNTUsIDE1OSwgNjQsIDAuNSknLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGJvcmRlcldpZHRoOiAxLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuXG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cbiAgICAgICAgICA8UG9sYXJBcmVhIGRhdGE9e2RhdGF9IC8+O1xuICAgICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9OyIsICJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7ICBOZXdIaWdobGlnaHQgfSBmcm9tIFwiLi4vdXRpbHMvSGlnaGxpZ2h0LWZ1bmN0aW9uc1wiO1xuaW1wb3J0IHsgb3BlblRoZW0gfSBmcm9tIFwiLi4vdXRpbHMvb3BlblRoZW1cIjtcbmltcG9ydCB7IEJhY2tVcCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gRW5nU2lkZSgpe1xuICAgIGxldCBudW1zID0gW1wicmVwMVwiLCBcInJlcDJcIiwgXCJyZXAzXCIsIFwicmVwNFwiLCBcInJlcDVcIiwgXCJyZXA2XCIsIFwidHJmMVwiLCBcInRyZjJcIiwgXCJ0cmYzXCIsIFwidHJmNFwiLCBcInBlMVwiLCBcInBlMlwiLCBcInBlM1wiLCBcInBlZzFcIiwgXCJwZWcyXCIsIFwicGVnM1wiLCBcInBlZzRcIiwgXCJwZWc1XCIsXG4gICAgICAgICBcIm5pYzFcIiwgXCJuaWMyXCIsIFwibmljM1wiLCBcIm5pYzRcIiwgXCJuaWM1XCIsIFwibmljNlwiLFwiZGVsMVwiLCBcImRlbDJcIiwgXCJkZWwzXCIsIFwiZGVsNFwiLCBcImRlbDVcIl1cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBoYW5kbGVTY3JvbGwpO1xuICAgICAgfSwgW10pO1xuICAgICAgY29uc3QgaGFuZGxlU2Nyb2xsID0gKCkgPT4ge1xuICAgICAgICAgIGZvcihsZXQgaWR4IGluIG51bXMpe1xuICAgICAgICAgICAgLyogY29uc29sZS5sb2coXCJXZSBhcmUgbG9va2luZyBhdCAnaXRlbScgPSBcIiArIG51bXNbaWR4XSkgKi9cbiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IG51bXNbaWR4XTtcbiAgICAgICAgICAgICAgbGV0IGluZCA9IG51bXMuZmluZEluZGV4KChlKSA9PiBlID09IGl0ZW0pXG4gICAgICAgICAgICAgIC8qIGNvbnNvbGUubG9nKFwiaW5kIGlzOiBcIiArIGluZCkgKi9cbiAgICAgICAgICAgICAgbGV0IHN1YmRpID0gXCJzdWJ0aXRsZVwiICsgaW5kIFxuICAgICAgICAgICAgIC8qICBjb25zb2xlLmxvZyhcInN1YmRpIGlzOiBcIiArIHN1YmRpKVxuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIndlIHVzZSBcIiArICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdGVtKT8uaWQgKyBcIiBhbmQgXCIgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzdWJkaSk/LmlkKSAqL1xuICAgICAgICAgICAgICBOZXdIaWdobGlnaHQoe2VsOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdGVtKSF9LCB7c3VidGl0bGU6IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHN1YmRpKSF9KTtcbiAgICAgICAgICB9ICAgICAgIFxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiZnVuY3Rpb24gSGlnaGxpZ2h0Q2hlY2tcIilcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKG51bXMpXG4gICAgXG4gICAgICBjb25zdCB7Z29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbGctYmxvY2tcIiA+XG4gICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdGlja3ktdG9wXCI+XG4gICAgICAgICAgICA8bmF2IGNsYXNzTmFtZT1cInNpZGViYXJcIiBpZD1cImVuZy1zaWRlYmFyXCI+XG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJvdXItY3ljbGVcIiwgc2Nyb2xsVG9JZDogXCJvdXItY3ljbGUtaGVhZGVyXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW91ci1jeWNsZVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtIGFjdGl2ZS1zaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5PdXIgQ3ljbGVzPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cIm91ci1jeWNsZVwiIGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJyZXBvcnRlclwiLCBzY3JvbGxUb0lkOiBcInJlcG9ydGVyLWhlYWRlclwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXJlcG9ydGVyXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+UmVwb3J0ZXIgU3lzdGVtPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInJlcG9ydGVyXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwMWhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUwXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwMmhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwM2hlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUyXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwNGhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUzXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwNWhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGU0XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDU8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwNmhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGU1XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+T3V0bG9vazwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPiBcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlblRoZW0oe2l0OiBcInRyYW5zZmVjdGlvblwiLCBzY3JvbGxUb0lkOiBcInRyYW5zZmVjdGlvbi1oZWFkZXJcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC10cmFuc2ZlY3Rpb25cIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5UcmFuc2ZlY3Rpb248L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidHJhbnNmZWN0aW9uXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXRyYW5zZmVjdGlvblwiLCBzY3JvbGxUb0lkOiBcInRyZjFoZWFkXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlNlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi10cmFuc2ZlY3Rpb25cIiwgc2Nyb2xsVG9JZDogXCJ0cmYyaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTdcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItdHJhbnNmZWN0aW9uXCIsIHNjcm9sbFRvSWQ6IFwidHJmM2hlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGU4XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXRyYW5zZmVjdGlvblwiLCBzY3JvbGxUb0lkOiBcInRyZjRoZWFkXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlOVwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+IFxuICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlblRoZW0oe2l0OiBcInBlLXN5c3RlbXNcIiwgc2Nyb2xsVG9JZDogXCJwZS1zeXN0ZW1zLWhlYWRlclwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXBlLXN5c3RlbXNcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5QRSBTeXN0ZW1zPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInBlLXN5c3RlbXNcIiBjbGFzc05hbWU9XCJzaWRlc3VidGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcGUtc3lzdGVtc1wiLCBzY3JvbGxUb0lkOiBcInBlMWhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxMFwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZS1zeXN0ZW1zXCIsIHNjcm9sbFRvSWQ6IFwicGUyaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTExXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXBlLXN5c3RlbXNcIiwgc2Nyb2xsVG9JZDogXCJwZTNoZWFkXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMTJcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5PdXRsb29rPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgIDxkaXY+IFxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuVGhlbSh7aXQ6IFwicGVncm5hXCIsIHNjcm9sbFRvSWQ6IFwicGVncm5hLWhlYWRlclwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXBlZ3JuYVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5PnBlZ1JOQTwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJwZWdybmFcIiBjbGFzc05hbWU9XCJzaWRlc3VidGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcGVncm5hXCIsIHNjcm9sbFRvSWQ6IFwicGVnMWhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxM1wiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZWdybmFcIiwgc2Nyb2xsVG9JZDogXCJwZWcyaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE0XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXBlZ3JuYVwiLCBzY3JvbGxUb0lkOiBcInBlZzNoZWFkXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMTVcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcGVncm5hXCIsIHNjcm9sbFRvSWQ6IFwicGVnNGhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxNlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZWdybmFcIiwgc2Nyb2xsVG9JZDogXCJwZWc1aGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE3XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDU8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJuaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmlja2FzZS1oZWFkZXJcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1uaWNrYXNlXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+Tmlja2FzZTwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJuaWNrYXNlXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWMxaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE4XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWMyaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE5XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWMzaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIwXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWM0aGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIxXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWM1aGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIyXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDU8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLW5pY2thc2VcIiwgc2Nyb2xsVG9JZDogXCJuaWM2aGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIzXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDY8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJkZWxpdmVyeVwiLCBzY3JvbGxUb0lkOiBcImRlbGl2ZXJ5LWhlYWRlclwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LWRlbGl2ZXJ5XCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+RGVsaXZlcnk8L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiZGVsaXZlcnlcIiBjbGFzc05hbWU9XCJzaWRlc3VidGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItZGVsaXZlcnlcIiwgc2Nyb2xsVG9JZDogXCJkZWwxaGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTI0XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLWRlbGl2ZXJ5XCIsIHNjcm9sbFRvSWQ6IFwiZGVsMmhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUyNVwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAyPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1kZWxpdmVyeVwiLCBzY3JvbGxUb0lkOiBcImRlbDNoZWFkXCJ9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMjZcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItZGVsaXZlcnlcIiwgc2Nyb2xsVG9JZDogXCJkZWw0aGVhZFwifSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTI3XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLWRlbGl2ZXJ5XCIsIHNjcm9sbFRvSWQ6IFwiZGVsNWhlYWRcIn0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUyOFwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPk91dGxvb2s8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmF2PiAgIFxuICAgICAgICAgICAgPEJhY2tVcD48L0JhY2tVcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgKVxufVxuXG5cblxuXG5cbi8qIGZ1bmN0aW9uIFNpZGVJdGVtRW5nKHtoZXNoLCBudW19OntoZXNoOiBzdHJpbmc7IG51bTogbnVtYmVyfSl7XG4gICAgbGV0IHN1YmRpID0gXCJzdWJ0aXRsZVwiICsgbnVtXG4gICAgbGV0IG9wZW5tb3JlID0gc3RyaW5nVG9TbHVnKGhlc2gpIFxuICAgIGNvbnNvbGUubG9nKFwib3Blbm1vcmU6IFwiICsgb3Blbm1vcmUpXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogb3Blbm1vcmV9KX0+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGlkPXtzdWJkaX0gY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+e2hlc2h9PC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD17b3Blbm1vcmV9IGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPk90aGVyPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvZGl2PiAgIFxuICAgIClcbn1cbiAqL1xuXG5cbiIsICJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEhpZ2hsaWdodCB9IGZyb20gXCIuLi91dGlscy9IaWdobGlnaHQtZnVuY3Rpb25zXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBJbnRTaWRlYmFyKCl7XG4gICAgbGV0IG51bXMgPSBbIFwibWF4SFwiLCBcIm9sYXJpdUhcIiwgXCJqb3NodWFIXCIsIFwianVsaWFIXCIsIFwibmljb2xlSFwiLCBcIm1hdHRpanNIXCIsIFwid2VzdGhvZmZIXCIsIFwiYmVyZW5zSFwiLCBcIndpc2NobWV5ZXJIXCJdXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbCk7XG4gICAgICAgIHJldHVybiAoKSA9PiB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgIH0sIFtdKTtcbiAgICAgIGNvbnN0IGhhbmRsZVNjcm9sbCA9ICgpID0+IHtcbiAgICAgICAgICBmb3IobGV0IGlkeCBpbiBudW1zKXtcbiAgICAgICAgICAgIC8qIGNvbnNvbGUubG9nKFwiV2UgYXJlIGxvb2tpbmcgYXQgJ2l0ZW0nID0gXCIgKyBudW1zW2lkeF0pICovXG4gICAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBudW1zW2lkeF07XG4gICAgICAgICAgICAgIGxldCBpbmQgPSBudW1zLmZpbmRJbmRleCgoZSkgPT4gZSA9PSBpdGVtKVxuICAgICAgICAgICAgIC8qICBjb25zb2xlLmxvZyhcImluZCBpczogXCIgKyBpbmQpICovXG4gICAgICAgICAgICAgIGxldCBzdWJkaSA9IFwic3VidGl0bGVcIiArIGluZCBcbiAgICAgICAgICAgICAgLyogY29uc29sZS5sb2coXCJzdWJkaSBpczogXCIgKyBzdWJkaSlcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJ3ZSB1c2UgXCIgKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSk/LmlkICsgXCIgYW5kIFwiICsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc3ViZGkpPy5pZCkgKi9cbiAgICAgICAgICAgICAgSGlnaGxpZ2h0KHtlbDogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSkhfSwge3N1YnRpdGxlOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzdWJkaSkhfSk7XG4gICAgICAgICAgfSAgICAgICBcbiAgICAgICAgICAvKiAgICAgKi9cbiAgICAgIH1cbiAgICAgIC8qIGNvbnNvbGUubG9nKG51bXMpICovXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XG4gICAgICAgICAgICA8YnIvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdGlja3ktdG9wXCI+XG4gICAgICAgICAgICA8bmF2IGNsYXNzTmFtZT1cInNpZGViYXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi1tYXhcIiwgc2Nyb2xsVGFyZ2V0OiBcIm1heFwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTBcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW1heFwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pk1heDwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItb2xhcml1XCIsIHNjcm9sbFRhcmdldDogXCJvbGFyaXVcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGUxXCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1vbGFyaXVcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5PbGFyaXU8L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+IFxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLWpvc2h1YVwiLCBzY3JvbGxUYXJnZXQ6IFwiam9zaHVhXCIgfSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInN1YnRpdGxlMlwiIGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJwYXJlbnQtam9zaHVhXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+Sm9zaHVhPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi1qdWxpYVwiLCBzY3JvbGxUYXJnZXQ6IFwianVsaWFcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGUzXCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1qdWxpYVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pkp1bGlhPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi1uaWNvbGVcIiwgc2Nyb2xsVGFyZ2V0OiBcIm5pY29sZVwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTRcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW5pY29sZVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5ID4gTmljb2xlIDwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItbWF0dGlqc1wiLCBzY3JvbGxUYXJnZXQ6IFwibWF0dGlqc1wiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTVcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW1hdHRpanNcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5tYXR0aWpzPC9zdW1tYXJ5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PiBcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi13ZXN0aG9mZlwiLCBzY3JvbGxUYXJnZXQ6IFwid2VzdGhvZmZcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU2XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC13ZXN0aG9mZlwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5PkthdHJpbjwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItYmVyZW5zXCIsIHNjcm9sbFRhcmdldDogXCJiZXJlbnNcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU3XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1iZXJlbnNcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5CZXJlbnM8L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+IFxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLXdpc2NobWV5ZXJcIiwgc2Nyb2xsVGFyZ2V0OiBcIndpc2NobWV5ZXJcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU4XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC13aXNjaG1leWVyXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+V2lzY2htZXllcjwvc3VtbWFyeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdj4gXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItb2xhcml1XCIsIHNjcm9sbFRhcmdldDogXCJvbGFyaXVcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU5XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1vbGFyaXVcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5PbGFyaXU8L3N1bW1hcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uYXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIClcbn1cblxuICAgXG5cbiAgZXhwb3J0IGZ1bmN0aW9uIG9wZW5BbmRTY3JvbGwoeyBpdCwgc2Nyb2xsVGFyZ2V0IH06IHsgaXQ6IHN0cmluZywgc2Nyb2xsVGFyZ2V0Pzogc3RyaW5nIH0pIHtcbiAgICBjb25zdCBnb3RvYW5kb3BlbiA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XG4gICAgICAgIF9ldmVudC5wcmV2ZW50RGVmYXVsdCgpOyAvLyBQcmV2ZW50IGRlZmF1bHQgYW5jaG9yIGJlaGF2aW9yXG5cbiAgICAgICAgY29uc29sZS5sb2coYG9wZW5BbmRTY3JvbGwgY2FsbGVkIHdpdGggaXQ6ICR7aXR9IGFuZCBzY3JvbGxUYXJnZXQ6ICR7c2Nyb2xsVGFyZ2V0fWApO1xuXG4gICAgICAgIC8vIEF0dGVtcHQgdG8gZmluZCB0aGUgZWxlbWVudHNcbiAgICAgICAgY29uc3Qgc3VidGFiRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0KTtcbiAgICAgICAgY29uc3QgcGFyZW50RWxlbWVudElkID0gXCJwYXJlbnQtXCIgKyBpdC5yZXBsYWNlKFwidGFiLVwiLCBcIlwiKTtcbiAgICAgICAgY29uc3QgcGFyZW50RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHBhcmVudEVsZW1lbnRJZCk7XG5cbiAgICAgICAgY29uc29sZS5sb2coYHN1YnRhYkVsZW1lbnQgd2l0aCBJRCAke2l0fTogYCwgc3VidGFiRWxlbWVudCk7XG4gICAgICAgIGNvbnNvbGUubG9nKGBwYXJlbnRFbGVtZW50IHdpdGggSUQgJHtwYXJlbnRFbGVtZW50SWR9OiBgLCBwYXJlbnRFbGVtZW50KTtcblxuICAgICAgICBpZiAoc3VidGFiRWxlbWVudCAmJiBwYXJlbnRFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZvdW5kIHN1YnRhYkVsZW1lbnQgYW5kIHBhcmVudEVsZW1lbnQuXCIpO1xuICAgICAgICAgICAgLy8gU2hvdyB0aGUgc2VsZWN0ZWQgdGFiIGluIHRoZSBzaWRlYmFyIGFuZCBhZGQgYWN0aXZlIGNsYXNzXG4gICAgICAgICAgICBzdWJ0YWJFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XG4gICAgICAgICAgICBwYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJhY3RpdmUtc2lkZWl0ZW1cIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBTdWJ0YWIgZWxlbWVudCBvciBwYXJlbnQgZWxlbWVudCBub3QgZm91bmQgZm9yIElEOiAke2l0fWApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgYSBzY3JvbGwgdGFyZ2V0IGlzIHByb3ZpZGVkLCBzY3JvbGwgdG8gdGhhdCBlbGVtZW50IG9uIHRoZSBwYWdlXG4gICAgICAgIGlmIChzY3JvbGxUYXJnZXQpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzY3JvbGxUYXJnZXQpO1xuICAgICAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgU2Nyb2xsaW5nIHRvIGVsZW1lbnQgd2l0aCBJRDogJHtzY3JvbGxUYXJnZXR9YCk7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLy8gR2V0IHRoZSBwb3NpdGlvbiBvZiB0aGUgZWxlbWVudCByZWxhdGl2ZSB0byB0aGUgZG9jdW1lbnRcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50UmVjdCA9IHRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudFRvcCA9IGVsZW1lbnRSZWN0LnRvcCArIHdpbmRvdy5zY3JvbGxZO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWlkZGxlIG9mIHRoZSB2aWV3cG9ydFxuICAgICAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbE9mZnNldCA9IGVsZW1lbnRUb3AgLSAodmlld3BvcnRIZWlnaHQgLyA1IC0gdGFyZ2V0RWxlbWVudC5vZmZzZXRIZWlnaHQgLyAyKTtcbiAgICAgICAgICAgICAgIC8qICBcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgRWxlbWVudCBUb3A6ICR7ZWxlbWVudFRvcH1gKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgVmlld3BvcnQgSGVpZ2h0OiAke3ZpZXdwb3J0SGVpZ2h0fWApO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTY3JvbGwgT2Zmc2V0OiAke3Njcm9sbE9mZnNldH1gKTsgKi9cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oe1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHNjcm9sbE9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgYmVoYXZpb3I6IFwic21vb3RoXCJcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihgU2Nyb2xsIHRhcmdldCBlbGVtZW50IG5vdCBmb3VuZCBmb3IgSUQ6ICR7c2Nyb2xsVGFyZ2V0fWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBnb3RvYW5kb3Blbjtcbn1cblxuIiwgIlxuaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFNhZmV0eVNpZGViYXIoKXtcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiAgZC1ub25lIGQtbGctYmxvY2tcIj5cbiAgICAgICAgICAge3NpZGViYXJ9XG4gICAgICAgIDwvZGl2PlxuICAgICl9XG5jb25zdCB0YWJzID0gW1xuICAgIHsgdGFiOiBcIlJvbGVcIiB9LFxuICAgIHsgdGFiOiBcIkJpb3NhZmV0eVwiLCBzdWJ0YWJzOiBbXCJNZWNoYW5pc21cIiwgXCJEZWxpdmVyeVwiXSB9LFxuICAgIHsgdGFiOiBcIkJpb3NlY3VyaXR5XCIsIHN1YnRhYnM6IFtcIk91ciBQcm9qZWN0XCIsIFwiUmlzayBBc3Nlc3NtZW50XCIsIFwiTWFuYWdpbmcgUmlza3NcIl0gfSxcbiAgICB7IHRhYjogXCJCaW9ldGhpY3NcIiwgc3VidGFiczogW1wiR2VuZSBUaGVyYXB5XCIsIFwiUHJpbWFyeSBDZWxsc1wiLCBcIkNvbnNlbnQgYW5kIEd1aWRlbGluZXNcIl0gfSxcbiAgICB7IHRhYjogXCJDaGVjay1JbnNcIn0sXG4gICAgeyB0YWI6IFwiT3VyIExhYlwiIH0sXG4gICBcbiAgXTsiLCAiZXhwb3J0IGZ1bmN0aW9uIE5vU2lkZWJhcigpe1xuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICA8L2Rpdj5cbiAgICApXG59IiwgImltcG9ydCB7IFBERiB9IGZyb20gXCIuLi9jb21wb25lbnRzL1BkZnNcIjtcbmltcG9ydCB7IEJsb2NrUXVvdGVCIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvUXVvdGVzXCI7XG5pbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBpZ2VtQmllbGVmZWxkKCkge1xuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIgaWQ9XCJCaWVsZWZlbGQgVW5pdmVyc2l0eVwiPiAgXG4gICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy91bml2ZXJzaXR5L2JpZWxlZmVsZC0zMzgxODcwLmpwZ1wiLz5cbiAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJIaXN0b3J5XCIgaWQ9XCJIaXN0b3J5XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XG4gICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcbiAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy91bmktYmllbGVmZWxkLWR1bmtlbC5wbmdcIiBzdHlsZT17e3dpZHRoOlwiNDAlXCIsIGhlaWdodDpcIjYwJVwifX0vPiBcbiAgIDwvZGl2PlxuICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXG4gICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NlYml0ZWMtbG9nby1oaW50ZXJsZWd0LnBuZ1wiIHN0eWxlPXt7d2lkdGg6XCIyMCVcIiwgaGVpZ2h0OlwiNTAlXCIsICB0cmFuc2Zvcm06IFwic2NhbGUoMS41KVwifX0vPlxuICAgPC9kaXY+XG4gIDwvZGl2PlxuICAgICAgICA8YnIvPlxuICAgICAgICA8cD5UaGUgZ2xvcmlvdXMgaGlzdG9yeSBvZiB0aGUgaUdFTSB0ZWFtIEJpZWxlZmVsZCBiZWdhbiBpbiAyMDEwIGFuZCBtYXJrZWQgaXRzIGRlYnV0IG9uIHRoZSBnbG9iYWwgc3RhZ2UgXG4gICAgICAgICAgb2Ygc3ludGhldGljIGJpb2xvZ3kuIFNpbmNlIHRoZW4sIHRoZSB0ZWFtcyB3ZXJlIGNvbXBvc2VkIG9mIG92ZXIgMTYwIGVudGh1c2lhc3RpYyBzdHVkZW50cyBmcm9tIHZhcmlvdXMgZGlzY2lwbGluZXMsIGluY2x1ZGluZyBiaW9sb2d5LCBjaGVtaXN0cnksIGFuZCBlbmdpbmVlcmluZy48L3A+XG4gICAgICAgIDxwPlRoZWlyIGluaXRpYWwgcHJvamVjdCBmb2N1c2VkIG9uIHRoZSBkZXZlbG9wbWVudCBvZiBhIGJpb3NlbnNvciBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIHNwaWNpbmVzcyBpbiBmb29kLCB3aGljaCByZXN1bHRlZCBpbiB0aGUgdGVhbSBiZWluZyBhd2FyZGVkIGEgZ29sZCBtZWRhbCBhdCB0aGUgY29tcGV0aXRpb24uIEZvbGxvd2luZyB0aGlzIHN1Y2Nlc3NmdWwgZGVidXQsIHRoZSB0ZWFtcyBjb250aW51ZWQgdG8gZXZvbHZlLCBib3RoIGluIHNpemUgYW5kIGV4cGVydGlzZS4gIFxuICAgICAgICBPdmVyIG1vcmUgdGhhbiB0ZW4geWVhcnMsIHRoZSBpR0VNIFRlYW0gQmllbGVmZWxkLUNlQmlUZWMgZW5nYWdlZCBpbiBhIG11bHRpdHVkZSBvZiBwcm9qZWN0cywgZWFjaCBwdXNoaW5nIHRoZSBib3VuZGFyaWVzIG9mIHN5bnRoZXRpYyBiaW9sb2d5LiBUaGUgdGVhbXMgZWFybmVkIDEzIGdvbGQgbWVkYWxzIGFuZCBoYXZlIGFjaGlldmVkIGEgcmFua2luZyB3aXRoaW4gdGhlIHRvcCAxNiB0ZWFtcyB0d2ljZSAoMjAxMSwgMjAxMikuIE9uZSBvZiB0aGUgbW9zdCBub3RhYmxlIGFjaGlldmVtZW50cyB3YXMgcmVhY2hlZCBpbiAyMDEzLCB3aGVuIHRoZSBpR0VNIFRlYW0gQmllbGVmZWxkIHdvbiB0aGUgRXVyb3BlYW4gSmFtYm9yZWUsIHdlcmUgdGhlIEZpcnN0IFJ1bm5lciBVcCBhdCB0aGUgR2lhbnQgSmFtYm9yZWUgYW5kIHNlY3VyZWQgc2V2ZXJhbCBUcmFjayBhbmQgU3BlY2lhbCBQcml6ZXMuIFRoZWlyIHByb2plY3QgXHUyMDFDRWNvbGVjdHJpY2l0eVx1MjAxRCBmb2N1c2VkIG9uIGNyZWF0aW5nIGEgbWljcm9iaWFsIGZ1ZWwgY2VsbCwgYnkgdHJhbnNmb3JtaW5nIEUuIGNvbGkgaW50byBhbiBlbGVjdHJvLWFjdGl2ZSBiYWN0ZXJpdW0gYW5kIGluY29ycG9yYXRpbmcgaXQgaW50byBhIGZ1ZWwgY2VsbCB0aGF0IHByb3ZpZGVzIGFuIGVudmlyb25tZW50YWxseSBmcmllbmRseSBhbHRlcm5hdGl2ZSBmb3IgZ2VuZXJhdGluZyBlbGVjdHJpY2l0eS4gVGhlaXIgaW5ub3ZhdGl2ZSBhcHByb2FjaCBhbmQgY2FyZWZ1bCBleGVjdXRpb24gaW1wcmVzc2VkIHRoZSBqdXJ5IGFuZCBzb2xpZGlmaWVkIHRoZSBCaWVsZWZlbGQgdGVhbSdzIHJlcHV0YXRpb24gaW4gdGhlIGlHRU0gY29tbXVuaXR5LiBJbiBhY2tub3dsZWRnbWVudCBvZiB0aGUgcGl2b3RhbCByb2xlIHBsYXllZCBieSB0aGUgQ2VudGVyIGZvciBCaW90ZWNobm9sb2d5IChDZUJpVGVjKSBpbiB0aGUgdGVhbVx1MjAxOXMgc3VjY2VzcyBzaW5jZSB0aGUgYmVnaW5uaW5nLCB0aGUgbmFtZSBvZiB0aGUgdGVhbSB3YXMgb2ZmaWNpYWxseSBjaGFuZ2VkIHRvIEJpZWxlZmVsZC1DZUJpVGVjIGluIDIwMTQuIFRoaXMgY2hhbmdlIGhpZ2hsaWdodGVkIHRoZSBjbG9zZSBjb2xsYWJvcmF0aW9uIGJldHdlZW4gdGhlIHRlYW0gYW5kIHRoZSByZXNlYXJjaCBjZW50ZXIsIHRoZXJlYnkgdW5kZXJzY29yaW5nIHRoZSBpbXBvcnRhbmNlIG9mIGluc3RpdHV0aW9uYWwgc3VwcG9ydCBpbiBhZHZhbmNpbmcgc2NpZW50aWZpYyByZXNlYXJjaCBhbmQgZWR1Y2F0aW9uIHJlbGF0ZWQgdG8gdGhlIGlHRU0gY29tcGV0aXRpb24uPC9wPlxuICAgICAgICA8cD5JbiByZWNlbnQgeWVhcnMsIHRoZSB0ZWFtcyBjb250aW51ZWQgdG8gcHVyc3VlIGlubm92YXRpdmUgYXZlbnVlcyBvZiBlbnF1aXJ5LiBUaGVpciBwcm9qZWN0cyByYW5nZWQgZnJvbSBkZXZlbG9waW5nIGJpb2xvZ2ljYWwgc3lzdGVtcyBmb3IgbWVkaWNhbCBhcHBsaWNhdGlvbnMgdG8gY3JlYXRpbmcgc3VzdGFpbmFibGUgc29sdXRpb25zIGZvciBpbmR1c3RyaWFsIGFuZCBlbnZpcm9ubWVudGFsIGNoYWxsZW5nZXMuIEZvciBpbnN0YW5jZSwgaW4gMjAxOCwgdGhlIHByb2plY3QgXCJuYW5vRmFjdG9yeVwiIGFpbWVkIHRvIHNjYXZlbmdlIGhlYXZ5IG1ldGFsIGlvbnMgdXNpbmcgb3B0aW1pemVkIEUuIGNvbGkgY2VsbHMgdG8gYWNjdW11bGF0ZSBoZWF2eSBtZXRhbCBpb25zIGluc2lkZSB0aGUgY3l0b3BsYXNtIGFkZHJlc3NpbmcgdGhlIGlzc3VlIG9mIGluY3JlYXNpbmcgc2NhcmNpdHkgb2YgbWV0YWwgcmVzb3VyY2VzIGR1ZSB0byBnbG9iYWwgY29uc3VtcHRpb24gb2YgZWxlY3Ryb25pY3MuIFxuICAgICAgICBJbiB0aGUgcHJldmlvdXMgeWVhciwgdGhlIGlHRU0gdGVhbSBCaWVsZWZlbGQtQ2VCaVRlYyBkZXZlbG9wZWQgYSBwbGF0Zm9ybSBmb3IgZGlhZ25vc2lzIGFuZCB0aGVyYXB5IG9mIGJyYWluIHR1bW9ycyBjYWxsZWQgXCJBU1RFUklTS1wiLiBUaGUgdGVhbSBmb2N1c2luZyBvbiBhIG1vZHVsYXIgZ2VuZXRpYyBzeXN0ZW0gdG8gdGFyZ2V0IGdsaW9tYXMgYnkgZGVzaWduaW5nIG1STkEgbW9sZWN1bGVzIHRoYXQsIHVwb24gZGV0ZWN0aW9uIG9mIGEgdHVtb3Itc3BlY2lmaWMgbXV0YXRpb24gb3IgYW1wbGlmaWNhdGlvbiwgbGVhZCB0byB0aGUgdHJhbnNsYXRpb24gb2YgYSB0b3hpYyBwcm90ZWluIHRoYXQgc2VsZWN0aXZlbHkga2lsbHMgY2FuY2VyIGNlbGxzIHdpdGhvdXQgaGFybWluZyBoZWFsdGh5IGNlbGxzLiBUaGlzIGlubm92YXRpdmUgYXBwcm9hY2ggaXMgYSBwZXJmZWN0IGV4YW1wbGUgb2YgaG93IHN5bnRoZXRpYyBiaW9sb2d5IGNhbiBiZSB1c2VkIHRvIGltcHJvdmUgdGhlIHNwZWNpZmljaXR5IGFuZCBlZmZpY2FjeSBvZiBtZWRpY2FsIHRyZWF0bWVudHMsIHByb3ZpZGluZyB2YWx1YWJsZSB0b29scyB0byB0aGUgaUdFTSBjb21tdW5pdHkuPC9wPiBcbiAgICAgICAgPHA+QSBzaWduaWZpY2FudCBhc3BlY3Qgb2YgaUdFTSBCaWVsZWZlbGQtQ2VCaVRlY1x1MjAxOXMgc3VjY2VzcyBoYXMgYmVlbiB0aGVpciBlbXBoYXNpcyBvbiBjb2xsYWJvcmF0aW9uIGFuZCBjb21tdW5pdHkgZW5nYWdlbWVudC4gVGhlIHRlYW0gcmVndWxhcmx5IGNvbGxhYm9yYXRlcyB3aXRoIG90aGVyIGlHRU0gdGVhbXMsIGluc3RpdHV0aW9ucywgY29tcGFuaWVzLCBhbmQgc2NpZW50aXN0cyBzaGFyaW5nIGtub3dsZWRnZSBhbmQgcmVzb3VyY2VzLiBUaGV5IGFsc28gZW5nYWdlIHdpdGggdGhlIGxvY2FsIGNvbW11bml0eSB0aHJvdWdoIG91dHJlYWNoIHByb2dyYW1zIGFuZCB3b3Jrc2hvcHMuIGhlIGhpc3Rvcnkgb2YgaUdFTSBCaWVsZWZlbGQgaXMgYSBzdG9yeSBvZiBtb3RpdmF0aW9uLCBkZWRpY2F0aW9uLCBhbmQgc2NpZW50aWZpYyBjdXJpb3NpdHkuIEZyb20gdGhlaXIgZWFybHkgYmVnaW5uaW5ncyB0byB0aGVpciBjdXJyZW50IGVuZGVhdm9ycywgdGhlIHRlYW0gaGFzIGNvbnNpc3RlbnRseSBkZW1vbnN0cmF0ZWQgdGhlIHBvd2VyIG9mIHN5bnRoZXRpYyBiaW9sb2d5IHRvIHRhY2tsZSBjb21wbGV4IGdsb2JhbCBjaGFsbGVuZ2VzLiBBcyB0aGV5IGNvbnRpbnVlIHRvIHBhcnRpY2lwYXRlIGluIHRoZSBpR0VNIGNvbXBldGl0aW9uLCB0aGV5IHJlbWFpbiB0byBkZW1vbnN0cmF0ZSBpbm5vdmF0aW9uIGFuZCBjb2xsYWJvcmF0aW9uIHdpdGhpbiB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHkuPC9wPlxuICAgICAgICBcbiAgICAgICAgPC9TZWN0aW9uPlxuXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiU3RlZXJpbmcgQ29tbWl0dGVlXCIgaWQ9XCJTdGVlcmluZyBDb21taXR0ZWVcIj5cbiAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJpR0VNIGlzIHRoZSBiaWdnZXN0IG9wcG9ydHVuaXR5IGZvciB5b3VuZyByZXNlYXJjaGVycyB0byBjcm9zcyB0aGVpciBvd24gYm91bmRhcmllcy5cIiBjaXRlPVwiUHJvZi4gRHIuIEpcdTAwRjZybiBLYWxpbm93c2tpLCBQcmluY2lwbGUgSW52ZXN0aWdhdG9yIG9mIGlHRU0gQmllbGVmZWxkIHNpbmNlIDIwMTBcIi8+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJXaGF0IGlzIGEgU3RlZXJpbmcgQ29tbWl0dGVlP1wiIGlkPVwiU3RlZXJpbmcgQ29tbWl0dGVlMVwiPlxuICAgICAgICAgICAgICA8cD5UaGUgU3RlZXJpbmcgQ29tbWl0dGVlIHBsYXlzIGEgY2VudHJhbCByb2xlIGluIHRoZSByZXN1bXB0aW9uIGFuZCBmdXJ0aGVyIGRldmVsb3BtZW50IG9mIGlHRU0gYWN0aXZpdGllcyBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eS4gQWZ0ZXIgYSBwYXVzZSBpbiAyMDIyIGR1ZSB0byBmaW5hbmNpYWwgY29uc3RyYWludHMgYW5kIGNoYW5nZXMgaW4gcGFydGljaXBhdGlvbiBjb25kaXRpb25zLCB0aGUgU3RlZXJpbmcgQ29tbWl0dGVlIHdhcyBlc3RhYmxpc2hlZCB0byBlbnN1cmUgQmllbGVmZWxkJ3Mgc3VzdGFpbmFibGUgcGFydGljaXBhdGlvbiBpbiBmdXR1cmUgaUdFTSBjb21wZXRpdGlvbnMuPC9wPlxuICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvc3RlZXJpbmctY29tbWl0ZWUud2VicFwiIC8+XG4gICAgICAgICAgICAgIDxwPlRoZSBTdGVlcmluZyBDb21taXR0ZWUgY29uc2lzdHMgb2YgZml2ZSByZW5vd25lZCBzY2llbnRpc3RzIGZyb20gdGhlIEZhY3VsdGllcyBvZiBCaW9sb2d5IGFuZCBUZWNobm9sb2d5OiBEci4gUGV0cmEgTHV0dGVyLCBQcm9mLiBEci4gSlx1MDBGNnJuIEthbGlub3dza2ksIFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlciwgUHJvZi4gRHIuIEthcnN0ZW4gTmllaGF1cywgYW5kIFByb2YuIERyLiBKZW5zIFN0b3llLiBFYWNoIG9mIHRoZXNlIGV4cGVydHMgYnJpbmdzIHNwZWNpZmljIGV4cGVydGlzZSBjcnVjaWFsIGZvciB0aGUgc3VjY2Vzc2Z1bCBleGVjdXRpb24gb2YgaUdFTSBwcm9qZWN0cy4gUGV0cmEgTHV0dGVyIGhhcyBjb250cmlidXRlZCB0byBtb2RlbGluZyBpbiBwcmV2aW91cyBpR0VNIHByb2plY3RzLCB3aGlsZSBKXHUwMEY2cm4gS2FsaW5vd3NraSBoYXMgYmVlbiBzaWduaWZpY2FudGx5IGludm9sdmVkIGluIGFsbCBwYXN0IGlHRU0gcHJvamVjdHMuIEtyaXN0aWFuIE1cdTAwRkNsbGVyIGhhcyBiZWVuIGFuIGV4cGVyaWVuY2VkIHN1cHBvcnRlciBvZiB0aGUgaUdFTSBjb21wZXRpdGlvbnMgc2luY2UgdGhlaXIgaW5jZXB0aW9uLCBhbmQgS2Fyc3RlbiBOaWVoYXVzLCBmb3JtZXIgaGVhZCBvZiB0aGUgXCJHZW5vbWUtYmFzZWQgU3lzdGVtcyBCaW9sb2d5XCIgbWFzdGVyXHUyMDE5cyBwcm9ncmFtLCBicmluZ3MgZXh0ZW5zaXZlIGtub3dsZWRnZSBvZiB0aGUgc2NpZW50aWZpYyBmb3VuZGF0aW9ucyBvZiB0aGUgcHJvamVjdHMuIEplbnMgU3RveWUsIHJlcHJlc2VudGluZyBiaW9pbmZvcm1hdGljcyBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgY29udHJpYnV0ZXMgaGlzIGV4cGVydGlzZSBpbiB0aGlzIGFyZWEuIDwvcD5cbiAgICAgICAgICAgICAgPHA+VGhlIG1haW4gZ29hbCBvZiB0aGUgU3RlZXJpbmcgQ29tbWl0dGVlIGlzIHRvIGVuc3VyZSB0aGUgc3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbiBvZiBmdXR1cmUgaUdFTSBwcm9qZWN0cy4gVGhpcyBpbmNsdWRlcyBub3Qgb25seSBhY2FkZW1pYyBzdXBwb3J0IGJ1dCBhbHNvIG9yZ2FuaXphdGlvbmFsIGxlYWRlcnNoaXAsIHNlY3VyaW5nIGZ1bmRpbmcsIGFuZCBwcm92aWRpbmcgdGhlIG5lY2Vzc2FyeSBpbmZyYXN0cnVjdHVyZS4gVGhlIGV4cGVydHMgaW4gdGhlIFN0ZWVyaW5nIENvbW1pdHRlZSBhcmUgc2lnbmlmaWNhbnRseSBpbnZvbHZlZCBpbiB0aGUgc3RyYXRlZ2ljIGRpcmVjdGlvbiBvZiB0aGUgcHJvamVjdHMgYW5kIG9mZmVyIGEgcGxhdGZvcm0gd2hlcmUgaWRlYXMsIHJlc291cmNlcywgYW5kIGtub3dsZWRnZSBhcmUgcG9vbGVkIHRvIGNvbnRpbnVlIEJpZWxlZmVsZCdzIHRyYWRpdGlvbiBvZiBzdWNjZXNzZnVsIGlHRU0gcGFydGljaXBhdGlvbi4gPC9wPlxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7bWFyZ2luQm90dG9tOiBcIjFyZW1cIn19PjxQREYgbGluaz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvaWdlbS1icm9zY2h1cmUucGRmXCIgbmFtZT1cImlnZW0tYnJvc2NodXJlLnBkZlwiIC8+PC9kaXY+XG4gICAgICAgICAgICAgIDxwPkluIGhlbHBpbmcgdGhlIG5ldyBpR0VNIEJpZWxlZmVsZCB0ZWFtIGFkdmFuY2UgdGhlaXIgcHJvamVjdCwgdGhlIFN0ZWVyaW5nIENvbW1pdHRlZSBwbGF5ZWQgYW4gaW5kaXNwZW5zYWJsZSByb2xlLCBwYXJ0aWN1bGFybHkgYnkgcHJvbW90aW5nIHRoZSBpR0VNIHByaW5jaXBsZSBvZiBcIkNvbnRyaWJ1dGlvblwiIGFuZCBmb3N0ZXJpbmcgdGhlIGludGVyZGlzY2lwbGluYXJ5IG5hdHVyZSBvZiB0aGUgcHJvamVjdC4gVGhlIGNvbW1pdHRlZSBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNyZWF0aW5nIHRvb2xzLCBkYXRhLCBhbmQgbWV0aG9kcyB0aGF0IGNhbiBiZW5lZml0IHRoZSBnbG9iYWwgaUdFTSBjb21tdW5pdHkuIFRoaXMgbWluZHNldCB3YXMgcmVmbGVjdGVkIGluIHRoZSB0ZWFtXHUyMDE5cyBwcm9qZWN0IGRlc2lnbiwgZW5zdXJpbmcgdGhhdCB0aGVpciB3b3JrIG5vdCBvbmx5IG1ldCBsb2NhbCBnb2FscyBidXQgYWxzbyBwcm92aWRlZCBtZWFuaW5nZnVsIGNvbnRyaWJ1dGlvbnMgdG8gZnV0dXJlIHByb2plY3RzLiAgPC9wPlxuICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvc3RlZXJpbmctY29tbWl0dGVlLTEud2VicFwiLz5cbiAgICAgICAgICAgICAgPHA+TW9yZW92ZXIsIHRoZSBpbnRlcmRpc2NpcGxpbmFyeSBuYXR1cmUgb2YgdGhlIGlHRU0gcHJvamVjdCB3YXMgc3Ryb25nbHkgZW5jb3VyYWdlZCBieSB0aGUgU3RlZXJpbmcgQ29tbWl0dGVlLiBXaXRoIG1lbWJlcnMgZnJvbSB2YXJpb3VzIHNjaWVudGlmaWMgZmllbGRzLCB0aGUgY29tbWl0dGVlIGZhY2lsaXRhdGVkIGNvbGxhYm9yYXRpb24gYmV0d2VlbiBkaXNjaXBsaW5lcyBzdWNoIGFzIGJpb2xvZ3ksIGJpb2luZm9ybWF0aWNzLCBhbmQgYmlvdGVjaG5vbG9neS4gVGhpcyBpbnRlcmRpc2NpcGxpbmFyeSBhcHByb2FjaCBhbGxvd2VkIHRoZSB0ZWFtIHRvIHRhY2tsZSBjb21wbGV4IGNoYWxsZW5nZXMgZnJvbSBtdWx0aXBsZSBwZXJzcGVjdGl2ZXMsIGludGVncmF0aW5nIGNvbXB1dGF0aW9uYWwgbW9kZWxzIHdpdGggZXhwZXJpbWVudGFsIGJpb2xvZ3kgdG8gZHJpdmUgaW5ub3ZhdGlvbi4gVGhpcyBndWlkYW5jZSBoZWxwZWQgdGhlIGlHRU0gQmllbGVmZWxkIHRlYW0gZGV2ZWxvcCBhIG1vcmUgcm9idXN0IGFuZCBpbXBhY3RmdWwgcHJvamVjdCwgYWxpZ25pbmcgd2l0aCBib3RoIHRoZSBzY2llbnRpZmljIGdvYWxzIG9mIHRoZSBjb21wZXRpdGlvbiBhbmQgdGhlIGNvbGxhYm9yYXRpdmUgc3Bpcml0IG9mIHRoZSBpR0VNIGNvbW11bml0eS4gPC9wPlxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgIHsvKiAgPFN1YmVzY3Rpb24gdGl0bGU9XCJKXHUwMEY2cm5cIiBpZD1cIlN0ZWVyaW5nIENvbW1pdHRlZTJcIj5cbiAgICAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPiAqL31cbiAgICAgICAgPC9TZWN0aW9uPlxuXG4gICAgIHsvKiAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBGdXR1cmVcIiBpZD1cIkZ1dHVyZVwiPlxuICAgICAgICAgIDxMb3JlbU1lZGl1bS8+XG4gICAgICAgIDwvU2VjdGlvbj4gKi99XG5cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cbiAgIiwgImV4cG9ydCBmdW5jdGlvbiBJQklFKCkge1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJpR0VNXCIgdGl0bGUyPVwiQmllbGVmZWxkXCIgaWQ9XCJpYmhlYWRcIj5cbiAgICAgICAgXG4gICAgICA8L0hlYWRlckJveD5cbiAgICApO1xuICB9XG4gIFxuICBpbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE1ldGhvZFNvdXJjZXMoKXtcbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xufVxuXG5cbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXG5gXG5AYXJ0aWNsZXthcnRpY2xlLFxuXHR0aXRsZSAgICAgICAgPSB7RGllIEVudHdpY2tsdW5nIGRlciBQYXRjaC1DbGFtcC1UZWNobmlrfSxcblx0YXV0aG9yICAgICAgID0ge1JvdGgsIEYuIEMuLCBOdW1iZXJnZXIsIE0uLCBhbmQgRHJhZ3VobiwgQS59LFxuXHR5ZWFyICAgICAgICAgPSAyMDIzLFxuXHRtb250aCAgICAgICAgPSB7e319LFxuXHRqb3VybmFsICAgICAgPSB7U3ByaW5nZXIgZUJvb2tzfSxcblx0dm9sdW1lICAgICAgID0ge3t9fSxcblx0cGFnZXMgICAgICAgID0gezEtLTE0fSxcblx0ZG9pICAgICAgICAgID0gezEwLjEwMDcvOTc4LTMtNjYyLTY2MDUzLTl9XG59YCxcblxuYFxuQGJvb2t7ZGFsbGFzX3BhdGNoXzIwMjEsXG5cdHRpdGxlICAgICAgICA9IHtQYXRjaCBjbGFtcCBlbGVjdHJvcGh5c2lvbG9neTogbWV0aG9kcyBhbmQgcHJvdG9jb2xzfSxcblx0c2hvcnR0aXRsZSAgID0ge1BhdGNoIGNsYW1wIGVsZWN0cm9waHlzaW9sb2d5fSxcblx0eWVhciAgICAgICAgID0gMjAyMSxcblx0cHVibGlzaGVyICAgID0ge0h1bWFuYSBQcmVzc30sXG5cdGFkZHJlc3MgICAgICA9IHtOZXcgWW9ya30sXG5cdHNlcmllcyAgICAgICA9IHtNZXRob2RzIGluIG1vbGVjdWxhciBiaW9sb2d5fSxcblx0bnVtYmVyICAgICAgID0gMjE4OCxcblx0aXNibiAgICAgICAgID0gezk3OC0xLTA3LTE2MDgxOC0wfSxcblx0bGFuZ3VhZ2UgICAgID0ge2VufSxcblx0ZWRpdG9yICAgICAgID0ge0RhbGxhcywgTWFyayBhbmQgQmVsbCwgRGFtaWFufVxufVxuICAgIGAsXG4gICAgYFxuQGFydGljbGV7UFJJRUwyMDA3Mzg5Myxcblx0dGl0bGUgICAgICAgID0ge1xuXHRcdElvbmljIFJlcXVpcmVtZW50cyBmb3IgTWVtYnJhbmUtR2xhc3MgQWRoZXNpb24gYW5kIEdpZ2EgU2VhbCBGb3JtYXRpb24gaW5cblx0XHRQYXRjaC1DbGFtcCBSZWNvcmRpbmdcblx0fSxcblx0YXV0aG9yICAgICAgID0ge1xuXHRcdEF2aSBQcmllbCBhbmQgWml2IEdpbCBhbmQgVmluY2VudCBULiBNb3kgYW5kIEthcmwgTC4gTWFnbGVieSBhbmQgU2hhaSBELlxuXHRcdFNpbGJlcmJlcmdcblx0fSxcblx0eWVhciAgICAgICAgID0gMjAwNyxcblx0am91cm5hbCAgICAgID0ge0Jpb3BoeXNpY2FsIEpvdXJuYWx9LFxuXHR2b2x1bWUgICAgICAgPSA5Mixcblx0bnVtYmVyICAgICAgID0gMTEsXG5cdHBhZ2VzICAgICAgICA9IHszODkzLS0zOTAwfSxcblx0ZG9pICAgICAgICAgID0gezEwLjE1MjkvYmlvcGh5c2ouMTA2LjA5OTExOX0sXG5cdGlzc24gICAgICAgICA9IHswMDA2LTM0OTV9LFxuXHR1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuc2NpZW5jZWRpcmVjdC5jb20vc2NpZW5jZS9hcnRpY2xlL3BpaS9TMDAwNjM0OTUwNzcxMTg5WH0sXG5cdGFic3RyYWN0ICAgICA9IHtcblx0XHRQYXRjaC1jbGFtcCByZWNvcmRpbmcgaGFzIHJldm9sdXRpb25pemVkIHRoZSBzdHVkeSBvZiBpb24gY2hhbm5lbHMsXG5cdFx0dHJhbnNwb3J0ZXJzLCBhbmQgdGhlIGVsZWN0cmljYWwgYWN0aXZpdHkgb2Ygc21hbGwgY2VsbHMuIFZpdGFsIHRvIHRoaXNcblx0XHRtZXRob2QgaXMgZm9ybWF0aW9uIG9mIGEgdGlnaHQgc2VhbCBiZXR3ZWVuIGdsYXNzIHJlY29yZGluZyBwaXBldHRlIGFuZCBjZWxsXG5cdFx0bWVtYnJhbmUuIFRvIGJldHRlciB1bmRlcnN0YW5kIHNlYWwgZm9ybWF0aW9uIGFuZCBpbXByb3ZlIHByYWN0aWNhbFxuXHRcdGFwcGxpY2F0aW9uIG9mIHRoaXMgdGVjaG5pcXVlLCB3ZSBleGFtaW5lIHRoZSBlZmZlY3RzIG9mIGRpdmFsZW50IGlvbnMsXG5cdFx0cHJvdG9ucywgaW9uaWMgc3RyZW5ndGgsIGFuZCBtZW1icmFuZSBwcm90ZWlucyBvbiBhZGhlc2lvbiBvZiBtZW1icmFuZSB0b1xuXHRcdGdsYXNzIGFuZCBvbiBzZWFsIHJlc2lzdGFuY2UgdXNpbmcgYm90aCBwYXRjaC1jbGFtcCByZWNvcmRpbmcgYW5kIGF0b21pY1xuXHRcdGZvcmNlIG1pY3Jvc2NvcHkuIFdlIGZpbmQgdGhhdCBIKywgQ2EyKywgYW5kIE1nMisgaW5jcmVhc2UgYWRoZXNpb24gZm9yY2Vcblx0XHRiZXR3ZWVuIGdsYXNzIGFuZCBtZW1icmFuZSAobGlwaWQgYW5kIGNlbGx1bGFyKSwgZGVjcmVhc2UgdGhlIHRpbWUgcmVxdWlyZWRcblx0XHR0byBmb3JtIGEgdGlnaHQgc2VhbCwgYW5kIGluY3JlYXNlIHNlYWwgcmVzaXN0YW5jZS4gSW4gdGhlIGFic2VuY2Ugb2YgSCtcblx0XHQoMTBcdTIyMTIxME0pIGFuZCBkaXZhbGVudCBjYXRpb25zICg8MTBcdTIyMTI4TSksIGFkaGVzaW9uIGZvcmNlcyBhcmUgZ3JlYXRseSByZWR1Y2VkXG5cdFx0YW5kIHRpZ2h0IHNlYWxzIGFyZSBub3QgZm9ybWVkLiBIKyAoMTBcdTIyMTI3TSkgcHJvbW90ZXMgc2VhbCBmb3JtYXRpb24gaW4gdGhlXG5cdFx0YWJzZW5jZSBvZiBkaXZhbGVudCBjYXRpb25zLiBBIHBvc2l0aXZlIGNvcnJlbGF0aW9uIGJldHdlZW4gYWRoZXNpb24gZm9yY2Vcblx0XHRhbmQgc2VhbCBmb3JtYXRpb24gaW5kaWNhdGVzIHRoYXQgaGlnaCByZXNpc3RhbmNlIHNlYWxzIGFyZSBhc3NvY2lhdGVkIHdpdGhcblx0XHRpbmNyZWFzZWQgYWRoZXNpb24gYmV0d2VlbiBtZW1icmFuZSBhbmQgZ2xhc3MuIEEgc2ltaWxhciBpb25pYyBkZXBlbmRlbmNlIG9mXG5cdFx0dGhlIGFkaGVzaW9uIG9mIGxpcGlkIG1lbWJyYW5lcyBhbmQgY2VsbCBtZW1icmFuZXMgdG8gZ2xhc3MgaW5kaWNhdGVzIHRoYXRcblx0XHRsaXBpZCBtZW1icmFuZXMgd2l0aG91dCBwcm90ZWlucyBhcmUgc3VmZmljaWVudCBmb3IgdGhlIGFjdGlvbiBvZiBpb25zIG9uXG5cdFx0YWRoZXNpb24uXG5cdH1cbn1cbmAsXG5gXG5AYXJ0aWNsZXsxMC4zMzg5L2ZwaGFyLjIwMTcuMDAxOTUsXG5cdHRpdGxlICAgICAgICA9IHtcblx0XHREZXZlbG9wbWVudCBvZiBBdXRvbWF0ZWQgUGF0Y2ggQ2xhbXAgVGVjaG5pcXVlIHRvIEludmVzdGlnYXRlIENGVFIgQ2hsb3JpZGVcblx0XHRDaGFubmVsIEZ1bmN0aW9uXG5cdH0sXG5cdGF1dGhvciAgICAgICA9IHtcblx0XHRCaWxsZXQsIEFybmF1ZCAgYW5kIEZyb3V4LCBMaW9uZWwgIGFuZCBIYW5yYWhhbiwgSm9obiBXLiAgYW5kIEJlY3EsIEZyZWRlcmljXG5cdH0sXG5cdHllYXIgICAgICAgICA9IDIwMTcsXG5cdGpvdXJuYWwgICAgICA9IHtGcm9udGllcnMgaW4gUGhhcm1hY29sb2d5fSxcblx0dm9sdW1lICAgICAgID0gOCxcblx0ZG9pICAgICAgICAgID0gezEwLjMzODkvZnBoYXIuMjAxNy4wMDE5NX0sXG5cdGlzc24gICAgICAgICA9IHsxNjYzLTk4MTJ9LFxuXHR1cmwgICAgICAgICAgPSB7XG5cdFx0aHR0cHM6Ly93d3cuZnJvbnRpZXJzaW4ub3JnL2pvdXJuYWxzL3BoYXJtYWNvbG9neS9hcnRpY2xlcy8xMC4zMzg5L2ZwaGFyLjIwMTcuMDAxOTVcblx0fVxufVxuYCxcbmBcbkBhcnRpY2xle0R1QnJpZGdlX1RhbmdfSHNpYV9MZW9uZ19NaWxsZXJfQ2Fsb3NfMTk4Nyxcblx0dGl0bGUgICAgICAgID0ge1xuXHRcdEFuYWx5c2lzIG9mIG11dGF0aW9uIGluIGh1bWFuIGNlbGxzIGJ5IHVzaW5nIGFuIEVwc3RlaW4tQmFyciB2aXJ1cyBzaHV0dGxlXG5cdFx0c3lzdGVtLlxuXHR9LFxuXHRhdXRob3IgICAgICAgPSB7XG5cdFx0RHVCcmlkZ2UsIFIgQiBhbmQgVGFuZywgUCBhbmQgSHNpYSwgSCBDIGFuZCBMZW9uZywgUCBNIGFuZCBNaWxsZXIsIEogSCBhbmRcblx0XHRDYWxvcywgTSBQXG5cdH0sXG5cdHllYXIgICAgICAgICA9IDE5ODcsXG5cdG1vbnRoICAgICAgICA9IGphbixcblx0am91cm5hbCAgICAgID0ge01vbGVjdWxhciBhbmQgQ2VsbHVsYXIgQmlvbG9neX0sXG5cdHZvbHVtZSAgICAgICA9IDcsXG5cdG51bWJlciAgICAgICA9IDEsXG5cdHBhZ2VzICAgICAgICA9IHszNzlcdTIwMTMzODd9LFxuXHRpc3NuICAgICAgICAgPSB7MDI3MC03MzA2fSxcblx0YWJzdHJhY3Rub3RlID0ge1xuXHRcdFdlIGRldmVsb3BlZCBoaWdobHkgc2Vuc2l0aXZlIHNodXR0bGUgdmVjdG9yIHN5c3RlbXMgZm9yIGRldGVjdGlvbiBvZlxuXHRcdG11dGF0aW9ucyBmb3JtZWQgaW4gaHVtYW4gY2VsbHMgdXNpbmcgYXV0b25vbW91c2x5IHJlcGxpY2F0aW5nIGRlcml2YXRpdmVzIG9mXG5cdFx0RXBzdGVpbi1CYXJyIHZpcnVzIChFQlYpLiBFQlYgdmVjdG9ycyBjYXJyeWluZyB0aGUgYmFjdGVyaWFsIGxhY0kgZ2VuZSBhcyB0aGVcblx0XHR0YXJnZXQgZm9yIG11dGF0aW9uIHdlcmUgZXN0YWJsaXNoZWQgaW4gaHVtYW4gY2VsbHMgYW5kIGxhdGVyIHJldHVybmVkIHRvXG5cdFx0RXNjaGVyaWNoaWEgY29saSBmb3IgcmFwaWQgZGV0ZWN0aW9uIGFuZCBhbmFseXNpcyBvZiBsYWNJIG11dGF0aW9ucy4gVGhlXG5cdFx0bWFqb3JpdHkgb2YgdGhlIGNsb25hbCBjZWxsIGxpbmVzIGNyZWF0ZWQgYnkgZXN0YWJsaXNobWVudCBvZiB0aGUgbGFjSS1FQlZcblx0XHR2ZWN0b3Igc2hvdyBzcG9udGFuZW91cyBMYWNJLSBmcmVxdWVuY2llcyBvZiBsZXNzIHRoYW4gMTAoLTUpIGFuZCBhcmVcblx0XHRzdWl0YWJsZSBmb3Igc3R1ZGllcyBvZiBpbmR1Y2VkIG11dGF0aW9uLiBUaGUgYWJpbGl0eSB0byBpc29sYXRlIGNsb25hbCBsaW5lc1xuXHRcdHJlcHJlc2VudHMgYSBtYWpvciBhZHZhbnRhZ2Ugb2YgdGhlIEVCViB2ZWN0b3JzIG92ZXIgdHJhbnNpZW50bHkgcmVwbGljYXRpbmdcblx0XHRzaHV0dGxlIHZlY3RvcnMgKHN1Y2ggYXMgdGhvc2UgZGVyaXZlZCBmcm9tIHNpbWlhbiB2aXJ1cyA0MCkgZm9yIHRoZSBzdHVkeSBvZlxuXHRcdG11dGF0aW9uLiBUaGUgRE5BIHNlcXVlbmNlIGNoYW5nZXMgd2VyZSBkZXRlcm1pbmVkIGZvciA2MSBsYWNJIG11dGF0aW9uc1xuXHRcdGluZHVjZWQgYnkgZXhwb3N1cmUgb2Ygb25lIG9mIHRoZSBjZWxsIGxpbmVzIHRvIE4tbml0cm9zby1OLW1ldGh5bHVyZWEuIEFcblx0XHR0b3RhbCBvZiAzMyBvZiAzNCBsYWNJIG5vbnNlbnNlIG11dGF0aW9ucyBhbmQgMjYgb2YgMjcgbWlzc2Vuc2UgbXV0YXRpb25zXG5cdFx0aW52b2x2ZSBHIFggQyB0byBBIFggVCB0cmFuc2l0aW9ucy4gVGhlc2UgZGF0YSBwcm92aWRlIHN1cHBvcnQgZm9yIHRoZVxuXHRcdG11dGF0aW9uYWwgdGhlb3J5IG9mIGNhbmNlci5cblx0fVxufVxuYCxcbmBcbkBhcnRpY2xle1Fpbl9aaGFuZ19DbGlmdF9IdWx1cl9YaWFuZ19SZW5fTGFobl8yMDEwLFxuXHR0aXRsZSAgICAgICAgPSB7XG5cdFx0U3lzdGVtYXRpYyBDb21wYXJpc29uIG9mIENvbnN0aXR1dGl2ZSBQcm9tb3RlcnMgYW5kIHRoZSBEb3h5Y3ljbGluZS1JbmR1Y2libGVcblx0XHRQcm9tb3RlclxuXHR9LFxuXHRhdXRob3IgICAgICAgPSB7XG5cdFx0UWluLCBKYW5lIFl1eGlhIGFuZCBaaGFuZywgTGkgYW5kIENsaWZ0LCBLYXlsYSBMLiBhbmQgSHVsdXIsIEltZ2UgYW5kIFhpYW5nLFxuXHRcdEFuZHkgUGVuZyBhbmQgUmVuLCBCaW5nLVpob25nIGFuZCBMYWhuLCBCcnVjZSBULlxuXHR9LFxuXHR5ZWFyICAgICAgICAgPSAyMDEwLFxuXHRtb250aCAgICAgICAgPSBtYXksXG5cdGpvdXJuYWwgICAgICA9IHtQTE9TIE9ORX0sXG5cdHB1Ymxpc2hlciAgICA9IHtQdWJsaWMgTGlicmFyeSBvZiBTY2llbmNlfSxcblx0dm9sdW1lICAgICAgID0gNSxcblx0bnVtYmVyICAgICAgID0gNSxcblx0cGFnZXMgICAgICAgID0ge2UxMDYxMX0sXG5cdGRvaSAgICAgICAgICA9IHsxMC4xMzcxL2pvdXJuYWwucG9uZS4wMDEwNjExfSxcblx0aXNzbiAgICAgICAgID0gezE5MzItNjIwM30sXG5cdGFic3RyYWN0bm90ZSA9IHtcblx0XHRDb25zdGl0dXRpdmUgcHJvbW90ZXJzIGFyZSB1c2VkIHJvdXRpbmVseSB0byBkcml2ZSBlY3RvcGljIGdlbmUgZXhwcmVzc2lvbi5cblx0XHRIZXJlLCB3ZSBjYXJyaWVkIG91dCBhIHN5c3RlbWF0aWMgY29tcGFyaXNvbiBvZiBlaWdodCBjb21tb25seSB1c2VkXG5cdFx0Y29uc3RpdHV0aXZlIHByb21vdGVycyAoU1Y0MCwgQ01WLCBVQkMsIEVGMUEsIFBHSyBhbmQgQ0FHRyBmb3IgbWFtbWFsaWFuXG5cdFx0c3lzdGVtcywgYW5kIENPUElBIGFuZCBBQ1Q1QyBmb3IgRHJvc29waGlsYSBzeXN0ZW1zKS4gV2UgYWxzbyBpbmNsdWRlZCBpbiB0aGVcblx0XHRjb21wYXJpc29uIHRoZSBUUkUgcHJvbW90ZXIsIHdoaWNoIGNhbiBiZSBhY3RpdmF0ZWQgYnkgdGhlIHJ0VEFcblx0XHR0cmFuc2NyaXB0aW9uYWwgYWN0aXZhdG9yIGluIGEgZG94eWN5Y2xpbmUtaW5kdWNpYmxlIG1hbm5lci4gVG8gbWFrZSBvdXJcblx0XHRmaW5kaW5ncyByZXByZXNlbnRhdGl2ZSwgd2UgY29uZHVjdGVkIHRoZSBjb21wYXJpc29uIGluIGEgdmFyaWV0eSBvZiBjZWxsXG5cdFx0dHlwZXMgZGVyaXZlZCBmcm9tIHNldmVyYWwgc3BlY2llcy4gV2UgZm91bmQgdGhhdCB0aGVzZSBwcm9tb3RlcnMgdmFyeVxuXHRcdGNvbnNpZGVyYWJseSBmcm9tIG9uZSBhbm90aGVyIGluIHRoZWlyIHN0cmVuZ3RoLiBNb3N0IHByb21vdGVycyBoYXZlIGZhaXJseVxuXHRcdGNvbnNpc3RlbnQgc3RyZW5ndGhzIGFjcm9zcyBkaWZmZXJlbnQgY2VsbCB0eXBlcywgYnV0IHRoZSBDTVYgcHJvbW90ZXIgY2FuXG5cdFx0dmFyeSBjb25zaWRlcmFibHkgZnJvbSBjZWxsIHR5cGUgdG8gY2VsbCB0eXBlLiBBdCBtYXhpbWFsIGluZHVjdGlvbiwgdGhlIFRSRVxuXHRcdHByb21vdGVyIGlzIGNvbXBhcmFibGUgdG8gYSBzdHJvbmcgY29uc3RpdHV0aXZlIHByb21vdGVyLiBUaGVzZSByZXN1bHRzXG5cdFx0c2hvdWxkIGZhY2lsaXRhdGUgbW9yZSByYXRpb25hbCBjaG9pY2VzIG9mIHByb21vdGVycyBpbiBlY3RvcGljIGdlbmVcblx0XHRleHByZXNzaW9uIHN0dWRpZXMuXG5cdH0sXG5cdGxhbmd1YWdlICAgICA9IHtlbn1cbn1cbmAsXG5gXG5AYXJ0aWNsZXtCVUxDQUVOMjAyNDEwMTU0NCxcbnRpdGxlID0ge1ByaW1lIGVkaXRpbmcgZnVuY3Rpb25hbGx5IGNvcnJlY3RzIGN5c3RpYyBmaWJyb3Npcy1jYXVzaW5nIENGVFIgbXV0YXRpb25zIGluIGh1bWFuIG9yZ2Fub2lkcyBhbmQgYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHN9LFxuam91cm5hbCA9IHtDZWxsIFJlcG9ydHMgTWVkaWNpbmV9LFxudm9sdW1lID0gezV9LFxubnVtYmVyID0gezV9LFxucGFnZXMgPSB7MTAxNTQ0fSxcbnllYXIgPSB7MjAyNH0sXG5pc3NuID0gezI2NjYtMzc5MX0sXG5kb2kgPSB7aHR0cHM6Ly9kb2kub3JnLzEwLjEwMTYvai54Y3JtLjIwMjQuMTAxNTQ0fSxcbnVybCA9IHtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MyNjY2Mzc5MTI0MDAyMzQ5fSxcbmF1dGhvciA9IHtNYXR0aWpzIEJ1bGNhZW4gYW5kIFBoXHUwMEU5bGluZSBLb3J0bGV2ZW4gYW5kIFJvbmFsZCBCLiBMaXUgYW5kIEdpdWxpYSBNYXVsZSBhbmQgRWxpc2UgRHJlYW5vIGFuZCBNYWlyZWFkIEtlbGx5IGFuZCBNYXJqb2xlaW4gTS4gRW5zaW5jayBhbmQgU2FtIFRoaWVyaWUgYW5kIE1heGltZSBTbWl0cyBhbmQgTWF0dGVvIENpY2lhbmkgYW5kIEF1cmVsaWUgSGF0dG9uIGFuZCBCZW5vaXQgQ2hldmFsaWVyIGFuZCBBbmFiZWxhIFMuIFJhbWFsaG8gYW5kIFhhdmllciB7Q2FzYWRldmFsbCBpIFNvbHZhc30gYW5kIFplZ2VyIERlYnlzZXIgYW5kIEZyYW5cdTAwRTdvaXMgVmVybWV1bGVuIGFuZCBSaWsgR2lqc2JlcnMgYW5kIElzYWJlbGxlIFNlcm1ldC1HYXVkZWx1cyBhbmQgQW5uYSBDZXJlc2V0byBhbmQgTWFyaWFubmUgUy4gQ2FybG9ufSxcbmtleXdvcmRzID0ge2N5c3RpYyBmaWJyb3NpcywgcHJpbWUgZWRpdGluZywgcGF0aWVudC1kZXJpdmVkIG9yZ2Fub2lkcywgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscywgZ2VuZSBlZGl0aW5nLCBtYWNoaW5lIGxlYXJuaW5nLCBERVRFT1IsIENSSVNQUn0sXG5hYnN0cmFjdCA9IHtTdW1tYXJ5XG5QcmltZSBlZGl0aW5nIGlzIGEgcmVjZW50LCBDUklTUFItZGVyaXZlZCBnZW5vbWUgZWRpdGluZyB0ZWNobm9sb2d5IGNhcGFibGUgb2YgaW50cm9kdWNpbmcgcHJlY2lzZSBudWNsZW90aWRlIHN1YnN0aXR1dGlvbnMsIGluc2VydGlvbnMsIGFuZCBkZWxldGlvbnMuIEhlcmUsIHdlIHByZXNlbnQgcHJpbWUgZWRpdGluZyBhcHByb2FjaGVzIHRvIGNvcnJlY3QgTDIyN1ItIGFuZCBOMTMwM0stQ0ZUUiwgdHdvIG11dGF0aW9ucyB0aGF0IGNhdXNlIGN5c3RpYyBmaWJyb3NpcyBhbmQgYXJlIG5vdCBlbGlnaWJsZSBmb3IgY3VycmVudCBtYXJrZXQtYXBwcm92ZWQgbW9kdWxhdG9yIHRoZXJhcGllcy4gV2Ugc2hvdyB0aGF0LCB1cG9uIEROQSBjb3JyZWN0aW9uIG9mIHRoZSBDRlRSIGdlbmUsIHRoZSBjb21wbGV4IGdseWNvc3lsYXRpb24sIGxvY2FsaXphdGlvbiwgYW5kLCBtb3N0IGltcG9ydGFudGx5LCBmdW5jdGlvbiBvZiB0aGUgQ0ZUUiBwcm90ZWluIGFyZSByZXN0b3JlZCBpbiBIRUsyOTNUIGFuZCAxNkhCRSBjZWxsIGxpbmVzLiBUaGVzZSBmaW5kaW5ncyB3ZXJlIHN1YnNlcXVlbnRseSB2YWxpZGF0ZWQgaW4gcGF0aWVudC1kZXJpdmVkIHJlY3RhbCBvcmdhbm9pZHMgYW5kIGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMuIFRocm91Z2ggYW5hbHlzaXMgb2YgcHJlZGljdGVkIGFuZCBleHBlcmltZW50YWxseSBpZGVudGlmaWVkIGNhbmRpZGF0ZSBvZmYtdGFyZ2V0IHNpdGVzIGluIHByaW1hcnkgc3RlbSBjZWxscywgd2UgY29uZmlybSBwcmV2aW91cyByZXBvcnRzIG9uIHRoZSBoaWdoIHByaW1lIGVkaXRvciAoUEUpIHNwZWNpZmljaXR5IGFuZCBpdHMgcG90ZW50aWFsIGZvciBhIGN1cmF0aXZlIENGIGdlbmUgZWRpdGluZyB0aGVyYXB5LiBUbyBmYWNpbGl0YXRlIGZ1dHVyZSBzY3JlZW5pbmcgb2YgZ2VuZXRpYyBzdHJhdGVnaWVzIGluIGEgdHJhbnNsYXRpb25hbCBDRiBtb2RlbCwgYSBtYWNoaW5lIGxlYXJuaW5nIGFsZ29yaXRobSB3YXMgZGV2ZWxvcGVkIGZvciBkeW5hbWljIHF1YW50aWZpY2F0aW9uIG9mIENGVFIgZnVuY3Rpb24gaW4gb3JnYW5vaWRzIChERVRFQ1RPUjogXHUyMDFDZGV0ZWN0aW9uIG9mIHRhcmdldGVkIGVkaXRpbmcgb2YgQ0ZUUiBpbiBvcmdhbm9pZHNcdTIwMUQpLn1cbn1cbm5ldzguXG5AYXJ0aWNsZXtFbnNpbmNrX0RlZWVyc21hZWNrZXJfSGV5bGVuX1JhbWFsaG9fR2lqc2JlcnNfRmFyLFxuXHR0aXRsZSAgICAgICAgPSB7XG5cdFx0UGhlbm90eXBpbmcgb2YgUmFyZSBDRlRSIE11dGF0aW9ucyBSZXZlYWxzIERpc3RpbmN0IFRyYWZmaWNraW5nIGFuZFxuXHRcdEZ1bmN0aW9uYWwgRGVmZWN0c1xuXHR9LFxuXHRhdXRob3IgICAgICAgPSB7XG5cdFx0RW5zaW5jaywgTWFyam9sZWluIGFuZCBEZSBLZWVyc21hZWNrZXIsIExpZXNiZXRoIGFuZCBIZXlsZW4sIExpc2UgYW5kXG5cdFx0UmFtYWxobywgQW5hYmVsYSBTLiBhbmQgR2lqc2JlcnMsIFJpayBhbmQgRmFyclx1MDBFOSwgUmljYXJkIGFuZCBEZSBCb2VjaywgS3Jpc1xuXHRcdGFuZCBDaHJpc3QsIEZyYXVrZSBhbmQgRGVieXNlciwgWmVnZXIgYW5kIENhcmxvbiwgTWFyaWFubmUgUy5cblx0fSxcblx0eWVhciAgICAgICAgID0gMjAyMCxcblx0bW9udGggICAgICAgID0gbWFyLFxuXHRqb3VybmFsICAgICAgPSB7Q2VsbHN9LFxuXHR2b2x1bWUgICAgICAgPSA5LFxuXHRudW1iZXIgICAgICAgPSAzLFxuXHRwYWdlcyAgICAgICAgPSA3NTQsXG5cdGRvaSAgICAgICAgICA9IHsxMC4zMzkwL2NlbGxzOTAzMDc1NH0sXG5cdGlzc24gICAgICAgICA9IHsyMDczLTQ0MDl9LFxuXHRhYnN0cmFjdG5vdGUgPSB7XG5cdFx0QmFja2dyb3VuZC4gVGhlIG1vc3QgY29tbW9uIENGVFIgbXV0YXRpb24sIEY1MDhkZWwsIHByZXNlbnRzIHdpdGggbXVsdGlwbGVcblx0XHRjZWxsdWxhciBkZWZlY3RzLiBIb3dldmVyLCB0aGUgcG9zc2libGUgbXVsdGlwbGUgZGVmZWN0cyBjYXVzZWQgYnkgbWFueSByYXJlclxuXHRcdENGVFIgbXV0YXRpb25zIGFyZSBub3Qgd2VsbCBzdHVkaWVkLiBXZSBpbnZlc3RpZ2F0ZWQgZm91ciByYXJlIENGVFIgbXV0YXRpb25zXG5cdFx0RTYwSywgRzg1RSwgRTkySyBhbmQgQTQ1NUUgYWdhaW5zdCB3ZWxsLWNoYXJhY3Rlcml6ZWQgbXV0YXRpb25zLCBGNTA4ZGVsIGFuZFxuXHRcdEc1NTFELCBhbmQgdGhlaXIgcmVzcG9uc2VzIHRvIGNvcnJlY3RvciBWWC04MDkgYW5kL29yIHBvdGVudGlhdG9yIFZYLTc3MC5cblx0XHRNZXRob2RzLiBVc2luZyBjb21wbGVtZW50YXJ5IGFzc2F5cyBpbiBIRUsyOTNUIHN0YWJsZSBjZWxsIGxpbmVzLCB3ZVxuXHRcdGRldGVybWluZWQgbWF0dXJhdGlvbiBieSBXZXN0ZXJuIGJsb3R0aW5nLCB0cmFmZmlja2luZyBieSBmbG93IGN5dG9tZXRyeVxuXHRcdHVzaW5nIGV4dHJhY2VsbHVsYXIgM0hBLXRhZ2dlZCBDRlRSLCBhbmQgZnVuY3Rpb24gYnkgaGFsaWRlLXNlbnNpdGl2ZSBZRlBcblx0XHRxdWVuY2hpbmcuIEluIHRoZSBmb3Jza29saW4taW5kdWNlZCBzd2VsbGluZyBhc3NheSBpbiBpbnRlc3RpbmFsIG9yZ2Fub2lkcyxcblx0XHR3ZSB2YWxpZGF0ZWQgdGhlIGVmZmVjdCBvZiB0YWdnZWQgdmVyc3VzIGVuZG9nZW5vdXMgQ0ZUUi4gUmVzdWx0cy4gVHJlYXRtZW50XG5cdFx0d2l0aCBWWC04MDkgc2lnbmlmaWNhbnRseSByZXN0b3JlZCBtYXR1cmF0aW9uLCBQTSBsb2NhbGl6YXRpb24gYW5kIGZ1bmN0aW9uXG5cdFx0b2YgYm90aCBFNjBLIGFuZCBFOTJLLiBNZWNoYW5pc3RpY2FsbHksIFZYLTgwOSBub3Qgb25seSByYWlzZWQgdGhlIHRvdGFsXG5cdFx0YW1vdW50IG9mIENGVFIsIGJ1dCBzaWduaWZpY2FudGx5IGluY3JlYXNlZCB0aGUgdHJhZmZpYyBlZmZpY2llbmN5LCB3aGljaCB3YXNcblx0XHRub3QgdGhlIGNhc2UgZm9yIEE0NTVFLiBHODVFIHdhcyByZWZyYWN0b3J5IHRvIFZYLTgwOSBhbmQgVlgtNzcwIHRyZWF0bWVudC5cblx0XHRDb25jbHVzaW9ucy4gU2luY2Ugbm8gc2luZ2xlIG1vZGVsIG9yIGFzc2F5IGFsbG93cyBkZWNpcGhlcmluZyBhbGwgZGVmZWN0cyBhdFxuXHRcdG9uY2UsIHdlIHByb3Bvc2UgYSBjb21iaW5hdGlvbiBvZiBwaGVub3R5cGljIGFzc2F5cyB0byBjb2xsZWN0IHJhcGlkIGFuZFxuXHRcdGVhcmx5IGluc2lnaHRzIGludG8gdGhlIG11bHRpcGxlIGRlZmVjdHMgb2YgQ0ZUUiB2YXJpYW50cy5cblx0fSxcblx0bGFuZ3VhZ2UgICAgID0ge2VuZ31cbn1cbmAsXG5gXG5AbWlzY3tpZ25hdG92YTIwMjMsXG4gIGF1dGhvciAgICAgICA9IHtab3lhIElnbmF0b3ZhfSxcbiAgdGl0bGUgICAgICAgID0ge1Jlc2VhcmNoIEdyb3VwIElnbmF0b3ZhIGF0IHRoZSBJbnN0aXR1dGUgb2YgQmlvY2hlbWlzdHJ5IGFuZCBNb2xlY3VsYXIgQmlvbG9neX0sXG4gIHllYXIgICAgICAgICA9IHsyMDIzfSxcbiAgaG93cHVibGlzaGVkID0ge0hhbWJ1cmcgVW5pdmVyc2l0eX0sXG4gIG5vdGUgICAgICAgICA9IHtBY2Nlc3NlZDogMjggU2VwdGVtYmVyIDIwMjR9LFxuICBpbnN0aXR1dGlvbiAgPSB7VW5pdmVyc2l0eSBvZiBIYW1idXJnfSxcbn1cblxuYCxcbmBAYXJ0aWNsZXtlaHJoYXJkdF90b3dhcmRzXzIwMDYsXG5cdHRpdGxlICAgICAgICA9IHtUb3dhcmRzIGFuIGluIHZpdHJvIG1vZGVsIG9mIGN5c3RpYyBmaWJyb3NpcyBzbWFsbCBhaXJ3YXkgZXBpdGhlbGl1bTogY2hhcmFjdGVyaXNhdGlvbiBvZiB0aGUgaHVtYW4gYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbCBsaW5lIHtDRkJFNDFvfS19LFxuXHRzaG9ydHRpdGxlICAgPSB7VG93YXJkcyBhbiBpbiB2aXRybyBtb2RlbCBvZiBjeXN0aWMgZmlicm9zaXMgc21hbGwgYWlyd2F5IGVwaXRoZWxpdW19LFxuXHRhdXRob3IgICAgICAgPSB7RWhyaGFyZHQsIENhcnN0ZW4gYW5kIENvbGxub3QsIEV2YS1NYXJpYSBhbmQgQmFsZGVzLCBDaHJpc3RpYW5lIGFuZCBCZWNrZXIsIFVscmljaCBhbmQgTGF1ZSwgTWljaGFlbCBhbmQgS2ltLCBLd2FuZy1KaW4gYW5kIExlaHIsIENsYXVzLU1pY2hhZWx9LFxuXHR5ZWFyICAgICAgICAgPSAyMDA2LFxuXHRtb250aCAgICAgICAgPSBtYXIsXG5cdGpvdXJuYWwgICAgICA9IHtDZWxsIGFuZCBUaXNzdWUgUmVzZWFyY2h9LFxuXHR2b2x1bWUgICAgICAgPSAzMjMsXG5cdG51bWJlciAgICAgICA9IDMsXG5cdHBhZ2VzICAgICAgICA9IHs0MDUtLTQxNX0sXG5cdGRvaSAgICAgICAgICA9IHsxMC4xMDA3L3MwMDQ0MS0wMDUtMDA2Mi03fSxcblx0aXNzbiAgICAgICAgID0gezAzMDItNzY2WCwgMTQzMi0wODc4fSxcblx0dXJsICAgICAgICAgID0ge2h0dHA6Ly9saW5rLnNwcmluZ2VyLmNvbS8xMC4xMDA3L3MwMDQ0MS0wMDUtMDA2Mi03fSxcblx0dXJsZGF0ZSAgICAgID0gezIwMjQtMDktMDl9LFxuXHRjb3B5cmlnaHQgICAgPSB7aHR0cDovL3d3dy5zcHJpbmdlci5jb20vdGRtfSxcblx0bGFuZ3VhZ2UgICAgID0ge2VufSxcblx0ZmlsZSAgICAgICAgID0ge0VocmhhcmR0IGV0IGFsLiAtIDIwMDYgLSBUb3dhcmRzIGFuIGluIHZpdHJvIG1vZGVsIG9mIGN5c3RpYyBmaWJyb3NpcyBzbWFsbC5wZGY6Q1xcOlxcXFxVc2Vyc1xcXFxJc2FiZWxsXFxcXFpvdGVyb1xcXFxzdG9yYWdlXFxcXFJYTE1DRTNWXFxcXEVocmhhcmR0IGV0IGFsLiAtIDIwMDYgLSBUb3dhcmRzIGFuIGluIHZpdHJvIG1vZGVsIG9mIGN5c3RpYyBmaWJyb3NpcyBzbWFsbC5wZGY6YXBwbGljYXRpb24vcGRmfVxufVxuYFxuLFxuYFxuQGJvb2t7TWVubmVsbGFfMjAyNCxcblx0dGl0bGUgICAgICAgID0ge0NpbGlhOiBtZXRob2RzIGFuZCBwcm90b2NvbHN9LFxuXHR5ZWFyICAgICAgICAgPSAyMDI0LFxuICAgIGF1dGhvciAgICAgICA9IHtNZW5uZWxsYSwgVml0b30sXG5cdHB1Ymxpc2hlciAgICA9IHtIdW1hbmEgUHJlc3N9LFxuXHRhZGRyZXNzICAgICAgPSB7TmV3IFlvcmssIE5ZfSxcblx0aXNibiAgICAgICAgID0gezk3OC0xLTA3LTE2MzUwNy0wfSxcblx0YWJzdHJhY3Rub3RlID0ge1xuXHRcdFRoaXMgdm9sdW1lIGNvdmVycyB0aGUgbGF0ZXN0IGFkdmFuY2VtZW50cyBpbiB0aGUgc3R1ZHkgb2YgY2lsaWFyeVxuXHRcdGNvbXBsZXhpdHkuIFByb3RvY29scyBjb3ZlciBnZW5vbWljLCBwcm90ZW9taWMsIGltYWdpbmcsIGFuZCBmdW5jdGlvbmFsXG5cdFx0YW5hbHlzaXMgb2YgZGlmZmVyZW50IGNpbGlhdGVkIHRpc3N1ZXMgYW5kIHRoZWlyIHdpZGUgYXBwbGljYWJpbGl0eSBpbiBjaWxpYVxuXHRcdGJpb2xvZ3kuIENoYXB0ZXJzIGluIHRoaXMgYm9vayBwcmltYXJpbHkgZm9jdXMgb24gbWV0aG9kcyB0byBzdHVkeVxuXHRcdG11bHRpY2lsaWF0ZWQgY2VsbHMsIGFuZCBkaXNjdXNzIHRvcGljcyBzdWNoIGFzIFNBUlMtQ29WLTIgaW5mZWN0aW9ucyBvZlxuXHRcdGh1bWFuIHByaW1hcnkgbmFzYWwgbXVsdGljaWxpYXRlZCBlcGl0aGVsaWFsIGNlbGxzOyBleHBhbnNpb24gbWljcm9zY29weSBvZlxuXHRcdGNpbGlhcnkgcHJvdGVpbnM7IGxpdmUtaW1hZ2luZyBjZW50cmlvbGUgYW1wbGlmaWNhdGlvbiBpbiBtb3VzZSBicmFpblxuXHRcdG11bHRpY2lsaWF0ZWQgY2VsbHM7IGJpb3BoeXNpY2FsIHByb3BlcnRpZXMgb2YgY2lsaWEgbW90aWxpdHk7IGFuZFxuXHRcdG11Y29jaWxpYXJ5IHRyYW5zcG9ydCBkZXZpY2UgY29uc3RydWN0aW9uLiBXcml0dGVuIGluIHRoZSBoaWdobHkgc3VjY2Vzc2Z1bFxuXHRcdE1ldGhvZHMgaW4gTW9sZWN1bGFyIEJpb2xvZ3kgc2VyaWVzIGZvcm1hdCwgY2hhcHRlcnMgaW5jbHVkZSBpbnRyb2R1Y3Rpb25zIHRvXG5cdFx0dGhlaXIgcmVzcGVjdGl2ZSB0b3BpY3MsIGxpc3RzIG9mIHRoZSBuZWNlc3NhcnkgbWF0ZXJpYWxzIGFuZCByZWFnZW50cyxcblx0XHRzdGVwLWJ5LXN0ZXAsIHJlYWRpbHkgcmVwcm9kdWNpYmxlIGxhYm9yYXRvcnkgcHJvdG9jb2xzLCBhbmQgdGlwcyBvblxuXHRcdHRyb3VibGVzaG9vdGluZyBhbmQgYXZvaWRpbmcga25vd24gcGl0ZmFsbHMuIEN1dHRpbmctZWRnZSBhbmQgdGhvcm91Z2gsXG5cdFx0Q2lsaWE6IE1ldGhvZHMgYW5kIFByb3RvY29scyBpcyBhIHZhbHVhYmxlIHJlc291cmNlIGZvciByZXNlYXJjaGVycyB3aG8gYXJlXG5cdFx0aW50ZXJlc3RlZCBpbiBsZWFybmluZyBtb3JlIGFib3V0IHRoaXMgZGV2ZWxvcGluZyBmaWVsZC5cblx0fSxcblx0bGFuZ3VhZ2UgICAgID0ge2VuZ31cbn1cbmBcbl0iLCAiaW1wb3J0IHsgU2VjdGlvbiwgU3ViZXNjdGlvbiB9IGZyb20gXCIuLi9jb21wb25lbnRzL3NlY3Rpb25zXCI7XG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcbmltcG9ydCB7SDR9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XG5pbXBvcnQgTWV0aG9kU291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9tZXRob2RzLXNvdXJjZXNcIjtcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gTWV0aG9kcygpIHtcbiAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbiAoKTtcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgXG5cbiAgICAgIFxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkludHJvZHVjdGlvblwiIGlkPVwiSW50cm9kdWN0aW9uXCI+XG4gICAgICAgICAgPHA+VGhpcyBzZWN0aW9uIGhpZ2hsaWdodHMgdGhlIGtleSBtYXRlcmlhbHMgYW5kIG1ldGhvZHMgcGl2b3RhbCB0byBhZHZhbmNpbmcgb3VyIHByb2plY3Qgd2l0aCB0aGUgcHJpbWFyeSBnb2FsIHRvIGRldmVsb3AgYW4gZWZmaWNpZW50IHByaW1lIGVkaXRpbmcgdGVjaG5vbG9neSB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIHRoZSBDRlRSIGdlbmUgYnkgdGhlIGRlbGl2ZXJ5IHRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscyB1c2luZyBvcHRpbWl6ZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgdmlhIHB1bG1vbmFyeSBhZG1pbmlzdHJhdGlvbi4gV2UgdXRpbGl6ZWQgcGF0Y2ggY2xhbXAgZWxlY3Ryb3BoeXNpb2xvZ3kgdG8gcHJlY2lzZWx5IG1lYXN1cmUgaW9uIGNoYW5uZWwgYWN0aXZpdHksIHByb3ZpZGluZyBjcnVjaWFsIGluc2lnaHRzIGludG8gY2VsbHVsYXIgZnVuY3Rpb24gYW5kIHRoZSBpbXBhY3Qgb2YgZ2VuZXRpYyBtb2RpZmljYXRpb25zIG9uIENGVFIgcGVyZm9ybWFuY2UuIEFkZGl0aW9uYWxseSwgb3VyIGNlbGwgY3VsdHVyZSBtb2RlbHMgb2YgbHVuZyBlcGl0aGVsaWFsIGNlbGxzIGFsbG93ZWQgdXMgdG8gdGVzdCBib3RoIHRoZSBkZWxpdmVyeSBhbmQgZWZmaWNhY3kgb2Ygb3VyIGdlbmUtZWRpdGluZyBzeXN0ZW0gdW5kZXIgY29uZGl0aW9ucyB0aGF0IGNsb3NlbHkgbWltaWMgdGhlIDxpPmluIHZpdm88L2k+IGVudmlyb25tZW50LiBUbyBlbnN1cmUgdGhhdCBvdXIgTE5QcyB3ZXJlIGJvdGggZWZmZWN0aXZlIGFuZCBzYWZlLCB3ZSBwZXJmb3JtZWQgZXh0ZW5zaXZlIExOUCBjeXRvdG94aWNpdHkgYW5kIGNoYXJhY3Rlcml6YXRpb24gZXhwZXJpbWVudHMsIGV2YWx1YXRpbmcgdGhlaXIgYmlvY29tcGF0aWJpbGl0eSwgc3RhYmlsaXR5LCBhbmQgZWZmaWNpZW5jeSBpbiBkZWxpdmVyaW5nIHRoZSBlZGl0aW5nIHRlY2hub2xvZ3kuIEVhY2ggb2YgdGhlc2UgbWV0aG9kb2xvZ2llcyB3YXMgY2FyZWZ1bGx5IHNlbGVjdGVkIHRvIG9wdGltaXplIHRoZSBkZWxpdmVyeSBwcm9jZXNzIGFuZCBtYXhpbWl6ZSB0aGUgdGhlcmFwZXV0aWMgcG90ZW50aWFsIG9mIG91ciBhcHByb2FjaC48L3A+XG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJQYXRjaCBDbGFtcFwiIGlkPVwiUGF0Y2ggQ2xhbXBcIj5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlBhdGNoIENsYW1wOiBBIEtleSBUb29sIGluIEVsZWN0cm9waHlzaW9sb2d5XCIgaWQ9XCJQYXRjaCBDbGFtcDFcIj5cbiAgICAgICAgICAgIDxwPlRoZSBwYXRjaCBjbGFtcCB0ZWNobmlxdWUgaXMgYSBoaWdobHkgc2Vuc2l0aXZlIG1ldGhvZCBmb3IgbWVhc3VyaW5nIGlvbmljIGN1cnJlbnRzIHRocm91Z2ggaW5kaXZpZHVhbCBpb24gY2hhbm5lbHMgaW4gY2VsbHMsIG1ha2luZyBpdCBhIGNvcm5lcnN0b25lIG9mIGVsZWN0cm9waHlzaW9sb2dpY2FsIHJlc2VhcmNoLiBJbml0aWFsbHkgZGV2ZWxvcGVkIGJ5IEVyd2luIE5laGVyIGFuZCBCZXJ0IFNha21hbm4gaW4gdGhlIDE5NzBzIFsxXSwgdGhpcyB0ZWNobmlxdWUgaGFzIGV2b2x2ZWQgaW50byB2YXJpb3VzIGNvbmZpZ3VyYXRpb25zLCBpbmNsdWRpbmcgdGhlIFdob2xlLUNlbGwgYW5kIFNpbmdsZS1DaGFubmVsIHJlY29yZGluZ3MgWzJdLCB3aGljaCBwcm92aWRlIGNyaXRpY2FsIGluc2lnaHRzIGludG8gdGhlIGZ1bmN0aW9uYWwgcHJvcGVydGllcyBvZiBpb24gY2hhbm5lbHMuIDwvcD5cbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcmluY2lwbGVzIG9mIHRoZSBwYXRjaCBjbGFtcCB0ZWNobmlxdWVcIiBpZD1cIlBhdGNoIENsYW1wMlwiPlxuICAgICAgICAgIDxwPlBhdGNoIGNsYW1wIHJlY29yZGluZyBpbnZvbHZlcyB0aGUgdXNlIG9mIGEgZ2xhc3MgbWljcm9waXBldHRlIHdoaWNoIGlzIG1hbnVmYWN0dXJlZCBmcm9tIGEgZ2xhc3MgY2FwaWxsYXJ5IHRocm91Z2ggdGhlIHVzZSBvZiBhIE1pY3JvcGlwZXR0ZSBQdWxsZXIuIFRoZSBtaWNyb3BpcGV0dGUgaXMgdGhlbiBmaWxsZWQgd2l0aCBhbiBlbGVjdHJvbHl0ZSBzb2x1dGlvbiwgd2hpY2ggaXMgc3Vic2VxdWVudGx5IGJyb3VnaHQgaW50byBjb250YWN0IHdpdGggdGhlIGNlbGwgbWVtYnJhbmUuIEJ5IGFwcGx5aW5nIGdlbnRsZSBzdWN0aW9uLCBhIGhpZ2gtcmVzaXN0YW5jZSBzZWFsIGNhbGxlZCBnaWdhIHNlYWwgaXMgZm9ybWVkIGJldHdlZW4gdGhlIHBpcGV0dGUgdGlwIGFuZCB0aGUgbWVtYnJhbmUgcGF0Y2guIFRoaXMgZW5hYmxlcyB0aGUgbWVhc3VyZW1lbnQgb2YgaW9uaWMgY3VycmVudHMgd2l0aCBtaW5pbWFsIG5vaXNlIGludGVyZmVyZW5jZSBbM10uIDxzdHJvbmc+V2hvbGUtQ2VsbCBDb25maWd1cmF0aW9uPC9zdHJvbmc+IHJlY29yZHMgY3VycmVudHMgZnJvbSB0aGUgZW50aXJlIGNlbGwgYnkgcnVwdHVyaW5nIHRoZSBtZW1icmFuZSBwYXRjaCwgYWNjZXNzaW5nIHRoZSBpbnRyYWNlbGx1bGFyIGVudmlyb25tZW50LCBhbmQgaXMgdXNlZnVsIGZvciBhbmFseXNpbmcgb3ZlcmFsbCBpb24gY2hhbm5lbCBhY3Rpdml0eSBhbmQgY2VsbHVsYXIgcmVzcG9uc2VzLiA8c3Ryb25nPlNpbmdsZS1DaGFubmVsIFJlY29yZGluZzwvc3Ryb25nPiBtZWFzdXJlcyBjdXJyZW50cyB0aHJvdWdoIGluZGl2aWR1YWwgaW9uIGNoYW5uZWxzIHdpdGhvdXQgcnVwdHVyaW5nIHRoZSBtZW1icmFuZSwgZW5hYmxpbmcgaGlnaC1yZXNvbHV0aW9uIHN0dWR5IG9mIGNoYW5uZWwgY29uZHVjdGFuY2UsIGdhdGluZywgYW5kIHNlbGVjdGl2aXR5IFsyXS48L3A+XG4gICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogUGF0Y2ggQ2xhbXAgTWVhc3VyZW1lbnQgKDIwMjQpXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8wZDk0OGU1Ny01OTk3LTQzMGEtYTJkZi04MTViNzFhMmZjNjc/YXV0b3BsYXk9MVwiIGZyYW1lQm9yZGVyPVwiMFwiIGFsbG93RnVsbFNjcmVlbj17dHJ1ZX0gc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+XG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDEuPC9iPiBNaWNyb3Njb3BpYyByZWNvcmRpbmcgb2YgbWljcm9waXBldHRlIHNlYWxpbmcgb2YgYSBIRUsyOTMgY2VsbCA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgPC9maWd1cmU+XG5cblxuICAgICAgICAgIDxwPlRoZSBzdWNjZXNzIG9mIHBhdGNoIGNsYW1wIGV4cGVyaW1lbnRzIGhlYXZpbHkgZGVwZW5kcyBvbiB0aGUgY29tcG9zaXRpb24gb2YgdGhlIHNvbHV0aW9ucyB1c2VkLiBUeXBpY2FsbHksIHR3byBtYWluIHR5cGVzIG9mIHNvbHV0aW9ucyBhcmUgZW1wbG95ZWQ6IFRoZSA8c3Ryb25nPlBpcGV0dGUgU29sdXRpb248L3N0cm9uZz4gaW4gdGhlIG1pY3JvcGlwZXR0ZSBtaW1pY3MgdGhlIGludHJhY2VsbHVsYXIgZW52aXJvbm1lbnRzLCB3aGlsZSB0aGUgPHN0cm9uZz5CYXRoIFNvbHV0aW9uPC9zdHJvbmc+IHN1cnJvdW5kcyB0aGUgY2VsbCBhbmQgdXN1YWxseSBjb250YWlucyBjb21wb25lbnRzIHRoYXQgcmVwbGljYXRlIHRoZSBleHRyYWNlbGx1bGFyIGVudmlyb25tZW50LiBCb3RoIHNvbHV0aW9ucyBhcmUgbWV0aWN1bG91c2x5IGRlc2lnbmVkIHRvIHJlZmxlY3QgdGhlIHBoeXNpb2xvZ2ljYWwgY29uZGl0aW9ucyB1bmRlciB3aGljaCB0aGUgY2VsbHMgb3BlcmF0ZSwgdGhlcmVieSBlbnN1cmluZyB0aGF0IHRoZSBtZWFzdXJlbWVudHMgYWNjdXJhdGVseSByZWZsZWN0IGlvbiBjaGFubmVsIGFjdGl2aXR5IGluIGEgbmF0dXJhbCBzZXR0aW5nIFsyXS48L3A+XG4gICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL21ldGgtcGF0Y2gtY2xhbXAvYmlsZC1tZXRoLXBhdGNoLWNsYW1wLnBuZ1wiIGFsdD1cIlBhdGNoIGNsYW1wIHNldHVwXCIvPlxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDIuPC9iPiBQYXRjaCBjbGFtcCBzZXR1cDwvZmlnY2FwdGlvbj5cbiAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBcHBsaWNhdGlvbiBpbiBDRlRSIGdlbmUgcHJpbWUgZWRpdGluZyB2YWxpZGF0aW9uXCIgaWQ9XCJQYXRjaCBDbGFtcDNcIj5cbiAgICAgICAgICAgIDxwPkluIG91ciBvbmdvaW5nIHJlc2VhcmNoIHByb2plY3QgZm9jdXNpbmcgb24gdGhlIHRyZWF0bWVudCBvZiBjeXN0aWMgZmlicm9zaXMsIG91ciBwYXRjaCBjbGFtcCBtZWFzdXJlbWVudHMsIHBlcmZvcm1lZCBpbiBjb2xsYWJvcmF0aW9uIHdpdGggRHIuIE9saXZlciBEclx1MDBFNGdlciBmcm9tIHRoZSBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgd29ya2luZyBncm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgc2VydmUgYXMgYSBwb3dlcmZ1bCB2YWxpZGF0aW9uIHRvb2wgZm9yIHRoZSBhc3Nlc3NtZW50IG9mIHRoZSBmdW5jdGlvbmFsIGNvcnJlY3Rpb24gb2YgdGhlIENGVFIgZ2VuZSwgcGFydGljdWxhcmx5IHRoZSBjb21tb24gRjUwOGRlbCBtdXRhdGlvbiwgdmlhIHByaW1lIGVkaXRpbmcuIFRoZSBwYXRjaCBjbGFtcCB0ZWNobmlxdWUgY2FuIGJlIGVtcGxveWVkIGluIHRoaXMgY29udGV4dCB0byBtZWFzdXJlIHRoZSByZXN1bHRpbmcgY2hsb3JpZGUgaW9uIGNoYW5uZWwgYWN0aXZpdHkgd2hpY2ggaXMgYWx0ZXJlZCBieSB0aGUgbXV0YXRpb24gWzRdLiBXaG9sZS1DZWxsIHJlY29yZGluZ3Mgd2VyZSBwZXJmb3JtZWQgdG8gYXNzZXNzIHdoZXRoZXIgdGhlIGNvcnJlY3RlZCBDRlRSIGNoYW5uZWxzIGZ1bmN0aW9uIHNpbWlsYXJseSB0byB0aG9zZSBpbiBoZWFsdGh5IGNlbGxzLiBJZiB0aGUgY2hsb3JpZGUgaW9uIGN1cnJlbnRzIGluIHRoZSBlZGl0ZWQgY2VsbHMgYXBwcm9hY2ggbGV2ZWxzIG9mIGhlYWx0aHkgY2VsbHMsIHRoaXMgd291bGQgc3Ryb25nbHkgc3VnZ2VzdCBzdWNjZXNzZnVsIGdlbmUgZWRpdGluZyBhbmQgdmFsaWRhdGUgdGhlIGZ1bmN0aW9uYWxpdHkgb2Ygb3VyIHRoZXJhcGV1dGljIGFwcHJvYWNoLjwvcD5cbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XG4gICAgICAgIDwvU2VjdGlvbj5cblxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkNlbGwgQ3VsdHVyZVwiIGlkPVwiQ2VsbCBDdWx0dXJlXCI+XG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJIRUsyOTMgYW5kIEhFSzI5M1QgY2VsbCBsaW5lc1wiIGlkPVwiQ2VsbCBDdWx0dXJlMVwiPlxuICAgICAgICAgIDxwPkZvciB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoLCB3ZSBuZWVkZWQgYW4gZWFzeS10by1oYW5kbGUgY2VsbCBsaW5lIHdpdGggYSBtZWFzdXJhYmxlIGhpZ2ggZXhwcmVzc2lvbiBvZiBDRlRSIGFuZCB0aGUgQ0ZUUiBGNTA4ZGVsIG11dGF0aW9uLiBXaGVuIHRhbGtpbmcgdG8gTWF0dGlqcyBCdWxjYWVuIGZyb20gdGhlIExhYm9yYXRvcnkgb2YgTW9sZWN1bGFyIFZpcm9sb2d5IGFuZCBHZW5lIFRoZXJhcHkgYXQgS1UgTGV1dmVuLCBoZSByZWNvbW1lbmRlZCB0byB1c2UgSEVLMjkzVCBjZWxsIGxpbmVzIG92ZXJleHByZXNzaW5nIENGVFIgdGhleSBoYWQgdXNlZC4gSEVLMjkzIGNlbGxzIGFyZSBhIHZlcnkgY29tbW9uIGltbW9ydGFsaXplZCBodW1hbiBjZWxsIGxpbmUgZGVyaXZlZCBmcm9tIHRoZSBraWRuZXlzIG9mIGEgZmVtYWxlIGVtYnJ5by4gVGhleSBhcmUgcGFydGljdWxhcmx5IHN1aXRlZCB0byByZXNlYXJjaCBkdWUgdG8gdGhlaXIgY29udmVuaWVudCBoYW5kbGluZyBhbmQgdHJhbnNmZWN0aW9uIHByb3BlcnRpZXMuIEJhc2ljIEhFSzI5MyBjZWxscyB3ZXJlIHByb3ZpZGVkIHRvIHVzIGJ5IHRoZSBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3kgd29ya2luZyBncm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSBsZWQgYnkgUHJvZi4gRHIuIEtyaXN0aWFuIE1cdTAwRkNsbGVyLCB3aG8gaXMgYWxzbyBvbmUgb2YgdGhlIFByaW5jaXBhbCBJbnZlc3RpZ2F0b3JzIG9mIG91ciB0ZWFtLiBIRUsyOTNUIGNlbGxzIGV4cHJlc3MgYW4gYWRkaXRpb25hbCB0c0ExNjA5IGFsbGVsZSBvZiB0aGUgU1Y0MCBsYXJnZSBULWFudGlnZW4sIGFsbG93aW5nIGZvciByZXBsaWNhdGlvbiBvZiB2ZWN0b3JzIGNvbnRhaW5pbmcgdGhlIFNWNDAgb3JpZ2luIG9mIHJlcGxpY2F0aW9uWzVdLiBCZXNpZGVzIHRoZSBuYXRpdmUgQ0ZUUiBnZW5lLCB3aGljaCBpcyBub3QgZXhwcmVzc2VkIGluIEhFSyBjZWxscywgdGhlIEhFSzI5M1QgY2VsbCBsaW5lcyB1c2VkIGluIExldXZlbiBjYXJyeSBhbm90aGVyIGNvcHkgb2YgdGhlIGdlbmUgZW1iZWRkZWQgaW4gYW4gZXhwcmVzc2lvbiBjYXNzZXR0ZS4gVGhlIGNhc3NldHRlIGluY2x1ZGVzIGEgQ01WIHByb21vdGVyLCB3aGljaCBpcyBhIHN0YW5kYXJkIHByb21vdGVyIHVzZWQgZm9yIGdlbmUgb3ZlcmV4cHJlc3Npb24gaW4gaHVtYW4gY2VsbHMgZGVyaXZlZCBmcm9tIHRoZSBodW1hbiBDeXRvbWVnYWxvdmlydXNbNl0sIGFzIHdlbGwgYXMgYSBwdXJvbXljaW4gcmVzaXN0YW5jZSBjby1leHByZXNzZWQgd2l0aCB0aGUgQ0ZUUiBhbGxvd2luZyBmb3IgY29udGludW91cyBzZWxlY3Rpb24gb2YgQ0ZUUiBleHByZXNzaW5nIGNlbGxzLiBUaGUgd2hvbGUgY29uc3RydWN0IHdhcyBzdGFibHkgaW5zZXJ0ZWQgaW50byB0aGUgZ2Vub21lIHVzaW5nIGxlbnRpdmlyYWwgdHJhbnNkdWN0aW9uWzddWzhdLiA8L3A+XG4gICAgICAgICAgPGZpZ3VyZT5cbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL21ldGgtdXNlZC1jZWxscy9taWtyb3Nrb3BpZS1oZWsyOTN0LnBuZ1wiIGFsdD1cIlBoYXNlIGNvbnRyYXN0IGltYWdlIG9mIEhFSzI5M1QgYXQgMjB4IG1hZ25pZmljYXRpb25cIi8+XG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDMuPC9iPlBoYXNlIGNvbnRyYXN0IGltYWdlIG9mIEhFSzI5M1QgYXQgMjB4IG1hZ25pZmljYXRpb248L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgPC9maWd1cmU+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ0ZCRTQxby0gY2VsbCBsaW5lXCIgaWQ9XCJDZWxsIEN1bHR1cmUyXCI+XG4gICAgICAgICAgPHA+VGhlIENGQkU0MW8tIGNlbGwgbGluZSwgZGVyaXZlZCBmcm9tIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIG9mIGEgb25lLXllYXItb2xkIGN5c3RpYyBmaWJyb3NpcyBwYXRpZW50LCBzZXJ2ZXMgYXMgYSB2aXRhbCBtb2RlbCBmb3Igc3R1ZHlpbmcgY3lzdGljIGZpYnJvc2lzLiBUaGVzZSBjZWxscyBjbG9zZWx5IG1pbWljIHRoZSBwaHlzaW9sb2dpY2FsIGVudmlyb25tZW50IG9mIHRoZSBhaXJ3YXkgZXBpdGhlbGl1bSwgYWxsb3dpbmcgZm9yIG1vcmUgYWNjdXJhdGUgc3R1ZGllcyBvbiBob3cgQ0ZUUiBtdXRhdGlvbnMgYWZmZWN0IGNlbGwgZnVuY3Rpb24gYW5kIHJlc3BvbnNlIHRvIHRyZWF0bWVudHMuIFRoZXkgd2VyZSBpbW1vcnRhbGl6ZWQgdGhyb3VnaCBjYWxjaXVtLXBob3NwaGF0ZS1tZWRpYXRlZCB0cmFuc2ZlY3Rpb24gdXNpbmcgYSByZXBsaWNhdGlvbi1kZWZlY3RpdmUgcFNWb3JpIHBsYXNtaWQgdGhhdCBjYXJyaWVzIHRoZSBzaW1pYW4gdmlydXMgNDAgbGFyZ2UgVC1hbnRpZ2VuIChTVjQwLUxUKS4gVGhlIHBsYXNtaWQncyBkZWZlY3RpdmUgb3JpZ2luIG9mIHJlcGxpY2F0aW9uIHByZXZlbnRzIHZpcmFsIHByb3BhZ2F0aW9uLCB0aHVzIHByZXNlcnZpbmcgZXNzZW50aWFsIHBoeXNpb2xvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBjZWxscyB3aGlsZSBlbmFibGluZyB0aGVtIHRvIGRldmVsb3AgZGlmZmVyZW50aWF0ZWQgbW9ycGhvbG9naWVzLiBDRkJFNDFvLSBjZWxscyBhcmUgaG9tb3p5Z291cyBmb3IgdGhlIEY1MDhkZWwgQ0ZUUiBtdXRhdGlvbiBbOV0uIFdlIGFyZSBoYXBweSB3ZSBnb3QgdGhpcyBjZWxsIGxpbmUgd2l0aCBwZXJtaXNzaW9uIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignaWduYXRvdmEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBEci4gSWduYXRvdmE8L2E+LCB3aG8gaXMgbGVhZGVyIG9mIGEgd29ya2luZyBncm91cCBhdCB0aGUgSW5zdGl0dXRlIGZvciBCaW9jaGVtaXN0cnkgYW5kIE1vbGVjdWxhciBCaW9sb2d5IG9mIEhhbWJ1cmcgVW5pdmVyc2l0eSBhbmQgYW4gaUdFTSBzdXBwb3J0ZXIgc2luY2UgYSBsb25nIHRpbWUgWzEwXS4gPC9wPlxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKVwiIGlkPVwiQ2VsbCBDdWx0dXJlM1wiPlxuICAgICAgICAgIDxwPkh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgd2VyZSBvYnRhaW5lZCBieSBuYXNhbCBicnVzaGluZywgYSBtaW5pbWFsbHkgaW52YXNpdmUgbWV0aG9kLiBUaGVzZSBjZWxscyBmdW5jdGlvbi9hY3QgYXMgcHJpbWFyeSBjdWx0dXJlcy4gQ3VsdGl2YXRlZCBpbiBhaXItbGlxdWlkIGludGVyZmFjZSAoQUxJKSBjdWx0dXJlcyBhbmQgYXBpY2FsLW91dCBhaXJ3YXkgb3JnYW5vaWRzIChBT0FPKSwgdGhleSBzZXJ2ZSBhcyBhIHN1aXRhYmxlIG1vZGVsIHRvIHZpc3VhbGlzZSB0aGUgZnVuY3Rpb25hbCBlcGl0aGVsaXVtIG9mIHRoZSBhaXJ3YXlzIGluIGEgZGlmZmVyZW50aWF0ZWQgZm9ybS4gVGhlIDxpPmluIHZpdm88L2k+IGFzcGVjdHMgb2YgYW4gYWlyd2F5IGRpc2Vhc2UsIHN1Y2ggYXMgQ0YsIGNhbiBiZSBtb2RlbGxlZCB1c2luZyBkb25vcnMgd2l0aCB0aG9zZSBhaXJ3YXkgZGlzZWFzZXMgWzExXS4gVGhpcyBtb2RlbCBpcyB0aGVyZWZvcmUgcGFydGljdWxhcmx5IHN1aXRhYmxlIGZvciB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGNvbXBsZXguIDwvcD5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IEFMSSBjZWxsIGN1bHR1cmUgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvZmY1NTdmNWEtOTRiZS00NWU2LTkwY2EtMGFmZmExNDQyM2UzP2F1dG9wbGF5PTEmYW1wO211dGVkPTFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxuICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gPGI+RmlndXJlIDQuIDwvYj4gQUxJIGN1bHR1cmVzIG9mIGhORUNzOiBUaGUgYWN0aXZlIGNpbGlhIGJlYXQgZnJlcXVlbmN5IG9mIGRpZmZlcmVudGlhdGVkIGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKSBpbiBhaXItbGlxdWlkIGludGVyZmFjZSAoQUxJKSBjdWx0dXJlIGlzIHZpc2libGUuIFRoaXMgY2lsaWFyeSBtb3ZlbWVudCBpcyBjcnVjaWFsIGZvciBtdWNvY2lsaWFyeSB0cmFuc3BvcnQsIHdoaWNoIGNvbnRyaWJ1dGVzIHRvIHRoZSBjbGVhcmFuY2Ugb2YgcGFydGljbGVzIGFuZCBwYXRob2dlbnMgaW4gdGhlIHJlc3BpcmF0b3J5IHRyYWN0LiA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgICA8L2ZpZ3VyZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cbiAgICAgICAgICAgIDxmaWd1cmU+XG4gICAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogQU9BTyBjZWxsIGN1bHR1cmUgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMDU4ZDgzY2YtYWIwOS00NzZlLTlhYjItMzBjZDExNGZiYzBjP2F1dG9wbGF5PTEmYW1wO211dGVkPTFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxuICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgNS4gPC9iPiBBcGljYWwtT3V0IEFpcndheSBPcmdhbm9pZCAoQU9BTykgY3VsdHVyZTogVmlzaWJsZSBhcGljYWwtb3V0IGFpcndheSBvcmdhbm9pZHMgaW4gYWN0aW9uLiBUaGVzZSAzRCBzdHJ1Y3R1cmVzLCB3aGljaCBtaW1pYyB0aGUgYWlyd2F5IGVwaXRoZWxpdW0sIGFsbG93IGRldGFpbGVkIHN0dWR5IG9mIGNlbGx1bGFyIHByb2Nlc3NlcyBzdWNoIGFzIG11Y29jaWxpYXJ5IHRyYW5zcG9ydCBhbmQgc2VjcmV0b3J5IGFjdGl2aXRpZXMsIGluIHdoaWNoIGNpbGlhIGFuZCB2ZXNpY2xlcyBwbGF5IGEga2V5IHJvbGUuICA8L2ZpZ2NhcHRpb24+XG4gICAgICAgICAgIDwvZmlndXJlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICBcblxuICAgICAgICA8L1NlY3Rpb24+XG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiTE5Qc1wiIGlkPVwiTE5Qc1wiPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ3l0b3RveGljaXR5IFRlc3RzXCIgaWQ9XCJDeXRvdG94aWNpdHkgVGVzdHNcIj5cbiAgICAgICAgICA8SDQgdGV4dD1cIkFzc2Vzc2luZyB0aGUgU2FmZXR5IG9mIE91ciBMTlBzIFwiPjwvSDQ+XG4gICAgICAgICAgICA8cD5FbnN1cmluZyB0aGUgc2FmZXR5IGFuZCB0aG9yb3VnaCBjaGFyYWN0ZXJpemF0aW9uIG9mIG91ciBMTlBzIHdhcyBhIGNlbnRyYWwgcGFydCBvZiBvdXIgcHJvamVjdCwgYXMgdGhlc2UgcGFydGljbGVzIGFyZSBpbnRlbmRlZCBmb3IgdXNlIGluIGJpb2xvZ2ljYWwgc3lzdGVtcy4gV2UgaW1wbGVtZW50ZWQgYSBjb21wcmVoZW5zaXZlIHJhbmdlIG9mIGFzc2F5cyBhbmQgdGVjaG5pcXVlcyB0byBhc3Nlc3MgdGhlaXIgYmlvc2FmZXR5IGFuZCBwaHlzaWNhbCBwcm9wZXJ0aWVzLCBlbnN1cmluZyB0aGVpciBzdWl0YWJpbGl0eSBmb3IgYXBwbGljYXRpb25zIHN1Y2ggYXMgZHJ1ZyBkZWxpdmVyeSBhbmQgZ2VuZSB0aGVyYXB5LiBCZWxvdyBpcyBhbiBvdmVydmlldyBvZiB0aGUga2V5IHN0ZXBzIHdlIHRvb2sgaW4gb3VyIGFzc2Vzc21lbnQuPC9wPlxuICAgICAgICAgIDxINCB0ZXh0PVwiTVRUIEFzc2F5XCI+PC9IND5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxuICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9tdHRhc3NheS53ZWJwXCIgYWx0PVwiUEMxXCIgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiMjAwcHRcIn19Lz4gXG4gICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgNi4gPC9iPiBcbiAgICAgICAgICAgICAgICAgIE1UVCBBc3NheTogZm9ybWF0aW9uIG9mIHB1cnBsZSBmb3JtYXphbiBjcnlzdGFscyBieSBsaXZpbmcgY2VsbHMuXG4gICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+IFxuICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcbiAgICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cbiAgICAgICAgICAgIDxwPlRvIGV2YWx1YXRlIHRoZSBjeXRvdG94aWNpdHkgb2Ygb3VyIExOUHMsIHdlIGNvbmR1Y3RlZCBhbiBNVFQgYXNzYXksIHdoaWNoIG1lYXN1cmVzIHRoZSBtZXRhYm9saWMgYWN0aXZpdHkgb2YgY2VsbHMuIFRoaXMgYXNzYXkgaXMgYmFzZWQgb24gdGhlIGFiaWxpdHkgb2YgbGl2aW5nIGNlbGxzIHRvIHJlZHVjZSBNVFQsIGEgeWVsbG93IHRldHJhem9saXVtIHNhbHQsIGludG8gcHVycGxlIGZvcm1hemFuIGNyeXN0YWxzIHRocm91Z2ggTkFEKFApSC1kZXBlbmRlbnQgZW56eW1lcy4gQ2VsbHMgd2VyZSB0cmVhdGVkIHdpdGggdmFyaW91cyBjb25jZW50cmF0aW9ucyBvZiBMTlBzLCBhbmQgYWZ0ZXIgZGlzc29sdmluZyB0aGUgZm9ybWF6YW4gY3J5c3RhbHMgd2l0aCBETVNPLCB3ZSBtZWFzdXJlZCBhYnNvcmJhbmNlLiBIaWdoZXIgYWJzb3JiYW5jZSB2YWx1ZXMgaW5kaWNhdGUgZ3JlYXRlciBjZWxsIHZpYWJpbGl0eS4gT3VyIHJlc3VsdHMgc2hvd2VkIG5vIHNpZ25pZmljYW50IHJlZHVjdGlvbiBpbiBjZWxsIHZpYWJpbGl0eSBhY3Jvc3MgYWxsIExOUCBjb25jZW50cmF0aW9ucywgZGVtb25zdHJhdGluZyB0aGF0IHRoZSBMTlBzIGRpZCBub3QgaW5kdWNlIGN5dG90b3hpYyBlZmZlY3RzLiBUaGlzIGZpbmRpbmcgaXMgY3J1Y2lhbCBmb3IgZW5zdXJpbmcgdGhhdCB0aGUgTE5QcyBhcmUgc2FmZSBmb3IgYmlvbG9naWNhbCB1c2UsIHN1cHBvcnRpbmcgdGhlaXIgcG90ZW50aWFsIGluIGNsaW5pY2FsIGFwcGxpY2F0aW9ucyBzdWNoIGFzIGRydWcgZGVsaXZlcnkgYW5kIGdlbmUgdGhlcmFweS4gT3ZlcmFsbCwgdGhlIE1UVCBhc3NheSBwcm92aWRlZCBzdHJvbmcgZXZpZGVuY2Ugb2YgdGhlIGJpb2NvbXBhdGliaWxpdHkgb2Ygb3VyIExOUHMuIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+IFxuICAgICAgICAgIDxINCB0ZXh0PVwiUHJvbGlmZXJhdGlvbiBBc3NheSB0byBNb25pdG9yIExvbmctVGVybSBTYWZldHlcIj48L0g0PlxuICAgICAgICAgICAgPHA+SW4gYWRkaXRpb24gdG8gYXNzZXNzaW5nIGltbWVkaWF0ZSBjeXRvdG94aWNpdHksIHdlIGFsc28gZXZhbHVhdGVkIHRoZSBsb25nLXRlcm0gc2FmZXR5IG9mIHRoZSBMTlBzIGJ5IGNvbmR1Y3RpbmcgYSBwcm9saWZlcmF0aW9uIGFzc2F5LiBUaGlzIGFzc2F5IHRyYWNrZWQgY2VsbCBkaXZpc2lvbiBhbmQgZ3Jvd3RoIG92ZXIgdGltZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgTE5QcyBpbXBhY3RlZCBjZWxsdWxhciBmdW5jdGlvbi4gT3VyIHJlc3VsdHMgc2hvd2VkIHRoYXQgTE5QLXRyZWF0ZWQgY2VsbHMgaGFkIHNpbWlsYXIgZ3Jvd3RoIHJhdGVzIHRvIHVudHJlYXRlZCBjb250cm9scywgaW5kaWNhdGluZyB0aGF0IHRoZSBMTlBzIGRvIG5vdCBpbnRlcmZlcmUgd2l0aCBub3JtYWwgY2VsbCBwcm9jZXNzZXMuIFRoaXMgZnVydGhlciBjb25maXJtcyB0aGVpciBiaW9jb21wYXRpYmlsaXR5IGFuZCBzdWl0YWJpbGl0eSBmb3IgdXNlIGluIGJpb2xvZ2ljYWwgc3lzdGVtcy48L3A+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRmx1b3Jlc2NlbmNlLUFjdGl2YXRlZCBDZWxsIFNvcnRpbmcgKEZBQ1MpXCIgaWQ9XCJGQUNTXCI+XG4gICAgICAgICAgICA8cD5UbyBhc3Nlc3MgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IG9mIG91ciBMTlBzLCB3ZSB1c2VkIGZsdW9yZXNjZW5jZS1hY3RpdmF0ZWQgY2VsbCBzb3J0aW5nIChGQUNTKS4gVGhpcyBtZXRob2QgaW52b2x2ZWQgdGFnZ2luZyB0aGUgTE5QcyB3aXRoIGZsdW9yZXNjZW50IG1hcmtlcnMgYW5kIG1lYXN1cmluZyB0aGVpciBhYmlsaXR5IHRvIGRlbGl2ZXIgZ2VuZXRpYyBtYXRlcmlhbCBpbnRvIHRhcmdldCBjZWxscy4gRkFDUyBwcm92aWRlZCBxdWFudGl0YXRpdmUgaW5zaWdodHMgaW50byBob3cgZWZmZWN0aXZlbHkgdGhlIExOUHMgdHJhbnNmZWN0ZWQgY2VsbHMsIGhlbHBpbmcgdXMgb3B0aW1pemUgdGhlaXIgZGVzaWduIGZvciBnZW5lIHRoZXJhcHkgYXBwbGljYXRpb25zLiA8L3A+XG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJJbi1EZXB0aCBDaGFyYWN0ZXJpemF0aW9uIG9mIExOUHNcIiBpZD1cIkluLURlcHRoIENoYXJhY3Rlcml6YXRpb24gb2YgTE5Qc1wiPlxuICAgICAgICAgICAgPEg0IHRleHQ9XCJEeW5hbWljIExpZ2h0IFNjYXR0ZXJpbmcgKERMUykgYW5kIFpldGEgUG90ZW50aWFsXCI+PC9IND4gXG4gICAgICAgICAgICAgIDxwPlRoZSBoeWRyb2R5bmFtaWMgcmFkaXVzIChcdUQ4MzVcdURDNDVcdUQ4MzVcdURDM0IpIG9mIHRoZSB2ZXNpY2xlcyBhbmQgTE5QcyB3YXMgZGV0ZXJtaW5lZCB0aHJvdWdoIGFuZ2xlLWRlcGVuZGVudCBwaG90b24gY29ycmVsYXRpb24gc3BlY3Ryb3Njb3B5IChQQ1MpIGF0IFx1RDgzNVx1REM0Nz0yMFx1MDBCMEMuIFNhbXBsZXMgd2VyZSBtZWFzdXJlZCBpbiBOTVIgdHViZXMgdXNpbmcgYSAzRCBMUyBTcGVjdHJvbWV0ZXIgUHJvIChMUyBJbnN0cnVtZW50cywgRnJpYm91cmcsIFN3aXR6ZXJsYW5kKSwgd2hpY2ggd2FzIGVxdWlwcGVkIHdpdGggYSBIZU5lIExhc2VyICg2MzIuOCBubSwgMTE0NVA7IEpEU1UsIE1pbHBpdGFzLCBDQSwgVVNBKSwgYSBkZWNhbGluZSBpbmRleC1tYXRjaGluZyB2YXQsIGFuIGF1dG9tYXRlZCBnb25pb21ldGVyLCBhbmQgdHdvIGRldGVjdG9ycy4gTWVhc3VyZW1lbnRzIHdlcmUgcGVyZm9ybWVkIGluIGEgM0QgY3Jvc3MtbW9kZSB0byBlbGltaW5hdGUgbXVsdGlwbGUgc2NhdHRlcmluZyBlZmZlY3RzLCBjb3ZlcmluZyBhIHNjYXR0ZXJpbmcgYW5nbGUgcmFuZ2Ugb2YgMzBcdTAwQjAgdG8gMTIwXHUwMEIwIGluIGluY3JlbWVudHMgb2YgMTBcdTAwQjAsIHdpdGggYSBtZWFzdXJpbmcgdGltZSBvZiB0aHJlZSBpbnRlcnZhbHMgb2YgMTIwIHMgcGVyIGFuZ2xlLlRoZSBhdXRvY29ycmVsYXRpb24gZnVuY3Rpb24gb2YgdGhlIHNjYXR0ZXJlZCBsaWdodCBpbnRlbnNpdHkgd2FzIGdlbmVyYXRlZCB1c2luZyBhIG11bHRpcGxlLVx1MDNDNCBkaWdpdGFsIGNvcnJlbGF0b3IgYW5kIGFuYWx5emVkIHZpYSBpbnZlcnNlIExhcGxhY2UgdHJhbnNmb3JtYXRpb24gKENPTlRJTikgdG8gZGV0ZXJtaW5lIHRoZSBtZWFuIHJlbGF4YXRpb24gcmF0ZSAoXHUwMzkzKS4gRnJvbSB0aGVzZSBkYXRhLCB0aGUgaHlkcm9keW5hbWljIHJhZGl1cyAoXHVEODM1XHVEQzQ1XHVEODM1XHVEQzNCKSB3YXMgY2FsY3VsYXRlZCB1c2luZyB0aGUgU3Rva2VzXHUyMDEzRWluc3RlaW4gZXF1YXRpb246IFxuICAgICAgICAgICAgICAgIFx1RDgzNVx1REM0NVx1RDgzNVx1REMzQj1cdUQ4MzVcdURDNThcdUQ4MzVcdURDMzVcdTIyQzVcdUQ4MzVcdURDNDcvNlx1RDgzNVx1REYwQlx1RDgzNVx1REYwMlx1RDgzNVx1REMzN1x1RDgzNVx1REM0NyB3aGVyZSBcdUQ4MzVcdURDNThcdUQ4MzVcdURDMzUgaXMgdGhlIEJvbHR6bWFubiBjb25zdGFudCwgVCBpcyB0aGUgdGVtcGVyYXR1cmUsIFx1MDNCNyBpcyB0aGUgc29sdmVudCB2aXNjb3NpdHksIGFuZCBEVFxuICBpcyB0aGUgdHJhbnNsYXRpb25hbCBkaWZmdXNpb24gY29lZmZpY2llbnQuIFRoZSB2YWx1ZSBvZiBcdUQ4MzVcdURDMzdcdUQ4MzVcdURDNDcgd2FzIG9idGFpbmVkIGZyb20gdGhlIHNsb3BlIG9mIHRoZSBsaW5lYXIgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlIHJlbGF4YXRpb24gcmF0ZSAoXHUwMzkzKSBhbmQgXG4gIHRoZSBzcXVhcmVkIG1hZ25pdHVkZSBvZiB0aGUgc2NhdHRlcmluZyB2ZWN0b3IgKFx1RDgzNVx1REM1RTIpIGFzIGRlZmluZWQgYnk6XHUwMzkzID1cdUQ4MzVcdURDMzdcdUQ4MzVcdURDNDdcdTIyQzVcdUQ4MzVcdURDNUUyXHUwMzkzLlxuIFRoZSB2aXNjb3NpdHkgb2Ygd2F0ZXIgd2FzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRlbXBlcmF0dXJlIHRvIHByb3ZpZGUgYWNjdXJhdGUgbWVhc3VyZW1lbnRzIGZvciB0aGUgZ2l2ZW4gY29uZGl0aW9ucy5cblRvIGNvbXBsZW1lbnQgdGhlIFBDUyBhbmFseXNpcywgZHluYW1pYyBsaWdodCBzY2F0dGVyaW5nIChETFMpIHdhcyB1c2VkIHRvIGRldGVybWluZSB0aGUgc2l6ZSBkaXN0cmlidXRpb24gYW5kIHBvbHlkaXNwZXJzaXR5IGluZGV4IChQREkpIG9mIHRoZSBMTlBzLiBETFMgbWVhc3VyZW1lbnRzIGNvbmZpcm1lZCB0aGF0IHRoZSBMTlBzIGhhZCBhIGNvbnNpc3RlbnQgc2l6ZSBkaXN0cmlidXRpb24gd2l0aCBtaW5pbWFsIGFnZ3JlZ2F0aW9uLCB3aGljaCBpcyBjcnVjaWFsIGZvciB0aGVpciBzdGFiaWxpdHkgYW5kIGVmZmVjdGl2ZW5lc3MuIEZ1cnRoZXJtb3JlLCB3ZSBhc3Nlc3NlZCB0aGUgemV0YSBwb3RlbnRpYWwgb2YgdGhlIExOUHMgdG8gZXZhbHVhdGUgdGhlaXIgc3VyZmFjZSBjaGFyZ2UuIEEgaGlnaCB6ZXRhIHBvdGVudGlhbCB2YWx1ZSBpbmRpY2F0ZWQgdGhhdCB0aGUgTE5QcyB3ZXJlIHN0YWJsZSBpbiBzdXNwZW5zaW9uLCBhIG5lY2Vzc2FyeSBjb25kaXRpb24gZm9yIG1haW50YWluaW5nIHRoZWlyIGZ1bmN0aW9uYWxpdHkgaW4gYmlvbG9naWNhbCBlbnZpcm9ubWVudHMuXG5PdmVyYWxsLCB0aGUgY29tYmluYXRpb24gb2YgUENTLCBETFMsIGFuZCB6ZXRhIHBvdGVudGlhbCBtZWFzdXJlbWVudHMgcHJvdmlkZWQgYSBjb21wcmVoZW5zaXZlIGNoYXJhY3Rlcml6YXRpb24gb2YgdGhlIExOUHMsIGNvbmZpcm1pbmcgdGhlaXIgaHlkcm9keW5hbWljIHByb3BlcnRpZXMsIHN0YWJpbGl0eSwgYW5kIHN1aXRhYmlsaXR5IGZvciBkcnVnIGRlbGl2ZXJ5IGFwcGxpY2F0aW9ucy4gPC9wPlxuICAgICAgICAgICAgPEg0IHRleHQ9XCJTRU0gYW5kIENyeW8tRU0gZm9yIFN0cnVjdHVyYWwgQW5hbHlzaXNcIj48L0g0PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICA8cD5Gb3IgdGhlIGNyeW9nZW5pYyBlbGVjdHJvbiBtaWNyb3Njb3B5IChDcnlvLUVNKSBhbmFseXNpcywgc2FtcGxlcyB3ZXJlIHZpdHJpZmllZCBvbiBob2xleSBjYXJib24gVEVNIGdyaWRzIChMYWNleSBDYXJib24gRmlsbSBjb2F0ZWQsIDIwMCBNZXNoOyBTY2llbmNlIFNlcnZpY2VzLCBNXHUwMEZDbmNoZW4sIEdlcm1hbnkpIHVzaW5nIGEgTGVpY2EgYmxvdHRpbmcgYW5kIHBsdW5naW5nIGRldmljZSAoTGVpY2EgRU0gR1AsIExlaWNhIE1pa3Jvc3lzdGVtZSBWZXJ0cmllYiBHbWJILCBXZXR6bGFyLCBHZXJtYW55KS4gVGhlIGdyaWRzIHdlcmUgcmFwaWRseSBwbHVuZ2VkIGludG8gbGlxdWlkIGV0aGFuZSBjb29sZWQgYnkgbGlxdWlkIG5pdHJvZ2VuIHRvIGVuc3VyZSBzdWZmaWNpZW50bHkgZmFzdCBjb29saW5nLiBBZnRlciB2aXRyaWZpY2F0aW9uLCB0aGUgZ3JpZHMgd2VyZSB0cmFuc2ZlcnJlZCB0byBhIGNyeW8gdHJhbnNmZXIgYW5kIHRvbW9ncmFwaHkgaG9sZGVyIChGaXNjaGlvbmUgTW9kZWwgMjU1MCwgRS5BLiBGaXNjaGlvbmUgSW5zdHJ1bWVudHMsIFBpdHRzYnVyZ2gsIFVTQSkuXG5URU0gaW1hZ2VzIHdlcmUgYWNxdWlyZWQgdXNpbmcgYSBKRU9MIEpFTS0yMjAwRlMgZWxlY3Ryb24gbWljcm9zY29wZSAoSkVPTCwgRnJlaXNpbmcsIEdlcm1hbnkpIGVxdWlwcGVkIHdpdGggYSBjb2xkIGZpZWxkIGVtaXNzaW9uIGVsZWN0cm9uIGd1biwgb3BlcmF0ZWQgYXQgYW4gYWNjZWxlcmF0aW9uIHZvbHRhZ2Ugb2YgMjAwIGtWLiBBbGwgaW1hZ2VzIHdlcmUgY2FwdHVyZWQgZGlnaXRhbGx5IHVzaW5nIGEgYm90dG9tLW1vdW50ZWQgY2FtZXJhIChHYXRhbiBPbmVWaWV3LCBHYXRhbiwgUGxlYXNhbnRvbiwgVVNBKSBhbmQgcHJvY2Vzc2VkIHdpdGggYSBkaWdpdGFsIGltYWdpbmcgcHJvY2Vzc2luZyBzeXN0ZW0gKERpZ2l0YWwgTWljcm9ncmFwaCBHTVMgMywgR2F0YW4sIFBsZWFzYW50b24sIFVTQSkuXG5JbiBhZGRpdGlvbiB0byBDcnlvLUVNLCB3ZSBlbXBsb3llZCBzY2FubmluZyBlbGVjdHJvbiBtaWNyb3Njb3B5IChTRU0pIHRvIGZ1cnRoZXIgY2hhcmFjdGVyaXplIHRoZSBtb3JwaG9sb2d5IGFuZCBzdXJmYWNlIHN0cnVjdHVyZSBvZiB0aGUgTE5Qcy4gU0VNIHByb3ZpZGVkIGhpZ2gtcmVzb2x1dGlvbiBpbWFnZXMgdGhhdCBjb25maXJtZWQgdGhlIHNwaGVyaWNhbCBzaGFwZSBhbmQgdW5pZm9ybWl0eSBvZiB0aGUgTE5Qcy48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XG4gICAgICAgICAgICAgICAgPGZpZ3VyZT4gXG4gICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3BsYXNtYXRlbS53ZWJwXCIgYWx0PVwiUEMxXCIgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiMjAwcHRcIn19Lz4gXG4gICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgNy4gPC9iPiBcbiAgICAgICAgICAgICAgICAgIFNhbXBsZSBwcmVwYXJhdGlvbiBmb3IgU0VNOiBzcHV0dGVyaW5nIGluIEFyZ29uIHBsYXNtYS5cbiAgICAgICAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXG4gICAgICAgICAgICAgICAgPC9maWd1cmU+IFxuICAgICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgICA8L2Rpdj4gXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxuICAgICAgICAgIFxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiQ29uY2x1c2lvblwiPlxuICAgICAgICAgIDxINCB0ZXh0PVwiSW1wb3J0YW5jZSBvZiBTYWZldHkgaW4gTE5QIERldmVsb3BtZW50XCI+PC9IND5cbiAgICAgICAgICAgIDxwPlRlc3RpbmcgdGhlIHNhZmV0eSBvZiBvdXIgTE5QcyB3YXMgYSBjcml0aWNhbCBzdGVwIGluIHRoZWlyIGRldmVsb3BtZW50LiBMTlBzIGFyZSBpbmNyZWFzaW5nbHkgYmVpbmcgdXNlZCBpbiBjdXR0aW5nLWVkZ2UgdGhlcmFwaWVzLCBzdWNoIGFzIG1STkEgdmFjY2luZXMgYW5kIHRhcmdldGVkIGRydWcgZGVsaXZlcnkgc3lzdGVtcy4gRm9yIHRoZXNlIHRlY2hub2xvZ2llcyB0byBiZSB2aWFibGUsIHRoZSBuYW5vcGFydGljbGVzIG11c3Qgbm90IGhhcm0gdGhlIGNlbGxzIHRoZXkgYXJlIGludGVuZGVkIHRvIGludGVyYWN0IHdpdGguIFRoZSBNVFQgYW5kIHByb2xpZmVyYXRpb24gYXNzYXlzIHByb3ZpZGVkIHJvYnVzdCBkYXRhLCBjb25maXJtaW5nIHRoZSBiaW9jb21wYXRpYmlsaXR5IG9mIG91ciBMTlBzIGFuZCByZWluZm9yY2luZyB0aGVpciBwb3RlbnRpYWwgZm9yIHNhZmUgdXNlIGluIGZ1cnRoZXIgcmVzZWFyY2ggYW5kIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gPC9wPlxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cbiAgICAgXG4gICAgICAgIDwvU2VjdGlvbj5cbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJSZWZlcmVuY2VzXCI+XG4gICAgICAgICA8TWV0aG9kU291cmNlcy8+XG4gICAgICAgIDwvU2VjdGlvbj5cblxuICAgICAgICBcblxuICAgICAgICBcbiAgICAgIDwvPlxuICAgICk7XG4gIH1cbiAgIiwgImV4cG9ydCBmdW5jdGlvbiBNRVRISCgpIHtcblxuICAgIHJldHVybiAoXG4gICAgICA8SGVhZGVyQm94IHRpdGxlPVwiTWF0ZXJpYWxzXCIgdGl0bGUyPVwiJiBNZXRob2RzXCIgaWQ9XCJtbWhlYWRcIj5cbiAgICAgICAgXG4gICAgICA8L0hlYWRlckJveD5cbiAgICApO1xuICB9XG4gIFxuICBpbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJpbXBvcnQgeyBjcmVhdGVTaWRlYmFyIH0gZnJvbSBcIi4uL3V0aWxzL2NyZWF0ZVNpZGViYXJcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIENvblNpZGViYXIoKXtcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiAgZC1ub25lIGQtbGctYmxvY2tcIj5cbiAgICAgICAgICAge3NpZGViYXJ9XG4gICAgICAgIDwvZGl2PlxuICAgIClcbn1cblxuXG5jb25zdCB0YWJzID0gW1xuICAgIHsgdGFiOiBcIkJGSCBFdXJvcGVhbiBNZWV0VXBcIiwgc3VidGFiczogW1wiQWZ0ZXJ2aWRlb1wiLCBcIlRpbWVsaW5lXCIsIFwiQWJvdXRcIiwgXCJQb3N0ZXJzXCIsIFwiR3VpZGVsaW5lXCIsIFwiR2FsbGVyeVwiLCBcIkRvd25sb2Fkc1wiXX0sXG4gICAge3RhYjogXCJTYWZldHkgR3VpZGVsaW5lXCJ9LFxuICAgIHt0YWI6IFwiQ29sbGFib3JhdGlvbnNcIn0sXG4gICAge3RhYjogXCJQYXRpZW50IE1hdHRlcnNcIn0sXG4gICAge3RhYjogXCJXaWtpXCJ9XG4gIF07XG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gaUdlbUJpZWxlZmVsZFNpZGViYXIoKXtcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICB7c2lkZWJhcn1cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufVxuXG5jb25zdCB0YWJzID0gW1xuICAgIHt0YWI6IFwiQmllbGVmZWxkIFVuaXZlcnNpdHlcIn0sXG4gICAgeyB0YWI6IFwiSGlzdG9yeVwifSxcbiAgICB7IHRhYjogXCJTdGVlcmluZyBDb21taXR0ZWVcIiwgc3VidGFiczogW1wiRnVuY3Rpb25cIiwgXCJKXHUwMEY2cm5cIl19LFxuICAgIHt0YWI6IFwiRnV0dXJlXCJ9XG4gIF07IiwgImltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xuXG5leHBvcnQgZnVuY3Rpb24gSnVkU2lkZWJhcigpe1xuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yICBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICB7c2lkZWJhcn1cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufVxuXG5cbmNvbnN0IHRhYnMgPSBbXG4gICAge3RhYjogXCJCZXN0IFRoZXJhcGV1dGljIFByb2plY3RcIn0sXG4gICAge3RhYjogXCJCZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VcIn0sXG4gICAge3RhYjogXCJTYWZldHkgJiBTZWN1cml0eVwifSxcbiAgICB7dGFiOiBcIkJlc3QgTmV3IEJhc2ljIFBhcnRcIn0sXG4gICAge3RhYjogXCJDb25jbHVzaW9uXCJ9XG4gIF07XG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBNZXRoU2lkZWJhcigpe1xuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XG4gICAgICAgICAgIHtzaWRlYmFyfVxuICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cblxuY29uc3QgdGFicyA9IFtcbiAgICB7IHRhYjogXCJJbnRyb2R1Y3Rpb25cIn0sXG4gICAgeyB0YWI6IFwiUGF0Y2ggQ2xhbXBcIiwgc3VidGFiczogW1wiQmFja2dyb3VuZFwiLCBcIlByaW5jaXBsZXNcIiwgXCJBcHBsaWNhdGlvblwiXX0sXG4gICAge3RhYjogXCJDZWxsIEN1bHR1cmVcIiwgc3VidGFiczogW1wiSEVLIENlbGxzXCIsIFwiQ0ZCRTQxby1cIiwgXCJoTkVDc1wiXX0sXG4gICAge3RhYjogXCJMTlBzXCJ9XG4gIF07XG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBQYXJ0U2lkZWJhcigpe1xuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXG4gICAgcmV0dXJuKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XG4gICAgICAgICAgIHtzaWRlYmFyfVxuICAgICAgICA8L2Rpdj5cbiAgICApXG59XG5cblxuY29uc3QgdGFicyA9IFtcbiAgICB7IHRhYjogXCJJbnRyb2R1Y3Rpb25cIiwgc3VidGFiczogW1wiRGVzY3JpcHRpb25cIiwgXCJDaGFyYWN0ZXJpemF0aW9uXCJdfSxcbiAgICB7IHRhYjogXCJQcm9jZXNzXCIsIHN1YnRhYnM6IFtcIkVDXCIsIFwiRGVzaWduIGFuZCBCdWlsZFwiXX0sXG4gICAge3RhYjogXCJFeHBlcmltZW50c1wiLCBzdWJ0YWJzOiBbXCJDbG9uaW5nXCIsIFwiTmlrYXNlLUFzc2F5XCIsIFwiQWN0aXZpdHkgRXhwZXJpbWVudHNcIl19LFxuICAgIHt0YWI6IFwiUGFydHMgQ29sbGVjdGlvblwiLCBzdWJ0YWJzOiBbXCJQbGFzbWlkc1wiLCBcIkJhc2ljIFBhcnRzXCIsIFwiQ29tcG9zaXRlIFBhcnRzXCJdfSxcbiAgXTtcbiIsICJcbmltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIFJlc3VsdFNpZGViYXIoKXtcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxuICAgIHJldHVybihcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBkLW5vbmUgZC1sZy1ibG9ja1wiPlxuICAgICAgICAgICB7c2lkZWJhcn1cbiAgICAgICAgPC9kaXY+XG4gICAgKVxufVxuXG5jb25zdCB0YWJzID0gW1xuICAgIHsgdGFiOiBcIkFic3RyYWN0XCIgLCBzdWJ0YWJzOiBbXCJJbnRyb2R1Y3Rpb25cIiwgXCJHb2FscyBhbmQgTWlsZXN0b25lc1wiXX0sXG4gICAge3RhYjogXCJFeHBlcmltZW50YWwgRGVzaWduXCIsIHN1YnRhYnM6IFtcIlByb29mIG9mIENvbmNlcHRcIiwgXCJQcmltZUd1aWRlXCIsIFwiTE5QIFN5bnRoZXNpc1wiLCBcIkNlbGxjdWx0dXJlXCIsIFwiRG93bnN0cmVhbSBBcHBsaWNhdGlvbnNcIl19LFxuICAgIC8vIHt0YWI6IFwiXCJ9LFxuICBdOyIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9ob21lL2xpbGkvRG9jdW1lbnRzL2lHZW0vYmllbGVmZWxkLWNlYml0ZWMvc3JjL3V0aWxzL3N0cmluZ1RvU2x1Zy50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlscy9zdHJpbmdUb1NsdWcudHNcIjtleHBvcnQgZnVuY3Rpb24gc3RyaW5nVG9TbHVnKHN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgbGV0IHNsdWcgPSBTdHJpbmcoc3RyaW5nKS50b0xvd2VyQ2FzZSgpO1xuICBzbHVnID0gc2x1Zy5yZXBsYWNlKC9bXmEtejAtOS1dL2csIFwiLVwiKTtcbiAgc2x1ZyA9IHNsdWcucmVwbGFjZSgvLSsvZywgXCItXCIpO1xuICAvLyByZW1vdmUgZGFzaGVzIGF0IHN0YXJ0IGFuZCBlbmRcbiAgY29uc3Qgc3RhcnQgPSBzbHVnLnNlYXJjaCgvW14tXS8pOyAvLyBmaW5kIGluZGV4IG9mIGZpcnN0IG5vbi1kYXNoXG4gIGNvbnN0IGVuZCA9IHNsdWcuc2VhcmNoKC8tKyQvKTsgLy8gZmluZCBpbmRleCBvZiBmaXJzdCBlbmQgZGFzaFxuICByZXR1cm4gc2x1Zy5zdWJzdHJpbmcoc3RhcnQsIGVuZCA9PT0gLTEgPyB1bmRlZmluZWQgOiBlbmQpO1xufVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvaG9tZS9saWxpL0RvY3VtZW50cy9pR2VtL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlsc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2hvbWUvbGlsaS9Eb2N1bWVudHMvaUdlbS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvdXNlU2NyaXB0LnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9ob21lL2xpbGkvRG9jdW1lbnRzL2lHZW0vYmllbGVmZWxkLWNlYml0ZWMvc3JjL3V0aWxzL3VzZVNjcmlwdC50c1wiO2ltcG9ydCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZVNjcmlwdCh7dXJsfTp7dXJsOiBzdHJpbmd9KSB7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3Qgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG5cbiAgICBzY3JpcHQuc3JjID0gdXJsO1xuICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XG5cbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChzY3JpcHQpO1xuICAgIH1cbiAgfSwgW3VybF0pO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgdXNlU2NyaXB0O1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFtVCxTQUFTLGNBQWMsZUFBZTtBQUN6VixPQUFPLFdBQVc7OztBQ0RsQixTQUFTLFdBQVcsUUFBUSxnQkFBZ0I7QUFhcEMsbUJBS1ksS0FKUixZQURKOzs7QUNiUixTQUFTLGFBQUFBLFlBQVcsVUFBQUMsU0FBUSxZQUFBQyxpQkFBZ0I7QUE4RXBDLHFCQUFBQyxXQU1ZLE9BQUFDLE1BZ0JBLFFBQUFDLGFBdEJaOzs7QUM5RVIsU0FBUyxhQUFBQyxZQUFXLFVBQUFDLFNBQVEsWUFBQUMsaUJBQWdCO0FBOERwQyxxQkFBQUMsV0FVWSxPQUFBQyxNQVlSLFFBQUFDLGFBdEJKOzs7QUM5RFIsU0FBUyxhQUFBQyxZQUFXLFlBQUFDLGlCQUFnQjtBQUNwQyxTQUFTLGFBQWEsbUJBQW1COzs7QUNEekMsU0FBZ0IsZUFBZSxZQUFZLFlBQUFDLGlCQUFnQjtBQVF2RCxnQkFBQUMsWUFBQTtBQU5KLElBQU0saUJBQWlCLGNBQW1CLElBQUk7QUFZdkMsSUFBTSxhQUFhLE1BQU0sV0FBVyxjQUFjOzs7QUNEeEMsZ0JBQUFDLE1BOEVMLFFBQUFDLGFBOUVLO0FBMkZWLFNBQVMsR0FBRyxFQUFDLE1BQU0sR0FBRSxHQUE4QjtBQUN0RCxNQUFJO0FBQ0osTUFBSSxJQUFJO0FBQ0osYUFBUztBQUFBLEVBQ2IsT0FDSTtBQUNBLGFBQVMsYUFBYSxJQUFJO0FBQUEsRUFDOUI7QUFDQSxTQUNJLGdCQUFBQyxLQUFDLFNBQ0csMEJBQUFDLE1BQUMsUUFBRyxXQUFVLE1BQUssSUFBSSxRQUFRO0FBQUE7QUFBQSxJQUFFO0FBQUEsSUFBSztBQUFBLEtBQUMsR0FDM0M7QUFHUjs7O0FDckhZLGdCQUFBQyxZQUFBOzs7QUNZUixxQkFBQUMsV0FJVSxPQUFBQyxNQUdGLFFBQUFDLGFBUFI7OztBQ2JKLFNBQVMsWUFBWTs7O0FDMkJyQixTQUFTLFdBQVcsSUFBWSxZQUFxQjtBQUNuRCxNQUFJLE9BQU8sV0FBVyxZQUFhO0FBRW5DLE1BQUksZUFBZSxTQUFTO0FBQzVCLE1BQUksU0FBUyxZQUFZO0FBRXpCLFVBQVEsSUFBSSxzQkFBc0IsRUFBRSxFQUFFO0FBR3RDLFFBQU0sVUFBVSxTQUFTLHVCQUF1QixZQUFZO0FBQzVELFFBQU0sY0FBYyxTQUFTLHVCQUF1QixpQkFBaUI7QUFDckUsUUFBTSxZQUFZLFNBQVMsdUJBQXVCLFVBQVU7QUFFNUQsV0FBUyxJQUFJLEdBQUcsSUFBSSxRQUFRLFFBQVEsS0FBSztBQUN2QyxJQUFDLFFBQVEsQ0FBQyxFQUFrQixNQUFNLFVBQVU7QUFDNUMsWUFBUSxJQUFJLGtCQUFrQixRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUU7QUFBQSxFQUMvQztBQUNBLFdBQVMsSUFBSSxHQUFHLElBQUksWUFBWSxRQUFRLEtBQUs7QUFDM0MsSUFBQyxZQUFZLENBQUMsRUFBa0IsTUFBTSxVQUFVO0FBQ2hELFlBQVEsSUFBSSx1QkFBdUIsWUFBWSxDQUFDLEVBQUUsRUFBRSxFQUFFO0FBQUEsRUFDeEQ7QUFDQSxXQUFTLElBQUksR0FBRyxJQUFJLFVBQVUsUUFBUSxLQUFLO0FBQ3pDLElBQUMsVUFBVSxDQUFDLEVBQW1CLFVBQVUsT0FBTyxpQkFBaUI7QUFDakUsWUFBUSxJQUFJLHlDQUF5QyxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUU7QUFBQSxFQUN4RTtBQUdBLFdBQVMsZUFBZSxFQUFFLEVBQUcsTUFBTSxVQUFVO0FBQzdDLFVBQVEsSUFBSSxnQkFBZ0IsRUFBRSxFQUFFO0FBQ2hDLFdBQVMsZUFBZSxNQUFNLEVBQUcsVUFBVSxJQUFJLGlCQUFpQjtBQUNoRSxVQUFRLElBQUkseUJBQXlCLE1BQU0sRUFBRTtBQUM3QyxXQUFTLGVBQWUsWUFBWSxFQUFHLE1BQU0sVUFBVTtBQUN2RCxVQUFRLElBQUksd0JBQXdCLFlBQVksRUFBRTtBQUdsRCxNQUFJLFlBQVk7QUFDZCxVQUFNLGtCQUFrQixTQUFTLGVBQWUsVUFBVTtBQUMxRCxRQUFJLGlCQUFpQjtBQUNqQixZQUFNLGFBQWEsZ0JBQWdCLHNCQUFzQixFQUFFLE1BQU0sT0FBTztBQUN4RSxZQUFNLFNBQVMsT0FBTyxjQUFjLElBQUksZ0JBQWdCLGVBQWU7QUFDdkUsWUFBTSxpQkFBaUIsYUFBYTtBQUVwQyxhQUFPLFNBQVM7QUFBQSxRQUNaLEtBQUs7QUFBQSxRQUNMLFVBQVU7QUFBQSxNQUNkLENBQUM7QUFBQSxJQUNMO0FBQUEsRUFDSjtBQVFBO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUNqQyxTQUFPLGlCQUFpQixZQUFZLENBQUMsVUFBVTtBQUM3QyxZQUFRLElBQUksMEJBQTBCO0FBQ3RDLFFBQUksTUFBTSxPQUFPO0FBQ2YsWUFBTSxNQUFNLE1BQU0sTUFBTTtBQUN4QixjQUFRLElBQUksa0JBQWtCLEdBQUcsRUFBRTtBQUNuQyxpQkFBVyxHQUFHO0FBR2QsY0FBUSxJQUFJLG9DQUFvQztBQUNoRCxZQUFNLG9CQUFvQixPQUFPLGNBQWM7QUFDL0MsYUFBTyxTQUFTLEVBQUUsS0FBSyxtQkFBbUIsVUFBVSxTQUFTLENBQUM7QUFBQSxJQUNoRSxPQUFPO0FBQ0wsY0FBUSxJQUFJLG1DQUFtQztBQUFBLElBQ2pEO0FBQUEsRUFDRixDQUFDO0FBQ0g7OztBQ3JHcVYsU0FBUyxlQUFBQyxvQkFBbUI7QUFHMVcsSUFBTSxnQkFBZ0IsTUFBTTtBQUMvQixRQUFNLFdBQVdDLGFBQVk7QUFFN0IsUUFBTSxFQUFFLGNBQWMsVUFBVSxJQUFJLFdBQVc7QUFJL0MsUUFBTSxzQkFBc0IsQ0FBQyxPQUFlLFNBQWlCO0FBR3pELGFBQVMsR0FBRyxJQUFJLFFBQVEsS0FBSyxFQUFFO0FBQUEsRUFFbkM7QUFDQSxRQUFNLDhCQUE4QixDQUFDLFlBQW9CLFNBQWlCO0FBR3RFLGFBQVMsR0FBRyxJQUFJLGVBQWUsVUFBVSxFQUFFO0FBQUEsRUFDL0M7QUFDQSxRQUFNLGdDQUFnQyxDQUFDLEVBQUUsTUFBTSxPQUFPLFdBQVcsTUFBNEQ7QUFHekgsUUFBSSxNQUFNLEdBQUcsSUFBSSxRQUFRLEtBQUs7QUFDOUIsUUFBSSxZQUFZO0FBQ1osYUFBTyxlQUFlLFVBQVU7QUFBQSxJQUNwQztBQUNBLGFBQVMsR0FBRztBQUFBLEVBQ2hCO0FBQ0EsUUFBTSx5QkFBeUIsQ0FBQyxFQUFFLE1BQU0sT0FBTyxVQUFVLFdBQVcsTUFBK0U7QUFHL0ksUUFBSSxNQUFNLEdBQUcsSUFBSSxRQUFRLEtBQUs7QUFDOUIsUUFBSSxVQUFVO0FBQ1YsYUFBTyxXQUFXLFFBQVE7QUFBQSxJQUM5QjtBQUNBLFFBQUksWUFBWTtBQUNaLGFBQU8sZUFBZSxVQUFVO0FBQUEsSUFDcEM7QUFDQSxhQUFTLEdBQUc7QUFBQSxFQUNoQjtBQUlBLFFBQU0sMkJBQTJCLENBQUMsRUFBRSxNQUFNLE9BQU8sV0FBVyxNQUEyRDtBQUNuSCxRQUFJLE1BQU0sR0FBRyxJQUFJLFFBQVEsS0FBSztBQUM5QixRQUFJLFlBQVk7QUFDWixhQUFPLGFBQWEsVUFBVTtBQUFBLElBQ2xDO0FBQ0EsYUFBUyxHQUFHO0FBQUEsRUFDaEI7QUFFQSxRQUFNLG9CQUFvQixDQUFDLFlBQW9CLFNBQWlCO0FBRTVELGFBQVMsR0FBRyxJQUFJLGFBQWEsVUFBVSxFQUFFO0FBQUEsRUFDN0M7QUFFQSxRQUFNLDhCQUE4QixNQUFNLENBQUMsRUFBRSxNQUFNLFdBQVcsTUFBNEM7QUFDdEcsaUJBQWEsSUFBSTtBQUNqQixRQUFJLE1BQU0sR0FBRyxJQUFJLGFBQWEsVUFBVTtBQUN4QyxhQUFTLEdBQUc7QUFFWixlQUFXLE1BQU07QUFDYixZQUFNLFVBQVUsU0FBUyxlQUFlLFVBQVU7QUFDbEQsVUFBSSxTQUFTO0FBQ1gsY0FBTSxpQkFBaUIsT0FBTztBQUM5QixjQUFNLGlCQUFpQixRQUFRLHNCQUFzQixFQUFFLE1BQU0sT0FBTztBQUNwRSxjQUFNLG1CQUFtQixpQkFBaUIsaUJBQWlCLElBQUksUUFBUSxlQUFlO0FBQ3RGLGVBQU8sU0FBUyxFQUFFLEtBQUssa0JBQWtCLFVBQVUsU0FBUyxDQUFDO0FBRzdELG1CQUFXLE1BQU07QUFDZix1QkFBYSxLQUFLO0FBQUEsUUFDcEIsR0FBRyxHQUFJO0FBQUEsTUFDVCxPQUFPO0FBRUwscUJBQWEsS0FBSztBQUFBLE1BQ3BCO0FBQUEsSUFDRixHQUFHLEdBQUc7QUFBQSxFQUNaO0FBR0EsU0FBTyxFQUFFLFdBQVcsNkJBQThCLG1CQUFtQixjQUFjLHFCQUFxQiwwQkFBMEIsd0JBQXdCLCtCQUErQiw0QkFBNEI7QUFDek47OztBRi9ETSxTQXVIRixZQUFBQyxXQXRISSxPQUFBQyxNQURGLFFBQUFDLGFBQUE7OztBR2JNLFNBQ3dCLE9BQUFDLE1BRHhCLFFBQUFDLGFBQUE7OztBQ0tSLHFCQUFBQyxXQUNFLE9BQUFDLE9BREYsUUFBQUMsYUFBQTs7O0FDYkosU0FBUyxhQUFBQyxrQkFBaUI7OztBQ0tkLFNBQ0ksT0FBQUMsT0FESixRQUFBQyxhQUFBOzs7QURzQlIscUJBQUFDLFdBR0ssT0FBQUMsT0FERCxRQUFBQyxjQUZKOzs7QUVyQkEsU0E0QkEsWUFBQUMsV0F6QlEsT0FBQUMsT0FIUixRQUFBQyxjQUFBOzs7QUNrQ1EsZ0JBQUFDLE9BV2dCLFFBQUFDLGNBWGhCOzs7QUN2Q1osT0FBTyxZQUFZO0FBZ0JKLHFCQUFBQyxXQUFBLE9BQUFDLGFBQUE7OztBQ2pCMlQsSUFBTSxPQUFPLENBQUMsT0FBMEI7QUFDOVcsUUFBTSxjQUFjLEdBQUcsc0JBQXNCO0FBQzdDLFFBQU0sYUFBYSxZQUFZLE1BQU0sT0FBTztBQUM1QyxRQUFNLGlCQUFpQixPQUFPO0FBRzlCLFFBQU0saUJBQWlCLGNBQWMsaUJBQWlCLElBQUksR0FBRyxlQUFlO0FBRTVFLFNBQU8sU0FBUztBQUFBLElBQ1osS0FBSztBQUFBLElBQ0wsVUFBVTtBQUFBLEVBQ2QsQ0FBQztBQUNMOzs7QUMyQlksZ0JBQUFDLGFBQUE7QUFNTCxJQUFNLGdCQUErQyxDQUFDLEVBQUMsTUFBTSxNQUFNO0FBQ3RFLE1BQUksV0FBVyxVQUFVO0FBQ3pCLFFBQU0sY0FBYyxNQUFNO0FBQ3RCLFVBQU0sZ0JBQWdCLFNBQVMsZUFBZSxRQUFRO0FBQ3RELFFBQUksZUFBZTtBQUNmLFdBQUssYUFBYTtBQUFBLElBQ3RCO0FBQUEsRUFDSjtBQUVBLFNBQ0csZ0JBQUFDLE1BQUMsU0FBSSwwQkFBQUEsTUFBQyxPQUFFLFNBQVMsYUFDWCxpQkFDTCxHQUNBO0FBRVI7QUFrQ1EsSUFBTSxzQkFBaUQsQ0FBQyxFQUFFLFVBQVUsU0FBUyxNQUFNO0FBQ3ZGLFFBQU0sY0FBYyxNQUFNO0FBQ3RCLFVBQU0sZ0JBQWdCLFNBQVMsZUFBZSxRQUFRO0FBQ3RELFFBQUksZUFBZTtBQUNmLFdBQUssYUFBYTtBQUFBLElBQ3RCO0FBQUEsRUFDSjtBQUVBLFNBQ0ksZ0JBQUFBLE1BQUMsT0FBRSxTQUFTLGFBQ1AsVUFDTDtBQUVSOzs7QUNuR1EscUJBQUFDLFlBRVEsT0FBQUMsT0FlSSxRQUFBQyxjQWpCWjs7O0FDc0NXLGdCQUFBQyxhQUFBOzs7QUMzQ1QsU0FnREYsWUFBQUMsWUFoREUsT0FBQUMsT0FpREYsUUFBQUMsY0FqREU7OztBQ0NJLFNBQTZCLE9BQUFDLE9BQTdCLFFBQUFDLGNBQUE7OztBQ0NSLHFCQUFBQyxZQUNBLE9BQUFDLE9BREEsUUFBQUMsY0FBQTs7O0FDUU0sZ0JBQUFDLE9BR0osUUFBQUMsY0FISTs7O0FDRkEsZ0JBQUFDLE9BQ0EsUUFBQUMsY0FEQTs7O0FDSEwscUJBQUFDLFlBSVMsT0FBQUMsT0FGUixRQUFBQyxjQUZEOzs7QUNBQSxxQkFBQUMsWUFFSyxPQUFBQyxPQURKLFFBQUFDLGNBREQ7OztBQ1JQLFNBQVMsWUFBWSxTQUFTLGdCQUFnQjtBQUM5QyxTQUFTLEtBQUssV0FBVztBQUN6QixPQUFPQyxZQUFXOzs7QUNDWixxQkFBQUMsWUFDQSxPQUFBQyxPQUlJLFFBQUFDLGNBTEo7OztBQ0hOLFNBQVMsYUFBQUMsWUFBVyxZQUFBQyxpQkFBZ0I7QUFDcEMsU0FBUyxlQUFBQyxvQkFBbUI7QUE2QnBCLHFCQUFBQyxZQUlnQixPQUFBQyxPQURKLFFBQUFDLGNBSFo7OztBQ3JCSSxTQUFLLE9BQUFDLE9BQUwsUUFBQUMsY0FBQTs7O0FDUlosT0FBTyxZQUFZO0FBQ25CLE9BQU9DLFlBQVc7QUFtR1osZ0JBQUFDLGFBQUE7QUEzRk4sSUFBTSxjQUFhO0FBQUEsRUFDakIsRUFBQyxPQUFPLE9BQU8sT0FBTyxXQUFVO0FBQUEsRUFDaEMsRUFBQyxPQUFPLFNBQVMsT0FBTyxRQUFPO0FBQUEsRUFDL0IsRUFBQyxPQUFPLFFBQVEsT0FBTyxRQUFPO0FBQUEsRUFDOUIsRUFBQyxPQUFPLFlBQVksT0FBTyxhQUFZO0FBQUEsRUFDdkMsRUFBQyxPQUFPLFlBQVksT0FBTyxrQkFBaUI7QUFBQSxFQUM1QyxFQUFDLE9BQU8sUUFBUSxPQUFPLE9BQU07QUFBQSxFQUM3QixFQUFDLE9BQU8sT0FBTyxPQUFPLE1BQUs7QUFFN0I7QUFHTyxTQUFTLHFCQUFxQixLQUFtQjtBQUN0RCxRQUFNLE9BQU8sU0FBUyxlQUFlLE1BQU07QUFDM0MsTUFBSSxNQUFNO0FBQ1IsU0FBSyxZQUFZO0FBQUEsRUFDbkI7QUFFQSxRQUFNLHFCQUFxQixTQUFTLHVCQUF1QixZQUFZO0FBR3ZFLFdBQVMsSUFBSSxHQUFHLElBQUksbUJBQW1CLFFBQVEsS0FBSztBQUNsRCxVQUFNLEtBQUssbUJBQW1CLENBQUM7QUFDL0Isa0JBQWMsSUFBSSxNQUFNO0FBQUEsRUFDMUI7QUFFQSxVQUFRLElBQUksT0FBTztBQUduQixXQUFTLElBQUksR0FBRyxJQUFJLG1CQUFtQixRQUFRLEtBQUs7QUFDbEQsVUFBTSxLQUFLLG1CQUFtQixDQUFDO0FBQy9CLFFBQUksYUFBYTtBQUVqQixlQUFXLFNBQVMsS0FBSztBQUN2QixjQUFRLElBQUksVUFBVSxNQUFNLEtBQUssRUFBRTtBQUNuQyxVQUFJLENBQUMsR0FBRyxVQUFVLFNBQVMsTUFBTSxLQUFLLEdBQUc7QUFDdkMscUJBQWE7QUFDYjtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBRUEsWUFBUSxJQUFJLGVBQWUsVUFBVSxFQUFFO0FBQ3ZDLFFBQUksWUFBWTtBQUNkLGlCQUFXLElBQUksTUFBTTtBQUFBLElBQ3ZCO0FBQUEsRUFDRjtBQUdBLFFBQU0sZ0JBQWdCLFNBQVMsdUJBQXVCLE1BQU07QUFDNUQsTUFBSSxjQUFjLFNBQVMsS0FBSyxNQUFNO0FBQ3BDLFlBQVEsSUFBSSxjQUFjLE1BQU07QUFDaEMsU0FBSyxZQUFZO0FBQUEsRUFDbkI7QUFDRjtBQWFBLFNBQVMsV0FBVyxTQUFrQixNQUFjO0FBQ2xELE1BQUksR0FBRyxNQUFNO0FBQ2IsU0FBTyxRQUFRLFVBQVUsTUFBTSxHQUFHO0FBQ2xDLFNBQU8sS0FBSyxNQUFNLEdBQUc7QUFDckIsT0FBSyxJQUFJLEdBQUcsSUFBSSxLQUFLLFFBQVEsS0FBSztBQUNoQyxRQUFJLEtBQUssUUFBUSxLQUFLLENBQUMsQ0FBQyxLQUFLLElBQUk7QUFBQyxjQUFRLGFBQWEsTUFBTSxLQUFLLENBQUM7QUFBQSxJQUFFO0FBQUEsRUFDdkU7QUFDRjtBQUVBLFNBQVMsY0FBYyxTQUFrQixNQUFjO0FBQ3JELE1BQUksR0FBRyxNQUFNO0FBQ2IsU0FBTyxRQUFRLFVBQVUsTUFBTSxHQUFHO0FBQ2xDLFNBQU8sS0FBSyxNQUFNLEdBQUc7QUFDckIsT0FBSyxJQUFJLEdBQUcsSUFBSSxLQUFLLFFBQVEsS0FBSztBQUNoQyxXQUFPLEtBQUssUUFBUSxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUk7QUFDakMsV0FBSyxPQUFPLEtBQUssUUFBUSxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFBQSxJQUN0QztBQUFBLEVBQ0Y7QUFDQSxVQUFRLFlBQVksS0FBSyxLQUFLLEdBQUc7QUFDbkM7QUFXQSxJQUFNLGFBQU4sY0FBeUJDLE9BQU0sVUFBVTtBQUFBLEVBQ3ZDLFFBQVE7QUFBQSxJQUNOLGdCQUFnQjtBQUFBLEVBQ2xCO0FBQUEsRUFDQSxlQUFlLENBQUMsbUJBQXdCO0FBRXZDLFNBQUs7QUFBQSxNQUFTLEVBQUUsZUFBZTtBQUFBLE1BQUcsTUFDbEMsUUFBUSxJQUFJLG9CQUFvQixLQUFLLE1BQU0sY0FBYztBQUFBLElBRXhEO0FBQ0MseUJBQXFCLGNBQWM7QUFBQSxFQUN0QztBQUFBLEVBQ0EsU0FBUztBQUNQLFVBQU0sRUFBRSxlQUFlLElBQUksS0FBSztBQUVoQyxXQUNFLGdCQUFBQztBQUFBLE1BQUM7QUFBQTtBQUFBLFFBQ0MsT0FBTztBQUFBLFFBQ1AsVUFBVSxLQUFLO0FBQUEsUUFDZixTQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7QUFBQSxRQUM3QixXQUFVO0FBQUEsUUFDVixpQkFBZ0I7QUFBQTtBQUFBLElBQ2xCO0FBQUEsRUFFSjtBQUNGOzs7QUN0SGdCLFNBRUksT0FBQUMsT0FGSixRQUFBQyxjQUFBOzs7QUNYSixnQkFBQUMsYUFBQTs7O0FDWWEscUJBQUFDLFlBQUEsT0FBQUMsT0FNWCxRQUFBQyxjQU5XOzs7QUNUckIsU0FFRSxPQUFBQyxPQUZGLFFBQUFDLGNBQUE7OztBQ0ZZLGdCQUFBQyxPQUNBLFFBQUFDLGNBREE7OztBVGNKLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QVViQSxnQkFBQUMsYUFBQTs7O0FDS1IscUJBQUFDLFlBRUksT0FBQUMsT0FERixRQUFBQyxjQURGOzs7QUNQSSxTQUNFLE9BQUFDLE9BREYsUUFBQUMsY0FBQTtBQWFELFNBQVMsTUFBTSxFQUFDLEdBQUcsRUFBQyxHQUFrQztBQUMzRCxTQUNHLGdCQUFBQyxPQUFDLFNBQUksV0FBVSxTQUNkO0FBQUEsb0JBQUFDLE1BQUMsU0FBSSxXQUFVLG1CQUNiLDBCQUFBQSxNQUFDLFNBQUksV0FBVSxPQUNkLGFBQ0QsR0FDRjtBQUFBLElBQ0EsZ0JBQUFBLE1BQUMsU0FBSSxXQUFVLG1CQUNiLDBCQUFBQSxNQUFDLFNBQUksV0FBVSxPQUNkLGFBQ0QsR0FDRjtBQUFBLEtBQ0Q7QUFFTDs7O0FDM0JrQixTQXVFcUIsWUFBQUMsWUF2RXJCLE9BQUFDLE9BaUdBLFFBQUFDLGNBakdBOzs7QUNMbEIsU0FBUyxXQUFXO0FBRXBCLFNBQVMsV0FBVztBQUNwQixTQUFTLFNBQVMsU0FBUyxTQUFTLFFBQU8sWUFBWSxZQUFZLGVBQWUsYUFBYSxPQUFPLHlCQUF5QjtBQXFFekgsZ0JBQUFDLGFBQUE7QUEzQ04sUUFBUTtBQUFBLEVBQVM7QUFBQSxFQUFZO0FBQUEsRUFBUztBQUFBLEVBQVE7QUFBQSxFQUM1QztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFLOzs7QUNuQmdCLHFCQUFBQyxZQUEwRCxPQUFBQyxPQUExRCxRQUFBQyxjQUFBO0FBSmhCLElBQU0sY0FBMEM7QUFBQSxFQUNuRDtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQSxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXdELGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF1RyxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBdUYsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQTRELGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxNQUF3QyxnQkFBQUEsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsTUFBeUIsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXdGLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsQ0FBRztBQUFBLEVBQ3hyQjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUEsTUFBQUQsWUFBQSxFQUFFLHNGQUF3RSxHQUFJLGdCQUFBRSxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQStFLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUE0RyxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBZ0wsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQWdLLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsQ0FBRztBQUFBLEVBQy91QjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUEyRSxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBeUssZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQTBFLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUE4SSxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBdUYsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxDQUFHO0FBQUEsRUFDMXRCO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXVCLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUE4RyxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBeUYsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE1BQXFDLGdCQUFBQSxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF3RSxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFLGdCQUFBQSxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUFDLGdCQUFBQyxNQUFDLE9BQUUsd0JBQVU7QUFBQSxNQUFJO0FBQUEsTUFBZ0QsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE9BQUMsQ0FBRztBQUFBLEVBQzNuQjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF1QixnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBNkYsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQSxNQUFBRCxZQUFBLEVBQUUsa05BQW9NLEdBQUksZ0JBQUFFLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBNEcsZ0JBQUFDLE1BQUMsT0FBRSxzQ0FBd0I7QUFBQSxNQUFJO0FBQUEsTUFBRSxnQkFBQUEsTUFBQyxPQUFFLHFDQUF1QjtBQUFBLE1BQUk7QUFBQSxNQUFLLGdCQUFBQSxNQUFDLE9BQUUsb0NBQXNCO0FBQUEsTUFBSTtBQUFBLE9BQTRCLEdBQUksZ0JBQUFBLE1BQUFELFlBQUEsRUFBRSx1S0FBeUosQ0FBRztBQUFBLEVBQ2h5QjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLGdEQUFrQyxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsMEhBQTRHLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxrRkFBb0UsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHdHQUEwRixHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsc0tBQXdKLENBQUc7QUFBQSxFQUNwZjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHVEQUF5QyxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsd0hBQTBHLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxxR0FBdUYsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHlGQUEyRSxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsaUZBQW1FLENBQUc7QUFBQSxFQUN4YTtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsQ0FBQyxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSx5SUFBMkgsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLG9GQUFzRSxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsa0lBQW9ILEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSx1RkFBeUUsQ0FBRztBQUFBLEVBQzlhO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsc0NBQXdCLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSw2R0FBK0YsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLDRGQUE4RSxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsNkdBQStGLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxzR0FBd0YsQ0FBRztBQUFBLEVBQzVhO0FBQ0o7OztBQ25Cc0IsU0EwQ29DLFlBQUFHLFlBMUN1UyxPQUFBQyxPQUEzVSxRQUFBQyxjQUFBO0FBcEJmLElBQU0sV0FBb0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWdCN0M7QUFBQTtBQUFBLElBRUksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxnQkFBQUEsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUF3VSxnQkFBQUQsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsTUFBaVAsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE1BQXFOLGdCQUFBQSxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxNQUEwRCxnQkFBQUEsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsT0FBRTtBQUFBLElBQ3Y4QixVQUFVO0FBQUEsTUFDTjtBQUFBLFFBQ0ksT0FBTztBQUFBO0FBQUEsUUFDUCxNQUFNLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsVUFBa2YsZ0JBQUFELE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsVUFBRTtBQUFBLFdBQStCLEdBQUssd0NBQXdDO0FBQUEsTUFDdm1CO0FBQUEsTUFDQTtBQUFBLFFBQ0ksT0FBTztBQUFBO0FBQUEsUUFDUCxNQUFNLENBQUMsaUVBQWdFLGtKQUFrSixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxVQUE2UyxnQkFBQUQsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxVQUFFO0FBQUEsV0FBQyxHQUFNLGdDQUFnQyx1Q0FBdUM7QUFBQSxNQUN0bkI7QUFBQSxNQUNBO0FBQUEsUUFDSSxPQUFPO0FBQUE7QUFBQSxRQUNQLE1BQU0sQ0FBQyxpRUFBaUUsOEZBQTZGLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFVBQTRTLGdCQUFBRCxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLFdBQUUsR0FBSyxnQ0FBK0IsdUNBQXVDO0FBQUEsTUFDOWpCO0FBQUEsTUFDQTtBQUFBLFFBQ0ksT0FBTztBQUFBO0FBQUEsUUFDUCxNQUFNLENBQUMsbUNBQWtDLG9IQUFtSCxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxVQUErSSxnQkFBQUQsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxXQUFFLEdBQUssZ0NBQStCLDRDQUE0QztBQUFBLE1BQzdaO0FBQUEsSUFDSjtBQUFBLEVBQ0o7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNO0FBQUE7QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBcVksZ0JBQUFELE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE9BQWtFO0FBQUEsSUFDbmYsVUFBVTtBQUFBLE1BQ047QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLDBEQUF5RCx1REFBc0QsMkRBQTBELGlFQUFnRSwyQ0FBMkM7QUFBQSxNQUMvUjtBQUFBLE1BQ0E7QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLHNFQUFxRSx1REFBc0Qsd0ZBQXVGLDhEQUE2RCxvR0FBbUcsc0JBQXNCO0FBQUEsTUFDblo7QUFBQSxJQUNKO0FBQUEsRUFDSjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLE1BQ047QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLG9DQUFtQyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxVQUF5RCxnQkFBQUMsTUFBQyxPQUFFLHNDQUF3QjtBQUFBLFVBQUk7QUFBQSxXQUFZLEdBQUksbUhBQWtILHdHQUF1Ryw0Q0FBNEM7QUFBQSxNQUM3WjtBQUFBLE1BQ0E7QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLG1DQUFrQyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxVQUF5RCxnQkFBQUMsTUFBQyxPQUFFLHNDQUF3QjtBQUFBLFVBQUk7QUFBQSxXQUFZLEdBQUksa0hBQWlILHNGQUFxRix1Q0FBdUM7QUFBQSxNQUNwWTtBQUFBLElBQ0o7QUFBQSxFQUNKO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxjQUFjLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQXNlLGdCQUFBRCxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxPQUFpTTtBQUFBLElBQ250QixVQUFVO0FBQUEsTUFDTjtBQUFBLFFBQ0ksT0FBTztBQUFBO0FBQUEsUUFDUCxNQUFNLENBQUMsdUdBQXNHLHVFQUFzRSxzRkFBcUYsbURBQWtELHVDQUF1QztBQUFBLE1BQ3JXO0FBQUEsSUFFSjtBQUFBLEVBQ0o7QUFDSjs7O0FDcEYwQixnQkFBQUUsT0Fpc0NYLFFBQUFDLGNBanNDVzs7O0FDZjFCLFNBQWdCLFlBQUFDLFdBQVUsYUFBQUMsa0JBQWlCO0FBQzNDLE9BQU8saUJBQWlCO0FBZ0NSLHFCQUFBQyxZQUNXLE9BQUFDLE9BRFgsUUFBQUMsY0FBQTtBQVpoQixTQUFTLFlBQVksT0FBK0M7QUFFaEUsTUFBSSxTQUFTLE1BQU0sU0FBUyxHQUFHO0FBRTNCLFVBQU0saUJBQWlCO0FBQ3ZCLFFBQUksZUFBZSxLQUFLLEtBQUssR0FBRztBQUM1QixZQUFNLE1BQU0sTUFBTSxNQUFNLGNBQWMsRUFBRSxJQUFJLE9BQUssRUFBRSxLQUFLLENBQUM7QUFDekQsWUFBTSxRQUFRLElBQUksQ0FBQztBQUNuQixZQUFNLE1BQU0sSUFBSSxDQUFDO0FBR2pCLGFBQ0ksZ0JBQUFBLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsUUFDUyxnQkFBQUMsTUFBQyxVQUFLLFVBQVMsb0JBQW9CLGlCQUFNO0FBQUEsUUFBTztBQUFBLFFBQUMsZ0JBQUFBLE1BQUMsVUFBSyxVQUFTLGtCQUFrQixlQUFJO0FBQUEsU0FDakc7QUFBQSxJQUVSLFdBQVcsZUFBZSxLQUFLLEtBQUssR0FBRztBQUVuQyxhQUNJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLFFBQ0ssZ0JBQUFDLE1BQUMsVUFBSyxVQUFTLG9CQUFvQixpQkFBTTtBQUFBLFNBQ2hEO0FBQUEsSUFFUixPQUFPO0FBRUgsY0FBUSxLQUFLLDJDQUEyQyxLQUFLLDBCQUEwQjtBQUN2RixhQUFPO0FBQUEsSUFDWDtBQUFBLEVBQ0osT0FBTztBQUNILFlBQVEsS0FBSyw2QkFBNkI7QUFDMUMsV0FBTztBQUFBLEVBQ1g7QUFDSjtBQUdPLElBQU0sZUFBNEMsQ0FBQyxFQUFFLGVBQUFFLGdCQUFnQixRQUFPLE1BQU07QUFDdkYsUUFBTSxDQUFDLGVBQWUsZ0JBQWdCLElBQUlMLFVBQXFCLENBQUMsQ0FBQztBQUdqRSxFQUFBQyxXQUFVLE1BQU07QUFDZCxZQUFRLElBQUksNEJBQTRCSSxjQUFhO0FBRXJELFFBQUk7QUFDRixZQUFNLGFBQXlCLENBQUM7QUFDaEMsTUFBQUEsZUFBYyxRQUFRLENBQUMsV0FBVztBQUVoQyxjQUFNLFNBQVMsWUFBWSxPQUFPLE1BQU07QUFFeEMsbUJBQVcsS0FBSyxHQUFHLE1BQU07QUFBQSxNQUMzQixDQUFDO0FBQ0QsdUJBQWlCLFVBQVU7QUFBQSxJQUU3QixTQUFTLE9BQU87QUFDZixjQUFRLE1BQU0sMEJBQTBCLEtBQUs7QUFDNUMsWUFBTSxpRkFBaUZBLGNBQWE7QUFBQSxJQUN0RztBQUFBLEVBQ0YsR0FBRyxDQUFDQSxjQUFhLENBQUM7QUFHbEIsUUFBTSxnQkFBZ0IsQ0FBQyxZQUE0QjtBQUNqRCxZQUFRLElBQUksbUJBQW1CLE9BQU87QUFHdEMsVUFBTSxpQkFBaUIsUUFDbEIsUUFBUSxjQUFjLEdBQUcsRUFDekIsUUFBUSxVQUFVLEVBQUUsRUFDcEIsS0FBSztBQUVWLFlBQVEsSUFBSSwyQkFBMkIsY0FBYztBQUdyRCxVQUFNLGFBQWEsZUFBZSxNQUFNLEdBQUcsRUFBRSxJQUFJLFlBQVUsT0FBTyxLQUFLLENBQUM7QUFDeEUsWUFBUSxJQUFJLHNCQUFzQixVQUFVO0FBRzVDLFVBQU0sYUFBYTtBQUduQixVQUFNLG1CQUFtQixXQUFXLElBQUksQ0FBQyxRQUFRLFVBQVU7QUFDdkQsY0FBUSxJQUFJLHNCQUFzQixRQUFRLENBQUMsS0FBSyxNQUFNO0FBR3RELFlBQU0sQ0FBQyxNQUFNLFVBQVUsSUFBSSxPQUFPLFNBQVMsR0FBRyxJQUMxQyxPQUFPLE1BQU0sR0FBRyxFQUFFLElBQUksVUFBUSxLQUFLLEtBQUssQ0FBQyxJQUN6QyxDQUFDLElBQUksTUFBTTtBQUVmLGNBQVEsSUFBSSxlQUFlLElBQUksb0JBQW9CLFVBQVUsR0FBRztBQUdoRSxZQUFNLFdBQVcsV0FBVyxNQUFNLEdBQUcsRUFBRSxJQUFJLE9BQUssRUFBRSxDQUFDLElBQUksR0FBRyxFQUFFLEtBQUssR0FBRztBQUNwRSxjQUFRLElBQUksaUJBQWlCLFVBQVUsT0FBTyxRQUFRLEdBQUc7QUFFekQsWUFBTSxnQkFBZ0IsR0FBRyxJQUFJLEtBQUssUUFBUSxHQUFHLEtBQUs7QUFDbEQsY0FBUSxJQUFJLG9CQUFvQixhQUFhLEdBQUc7QUFFaEQsYUFBTztBQUFBLElBQ1gsQ0FBQztBQUVELFlBQVEsSUFBSSwyQ0FBMkMsZ0JBQWdCO0FBR3ZFLFVBQU0sU0FBUyxpQkFBaUIsTUFBTSxHQUFHLFVBQVUsRUFBRSxLQUFLLElBQUksS0FDOUMsaUJBQWlCLFNBQVMsYUFBYSxZQUFZO0FBRW5FLFlBQVEsSUFBSSxpQkFBaUIsTUFBTTtBQUNuQyxXQUFPO0FBQUEsRUFDWDtBQUVFLE1BQUksZUFBZTtBQUVuQixNQUFJLFNBQVM7QUFDWCxtQkFBZSxJQUFJLE9BQU87QUFBQSxFQUM1QjtBQUdBLFFBQU0saUJBQWlCLENBQUMsT0FBaUIsVUFBa0I7QUFJekQsVUFBTSxpQkFBaUIsUUFBUTtBQUMvQixVQUFNLFlBQVksTUFBTSxVQUFVLFlBQVk7QUFDOUMsVUFBTSxZQUFZLE1BQU07QUFHeEIsWUFBUSxXQUFXO0FBQUEsTUFDakIsS0FBSztBQUNILGVBQ0UsZ0JBQUFELE9BQUMsUUFBZSxRQUFPLDJCQUEwQixNQUFLLG1CQUFrQixVQUFTLG1CQUFrQixJQUFJLFFBQVEsY0FBYyxHQUFHLFlBQVksSUFHekk7QUFBQSx3QkFBYyxVQUFVLFVBQVUsVUFBVSxVQUFVLEVBQUU7QUFBQSxVQUFFO0FBQUEsVUFDckQsZ0JBQUFBLE9BQUMsVUFBSyxVQUFTLGVBQWU7QUFBQSxzQkFBVSxNQUFNLFFBQVEsVUFBVSxFQUFFLEVBQUUsUUFBUSxPQUFPLEdBQUcsRUFBRSxLQUFLO0FBQUEsWUFBRTtBQUFBLGFBQUM7QUFBQSxVQUFPO0FBQUEsVUFDdkcsZ0JBQUFELE1BQUMsT0FBRSxVQUFTLG9CQUFtQixRQUFPLHVCQUF1QixvQkFBVSxTQUFRO0FBQUEsVUFBSTtBQUFBLFVBQ25GLGdCQUFBQSxNQUFDLE9BQUUsVUFBUyxlQUFjLFFBQU8sb0JBQW9CLG9CQUFVLFFBQU87QUFBQSxVQUMzRSxZQUFZLFVBQVUsS0FBSyxLQUFLLGdCQUFBQSxNQUFDLFVBQU0sc0JBQVksVUFBVSxLQUFLLEdBQUU7QUFBQSxVQUNwRSxVQUFVLFFBQ1QsZ0JBQUFDLE9BQUMsVUFBSztBQUFBO0FBQUEsWUFBTyxnQkFBQUQsTUFBQyxVQUFLLFVBQVMsd0JBQXVCLFVBQVMsYUFBWSxVQUFVLFVBQVUsTUFBTyxvQkFBVSxNQUFLO0FBQUEsWUFBTztBQUFBLGFBQUU7QUFBQSxVQUU1SCxVQUFVLE9BQ1QsZ0JBQUFDLE9BQUMsVUFBSztBQUFBO0FBQUEsWUFBTSxnQkFBQUEsT0FBQyxPQUFFLFdBQVUsT0FBTSxNQUFNLG1CQUFtQixVQUFVLEdBQUcsSUFBSTtBQUFBO0FBQUEsY0FBTSxVQUFVO0FBQUEsZUFBSTtBQUFBLGFBQUk7QUFBQSxhQVo1RixLQWNUO0FBQUEsTUFHSixLQUFLO0FBQ0gsZUFDRSxnQkFBQUEsT0FBQyxRQUFlLFFBQU8sZUFBYyxNQUFLLG1CQUFrQixVQUFTLG1CQUFrQixJQUFJLFFBQVEsY0FBYyxJQUU5RztBQUFBLHdCQUFjLFVBQVUsVUFBVSxVQUFVLFVBQVUsRUFBRTtBQUFBLFVBRXhELFVBQVUsUUFDVCxnQkFBQUEsT0FBQyxVQUFLLFVBQVMsZUFBYztBQUFBO0FBQUEsWUFBTyxVQUFVLE1BQU0sUUFBUSxVQUFVLEVBQUUsRUFBRSxRQUFRLE9BQU8sR0FBRyxFQUFFLEtBQUs7QUFBQSxZQUFFO0FBQUEsYUFBQyxJQUNwRyxVQUFVLFlBQ1osZ0JBQUFBLE9BQUMsVUFBSyxVQUFTLGVBQWM7QUFBQTtBQUFBLFlBQU8sVUFBVSxVQUFVLFFBQVEsVUFBVSxFQUFFLEVBQUUsUUFBUSxPQUFPLEdBQUcsRUFBRSxLQUFLO0FBQUEsWUFBRTtBQUFBLGFBQUMsSUFFMUcsUUFBUSxLQUFLLHlDQUF5QyxjQUFjLEVBQUU7QUFBQSxVQUd2RSxVQUFVLGFBQ1QsZ0JBQUFBLE9BQUMsT0FBRSxVQUFTLG9CQUFtQixRQUFPLHVCQUFzQjtBQUFBO0FBQUEsWUFDbkQsVUFBVTtBQUFBLGFBQ25CO0FBQUEsVUFHRCxVQUFVLFFBQ1QsZ0JBQUFBLE9BQUMsVUFBSztBQUFBO0FBQUEsWUFDRyxnQkFBQUQsTUFBQyxVQUFLLFVBQVMsd0JBQXVCLFVBQVMsYUFBWSxVQUFVLFVBQVUsTUFDbkYsb0JBQVUsTUFDYjtBQUFBLFlBQU87QUFBQSxhQUNUO0FBQUEsVUFFRCxVQUFVLFFBQ1QsZ0JBQUFDLE9BQUMsVUFBSyxVQUFTLFFBQU87QUFBQTtBQUFBLFlBQU8sVUFBVTtBQUFBLGFBQUs7QUFBQSxhQTFCdkMsS0E2QlQ7QUFBQSxNQUdKLEtBQUs7QUFDSCxlQUNFLGdCQUFBQSxPQUFDLFFBQWUsUUFBTyxrQkFBaUIsTUFBSyxtQkFBa0IsVUFBUyxtQkFBa0IsSUFBSSxRQUFRLGNBQWMsSUFFaEg7QUFBQSxvQkFBVSxVQUFVLFVBQVUsVUFBVTtBQUFBLFVBRXpDLFVBQVUsU0FDVCxnQkFBQUEsT0FBQyxVQUFLLFVBQVMsZUFBYztBQUFBO0FBQUEsWUFBUSxVQUFVLE1BQU0sUUFBUSxVQUFVLEVBQUUsRUFBRSxRQUFRLE9BQU8sR0FBRyxFQUFFLEtBQUs7QUFBQSxZQUFFO0FBQUEsYUFBQztBQUFBLFVBR3hHLFVBQVUsZ0JBQ1QsZ0JBQUFBLE9BQUMsT0FBRSxVQUFTLG9CQUFtQixRQUFPLHVCQUFzQjtBQUFBO0FBQUEsWUFBTyxVQUFVO0FBQUEsYUFBYTtBQUFBLFVBRzNGLFVBQVUsUUFDVCxnQkFBQUEsT0FBQyxVQUFLO0FBQUE7QUFBQSxZQUFPLGdCQUFBRCxNQUFDLFVBQUssVUFBUyx3QkFBdUIsVUFBUyxhQUFZLFVBQVUsVUFBVSxNQUFPLG9CQUFVLE1BQUs7QUFBQSxZQUFPO0FBQUEsYUFBRTtBQUFBLGFBYnRILEtBZVQ7QUFBQSxNQUlKLEtBQUs7QUFDSCxlQUNFLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSwwQkFBQUQsTUFBQyxVQUFNLHdCQUFjLFVBQVUsVUFBVSxFQUFFLEdBQUU7QUFBQSxVQUFPO0FBQUEsVUFDcEQsZ0JBQUFBLE1BQUMsVUFBTSxvQkFBVSxPQUFNO0FBQUEsVUFBTztBQUFBLFVBQUssZ0JBQUFBLE1BQUMsT0FBRyxvQkFBVSxXQUFVO0FBQUEsVUFBSTtBQUFBLFVBQy9ELGdCQUFBQSxNQUFDLE9BQUcsb0JBQVUsUUFBTztBQUFBLFVBQUk7QUFBQSxVQUFHLFVBQVU7QUFBQSxVQUFLO0FBQUEsYUFIcEMsS0FJVDtBQUFBLE1BR0osS0FBSztBQUNILGVBQ0UsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLDBCQUFBRCxNQUFDLFVBQU0sd0JBQWMsVUFBVSxVQUFVLEVBQUUsR0FBRTtBQUFBLFVBQU87QUFBQSxVQUNwRCxnQkFBQUEsTUFBQyxVQUFNLG9CQUFVLE9BQU07QUFBQSxVQUFPO0FBQUEsVUFBZSxVQUFVO0FBQUEsVUFBTztBQUFBLFVBQUcsVUFBVTtBQUFBLFVBQUs7QUFBQSxhQUZ6RSxLQUdUO0FBQUEsTUFHSjtBQUNFLGdCQUFRLEtBQUssdUJBQXVCLFNBQVMsRUFBRTtBQUMvQyxlQUFPLGdCQUFBQyxPQUFDLFFBQWU7QUFBQTtBQUFBLFVBQXFCO0FBQUEsYUFBNUIsS0FBc0M7QUFBQSxJQUMxRDtBQUFBLEVBQ0Y7QUFFQSxTQUNFLGdCQUFBRCxNQUFDLFNBQ0Usd0JBQWMsV0FBVyxJQUN4QixnQkFBQUEsTUFBQyxPQUFFLHFDQUF1QixJQUUxQixnQkFBQUEsTUFBQyxRQUNFLHdCQUFjLElBQUksQ0FBQyxPQUFPLFVBQVUsZUFBZSxPQUFPLEtBQUssQ0FBQyxHQUNuRSxHQUVKO0FBRUo7QUFFQSxJQUFPLHNCQUFROzs7QUMzUEwsZ0JBQUFHLGFBQUE7OztBQ3FCTSxTQUFrRCxPQUFBQyxPQUFsRCxRQUFBQyxjQUFBO0FBK1RmLElBQUksb0JBQW1CO0FBQUEsRUFDcEI7QUFBQSxJQUNJLE1BQU0scUJBQXFCLFNBQVMsQ0FBQyxDQUFDO0FBQUEsSUFDdEMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLElBQ1QsTUFBTTtBQUFBLEVBRVY7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHFCQUFxQixTQUFTLENBQUMsQ0FBRTtBQUFBLElBQ3ZDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSxxQkFBcUIsU0FBUyxDQUFDLENBQUU7QUFBQSxJQUN2QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0scUJBQXFCLFNBQVMsQ0FBQyxDQUFFO0FBQUEsSUFDdkMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFDSjtBQUlBLElBQUksdUJBQXVCO0FBQUEsRUFDdkI7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFDO0FBQUEsSUFDNUMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLElBQ1QsTUFBTTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBQztBQUFBLElBQzVDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUM7QUFBQSxJQUM1QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFDO0FBQUEsSUFDNUMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBQztBQUFBLElBQzVDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUM7QUFBQSxJQUM1QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFDO0FBQUEsSUFDNUMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBRTtBQUFBLElBQzdDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUU7QUFBQSxJQUM3QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUVKO0FBS0EsU0FBUyx3QkFBd0IsTUFBdUI7QUFDcEQsTUFBSSxjQUE2QixDQUFDO0FBQ2xDLFdBQVMsUUFBUSxHQUFHLFFBQVEsS0FBSyxhQUFhLFFBQVEsU0FBUztBQUN2RCxnQkFBWTtBQUFBLE1BQ1IsZ0JBQUFDLE1BQUMsUUFBZ0IsZUFBSyxhQUFhLEtBQUssS0FBL0IsS0FBaUM7QUFBQSxJQUM5QztBQUFBLEVBQ1I7QUFDQSxTQUNJLGdCQUFBQyxPQUFDLFNBQ0c7QUFBQSxvQkFBQUQsTUFBQyxNQUFHLElBQUksR0FBRyxLQUFLLElBQUksUUFBUSxNQUFNLEtBQUssTUFBSztBQUFBLElBQzVDLGdCQUFBQyxPQUFDLFNBQUksV0FBVSxPQUNYO0FBQUEsc0JBQUFELE1BQUMsU0FBSSxXQUFVLFNBQ1gsMEJBQUFBLE1BQUMsU0FBSSxXQUFVLHVCQUNYLDBCQUFBQSxNQUFDLFNBQUksS0FBSyxLQUFLLFNBQVMsV0FBVSxlQUFhLEdBQ25ELEdBQ0o7QUFBQSxNQUNBLGdCQUFBQSxNQUFDLFNBQUksV0FBVSxPQUNYLDBCQUFBQSxNQUFDLFFBQUksdUJBQVksR0FDckI7QUFBQSxPQUNKO0FBQUEsS0FHSjtBQUVSO0FBR0EsU0FBUyxxQkFBcUIsTUFBb0I7QUFDOUMsTUFBSSxjQUE4QixDQUFDO0FBQ25DLFdBQVMsUUFBUSxHQUFHLFFBQVEsS0FBSyxTQUFTLFFBQVEsU0FBUztBQUN2RCxRQUFJLFdBQTJCLENBQUM7QUFDaEMsYUFBUyxJQUFJLEdBQUcsSUFBSSxLQUFLLFNBQVMsS0FBSyxFQUFFLEtBQUssUUFBUSxLQUFLO0FBQ3ZELGVBQVM7QUFBQSxRQUNMLGdCQUFBQSxNQUFDLFFBQVksZUFBSyxTQUFTLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBL0IsQ0FBaUM7QUFBQSxNQUM5QztBQUFBLElBRUo7QUFDQSxnQkFBWTtBQUFBLE1BQ1IsZ0JBQUFDLE9BQUMsU0FBb0IsV0FBVSxRQUMzQjtBQUFBLHdCQUFBRCxNQUFDLE1BQUcsTUFBTSxLQUFLLFNBQVMsS0FBSyxFQUFFLE9BQU07QUFBQSxRQUNyQyxnQkFBQUEsTUFBQyxRQUFnQixzQkFBUixLQUFpQjtBQUFBLFdBRnBCLFFBQU0sR0FHaEI7QUFBQSxJQUNKO0FBQUEsRUFFSjtBQUNBLFNBQ0ksZ0JBQUFDLE9BQUMsU0FDRztBQUFBLG9CQUFBRCxNQUFDLE1BQUcsSUFBSSxHQUFHLEtBQUssSUFBSSxRQUFRLE1BQU0sS0FBSyxNQUFLO0FBQUEsSUFDNUMsZ0JBQUFDLE9BQUMsU0FBSSxXQUFVLE9BQ1g7QUFBQSxzQkFBQUQsTUFBQyxTQUFJLFdBQVUsU0FDWCwwQkFBQUEsTUFBQyxTQUFJLFdBQVUsdUJBQ1gsMEJBQUFBLE1BQUMsU0FBSSxLQUFLLEtBQUssU0FBUyxXQUFVLGVBQWEsR0FDbkQsR0FDSjtBQUFBLE1BQ0EsZ0JBQUFBLE1BQUMsU0FBSSxXQUFVLE9BQ1YsZUFBSyxjQUNWO0FBQUEsT0FDSjtBQUFBLElBQ0EsZ0JBQUFBLE1BQUMsU0FBSSxXQUFVLE9BQ2QsdUJBQ0Q7QUFBQSxLQUNKO0FBRVI7OztBQ3hlQSxTQUFTLGFBQUFFLFlBQVcsWUFBQUMsaUJBQWdCO0FBcUU5QixxQkFBQUMsWUFDRSxPQUFBQyxPQVljLFFBQUFDLGNBYmhCOzs7QUNoRUUsZ0JBQUFDLGFBQUE7OztBQ0FLLGdCQUFBQyxhQUFBO0FBSE4sU0FBUyxjQUFjLEVBQUMsS0FBSyxVQUFVLElBQUcsR0FBK0M7QUFDNUYsUUFBTSxFQUFDLHlCQUF3QixJQUFJLGNBQWM7QUFDakQsU0FDSSxnQkFBQUEsTUFBQyxTQUFJLDBCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLHlCQUF5QixFQUFDLE1BQU0sSUFBSSxPQUFPLEtBQUssWUFBWSxTQUFRLENBQUMsR0FBSSxlQUFJLEdBQUk7QUFFaEg7OztBQ0ZVLGdCQUFBQyxhQUFBOzs7QUNBQSxnQkFBQUMsYUFBQTs7O0FDQUEsZ0JBQUFDLGFBQUE7OztBQ0FBLGdCQUFBQyxhQUFBOzs7QUNBQSxnQkFBQUMsYUFBQTs7O0FDQUEsZ0JBQUFDLGFBQUE7OztBQ3FCSixxQkFBQUMsWUFHSSxPQUFBQyxPQVNjLFFBQUFDLGNBWmxCOzs7QUNuQkYscUJBQUFDLFlBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUNHRSxnQkFBQUMsT0FNQSxRQUFBQyxjQU5BOzs7QUNSRSxnQkFBQUMsYUFBQTs7O0FDY0ksZ0JBQUFDLE9BR1ksUUFBQUMsY0FIWjs7O0FDQ1IscUJBQUFDLFlBRUssT0FBQUMsT0F3RFcsUUFBQUMsY0ExRGhCOzs7QUNBQSxxQkFBQUMsWUFHMkIsT0FBQUMsT0FEekIsUUFBQUMsY0FGRjs7O0FDVlksZ0JBQUFDLE9BQ0EsUUFBQUMsY0FEQTs7O0FDS0osZ0JBQUFDLE9BRUEsUUFBQUMsY0FGQTs7O0FDUEYsZ0JBQUFDLGFBQUE7QUFISyxTQUFSLHlCQUF5QztBQUM1QyxTQUNJLGdCQUFBQSxNQUFDLFNBQ0MsMEJBQUFBLE1BQUMsdUJBQWEsZUFBOEIsR0FDOUM7QUFFUjtBQUdBLElBQU0sZ0JBQWdCO0FBQUEsRUFDdEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQXdCRztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWlCQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQW9CQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFxQko7OztBQ3pGVSxnQkFBQUMsYUFBQTtBQUhLLFNBQVIsMEJBQTBDO0FBQzdDLFNBQ0ksZ0JBQUFBLE1BQUMsU0FDQywwQkFBQUEsTUFBQyx1QkFBYSxlQUFlQyxnQkFBZSxHQUM5QztBQUVSO0FBR0EsSUFBTUEsaUJBQWdCO0FBQUEsRUFDbEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQTBDSjs7O0FDakRVLGdCQUFBQyxhQUFBO0FBSEssU0FBUixzQkFBc0M7QUFDekMsU0FDSSxnQkFBQUEsTUFBQyxTQUNDLDBCQUFBQSxNQUFDLHVCQUFhLGVBQWVDLGdCQUFlLEdBQzlDO0FBRVI7QUFHQSxJQUFNQSxpQkFBZ0I7QUFBQSxFQUN0QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFnQkc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBaUJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVIOzs7QUN0RVUsZ0JBQUFDLGFBQUE7QUFISyxTQUFSLGdCQUFnQztBQUNuQyxTQUNJLGdCQUFBQSxNQUFDLFNBQ0MsMEJBQUFBLE1BQUMsdUJBQWEsZUFBZUMsZ0JBQWUsR0FDOUM7QUFFUjtBQUdBLElBQU1BLGlCQUFnQjtBQUFBLEVBQ3RCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQXNCRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFzQkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFzQkY7OztBQ3pFVSxnQkFBQUMsYUFBQTtBQUhLLFNBQVIsb0JBQW9DO0FBQ3ZDLFNBQ0ksZ0JBQUFBLE1BQUMsU0FDQywwQkFBQUEsTUFBQyx1QkFBYSxlQUFlQyxnQkFBZSxHQUM5QztBQUVSO0FBR0EsSUFBTUEsaUJBQWdCO0FBQUEsRUFDbEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBc0JGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFxQkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFzQkY7OztBQ2hFSSxTQXlOVyxZQUFBQyxZQXJFRCxPQUFBQyxPQXBKVixRQUFBQyxjQUFBO0FBSEosU0FBUyxtQkFBbUIsRUFBQyxLQUFLLEtBQUksR0FBOEI7QUFDbEUsUUFBTSxFQUFDLG9CQUFtQixJQUFJLGNBQWM7QUFDNUMsU0FDRSxnQkFBQUEsT0FBQyxPQUFFLFNBQVMsTUFBTSxvQkFBb0IsS0FBSyxFQUFFLEdBQUc7QUFBQTtBQUFBLElBQUU7QUFBQSxJQUFLO0FBQUEsS0FBQztBQUU1RDtBQUNBLFNBQVMsb0JBQW9CLEVBQUMsSUFBSSxNQUFNLEtBQUksR0FBMkM7QUFDckYsUUFBTSxFQUFDLGtCQUFpQixJQUFJLGNBQWM7QUFDMUMsU0FDRSxnQkFBQUEsT0FBQyxPQUFFLFNBQVMsTUFBTSxrQkFBa0IsSUFBSSxJQUFJLEdBQUc7QUFBQTtBQUFBLElBQUU7QUFBQSxJQUFLO0FBQUEsS0FBQztBQUUzRDtBQXFEQSxJQUFNLE9BQWtDO0FBQUEsRUFDdEMsYUFBYTtBQUFBLEVBQ2IsS0FBSztBQUFBLEVBQ0wsVUFBVTtBQUFBLEVBQ1YsUUFBUTtBQUFBLEVBQ1IsVUFBVTtBQUFBLEVBQ1YsU0FBUztBQUFBLEVBQ1QsT0FBTztBQUFBLEVBQ1AsU0FBUztBQUFBLEVBQ1QsUUFBTztBQUFBLEVBQ1AsUUFBUTtBQUFBLEVBQ1IsU0FBUztBQUFBLEVBQ1QsWUFBWTtBQUFBLEVBQ1osU0FBUztBQUFBLEVBQ1QsWUFBWTtBQUFBLEVBQ1osUUFBUTtBQUFBLEVBQ1IsUUFBUTtBQUFBLEVBQ1IsUUFBUTtBQUFBLEVBQ1IsYUFBYTtBQUFBLEVBQ2IsYUFBUTtBQUFBLEVBQ1IsVUFBVTtBQUFBLEVBQ1YsUUFBUTtBQUFBLEVBQ1IsT0FBTztBQUFBLEVBQ1AsT0FBTztBQUFBLEVBQ1AsTUFBSztBQUFBLEVBQ0wsV0FBVTtBQUFBLEVBQ1YsVUFBUztBQUFBLEVBQ1QsV0FBVTtBQUFBLEVBQ1YsV0FBVTtBQUFBLEVBQ1YsZ0JBQVU7QUFBQSxFQUNWLFNBQVE7QUFBQSxFQUNSLFFBQVE7QUFBQSxFQUNSLE9BQU07QUFBQSxFQUNOLFFBQU87QUFBQSxFQUNQLGVBQWU7QUFBQSxFQUNmLGdCQUFnQjtBQUFBLEVBQ2hCLE9BQU07QUFBQSxFQUNOLE9BQU87QUFBQSxFQUNQLE1BQU07QUFBQSxFQUNOLFVBQVU7QUFBQSxFQUNWLFVBQVM7QUFBQSxFQUNULE9BQU07QUFBQSxFQUNOLFVBQVU7QUFBQSxFQUNWLFVBQVU7QUFBQSxFQUNWLFVBQVU7QUFBQSxFQUNWLE9BQU87QUFBQSxFQUNQLFdBQVc7QUFBQSxFQUNYLFNBQVM7QUFBQSxFQUNULFFBQVE7QUFFVjtBQXNCTyxJQUFNLGVBQTJDO0FBQUEsRUFDdEQ7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsZUFBYztBQUFBLElBQ2QsY0FBYTtBQUFBLElBQ2IsT0FBTztBQUFBLElBQ1AsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLE1BQUMsZ0JBQUFELE1BQUMsT0FBRSx5WkFDZ1k7QUFBQSxNQUMzWSxnQkFBQUEsTUFBQyxPQUFFLDBCQUFBQSxNQUFDLFlBQU8sbU9BQXFOLEdBQVM7QUFBQSxNQUFNLGdCQUFBQSxNQUFDLE9BQUUsNjVEQUs2TTtBQUFBLElBQUk7QUFBQSxJQUNyYyxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxPQUFPO0FBQUEsSUFDeEIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLE1BQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBc0gsZ0JBQUFELE1BQUMsWUFBTyw2QkFBZTtBQUFBLFFBQVM7QUFBQSxTQUE0RTtBQUFBLE1BQzdPLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQXFDLGdCQUFBRCxNQUFDLFlBQU8sb0NBQXNCO0FBQUEsUUFBUztBQUFBLFNBQStrQjtBQUFBLE1BQzlwQixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUEwQyxnQkFBQUQsTUFBQyxZQUFPLCtDQUFpQztBQUFBLFFBQVM7QUFBQSxTQUFpa0I7QUFBQSxNQUNocUIsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBaUQsZ0JBQUFELE1BQUMsWUFBTyxrQ0FBb0I7QUFBQSxRQUFTO0FBQUEsU0FBcWI7QUFBQSxNQUM5Z0IsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBaUYsZ0JBQUFELE1BQUMsWUFBTyw2QkFBZTtBQUFBLFFBQVM7QUFBQSxTQUEwYjtBQUFBLElBQzlpQjtBQUFBLElBQ0YsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLE1BQU07QUFBQSxJQUNOLFNBQVMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHNsREFHd1osQ0FBSTtBQUFBLElBQ3phLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLEtBQUs7QUFBQSxJQUN0QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxpbEJBRWdGLENBQUk7QUFBQSxJQUN0RyxVQUFVLENBQUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBLHNCQUFBQyxNQUFDLE9BQUUsK1JBRWhCO0FBQUEsTUFDRSxnQkFBQUEsTUFBQyxPQUFFLDhYQUlzRDtBQUFBLE1BQ3pELGdCQUFBQSxNQUFDLE9BQUUsb1dBS3NEO0FBQUEsTUFDekQsZ0JBQUFBLE1BQUMsT0FBRSxpN0NBTXFQO0FBQUEsT0FDMVAsQ0FBRztBQUFBLElBQ0gsZ0JBQWdCLENBQUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBQyxnQkFBQUMsTUFBQyxPQUFFLHVQQUF5TztBQUFBLE1BQzlQLGdCQUFBQSxNQUFDLE9BQUUsZ2tCQUFrakI7QUFBQSxPQUFJLENBQUc7QUFBQSxJQUM5akIsMkJBQTJCO0FBQUEsSUFDM0IsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLDJDQUEwQyxHQUFFLHNSQUFxUjtBQUFBLE1BQ3JWLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1REFBc0QsR0FBRSx5TEFBd0w7QUFBQSxNQUN6UCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEJBQTZCLEdBQUUsdU5BQXNOO0FBQUEsTUFDOVAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1IQUFrSCxHQUFFLHdCQUF1QjtBQUFBLE1BQ3BKLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSwrSEFBOEg7QUFBQSxNQUNuTCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0NBQXFDLEdBQUUsMFFBQW9RO0FBQUEsTUFDcFQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlEQUF3RCxHQUFFLHlIQUF3SDtBQUFBLE1BQzNMLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSx3RkFBa0Y7QUFBQSxNQUN2SSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkRBQTRELEdBQUUsNkVBQTRFO0FBQUEsTUFDbkosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1DQUFrQyxHQUFFLDJJQUEwSTtBQUFBLE1BQ3ZMLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxSEFBb0gsR0FBRSxzRkFBcUY7QUFBQSxNQUNwTixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUVBQWtFLEdBQUUseUJBQXdCO0FBQUEsTUFDckcsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdGQUF1RixHQUFFLHVLQUFzSztBQUFBLE1BQ3hRLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxREFBb0QsR0FBRSx5UUFBd1E7QUFBQSxNQUN2VSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUVBQXdFLEdBQUUsMkZBQTBGO0FBQUEsTUFDN0ssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlEQUFnRCxHQUFFLHNOQUFxTjtBQUFBLE1BQ2hSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrSUFBaUksR0FBRSwyUEFBZ1A7QUFBQSxNQUM1WCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUZBQWtGLEdBQUUseVdBQXdXO0FBQUEsTUFDcmMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZEQUE0RCxHQUFFLDJLQUEwSztBQUFBLE1BQ2pQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnR0FBK0YsR0FBRSwrSEFBOEg7QUFBQSxNQUN4TyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscUNBQW9DLEdBQUUsb0VBQW1FO0FBQUEsTUFDbEgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZEQUE0RCxHQUFFLDJWQUEwVjtBQUFBLE1BQ2phLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RkFBaUYsR0FBRSxxRkFBaUY7QUFBQSxNQUM3SyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0RBQStDLEdBQUUsNEVBQTJFO0FBQUEsTUFDckksZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFFQUFvRSxHQUFFLDRDQUEyQztBQUFBLE1BQzFILGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrREFBOEQsR0FBRSxpR0FBMkY7QUFBQSxNQUNwSyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMkZBQTBGLEdBQUUsa0lBQWlJO0FBQUEsTUFDdE8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZEQUE0RCxHQUFFLHdFQUF1RTtBQUFBLE1BQzlJLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3REFBdUQsR0FBRSxxSEFBb0g7QUFBQSxNQUN0TCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0hBQW9ILEdBQUUsaVJBQWdSO0FBQUEsTUFDL1ksZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRFQUEyRSxHQUFFLGdGQUErRTtBQUFBLE1BQ3JLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrR0FBaUcsR0FBRSw4RkFBNkY7QUFBQSxNQUN6TSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0ZBQStFLEdBQUUsNFBBQTJQO0FBQUEsTUFDclYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDBEQUF5RCxHQUFFLDhGQUE2RjtBQUFBLE1BQ2pLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2RkFBNEYsR0FBRSxxSUFBb0k7QUFBQSxNQUMzTyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0dBQTJGLEdBQUUsMEVBQXlFO0FBQUEsTUFDL0ssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9FQUFtRSxHQUFFLGlEQUFnRDtBQUFBLE1BQzlILGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw0SEFBMkgsR0FBRSx1QkFBaUI7QUFBQSxNQUN2SixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0VBQW1FLEdBQUUsNkZBQTRGO0FBQUEsT0FDNUs7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQTtBQUFBLEVBRVY7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssZUFBZTtBQUFBLElBQ2hDLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLDJCQUEyQjtBQUFBLEVBQzdCO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSwrakJBQXNpQixDQUFJO0FBQUEsSUFDNWpCLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG1yRUFHdXNCLENBQUk7QUFBQSxJQUN6dEIsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSw4bEJBQXdrQixDQUFJO0FBQUEsSUFDaG1CLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBLHNCQUFBQyxNQUFDLFlBQU8sT0FBTSxzRUFBa0UsT0FBTSxPQUFNLFFBQU8sT0FBTSxLQUFJLDRFQUEyRSxhQUFZLEtBQUksaUJBQWlCLE1BQU0sU0FBUSw0REFBMkQ7QUFBQSxNQUFTLGdCQUFBQSxNQUFDLE9BQUUsbUVBQXFEO0FBQUEsT0FBSTtBQUFBLEVBQ3JYO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLGFBQWE7QUFBQSxJQUM5QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFjO0FBQUEsSUFDZCxVQUFVO0FBQUEsSUFDVixnQkFBZ0I7QUFBQSxJQUNoQixNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxXQUFXO0FBQUEsSUFDNUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsZ0JBQWdCO0FBQUEsRUFDbEI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG1ZQUN1TCxDQUFJO0FBQUEsSUFDN00sVUFBVTtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSw2dkJBR3dHO0FBQUEsTUFDdEgsZ0JBQUFBLE1BQUMsT0FBRSxvbUJBRStKO0FBQUEsSUFBSTtBQUFBLElBQ3RLLGdCQUFnQixDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQ2xCLGdCQUFBQSxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLG9PQUFzTjtBQUFBLFFBQzFOLGdCQUFBQSxNQUFDLFFBQUcsMk9BQTZOO0FBQUEsUUFDak8sZ0JBQUFBLE1BQUMsUUFBRyw4WUFBZ1k7QUFBQSxTQUN0WTtBQUFBLE1BQUs7QUFBQSxPQUNQLENBQUk7QUFBQSxJQUNKLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFFBQVE7QUFBQSxJQUN6QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjO0FBQUEsSUFDZCxVQUFVO0FBQUEsTUFBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUFxTCxnQkFBQUQsTUFBQyxPQUFFLE1BQUsseUJBQXlCLGdDQUFrQjtBQUFBLFFBQUk7QUFBQSxTQUFpbkM7QUFBQSxNQUMzMkM7QUFBQSxNQUNBLGdCQUFBQSxNQUFDLE9BQUUsZ2xEQUE2akQ7QUFBQSxNQUNoa0QsZ0JBQUFBLE1BQUMsT0FBRSxtREFBcUM7QUFBQSxNQUN4QyxnQkFBQUMsT0FBQyxRQUNDO0FBQUEsd0JBQUFELE1BQUMsUUFBRyxnR0FBa0Y7QUFBQSxRQUN0RixnQkFBQUEsTUFBQyxRQUFHLGlHQUFtRjtBQUFBLFFBQ3ZGLGdCQUFBQSxNQUFDLFFBQUcsa0hBQW9HO0FBQUEsUUFDeEcsZ0JBQUFBLE1BQUMsUUFBRyx1R0FBeUY7QUFBQSxTQUMvRjtBQUFBLE1BRUEsZ0JBQUFBLE1BQUMsT0FBRSxtREFBcUM7QUFBQSxNQUN4QyxnQkFBQUMsT0FBQyxRQUNDO0FBQUEsd0JBQUFELE1BQUMsUUFBRyxvSEFBc0c7QUFBQSxRQUMxRyxnQkFBQUEsTUFBQyxRQUFHLDJJQUE2SDtBQUFBLFFBQ2pJLGdCQUFBQSxNQUFDLFFBQUcsc0lBQXdIO0FBQUEsUUFDNUgsZ0JBQUFBLE1BQUMsUUFBRyw4SUFBZ0k7QUFBQSxTQUN0STtBQUFBLElBQ0E7QUFBQSxJQUNBLGdCQUFnQixDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQStZLGdCQUFBRCxNQUFDLE9BQUUsOEJBQWdCO0FBQUEsTUFBSTtBQUFBLE9BQTZaLENBQUk7QUFBQSxJQUMzMUIsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLG1KQUFrSixHQUFFLDBsQkFBeWxCO0FBQUEsTUFDdHZCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RUFBdUUsR0FBRSxpa0JBQXNqQjtBQUFBLE1BQ3hvQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUVBQWtFLEdBQUUsNm9CQUF3bkI7QUFBQSxNQUNyc0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFFQUFvRSxHQUFFLHF0QkFBMHNCO0FBQUEsTUFDenhCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtSEFBNkcsR0FBRSwrY0FBeWM7QUFBQSxNQUNqa0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNFQUFxRSxHQUFFLG1rQkFBNmpCO0FBQUEsTUFDN29CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxR0FBb0csR0FBRSxpbkJBQXNtQjtBQUFBLE1BQ3J0QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUVBQXNFLEdBQUUsb2lCQUF5aEI7QUFBQSxNQUMxbUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdFQUF1RSxHQUFFLHdmQUE2ZTtBQUFBLE1BQy9qQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEVBQTJFLEdBQUUscVFBQW9RO0FBQUEsTUFDMVYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9EQUFtRCxHQUFFLDZUQUE0VDtBQUFBLE1BQzFYLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxRUFBb0UsR0FBRSxtT0FBa087QUFBQSxNQUNqVCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0VBQXFFLEdBQUUsc1RBQTJTO0FBQUEsTUFDM1gsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhFQUE2RSxHQUFFLCtiQUFvYjtBQUFBLE1BQzVnQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0VBQXFFLEdBQUUsa2FBQWtaO0FBQUEsTUFDbGUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtEQUFpRCxHQUFFLDhlQUE2ZTtBQUFBLE9BQzNpQjtBQUFBLElBQ0EsZ0JBQWdCO0FBQUEsSUFDaEIsc0JBQXNCO0FBQUEsSUFDdEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjO0FBQUEsSUFDZCxVQUFVO0FBQUEsSUFDVixnQkFBZ0I7QUFBQSxJQUNoQixzQkFBc0I7QUFBQSxJQUN0QixTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx3b0JBQTBuQixDQUFJO0FBQUEsSUFDM29CLFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSxxR0FBb0csR0FBRSx1WkFBcVo7QUFBQSxNQUNwZ0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFDQUFvQyxHQUFFLHNjQUFvYztBQUFBLE1BQ25mLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2QkFBNEIsR0FBRSxpRUFBK0Q7QUFBQSxNQUN0RyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOERBQTZELEdBQUUsZ0ZBQThFO0FBQUEsTUFDdEosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDBDQUF5QyxHQUFFLDZTQUEyUztBQUFBLE1BQy9WLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3REFBdUQsR0FBRSx3TEFBaUw7QUFBQSxNQUNuUCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0ZBQStFLEdBQUUsZ1VBQThUO0FBQUEsTUFDeFosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtGQUFpRixHQUFFLHVKQUFxSjtBQUFBLE1BQ2pQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSxrTEFBZ0w7QUFBQSxNQUNyTyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0RBQStDLEdBQUUseU9BQXVPO0FBQUEsTUFDalMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtEQUE4RCxHQUFFLHlOQUF1TjtBQUFBLE1BQ2hTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtRkFBa0YsR0FBRSw0T0FBME87QUFBQSxNQUN2VSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUhBQXNILEdBQUUsNktBQTJLO0FBQUEsTUFDNVMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNEQUFxRCxHQUFFLHdGQUFzRjtBQUFBLE1BQ3RKLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxpREFBZ0QsR0FBRSwrRkFBNkY7QUFBQSxNQUN4SixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUNBQWtDLEdBQUUsME9BQXFPO0FBQUEsTUFDbFIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9EQUFtRCxHQUFFLG1LQUFpSztBQUFBLE9BQy9OO0FBQUEsRUFDRjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXNCO0FBQUEsRUFDeEI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixNQUFNO0FBQUEsSUFDTixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx5dEJBQTJzQixDQUFJO0FBQUEsSUFDNXRCLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWTtBQUFBLElBQ1osS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUEyUCxnQkFBQUQsTUFBQyxpQkFBYyxLQUFJLGNBQWEsVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLE1BQUU7QUFBQSxPQUFpSixDQUFJO0FBQUEsSUFDOWQsVUFBVSxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQXVYLGdCQUFBRCxNQUFDLHNCQUFtQixLQUFJLE9BQU0sTUFBSyxhQUFZO0FBQUEsTUFBRTtBQUFBLE9BRUgsQ0FBSTtBQUFBLElBQ3ZiLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUseWRBQXNjLENBQUk7QUFBQSxJQUM5ZCxXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUM7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BTzBkO0FBQUEsTUFDOWQsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFFUCxHQUFFO0FBQUE7QUFBQSxNQUt3bEI7QUFBQSxNQUM1bEIsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUN5YjtBQUFBLE1BQzdiLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBcVg7QUFBQSxNQUN6WCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXNiO0FBQUEsTUFDMWIsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUF3VztBQUFBLE1BQzVXLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBb2U7QUFBQSxNQUN4ZSxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BRWszQjtBQUFBLE1BQ3QzQixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BRXFMO0FBQUEsTUFDekwsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUF5RztBQUFBLE1BQzdHLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBb0c7QUFBQSxNQUN4RyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXNFO0FBQUEsTUFDMUUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZNQUF3TCxHQUFFLGdIQUF5RztBQUFBLE1BQzVTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnRkFBK0UsR0FBRSw4aUVBQXdoRTtBQUFBLE1BQ2xuRSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUJBQWtCLEdBQUUsb3VEQUE2dEQ7QUFBQSxNQUMxdkQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9MQUFtTCxHQUFFLDRyQ0FBMHJDO0FBQUEsTUFDeDNDLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RUFBcUUsR0FBRSxlQUFhO0FBQUEsTUFDN0YsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJRQUFnUSxHQUFFLDB3Q0FHM0U7QUFBQSxNQUNoTSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb1hBQThWLEdBQUUscTZCQUNnTjtBQUFBLE1BQ3pqQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOFJBQWdSLEdBQUUsdWlGQUFrZ0Y7QUFBQSxNQUM3eEYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRTQUNtTSxHQUFFLHF5REFHZ0M7QUFBQSxNQUM5TyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEZBQTZGLEdBQUUsdUlBQXFJO0FBQUEsTUFDN08sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlMQUFnTCxHQUFFLDRCQUEwQjtBQUFBLE1BQ3JOLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw0RkFBMEYsR0FBRSxxQkFBbUI7QUFBQSxPQUN2SDtBQUFBLElBQ0gsWUFBWSxnQkFBQUEsTUFBQywyQkFBd0I7QUFBQSxJQUNyQyxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxhQUFhO0FBQUEsSUFDOUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUNOLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLFNBQVMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLGtzQkFBb3JCLENBQUk7QUFBQSxJQUNyc0IsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFvQyxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxZQUFXLE1BQUssT0FBTTtBQUFBLE1BQUU7QUFBQSxNQUM3QixnQkFBQUEsTUFBQyxPQUFFLE1BQUssMkJBQTJCLGdDQUFrQjtBQUFBLE1BQUk7QUFBQSxPQUNMLENBQUk7QUFBQSxJQUNqSSxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxtMENBSThPLENBQUk7QUFBQSxJQUNoUSxnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUNrSCxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxVQUFTLE1BQUssY0FBYTtBQUFBLE1BQUU7QUFBQSxPQUFFLENBQUk7QUFBQSxJQUNqTSxXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsc0ZBQXFGLEdBQUUsc0lBQTJIO0FBQUEsTUFDM04sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRDQUEyQyxHQUFFLHdCQUFrQjtBQUFBLE1BQ3hFLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSxpU0FBZ1M7QUFBQSxNQUNwVyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkRBQTRELEdBQUUsbUlBQTZIO0FBQUEsTUFDcE0sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdEQUF1RCxHQUFFLGlYQUFzVztBQUFBLE1BQ3hhLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzRUFBcUUsR0FBRSxxWUFBK1g7QUFBQSxNQUMvYyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0VBQXVFLEdBQUUsNFRBQWlUO0FBQUEsTUFDblksZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFEQUFvRCxHQUFFLGtWQUE2VDtBQUFBLE1BQzVYLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrR0FBeUcsR0FBRSx3UkFBOFA7QUFBQSxNQUNsWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUdBQW1HLEdBQUUsME5BQStNO0FBQUEsTUFDN1QsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFGQUFvRixHQUFFLDhMQUFtTDtBQUFBLE1BQ2xSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2REFBNEQsR0FBRSw4T0FBbU87QUFBQSxNQUMxUyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUVBQXdFLEdBQUUsbU5BQWtOO0FBQUEsTUFDclMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlFQUFnRSxHQUFFLGdQQUErTztBQUFBLE1BQzFULGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtQ0FBa0MsR0FBRSxvU0FBb1I7QUFBQSxNQUNqVSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0NBQXVDLEdBQUUsa1BBQXVPO0FBQUEsTUFDelIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVFQUFzRSxHQUFFLGlJQUEySDtBQUFBLE1BQzVNLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzREFBcUQsR0FBRSx3SkFBNkk7QUFBQSxPQUMvTTtBQUFBLElBQ0EsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFVBQVU7QUFBQSxJQUNWLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHFPQUF1TixDQUFJO0FBQUEsSUFDN08sVUFBVTtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSx3VkFBMFU7QUFBQSxNQUN0VixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUVILGdCQUFBRCxNQUFDLGlCQUFjLEtBQUksT0FBTSxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsUUFBRTtBQUFBLFFBRXJELGdCQUFBQSxNQUFDLHNCQUFtQixLQUFJLHNCQUN0QixNQUFLLG1CQUFrQjtBQUFBLFFBQUU7QUFBQSxRQUM2RyxnQkFBQUEsTUFBQyxPQUFFLE1BQUssb0ZBQW9GLHlEQUEyQztBQUFBLFFBQUk7QUFBQSxRQUVuUixnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxRQUNnSCxnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxRQUFzYixnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxTQUF3WTtBQUFBLElBQy9rQztBQUFBLElBQ0EsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsWUFBWSxnQkFBQUEsTUFBQyx1QkFBbUI7QUFBQSxFQUNsQztBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBcVAsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksYUFBWSxNQUFLLGNBQVk7QUFBQSxNQUFFO0FBQUEsTUFBK0ksZ0JBQUFBLE1BQUMsdUJBQW9CLElBQUcsd0JBQXdCLE1BQUsscUJBQW1CLE1BQUssd0JBQXVCO0FBQUEsTUFBRTtBQUFBLE9BQStYLENBQUk7QUFBQSxJQUN4N0IsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFvSjtBQUFBLE1BQ3hKLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBa0M7QUFBQSxNQUN0QyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQStIO0FBQUEsTUFDbkksZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFzRDtBQUFBLE1BQzFELGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBNlU7QUFBQSxNQUNqVixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXdoQjtBQUFBLE1BQzVoQixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQWtWO0FBQUEsTUFDdFYsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFpSjtBQUFBLE1BQ3JKLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBMlE7QUFBQSxNQUMvUSxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQStSO0FBQUEsTUFDblMsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUEwTztBQUFBLE1BQzlPLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBcVE7QUFBQSxNQUN6USxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQThPO0FBQUEsTUFDbFAsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUErUTtBQUFBLE1BQ25SLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBcWdCO0FBQUEsTUFDemdCLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBa0s7QUFBQSxNQUN0SyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQTJUO0FBQUEsTUFDL1QsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUEyUjtBQUFBLE1BQy9SLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBaVM7QUFBQSxNQUNyUyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQWtXO0FBQUEsT0FDeFc7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLHNCQUFzQjtBQUFBLEVBQ3hCO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLGdCQUFnQjtBQUFBLElBQ2pDLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDBSQUE0USxDQUFJO0FBQUEsSUFDbFMsVUFBVTtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSw2WEFBK1c7QUFBQSxNQUMzWCxnQkFBQUEsTUFBQyxPQUFFLHNTQUF3UjtBQUFBLE1BQzNSLGdCQUFBQSxNQUFDLE9BQUUsNllBQStYO0FBQUEsSUFBSTtBQUFBLElBQ3hZLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2FBQWlhLENBQUk7QUFBQSxJQUN6YixTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxxaUJBQXVoQixDQUFJO0FBQUEsSUFDeGlCLFFBQVE7QUFBQSxJQUNSLGdCQUFlO0FBQUEsSUFDZiwyQkFBMkI7QUFBQSxJQUMzQixzQkFBc0I7QUFBQSxJQUN0QixlQUFlLENBQUMsNkRBQTZEO0FBQUEsRUFDL0U7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUErQixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxlQUFjLE1BQUssbUJBQWtCO0FBQUEsTUFBRTtBQUFBLE9BQWdRLENBQUk7QUFBQSxJQUNwWCxVQUFVO0FBQUEsSUFDVixnQkFBZ0I7QUFBQSxJQUNoQixNQUFNLENBQUMsZ0JBQUFDLE9BQUMsUUFDTjtBQUFBLHNCQUFBQSxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxZQUFPLHlCQUFjO0FBQUEsUUFDdEIsZ0JBQUFBLE1BQUMsT0FBRSxnNENBQTgxQztBQUFBLFNBQ24yQztBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLFlBQU8sb0NBQTRCO0FBQUEsUUFDcEMsZ0JBQUFBLE1BQUMsT0FBRSxvcEJBQTRuQjtBQUFBLFNBQ2pvQjtBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLFlBQU8sdUJBQVk7QUFBQSxRQUNwQixnQkFBQUEsTUFBQyxPQUFFLGlpQkFBbWhCO0FBQUEsU0FDeGhCO0FBQUEsTUFDQSxnQkFBQUMsT0FBQyxRQUNDO0FBQUEsd0JBQUFELE1BQUMsWUFBTywyQkFBZ0I7QUFBQSxRQUN4QixnQkFBQUEsTUFBQyxPQUFFLHVpQkFBb2hCO0FBQUEsU0FDemhCO0FBQUEsT0FDRixDQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxzQkFBcUI7QUFBQSxJQUNyQixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxPQUFPO0FBQUEsSUFDeEIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBUztBQUFBLElBQ1QsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsaWNBQzRMLENBQUk7QUFBQSxJQUNsTixVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxtcUJBRTZPLENBQUk7QUFBQSxJQUMvUCxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG1wQkFFMEcsQ0FBSTtBQUFBLElBQ2xJLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFlBQVk7QUFBQSxJQUM3QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFLK0MsZ0JBQUFELE1BQUMsdUJBQW9CLFVBQVMsVUFBUywwQkFBQUEsTUFBQyxTQUFJLGVBQUMsR0FBTTtBQUFBLE1BQXNCO0FBQUEsT0FHM0gsQ0FBSTtBQUFBLElBQ25CLGdCQUFnQjtBQUFBLElBQ2hCLFVBQVUsQ0FBQyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUEsc0JBQUFFLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFHOEMsZ0JBQUFELE1BQUMsdUJBQW9CLFVBQVMsVUFBUywwQkFBQUEsTUFBQyxTQUFJLGVBQUMsR0FBTTtBQUFBLFFBQXNCO0FBQUEsU0FLdkk7QUFBQSxNQUNFLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBRXVGLGdCQUFBRCxNQUFDLHVCQUFvQixVQUFTLFVBQVMsMEJBQUFBLE1BQUMsU0FBSSxlQUFDLEdBQU07QUFBQSxRQUFzQjtBQUFBLFNBQ3BGO0FBQUEsT0FDakYsQ0FBRztBQUFBLElBQ0gsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxnbUJBS2lGLENBQUk7QUFBQSxJQUN6RywyQkFBMkI7QUFBQSxJQUMzQixzQkFBcUI7QUFBQSxJQUNyQixZQUFZLGdCQUFBQSxNQUFDLHFCQUFrQjtBQUFBLElBQy9CLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVDtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSxrREFBaUQsR0FBRSxpUkFBd1E7QUFBQSxNQUNwVSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsMlFBQTBRO0FBQUEsTUFDbFcsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdHQUErRixHQUFFLDJUQUEwVDtBQUFBLE1BQ3BhLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrRUFBOEUsR0FBRSxrS0FBaUs7QUFBQSxNQUMxUCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMkZBQTBGLEdBQUUsK0VBQThFO0FBQUEsTUFDbkwsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNGQUFxRixHQUFFLGtRQUFpUTtBQUFBLE1BQ2pXLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzR0FBcUcsR0FBRSxxZUFBb2U7QUFBQSxNQUNwbEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdEQUF1RCxHQUFFLHFRQUFpUTtBQUFBLE9BRXJVO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLE1BQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBOEIsZ0JBQUFELE1BQUMsT0FBRSxNQUFLLDBCQUF5QixnQ0FBa0I7QUFBQSxRQUFJO0FBQUEsU0FHZ0M7QUFBQSxNQUN2SSxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUFvRSxnQkFBQUQsTUFBQyxPQUFFLE1BQUssd0RBQXVELDhDQUNwRztBQUFBLFFBQUk7QUFBQSxTQUFDO0FBQUEsSUFBSTtBQUFBLElBQzNDLFVBQVUsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUVpRixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxVQUFTLE1BQUssb0JBQW1CO0FBQUEsTUFBRTtBQUFBLE1BQTJILGdCQUFBQSxNQUFDLHNCQUFtQixLQUFJLFlBQVcsTUFBSyxPQUFNO0FBQUEsTUFBRTtBQUFBLE9BQThKLENBQUk7QUFBQSxJQUN2ZSxnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUd1QixnQkFBQUQsTUFBQyxpQkFBYyxLQUFJLFVBQVMsVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLE1BQUU7QUFBQSxNQUtOLGdCQUFBQSxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsTUFBRTtBQUFBLE1BRXZILGdCQUFBQSxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsTUFBRTtBQUFBLE1BQ3BFLGdCQUFBQSxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsTUFBRTtBQUFBLE9BUS9ELENBQUk7QUFBQSxJQUNmLHNCQUFzQjtBQUFBLElBQ3RCLFlBQVksZ0JBQUFBLE1BQUMsMEJBQXVCO0FBQUEsSUFDcEMsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFFBQVE7QUFBQSxJQUN6QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxrUUFBb1AsQ0FBSTtBQUFBLElBQzFRLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsZ0pBQWtJO0FBQUEsTUFDOUksZ0JBQUFDLE9BQUMsUUFDRztBQUFBLHdCQUFBRCxNQUFDLFFBQUcsNkJBQWU7QUFBQSxRQUNuQixnQkFBQUEsTUFBQyxRQUFHLDhCQUFnQjtBQUFBLFFBQ3BCLGdCQUFBQSxNQUFDLFFBQUcsd0RBQTBDO0FBQUEsUUFDOUMsZ0JBQUFBLE1BQUMsUUFBRyxzREFBd0M7QUFBQSxTQUNoRDtBQUFBLE1BQ0EsZ0JBQUFBLE1BQUMsT0FBRSxtN0JBQXE2QjtBQUFBLElBQUk7QUFBQSxJQUM5NkIsZ0JBQWdCO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLDZIQUErRztBQUFBLE1BQ2pJLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLDJGQUE2RTtBQUFBLFFBQ2pGLGdCQUFBQSxNQUFDLFFBQUcsNElBQThIO0FBQUEsUUFDbEksZ0JBQUFBLE1BQUMsUUFBRyx5REFBMkM7QUFBQSxRQUMvQyxnQkFBQUEsTUFBQyxRQUFHLDhGQUFnRjtBQUFBLFFBQ3BGLGdCQUFBQSxNQUFDLFFBQUcsK0NBQWlDO0FBQUEsUUFDckMsZ0JBQUFBLE1BQUMsUUFBRyw0Q0FBOEI7QUFBQSxTQUN0QztBQUFBLE1BQ0YsZ0JBQUFBLE1BQUMsT0FBRSxpR0FBbUY7QUFBQSxJQUN0RjtBQUFBLElBQ0EsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHlnQkFBbWYsQ0FBSTtBQUFBLElBQ3pnQixVQUFVO0FBQUEsTUFBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUFvQixnQkFBQUQsTUFBQyxPQUFFLE1BQUssNkJBQTRCLDJCQUFhO0FBQUEsUUFBSTtBQUFBLFNBR3BCO0FBQUEsTUFDakUsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBQSxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxZQUFPLHVDQUF5QjtBQUFBLFVBQVM7QUFBQSxXQUFvSjtBQUFBLFFBQ2xNLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxZQUFPLDRCQUFjO0FBQUEsVUFBUztBQUFBLFdBQTZLO0FBQUEsUUFDaE4sZ0JBQUFDLE9BQUMsUUFBRztBQUFBLDBCQUFBRCxNQUFDLFlBQU8sc0NBQXdCO0FBQUEsVUFBUztBQUFBLFdBQTRLO0FBQUEsUUFDek4sZ0JBQUFDLE9BQUMsUUFBRztBQUFBLDBCQUFBRCxNQUFDLFlBQU8sa0NBQW9CO0FBQUEsVUFBUztBQUFBLFdBQXFJO0FBQUEsUUFDOUssZ0JBQUFDLE9BQUMsUUFBRztBQUFBLDBCQUFBRCxNQUFDLFlBQU8scUNBQXVCO0FBQUEsVUFBUztBQUFBLFdBQStHO0FBQUEsUUFDM0osZ0JBQUFDLE9BQUMsUUFBRztBQUFBLDBCQUFBRCxNQUFDLFlBQU8sb0NBQXNCO0FBQUEsVUFBUztBQUFBLFdBQXVHO0FBQUEsUUFDbEosZ0JBQUFDLE9BQUMsUUFBRztBQUFBLDBCQUFBRCxNQUFDLFlBQU8sMENBQTRCO0FBQUEsVUFBUztBQUFBLFdBQTBIO0FBQUEsU0FDN0s7QUFBQSxJQUNBO0FBQUEsSUFDRixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLCs2QkFDNFgsQ0FBSTtBQUFBLElBQ3BaLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDWDtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSx3TUFBc007QUFBQSxNQUMzUyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaUZBQWdGLEdBQUUsaVFBQStQO0FBQUEsTUFDMVYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZHQUE0RyxHQUFFLHlVQUF1VTtBQUFBLE1BQzliLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRkFBaUYsR0FBRSw0TkFBME47QUFBQSxNQUN0VCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkZBQTRGLEdBQUUscVVBQW1VO0FBQUEsTUFDMWEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdFQUF1RSxHQUFFLDJVQUF5VTtBQUFBLE1BQzNaLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5SEFBd0gsR0FBRSxtT0FBaU87QUFBQSxPQUNwVztBQUFBLElBQ0EsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXFCO0FBQUEsRUFDdkI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssTUFBTTtBQUFBLElBQ3ZCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUNOLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLFNBQVMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHV0QkFBeXNCLENBQUk7QUFBQSxJQUMxdEIsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDBsQkFDdU4sQ0FBSTtBQUFBLElBQzdPLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsa0pBQW9JO0FBQUEsTUFDbEosZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLFFBQUcsd0ZBQTBFO0FBQUEsUUFDOUUsZ0JBQUFBLE1BQUMsUUFBRyxvRUFBc0Q7QUFBQSxRQUMxRCxnQkFBQUEsTUFBQyxRQUFHLGdKQUFrSTtBQUFBLFFBQ3RJLGdCQUFBQSxNQUFDLFFBQUcsaUlBQW1IO0FBQUEsU0FDekg7QUFBQSxJQUNBO0FBQUEsSUFDQSxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLCtIQUE0RyxDQUFJO0FBQUEsSUFDcEksU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQTtBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXFCO0FBQUEsRUFDdkI7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHNQQUF3TyxDQUFJO0FBQUEsSUFDOVAsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsMjBDQUMyTCxDQUFJO0FBQUEsSUFDN00sZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx3aUJBQTBoQixDQUFJO0FBQUEsSUFDbGpCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsTUFBTTtBQUFBLElBQ04sWUFBWSxLQUFLLGNBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixjQUFjO0FBQUEsSUFDZCxlQUFlO0FBQUEsSUFDZixPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxrZkFBdWQsQ0FBSTtBQUFBLElBQzdlLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsNmpDQUNBO0FBQUEsTUFDWixnQkFBQUMsT0FBQyxRQUNDO0FBQUEsd0JBQUFELE1BQUMsUUFBRyx3RkFBMEU7QUFBQSxRQUM5RSxnQkFBQUEsTUFBQyxRQUFHLHlEQUEyQztBQUFBLFFBQy9DLGdCQUFBQSxNQUFDLFFBQUcsZ0ZBQWtFO0FBQUEsUUFDdEUsZ0JBQUFBLE1BQUMsUUFBRyx3RkFBMEU7QUFBQSxRQUM5RSxnQkFBQUEsTUFBQyxRQUFHLHVFQUF5RDtBQUFBLFNBQy9EO0FBQUEsSUFDRjtBQUFBLElBQ0EsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxzcUJBQXdwQixDQUFJO0FBQUEsSUFDaHJCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLGdCQUFnQjtBQUFBLElBQ2hCLDJCQUEyQjtBQUFBLEVBQzdCO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBMlEsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksVUFBUyxNQUFLLG9CQUFrQjtBQUFBLE1BQUU7QUFBQSxPQUFvRyxDQUFJO0FBQUEsSUFDL2IsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUscW9CQUF1bkIsQ0FBSTtBQUFBLElBQ3pvQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHNiQUF3YSxDQUFJO0FBQUEsSUFDaGMsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLFVBQVU7QUFBQSxJQUNWLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUEwQixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssZ0JBQWM7QUFBQSxNQUFFO0FBQUEsT0FBZzNCLENBQUk7QUFBQSxJQUNyOUIsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsa1RBQW9TLENBQUk7QUFBQSxJQUN0VCxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDJUQUE2UyxDQUFJO0FBQUEsSUFDclUsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULE1BQUssZ0JBQUFDLE9BQUFGLFlBQUEsRUFDTDtBQUFBLHNCQUFBQyxNQUFDLFNBQUksS0FBSSxzR0FBcUc7QUFBQSxNQUFNO0FBQUEsTUFDcEgsZ0JBQUFBLE1BQUMsT0FBRSw4S0FBNko7QUFBQSxNQUNoSyxnQkFBQUEsTUFBQyxTQUFJLEtBQUksMkdBQTBHO0FBQUEsTUFBTTtBQUFBLE1BQ3pILGdCQUFBQSxNQUFDLE9BQUUsd0lBQTBIO0FBQUEsTUFBSTtBQUFBLE1BQ2hJLGdCQUFBQSxNQUFDLFNBQUksS0FBSSwyR0FBMEc7QUFBQSxNQUFNO0FBQUEsTUFDMUgsZ0JBQUFBLE1BQUMsT0FBRSw4SEFBZ0g7QUFBQSxNQUFJO0FBQUEsTUFDdkgsZ0JBQUFBLE1BQUMsU0FBSSxLQUFJLDZGQUE0RjtBQUFBLE1BQU07QUFBQSxNQUMzRyxnQkFBQUEsTUFBQyxPQUFFLDBGQUE0RTtBQUFBLE9BQy9FO0FBQUEsSUFDQSxVQUFVO0FBQUEsSUFDVixXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUM7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQTJoQjtBQUFBLE1BQy9oQixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXlYO0FBQUEsTUFDN1gsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUF5UjtBQUFBLE1BQzdSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSwrSUFBOEk7QUFBQSxNQUNuUCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQW1QO0FBQUEsTUFDdlAsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFzSTtBQUFBLE1BQzFJLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBMEQ7QUFBQSxNQUM5RCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXdHO0FBQUEsTUFDNUcsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUEwTjtBQUFBLE9BQ2hPO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBQ04sVUFBVTtBQUFBLElBQ1YsY0FBYztBQUFBLElBQ2QsZUFBZTtBQUFBLElBQ2YsT0FBTztBQUFBLElBQ1AsU0FBUyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK3dCQUE4dkIsQ0FBSTtBQUFBLElBQy93QixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxhQUFhO0FBQUEsSUFDOUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxPQUFPO0FBQUEsSUFDUCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssWUFBWTtBQUFBLElBQzdCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLGNBQWM7QUFBQSxJQUNkLGVBQWU7QUFBQSxJQUNmLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUNpRSxnQkFBQUQsTUFBQyxPQUFFLE1BQUssdUJBQXNCLG9CQUFNO0FBQUEsTUFBSTtBQUFBLE9BTVEsQ0FBSTtBQUFBLElBQ3ZJLFVBQVU7QUFBQSxNQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBTXdDLGdCQUFBRCxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsUUFBRTtBQUFBLFNBQUU7QUFBQSxNQUNoSCxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUM4SSxnQkFBQUQsTUFBQyxpQkFBYyxLQUFJLFVBQVMsVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxTQUUxRTtBQUFBLElBQUk7QUFBQSxJQUNuSSxnQkFBZ0I7QUFBQSxNQUNkLGdCQUFBQSxNQUFDLE9BQUUsNlpBRXdJO0FBQUEsSUFDN0k7QUFBQSxJQUNBLGdCQUFnQjtBQUFBLElBQ2hCLHNCQUFzQjtBQUFBLElBQ3RCLDJCQUEyQjtBQUFBLElBQzNCLFlBQVksZ0JBQUFBLE1BQUMsaUJBQWM7QUFBQSxJQUMzQixXQUFVLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Y7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsd0hBQXVILEdBQUUsaVJBQStRO0FBQUEsTUFDalosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1KQUFrSixHQUFFLHFYQUFtWDtBQUFBLE1BQ2hoQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0dBQWlHLEdBQUUseVVBQXVVO0FBQUEsTUFDbmIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdEQUErQyxHQUFFLHlOQUF1TjtBQUFBLE1BQ2pSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtR0FBa0csR0FBRSwyVUFBeVU7QUFBQSxNQUN0YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUNBQXdDLEdBQUUsMEhBQXdIO0FBQUEsTUFDM0ssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlEQUF3RCxHQUFFLHdIQUFzSDtBQUFBLE1BQ3pMLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxvRUFBbUUsR0FBRSx3TUFBc007QUFBQSxNQUNwUixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0dBQThHLEdBQUUsb09BQWtPO0FBQUEsTUFDM1YsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDREQUEyRCxHQUFFLHVMQUFxTDtBQUFBLE1BQzNQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwRkFBeUYsR0FBRSx1RUFBcUU7QUFBQSxNQUN6SyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0RBQThELEdBQUUsb0pBQWtKO0FBQUEsTUFDM04sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhFQUE2RSxHQUFFLG1NQUE0TDtBQUFBLE9BQ3BSO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxLQUFLO0FBQUEsSUFDdEIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsZUFBYztBQUFBLElBQ2QsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsU0FBUyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsNjlCQUkrVCxDQUFJO0FBQUEsSUFDaFYsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVU7QUFBQSxJQUNWLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDhsQkFDbEIsQ0FBSTtBQUFBLElBQ0osVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2pDQUM0YixDQUFJO0FBQUEsSUFDOWMsZ0JBQWU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2tCQUN3QjtBQUFBLE1BQ3pDLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUEsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyxrQ0FBb0I7QUFBQSxVQUFTO0FBQUEsV0FBNEc7QUFBQSxRQUNySixnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyxxQ0FBdUI7QUFBQSxVQUFTO0FBQUEsV0FBNkk7QUFBQSxRQUN6TCxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyx1Q0FBeUI7QUFBQSxVQUFTO0FBQUEsV0FBeUc7QUFBQSxRQUN2SixnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyx3Q0FBMEI7QUFBQSxVQUFTO0FBQUEsV0FBZ0Y7QUFBQSxRQUMvSCxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyxpREFBbUM7QUFBQSxVQUFTO0FBQUEsV0FBcUg7QUFBQSxRQUM3SyxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsWUFBTyxrQ0FBb0I7QUFBQSxVQUFTO0FBQUEsV0FBd0k7QUFBQSxTQUNuTDtBQUFBLElBQ0Y7QUFBQSxJQUNBLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSx5TUFBd00sR0FBRSwrVEFBb1Q7QUFBQSxNQUN2Z0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhKQUF3SixHQUFFLDhSQUF3UjtBQUFBLE1BQzNiLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RUFBc0UsR0FBRSx1SUFBc0k7QUFBQSxNQUN2TixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsa1FBQWlRO0FBQUEsTUFDelYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFKQUFvSixHQUFFLDRPQUFzTztBQUFBLE1BQ3JZLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrSEFBNEcsR0FBRSx1T0FBc087QUFBQSxNQUM3VixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0dBQW1HLEdBQUUscVFBQW9RO0FBQUEsTUFDbFgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNEQUFxRCxHQUFFLDRPQUE0TjtBQUFBLE1BQzVSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RUFBdUUsR0FBRSx1REFBc0Q7QUFBQSxNQUN4SSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEdBQTJHLEdBQUUsNkhBQTRIO0FBQUEsTUFDbFAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9HQUFtRyxHQUFFLDZNQUE0TTtBQUFBLE1BQzFULGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw0RUFBMkUsR0FBRSxvVEFBeVM7QUFBQSxNQUMvWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaURBQWdELEdBQUUsb0RBQXlDO0FBQUEsT0FDcEc7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFNBQVM7QUFBQSxJQUMxQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFhLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxDQUFJO0FBQUEsSUFDckIsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsQ0FBSTtBQUFBLElBQ2xCLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsQ0FBSTtBQUFBLElBQ3hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVTtBQUFBLElBQ1YsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFhO0FBQUEsSUFDYixlQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixNQUFNO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLHNRQUF3UDtBQUFBLE1BQ2hRLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLDRDQUE4QjtBQUFBLFFBQ2xDLGdCQUFBQSxNQUFDLFFBQUcsMENBQTRCO0FBQUEsUUFDaEMsZ0JBQUFBLE1BQUMsUUFBRywrQ0FBaUM7QUFBQSxTQUN2QztBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFPZ0QsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksYUFBWSxNQUFLLHFCQUFvQjtBQUFBLFFBQUU7QUFBQSxTQUM2UTtBQUFBLElBQUk7QUFBQSxJQUNyWSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUiwyQkFBMkI7QUFBQSxJQUMzQixzQkFBcUI7QUFBQSxFQUN2QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxhQUFhO0FBQUEsSUFDOUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLGVBQWU7QUFBQSxJQUNmLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFxVSxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxZQUFXLE1BQUssT0FBTTtBQUFBLE1BQUU7QUFBQSxPQUFpQixDQUFJO0FBQUEsSUFDNVosVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUscXFCQUF1cEIsQ0FBSTtBQUFBLElBQ3pxQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHc2QkFBMDVCLENBQUk7QUFBQSxJQUNsN0IsVUFBVTtBQUFBLElBQ1YsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLDBEQUF5RCxHQUFFLCtXQUE4VztBQUFBLE1BQ2xiLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSxvV0FBbVc7QUFBQSxNQUM3YSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0RBQW1ELEdBQUUsa2pCQUFpakI7QUFBQSxNQUMvbUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdFQUErRCxHQUFFLGlYQUFnWDtBQUFBLE9BQzViO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsMlNBQTZSLENBQUk7QUFBQSxJQUNuVCxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxxaENBQ29mLENBQUk7QUFBQSxJQUN0Z0IsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx1b0JBQ3BCLENBQUk7QUFBQSxJQUNKLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSx3QkFBc0I7QUFBQSxNQUNoRyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseS9CQUF3L0IsR0FBRSxnR0FBK0Y7QUFBQSxNQUNsbUMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDREQUEyRCxHQUFFLGtHQUFpRztBQUFBLE1BQ3ZLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRUFBaUUsR0FBRSw2SkFBNEo7QUFBQSxNQUN4TyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEVBQWlFLEdBQUUsc0pBQXFKO0FBQUEsTUFDak8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRCQUEyQixHQUFFLHNDQUFxQztBQUFBLE1BQzNFLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3SkFBdUosR0FBRSwyZkFBMGY7QUFBQSxNQUM1cEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtHQUF5RyxHQUFFLGliQUFnYjtBQUFBLE1BQ3BpQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0RBQXFELEdBQUUsMmJBQTBiO0FBQUEsTUFDMWYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVGQUFzRixHQUFFLG9vQkFBa29CO0FBQUEsTUFDbnVCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2TkFBNE4sR0FBRSw2K0ZBQTIrRjtBQUFBLE1BQ2x0RyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUhBQXNILEdBQUUsdTFDQUFnMUM7QUFBQSxNQUNqOUMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZMQUE0TCxHQUFFLGczQ0FBODJDO0FBQUEsTUFDcmpELGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwTEFBeUwsR0FBRSx5M0RBQXUzRDtBQUFBLE1BQzNqRSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseWZBQXdmLEdBQUUsZzZCQUE4NUI7QUFBQSxNQUNqNkMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdyQkFBK3FCLEdBQUUsMkdBQXlHO0FBQUEsTUFDbnlCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxlQUFjLEdBQUUsNmxEQUEybEQ7QUFBQSxNQUNwbkQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1KQUFrSixHQUFFLGdHQUE4RjtBQUFBLE9BQzNQO0FBQUEsSUFDQSxzQkFBc0I7QUFBQSxFQUN4QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxXQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsMGFBQXlaLENBQUk7QUFBQSxJQUMvYSxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxrbkJBQW9tQixDQUFJO0FBQUEsSUFDdG5CLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK1ZBQTRVLENBQUk7QUFBQSxJQUNwVyxVQUFVO0FBQUEsSUFDVixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxNQUFNO0FBQUEsSUFDdkIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsNGxFQUFva0UsQ0FBSTtBQUFBLElBQ3RsRSxnQkFBZ0I7QUFBQSxJQUNoQixTQUFTO0FBQUEsSUFDVCxVQUFVO0FBQUEsSUFDVixXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsZ0pBQStJLEdBQUUsc3pDQUFxekM7QUFBQSxNQUMvOEMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtGQUFpRixHQUFFLGdoQkFBK2dCO0FBQUEsTUFDM21CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyREFBMEQsR0FBRSwwMUJBQXMxQjtBQUFBLE1BQzM1QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUNBQXNDLEdBQUUsbzJDQUE4MUM7QUFBQSxNQUMvNEMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdEQUErQyxHQUFFLHl1QkFBd3VCO0FBQUEsTUFDbHlCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSwrU0FBOFM7QUFBQSxNQUNsWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNERBQTJELEdBQUUsa2dDQUE0L0I7QUFBQSxNQUNsa0MsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZCQUE0QixHQUFFLGswQkFBNHpCO0FBQUEsTUFDbjJCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxR0FBb0csR0FBRSx5dEJBQXd0QjtBQUFBLE1BQ3YwQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUVBQWtFLEdBQUUsaTdCQUFnN0I7QUFBQSxNQUM3L0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtHQUE4RyxHQUFFLHV5QkFBNHhCO0FBQUEsTUFDcjVCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4RUFBNkUsR0FBRSxpaUNBQWdpQztBQUFBLE9BQzFuQztBQUFBLElBQ0EsUUFBUTtBQUFBLElBQ1Isc0JBQXNCO0FBQUEsRUFDeEI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFxZSxnQkFBQUQsTUFBQyxPQUFFLE1BQUssNEdBQTRHLHNCQUFRO0FBQUEsTUFBSTtBQUFBLE9BQ3pTLENBQUk7QUFBQSxJQUNsVixVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxtbkVBT3NLLENBQUk7QUFBQSxJQUN4TCxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHM5Q0FJd00sQ0FBSTtBQUFBLElBQ2hPLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDWDtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSw0REFBaUQsR0FBRSxvZEFBK2I7QUFBQSxNQUMzZixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaURBQWdELEdBQUUsNk5BQTROO0FBQUEsTUFDdlIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDZZQUE0WTtBQUFBLE1BQy9kLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4QkFBNkIsR0FBRSwyTkFBME47QUFBQSxNQUNsUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0RBQWlELEdBQUUsZ2VBQStkO0FBQUEsTUFDM2hCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2Q0FBNEMsR0FBRSxzc0JBQXFzQjtBQUFBLE1BQzV2QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0VBQW1FLEdBQUUsK1ZBQThWO0FBQUEsTUFDNWEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFFQUFvRSxHQUFFLHFZQUFvWTtBQUFBLE1BQ25kLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSwwYUFBeWE7QUFBQSxNQUNuZixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUVBQWtFLEdBQUUsMDFCQUF5MUI7QUFBQSxNQUN0NkIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJDQUEwQyxHQUFFLHFXQUFvVztBQUFBLE1BQ3paLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSxvWEFBbVg7QUFBQSxNQUN2YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0NBQXFDLEdBQUUsNk9BQTRPO0FBQUEsTUFDNVIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZCQUE0QixHQUFFLGlRQUFnUTtBQUFBLE1BQ3ZTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyREFBMEQsR0FBRSxtU0FBa1M7QUFBQSxNQUN2VyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0VBQWlFLEdBQUUsd0tBQXVLO0FBQUEsTUFDblAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdGQUErRSxHQUFFLHdpQkFBdWlCO0FBQUEsTUFDam9CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzSUFBcUksR0FBRSx1aEJBQXNoQjtBQUFBLE1BQ3RxQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsb1BBQW1QO0FBQUEsTUFDM1UsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFEQUFvRCxHQUFFLDRpQkFBMmlCO0FBQUEsT0FDMW1CO0FBQUEsSUFDQSxzQkFBcUI7QUFBQSxFQUN2QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsVUFBUztBQUFBLElBQ1QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsZUFBZTtBQUFBLElBQ2YsY0FBYyxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQXdCLGdCQUFBRCxNQUFDLHNCQUFtQixLQUFJLFlBQVcsTUFBSyxPQUFNO0FBQUEsTUFBRTtBQUFBLE1BQUssZ0JBQUFBLE1BQUMsc0JBQW1CLEtBQUksUUFBTyxNQUFLLFVBQVM7QUFBQSxNQUFFO0FBQUEsTUFBd0csZ0JBQUFBLE1BQUMsc0JBQW1CLEtBQUksVUFBUyxNQUFLLFVBQVM7QUFBQSxNQUFFO0FBQUEsTUFBSyxnQkFBQUEsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssU0FBUTtBQUFBLE1BQUU7QUFBQSxPQUNpYyxDQUFJO0FBQUEsSUFDaHlCLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHl1RUFLME0sQ0FBSTtBQUFBLElBQzVOLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsZ3FDQUNpTCxDQUFJO0FBQUEsSUFDek0sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsV0FBVSxnQkFBQUMsT0FBQUYsWUFBQSxFQUNWO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLDBGQUF5RixHQUFFLHVmQUFxZjtBQUFBLE1BQ3psQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkVBQTRFLEdBQUUsb2hCQUF3Z0I7QUFBQSxNQUMvbEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1FQUFrRSxHQUFFLDhkQUE0ZDtBQUFBLE1BQ3ppQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0VBQThFLEdBQUUsZ2VBQThkO0FBQUEsTUFDdmpCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxpSUFBZ0ksR0FBRSx1WEFBcVg7QUFBQSxNQUNoZ0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtGQUE4RixHQUFFLGdYQUE4VztBQUFBLE1BQ3ZkLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSxxVkFBbVY7QUFBQSxNQUN4YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0ZBQXVGLEdBQUUsa1dBQWdXO0FBQUEsTUFDbGMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJHQUEwRyxHQUFFLHNUQUFvVDtBQUFBLE1BQ3phLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3R0FBdUcsR0FBRSw2V0FBMlc7QUFBQSxNQUM3ZCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaUZBQWdGLEdBQUUsc1lBQW9ZO0FBQUEsTUFDL2QsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdGQUF1RixHQUFFLG1iQUFpYjtBQUFBLE1BQ25oQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaUVBQWdFLEdBQUUsd1lBQXNZO0FBQUEsTUFDamQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDBHQUF5RyxHQUFFLGlaQUErWTtBQUFBLE1BQ25nQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0ZBQWlGLEdBQUUsbVpBQWlaO0FBQUEsTUFDN2UsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtDQUE4QyxHQUFFLGljQUErYjtBQUFBLE1BQ3hmLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRkFBaUYsR0FBRSxrZkFBZ2Y7QUFBQSxNQUM1a0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDhnQkFBNGdCO0FBQUEsTUFDL2xCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnSUFBK0gsR0FBRSwraUJBQTZpQjtBQUFBLE1BQ3ZyQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkdBQTRHLEdBQUUsMmhCQUF5aEI7QUFBQSxNQUNocEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtIQUE4SCxHQUFFLDhHQUE0RztBQUFBLE1BQ3JQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2SEFBNEgsR0FBRSxxYkFBbWI7QUFBQSxPQUMxakI7QUFBQSxJQUNBLGdCQUFlO0FBQUEsRUFDakI7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLFVBQVM7QUFBQSxJQUNULGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSx5QkFBdUI7QUFBQSxNQUM1RSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0NBQThDLEdBQUUsMEdBQXdHO0FBQUEsTUFDakssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJNQUFxTSxHQUFFLG9DQUFrQztBQUFBLE1BQ2xQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzMUJBQWcxQixHQUFFLGNBQVk7QUFBQSxNQUN2MkIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdUQUF1VCxHQUFFLHFJQUFtSTtBQUFBLE1BQ3JjLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3SEFBa0gsR0FBRSxxQ0FBbUM7QUFBQSxNQUNoSyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscU9BQStOLEdBQUUsK0JBQTZCO0FBQUEsTUFDdlEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNLQUFxSyxHQUFFLCtUQUE2VDtBQUFBLE1BQzdlLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2TkFBNE4sR0FBRSx3VUFBc1U7QUFBQSxNQUM3aUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtTQUFvUyxHQUFFLHFaQUFtWjtBQUFBLE1BQ2xzQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc1FBQWdRLEdBQUUscU9BQThOO0FBQUEsTUFDemUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNPQUFnTyxHQUFFLG1FQUFpRTtBQUFBLE1BQzVTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtTUFBNkwsR0FBRSxpUUFBK1A7QUFBQSxNQUN2YyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0hBQWdILEdBQUUsK1BBQXdQO0FBQUEsTUFDblgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9LQUFtSyxHQUFFLDJMQUFvTDtBQUFBLE1BQ2xXLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5SkFBOEksR0FBRSx3UEFBc1A7QUFBQSxNQUMvWSxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNGLEdBQUU7QUFBQTtBQUFBLE1BQXVMO0FBQUEsTUFDaE0sZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDRixHQUFFO0FBQUE7QUFBQSxNQUFvUDtBQUFBLE1BQzdQLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ0YsR0FBRTtBQUFBO0FBQUEsTUFBdU87QUFBQSxNQUNoUCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNGLEdBQUU7QUFBQTtBQUFBLE1BQXVHO0FBQUEsT0FDaEg7QUFBQSxJQUNBLHNCQUFxQjtBQUFBLEVBQ3ZCO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxVQUFVO0FBQUEsSUFDVixTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBdUMsZ0JBQUFELE1BQUMsT0FBRSxNQUFLLHlCQUF3QiwrQkFBaUI7QUFBQSxNQUFJO0FBQUEsT0FBdWQsQ0FBSTtBQUFBLElBQ3prQixVQUFVLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBbU4sZ0JBQUFELE1BQUMsT0FBRSxNQUFLLDhDQUE4QyxtQkFBSztBQUFBLE1BQUk7QUFBQSxPQUt0RyxDQUFJO0FBQUEsSUFDOUwsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx1ZkFBeWUsQ0FBSTtBQUFBLElBQ2pnQixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUixXQUFVLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Y7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsMEVBQXlFLEdBQUUsZ1BBQThPO0FBQUEsTUFDbFUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRGQUEyRixHQUFFLHFhQUFtYTtBQUFBLE1BQ3pnQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkdBQTRHLEdBQUUsa1FBQWdRO0FBQUEsTUFDdlgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRHQUEyRyxHQUFFLDJHQUF5RztBQUFBLE1BQy9OLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrRUFBOEUsR0FBRSx5S0FBdUs7QUFBQSxNQUNoUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0dBQStGLEdBQUUsNHNCQUEwc0I7QUFBQSxNQUNwekIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDJGQUF5RjtBQUFBLE1BQzVLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzR0FBcUcsR0FBRSw2SkFBMko7QUFBQSxNQUMzUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0lBQStILEdBQUUseW5CQUF1bkI7QUFBQSxNQUNqd0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtGQUFpRixHQUFFLGlQQUErTztBQUFBLE1BQzNVLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RkFBc0YsR0FBRSxpSUFBK0g7QUFBQSxNQUNoTyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0VBQThFLEdBQUUsNk5BQTJOO0FBQUEsTUFDcFQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhGQUE2RixHQUFFLHVRQUFxUTtBQUFBLE1BQzdXLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5RkFBd0YsR0FBRSx1UkFBcVI7QUFBQSxPQUN4WDtBQUFBLEVBQ0Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixVQUFVO0FBQUEsSUFDVixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDhjQUFnYyxDQUFJO0FBQUEsSUFDdGQsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2pCQUFpakIsQ0FBSTtBQUFBLElBQ25rQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG9iQUFpYSxDQUFJO0FBQUEsSUFDemIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXNCO0FBQUEsSUFDdEIsMkJBQTJCO0FBQUEsRUFDN0I7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixVQUFVO0FBQUEsSUFDVixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUF5QixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssZ0JBQWU7QUFBQSxNQUFFO0FBQUEsT0FDb1EsQ0FBSTtBQUFBLElBQ3pXLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDROQUE4TSxDQUFJO0FBQUEsSUFDaE8sZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSw2UkFBK1EsQ0FBSTtBQUFBLElBQ3ZTLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSTtBQUFBLElBQ0osYUFBWTtBQUFBLElBQ1osWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxpa0JBQThpQixDQUFJO0FBQUEsSUFDcGtCLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHdxREFFMHBCLENBQUk7QUFBQSxJQUM1cUIsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSwydENBRXFiLENBQUk7QUFBQSxJQUM3YyxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxhQUFhO0FBQUEsSUFDOUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBRUY7OztBQ3A5RFEsU0FDTSxPQUFBRSxPQUROLFFBQUFDLGNBQUE7OztBQ0ZGLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUNFRSxxQkFBQUMsWUFDa2EsT0FBQUMsT0FBaGEsUUFBQUMsY0FERjs7O0FDSUksU0F3R0osWUFBQUMsWUF4R0ksT0FBQUMsT0FLQSxRQUFBQyxjQUxBOzs7QUNJUixTQUVJLE9BQUFDLE9BRkosUUFBQUMsY0FBQTs7O0FDUEUsU0FDRSxPQUFBQyxPQURGLFFBQUFDLGNBQUE7OztBQ0dBLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUNBUSxTQUNFLE9BQUFDLE9BREYsUUFBQUMsY0FBQTs7O0FDQVYsZ0JBQUFDLE9BMkhFLFFBQUFDLGNBM0hGOzs7QUNTWSxnQkFBQUMsT0FHZCxRQUFBQyxjQUhjOzs7QUNaSixTQUVRLE9BQUFDLE9BRlIsUUFBQUMsY0FBQTs7O0FDSkYsZ0JBQUFDLGFBQUE7OztBQ1NFLFNBRVEsT0FBQUMsT0FGUixRQUFBQyxjQUFBOzs7QUNMSixTQUVRLE9BQUFDLE9BRlIsUUFBQUMsY0FBQTs7O0FDREEsU0FFSSxPQUFBQyxPQUZKLFFBQUFDLGNBQUE7OztBQ0ZJLGdCQUFBQyxPQUVBLFFBQUFDLGNBRkE7OztBQ0lKLFNBRVEsT0FBQUMsT0FGUixRQUFBQyxjQUFBOzs7QUNISSxTQUVJLE9BQUFDLE9BRkosUUFBQUMsY0FBQTs7O0FDRkosU0FDSSxPQUFBQyxPQURKLFFBQUFDLGNBQUE7OztBQzZESixTQUNFLE9BQUFDLE9BREYsUUFBQUMsY0FBQTs7O0FDM0RJLGdCQUFBQyxhQUFBOzs7QUNBSixxQkFBQUMsWUFHSSxPQUFBQyxPQURBLFFBQUFDLGNBRko7OztBQ0NFLHFCQUFBQyxZQUNBLE9BQUFDLE9BV0UsUUFBQUMsY0FaRjs7O0FDSEEscUJBQUFDLFlBRUksT0FBQUMsT0FGSixRQUFBQyxjQUFBOzs7QUNITixTQUFTLGFBQUFDLGtCQUFpQjtBQUMxQixTQUFTLGVBQUFDLG9CQUFtQjtBQWdDdEIscUJBQUFDLFlBR0UsT0FBQUMsT0FJTSxRQUFBQyxjQVBSOzs7QUNwQkUscUJBQUFDLFlBSU0sT0FBQUMsT0FERixRQUFBQyxjQUhKOzs7QUNWRixnQkFBQUMsYUFBQTs7O0FDQUEsZ0JBQUFDLGFBQUE7OztBQ0ZGLGdCQUFBQyxhQUFBOzs7QUNHRCxxQkFBQUMsWUFBQSxPQUFBQyxjQUFBOzs7QUNIQyxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDR1EsU0FDSSxPQUFBQyxRQURKLFFBQUFDLGNBQUE7OztBQ0tKLFNBRUksT0FBQUMsUUFGSixRQUFBQyxjQUFBOzs7QUNSSixnQkFBQUMsY0FBQTs7O0FDTVEsU0FrQkUsWUFBQUMsWUFoQk0sT0FBQUMsUUFGUixRQUFBQyxjQUFBOzs7QUNHWixTQUNFLE9BQUFDLFFBREYsUUFBQUMsY0FBQTtBQXNIQSxTQUFTLFVBQVUsT0FBYTtBQUM1QixRQUFNLFlBQVksQ0FBQyxXQUFzRDtBQUNyRSxRQUFJLGlCQUFpQixTQUFTLHVCQUF1QixXQUFXO0FBQ2hFLGFBQVMsUUFBUSxHQUFHLFFBQVEsZUFBZSxRQUFRLFNBQVM7QUFFeEQsTUFBQyxlQUFlLEtBQUssRUFBa0IsTUFBTSxVQUFVO0FBQUEsSUFDM0Q7QUFDQSxRQUFJLGFBQWEsU0FBUyxlQUFlLEtBQUs7QUFDOUMsSUFBQyxXQUEyQixNQUFNLFVBQVU7QUFBQSxFQUNoRDtBQUNBLFNBQU87QUFDWDtBQUVBLElBQU0sVUFBVSxnQkFBQUMsT0FBQyxRQUFHLElBQUcsa0JBQWlCLFdBQVUsaUJBQ2xEO0FBQUEsa0JBQUFDLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0YsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxZQUFZLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDL0UsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxZQUFZLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsR0FFakY7QUFDQSxJQUFNLFFBQVEsZ0JBQUFELE9BQUMsUUFBRyxJQUFHLGVBQWMsV0FBVSxpQkFBZ0IsT0FBTyxFQUFDLFNBQVMsT0FBTSxHQUNwRjtBQUFBLGtCQUFBQyxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNGLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsUUFBUSxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGVBQUMsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxHQUNSO0FBQ0EsSUFBTSxRQUFRLGdCQUFBRCxPQUFDLFFBQUcsSUFBRyxlQUFjLFdBQVUsaUJBQWdCLE9BQU8sRUFBQyxTQUFTLE9BQU0sR0FDbEY7QUFBQSxrQkFBQUMsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsUUFBUSxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGVBQUMsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFFBQVEsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxlQUFDLEdBQU8sR0FBSTtBQUFBLEVBQzFFLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxRQUFRLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZUFBQyxHQUFPLEdBQUk7QUFBQSxFQUMxRSxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxHQUM5RTtBQUNBLElBQU0sTUFBTSxnQkFBQUQsT0FBQyxRQUFHLElBQUcsYUFBWSxXQUFVLGlCQUFnQixPQUFPLEVBQUMsU0FBUyxPQUFNLEdBQ2hGO0FBQUEsa0JBQUFDLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0YsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLE1BQU0sR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxlQUFDLEdBQU8sR0FBSTtBQUFBLEVBQ3hFLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxNQUFNLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZUFBQyxHQUFPLEdBQUk7QUFBQSxFQUN4RSxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxPQUFPLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxPQUFPLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEdBQ1I7OztBQ2pSUSxnQkFBQUMsY0FBQTs7O0FDTEosZ0JBQUFDLGNBQUE7OztBQ0lFLHFCQUFBQyxZQUVJLE9BQUFDLFFBQ0EsUUFBQUMsY0FISjs7O0FDREEsZ0JBQUFDLGNBQUE7OztBQ0dOLFNBQVMsT0FBQUMsTUFBSyxVQUFVLGlCQUFpQjtBQUN6QyxTQUFTLFNBQVNDLFVBQVMsV0FBQUMsVUFBUyxVQUFBQyxTQUFRLGNBQUFDLGFBQVksaUJBQUFDLGdCQUFlLGVBQUFDLGNBQWEsU0FBQUMsUUFBTyxxQkFBQUMsMEJBQXlCO0FBa0I5RyxxQkFBQUMsWUFRQSxPQUFBQyxRQUlNLFFBQUFDLGNBWk47QUFiTkMsU0FBUTtBQUFBLEVBQ0pDO0FBQUEsRUFDQUM7QUFBQSxFQUNBQztBQUFBLEVBQ0FDO0FBQUEsRUFDQUM7QUFBQSxFQUNBQztBQUFBLEVBQ0FDO0FBQ0Y7OztBQ3ZCRixTQUFTLGFBQUFDLG1CQUFpQjtBQWdDZCxnQkFBQUMsUUFNZ0IsUUFBQUMsY0FOaEI7OztBQ2hDWixTQUFTLGFBQUFDLG1CQUFpQjtBQXlCZCxnQkFBQUMsUUFFQSxRQUFBQyxjQUZBOzs7QUNsQkosZ0JBQUFDLGNBQUE7OztBQ0xBLGdCQUFBQyxjQUFBOzs7QUNPRixxQkFBQUMsWUFFRyxPQUFBQyxRQUdELFFBQUFDLGNBTEY7OztBQ05BLGdCQUFBQyxjQUFBOzs7QUNFSSxnQkFBQUMsY0FBQTs7O0FDTUoscUJBQUFDLFlBS2dzQixPQUFBQyxRQUE1ckIsUUFBQUMsY0FMSjs7O0FDUkEsZ0JBQUFDLGNBQUE7OztBQ0VFLGdCQUFBQyxjQUFBOzs7QUNFQSxnQkFBQUMsY0FBQTs7O0FDRkEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDR0EsZ0JBQUFDLGNBQUE7OztBQ1JrVixTQUFTLGFBQWEsUUFBd0I7QUFDdFksTUFBSSxPQUFPLE9BQU8sTUFBTSxFQUFFLFlBQVk7QUFDdEMsU0FBTyxLQUFLLFFBQVEsZUFBZSxHQUFHO0FBQ3RDLFNBQU8sS0FBSyxRQUFRLE9BQU8sR0FBRztBQUU5QixRQUFNLFFBQVEsS0FBSyxPQUFPLE1BQU07QUFDaEMsUUFBTSxNQUFNLEtBQUssT0FBTyxLQUFLO0FBQzdCLFNBQU8sS0FBSyxVQUFVLE9BQU8sUUFBUSxLQUFLLFNBQVksR0FBRztBQUMzRDs7O0FDUjZVLFNBQVMsYUFBQUMsbUJBQWlCOzs7QTdJS3ZXLElBQU8sc0JBQVEsTUFBTTtBQUNuQixRQUFNLE1BQU0sUUFBUSxPQUFPLFFBQVEsSUFBSSxDQUFDO0FBRXhDLE1BQUksQ0FBQyxJQUFJLGdCQUFnQjtBQUN2QixVQUFNLElBQUksTUFBTSxvREFBb0Q7QUFBQSxFQUN0RTtBQUVBLFVBQVEsSUFBSSxtQkFBbUIsSUFBSSxjQUFjLEVBQUU7QUFHbkQsUUFBTSxXQUFXLGFBQWEsSUFBSSxjQUFjO0FBRWhELFVBQVEsSUFBSSxtQkFBbUIsSUFBSSxjQUFjO0FBQ2pELFVBQVEsSUFBSSxjQUFjLFFBQVE7QUFFbEMsU0FBTyxhQUFhO0FBQUEsSUFDbEIsTUFBTSxJQUFJLGFBQWEsSUFBSSxjQUFjLENBQUM7QUFBQSxJQUMxQyxTQUFTLENBQUMsTUFBTSxDQUFDO0FBQUEsSUFDakIsT0FBTztBQUFBLE1BQ0wsUUFBUTtBQUFBLElBQ1Y7QUFBQSxJQUNBLFdBQVc7QUFBQSxFQUNiLENBQUM7QUFFSDsiLAogICJuYW1lcyI6IFsidXNlRWZmZWN0IiwgInVzZVJlZiIsICJ1c2VTdGF0ZSIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJ1c2VFZmZlY3QiLCAidXNlUmVmIiwgInVzZVN0YXRlIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJ1c2VTdGF0ZSIsICJ1c2VTdGF0ZSIsICJqc3giLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZU5hdmlnYXRlIiwgInVzZU5hdmlnYXRlIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4IiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiUmVhY3QiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAidXNlRWZmZWN0IiwgInVzZVN0YXRlIiwgInVzZUxvY2F0aW9uIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgIlJlYWN0IiwgImpzeCIsICJSZWFjdCIsICJqc3giLCAianN4IiwgImpzeHMiLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAidXNlU3RhdGUiLCAidXNlRWZmZWN0IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImJpYnRleFNvdXJjZXMiLCAianN4IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJ1c2VTdGF0ZSIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgImJpYnRleFNvdXJjZXMiLCAianN4IiwgImJpYnRleFNvdXJjZXMiLCAianN4IiwgImJpYnRleFNvdXJjZXMiLCAianN4IiwgImJpYnRleFNvdXJjZXMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJ1c2VFZmZlY3QiLCAidXNlTG9jYXRpb24iLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeCIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4cyIsICJqc3giLCAianN4IiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAiQmFyIiwgIkNoYXJ0SlMiLCAiVG9vbHRpcCIsICJMZWdlbmQiLCAiQmFyRWxlbWVudCIsICJDYXRlZ29yeVNjYWxlIiwgIkxpbmVhclNjYWxlIiwgIlRpdGxlIiwgIlJhZGlhbExpbmVhclNjYWxlIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgIkNoYXJ0SlMiLCAiQ2F0ZWdvcnlTY2FsZSIsICJSYWRpYWxMaW5lYXJTY2FsZSIsICJMaW5lYXJTY2FsZSIsICJCYXJFbGVtZW50IiwgIlRpdGxlIiwgIlRvb2x0aXAiLCAiTGVnZW5kIiwgInVzZUVmZmVjdCIsICJqc3giLCAianN4cyIsICJ1c2VFZmZlY3QiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJ1c2VFZmZlY3QiXQp9Cg==