301 status code means that the requested resource has been permanently moved to a new URL. All future requests should use the new address.
The browser will automatically redirect the user to the new address, and search engines will update their indexes.
200 status code is a standard successful HTTP server response. It means that the client’s request (e.g., from a browser) was successfully processed, and the server is delivering the requested data.
The user receives content without errors, and the page or application functions properly. If Code 200 is accompanied by data, the browser or program processes and displays it to the user.
GET / HTTP/1.1 Host: pny.com Accept: */* User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
<!DOCTYPE html> <html id="htmlTag" xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head id="Head1"><!--Page Generated @ 10:05:23 AM--> <!--Copyright Bridgeline Digital, Inc. An unpublished work created in 2009. All rights reserved. This software contains the confidential and trade secret information of Bridgeline Digital, Inc. ("Bridgeline"). Copying, distribution or disclosure without Bridgeline's express written permission is prohibited--> <!-- 4/29/2025 10:05:23 AM | SAAS-P-W6-B --><title>PNY | NVIDIA Graphics, Storage, Networking & Memory Solutions</title> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-NCCR4J');</script> <!-- End Google Tag Manager --><link rel="stylesheet" href="https://use.typekit.net/cib0vqh.css"> <style> .h-pushXSmBottom { font-family: bebas-neue-pro !important; } .feature-bar h1 { font-family: bebas-neue-pro !important; text-transform: none !important; } </style><meta name="google-site-verification" content="MyH-Z-yXZ9yL0ThGbJukj30ImlvFO5WrUcFMYYzzPrA"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:site" content="@PNYTechnologies"> <meta name="twitter:creator" content="@PNYTechnologies"> <meta name="twitter:title" content="PNY - NVIDIA Graphics, Storage, Networking & Memory Solutions"> <meta name="twitter:description" content="PNY NVIDIA Graphics Cards, Networking, Data Center GPUs, Solid State Drives, PC Memory & Flash Memory for consumers & professionals."> <meta name="twitter:image" content="https://www.pny.com/Image%20Library/og-images/pny-products-og.jpg"> <meta property="og:title" content="PNY - NVIDIA Graphics, Storage, Networking & Memory Solutions"> <meta property="og:site_name" content="PNY.com"> <meta property="og:url" content="https://www.pny.com/"> <meta property="og:description" content="PNY NVIDIA Graphics Cards, Networking, Data Center GPUs, Solid State Drives, PC Memory & Flash Memory for consumers & professionals."> <meta property="og:type" content="website"> <meta property="og:image" content="https://www.pny.com/Image%20Library/og-images/pny-products-og.jpg"><meta name="description" content="PNY NVIDIA Graphics Cards, Networking, Data Center GPUs, Solid State Drives, PC Memory & Flash Memory for consumers & professionals." /> <meta name="keywords" content="NVIDIA Graphics Cards, NVIDIA Professional Graphics, Networking Solutions, Data Center GPUs, Solid State Drives, PC Memory, Flash Memory, Consumer, Professional, PNY, PNY Technologies; SSD, GPU" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/main.css?v=638794963260000000" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/nav-fix.css?v=637332611851772038" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/global-contrast-fix.css?v=637348162258740922" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/breadcrumb-bg-fix.css?v=637353340949364827" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/mainfix.css?v=637363852063911655" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/pny-custom-fonts.css?v=637997776885983510" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/Support%20Solutions/support-solutions.css?v=638654863747985386" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/pny-main.min.css?v=638702126976544547" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/pny-custom-modules.min.css?v=638798759255771942" /> <link media="ALL" rel="stylesheet" type="text/css" href="/Style%20Library/css/unminified/pny-custom-modules.css?v=638798759608281941" /> <link href="https://www.pny.com" rel="canonical" /><script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.7/jquery-ui.min.js"></script> <script type="text/javascript" src="/Script%20Library/front-end/jquery-modal-video.min.js?v=637720534806006194"></script> <script type="text/javascript" src="/Script%20Library/front-end/frontEnd.js?v=638794963200000000"></script> <script type="text/javascript"> //<![CDATA[ var publicSiteUrl='https://www.pny.com/'; var editorContext='SiteEditor'; var basePageType='basepage'; var pageState='View'; var jSpinnerUrl='/iapps_images/spinner.gif'; var jRotatingCube='/iapps_images/loading-spinner.gif'; var jWebApiRoutePath='api'; var PageId='4ed8e334-463d-4405-8f65-b8e697d47fe3'; var WorkflowId=''; var ReferrerTypeId='8'; var ReferrerUrl='home/pny-home'; var appInsights = window.appInsights || function (config) { function r(config) { t[config] = function () { var i = arguments; t.queue.push(function () { t[config].apply(t, i) }) } } var t = { config: config }, u = document, e = window, o = "script", s = u.createElement(o), i, f; for (s.src = config.url || "//az416426.vo.msecnd.net/scripts/a/ai.0.js", u.getElementsByTagName(o)[0].parentNode.appendChild(s), t.cookie = u.cookie, t.queue = [], i = ["Event", "Exception", "Metric", "PageView", "Trace"]; i.length;) r("track" + i.pop()); return r("setAuthenticatedUserContext"), r("clearAuthenticatedUserContext"), config.disableExceptionTracking || (i = "onerror", r("_" + i), f = e[i], e[i] = function (config, r, u, e, o) { var s = f && f(config, r, u, e, o); return s !== !0 && t["_" + i](config, r, u, e, o), s }), t }({ instrumentationKey: 'a4ee8c26-7e89-4309-984d-b949f6d6c334' }); window.appInsights = appInsights; appInsights.trackPageView(); var siteId = '8039ce09-e7da-47e1-bcec-df96b5e411f4';var swgif = '/Tracking/WebPageEventLogger.axd'; //]]> </script> <meta name="viewport" content="width=device-width, initial-scale=1" /><meta name="apple-mobile-web-app-capable" content="yes" /><meta name="apple-mobile-web-app-status-bar-style" content="black" /><meta name="apple-mobile-web-app-title" content="Web Starter Kit" /><meta name="msapplication-TileImage" content="Image Library/template-images/touch/ms-touch-icon-144x144-precomposed.png" /><meta name="msapplication-TileColor" content="#3372DF" /><link rel='icon' type='image/png' href='/Image%20Library/content-images/favicon.png' /></head> <body id="bodyTag"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NCCR4J" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <form method="post" action="/" id="form1"> <div class="aspNetHidden"> <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> </div> <script type="text/javascript"> //<![CDATA[ var theForm = document.forms['form1']; function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); } } //]]> </script> <script src="https://ajax.aspnetcdn.com/ajax/4.6/1/WebForms.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ window.WebForm_PostBackOptions||document.write('<script type="text/javascript" src="/WebResource.axd?d=oCKj8IvNuIk7gy1HJUatdrxc44YP4nQWME8Wxdd6DGPnke3qspDXbthnORZlPAcXN7_u1xDrkIusxuRK-nyT4HeVlao1&t=638628063619783110"><\/script>');//]]> </script> <script type="text/javascript"> //<![CDATA[ var jTemplateType='0';var loadedFromVersion='False';//]]> </script> <script src="https://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjax.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ (window.Sys && Sys._Application && Sys.Observer)||document.write('<script type="text/javascript" src="/ScriptResource.axd?d=MJNtj0g_UM4zGanwAyuuRG2ZL1Fh2_5qKV6u0dwO0iiuUwygQkegOGwijLfJF2oCl8xSfLhkbW5iIBwbTksBVsipvisyj_QIZy3bnLRD9uxu7hMoHX8bTKVs1xaNmdVLBf5cxHbasha9C7RP8cGwwBRvMIg1&t=2a9d95e3"><\/script>');//]]> </script> <script src="https://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxWebForms.js" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ (window.Sys && Sys.WebForms)||document.write('<script type="text/javascript" src="/ScriptResource.axd?d=rrjIzXxqFgS_NeHqZ9Ng45C0gCzNmnR5CA1ak27lMKAvISVEo1sbB9TillKc2dDcOpQlskjgnts5VcDIwm_ZRJ5TuTrWw4bNyIap2RHj5FfzAaNCRbpthgF8qlk8qmvDRA3E5JbLtKZperzCeSI-qd1UgH9xxzV3DPYIbouMGydV69bD0&t=2a9d95e3"><\/script>');//]]> </script> <script type="text/javascript"> //<![CDATA[ Sys.WebForms.PageRequestManager._initialize('scriptManager', 'form1', [], [], [], 90, ''); //]]> </script> <div class="pageWrap"> <a name="backToTop" class="backToTop-anchor"></a> <header class="headerMain"> <div class="headerMain-util"> <div class="headerMain-utilInner"> <div class="headerMain-utilZone01"> <nav class="navUtil"> <ul class="CLHierarchicalNav"><li class="first first"><a href="https://www.pny.com/en-eu" target="_blank">PNY EMEA</a></li><li class="first"><a href="https://www.pny.com.tw" target="_blank">PNY APAC</a></li><li class="last hasChildren"><a href="/translate">Translate</a><ul><li class="first"><a href="https://www.pny.com/?lang=en">English</a></li><li><a href="https://www.pny.com/?lang=es">Spanish</a></li><li class="last"><a href="https://www.pny.com/?lang=br">Portuguese</a></li></ul></li></ul> </nav> </div> <div class="headerMain-utilZone02"> </div> <div class="headerMain-utilZone03"> <nav class="navSignin"> <ul> <li><a href="/my-account/login">Login</a></li> <li><a href="/my-account/register">Register</a></li> </ul> </nav> </div> </div> </div> <div class="headerMain-main"> <div class="headerMain-mainInner"> <div class="headerMain-mainZone01"> <div class="logoMain"> <a href="https://www.pny.com"><img src="/Image Library/content-images/logo.png" alt="PNY Technologies Inc."></a> </div> </div> <div class="headerMain-mainZone02"> <nav id="navMain" runat="server" class="navMain"><ul> <li class="hasChildren is-mega"><a href="/consumer">Consumer</a><ul> <li class=""><a href="/consumer/view-all-products">View All Products</a><ul> <li class=""><a href="/consumer/view-all-products/geforce-graphics">GeForce Graphics</a></li> <li class=""><a href="/consumer/view-all-products/solid-state-drives">Solid State Drives</a></li> <li class=""><a href="/consumer/view-all-products/memory">Memory</a></li> <li class=""><a href="/consumer/view-all-products/flash-memory-cards">Flash Memory Cards & Card Readers</a></li> <li class=""><a href="/consumer/view-all-products/usb-flash-drives">USB Flash Drives</a></li> <li class=""><a href="/consumer/view-all-products/otg-flash-drives">OTG Flash Drives</a></li> <li class=""><a href="/consumer/view-all-products/hp-authorized-products">HP Authorized Products</a></li> </ul> </li> <li class=""><a href="/consumer/learn-more">Learn More</a><ul> <li class=""><a href="/consumer/learn-more/about-pny">About PNY</a></li> <li class=""><a href="/consumer/learn-more/press-center">Press Center</a></li> <li class=""><a href="/consumer/learn-more/pny-elite-team">PNY Elite Team</a></li> <li class=""><a href="/consumer/learn-more/redefine-possibilities">Redefine Possibilities</a></li> <li class=""><a href="/consumer/learn-more/pny-type-c-usb-flash-drives">Type-C USB Flash Drives</a></li> <li class=""><a href="/consumer/learn-more/uhs-ii-flash-memory-cards">UHS-II Flash Memory Cards</a></li> <li class=""><a href="/consumer/learn-more/local-vs-cloud-storage">Local Vs Cloud Storage</a></li> <li class=""><a href="/consumer/learn-more/rtx-ai-pcs">RTX AI PCs</a></li> </ul> </li> <li class=""><a href="/consumer/resource-center">Resource Center</a><ul> <li class=""><a href="/consumer/resource-center/ssd-configurator">SSD Configurator</a></li> <li class=""><a href="/consumer/resource-center/memory-configurator">Memory Configurator</a></li> <li class=""><a href="/gaming/learn-more/velocityx">VelocityX</a></li> <li class=""><a href="/consumer/learn-more/contact-us">Contact Us</a></li> </ul> </li> <li class=""><a href="/consumer/shop-pny">Shop PNY</a><ul> <li class=""><a href="/company/where-to-buy?country=US">Where to Buy</a></li> <li class=""><a href="/consumer/shop-pny/previous-generation-geforce">Previous Generation GeForce</a></li> <li class=""><a href="/consumer/shop-pny/previous-generation-ssd">Previous Generation SSD</a></li> </ul> </li> </ul> </li> <li class="hasChildren is-mega"><a href="/professional">Professional</a><ul> <li class=""><a href="/professional/hardware">Hardware</a><ul> <li class=""><a href="/professional/hardware/nvidia-professional-products">NVIDIA Professional Graphics</a></li> <li class=""><a href="/professional/hardware/nvidia-embedded-gpus">NVIDIA Embedded GPUs</a></li> <li class=""><a href="/professional/hardware/nvidia-data-center-gpus">NVIDIA Data Center GPUs</a></li> <li class=""><a href="/professional/hardware/networking-solutions">Networking Solutions</a></li> <li class=""><a href="/professional/hardware/nvidia-igx">NVIDIA IGX Orin</a></li> <li class=""><a href="/professional/hardware/nvidia-geforce-graphics">NVIDIA GeForce Graphics</a></li> <li class=""><a href="/professional/hardware/solid-state-drives">Solid State Drives</a></li> <li class=""><a href="/professional/hardware/arista-networks">Arista Networks</a></li> <li class=""><a href="/professional/hardware/nvidia-pro-sync">NVIDIA RTX PRO Sync</a></li> </ul> </li> <li class=""><a href="/professional/software-solutions">Software & Solutions</a><ul> <li class="01 h-menuSubheading first"><a href="javascript:void(0)">Software</a></li> <li class="02"><a href="/professional/software-solutions/nvidia-virtual-gpu">NVIDIA Virtual GPU</a></li> <li class="03"><a href="/professional/software-solutions/nvidia-omniverse-enterprise">NVIDIA Omniverse Enterprise</a></li> <li class="04"><a href="/professional/software-solutions/nvidia-ai-enterprise">NVIDIA AI Enterprise</a></li> <li class="05"><a href="/professional/software-solutions/nvidia-metropolis">NVIDIA Metropolis</a></li> <li class="06 h-menuSubheading"><a href="javascript:void(0)">Solutions</a></li> <li class="07"><a href="/professional/software-solutions/blackwell-architecture">NVIDIA RTX PRO Blackwell</a></li> <li class="07"><a href="/professional/software-solutions/nvidia-ada-lovelace">NVIDIA Ada Lovelace</a></li> <li class="08"><a href="/professional/software-solutions/nvidia-rtx-ampere">NVIDIA RTX Ampere</a></li> <li class="09"><a href="/professional/software-solutions/nvidia-data-center-solutions">NVIDIA Data Center Solutions</a></li> <li class="10"><a href="/professional/software-solutions/ai-accelerator">AI Accelerator</a></li> <li class="13"><a href="/professional/software-solutions/enterprise-storage">VAST Data</a></li> <li class="14"><a href="/professional/software-solutions/ai-workbench">AI Workbench</a></li> <li class="15"><a href="/professional/software-solutions/markets">Markets</a><ul> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/architecture-engineering-construction">Architecture, Engineering, & Construction</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/manufacturing">Manufacturing</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/media-entertainment">Media & Entertainment</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/higher-education">Higher Education</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/government">Government</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/healthcare">Healthcare</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/finance">Finance</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/energy-exploration-oil-gas">Energy Exploration (Oil & Gas)</a></li> <li class="h-desktopHide"><a href="/professional/software-solutions/markets/casino-gaming">Casino Gaming</a></li> </ul> </li> <li class="16"><a href="/professional/software-solutions/market-solutions">Market Solutions</a></li> <li class="17"><a href="/professional/software-solutions/artificial-intelligence">Artificial Intelligence</a></li> <li class="18"><a href="/professional/software-solutions/virtual-reality">Virtual Reality</a></li> </ul> </li> <li class=""><a href="/professional/resource-center">Resource Center</a><ul> <li class="01 h-menuSubheading first"><a href="javascript:void(0)">Resources</a></li> <li class="02"><a href="/professional/resource-center/about-pny-pro">About PNY Pro</a></li> <li class="03"><a href="/company/where-to-buy?country=US">Where to Buy</a></li> <li class="04"><a href="https://proconfig.pny.com/home">Pro GPU Configurator</a></li> <li class="05"><a href="/company/support/additional-resources">Product Brochures</a></li> <li class="06"><a href="/professional/resource-center/pny-pro-studio">PNY Pro Studio</a></li> <li class="07"><a href="/professional/resource-center/virtual-events">Virtual Events</a></li> <li class="08"><a href="https://blog.pny.com/blogpnycom">PNY Blog</a></li> <li class="09"><a href="/professional/resource-center/press-center">Press Center</a></li> <li class="10 h-menuSubheading"><a href="javascript:void(0)">Programs</a></li> <li class="11"><a href="https://pnypartners.com/login/">Partner Program</a></li> <li class="12"><a href="/professional/resource-center/long-life-program">Long Life Program</a></li> </ul> </li> <li class=""><a href="/professional/support">Support</a><ul> <li class=""><a href="/professional/support/contact-us">Contact Us</a></li> <li class=""><a href="/professional/support/commercial-rma-request-form">Commercial RMA Request Form</a></li> <li class=""><a href="/professional/support/legacy-nvidia-pro-products">Legacy NVIDIA Pro Products</a></li> <li class=""><a href="/professional/support/legacy-nvidia-data-center-gpus">Legacy NVIDIA Data Center GPUs</a></li> </ul> </li> </ul> </li> <li class=""><a href="/oem">OEM</a></li> <li class="hasChildren is-mega"><a href="/gaming">Gaming</a><ul> <li class=""><a href="/gaming/xlr8-products">XLR8 Products</a><ul> <li class=""><a href="/gaming/xlr8-products/xlr8-graphics-cards">XLR8 GeForce Graphics Cards</a></li> <li class=""><a href="/gaming/xlr8-products/xlr8-ssd">XLR8 Solid State Drives</a></li> <li class=""><a href="/gaming/xlr8-products/xlr8-memory">XLR8 Memory</a></li> </ul> </li> <li class=""><a href="/gaming/learn-more">Learn More</a><ul> <li class=""><a href="/gaming/learn-more/accelerate-your-gaming">Accelerate Your Gaming</a></li> <li class=""><a href="/gaming/learn-more/velocityx">VelocityX</a></li> <li class=""><a href="/gaming/learn-more/modding">XLR8 Modding</a></li> <li class=""><a href="/gaming/learn-more/accelerate-your-ps5-gaming">Accelerate Your PS5 Gaming</a></li> <li class=""><a href="/gaming/learn-more/rtx-50-series">GeForce RTX 50 Series</a></li> </ul> </li> <li class=""><a href="javascript:void(0)">Community</a><ul> <li class=""><a href="/gaming/community/xlr8-wallpapers">XLR8 Wallpapers</a></li> </ul> </li> </ul> </li> <li class=""><a href="https://www.pny.com/consumer/shop-pny">Shop</a></li> <li class=""><a href="/support">Support</a></li> <li class=""><a href="/company/where-to-buy?country=US">Where to Buy</a></li> </ul></nav> </div> <div class="headerMain-mainZone03"> <a class="cartStatus" onclick="document.location = '/view-cart/shopping-cart';"> <span class="bug cartStatus-bug">0</span> </a> <div data-mfp-focus="#searchMain" data-mfp-src="#search-popup" class="searchToggle openPopup"></div> <div class="popup mfp-hide popup--search" id="search-popup"> <div class="searchBox searchBox--main"> <input id="searchMain" type="text" placeholder="Search" name="" class="searchBox-textField" aria-label="Search" /> <a class="searchBox-submit" id="searchBox-submit" href="javascript:void(0)" aria-label="Search Submit"></a> </div> </div> <script> $(document).ready(function () { $('#searchMain').keydown(function (event) { if (event.keyCode == 13) { event.preventDefault(); submitSiteSearch($('#searchMain').val()); } }); $('#searchBox-submit').click(function () { submitSiteSearch($('#searchMain').val()); }); }); function submitSiteSearch(searchVal) { if (searchVal) document.location = '/home/product-search?q=' + encodeURIComponent(searchVal); } </script> <div class="mobileDrawerToggle drawerToggle" data-for="globals-mobile" data-mobile="true"></div> </div> </div> </div> </header> <main> <h1 class="h-visuallyHidden">PNY Technologies Inc.</h1> <div id="ctl01_fwpzcMainContent"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_C73YF97CLZ"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_C73YF97CLZ_ctl00"> <div class="css-inline"> <style> .slide { width: 100vw; height: 700px; display: flex; align-content: center; align-items: center; justify-content: center; flex-wrap: wrap; background: linear-gradient(to bottom, #000000, #222222); background-size: cover; background-repeat: no-repeat; position: relative; } .unslider { height: 700px; } .pny-rotator-content { padding-bottom: 50px; background-size: cover; background-position: center; background-repeat: no-repeat; display: flex; justify-content: flex-start; align-items: flex-end; box-sizing: border-box; width: 100%; height: 700px; position: relative; overflow: hidden; } .pny-rotator-inner-content { padding: 32px 32px 32px 5vw; box-sizing: border-box; border-radius: 0 10px 10px 0; position: relative; z-index: 3; } .pny-rotator-inner-content>h2, .pny-rotator-inner-content>h3 { font-weight: lighter !important; line-height: 1.2em; font-size: 28px; max-width: 460px; } .pny-rotator-inner-content>.title-shrink { font-size: 30px; } .pny-subtitle, .pny-pretitle { letter-spacing: 3px; line-height: 1.4em; font-size: 16px !important; display: block; } .pny-rotator-inner-content>.pny-copy { max-width: 460px; font-size: 16px; } .slider-logo { display: inline !important; width: 100%; max-width: 180px; height: auto !important; } .unslider-nav ol { list-style: none; text-align: left; padding-bottom: 50px !important; color: white; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 700px; background-color: rgba(255, 255, 255, 0.15); width: 75px; border-left: solid 0.5px #ffffff !important; } .unslider-nav ol li { color: #000000; display: inline-block; width: 10px; height: 10px; margin-top: 10px !important; background: transparent; border-radius: 50em; overflow: hidden; text-indent: -999em; background-color: rgba(255, 255, 255, 0.35); cursor: pointer; border: none !important; border: solid 1px #fff !important; } .unslider-nav ol li.unslider-active { background: rgba(255, 255, 255, 1); cursor: default; } .unslider { position: relative; overflow-y: hidden; } .unslider-nav { position: absolute; top: 0; right: 0; left: auto; z-index: 10; } .unslider { overflow: auto; margin: 0; padding: 0; } .unslider-wrap { position: relative; } .unslider-wrap.unslider-carousel>li { float: left; } .unslider-vertical>ul { height: 100%; } .unslider-vertical li { float: none; width: 100%; } .unslider-fade { position: relative; } .unslider-fade .unslider-wrap li { position: absolute; left: 0; top: 0; right: 0; z-index: 8; } .unslider-fade .unslider-wrap li.unslider-active { z-index: 10; } .unslider li, .unslider ol, .unslider ul { list-style: none; margin: 0; padding: 0; border: none; } .unslider-arrow { position: absolute; right: 0; left: auto; top: 0; bottom: auto; margin-top: 0; transform: rotate(90deg); z-index: 11; cursor: pointer; font-size: 40px; color: #ffffff; font-weight: bold; opacity: 0.5; transition: opacity .2s ease-in-out; border-right: solid 0.5px #ffffff; width: 75px; height: 75px; display: flex; justify-content: center; align-items: center; } .unslider-arrow:hover { opacity: 1; color: white !important; background-color: rgba(255, 255, 255, 0.35); } .unslider-arrow.next { transform: translateY(75px) rotate(90deg); right: 0; left: auto; } .unslider-arrow.prev { right: 0; left: auto; } .rgb-rotation { animation: rgbRotate 10s linear infinite; } @keyframes rgbRotate { 0% { background-color: #ff2f2f; } 10% { background-color: #ff9b2f; } 20% { background-color: #ffe92f; } 30% { background-color: #c7ff2f; } 40% { background-color: #56ff2f; } 50% { background-color: #2fff96; } 60% { background-color: #2fdfff; } 70% { background-color: #2f78ff; } 80% { background-color: #6a2fff; } 90% { background-color: #ff2ff8; } 100% { background-color: #ff2f2f; } } .rgb-rotation-dekstop { background-size: cover; width: 100%; height: 700px; position: absolute; z-index: 2; top: 0; } .glowytext { color: #ff5959; text-shadow: 0 0 5px rgb(255 255 255 / 10%), 0 0 20px #ff2727, 0 0 15px #ff2727, 0 0 50px #ff2727, 0 0 100px #ff2727; animation: glow 15s linear infinite; } @keyframes glow { 0% { filter: hue-rotate(0deg) brightness(150%); } 100% { filter: hue-rotate(360deg) brightness(150%); } } @media (prefers-reduced-motion) { .glowytext, .rgb-rotation { animation: none !important; } } .vertically-center { display: flex; align-items: center; } @media screen and (max-width: 664px) { .homepage-slider-content .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 800px) { .slide { height: 600px; position: relative; } .unslider { height: 600px; } .pny-rotator-content { width: 100%; display: flex; justify-content: center; align-items: center; height: 600px; text-align: center; border-radius: initial; padding: 0; flex-wrap: wrap; flex-direction: column; position: relative; overflow: hidden; } .pny-rotator-inner-content { border-radius: 0 0 0 0; width: 100%; height: 350px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; z-index: 2; } .pny-rotator-mobile-bg { height: 250px; background-repeat: no-repeat; background-size: cover; width: 100%; } .pny-rotator-mobile-bg>div { height: 250px; background-repeat: no-repeat; background-size: cover; width: 100%; } .pny-rotator-inner-content>h2, .pny-rotator-inner-content>h3 { font-size: 28px; } .pny-rotator-inner-content>.title-shrink { font-size: 18px; } .unslider-nav ol { text-align: center; width: 100vw !important; padding: 10px 5px !important; box-sizing: border-box; border: none !important; height: auto; flex-direction: row; justify-content: center; } .unslider-nav ol li { margin: 0 15px 0 15px; margin-top: 0 !important; } .unslider-arrow { font-size: 30px; padding: 0 10px 5px 10px; display: none; } .pny-rotator-inner-content>.pny-copy, .pny-rotator-inner-content>h2, .pny-rotator-inner-content>h3 { max-width: 100%; } .pny-rotator-inner-content>.pny-copy { font-size: 16px; } .rgb-rotation-dekstop { display: none; } .text-bg { position: absolute; z-index: 1; top: 10%; display: flex; flex-wrap: nowrap; } .text-bg>div>img { margin-right: 10px; max-width: 150px; } .text-bg-font { font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif !important; font-size: 55px; line-height: 1 !important; text-align: left !important; margin-bottom: 0 !important; } } @media screen and (min-width: 801px) and (max-width: 1023px) { .pny-rotator-mobile-bg { display: none; } .text-bg { position: absolute; z-index: 1; right: 15%; top: 20%; display: flex; flex-wrap: nowrap; } .text-bg>div>img { margin: 30px; } .text-bg-font { font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif !important; font-size: 120px; line-height: 1 !important; margin-bottom: 0 !important; } } @media screen and (min-width: 1024px) { .pny-rotator-mobile-bg { display: none; } .text-bg { position: absolute; z-index: 1; right: 15%; top: 20%; display: flex; flex-wrap: nowrap; } .text-bg>div>img { margin: 30px; } .text-bg-font { font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif !important; font-size: 120px; line-height: 1 !important; margin-bottom: 0 !important; } } </style> </div> <section class="homepage-slider-content" id="homepage-slider-content"> <div class="my-slider"> <ul><!--GEFORCE 50 SERIES--> <li> <div class="slide"> <div class="pny-rotator-content" style="background-image: url('/Image Library/Company/Home Page/Rotator/geforce-50-series-launch-web-banner-1920x1080-update.jpg'); background-position: right center;"> <div class="pny-rotator-mobile-bg" style="background-image: url('/Image Library/Company/Home Page/Rotator/geforce-50-series-launch-web-banner-centered-1920x1080-update.jpg'); background-position: center;"></div> <div class="pny-rotator-inner-content h-fillColorWhite"><!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Celebrating a Season of Innovation and Joy</h2>--> <div><img class="slider-logo h-pushSmBottom" style="width: 180px; height: auto;" width="700" height="392" src="https://www.pny.com/image%20library/logos/pny-nvidia-geforce-powering-ai-lockup-dark.svg" alt="PNY and GeForce Powering Advanced AI Logo"></div> <!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Coming Soon</h2>--> <h2 class="h-h1 h-pushSmBottom">PNY GEFORCE RTX™ 50 Series</h2> <p class="pny-copy h-pushSmBottom">Game Changer</p> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Explore More - View GeForce 50 Series Products" href="https://www.pny.com/gaming/learn-more/rtx-50-series">Explore More</a> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Explore More - View GeForce 50 Series Products" href="https://www.pny.com/consumer/view-all-products/geforce-graphics?filter=50%20Series">New RTX 5060 Models</a></div> </div> </div> </li> <!--Blackwell Virtual Event--> <li> <div class="slide"> <div class="pny-rotator-content" style="background-image: url('/Image%20Library/Company/Home%20Page/Rotator/rtx-pro-6000-blackwell-gpu.jpg'); background-position: right center;"> <div class="pny-rotator-mobile-bg" style="/image%20library/company/home%20page/rotator/rtx-pro-6000-blackwell-gpu-centered.jpg'); background-position: center;"></div> <div class="pny-rotator-inner-content h-fillColorWhite"> <div><img class="h-pushSmBottom slider-logo h-pushSmRight" style="width: 200px; max-width: 200px !important; height: auto;" width="550" height="116" src="https://www.pny.com/image%20library/logos/pnypro-nvidia-pro-lockup-logo-dark.svg" alt="PNY Pro and NVIDIA PRO Logos"></div> <h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">On-Demand Virtual Event</h2> <h3 class="h-h1 h-pushSmBottom">Explore NVIDIA RTX PRO™ Blackwell Professional GPUs</h3> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Learn more about Blackwell Virtual Event" href="https://www.pny.com/forms/professional/webinars/blackwell-virtual-event">Watch On-Demand</a></div> </div> </div> </li> <!--PEHE --> <li> <div class="slide"> <div class="pny-rotator-content" style="background-image: url('https://www.pny.com/Image%20Library/Consumer/PNY-Flash-Memory-Cards-microSDXC-High-Endurance-Web-Rotator-1920x1080.jpg'); background-position: center right;"> <div class="pny-rotator-mobile-bg" style="background-image: url('https://www.pny.com/Image%20Library/Consumer/PNY-Flash-Memory-Cards-microSDXC-High-Endurance-Web-Rotator-Mobile-Centered-1200x675.jpg'); background-position: center;"></div> <div class="pny-rotator-inner-content h-fillColorWhite"> <div><img class="slider-logo h-pushSmBottom" style="width: 80px; height: auto;" width="700" height="392" src="https://www.pny.com/image%20library/logos/pny-logo-dark--r-.svg" alt="PNY and NVIDIA GeForce RTX Logo" data-amp-height="64" data-amp-width="300"></div> <!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Insert Here</h2>--> <h2 class="h-h1 h-caps h-pushSmBottom">PRO Elite High Endurance microSD</h2> <p class="pny-copy h-pushSmBottom">A step above standard microSD cards, PRO Elite High Endurance cards are better able to withstand the wear-and-tear of frequent writing and rewriting, ensuring that critical video footage or data is always saved and accessible.</p> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Learn more about the NVIDIA GeForce Indiana Jones and the Great Circle Bundle" href="https://www.pny.com/pro-elite-high-endurance">Learn More</a></div> </div> </div> </li> <!--RTX PRO BLACKWELL--> <li> <div class="slide"> <div class="pny-rotator-content" style="background-image: url('https://www.pny.com/Image%20Library/Company/Home%20Page/Rotator/rtx-pro-6000-blackwell-gpu.jpg'); background-position: right center;"> <div class="pny-rotator-mobile-bg" style="background-image: url('https://www.pny.com/Image%20Library/Company/Home%20Page/Rotator/rtx-pro-6000-blackwell-gpu-centered.jpg'); background-position: center;"></div> <div class="pny-rotator-inner-content h-fillColorWhite"><!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Celebrating a Season of Innovation and Joy</h2>--> <div><img class="h-pushSmBottom slider-logo h-pushSmRight" style="width: 200px; max-width: 200px !important; height: auto;" width="550" height="116" src="https://www.pny.com/image%20library/logos/pnypro-nvidia-pro-lockup-logo-dark.svg" alt="PNY Pro and NVIDIA PRO Logos"></div> <!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Coming Soon</h2>--> <h2 class="h-h1 h-pushSmBottom">NVIDIA RTX PRO<br>Built for Professionals</h2> <p class="pny-copy h-pushSmBottom">Designed for professionals who demand the best, NVIDIA RTX PRO™ solutions deliver unparalleled performance, reliability, and support.</p> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Explore More - RTX Pro" href="https://www.pny.com/professional/software-solutions/blackwell-architecture">Explore More</a></div> </div> </div> </li> <!--CS2342 M.2 2230 NVMe PCIe Gen4 x4 SSD --> <li> <div class="slide"> <div class="pny-rotator-content" style="background-image: url('https://www.pny.com/Image%20Library/Consumer/PNY-CS2342-SSD.M.2-2230-NVMe-Web-Rotator-1920x1080.jpg'); background-position: center right;"> <div class="pny-rotator-mobile-bg" style="background-image: url('https://www.pny.com/Image%20Library/Consumer/PNY-CS2342-SSD.M.2-2230-NVMe-Web-Rotator-Mobile-1200x675.jpg'); background-position: center;"></div> <div class="pny-rotator-inner-content h-fillColorWhite"> <div><img class="slider-logo h-pushSmBottom" style="width: 80px; height: auto;" width="700" height="392" src="https://www.pny.com/image%20library/logos/pny-logo-dark--r-.svg" alt="PNY and NVIDIA GeForce RTX Logo" data-amp-height="64" data-amp-width="300"></div> <!--<h2 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Insert Here</h2>--> <h2 class="h-h1 h-caps h-pushSmBottom">CS2342 M.2 2230 NVMe PCIe Gen4 x4 SSD</h2> <p class="pny-copy h-pushSmBottom">Compact size. Huge Performance. A powerful upgrade for desktops, laptops and handheld gaming devices that delivers top-tier PCIe Gen4 performance.</p> <a class="btn btn--tertiary mobile-center home-rotator" aria-label="Learn more about the NVIDIA GeForce Indiana Jones and the Great Circle Bundle" href="https://www.pny.com/cs2342-m-2-nvme-ssd">Learn More</a></div> </div> </div> </li> </ul> </div> </section> <div class="css-inline"> <script> // HERO SLIDER jQuery(document).ready(function ($) { $('.my-slider').unslider({}); }); </script> </div> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_6CeL1zYX53I"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_6CeL1zYX53I_ctl00"> <div class="css-inline"> <style> <!-- @media screen and (max-width: 664px) { .sign-up-banner .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 1023px) { .sign-up-banner .bebas-title { font-size: 60px; } } @media screen and (min-width: 1024px) { .sign-up-banner .bebas-title { font-size: 100px; } } .sign-up-banner .bebas-title { line-height: 1em; font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif; } .sign-up-banner .pny-pre-title, .sign-up-banner .pny-sub-title { letter-spacing: 3px; font-weight: 400; display: block; margin-bottom: 0; } .sign-up-banner h4 { font-weight: normal; } .sign-up-banner { box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); } --> </style> </div> <section class="join-pny h-colorWhite" id="join-pny"> <div class="section sign-up-banner h-fillColorAccentDarker h-colorWhite h-textCenter mobile-center"> <h2 class="h-h6 pny-pre-title h-fontBase h-pushSmBottom h-caps aos-init aos-animate" data-aos="fade-down">Join the PNY Family</h2> <h3 class="bebas-title h-colorWhite h-caps h-pushSmBottom aos-init aos-animate" data-aos="fade-up">Sign Up Now</h3> <h4 class="h-fontBase h-colorWhite h-h6 aos-init aos-animate" data-aos="fade-right">Receive news and updates on exclusive offers and more!</h4> <a aria-label="Sign up to be apart of our newsletter" href="https://www.pny.com/forms/consumer/consumer-signup" class="btn btn--gradientLight h-mobileCenter h-colorBlack h-btnHome aos-init aos-animate" data-aos="fade-left" id="Newsletter_Sign_Up">Sign Up</a></div> </section> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_6bN8MgVZzgZ"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_6bN8MgVZzgZ_ctl00"> <div class="css-inline"> <style> <!-- @media screen and (max-width: 664px) { .multi-product .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 1023px) { .multi-product .pny-world> :first-child { width: 100%; border-radius: 10px 10px 0 0; } .multi-product .pny-world> :last-child { width: 100%; height: 200px; border-radius: 0 0 10px 10px; } .multi-product .pny-copy { font-size: 16px; } } @media screen and (min-width: 1025px) and (max-width: 1290px) { .multi-product h2 { font-size: 28px; } } @media screen and (min-width: 1024px) { .multi-product .pny-world { display: flex; } .multi-product .pny-world> :first-child { padding: 150px 50px; width: 35%; border-radius: 10px 0 0 10px; } .multi-product .pny-world> :last-child { width: 65%; border-radius: 0 10px 10px 0; } .multi-product .pny-copy { font-size: 16px; } } .multi-product .pny-world> :first-child { box-sizing: border-box; } .multi-product .pny-world> :last-child { background-image: url('/Image%20Library/Company/Home Page/pny-products-world-map-2025.jpg'); background-size: cover; background-position: 50% 80%; } .multi-product .pny-world { width: 100%; padding: 50px 5% 25px 5%; box-sizing: border-box; border-radius: 10px; } .multi-product h2 { font-weight: lighter; line-height: 1em; } .multi-product .pny-subtitle, .multi-product .pny-pre-title { letter-spacing: 3px; font-size: 16px; line-height: 1.4em; display: block; margin-bottom: 0; } --> </style> </div> <section class="multi-product" id="multi-product"> <div class="pny-world h-fillColorGreyLightest h-hardBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"> <div class="world-content mobile-center h-fillColorWhite h-softLg"> <h2 class="h-h1 h-pushSmBottom">Why PNY?</h2> <h3 class="h-h6 pny-subtitle h-pushSmBottom h-caps">WE ARE A MULTI-PRODUCT SOLUTION</h3> <p class="pny-copy">PNY delivers solutions in over 50 countries. Our professional, enterprise and OEM products are available from leading system builders, B2B providers, DMRs, e-tailers, resellers and distributors.</p> <a aria-label="Learn more about PNY Technologies" href="https://www.pny.com/consumer/learn-more/about-pny" class="btn btn--tertiary mobile-center h-btnHome" id="Why_PNY">Learn More</a></div> <div></div> </div> </section> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_4BcrM8ppa2k"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_4BcrM8ppa2k_ctl00"> <div class="css-inline"> <style> <!-- @media screen and (max-width: 664px) { .consumer-pro-row .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 1023px) { .consumer-pro-row>.cp-block { width: 100%; margin: 25px 0; } .consumer-pro-row>.cp-block> :first-child { border-radius: 10px 10px 0 0; } .consumer-pro-row>.cp-block> :last-child { border-radius: 0 0 10px 10px; min-height: 200px; } .consumer-pro-row>.cp-block-fw> :first-child { width: 100%; padding: 50px; border-radius: 10px 0 0 10px; } .consumer-pro-row>.cp-block-fw> :last-child { width: 100%; border-radius: 0 0 10px 10px; min-height: 200px; } .consumer-pro-row .pny-copy { font-size: 16px; } } @media screen and (min-width: 1024px) { .consumer-pro-row { display: flex; flex-wrap: wrap; } .consumer-pro-row>.cp-block { width: 49%; min-height: 200px; display: flex; } .consumer-pro-row>.cp-block> :first-child { width: 50%; border-radius: 10px 0 0 10px; } .consumer-pro-row>.cp-block> :last-child { width: 50%; border-radius: 0 10px 10px 0; } .consumer-pro-row>.cp-block-fw { display: flex; } .consumer-pro-row>.cp-block-fw> :first-child { width: 35%; padding: 100px 50px; border-radius: 10px 0 0 10px; } .consumer-pro-row>.cp-block-fw> :last-child { width: 65%; border-radius: 0 10px 10px 0; } .consumer-pro-row .pny-copy { font-size: 16px; } } @media screen and (min-width: 1025px) and (max-width: 1290px) { .consumer-pro-row h2 { font-size: 28px; font-weight: lighter; } } .consumer-pro-row { justify-content: space-between; box-sizing: border-box; padding: 25px 5%; } .consumer-pro-row>.cp-block> :first-child { box-sizing: border-box; } .consumer-pro-row>.cp-block> :last-child { background-size: cover; background-position: center; } .consumer-pro-row>.cp-block-fw { width: 100%; border-radius: 10px; } .consumer-pro-row>.cp-block-fw> :first-child { box-sizing: border-box; } .consumer-products-home h2 { font-weight: lighter; line-height: 1em; } .consumer-pro-row .pny-subtitle, .consumer-pro-row .pny-pre-title { letter-spacing: 3px; font-size: 16px; display: block; line-height: 1.4em; margin-bottom: 0; } --> </style> </div> <section class="consumer-products-home" id="consumer-products-home"> <div class="consumer-pro-row h-fillColorGreyLightest"> <div class="cp-block aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"> <div class="h-fillColorWhite h-softLg"> <h2 class="h-h1 h-pushSmBottom">Consumer <span class="h-fontBase h-h6 pny-subtitle h-pushSmTop h-caps">PRODUCTS</span></h2> <p class="pny-copy">PNY Consumer Solutions provides you with quality products that are reliable, affordable, and geared toward your needs.</p> <a aria-label="Learn more about reliable and affordable consumer products" href="https://www.pny.com/consumer" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_Products">Learn More</a></div> <div style="background-image: url('/Image%20Library/Consumer/SSD-Banner-11-revised-1920.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="cp-block aos-init aos-animate" data-aos="fade-up" data-aos-duration="750" data-aos-delay="200"> <div class="h-fillColorWhite h-softLg"> <h2 class="h-h1 h-pushSmBottom">Professional</h2> <h3 class="h-fontBase h-h6 pny-subtitle h-pushSmBottom h-caps">PNY PRO</h3> <p class="pny-copy">PNY Professional Solutions provides you with powerful tools to manage heavy workloads.</p> <a aria-label="Learn more about PNY Professional Solutions" href="https://www.pny.com/professional" class="btn btn--tertiary mobile-center h-btnHome" id="Pro_Products">Learn More</a></div> <div style="background-image: url('/image%20Library/Company/Home%20Page/pny-pro-graphics-processing-units.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="cp-block-fw h-pushTop aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"> <div class="h-fillColorWhite"> <h2 class="h-h1 h-pushSmBottom">Gaming</h2> <h3 class="h-fontBase h-h6 pny-subtitle h-pushBottom h-caps">Uncompromising Quality</h3> <a aria-label="Learn more about XLR8 Gaming" href="https://www.pny.com/gaming" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_XLR8_Gaming">Learn More</a></div> <div style="background-image: url('/image%20Library/Company/Home%20Page/50-series-pny-hero-banner.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> </div> </section> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_3aI2Joy0n1q"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_3aI2Joy0n1q_ctl00"> <div class="css-inline"> <style> <!-- @media screen and (max-width: 664px) { .pc-components-home .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 800px) { .epic-x-rgb-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('/image%20Library/Company/Home%20Page/xlr8-epic-x-rgb-memory-card-rainbow-background.jpg'); background-position: right; } } @media screen and (max-width: 1023px) { .pc-components-home .product-callout-row>.fw-product-callout { min-height: 300px; border-radius: 10px; background-size: cover; } .pc-components-home .product-callout-row>.one-third-product-callout { width: 100%; } .pc-components-home .product-callout-row>.one-third-product-callout>img { max-width: 350px; } .pc-components-home .product-callout-row>.one-third-product-callout>p, .pc-components-home .product-callout-row>.one-third-product-callout>h2 { padding: 0 50px; box-sizing: border-box; } .pc-components-home .fw-product-callout>.pny-copy { max-width: 500px; } .pc-components-home .pny-copy { font-size: 16px; } .pc-components-home .bebas-title { font-size: 60px; } .epic-x-rgb-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0)), url('/image%20Library/Company/Home%20Page/xlr8-epic-x-rgb-memory-card-rainbow-background.jpg'); background-position: right; } } @media screen and (min-width: 1024px) { .pc-components-home .product-callout-row { display: flex; flex-wrap: wrap; justify-content: space-between; } .pc-components-home .product-callout-row>.fw-product-callout { min-height: 400px; background-attachment: fixed; } .pc-components-home .product-callout-row>.one-third-product-callout { width: 32%; min-height: 400px; } .pc-components-home .product-callout-row>.one-third-product-callout>img { max-width: 450px; } .pc-components-home .fw-product-callout>.pny-copy { max-width: 500px; } .pc-components-home .pny-copy { font-size: 16px; } .pc-components-home .bebas-title { font-size: 100px; } .epic-x-rgb-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), url('/image%20Library/Company/Home%20Page/xlr8-epic-x-rgb-memory-card-rainbow-background.jpg'); background-position: right; } } .pc-components-home .product-callout { width: 100%; padding: 25px 5%; box-sizing: border-box; } .pc-components-home .product-callout-row>.fw-product-callout { width: 100%; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; border-radius: 10px; background-size: cover; } .pc-components-home .product-callout-row>.one-third-product-callout { box-sizing: border-box; text-align: right; border-radius: 10px; } .pc-components-home .product-callout-row>.one-third-product-callout>img { width: 100%; max-width: 350px; border-radius: 10px 10px 0 0; height: auto; } .pc-components-home .fw-product-callout>.pny-copy, .pc-components-home .fw-product-callout>h2, .pc-components-home .fw-product-callout>h3, .pc-components-home .fw-product-callout>h4 { text-shadow: 0px 0px 3px #000000; } .pc-components-home .product-callout-row>.one-third-product-callout>p, .pc-components-home .product-callout-row>.one-third-product-callout>h2 { box-sizing: border-box; } .pc-components-home .product-callout-row h2, .pc-components-home .product-callout-row h3 { font-weight: lighter; line-height: 1em; } .pc-components-home .bebas-title { color: #444444; font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif; line-height: 1em; } .pc-components-home .pny-pre-title, .pc-components-home .pny-subtitle { letter-spacing: 3px; font-size: 16px; display: block; line-height: 1.4em; margin-bottom: 0; } --> </style> </div> <section class="pc-components-home" id="pc-components-home"> <div class="product-callout h-fillColorGreyLightest"> <div class="product-callout-title h-textCenter"> <h2 class="h-h1 bebas-title h-caps h-pushBottom aos-init aos-animate" data-aos="fade-down" data-aos-duration="750"><span class="h-fontBase h-h6 pny-pre-title h-flush">Shop</span> PC Components</h2> </div> <div class="product-callout-row"> <div class="fw-product-callout h-softLg h-colorWhite epic-x-rgb-prod h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"> <h3 class="h-h1 h-caps h-pushSmBottom">Epic-X RGB <span class="h-fontBase h-h6 pny-pre-title h-flush h-softSmEnds">Desktop Memory</span></h3> <h4 class="h-fontBase h-h6 h-flush">Unparalleled Performance Meets Brilliant RGB Style</h4> <p class="pny-copy">Overclocking capabilities, high-frequency performance, low latency, brilliant LEDs and frosted light guide lens</p> <a aria-label="Learn more about XLR8 Gaming EPIC-X RGB 3200MHz Desktop Memory" href="https://www.pny.com/xlr8-gaming-epic-x-rgb-desktop-memory" class="btn btn--gradientLight mobile-center h-colorBlack h-btnHome" id="Consumer_XLR8_Desktop_Memory">Learn More</a></div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"><img src="https://www.pny.com/image%20library/company/home%20page/geforce-rtx-5090-series-argb-gpu.png" width="800" height="480" alt="PNY GeForce Graphics Card"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">GeForce Graphics Cards</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-pushSmBottom h-caps">RTX. IT'S ON.</h4> <p class="pny-copy">Gamers demand the highest visual quality, and the AI-enhanced NVIDIA DLSS 4 technology.</p> <a aria-label="Shop now for GeForce Graphics Cards" href="https://www.pny.com/consumer/view-all-products/geforce-graphics?filter=50%20Series" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_GeForce_Graphics_Cards">Shop Now</a></div> </div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750" data-aos-delay="200"><img src="https://www.pny.com/image%20library/company/home%20page/pny-solid-state-drive.png" width="1000" height="600" alt="PNY Solid State Drive"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">Solid State Drives</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-pushSmBottom h-caps">High Performance, Endurance and Reliability</h4> <p class="pny-copy">Realize faster boot times, quicker application launches and better overall system performance.</p> <a aria-label="Shop now for Solid State Drives" href="https://www.pny.com/consumer/view-all-products/solid-state-drives" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_Solid_State_Drives">Shop Now</a></div> </div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750" data-aos-delay="400"><img src="https://www.pny.com/image%20library/company/home%20page/pny-rgb-memory-card.png" width="800" height="480" alt="PNY Memory Card"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">PC Memory</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-pushSmBottom h-caps">Experience Peak Performance</h4> <p class="pny-copy">Upgrade your PC Memory to see low latency and power consumption, and extreme overclocking.</p> <a aria-label="Shop now for PC Memory" href="https://www.pny.com/consumer/view-all-products/memory" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_PC_Memory">Shop Now</a></div> </div> </div> </div> </section> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_27b5AElyEbo"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_27b5AElyEbo_ctl00"> <div class="css-inline"> <style> <!-- @media screen and (max-width: 664px) { .external-storage-home .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (min-width: 664px) and (max-width: 800px) { .elite-x-fit-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.9)), url('/image%20Library/Company/Home%20Page/elite-x-fit-usb-purple-background.jpg'); background-position: right; } } @media screen and (max-width: 1023px) { .external-storage-home .product-callout-row>.fw-product-callout { min-height: 300px; border-radius: 10px; background-size: cover; } .external-storage-home .product-callout-row>.one-third-product-callout { width: 100%; } .external-storage-home .product-callout-row>.one-third-product-callout>img { max-width: 350px; } .external-storage-home .product-callout-row>.one-third-product-callout>p, .external-storage-home .product-callout-row>.one-third-product-callout>h2 { padding: 0 50px; box-sizing: border-box; } .external-storage-home .fw-product-callout>.pny-copy { max-width: 100%; width: 100%; } .external-storage-home .pny-copy { font-size: 16px; } .external-storage-home .bebas-title { font-size: 60px; } .elite-x-fit-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0)), url('/image%20Library/Company/Home%20Page/elite-x-fit-usb-purple-background.jpg'); background-position: right; } } @media screen and (min-width: 1024px) { .external-storage-home .product-callout-row { display: flex; flex-wrap: wrap; justify-content: space-between; } .external-storage-home .product-callout-row>.fw-product-callout { min-height: 400px; background-attachment: fixed; } .external-storage-home .product-callout-row>.one-third-product-callout { width: 32%; min-height: 400px; } .external-storage-home .product-callout-row>.one-third-product-callout>img { max-width: 450px; } .external-storage-home .fw-product-callout>.pny-copy { max-width: 500px; } .external-storage-home .pny-copy { font-size: 16px; } .external-storage-home .bebas-title { font-size: 100px; } .elite-x-fit-prod { background-image: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0)), url('/image%20Library/Company/Home%20Page/elite-x-fit-usb-purple-background.jpg'); background-position: right; } } .external-storage-home .product-callout { width: 100%; padding: 0 5% 25px 5%; box-sizing: border-box; } .external-storage-home .product-callout-row>.fw-product-callout { width: 100%; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; border-radius: 10px; background-size: cover; } .external-storage-home .product-callout-row>.one-third-product-callout { box-sizing: border-box; text-align: right; border-radius: 10px; } .external-storage-home .product-callout-row>.one-third-product-callout>img { width: 100%; max-width: 350px; border-radius: 10px 10px 0 0; } .external-storage-home .fw-product-callout>.pny-copy, .external-storage-home .fw-product-callout>h2, .external-storage-home .fw-product-callout>h3, .external-storage-home .fw-product-callout>h4 { text-shadow: 0px 0px 3px #000000; } .external-storage-home .product-callout-row>.one-third-product-callout>p, .external-storage-home .product-callout-row>.one-third-product-callout>h2 { box-sizing: border-box; } .external-storage-home .product-callout-row h2, .external-storage-home .product-callout-row h3 { font-weight: lighter; line-height: 1em; } .external-storage-home .bebas-title { color: #444444; font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif; line-height: 1em; } .external-storage-home .pny-pre-title, .external-storage-home .pny-subtitle { letter-spacing: 3px; font-size: 16px; display: block; line-height: 1.4em; margin-bottom: 0; } --> </style> </div> <section class="external-storage-home" id="external-storage-home"> <div class="product-callout h-fillColorGreyLightest"> <div class="product-callout-title h-textCenter"> <h2 class="h-h1 bebas-title h-caps aos-init aos-animate" data-aos="fade-down"><span class="h-fontBase h-h6 pny-pre-title h-flush h-pushSmBottom">Shop</span> External Storage</h2> </div> <div class="product-callout-row"> <div class="fw-product-callout elite-x-fit-prod h-colorWhite h-softLg h-pushBottom aos-init aos-animate" data-aos="fade-up"> <h3 class="h-h1 h-caps h-pushSmBottom">512GB Elite-X Fit USB 3.1</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-caps h-colorWhite">Newest Member of PNY's USB Family</h4> <p class="pny-copy h-colorWhite">Capacity: Amazing 512GB of storage<br>Size: Compact, small footprint<br>Performance: Up to 200MB/s transfer speed</p> <a aria-label="Learn more about the 512GB Elite-X Fit USB 3.1" href="https://www.pny.com/elite-x-fit-usb-3-1" class="btn btn--gradientLight h-colorBlack mobile-center h-btnHome" id="Consumer_512GB_Elite_X_Fit_USB">Learn More</a></div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750"><img src="https://www.pny.com/image%20library/company/home%20page/pny-usb-flash-drive.png" width="350" height="210" alt="PNY USB Flash Drive"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">USB <span class="pny-subtitle h-caps h-pushSmTop">Flash Drives</span></h3> <p class="pny-copy">Store and share all of your documents, photos, videos, music, and more.</p> <a aria-label="Shop now for USB Flash Drives" href="https://www.pny.com/consumer/view-all-products/usb-flash-drives" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_Flash_Drives">Shop Now</a></div> </div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750" data-aos-delay="200"><img src="https://www.pny.com/image%20library/company/home%20page/elite-x-flash-memory-card.png" width="350" height="210" alt="PNY Flash Memory Card"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">Flash <span class="pny-subtitle h-caps h-pushSmTop">Memory Cards</span></h3> <p class="pny-copy">Capture, store, and share digital content from your camera or mobile device quickly and easily.</p> <a aria-label="Shop now for Flash Memory Cards" href="https://www.pny.com/consumer/view-all-products/flash-memory-cards" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_Flash_Memory_Cards">Shop Now</a></div> </div> <div class="one-third-product-callout h-fillColorWhite h-softLgBottom h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="750" data-aos-delay="400"><img src="https://www.pny.com/image%20library/consumer/view%20all%20products/otg%20flash%20drives/otg-product-image-new-ios.png" width="350" height="210" alt="PNY OTG FLash Drive"> <div class="h-softLgSides h-textLeft"> <h3 class="h-h1 h-pushSmBottom">OTG <span class="pny-subtitle h-caps h-pushSmTop">Flash Drives</span></h3> <p class="pny-copy">Free up space, download & store, and sync & share "on-the-go" by transferring your videos, photos, music and more from your mobile devices.</p> <a aria-label="Shop now for OTG Flash Drives" href="https://www.pny.com/consumer/view-all-products/otg-flash-drives" class="btn btn--tertiary mobile-center h-btnHome" id="Consumer_OTG_Flash_Drives">Shop Now</a></div> </div> </div> </div> </section> </div> </div><div id="ctl01_fwpzcMainContent_fwpzcMainContent_3NlJxH86M8d"> <div id="ctl01_fwpzcMainContent_fwpzcMainContent_3NlJxH86M8d_ctl00"> <div class="css-inline"> <style> <!-- /* BLOCK - PRO SOLUTIONS */ @media screen and (max-width: 664px) { .pro-solutions .mobile-center { display: block; text-align: center; width: 100%; max-width: 100%; } } @media screen and (max-width: 1023px) { .pro-solutions .pny-copy { font-size: 16px; } .pro-solutions-blocks>.pro-block { width: 100%; } .pro-solutions-blocks>.pro-block> :first-child { width: 100%; padding: 50px; border-radius: 10px 10px 0 0; } .pro-solutions-blocks>.pro-block> :last-child { width: 100%; min-height: 300px; border-radius: 0 0 10px 10px; } .pro-solutions-blocks>.pro-block-fw { flex-wrap: wrap; } .pro-solutions-blocks>.pro-block-fw> :first-child { width: 100%; padding: 50px; box-sizing: border-box; border-radius: 10px 0 0 10px; } .pro-solutions-blocks>.pro-block-fw> :last-child { width: 100%; border-radius: 0 0 10px 10px; min-height: 200px; } .pro-solutions .bebas-title { font-size: 60px; } .pro-solutions-blocks>.pro-block>p>a { text-shadow: 3px 3px 5px rgba(0, 0, 0, 0.0); } } @media screen and (min-width:1024px) { .pro-solutions .pny-copy { font-size: 16px; } .pro-solutions-blocks { display: flex; justify-content: space-between; flex-wrap: wrap; } .pro-solutions-blocks>.pro-block { width: 49%; min-height: 300px; display: flex; } .pro-solutions-blocks>.pro-block> :first-child { width: 50%; padding: 50px; box-sizing: border-box; border-radius: 10px 0 0 10px; } .pro-solutions-blocks>.pro-block> :last-child { width: 50%; clip-path: polygon(15% 0, 100% 0, 100% 100%, 0% 100%); border-radius: 0 10px 10px 0; } .pro-solutions-blocks>.pro-block-fw> :first-child { width: 35%; padding: 100px 50px; border-radius: 10px 0 0 10px; } .pro-solutions-blocks>.pro-block-fw> :last-child { width: 65%; border-radius: 0 10px 10px 0; } .pro-solutions .bebas-title { font-size: 100px; } } .pro-solutions { padding: 0 5% 25px 5%; width: 100%; box-sizing: border-box; } .pro-solutions-blocks>.pro-block { border-radius: 10px; } .pro-solutions-blocks>.pro-block> :first-child { box-sizing: border-box; } .pro-solutions-blocks>.pro-block-fw { width: 100%; display: flex; border-radius: 10px; } .pro-solutions-blocks>.pro-block-fw> :first-child { box-sizing: border-box; } .pro-solutions .bebas-title { line-height: 1em; color: #444444; font-family: 'bebas-neue-pro', 'Bebas Neue', 'Roboto', sans-serif; } .pro-solutions-blocks h2, .pro-solutions-blocks h3 { font-weight: lighter; line-height: 1em; } .pro-solutions-home .pny-pre-title, .pro-solutions-home .pny-subtitle { letter-spacing: 3px; font-size: 16px; display: block; line-height: 1.4em; margin-bottom: 0; } --> </style> </div> <section class="pro-solutions-home" id="pro-solutions-home"> <div class="pro-solutions h-fillColorGreyLightest"> <h2 class="bebas-title h-textCenter h-pushBottom h-caps aos-init aos-animate" data-aos="fade-down"><span class="h-fontBase h-h6 pny-pre-title h-pushSmBottom">Explore Our</span> Professional Solutions</h2> <div class="pro-solutions-blocks"> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">NVIDIA <span class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmTop h-flushBottom">Data Center GPUs</span></h3> <p class="pny-copy">Delivering incredible performance to professionals</p> <a aria-label="Learn more about NVIDIA Data Center GPUs" href="https://www.pny.com/professional/hardware/nvidia-data-center-gpus" class="btn btn--tertiary mobile-center h-btnHome" id="Pro_Data_Center_GPUs">Learn More</a></div> <div style="background-image: url('/image%20Library/Commercial/Explore%20Our%20Products/NVIDIA%20Professional%20Graphics/tesla-data-center-gpu.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">Arista Networks<span class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmTop h-flushBottom">Empowering the Future of Networking</span></h3> <p class="pny-copy">Seamlessly integrate high-performance networking for AI/ML and mission-critical operations.</p> <a aria-label="Learn more about Arista Networks" href="https://www.pny.com/professional/hardware/arista-networks" class="btn btn--tertiary mobile-center h-btnHome">Learn More</a></div> <div style="background-image: url('/Image%20Library/Professional/hardware/arista-networks/arista-globe-network.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600" data-aos-delay="200"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">NVIDIA Embedded <span class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmTop h-flushBottom">GPU Solutions</span></h3> <p class="pny-copy">Designed for incredible performance and power efficiency while meeting the highest quality and reliability standards.</p> <a aria-label="Learn more about NVIDIA Embedded GPU solutions" href="https://www.pny.com/professional/hardware/nvidia-embedded-gpus" class="btn btn--tertiary mobile-center h-btnHome" id="Pro_Embedded_GPUs">Learn More</a></div> <div style="background-image: url('/image%20Library/Company/Home%20Page/nvidia-embedded-gpu-solutions.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600" data-aos-delay="200"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">NVIDIA vGPU</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Virtualization For Every Workload - From VDI to AI</h4> <p class="pny-copy">NVIDIA<sup>®</sup> Virtual GPUs (vGPUs) enable enterprises to access powerful GPU performance from the enterprise data center to support every workload, from virtual client computing to the most compute-intensive workloads.</p> <a aria-label="Learn more about NVIDIA virtual (vGPU) solutions" href="https://www.pny.com/professional/software-solutions/market-solutions/nvidia-virtual-gpu" class="btn btn--tertiary mobile-center h-btnHome" id="Pro_vGPU">Learn More</a></div> <div style="background-image: url('/image%20Library/Company/Home%20Page/3d-model-of-suspended-balls.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600" data-aos-delay="400"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">VAST Data</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Enterprise DATA PLATFORM SOLUTIONS</h4> <p class="pny-copy">The VAST Data Platform unifies storage, database, and containerized compute into a single, scalable software platform to power AI & deep learning in modern data centers & clouds.</p> <a aria-label="Learn more about VAST Data" href="https://www.pny.com/professional/software-solutions/networking-solutions/enterprise-storage" class="btn btn--tertiary mobile-center h-btnHome" id="Pro_Vast_Data">Learn More</a></div> <div style="background-image: url('/Image%20Library/Company/Home%20Page/vast-web-banner-home.jpg'); background-size: cover; background-repeat: no-repeat; background-position: 45%;"></div> </div> <div class="pro-block h-fillColorWhite h-pushBottom aos-init aos-animate" data-aos="fade-up" data-aos-duration="600" data-aos-delay="400"> <div class="h-fillColorWhite"> <h3 class="h-h1 h-pushSmBottom">Learn More About</h3> <h4 class="h-fontBase h-h6 pny-subtitle h-caps h-pushSmBottom">Professional Solutions</h4> <p class="pny-copy">PNY's product portfolio delivers superior performance and quality, backed by outstanding support and service.</p> <a aria-label="Learn more about PNY Professional Solutions" href="https://www.pny.com/professional" class="btn btn--tertiary mobile-center h-btnHome" id="pico_vr">Learn More</a></div> <div style="background-image: url('/image%20Library/Company/Home%20Page/pro-graphics-processing-unit.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center;"></div> </div> </div> </div> </section> </div> </div> </div> </main> <footer class="footerMain"> <div class="footermain-top"> <div class="footermain-topInner"> <div class="row"> <div class="column med-6"><span class="footerMain-heading">Support</span><nav class="footerMain-topNav"><ul> <li><a href="/support-footer/product-support">Product Support</a></li> <li><a href="/support-footer/product-registration">Product Registration</a></li> <li><a href="/support-footer/technology-glossary">Technology Glossary</a></li> <li><a href="/support-footer/contact-us-support">Contact Us</a></li> <li><a href="/support-footer/product-recall">Product Recalls</a></li> <li><a href="/support-footer/commercial-rma">Commercial RMA</a></li> <li><a href="/support-footer/retail-rma">Retail RMA</a></li> <li><a href="https://pnypartners.com/login/">Pro Partner Portal</a></li> </ul></nav></div> <div class="column med-6"><span class="footerMain-heading">Company</span><nav class="footerMain-topNav"><ul> <li><a href="/company-footer/why-pny">Why PNY</a></li> <li><a href="/company-footer/about-pny">About PNY</a></li> <li><a href="/company-footer/press-center">Press Center</a></li> <li><a href="/company-footer/pro-in-the-news">Pro in the News</a></li> <li><a href="/company-footer/virtual-events">Virtual Events</a></li> <li><a href="/company-footer/resource-center">Resource Center</a></li> <li><a href="/company-footer/careers">Careers</a></li> <li><a href="/company/where-to-buy?country=US">Where to Buy</a></li> <li><a href="/company-footer/contact-us-company">Contact Us</a></li> </ul></nav></div> <div class="column med-6"><span class="footerMain-heading">Legal</span><nav class="footerMain-topNav"><ul> <li><a href="/legal-footer/legal-overview">Legal Overview</a></li> <li><a href="/legal-footer/privacy-policy">Privacy Policy</a></li> <li><a href="/legal-footer/cookie-policy">Cookie Policy</a></li> <li><a href="/legal-footer/terms-of-use">Terms of Use</a></li> <li><a href="/legal-footer/terms-of-sale">Terms of Sale</a></li> <li><a href="/legal-footer/disclaimer-3rd-party-links">Disclaimer & 3rd Party Links</a></li> <li><a href="/legal-footer/accessibility">Our Commitment to Accessibility</a></li> </ul></nav></div> <div class="column med-6"> <span class="footerMain-heading">Connect With Us</span> <nav class="footerMain-topNav footerMain-topNav--socialNav"><ul> <li><a href="https://www.facebook.com/PNYTechnologies" class="footerMainSocialLink footerMainSocialLink--facebook" aria-label="facebook"></a></li> <li><a href="https://twitter.com/PNYTechnologies" class="footerMainSocialLink footerMainSocialLink--twitter" aria-label="twitter"></a></li> <li><a href="https://www.youtube.com/pnytvtech" class="footerMainSocialLink footerMainSocialLink--youTube" aria-label="youTube"></a></li> <li><a href="https://www.linkedin.com/company/pny-technologies/" class="footerMainSocialLink footerMainSocialLink--linkedin" aria-label="linkedin"></a></li> <li><a href="https://www.instagram.com/pnytechnologies" class="footerMainSocialLink footerMainSocialLink--instagram" aria-label="instagram"></a></li> </ul></nav> </div> </div> </div> </div> <div class="footermain-bottom"> <div class="footermain-bottomInner"> <span class="footerMain-bottomInfo"> © <script>document.write(new Date().getFullYear())</script> PNY Technologies Inc. All rights reserved. <address itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> <span itemprop="streetAddress">100 Jefferson Road</span>, <span itemprop="addressLocality">Parsippany</span>, <span itemprop="addressRegion">New Jersey</span> <span itemprop="postalCode">07054</span> <span itemprop="addressCountry">US</span> </address> </span> <nav class="footerMain-bottomNav"> <a href="#backToTop" class="backToTop">Back to Top</a> <ul class="CLHierarchicalNav"><li class="first"><a href="/terms-of-use">Terms of Use</a></li><li class="last"><a href="/privacy-policy">Privacy Policy</a></li></ul> </nav> </div> </div> </footer> <div class="drawer"> <div class="drawer-close">Close</div> <div class="drawer-content"> </div> </div> <div class="globals-mobile drawerItem" data-id="globals-mobile"> <nav class="navMain-mobile"> <ul> </ul> </nav> </div> <div class="filters-mobile drawerItem" data-id="filters-mobile"> </div> <script type="text/javascript"> $(document).ready(function () { var requestQuote = getParameterByName("requestQuote"); if (requestQuote == "true") { var sku = getParameterByName("sku"); var name = getParameterByName("name"); $(".txtQuoteProdSku").val(sku); $(".txtQuoteProdName").val(name); } }); function getParameterByName(name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, "\\$&"); var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", "i"), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, " ")); } </script> <script> $('.galleryMainContainer .galleryMain').slick({ slidesToShow: 1, slidesToScroll: 1, arrows: false, fade: true, asNavFor: '.galleryNav' //adaptiveHeight: true }); $('.galleryMainContainer .galleryNav').slick({ slidesToShow: 5, slidesToScroll: 1, asNavFor: '.galleryMain', dots: false, //centerMode: true, //centerPadding: '0', focusOnSelect: true, vertical: true, responsive: [ { breakpoint: 1024, settings: { slidesToShow: 5, slidesToScroll: 5, //vertical: false, } }, { breakpoint: 641, settings: { slidesToShow: 5, slidesToScroll: 5, vertical: false, } }, { breakpoint: 450, settings: { slidesToShow: 3, slidesToScroll: 3, vertical: false, } }, ] }); </script> <script> $('.imageGallery .galleryMain').slick({ slidesToShow: 1, slidesToScroll: 1, arrows: false, fade: true, asNavFor: '.galleryNav', adaptiveHeight: true }); $('.imageGallery .galleryNav').slick({ slidesToShow: 4, slidesToScroll: 1, asNavFor: '.galleryMain', dots: false, centerMode: true, focusOnSelect: true, variableWidth: true, responsive: [ { breakpoint: 1022, settings: { slidesToShow: 3, slidesToScroll: 3 } }, { breakpoint: 500, settings: { slidesToShow: 2, slidesToScroll: 2 } } ] }); </script> <script> $('.lightbox').each(function () { var image = $(this).children('img').attr('src'); var text = $(this).find('.galleryMain-caption').text(); $(this).magnificPopup({ mainClass: 'mfp-fade', items: [{ src: image, title: text }], gallery: { enabled: true }, type: 'image' }); }); </script> </div> <script type="text/javascript" src="/jsfile/Basepage.js?v=638670192220000000"></script> <div class="aspNetHidden"> <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="B4380F01" /> </div><input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJMTAyOTQ0MTA0EBYGHg9fX0FudGlYc3JmVG9rZW4FIDk5MGNmOTQ0YTc5YTQ2OWU4YTJiZGMzMDg1NTE4MjAxHhJfX0FudGlYc3JmVXNlck5hbWUFCUFub255bW91cx4TVmFsaWRhdGVSZXF1ZXN0TW9kZQIBZBYCAgEPFgIeBGxhbmcFAmVuFgQCAQ9kFgQCBw9kFhRmDxYGHgNyZWwFCnN0eWxlc2hlZXQeBHR5cGUFCHRleHQvY3NzHgRocmVmBTIvU3R5bGUlMjBMaWJyYXJ5L2Nzcy9tYWluLmNzcz92PTYzODc5NDk2MzI2MDAwMDAwMGQCAQ8WBh8EBQpzdHlsZXNoZWV0HwUFCHRleHQvY3NzHwYFNS9TdHlsZSUyMExpYnJhcnkvY3NzL25hdi1maXguY3NzP3Y9NjM3MzMyNjExODUxNzcyMDM4ZAICDxYGHwQFCnN0eWxlc2hlZXQfBQUIdGV4dC9jc3MfBgVBL1N0eWxlJTIwTGlicmFyeS9jc3MvZ2xvYmFsLWNvbnRyYXN0LWZpeC5jc3M/dj02MzczNDgxNjIyNTg3NDA5MjJkAgMPFgYfBAUKc3R5bGVzaGVldB8FBQh0ZXh0L2Nzcx8GBT8vU3R5bGUlMjBMaWJyYXJ5L2Nzcy9icmVhZGNydW1iLWJnLWZpeC5jc3M/dj02MzczNTMzNDA5NDkzNjQ4MjdkAgQPFgYfBAUKc3R5bGVzaGVldB8FBQh0ZXh0L2Nzcx8GBTUvU3R5bGUlMjBMaWJyYXJ5L2Nzcy9tYWluZml4LmNzcz92PTYzNzM2Mzg1MjA2MzkxMTY1NWQCBQ8WBh8EBQpzdHlsZXNoZWV0HwUFCHRleHQvY3NzHwYFPi9TdHlsZSUyMExpYnJhcnkvY3NzL3BueS1jdXN0b20tZm9udHMuY3NzP3Y9NjM3OTk3Nzc2ODg1OTgzNTEwZAIGDxYGHwQFCnN0eWxlc2hlZXQfBQUIdGV4dC9jc3MfBgVTL1N0eWxlJTIwTGlicmFyeS9jc3MvU3VwcG9ydCUyMFNvbHV0aW9ucy9zdXBwb3J0LXNvbHV0aW9ucy5jc3M/dj02Mzg2NTQ4NjM3NDc5ODUzODZkAgcPFgYfBAUKc3R5bGVzaGVldB8FBQh0ZXh0L2Nzcx8GBTovU3R5bGUlMjBMaWJyYXJ5L2Nzcy9wbnktbWFpbi5taW4uY3NzP3Y9NjM4NzAyMTI2OTc2NTQ0NTQ3ZAIIDxYGHwQFCnN0eWxlc2hlZXQfBQUIdGV4dC9jc3MfBgVEL1N0eWxlJTIwTGlicmFyeS9jc3MvcG55LWN1c3RvbS1tb2R1bGVzLm1pbi5jc3M/dj02Mzg3OTg3NTkyNTU3NzE5NDJkAgkPFgYfBAUKc3R5bGVzaGVldB8FBQh0ZXh0L2Nzcx8GBUsvU3R5bGUlMjBMaWJyYXJ5L2Nzcy91bm1pbmlmaWVkL3BueS1jdXN0b20tbW9kdWxlcy5jc3M/dj02Mzg3OTg3NTk2MDgyODE5NDFkAggPZBYIZg8WBB8FBQ90ZXh0L2phdmFzY3JpcHQeA3NyYwU+aHR0cHM6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9qcXVlcnkvMS43L2pxdWVyeS5taW4uanNkAgEPFgQfBQUPdGV4dC9qYXZhc2NyaXB0HwcFQ2h0dHBzOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5dWkvMS43L2pxdWVyeS11aS5taW4uanNkAgIPFgQfBQUPdGV4dC9qYXZhc2NyaXB0HwcFSi9TY3JpcHQlMjBMaWJyYXJ5L2Zyb250LWVuZC9qcXVlcnktbW9kYWwtdmlkZW8ubWluLmpzP3Y9NjM3NzIwNTM0ODA2MDA2MTk0ZAIDDxYEHwUFD3RleHQvamF2YXNjcmlwdB8HBTwvU2NyaXB0JTIwTGlicmFyeS9mcm9udC1lbmQvZnJvbnRFbmQuanM/dj02Mzg3OTQ5NjMyMDAwMDAwMDBkAgMPZBYEAgUPZBYKAgEPDxYCHgdWaXNpYmxlaGQWAgIBD2QWDAICDxQrAAJkZGQCBA8UKwACZGRkAgYPFCsAAmRkZAIHD2QWBgIBDxBkZBYAZAICDxBkZBYBZmQCAw8QZGQWAWZkAgoPFCsAAmRkZAILDxQrAAJkZGQCAg8WAh8IaGQCAw9kFgJmD2QWBmYPZBYCAgIPZBYCZg9kFggCAQ8WAh4EVGV4dAWuATxsaT48YSBocmVmPSdodHRwczovL3d3dy5wbnkuY29tJz5QTlkgVGVjaG5vbG9naWVzIEluYy48L2E+PC9saT48bGk+PGEgaHJlZj0naHR0cHM6Ly93d3cucG55LmNvbS9lbi1ldSc+UE5ZIEVVPC9hPjwvbGk+PGxpPjxhIGhyZWY9J2h0dHBzOi8vd3d3LnBueS5jb20vZW4tdHcnPlBOWSBUVzwvYT48L2xpPmQCAg9kFgICAQ8PFgQeCENzc0NsYXNzBRFDTEhpZXJhcmNoaWNhbE5hdh4EXyFTQgICZBYCBQVjdGwwMA9kFgJmDxYCHwkF8AM8dWwgY2xhc3M9IkNMSGllcmFyY2hpY2FsTmF2Ij48bGkgY2xhc3M9ImZpcnN0IGZpcnN0Ij48YSBocmVmPSJodHRwczovL3d3dy5wbnkuY29tL2VuLWV1IiB0YXJnZXQ9Il9ibGFuayI+UE5ZIEVNRUE8L2E+PC9saT48bGkgY2xhc3M9ImZpcnN0Ij48YSBocmVmPSJodHRwczovL3d3dy5wbnkuY29tLnR3IiB0YXJnZXQ9Il9ibGFuayI+UE5ZIEFQQUM8L2E+PC9saT48bGkgY2xhc3M9Imxhc3QgaGFzQ2hpbGRyZW4iPjxhIGhyZWY9Ii90cmFuc2xhdGUiPlRyYW5zbGF0ZTwvYT48dWw+PGxpIGNsYXNzPSJmaXJzdCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS8/bGFuZz1lbiI+RW5nbGlzaDwvYT48L2xpPjxsaT48YSBocmVmPSJodHRwczovL3d3dy5wbnkuY29tLz9sYW5nPWVzIj5TcGFuaXNoPC9hPjwvbGk+PGxpIGNsYXNzPSJsYXN0Ij48YSBocmVmPSJodHRwczovL3d3dy5wbnkuY29tLz9sYW5nPWJyIj5Qb3J0dWd1ZXNlPC9hPjwvbGk+PC91bD48L2xpPjwvdWw+ZAIDD2QWAgIEDw8WAh4QQ2F1c2VzVmFsaWRhdGlvbmhkZAIED2QWAmYPZBYCZg8WAh8JBcFVPG5hdiBpZD0ibmF2TWFpbiIgcnVuYXQ9InNlcnZlciIgY2xhc3M9Im5hdk1haW4iPjx1bD4NCiAgICA8bGkgY2xhc3M9Imhhc0NoaWxkcmVuIGlzLW1lZ2EiPjxhIGhyZWY9Ii9jb25zdW1lciI+Q29uc3VtZXI8L2E+PHVsPg0KICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL3ZpZXctYWxsLXByb2R1Y3RzIj5WaWV3IEFsbCBQcm9kdWN0czwvYT48dWw+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL3ZpZXctYWxsLXByb2R1Y3RzL2dlZm9yY2UtZ3JhcGhpY3MiPkdlRm9yY2UgR3JhcGhpY3M8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvc29saWQtc3RhdGUtZHJpdmVzIj5Tb2xpZCBTdGF0ZSBEcml2ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvbWVtb3J5Ij5NZW1vcnk8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvZmxhc2gtbWVtb3J5LWNhcmRzIj5GbGFzaCBNZW1vcnkgQ2FyZHMgJmFtcDsgQ2FyZCBSZWFkZXJzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL3ZpZXctYWxsLXByb2R1Y3RzL3VzYi1mbGFzaC1kcml2ZXMiPlVTQiBGbGFzaCBEcml2ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvb3RnLWZsYXNoLWRyaXZlcyI+T1RHIEZsYXNoIERyaXZlczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci92aWV3LWFsbC1wcm9kdWN0cy9ocC1hdXRob3JpemVkLXByb2R1Y3RzIj5IUCBBdXRob3JpemVkIFByb2R1Y3RzPC9hPjwvbGk+DQogICAgICAgICAgPC91bD4NCiAgICAgICAgPC9saT4NCiAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci9sZWFybi1tb3JlIj5MZWFybiBNb3JlPC9hPjx1bD4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvbGVhcm4tbW9yZS9hYm91dC1wbnkiPkFib3V0IFBOWTwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci9sZWFybi1tb3JlL3ByZXNzLWNlbnRlciI+UHJlc3MgQ2VudGVyPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL2xlYXJuLW1vcmUvcG55LWVsaXRlLXRlYW0iPlBOWSBFbGl0ZSBUZWFtPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL2xlYXJuLW1vcmUvcmVkZWZpbmUtcG9zc2liaWxpdGllcyI+UmVkZWZpbmUgUG9zc2liaWxpdGllczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci9sZWFybi1tb3JlL3BueS10eXBlLWMtdXNiLWZsYXNoLWRyaXZlcyI+VHlwZS1DIFVTQiBGbGFzaCBEcml2ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvbGVhcm4tbW9yZS91aHMtaWktZmxhc2gtbWVtb3J5LWNhcmRzIj5VSFMtSUkgRmxhc2ggTWVtb3J5IENhcmRzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL2xlYXJuLW1vcmUvbG9jYWwtdnMtY2xvdWQtc3RvcmFnZSI+TG9jYWwgVnMgQ2xvdWQgU3RvcmFnZTwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci9sZWFybi1tb3JlL3J0eC1haS1wY3MiPlJUWCBBSSBQQ3M8L2E+PC9saT4NCiAgICAgICAgICA8L3VsPg0KICAgICAgICA8L2xpPg0KICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbnN1bWVyL3Jlc291cmNlLWNlbnRlciI+UmVzb3VyY2UgQ2VudGVyPC9hPjx1bD4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvcmVzb3VyY2UtY2VudGVyL3NzZC1jb25maWd1cmF0b3IiPlNTRCBDb25maWd1cmF0b3I8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvcmVzb3VyY2UtY2VudGVyL21lbW9yeS1jb25maWd1cmF0b3IiPk1lbW9yeSBDb25maWd1cmF0b3I8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL2xlYXJuLW1vcmUvdmVsb2NpdHl4Ij5WZWxvY2l0eVg8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvbGVhcm4tbW9yZS9jb250YWN0LXVzIj5Db250YWN0IFVzPC9hPjwvbGk+DQogICAgICAgICAgPC91bD4NCiAgICAgICAgPC9saT4NCiAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb25zdW1lci9zaG9wLXBueSI+U2hvcCBQTlk8L2E+PHVsPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9jb21wYW55L3doZXJlLXRvLWJ1eT9jb3VudHJ5PVVTIj5XaGVyZSB0byBCdXk8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvc2hvcC1wbnkvcHJldmlvdXMtZ2VuZXJhdGlvbi1nZWZvcmNlIj5QcmV2aW91cyBHZW5lcmF0aW9uIEdlRm9yY2U8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvY29uc3VtZXIvc2hvcC1wbnkvcHJldmlvdXMtZ2VuZXJhdGlvbi1zc2QiPlByZXZpb3VzIEdlbmVyYXRpb24gU1NEPC9hPjwvbGk+DQogICAgICAgICAgPC91bD4NCiAgICAgICAgPC9saT4NCiAgICAgIDwvdWw+DQogICAgPC9saT4NCiAgICA8bGkgY2xhc3M9Imhhc0NoaWxkcmVuIGlzLW1lZ2EiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwiPlByb2Zlc3Npb25hbDwvYT48dWw+DQogICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL2hhcmR3YXJlIj5IYXJkd2FyZTwvYT48dWw+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9oYXJkd2FyZS9udmlkaWEtcHJvZmVzc2lvbmFsLXByb2R1Y3RzIj5OVklESUEgUHJvZmVzc2lvbmFsIEdyYXBoaWNzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9oYXJkd2FyZS9udmlkaWEtZW1iZWRkZWQtZ3B1cyI+TlZJRElBIEVtYmVkZGVkIEdQVXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL2hhcmR3YXJlL252aWRpYS1kYXRhLWNlbnRlci1ncHVzIj5OVklESUEgRGF0YSBDZW50ZXIgR1BVczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvaGFyZHdhcmUvbmV0d29ya2luZy1zb2x1dGlvbnMiPk5ldHdvcmtpbmcgU29sdXRpb25zPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9oYXJkd2FyZS9udmlkaWEtaWd4Ij5OVklESUEgSUdYIE9yaW48L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL2hhcmR3YXJlL252aWRpYS1nZWZvcmNlLWdyYXBoaWNzIj5OVklESUEgR2VGb3JjZSBHcmFwaGljczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvaGFyZHdhcmUvc29saWQtc3RhdGUtZHJpdmVzIj5Tb2xpZCBTdGF0ZSBEcml2ZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL2hhcmR3YXJlL2FyaXN0YS1uZXR3b3JrcyI+QXJpc3RhIE5ldHdvcmtzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9oYXJkd2FyZS9udmlkaWEtcHJvLXN5bmMiPk5WSURJQSBSVFggUFJPIFN5bmM8L2E+PC9saT4NCiAgICAgICAgICA8L3VsPg0KICAgICAgICA8L2xpPg0KICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMiPlNvZnR3YXJlICZhbXA7IFNvbHV0aW9uczwvYT48dWw+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjAxIGgtbWVudVN1YmhlYWRpbmcgZmlyc3QiPjxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSI+U29mdHdhcmU8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL252aWRpYS12aXJ0dWFsLWdwdSI+TlZJRElBIFZpcnR1YWwgR1BVPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjAzIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9udmlkaWEtb21uaXZlcnNlLWVudGVycHJpc2UiPk5WSURJQSBPbW5pdmVyc2UgRW50ZXJwcmlzZTwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIwNCI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbnZpZGlhLWFpLWVudGVycHJpc2UiPk5WSURJQSBBSSBFbnRlcnByaXNlPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjA1Ij48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9udmlkaWEtbWV0cm9wb2xpcyI+TlZJRElBIE1ldHJvcG9saXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDYgaC1tZW51U3ViaGVhZGluZyI+PGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIj5Tb2x1dGlvbnM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDciPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL2JsYWNrd2VsbC1hcmNoaXRlY3R1cmUiPk5WSURJQSBSVFggUFJPIEJsYWNrd2VsbDwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIwNyI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbnZpZGlhLWFkYS1sb3ZlbGFjZSI+TlZJRElBIEFkYSBMb3ZlbGFjZTwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIwOCI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbnZpZGlhLXJ0eC1hbXBlcmUiPk5WSURJQSBSVFggQW1wZXJlPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjA5Ij48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9udmlkaWEtZGF0YS1jZW50ZXItc29sdXRpb25zIj5OVklESUEgRGF0YSBDZW50ZXIgU29sdXRpb25zPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjEwIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9haS1hY2NlbGVyYXRvciI+QUkgQWNjZWxlcmF0b3I8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMTMiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL2VudGVycHJpc2Utc3RvcmFnZSI+VkFTVCBEYXRhPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjE0Ij48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9haS13b3JrYmVuY2giPkFJIFdvcmtiZW5jaDwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIxNSI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0cyI+TWFya2V0czwvYT48dWw+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJoLWRlc2t0b3BIaWRlIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9tYXJrZXRzL2FyY2hpdGVjdHVyZS1lbmdpbmVlcmluZy1jb25zdHJ1Y3Rpb24iPkFyY2hpdGVjdHVyZSwgRW5naW5lZXJpbmcsICZhbXA7IENvbnN0cnVjdGlvbjwvYT48L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iaC1kZXNrdG9wSGlkZSI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0cy9tYW51ZmFjdHVyaW5nIj5NYW51ZmFjdHVyaW5nPC9hPjwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJoLWRlc2t0b3BIaWRlIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9tYXJrZXRzL21lZGlhLWVudGVydGFpbm1lbnQiPk1lZGlhICZhbXA7IEVudGVydGFpbm1lbnQ8L2E+PC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImgtZGVza3RvcEhpZGUiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL21hcmtldHMvaGlnaGVyLWVkdWNhdGlvbiI+SGlnaGVyIEVkdWNhdGlvbjwvYT48L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iaC1kZXNrdG9wSGlkZSI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0cy9nb3Zlcm5tZW50Ij5Hb3Zlcm5tZW50PC9hPjwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJoLWRlc2t0b3BIaWRlIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9tYXJrZXRzL2hlYWx0aGNhcmUiPkhlYWx0aGNhcmU8L2E+PC9saT4NCiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImgtZGVza3RvcEhpZGUiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL21hcmtldHMvZmluYW5jZSI+RmluYW5jZTwvYT48L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iaC1kZXNrdG9wSGlkZSI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0cy9lbmVyZ3ktZXhwbG9yYXRpb24tb2lsLWdhcyI+RW5lcmd5IEV4cGxvcmF0aW9uIChPaWwgJmFtcDsgR2FzKTwvYT48L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iaC1kZXNrdG9wSGlkZSI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0cy9jYXNpbm8tZ2FtaW5nIj5DYXNpbm8gR2FtaW5nPC9hPjwvbGk+DQogICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIxNiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvbWFya2V0LXNvbHV0aW9ucyI+TWFya2V0IFNvbHV0aW9uczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIxNyI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zb2Z0d2FyZS1zb2x1dGlvbnMvYXJ0aWZpY2lhbC1pbnRlbGxpZ2VuY2UiPkFydGlmaWNpYWwgSW50ZWxsaWdlbmNlPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjE4Ij48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy92aXJ0dWFsLXJlYWxpdHkiPlZpcnR1YWwgUmVhbGl0eTwvYT48L2xpPg0KICAgICAgICAgIDwvdWw+DQogICAgICAgIDwvbGk+DQogICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3Jlc291cmNlLWNlbnRlciI+UmVzb3VyY2UgQ2VudGVyPC9hPjx1bD4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDEgaC1tZW51U3ViaGVhZGluZyBmaXJzdCI+PGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIj5SZXNvdXJjZXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvcmVzb3VyY2UtY2VudGVyL2Fib3V0LXBueS1wcm8iPkFib3V0IFBOWSBQcm88L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDMiPjxhIGhyZWY9Ii9jb21wYW55L3doZXJlLXRvLWJ1eT9jb3VudHJ5PVVTIj5XaGVyZSB0byBCdXk8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDQiPjxhIGhyZWY9Imh0dHBzOi8vcHJvY29uZmlnLnBueS5jb20vaG9tZSI+UHJvIEdQVSBDb25maWd1cmF0b3I8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDUiPjxhIGhyZWY9Ii9jb21wYW55L3N1cHBvcnQvYWRkaXRpb25hbC1yZXNvdXJjZXMiPlByb2R1Y3QgQnJvY2h1cmVzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjA2Ij48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3Jlc291cmNlLWNlbnRlci9wbnktcHJvLXN0dWRpbyI+UE5ZIFBybyBTdHVkaW88L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDciPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvcmVzb3VyY2UtY2VudGVyL3ZpcnR1YWwtZXZlbnRzIj5WaXJ0dWFsIEV2ZW50czwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIwOCI+PGEgaHJlZj0iaHR0cHM6Ly9ibG9nLnBueS5jb20vYmxvZ3BueWNvbSI+UE5ZIEJsb2c8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMDkiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvcmVzb3VyY2UtY2VudGVyL3ByZXNzLWNlbnRlciI+UHJlc3MgQ2VudGVyPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjEwIGgtbWVudVN1YmhlYWRpbmciPjxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSI+UHJvZ3JhbXM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iMTEiPjxhIGhyZWY9Imh0dHBzOi8vcG55cGFydG5lcnMuY29tL2xvZ2luLyI+UGFydG5lciBQcm9ncmFtPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IjEyIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3Jlc291cmNlLWNlbnRlci9sb25nLWxpZmUtcHJvZ3JhbSI+TG9uZyBMaWZlIFByb2dyYW08L2E+PC9saT4NCiAgICAgICAgICA8L3VsPg0KICAgICAgICA8L2xpPg0KICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3Byb2Zlc3Npb25hbC9zdXBwb3J0Ij5TdXBwb3J0PC9hPjx1bD4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3N1cHBvcnQvY29udGFjdC11cyI+Q29udGFjdCBVczwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc3VwcG9ydC9jb21tZXJjaWFsLXJtYS1yZXF1ZXN0LWZvcm0iPkNvbW1lcmNpYWwgUk1BIFJlcXVlc3QgRm9ybTwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9wcm9mZXNzaW9uYWwvc3VwcG9ydC9sZWdhY3ktbnZpZGlhLXByby1wcm9kdWN0cyI+TGVnYWN5IE5WSURJQSBQcm8gUHJvZHVjdHM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvcHJvZmVzc2lvbmFsL3N1cHBvcnQvbGVnYWN5LW52aWRpYS1kYXRhLWNlbnRlci1ncHVzIj5MZWdhY3kgTlZJRElBIERhdGEgQ2VudGVyIEdQVXM8L2E+PC9saT4NCiAgICAgICAgICA8L3VsPg0KICAgICAgICA8L2xpPg0KICAgICAgPC91bD4NCiAgICA8L2xpPg0KICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvb2VtIj5PRU08L2E+PC9saT4NCiAgICA8bGkgY2xhc3M9Imhhc0NoaWxkcmVuIGlzLW1lZ2EiPjxhIGhyZWY9Ii9nYW1pbmciPkdhbWluZzwvYT48dWw+DQogICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL3hscjgtcHJvZHVjdHMiPlhMUjggUHJvZHVjdHM8L2E+PHVsPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9nYW1pbmcveGxyOC1wcm9kdWN0cy94bHI4LWdyYXBoaWNzLWNhcmRzIj5YTFI4IEdlRm9yY2UgR3JhcGhpY3MgQ2FyZHM8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL3hscjgtcHJvZHVjdHMveGxyOC1zc2QiPlhMUjggU29saWQgU3RhdGUgRHJpdmVzPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2dhbWluZy94bHI4LXByb2R1Y3RzL3hscjgtbWVtb3J5Ij5YTFI4IE1lbW9yeTwvYT48L2xpPg0KICAgICAgICAgIDwvdWw+DQogICAgICAgIDwvbGk+DQogICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL2xlYXJuLW1vcmUiPkxlYXJuIE1vcmU8L2E+PHVsPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9nYW1pbmcvbGVhcm4tbW9yZS9hY2NlbGVyYXRlLXlvdXItZ2FtaW5nIj5BY2NlbGVyYXRlIFlvdXIgR2FtaW5nPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2dhbWluZy9sZWFybi1tb3JlL3ZlbG9jaXR5eCI+VmVsb2NpdHlYPC9hPjwvbGk+DQogICAgICAgICAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2dhbWluZy9sZWFybi1tb3JlL21vZGRpbmciPlhMUjggTW9kZGluZzwvYT48L2xpPg0KICAgICAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Ii9nYW1pbmcvbGVhcm4tbW9yZS9hY2NlbGVyYXRlLXlvdXItcHM1LWdhbWluZyI+QWNjZWxlcmF0ZSBZb3VyIFBTNSBHYW1pbmc8L2E+PC9saT4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL2xlYXJuLW1vcmUvcnR4LTUwLXNlcmllcyI+R2VGb3JjZSBSVFggNTAgU2VyaWVzPC9hPjwvbGk+DQogICAgICAgICAgPC91bD4NCiAgICAgICAgPC9saT4NCiAgICAgICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSI+Q29tbXVuaXR5PC9hPjx1bD4NCiAgICAgICAgICAgIDxsaSBjbGFzcz0iIj48YSBocmVmPSIvZ2FtaW5nL2NvbW11bml0eS94bHI4LXdhbGxwYXBlcnMiPlhMUjggV2FsbHBhcGVyczwvYT48L2xpPg0KICAgICAgICAgIDwvdWw+DQogICAgICAgIDwvbGk+DQogICAgICA8L3VsPg0KICAgIDwvbGk+DQogICAgPGxpIGNsYXNzPSIiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvc2hvcC1wbnkiPlNob3A8L2E+PC9saT4NCiAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL3N1cHBvcnQiPlN1cHBvcnQ8L2E+PC9saT4NCiAgICA8bGkgY2xhc3M9IiI+PGEgaHJlZj0iL2NvbXBhbnkvd2hlcmUtdG8tYnV5P2NvdW50cnk9VVMiPldoZXJlIHRvIEJ1eTwvYT48L2xpPg0KICA8L3VsPjwvbmF2PmQCAQ9kFg5mD2QWAgUFY3RsMDAPDxYCHwkFsb8BPGRpdiBjbGFzcz0iY3NzLWlubGluZSI+CjxzdHlsZT4KICAgICAgICAgICAgICAgICAgICAuc2xpZGUgewogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwMDAwMCwgIzIyMjIyMik7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlciB7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzAwcHg7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItY29udGVudCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsKICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOwogICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQgewogICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDMycHggMzJweCA1dnc7CiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMzsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1pbm5lci1jb250ZW50PmgyLAogICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1pbm5lci1jb250ZW50PmgzIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXIgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtOwogICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7CiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDYwcHg7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD4udGl0bGUtc2hyaW5rIHsKICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnBueS1zdWJ0aXRsZSwKICAgICAgICAgICAgICAgICAgICAucG55LXByZXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDsKICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtOwogICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD4ucG55LWNvcHkgewogICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ2MHB4OwogICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAuc2xpZGVyLWxvZ28gewogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTgwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLW5hdiBvbCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1lbmQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4OwogICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogc29saWQgMC41cHggI2ZmZmZmZiAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLW5hdiBvbCBsaSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOwogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwZW07CiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5ZW07CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmZmYgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlci1uYXYgb2wgbGkudW5zbGlkZXItYWN0aXZlIHsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsKICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyIHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItbmF2IHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwOwogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvOwogICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlciB7CiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItd3JhcCB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlci13cmFwLnVuc2xpZGVyLWNhcm91c2VsPmxpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItdmVydGljYWw+dWwgewogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItdmVydGljYWwgbGkgewogICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItZmFkZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlci1mYWRlIC51bnNsaWRlci13cmFwIGxpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwOwogICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA4OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLWZhZGUgLnVuc2xpZGVyLXdyYXAgbGkudW5zbGlkZXItYWN0aXZlIHsKICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXIgbGksCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyIG9sLAogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlciB1bCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7CiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDsKICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLWFycm93IHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bzsKICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwOwogICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IGF1dG87CiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsKICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTE7CiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4OwogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsKICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMC41cHggI2ZmZmZmZjsKICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1cHg7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzVweDsKICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItYXJyb3c6aG92ZXIgewogICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC51bnNsaWRlci1hcnJvdy5uZXh0IHsKICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDc1cHgpIHJvdGF0ZSg5MGRlZyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwOwogICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLWFycm93LnByZXYgewogICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDsKICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bzsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC5yZ2Itcm90YXRpb24gewogICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJnYlJvdGF0ZSAxMHMgbGluZWFyIGluZmluaXRlOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgQGtleWZyYW1lcyByZ2JSb3RhdGUgewogICAgICAgICAgICAgICAgICAgICAgICAwJSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYyZjJmOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAxMCUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOWIyZjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgMjAlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmU5MmY7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIDMwJSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdmZjJmOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICA0MCUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU2ZmYyZjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgNTAlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZmZmOTY7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIDYwJSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmZkZmZmOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICA3MCUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJmNzhmZjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgODAlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2YTJmZmY7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIDkwJSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYyZmY4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAxMDAlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjJmMmY7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC5yZ2Itcm90YXRpb24tZGVrc3RvcCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDcwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7CiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC5nbG93eXRleHQgewogICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmNTk1OTsKICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCA1cHggcmdiKDI1NSAyNTUgMjU1IC8gMTAlKSwgMCAwIDIwcHggI2ZmMjcyNywgMCAwIDE1cHggI2ZmMjcyNywgMCAwIDUwcHggI2ZmMjcyNywgMCAwIDEwMHB4ICNmZjI3Mjc7CiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZ2xvdyAxNXMgbGluZWFyIGluZmluaXRlOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgQGtleWZyYW1lcyBnbG93IHsKICAgICAgICAgICAgICAgICAgICAgICAgMCUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBodWUtcm90YXRlKDBkZWcpIGJyaWdodG5lc3MoMTUwJSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIDEwMCUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBodWUtcm90YXRlKDM2MGRlZykgYnJpZ2h0bmVzcygxNTAlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7CgogICAgICAgICAgICAgICAgICAgICAgICAuZ2xvd3l0ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAucmdiLXJvdGF0aW9uIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAudmVydGljYWxseS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLmhvbWVwYWdlLXNsaWRlci1jb250ZW50IC5tb2JpbGUtY2VudGVyIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC5zbGlkZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLWNvbnRlbnQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGluaXRpYWw7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1pbm5lci1jb250ZW50IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1tb2JpbGUtYmcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1tb2JpbGUtYmc+ZGl2IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD5oMiwKICAgICAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQ+aDMgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD4udGl0bGUtc2hyaW5rIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnVuc2xpZGVyLW5hdiBvbCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwdncgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4ICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC51bnNsaWRlci1uYXYgb2wgbGkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMCAxNXB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAudW5zbGlkZXItYXJyb3cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDVweCAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQ+LnBueS1jb3B5LAogICAgICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD5oMiwKICAgICAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQ+aDMgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucG55LXJvdGF0b3ItaW5uZXItY29udGVudD4ucG55LWNvcHkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucmdiLXJvdGF0aW9uLWRla3N0b3AgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQtYmcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAudGV4dC1iZz5kaXY+aW1nIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC50ZXh0LWJnLWZvbnQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhcy1uZXVlLXBybycsICdCZWJhcyBOZXVlJywgJ1JvYm90bycsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTVweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMXB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC5wbnktcm90YXRvci1tb2JpbGUtYmcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQtYmcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNSU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDIwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQtYmc+ZGl2PmltZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDMwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC50ZXh0LWJnLWZvbnQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhcy1uZXVlLXBybycsICdCZWJhcyBOZXVlJywgJ1JvYm90bycsIHNhbnMtc2VyaWYgIWltcG9ydGFudDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTIwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLnBueS1yb3RhdG9yLW1vYmlsZS1iZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAudGV4dC1iZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDE1JTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMjAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAudGV4dC1iZz5kaXY+aW1nIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQtYmctZm9udCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzLW5ldWUtcHJvJywgJ0JlYmFzIE5ldWUnLCAnUm9ib3RvJywgc2Fucy1zZXJpZiAhaW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMjBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICA8L3N0eWxlPgo8L2Rpdj4KPHNlY3Rpb24gY2xhc3M9ImhvbWVwYWdlLXNsaWRlci1jb250ZW50IiBpZD0iaG9tZXBhZ2Utc2xpZGVyLWNvbnRlbnQiPgo8ZGl2IGNsYXNzPSJteS1zbGlkZXIiPgo8dWw+PCEtLUdFRk9SQ0UgNTAgU0VSSUVTLS0+CjxsaT4KPGRpdiBjbGFzcz0ic2xpZGUiPgo8ZGl2IGNsYXNzPSJwbnktcm90YXRvci1jb250ZW50IiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvSW1hZ2UgTGlicmFyeS9Db21wYW55L0hvbWUgUGFnZS9Sb3RhdG9yL2dlZm9yY2UtNTAtc2VyaWVzLWxhdW5jaC13ZWItYmFubmVyLTE5MjB4MTA4MC11cGRhdGUuanBnJyk7IGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjsiPgo8ZGl2IGNsYXNzPSJwbnktcm90YXRvci1tb2JpbGUtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9JbWFnZSBMaWJyYXJ5L0NvbXBhbnkvSG9tZSBQYWdlL1JvdGF0b3IvZ2Vmb3JjZS01MC1zZXJpZXMtbGF1bmNoLXdlYi1iYW5uZXItY2VudGVyZWQtMTkyMHgxMDgwLXVwZGF0ZS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyI+PC9kaXY+CjxkaXYgY2xhc3M9InBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQgaC1maWxsQ29sb3JXaGl0ZSI+PCEtLTxoMiBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLWNhcHMgaC1wdXNoU21Cb3R0b20iPkNlbGVicmF0aW5nIGEgU2Vhc29uIG9mIElubm92YXRpb24gYW5kIEpveTwvaDI+LS0+CjxkaXY+PGltZyBjbGFzcz0ic2xpZGVyLWxvZ28gaC1wdXNoU21Cb3R0b20iIHN0eWxlPSJ3aWR0aDogMTgwcHg7IGhlaWdodDogYXV0bzsiIHdpZHRoPSI3MDAiIGhlaWdodD0iMzkyIiBzcmM9Imh0dHBzOi8vd3d3LnBueS5jb20vaW1hZ2UlMjBsaWJyYXJ5L2xvZ29zL3BueS1udmlkaWEtZ2Vmb3JjZS1wb3dlcmluZy1haS1sb2NrdXAtZGFyay5zdmciIGFsdD0iUE5ZIGFuZCBHZUZvcmNlIFBvd2VyaW5nIEFkdmFuY2VkIEFJIExvZ28iPjwvZGl2Pgo8IS0tPGgyIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+Q29taW5nIFNvb248L2gyPi0tPgo8aDIgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPlBOWSZuYnNwO0dFRk9SQ0UmbmJzcDtSVFgmIzg0ODI7IDUwIFNlcmllczwvaDI+CjxwIGNsYXNzPSJwbnktY29weSBoLXB1c2hTbUJvdHRvbSI+R2FtZSBDaGFuZ2VyPC9wPgo8YSBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBob21lLXJvdGF0b3IiIGFyaWEtbGFiZWw9IkV4cGxvcmUgTW9yZSAtIFZpZXcgR2VGb3JjZSA1MCBTZXJpZXMgUHJvZHVjdHMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vZ2FtaW5nL2xlYXJuLW1vcmUvcnR4LTUwLXNlcmllcyI+RXhwbG9yZSBNb3JlPC9hPiA8YSBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBob21lLXJvdGF0b3IiIGFyaWEtbGFiZWw9IkV4cGxvcmUgTW9yZSAtIFZpZXcgR2VGb3JjZSA1MCBTZXJpZXMgUHJvZHVjdHMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvZ2Vmb3JjZS1ncmFwaGljcz9maWx0ZXI9NTAlMjBTZXJpZXMiPk5ldyBSVFggNTA2MCBNb2RlbHM8L2E+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9saT4KPCEtLUJsYWNrd2VsbCBWaXJ0dWFsIEV2ZW50LS0+CjxsaT4KPGRpdiBjbGFzcz0ic2xpZGUiPgo8ZGl2IGNsYXNzPSJwbnktcm90YXRvci1jb250ZW50IiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvSW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UvUm90YXRvci9ydHgtcHJvLTYwMDAtYmxhY2t3ZWxsLWdwdS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyOyI+CjxkaXYgY2xhc3M9InBueS1yb3RhdG9yLW1vYmlsZS1iZyIgc3R5bGU9Ii9pbWFnZSUyMGxpYnJhcnkvY29tcGFueS9ob21lJTIwcGFnZS9yb3RhdG9yL3J0eC1wcm8tNjAwMC1ibGFja3dlbGwtZ3B1LWNlbnRlcmVkLmpwZycpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7Ij48L2Rpdj4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItaW5uZXItY29udGVudCBoLWZpbGxDb2xvcldoaXRlIj4KPGRpdj48aW1nIGNsYXNzPSJoLXB1c2hTbUJvdHRvbSBzbGlkZXItbG9nbyBoLXB1c2hTbVJpZ2h0IiBzdHlsZT0id2lkdGg6IDIwMHB4OyBtYXgtd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7IGhlaWdodDogYXV0bzsiIHdpZHRoPSI1NTAiIGhlaWdodD0iMTE2IiBzcmM9Imh0dHBzOi8vd3d3LnBueS5jb20vaW1hZ2UlMjBsaWJyYXJ5L2xvZ29zL3BueXByby1udmlkaWEtcHJvLWxvY2t1cC1sb2dvLWRhcmsuc3ZnIiBhbHQ9IlBOWSBQcm8gYW5kIE5WSURJQSBQUk8gTG9nb3MiPjwvZGl2Pgo8aDIgY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtQm90dG9tIj5Pbi1EZW1hbmQgVmlydHVhbCBFdmVudDwvaDI+CjxoMyBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+RXhwbG9yZSBOVklESUEgUlRYIFBSTyYjODQ4MjsgQmxhY2t3ZWxsIFByb2Zlc3Npb25hbCBHUFVzPC9oMz4KPGEgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaG9tZS1yb3RhdG9yIiBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IEJsYWNrd2VsbCBWaXJ0dWFsIEV2ZW50IiBocmVmPSJodHRwczovL3d3dy5wbnkuY29tL2Zvcm1zL3Byb2Zlc3Npb25hbC93ZWJpbmFycy9ibGFja3dlbGwtdmlydHVhbC1ldmVudCI+V2F0Y2ggT24tRGVtYW5kPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvbGk+CjwhLS1QRUhFIC0tPgo8bGk+CjxkaXYgY2xhc3M9InNsaWRlIj4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItY29udGVudCIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cucG55LmNvbS9JbWFnZSUyMExpYnJhcnkvQ29uc3VtZXIvUE5ZLUZsYXNoLU1lbW9yeS1DYXJkcy1taWNyb1NEWEMtSGlnaC1FbmR1cmFuY2UtV2ViLVJvdGF0b3ItMTkyMHgxMDgwLmpwZycpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7Ij4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItbW9iaWxlLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy5wbnkuY29tL0ltYWdlJTIwTGlicmFyeS9Db25zdW1lci9QTlktRmxhc2gtTWVtb3J5LUNhcmRzLW1pY3JvU0RYQy1IaWdoLUVuZHVyYW5jZS1XZWItUm90YXRvci1Nb2JpbGUtQ2VudGVyZWQtMTIwMHg2NzUuanBnJyk7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8ZGl2IGNsYXNzPSJwbnktcm90YXRvci1pbm5lci1jb250ZW50IGgtZmlsbENvbG9yV2hpdGUiPgo8ZGl2PjxpbWcgY2xhc3M9InNsaWRlci1sb2dvIGgtcHVzaFNtQm90dG9tIiBzdHlsZT0id2lkdGg6IDgwcHg7IGhlaWdodDogYXV0bzsiIHdpZHRoPSI3MDAiIGhlaWdodD0iMzkyIiBzcmM9Imh0dHBzOi8vd3d3LnBueS5jb20vaW1hZ2UlMjBsaWJyYXJ5L2xvZ29zL3BueS1sb2dvLWRhcmstLXItLnN2ZyIgYWx0PSJQTlkgYW5kIE5WSURJQSBHZUZvcmNlIFJUWCBMb2dvIiBkYXRhLWFtcC1oZWlnaHQ9IjY0IiBkYXRhLWFtcC13aWR0aD0iMzAwIj48L2Rpdj4KPCEtLTxoMiBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLWNhcHMgaC1wdXNoU21Cb3R0b20iPkluc2VydCBIZXJlPC9oMj4tLT4KPGgyIGNsYXNzPSJoLWgxIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+UFJPIEVsaXRlIEhpZ2ggRW5kdXJhbmNlIG1pY3JvU0Q8L2gyPgo8cCBjbGFzcz0icG55LWNvcHkgaC1wdXNoU21Cb3R0b20iPkEgc3RlcCBhYm92ZSBzdGFuZGFyZCBtaWNyb1NEIGNhcmRzLCBQUk8gRWxpdGUgSGlnaCBFbmR1cmFuY2UgY2FyZHMgYXJlIGJldHRlciBhYmxlIHRvIHdpdGhzdGFuZCB0aGUgd2Vhci1hbmQtdGVhciBvZiBmcmVxdWVudCB3cml0aW5nIGFuZCByZXdyaXRpbmcsIGVuc3VyaW5nIHRoYXQgY3JpdGljYWwgdmlkZW8gZm9vdGFnZSBvciBkYXRhIGlzIGFsd2F5cyBzYXZlZCBhbmQgYWNjZXNzaWJsZS48L3A+CjxhIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGhvbWUtcm90YXRvciIgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCB0aGUgTlZJRElBIEdlRm9yY2UgSW5kaWFuYSBKb25lcyBhbmQgdGhlIEdyZWF0IENpcmNsZSBCdW5kbGUiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vcHJvLWVsaXRlLWhpZ2gtZW5kdXJhbmNlIj5MZWFybiBNb3JlPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvbGk+CjwhLS1SVFggUFJPIEJMQUNLV0VMTC0tPgo8bGk+CjxkaXYgY2xhc3M9InNsaWRlIj4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItY29udGVudCIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cucG55LmNvbS9JbWFnZSUyMExpYnJhcnkvQ29tcGFueS9Ib21lJTIwUGFnZS9Sb3RhdG9yL3J0eC1wcm8tNjAwMC1ibGFja3dlbGwtZ3B1LmpwZycpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7Ij4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItbW9iaWxlLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy5wbnkuY29tL0ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlL1JvdGF0b3IvcnR4LXByby02MDAwLWJsYWNrd2VsbC1ncHUtY2VudGVyZWQuanBnJyk7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8ZGl2IGNsYXNzPSJwbnktcm90YXRvci1pbm5lci1jb250ZW50IGgtZmlsbENvbG9yV2hpdGUiPjwhLS08aDIgY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtQm90dG9tIj5DZWxlYnJhdGluZyBhIFNlYXNvbiBvZiBJbm5vdmF0aW9uIGFuZCBKb3k8L2gyPi0tPgo8ZGl2PjxpbWcgY2xhc3M9ImgtcHVzaFNtQm90dG9tIHNsaWRlci1sb2dvIGgtcHVzaFNtUmlnaHQiIHN0eWxlPSJ3aWR0aDogMjAwcHg7IG1heC13aWR0aDogMjAwcHggIWltcG9ydGFudDsgaGVpZ2h0OiBhdXRvOyIgd2lkdGg9IjU1MCIgaGVpZ2h0PSIxMTYiIHNyYz0iaHR0cHM6Ly93d3cucG55LmNvbS9pbWFnZSUyMGxpYnJhcnkvbG9nb3MvcG55cHJvLW52aWRpYS1wcm8tbG9ja3VwLWxvZ28tZGFyay5zdmciIGFsdD0iUE5ZIFBybyBhbmQgTlZJRElBIFBSTyBMb2dvcyI+PC9kaXY+CjwhLS08aDIgY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtQm90dG9tIj5Db21pbmcgU29vbjwvaDI+LS0+CjxoMiBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+TlZJRElBIFJUWCBQUk88YnI+QnVpbHQgZm9yIFByb2Zlc3Npb25hbHM8L2gyPgo8cCBjbGFzcz0icG55LWNvcHkgaC1wdXNoU21Cb3R0b20iPkRlc2lnbmVkIGZvciBwcm9mZXNzaW9uYWxzIHdobyBkZW1hbmQgdGhlIGJlc3QsIE5WSURJQSBSVFggUFJPJiM4NDgyOyBzb2x1dGlvbnMgZGVsaXZlciB1bnBhcmFsbGVsZWQgcGVyZm9ybWFuY2UsIHJlbGlhYmlsaXR5LCBhbmQgc3VwcG9ydC48L3A+CjxhIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGhvbWUtcm90YXRvciIgYXJpYS1sYWJlbD0iRXhwbG9yZSBNb3JlIC0gUlRYIFBybyIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9wcm9mZXNzaW9uYWwvc29mdHdhcmUtc29sdXRpb25zL2JsYWNrd2VsbC1hcmNoaXRlY3R1cmUiPkV4cGxvcmUgTW9yZTwvYT48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2xpPgo8IS0tQ1MyMzQyIE0uMiAyMjMwIE5WTWUgUENJZSBHZW40IHg0IFNTRCAtLT4KPGxpPgo8ZGl2IGNsYXNzPSJzbGlkZSI+CjxkaXYgY2xhc3M9InBueS1yb3RhdG9yLWNvbnRlbnQiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnBueS5jb20vSW1hZ2UlMjBMaWJyYXJ5L0NvbnN1bWVyL1BOWS1DUzIzNDItU1NELk0uMi0yMjMwLU5WTWUtV2ViLVJvdGF0b3ItMTkyMHgxMDgwLmpwZycpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7Ij4KPGRpdiBjbGFzcz0icG55LXJvdGF0b3ItbW9iaWxlLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy5wbnkuY29tL0ltYWdlJTIwTGlicmFyeS9Db25zdW1lci9QTlktQ1MyMzQyLVNTRC5NLjItMjIzMC1OVk1lLVdlYi1Sb3RhdG9yLU1vYmlsZS0xMjAweDY3NS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyI+PC9kaXY+CjxkaXYgY2xhc3M9InBueS1yb3RhdG9yLWlubmVyLWNvbnRlbnQgaC1maWxsQ29sb3JXaGl0ZSI+CjxkaXY+PGltZyBjbGFzcz0ic2xpZGVyLWxvZ28gaC1wdXNoU21Cb3R0b20iIHN0eWxlPSJ3aWR0aDogODBweDsgaGVpZ2h0OiBhdXRvOyIgd2lkdGg9IjcwMCIgaGVpZ2h0PSIzOTIiIHNyYz0iaHR0cHM6Ly93d3cucG55LmNvbS9pbWFnZSUyMGxpYnJhcnkvbG9nb3MvcG55LWxvZ28tZGFyay0tci0uc3ZnIiBhbHQ9IlBOWSBhbmQgTlZJRElBIEdlRm9yY2UgUlRYIExvZ28iIGRhdGEtYW1wLWhlaWdodD0iNjQiIGRhdGEtYW1wLXdpZHRoPSIzMDAiPjwvZGl2Pgo8IS0tPGgyIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+SW5zZXJ0IEhlcmU8L2gyPi0tPgo8aDIgY2xhc3M9ImgtaDEgaC1jYXBzIGgtcHVzaFNtQm90dG9tIj5DUzIzNDIgTS4yIDIyMzAgTlZNZSBQQ0llIEdlbjQgeDQgU1NEPC9oMj4KPHAgY2xhc3M9InBueS1jb3B5IGgtcHVzaFNtQm90dG9tIj5Db21wYWN0IHNpemUuIEh1Z2UgUGVyZm9ybWFuY2UuIEEgcG93ZXJmdWwgdXBncmFkZSBmb3IgZGVza3RvcHMsIGxhcHRvcHMgYW5kIGhhbmRoZWxkIGdhbWluZyBkZXZpY2VzIHRoYXQgZGVsaXZlcnMgdG9wLXRpZXIgUENJZSBHZW40IHBlcmZvcm1hbmNlLjwvcD4KPGEgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaG9tZS1yb3RhdG9yIiBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IHRoZSBOVklESUEgR2VGb3JjZSBJbmRpYW5hIEpvbmVzIGFuZCB0aGUgR3JlYXQgQ2lyY2xlIEJ1bmRsZSIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9jczIzNDItbS0yLW52bWUtc3NkIj5MZWFybiBNb3JlPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvbGk+CjwvdWw+CjwvZGl2Pgo8L3NlY3Rpb24+CjxkaXYgY2xhc3M9ImNzcy1pbmxpbmUiPgo8c2NyaXB0PgogICAgICAgICAgICAgICAgICAgIC8vIEhFUk8gU0xJREVSCiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoJCkgeyAkKCcubXktc2xpZGVyJykudW5zbGlkZXIoe30pOyB9KTsKICAgICAgICAgICAgICAgIDwvc2NyaXB0Pgo8L2Rpdj5kZAIBD2QWAgUFY3RsMDAPDxYCHwkFnhQ8ZGl2IGNsYXNzPSJjc3MtaW5saW5lIj4KPHN0eWxlPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2NHB4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2lnbi11cC1iYW5uZXIgLm1vYmlsZS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNpZ24tdXAtYmFubmVyIC5iZWJhcy10aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zaWduLXVwLWJhbm5lciAuYmViYXMtdGl0bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5zaWduLXVwLWJhbm5lciAuYmViYXMtdGl0bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXMtbmV1ZS1wcm8nLCAnQmViYXMgTmV1ZScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAuc2lnbi11cC1iYW5uZXIgLnBueS1wcmUtdGl0bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIC5zaWduLXVwLWJhbm5lciAucG55LXN1Yi10aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnNpZ24tdXAtYmFubmVyIGg0IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5zaWduLXVwLWJhbm5lciB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9zdHlsZT4KPC9kaXY+CjxzZWN0aW9uIGNsYXNzPSJqb2luLXBueSBoLWNvbG9yV2hpdGUiIGlkPSJqb2luLXBueSI+CjxkaXYgY2xhc3M9InNlY3Rpb24gc2lnbi11cC1iYW5uZXIgaC1maWxsQ29sb3JBY2NlbnREYXJrZXIgaC1jb2xvcldoaXRlIGgtdGV4dENlbnRlciBtb2JpbGUtY2VudGVyIj4KPGgyIGNsYXNzPSJoLWg2IHBueS1wcmUtdGl0bGUgaC1mb250QmFzZSBoLXB1c2hTbUJvdHRvbSBoLWNhcHMgYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLWRvd24iPkpvaW4gdGhlIFBOWSBGYW1pbHk8L2gyPgo8aDMgY2xhc3M9ImJlYmFzLXRpdGxlIGgtY29sb3JXaGl0ZSBoLWNhcHMgaC1wdXNoU21Cb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIj5TaWduIFVwIE5vdzwvaDM+CjxoNCBjbGFzcz0iaC1mb250QmFzZSBoLWNvbG9yV2hpdGUgaC1oNiBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtcmlnaHQiPlJlY2VpdmUgbmV3cyBhbmQgdXBkYXRlcyBvbiBleGNsdXNpdmUgb2ZmZXJzIGFuZCBtb3JlITwvaDQ+CjxhIGFyaWEtbGFiZWw9IlNpZ24gdXAgdG8gYmUgYXBhcnQgb2Ygb3VyIG5ld3NsZXR0ZXIiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vZm9ybXMvY29uc3VtZXIvY29uc3VtZXItc2lnbnVwIiBjbGFzcz0iYnRuIGJ0bi0tZ3JhZGllbnRMaWdodCBoLW1vYmlsZUNlbnRlciBoLWNvbG9yQmxhY2sgaC1idG5Ib21lIGFvcy1pbml0IGFvcy1hbmltYXRlIiBkYXRhLWFvcz0iZmFkZS1sZWZ0IiBpZD0iTmV3c2xldHRlcl9TaWduX1VwIj5TaWduIFVwPC9hPjwvZGl2Pgo8L3NlY3Rpb24+ZGQCAg9kFgIFBWN0bDAwDw8WAh8JBf4hPGRpdiBjbGFzcz0iY3NzLWlubGluZSI+CjxzdHlsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLQogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjRweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLm1vYmlsZS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLnBueS13b3JsZD4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tdWx0aS1wcm9kdWN0IC5wbnktd29ybGQ+IDpsYXN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkgYW5kIChtYXgtd2lkdGg6IDEyOTBweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgaDIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubXVsdGktcHJvZHVjdCAucG55LXdvcmxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tdWx0aS1wcm9kdWN0IC5wbnktd29ybGQ+IDpmaXJzdC1jaGlsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTUwcHggNTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzUlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLnBueS13b3JsZD4gOmxhc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2NSU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAxMHB4IDEwcHggMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubXVsdGktcHJvZHVjdCAucG55LWNvcHkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLnBueS13b3JsZD4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5tdWx0aS1wcm9kdWN0IC5wbnktd29ybGQ+IDpsYXN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL0ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUgUGFnZS9wbnktcHJvZHVjdHMtd29ybGQtbWFwLTIwMjUuanBnJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDgwJTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLm11bHRpLXByb2R1Y3QgLnBueS13b3JsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggNSUgMjVweCA1JTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAubXVsdGktcHJvZHVjdCBoMiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5tdWx0aS1wcm9kdWN0IC5wbnktc3VidGl0bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIC5tdWx0aS1wcm9kdWN0IC5wbnktcHJlLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9zdHlsZT4KPC9kaXY+CjxzZWN0aW9uIGNsYXNzPSJtdWx0aS1wcm9kdWN0IiBpZD0ibXVsdGktcHJvZHVjdCI+CjxkaXYgY2xhc3M9InBueS13b3JsZCBoLWZpbGxDb2xvckdyZXlMaWdodGVzdCBoLWhhcmRCb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIj4KPGRpdiBjbGFzcz0id29ybGQtY29udGVudCBtb2JpbGUtY2VudGVyIGgtZmlsbENvbG9yV2hpdGUgaC1zb2Z0TGciPgo8aDIgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPldoeSBQTlk/PC9oMj4KPGgzIGNsYXNzPSJoLWg2IHBueS1zdWJ0aXRsZSBoLXB1c2hTbUJvdHRvbSBoLWNhcHMiPldFIEFSRSBBIE1VTFRJLVBST0RVQ1QgU09MVVRJT048L2gzPgo8cCBjbGFzcz0icG55LWNvcHkiPlBOWSBkZWxpdmVycyBzb2x1dGlvbnMgaW4gb3ZlciA1MCBjb3VudHJpZXMuIE91ciBwcm9mZXNzaW9uYWwsIGVudGVycHJpc2UgYW5kIE9FTSBwcm9kdWN0cyBhcmUgYXZhaWxhYmxlIGZyb20gbGVhZGluZyBzeXN0ZW0gYnVpbGRlcnMsIEIyQiBwcm92aWRlcnMsIERNUnMsIGUtdGFpbGVycywgcmVzZWxsZXJzIGFuZCBkaXN0cmlidXRvcnMuPC9wPgo8YSBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IFBOWSBUZWNobm9sb2dpZXMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvbGVhcm4tbW9yZS9hYm91dC1wbnkiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9IldoeV9QTlkiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXY+PC9kaXY+CjwvZGl2Pgo8L3NlY3Rpb24+ZGQCAw9kFgIFBWN0bDAwDw8WAh8JBas7PGRpdiBjbGFzcz0iY3NzLWlubGluZSI+CjxzdHlsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLQogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjRweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3cgLm1vYmlsZS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDI1cHggMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdz4uY3AtYmxvY2s+IDpmaXJzdC1jaGlsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdz4uY3AtYmxvY2s+IDpsYXN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jb25zdW1lci1wcm8tcm93Pi5jcC1ibG9jay1mdz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrLWZ3PiA6bGFzdC1jaGlsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdyAucG55LWNvcHkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDklOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrPiA6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdz4uY3AtYmxvY2s+IDpsYXN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrLWZ3IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jb25zdW1lci1wcm8tcm93Pi5jcC1ibG9jay1mdz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzUlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdz4uY3AtYmxvY2stZnc+IDpsYXN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjUlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3cgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkgYW5kIChtYXgtd2lkdGg6IDEyOTBweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3cgaDIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggNSU7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5jb25zdW1lci1wcm8tcm93Pi5jcC1ibG9jaz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5jb25zdW1lci1wcm8tcm93Pi5jcC1ibG9jaz4gOmxhc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrLWZ3IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByby1yb3c+LmNwLWJsb2NrLWZ3PiA6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnN1bWVyLXByb2R1Y3RzLWhvbWUgaDIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdyAucG55LXN1YnRpdGxlLAogICAgICAgICAgICAgICAgICAgICAgICAuY29uc3VtZXItcHJvLXJvdyAucG55LXByZS10aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIC0tPgogICAgICAgICAgICAgICAgICAgIDwvc3R5bGU+CjwvZGl2Pgo8c2VjdGlvbiBjbGFzcz0iY29uc3VtZXItcHJvZHVjdHMtaG9tZSIgaWQ9ImNvbnN1bWVyLXByb2R1Y3RzLWhvbWUiPgo8ZGl2IGNsYXNzPSJjb25zdW1lci1wcm8tcm93IGgtZmlsbENvbG9yR3JleUxpZ2h0ZXN0Ij4KPGRpdiBjbGFzcz0iY3AtYmxvY2sgYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIj4KPGRpdiBjbGFzcz0iaC1maWxsQ29sb3JXaGl0ZSBoLXNvZnRMZyI+CjxoMiBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+Q29uc3VtZXIgPHNwYW4gY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1wdXNoU21Ub3AgaC1jYXBzIj5QUk9EVUNUUzwvc3Bhbj48L2gyPgo8cCBjbGFzcz0icG55LWNvcHkiPlBOWSBDb25zdW1lciBTb2x1dGlvbnMgcHJvdmlkZXMgeW91IHdpdGggcXVhbGl0eSBwcm9kdWN0cyB0aGF0IGFyZSByZWxpYWJsZSwgYWZmb3JkYWJsZSwgYW5kIGdlYXJlZCB0b3dhcmQgeW91ciBuZWVkcy48L3A+CjxhIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgcmVsaWFibGUgYW5kIGFmZm9yZGFibGUgY29uc3VtZXIgcHJvZHVjdHMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9IkNvbnN1bWVyX1Byb2R1Y3RzIj5MZWFybiBNb3JlPC9hPjwvZGl2Pgo8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9JbWFnZSUyMExpYnJhcnkvQ29uc3VtZXIvU1NELUJhbm5lci0xMS1yZXZpc2VkLTE5MjAuanBnJyk7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY3AtYmxvY2sgYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIiBkYXRhLWFvcy1kZWxheT0iMjAwIj4KPGRpdiBjbGFzcz0iaC1maWxsQ29sb3JXaGl0ZSBoLXNvZnRMZyI+CjxoMiBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+UHJvZmVzc2lvbmFsPC9oMj4KPGgzIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtcHVzaFNtQm90dG9tIGgtY2FwcyI+UE5ZIFBSTzwvaDM+CjxwIGNsYXNzPSJwbnktY29weSI+UE5ZIFByb2Zlc3Npb25hbCBTb2x1dGlvbnMgcHJvdmlkZXMgeW91IHdpdGggcG93ZXJmdWwgdG9vbHMgdG8gbWFuYWdlIGhlYXZ5IHdvcmtsb2Fkcy48L3A+CjxhIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgUE5ZIFByb2Zlc3Npb25hbCBTb2x1dGlvbnMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vcHJvZmVzc2lvbmFsIiBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiIGlkPSJQcm9fUHJvZHVjdHMiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlL3BueS1wcm8tZ3JhcGhpY3MtcHJvY2Vzc2luZy11bml0cy5qcGcnKTsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyI+PC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJjcC1ibG9jay1mdyBoLXB1c2hUb3AgYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIj4KPGRpdiBjbGFzcz0iaC1maWxsQ29sb3JXaGl0ZSI+CjxoMiBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+R2FtaW5nPC9oMj4KPGgzIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtcHVzaEJvdHRvbSBoLWNhcHMiPlVuY29tcHJvbWlzaW5nIFF1YWxpdHk8L2gzPgo8YSBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IFhMUjggR2FtaW5nIiBocmVmPSJodHRwczovL3d3dy5wbnkuY29tL2dhbWluZyIgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaC1idG5Ib21lIiBpZD0iQ29uc3VtZXJfWExSOF9HYW1pbmciPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlLzUwLXNlcmllcy1wbnktaGVyby1iYW5uZXIuanBnJyk7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+Cjwvc2VjdGlvbj5kZAIED2QWAgUFY3RsMDAPDxYCHwkF/Vc8ZGl2IGNsYXNzPSJjc3MtaW5saW5lIj4KPHN0eWxlPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2NHB4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5tb2JpbGUtY2VudGVyIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmVwaWMteC1yZ2ItcHJvZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDEpLCByZ2JhKDAsIDAsIDAsIDAuNiksIHJnYmEoMCwgMCwgMCwgMC42KSksIHVybCgnL2ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlL3hscjgtZXBpYy14LXJnYi1tZW1vcnktY2FyZC1yYWluYm93LWJhY2tncm91bmQuanBnJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4uZnctcHJvZHVjdC1jYWxsb3V0IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dD5pbWcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dD5wLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dD5oMiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAuZnctcHJvZHVjdC1jYWxsb3V0Pi5wbnktY29weSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wbnktY29weSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLmJlYmFzLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmVwaWMteC1yZ2ItcHJvZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDEpLCByZ2JhKDAsIDAsIDAsIDAuNiksIHJnYmEoMCwgMCwgMCwgMCkpLCB1cmwoJy9pbWFnZSUyMExpYnJhcnkvQ29tcGFueS9Ib21lJTIwUGFnZS94bHI4LWVwaWMteC1yZ2ItbWVtb3J5LWNhcmQtcmFpbmJvdy1iYWNrZ3JvdW5kLmpwZycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5mdy1wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMyJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5vbmUtdGhpcmQtcHJvZHVjdC1jYWxsb3V0PmltZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5mdy1wcm9kdWN0LWNhbGxvdXQ+LnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAuYmViYXMtdGl0bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmVwaWMteC1yZ2ItcHJvZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDEpLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDApKSwgdXJsKCcvaW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UveGxyOC1lcGljLXgtcmdiLW1lbW9yeS1jYXJkLXJhaW5ib3ctYmFja2dyb3VuZC5qcGcnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjVweCA1JTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+LmZ3LXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5vbmUtdGhpcmQtcHJvZHVjdC1jYWxsb3V0PmltZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5mdy1wcm9kdWN0LWNhbGxvdXQ+LnBueS1jb3B5LAogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5mdy1wcm9kdWN0LWNhbGxvdXQ+aDIsCiAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLmZ3LXByb2R1Y3QtY2FsbG91dD5oMywKICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAuZnctcHJvZHVjdC1jYWxsb3V0Pmg0IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDNweCAjMDAwMDAwOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5vbmUtdGhpcmQtcHJvZHVjdC1jYWxsb3V0PnAsCiAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQ+aDIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdyBoMiwKICAgICAgICAgICAgICAgICAgICAgICAgLnBjLWNvbXBvbmVudHMtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdyBoMyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wYy1jb21wb25lbnRzLWhvbWUgLmJlYmFzLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNDQ0NDQ0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhcy1uZXVlLXBybycsICdCZWJhcyBOZXVlJywgJ1JvYm90bycsIHNhbnMtc2VyaWY7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wbnktcHJlLXRpdGxlLAogICAgICAgICAgICAgICAgICAgICAgICAucGMtY29tcG9uZW50cy1ob21lIC5wbnktc3VidGl0bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAtLT4KICAgICAgICAgICAgICAgICAgICA8L3N0eWxlPgo8L2Rpdj4KPHNlY3Rpb24gY2xhc3M9InBjLWNvbXBvbmVudHMtaG9tZSIgaWQ9InBjLWNvbXBvbmVudHMtaG9tZSI+CjxkaXYgY2xhc3M9InByb2R1Y3QtY2FsbG91dCBoLWZpbGxDb2xvckdyZXlMaWdodGVzdCI+CjxkaXYgY2xhc3M9InByb2R1Y3QtY2FsbG91dC10aXRsZSBoLXRleHRDZW50ZXIiPgo8aDIgY2xhc3M9ImgtaDEgYmViYXMtdGl0bGUgaC1jYXBzIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtZG93biIgZGF0YS1hb3MtZHVyYXRpb249Ijc1MCI+PHNwYW4gY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktcHJlLXRpdGxlIGgtZmx1c2giPlNob3A8L3NwYW4+IFBDIENvbXBvbmVudHM8L2gyPgo8L2Rpdj4KPGRpdiBjbGFzcz0icHJvZHVjdC1jYWxsb3V0LXJvdyI+CjxkaXYgY2xhc3M9ImZ3LXByb2R1Y3QtY2FsbG91dCBoLXNvZnRMZyBoLWNvbG9yV2hpdGUgZXBpYy14LXJnYi1wcm9kIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI3NTAiPgo8aDMgY2xhc3M9ImgtaDEgaC1jYXBzIGgtcHVzaFNtQm90dG9tIj5FcGljLVggUkdCIDxzcGFuIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXByZS10aXRsZSBoLWZsdXNoIGgtc29mdFNtRW5kcyI+RGVza3RvcCBNZW1vcnk8L3NwYW4+PC9oMz4KPGg0IGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgaC1mbHVzaCI+VW5wYXJhbGxlbGVkIFBlcmZvcm1hbmNlIE1lZXRzIEJyaWxsaWFudCBSR0IgU3R5bGU8L2g0Pgo8cCBjbGFzcz0icG55LWNvcHkiPk92ZXJjbG9ja2luZyBjYXBhYmlsaXRpZXMsIGhpZ2gtZnJlcXVlbmN5IHBlcmZvcm1hbmNlLCBsb3cgbGF0ZW5jeSwgYnJpbGxpYW50IExFRHMgYW5kIGZyb3N0ZWQgbGlnaHQgZ3VpZGUgbGVuczwvcD4KPGEgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCBYTFI4IEdhbWluZyBFUElDLVggUkdCIDMyMDBNSHogRGVza3RvcCBNZW1vcnkiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20veGxyOC1nYW1pbmctZXBpYy14LXJnYi1kZXNrdG9wLW1lbW9yeSIgY2xhc3M9ImJ0biBidG4tLWdyYWRpZW50TGlnaHQgbW9iaWxlLWNlbnRlciBoLWNvbG9yQmxhY2sgaC1idG5Ib21lIiBpZD0iQ29uc3VtZXJfWExSOF9EZXNrdG9wX01lbW9yeSI+TGVhcm4gTW9yZTwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ib25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCBoLWZpbGxDb2xvcldoaXRlIGgtc29mdExnQm90dG9tIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI3NTAiPjxpbWcgc3JjPSJodHRwczovL3d3dy5wbnkuY29tL2ltYWdlJTIwbGlicmFyeS9jb21wYW55L2hvbWUlMjBwYWdlL2dlZm9yY2UtcnR4LTUwOTAtc2VyaWVzLWFyZ2ItZ3B1LnBuZyIgd2lkdGg9IjgwMCIgaGVpZ2h0PSI0ODAiIGFsdD0iUE5ZIEdlRm9yY2UgR3JhcGhpY3MgQ2FyZCI+CjxkaXYgY2xhc3M9Imgtc29mdExnU2lkZXMgaC10ZXh0TGVmdCI+CjxoMyBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+R2VGb3JjZSBHcmFwaGljcyBDYXJkczwvaDM+CjxoNCBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLXB1c2hTbUJvdHRvbSBoLWNhcHMiPlJUWC4gSVQnUyBPTi48L2g0Pgo8cCBjbGFzcz0icG55LWNvcHkiPkdhbWVycyBkZW1hbmQgdGhlIGhpZ2hlc3QgdmlzdWFsIHF1YWxpdHksIGFuZCB0aGUgQUktZW5oYW5jZWQgTlZJRElBIERMU1MgNCB0ZWNobm9sb2d5LjwvcD4KPGEgYXJpYS1sYWJlbD0iU2hvcCBub3cgZm9yIEdlRm9yY2UgR3JhcGhpY3MgQ2FyZHMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvZ2Vmb3JjZS1ncmFwaGljcz9maWx0ZXI9NTAlMjBTZXJpZXMiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9IkNvbnN1bWVyX0dlRm9yY2VfR3JhcGhpY3NfQ2FyZHMiPlNob3AgTm93PC9hPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ib25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCBoLWZpbGxDb2xvcldoaXRlIGgtc29mdExnQm90dG9tIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI3NTAiIGRhdGEtYW9zLWRlbGF5PSIyMDAiPjxpbWcgc3JjPSJodHRwczovL3d3dy5wbnkuY29tL2ltYWdlJTIwbGlicmFyeS9jb21wYW55L2hvbWUlMjBwYWdlL3BueS1zb2xpZC1zdGF0ZS1kcml2ZS5wbmciIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjYwMCIgYWx0PSJQTlkgU29saWQgU3RhdGUgRHJpdmUiPgo8ZGl2IGNsYXNzPSJoLXNvZnRMZ1NpZGVzIGgtdGV4dExlZnQiPgo8aDMgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPlNvbGlkIFN0YXRlIERyaXZlczwvaDM+CjxoNCBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLXB1c2hTbUJvdHRvbSBoLWNhcHMiPkhpZ2ggUGVyZm9ybWFuY2UsIEVuZHVyYW5jZSBhbmQgUmVsaWFiaWxpdHk8L2g0Pgo8cCBjbGFzcz0icG55LWNvcHkiPlJlYWxpemUgZmFzdGVyIGJvb3QgdGltZXMsIHF1aWNrZXIgYXBwbGljYXRpb24gbGF1bmNoZXMgYW5kIGJldHRlciBvdmVyYWxsIHN5c3RlbSBwZXJmb3JtYW5jZS48L3A+CjxhIGFyaWEtbGFiZWw9IlNob3Agbm93IGZvciBTb2xpZCBTdGF0ZSBEcml2ZXMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvc29saWQtc3RhdGUtZHJpdmVzIiBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiIGlkPSJDb25zdW1lcl9Tb2xpZF9TdGF0ZV9Ecml2ZXMiPlNob3AgTm93PC9hPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ib25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCBoLWZpbGxDb2xvcldoaXRlIGgtc29mdExnQm90dG9tIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI3NTAiIGRhdGEtYW9zLWRlbGF5PSI0MDAiPjxpbWcgc3JjPSJodHRwczovL3d3dy5wbnkuY29tL2ltYWdlJTIwbGlicmFyeS9jb21wYW55L2hvbWUlMjBwYWdlL3BueS1yZ2ItbWVtb3J5LWNhcmQucG5nIiB3aWR0aD0iODAwIiBoZWlnaHQ9IjQ4MCIgYWx0PSJQTlkgTWVtb3J5IENhcmQiPgo8ZGl2IGNsYXNzPSJoLXNvZnRMZ1NpZGVzIGgtdGV4dExlZnQiPgo8aDMgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPlBDIE1lbW9yeTwvaDM+CjxoNCBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLXB1c2hTbUJvdHRvbSBoLWNhcHMiPkV4cGVyaWVuY2UgUGVhayBQZXJmb3JtYW5jZTwvaDQ+CjxwIGNsYXNzPSJwbnktY29weSI+VXBncmFkZSB5b3VyIFBDIE1lbW9yeSB0byBzZWUgbG93IGxhdGVuY3kgYW5kIHBvd2VyIGNvbnN1bXB0aW9uLCBhbmQgZXh0cmVtZSBvdmVyY2xvY2tpbmcuPC9wPgo8YSBhcmlhLWxhYmVsPSJTaG9wIG5vdyBmb3IgUEMgTWVtb3J5IiBocmVmPSJodHRwczovL3d3dy5wbnkuY29tL2NvbnN1bWVyL3ZpZXctYWxsLXByb2R1Y3RzL21lbW9yeSIgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaC1idG5Ib21lIiBpZD0iQ29uc3VtZXJfUENfTWVtb3J5Ij5TaG9wIE5vdzwvYT48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9zZWN0aW9uPmRkAgUPZBYCBQVjdGwwMA8PFgIfCQWQVzxkaXYgY2xhc3M9ImNzcy1pbmxpbmUiPgo8c3R5bGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0KICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLm1vYmlsZS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY2NHB4KSBhbmQgKG1heC13aWR0aDogODAwcHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5lbGl0ZS14LWZpdC1wcm9kIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMSksIHJnYmEoMCwgMCwgMCwgMC45KSwgcmdiYSgwLCAwLCAwLCAwLjkpKSwgdXJsKCcvaW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UvZWxpdGUteC1maXQtdXNiLXB1cnBsZS1iYWNrZ3JvdW5kLmpwZycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+LmZ3LXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQ+aW1nIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQ+cCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQ+aDIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLmZ3LXByb2R1Y3QtY2FsbG91dD4ucG55LWNvcHkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wbnktY29weSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLmJlYmFzLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmVsaXRlLXgtZml0LXByb2QgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAxKSwgcmdiYSgwLCAwLCAwLCAwLjgpLCByZ2JhKDAsIDAsIDAsIDApKSwgdXJsKCcvaW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UvZWxpdGUteC1maXQtdXNiLXB1cnBsZS1iYWNrZ3JvdW5kLmpwZycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3cgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5mdy1wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMyJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5vbmUtdGhpcmQtcHJvZHVjdC1jYWxsb3V0PmltZyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5mdy1wcm9kdWN0LWNhbGxvdXQ+LnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAuYmViYXMtdGl0bGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLmVsaXRlLXgtZml0LXByb2QgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAxKSwgcmdiYSgwLCAwLCAwLCAwLjYpLCByZ2JhKDAsIDAsIDAsIDApKSwgdXJsKCcvaW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UvZWxpdGUteC1maXQtdXNiLXB1cnBsZS1iYWNrZ3JvdW5kLmpwZycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDUlIDI1cHggNSU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5mdy1wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3c+Lm9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dD5pbWcgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAuZnctcHJvZHVjdC1jYWxsb3V0Pi5wbnktY29weSwKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAuZnctcHJvZHVjdC1jYWxsb3V0PmgyLAogICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5mdy1wcm9kdWN0LWNhbGxvdXQ+aDMsCiAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLmZ3LXByb2R1Y3QtY2FsbG91dD5oNCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAzcHggIzAwMDAwMDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAucHJvZHVjdC1jYWxsb3V0LXJvdz4ub25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dD5wLAogICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5wcm9kdWN0LWNhbGxvdXQtcm93Pi5vbmUtdGhpcmQtcHJvZHVjdC1jYWxsb3V0PmgyIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3cgaDIsCiAgICAgICAgICAgICAgICAgICAgICAgIC5leHRlcm5hbC1zdG9yYWdlLWhvbWUgLnByb2R1Y3QtY2FsbG91dC1yb3cgaDMgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAuZXh0ZXJuYWwtc3RvcmFnZS1ob21lIC5iZWJhcy10aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDQ0NDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXMtbmV1ZS1wcm8nLCAnQmViYXMgTmV1ZScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAucG55LXByZS10aXRsZSwKICAgICAgICAgICAgICAgICAgICAgICAgLmV4dGVybmFsLXN0b3JhZ2UtaG9tZSAucG55LXN1YnRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgLS0+CiAgICAgICAgICAgICAgICAgICAgPC9zdHlsZT4KPC9kaXY+CjxzZWN0aW9uIGNsYXNzPSJleHRlcm5hbC1zdG9yYWdlLWhvbWUiIGlkPSJleHRlcm5hbC1zdG9yYWdlLWhvbWUiPgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNhbGxvdXQgaC1maWxsQ29sb3JHcmV5TGlnaHRlc3QiPgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNhbGxvdXQtdGl0bGUgaC10ZXh0Q2VudGVyIj4KPGgyIGNsYXNzPSJoLWgxIGJlYmFzLXRpdGxlIGgtY2FwcyBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtZG93biI+PHNwYW4gY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktcHJlLXRpdGxlIGgtZmx1c2ggaC1wdXNoU21Cb3R0b20iPlNob3A8L3NwYW4+IEV4dGVybmFsIFN0b3JhZ2U8L2gyPgo8L2Rpdj4KPGRpdiBjbGFzcz0icHJvZHVjdC1jYWxsb3V0LXJvdyI+CjxkaXYgY2xhc3M9ImZ3LXByb2R1Y3QtY2FsbG91dCBlbGl0ZS14LWZpdC1wcm9kIGgtY29sb3JXaGl0ZSBoLXNvZnRMZyBoLXB1c2hCb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIj4KPGgzIGNsYXNzPSJoLWgxIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+NTEyR0IgRWxpdGUtWCBGaXQgVVNCIDMuMTwvaDM+CjxoNCBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLWNhcHMgaC1jb2xvcldoaXRlIj5OZXdlc3QgTWVtYmVyIG9mIFBOWSdzIFVTQiBGYW1pbHk8L2g0Pgo8cCBjbGFzcz0icG55LWNvcHkgaC1jb2xvcldoaXRlIj5DYXBhY2l0eTogQW1hemluZyA1MTJHQiBvZiBzdG9yYWdlPGJyPlNpemU6IENvbXBhY3QsIHNtYWxsIGZvb3RwcmludDxicj5QZXJmb3JtYW5jZTogVXAgdG8gMjAwTUIvcyB0cmFuc2ZlciBzcGVlZDwvcD4KPGEgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCB0aGUgNTEyR0IgRWxpdGUtWCBGaXQgVVNCIDMuMSIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9lbGl0ZS14LWZpdC11c2ItMy0xIiBjbGFzcz0iYnRuIGJ0bi0tZ3JhZGllbnRMaWdodCBoLWNvbG9yQmxhY2sgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiIGlkPSJDb25zdW1lcl81MTJHQl9FbGl0ZV9YX0ZpdF9VU0IiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgY2xhc3M9Im9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQgaC1maWxsQ29sb3JXaGl0ZSBoLXNvZnRMZ0JvdHRvbSBoLXB1c2hCb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIj48aW1nIHNyYz0iaHR0cHM6Ly93d3cucG55LmNvbS9pbWFnZSUyMGxpYnJhcnkvY29tcGFueS9ob21lJTIwcGFnZS9wbnktdXNiLWZsYXNoLWRyaXZlLnBuZyIgd2lkdGg9IjM1MCIgaGVpZ2h0PSIyMTAiIGFsdD0iUE5ZIFVTQiBGbGFzaCBEcml2ZSI+CjxkaXYgY2xhc3M9Imgtc29mdExnU2lkZXMgaC10ZXh0TGVmdCI+CjxoMyBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+VVNCIDxzcGFuIGNsYXNzPSJwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtVG9wIj5GbGFzaCBEcml2ZXM8L3NwYW4+PC9oMz4KPHAgY2xhc3M9InBueS1jb3B5Ij5TdG9yZSBhbmQgc2hhcmUgYWxsIG9mIHlvdXIgZG9jdW1lbnRzLCBwaG90b3MsIHZpZGVvcywgbXVzaWMsIGFuZCBtb3JlLjwvcD4KPGEgYXJpYS1sYWJlbD0iU2hvcCBub3cgZm9yIFVTQiBGbGFzaCBEcml2ZXMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvdXNiLWZsYXNoLWRyaXZlcyIgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaC1idG5Ib21lIiBpZD0iQ29uc3VtZXJfRmxhc2hfRHJpdmVzIj5TaG9wIE5vdzwvYT48L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9Im9uZS10aGlyZC1wcm9kdWN0LWNhbGxvdXQgaC1maWxsQ29sb3JXaGl0ZSBoLXNvZnRMZ0JvdHRvbSBoLXB1c2hCb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNzUwIiBkYXRhLWFvcy1kZWxheT0iMjAwIj48aW1nIHNyYz0iaHR0cHM6Ly93d3cucG55LmNvbS9pbWFnZSUyMGxpYnJhcnkvY29tcGFueS9ob21lJTIwcGFnZS9lbGl0ZS14LWZsYXNoLW1lbW9yeS1jYXJkLnBuZyIgd2lkdGg9IjM1MCIgaGVpZ2h0PSIyMTAiIGFsdD0iUE5ZIEZsYXNoIE1lbW9yeSBDYXJkIj4KPGRpdiBjbGFzcz0iaC1zb2Z0TGdTaWRlcyBoLXRleHRMZWZ0Ij4KPGgzIGNsYXNzPSJoLWgxIGgtcHVzaFNtQm90dG9tIj5GbGFzaCA8c3BhbiBjbGFzcz0icG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbVRvcCI+TWVtb3J5IENhcmRzPC9zcGFuPjwvaDM+CjxwIGNsYXNzPSJwbnktY29weSI+Q2FwdHVyZSwgc3RvcmUsIGFuZCBzaGFyZSBkaWdpdGFsIGNvbnRlbnQgZnJvbSB5b3VyIGNhbWVyYSBvciBtb2JpbGUgZGV2aWNlIHF1aWNrbHkgYW5kIGVhc2lseS48L3A+CjxhIGFyaWEtbGFiZWw9IlNob3Agbm93IGZvciBGbGFzaCBNZW1vcnkgQ2FyZHMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvZmxhc2gtbWVtb3J5LWNhcmRzIiBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiIGlkPSJDb25zdW1lcl9GbGFzaF9NZW1vcnlfQ2FyZHMiPlNob3AgTm93PC9hPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ib25lLXRoaXJkLXByb2R1Y3QtY2FsbG91dCBoLWZpbGxDb2xvcldoaXRlIGgtc29mdExnQm90dG9tIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI3NTAiIGRhdGEtYW9zLWRlbGF5PSI0MDAiPjxpbWcgc3JjPSJodHRwczovL3d3dy5wbnkuY29tL2ltYWdlJTIwbGlicmFyeS9jb25zdW1lci92aWV3JTIwYWxsJTIwcHJvZHVjdHMvb3RnJTIwZmxhc2glMjBkcml2ZXMvb3RnLXByb2R1Y3QtaW1hZ2UtbmV3LWlvcy5wbmciIHdpZHRoPSIzNTAiIGhlaWdodD0iMjEwIiBhbHQ9IlBOWSBPVEcgRkxhc2ggRHJpdmUiPgo8ZGl2IGNsYXNzPSJoLXNvZnRMZ1NpZGVzIGgtdGV4dExlZnQiPgo8aDMgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPk9URyA8c3BhbiBjbGFzcz0icG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbVRvcCI+Rmxhc2ggRHJpdmVzPC9zcGFuPjwvaDM+CjxwIGNsYXNzPSJwbnktY29weSI+RnJlZSB1cCBzcGFjZSwgZG93bmxvYWQgJiBzdG9yZSwgYW5kIHN5bmMgJiBzaGFyZSAib24tdGhlLWdvIiBieSB0cmFuc2ZlcnJpbmcgeW91ciB2aWRlb3MsIHBob3RvcywgbXVzaWMgYW5kIG1vcmUgZnJvbSB5b3VyIG1vYmlsZSBkZXZpY2VzLjwvcD4KPGEgYXJpYS1sYWJlbD0iU2hvcCBub3cgZm9yIE9URyBGbGFzaCBEcml2ZXMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vY29uc3VtZXIvdmlldy1hbGwtcHJvZHVjdHMvb3RnLWZsYXNoLWRyaXZlcyIgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaC1idG5Ib21lIiBpZD0iQ29uc3VtZXJfT1RHX0ZsYXNoX0RyaXZlcyI+U2hvcCBOb3c8L2E+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+Cjwvc2VjdGlvbj5kZAIGD2QWAgUFY3RsMDAPDxYCHwkFul08ZGl2IGNsYXNzPSJjc3MtaW5saW5lIj4KPHN0eWxlPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tCiAgICAgICAgICAgICAgICAgICAgICAgIC8qIEJMT0NLIC0gUFJPIFNPTFVUSU9OUyAqLwogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjRweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgLm1vYmlsZS1jZW50ZXIgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMtYmxvY2tzPi5wcm8tYmxvY2sgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrPiA6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jaz4gOmxhc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMtYmxvY2tzPi5wcm8tYmxvY2stZncgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jay1mdz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jay1mdz4gOmxhc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgLmJlYmFzLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMtYmxvY2tzPi5wcm8tYmxvY2s+cD5hIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogM3B4IDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEwMjRweCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgLnBueS1jb3B5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMtYmxvY2tzIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMtYmxvY2tzPi5wcm8tYmxvY2sgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jaz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrPiA6bGFzdC1jaGlsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMTUlIDAsIDEwMCUgMCwgMTAwJSAxMDAlLCAwJSAxMDAlKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrLWZ3PiA6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNSU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTAwcHggNTBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrLWZ3PiA6bGFzdC1jaGlsZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDY1JTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zIC5iZWJhcy10aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMDBweDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA1JSAyNXB4IDUlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jayB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3M+LnByby1ibG9jaz4gOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrLWZ3IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2Nrcz4ucHJvLWJsb2NrLWZ3PiA6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLnByby1zb2x1dGlvbnMgLmJlYmFzLXRpdGxlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDQ0NDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXMtbmV1ZS1wcm8nLCAnQmViYXMgTmV1ZScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAucHJvLXNvbHV0aW9ucy1ibG9ja3MgaDIsCiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWJsb2NrcyBoMyB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWhvbWUgLnBueS1wcmUtdGl0bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm8tc29sdXRpb25zLWhvbWUgLnBueS1zdWJ0aXRsZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIC0tPgogICAgICAgICAgICAgICAgICAgIDwvc3R5bGU+CjwvZGl2Pgo8c2VjdGlvbiBjbGFzcz0icHJvLXNvbHV0aW9ucy1ob21lIiBpZD0icHJvLXNvbHV0aW9ucy1ob21lIj4KPGRpdiBjbGFzcz0icHJvLXNvbHV0aW9ucyBoLWZpbGxDb2xvckdyZXlMaWdodGVzdCI+CjxoMiBjbGFzcz0iYmViYXMtdGl0bGUgaC10ZXh0Q2VudGVyIGgtcHVzaEJvdHRvbSBoLWNhcHMgYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLWRvd24iPjxzcGFuIGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXByZS10aXRsZSBoLXB1c2hTbUJvdHRvbSI+RXhwbG9yZSBPdXI8L3NwYW4+IFByb2Zlc3Npb25hbCBTb2x1dGlvbnM8L2gyPgo8ZGl2IGNsYXNzPSJwcm8tc29sdXRpb25zLWJsb2NrcyI+CjxkaXYgY2xhc3M9InByby1ibG9jayBoLWZpbGxDb2xvcldoaXRlIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI2MDAiPgo8ZGl2IGNsYXNzPSJoLWZpbGxDb2xvcldoaXRlIj4KPGgzIGNsYXNzPSJoLWgxIGgtcHVzaFNtQm90dG9tIj5OVklESUEgPHNwYW4gY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtVG9wIGgtZmx1c2hCb3R0b20iPkRhdGEgQ2VudGVyIEdQVXM8L3NwYW4+PC9oMz4KPHAgY2xhc3M9InBueS1jb3B5Ij5EZWxpdmVyaW5nIGluY3JlZGlibGUgcGVyZm9ybWFuY2UgdG8gcHJvZmVzc2lvbmFsczwvcD4KPGEgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCBOVklESUEgRGF0YSBDZW50ZXIgR1BVcyIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9wcm9mZXNzaW9uYWwvaGFyZHdhcmUvbnZpZGlhLWRhdGEtY2VudGVyLWdwdXMiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9IlByb19EYXRhX0NlbnRlcl9HUFVzIj5MZWFybiBNb3JlPC9hPjwvZGl2Pgo8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZSUyMExpYnJhcnkvQ29tbWVyY2lhbC9FeHBsb3JlJTIwT3VyJTIwUHJvZHVjdHMvTlZJRElBJTIwUHJvZmVzc2lvbmFsJTIwR3JhcGhpY3MvdGVzbGEtZGF0YS1jZW50ZXItZ3B1LmpwZycpOyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7Ij48L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InByby1ibG9jayBoLWZpbGxDb2xvcldoaXRlIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI2MDAiPgo8ZGl2IGNsYXNzPSJoLWZpbGxDb2xvcldoaXRlIj4KPGgzIGNsYXNzPSJoLWgxIGgtcHVzaFNtQm90dG9tIj5BcmlzdGEgTmV0d29ya3M8c3BhbiBjbGFzcz0iaC1mb250QmFzZSBoLWg2IHBueS1zdWJ0aXRsZSBoLWNhcHMgaC1wdXNoU21Ub3AgaC1mbHVzaEJvdHRvbSI+RW1wb3dlcmluZyB0aGUgRnV0dXJlIG9mIE5ldHdvcmtpbmc8L3NwYW4+PC9oMz4KPHAgY2xhc3M9InBueS1jb3B5Ij5TZWFtbGVzc2x5IGludGVncmF0ZSBoaWdoLXBlcmZvcm1hbmNlIG5ldHdvcmtpbmcgZm9yIEFJL01MIGFuZCBtaXNzaW9uLWNyaXRpY2FsIG9wZXJhdGlvbnMuPC9wPgo8YSBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IEFyaXN0YSBOZXR3b3JrcyIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9wcm9mZXNzaW9uYWwvaGFyZHdhcmUvYXJpc3RhLW5ldHdvcmtzIiBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL0ltYWdlJTIwTGlicmFyeS9Qcm9mZXNzaW9uYWwvaGFyZHdhcmUvYXJpc3RhLW5ldHdvcmtzL2FyaXN0YS1nbG9iZS1uZXR3b3JrLmpwZycpOyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7Ij48L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InByby1ibG9jayBoLWZpbGxDb2xvcldoaXRlIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI2MDAiIGRhdGEtYW9zLWRlbGF5PSIyMDAiPgo8ZGl2IGNsYXNzPSJoLWZpbGxDb2xvcldoaXRlIj4KPGgzIGNsYXNzPSJoLWgxIGgtcHVzaFNtQm90dG9tIj5OVklESUEgRW1iZWRkZWQgPHNwYW4gY2xhc3M9ImgtZm9udEJhc2UgaC1oNiBwbnktc3VidGl0bGUgaC1jYXBzIGgtcHVzaFNtVG9wIGgtZmx1c2hCb3R0b20iPkdQVSBTb2x1dGlvbnM8L3NwYW4+PC9oMz4KPHAgY2xhc3M9InBueS1jb3B5Ij5EZXNpZ25lZCBmb3IgaW5jcmVkaWJsZSBwZXJmb3JtYW5jZSBhbmQgcG93ZXIgZWZmaWNpZW5jeSB3aGlsZSBtZWV0aW5nIHRoZSBoaWdoZXN0IHF1YWxpdHkgYW5kIHJlbGlhYmlsaXR5IHN0YW5kYXJkcy48L3A+CjxhIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgTlZJRElBIEVtYmVkZGVkIEdQVSBzb2x1dGlvbnMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vcHJvZmVzc2lvbmFsL2hhcmR3YXJlL252aWRpYS1lbWJlZGRlZC1ncHVzIiBjbGFzcz0iYnRuIGJ0bi0tdGVydGlhcnkgbW9iaWxlLWNlbnRlciBoLWJ0bkhvbWUiIGlkPSJQcm9fRW1iZWRkZWRfR1BVcyI+TGVhcm4gTW9yZTwvYT48L2Rpdj4KPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2UlMjBMaWJyYXJ5L0NvbXBhbnkvSG9tZSUyMFBhZ2UvbnZpZGlhLWVtYmVkZGVkLWdwdS1zb2x1dGlvbnMuanBnJyk7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icHJvLWJsb2NrIGgtZmlsbENvbG9yV2hpdGUgaC1wdXNoQm90dG9tIGFvcy1pbml0IGFvcy1hbmltYXRlIiBkYXRhLWFvcz0iZmFkZS11cCIgZGF0YS1hb3MtZHVyYXRpb249IjYwMCIgZGF0YS1hb3MtZGVsYXk9IjIwMCI+CjxkaXYgY2xhc3M9ImgtZmlsbENvbG9yV2hpdGUiPgo8aDMgY2xhc3M9ImgtaDEgaC1wdXNoU21Cb3R0b20iPk5WSURJQSB2R1BVPC9oMz4KPGg0IGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+VmlydHVhbGl6YXRpb24gRm9yIEV2ZXJ5IFdvcmtsb2FkIC0gRnJvbSBWREkgdG8gQUk8L2g0Pgo8cCBjbGFzcz0icG55LWNvcHkiPk5WSURJQTxzdXA+JnJlZzs8L3N1cD4gVmlydHVhbCBHUFVzICh2R1BVcykgZW5hYmxlIGVudGVycHJpc2VzIHRvIGFjY2VzcyBwb3dlcmZ1bCBHUFUgcGVyZm9ybWFuY2UgZnJvbSB0aGUgZW50ZXJwcmlzZSBkYXRhIGNlbnRlciB0byBzdXBwb3J0IGV2ZXJ5IHdvcmtsb2FkLCBmcm9tIHZpcnR1YWwgY2xpZW50IGNvbXB1dGluZyB0byB0aGUgbW9zdCBjb21wdXRlLWludGVuc2l2ZSB3b3JrbG9hZHMuPC9wPgo8YSBhcmlhLWxhYmVsPSJMZWFybiBtb3JlIGFib3V0IE5WSURJQSB2aXJ0dWFsICh2R1BVKSBzb2x1dGlvbnMiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9tYXJrZXQtc29sdXRpb25zL252aWRpYS12aXJ0dWFsLWdwdSIgY2xhc3M9ImJ0biBidG4tLXRlcnRpYXJ5IG1vYmlsZS1jZW50ZXIgaC1idG5Ib21lIiBpZD0iUHJvX3ZHUFUiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlLzNkLW1vZGVsLW9mLXN1c3BlbmRlZC1iYWxscy5qcGcnKTsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyI+PC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwcm8tYmxvY2sgaC1maWxsQ29sb3JXaGl0ZSBoLXB1c2hCb3R0b20gYW9zLWluaXQgYW9zLWFuaW1hdGUiIGRhdGEtYW9zPSJmYWRlLXVwIiBkYXRhLWFvcy1kdXJhdGlvbj0iNjAwIiBkYXRhLWFvcy1kZWxheT0iNDAwIj4KPGRpdiBjbGFzcz0iaC1maWxsQ29sb3JXaGl0ZSI+CjxoMyBjbGFzcz0iaC1oMSBoLXB1c2hTbUJvdHRvbSI+VkFTVCBEYXRhPC9oMz4KPGg0IGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+RW50ZXJwcmlzZSBEQVRBIFBMQVRGT1JNIFNPTFVUSU9OUzwvaDQ+CjxwIGNsYXNzPSJwbnktY29weSI+VGhlIFZBU1QgRGF0YSBQbGF0Zm9ybSB1bmlmaWVzIHN0b3JhZ2UsIGRhdGFiYXNlLCBhbmQgY29udGFpbmVyaXplZCBjb21wdXRlIGludG8gYSBzaW5nbGUsIHNjYWxhYmxlIHNvZnR3YXJlIHBsYXRmb3JtIHRvIHBvd2VyIEFJICYgZGVlcCBsZWFybmluZyBpbiBtb2Rlcm4gZGF0YSBjZW50ZXJzICYgY2xvdWRzLjwvcD4KPGEgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCBWQVNUIERhdGEiIGhyZWY9Imh0dHBzOi8vd3d3LnBueS5jb20vcHJvZmVzc2lvbmFsL3NvZnR3YXJlLXNvbHV0aW9ucy9uZXR3b3JraW5nLXNvbHV0aW9ucy9lbnRlcnByaXNlLXN0b3JhZ2UiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9IlByb19WYXN0X0RhdGEiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL0ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlL3Zhc3Qtd2ViLWJhbm5lci1ob21lLmpwZycpOyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0NSU7Ij48L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InByby1ibG9jayBoLWZpbGxDb2xvcldoaXRlIGgtcHVzaEJvdHRvbSBhb3MtaW5pdCBhb3MtYW5pbWF0ZSIgZGF0YS1hb3M9ImZhZGUtdXAiIGRhdGEtYW9zLWR1cmF0aW9uPSI2MDAiIGRhdGEtYW9zLWRlbGF5PSI0MDAiPgo8ZGl2IGNsYXNzPSJoLWZpbGxDb2xvcldoaXRlIj4KPGgzIGNsYXNzPSJoLWgxIGgtcHVzaFNtQm90dG9tIj5MZWFybiBNb3JlIEFib3V0PC9oMz4KPGg0IGNsYXNzPSJoLWZvbnRCYXNlIGgtaDYgcG55LXN1YnRpdGxlIGgtY2FwcyBoLXB1c2hTbUJvdHRvbSI+UHJvZmVzc2lvbmFsIFNvbHV0aW9uczwvaDQ+CjxwIGNsYXNzPSJwbnktY29weSI+UE5ZJ3MgcHJvZHVjdCBwb3J0Zm9saW8gZGVsaXZlcnMgc3VwZXJpb3IgcGVyZm9ybWFuY2UgYW5kIHF1YWxpdHksIGJhY2tlZCBieSBvdXRzdGFuZGluZyBzdXBwb3J0IGFuZCBzZXJ2aWNlLjwvcD4KPGEgYXJpYS1sYWJlbD0iTGVhcm4gbW9yZSBhYm91dCBQTlkgUHJvZmVzc2lvbmFsIFNvbHV0aW9ucyIgaHJlZj0iaHR0cHM6Ly93d3cucG55LmNvbS9wcm9mZXNzaW9uYWwiIGNsYXNzPSJidG4gYnRuLS10ZXJ0aWFyeSBtb2JpbGUtY2VudGVyIGgtYnRuSG9tZSIgaWQ9InBpY29fdnIiPkxlYXJuIE1vcmU8L2E+PC9kaXY+CjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlJTIwTGlicmFyeS9Db21wYW55L0hvbWUlMjBQYWdlL3Byby1ncmFwaGljcy1wcm9jZXNzaW5nLXVuaXQuanBnJyk7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L3NlY3Rpb24+ZGQCAg9kFgZmD2QWAmYPFgIfCQWyETxkaXYgY2xhc3M9ImNvbHVtbiBtZWQtNiI+PHNwYW4gY2xhc3M9ImZvb3Rlck1haW4taGVhZGluZyI+U3VwcG9ydDwvc3Bhbj48bmF2IGNsYXNzPSJmb290ZXJNYWluLXRvcE5hdiI+PHVsPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9zdXBwb3J0LWZvb3Rlci9wcm9kdWN0LXN1cHBvcnQiPlByb2R1Y3QgU3VwcG9ydDwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9zdXBwb3J0LWZvb3Rlci9wcm9kdWN0LXJlZ2lzdHJhdGlvbiI+UHJvZHVjdCBSZWdpc3RyYXRpb248L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvc3VwcG9ydC1mb290ZXIvdGVjaG5vbG9neS1nbG9zc2FyeSI+VGVjaG5vbG9neSBHbG9zc2FyeTwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9zdXBwb3J0LWZvb3Rlci9jb250YWN0LXVzLXN1cHBvcnQiPkNvbnRhY3QgVXM8L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvc3VwcG9ydC1mb290ZXIvcHJvZHVjdC1yZWNhbGwiPlByb2R1Y3QgUmVjYWxsczwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9zdXBwb3J0LWZvb3Rlci9jb21tZXJjaWFsLXJtYSI+Q29tbWVyY2lhbCBSTUE8L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvc3VwcG9ydC1mb290ZXIvcmV0YWlsLXJtYSI+UmV0YWlsIFJNQTwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vcG55cGFydG5lcnMuY29tL2xvZ2luLyI+UHJvIFBhcnRuZXIgUG9ydGFsPC9hPjwvbGk+DQogICAgPC91bD48L25hdj48L2Rpdj4NCjxkaXYgY2xhc3M9ImNvbHVtbiBtZWQtNiI+PHNwYW4gY2xhc3M9ImZvb3Rlck1haW4taGVhZGluZyI+Q29tcGFueTwvc3Bhbj48bmF2IGNsYXNzPSJmb290ZXJNYWluLXRvcE5hdiI+PHVsPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9jb21wYW55LWZvb3Rlci93aHktcG55Ij5XaHkgUE5ZPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2NvbXBhbnktZm9vdGVyL2Fib3V0LXBueSI+QWJvdXQgUE5ZPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2NvbXBhbnktZm9vdGVyL3ByZXNzLWNlbnRlciI+UHJlc3MgQ2VudGVyPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2NvbXBhbnktZm9vdGVyL3Byby1pbi10aGUtbmV3cyI+UHJvIGluIHRoZSBOZXdzPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2NvbXBhbnktZm9vdGVyL3ZpcnR1YWwtZXZlbnRzIj5WaXJ0dWFsIEV2ZW50czwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9jb21wYW55LWZvb3Rlci9yZXNvdXJjZS1jZW50ZXIiPlJlc291cmNlIENlbnRlcjwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9jb21wYW55LWZvb3Rlci9jYXJlZXJzIj5DYXJlZXJzPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2NvbXBhbnkvd2hlcmUtdG8tYnV5P2NvdW50cnk9VVMiPldoZXJlIHRvIEJ1eTwvYT48L2xpPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9jb21wYW55LWZvb3Rlci9jb250YWN0LXVzLWNvbXBhbnkiPkNvbnRhY3QgVXM8L2E+PC9saT4NCiAgICA8L3VsPjwvbmF2PjwvZGl2Pg0KPGRpdiBjbGFzcz0iY29sdW1uIG1lZC02Ij48c3BhbiBjbGFzcz0iZm9vdGVyTWFpbi1oZWFkaW5nIj5MZWdhbDwvc3Bhbj48bmF2IGNsYXNzPSJmb290ZXJNYWluLXRvcE5hdiI+PHVsPg0KICAgICAgPGxpPjxhIGhyZWY9Ii9sZWdhbC1mb290ZXIvbGVnYWwtb3ZlcnZpZXciPkxlZ2FsIE92ZXJ2aWV3PC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2xlZ2FsLWZvb3Rlci9wcml2YWN5LXBvbGljeSI+UHJpdmFjeSBQb2xpY3k8L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvbGVnYWwtZm9vdGVyL2Nvb2tpZS1wb2xpY3kiPkNvb2tpZSBQb2xpY3k8L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvbGVnYWwtZm9vdGVyL3Rlcm1zLW9mLXVzZSI+VGVybXMgb2YgVXNlPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2xlZ2FsLWZvb3Rlci90ZXJtcy1vZi1zYWxlIj5UZXJtcyBvZiBTYWxlPC9hPjwvbGk+DQogICAgICA8bGk+PGEgaHJlZj0iL2xlZ2FsLWZvb3Rlci9kaXNjbGFpbWVyLTNyZC1wYXJ0eS1saW5rcyI+RGlzY2xhaW1lciAmYW1wOyAzcmQgUGFydHkgTGlua3M8L2E+PC9saT4NCiAgICAgIDxsaT48YSBocmVmPSIvbGVnYWwtZm9vdGVyL2FjY2Vzc2liaWxpdHkiPk91ciBDb21taXRtZW50IHRvIEFjY2Vzc2liaWxpdHk8L2E+PC9saT4NCiAgICA8L3VsPjwvbmF2PjwvZGl2PmQCAQ9kFgJmDxYCHwkFxAY8bmF2IGNsYXNzPSJmb290ZXJNYWluLXRvcE5hdiBmb290ZXJNYWluLXRvcE5hdi0tc29jaWFsTmF2Ij48dWw+DQogICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9QTllUZWNobm9sb2dpZXMiIGNsYXNzPSJmb290ZXJNYWluU29jaWFsTGluayBmb290ZXJNYWluU29jaWFsTGluay0tZmFjZWJvb2siIGFyaWEtbGFiZWw9ImZhY2Vib29rIj48L2E+PC9saT4NCiAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9QTllUZWNobm9sb2dpZXMiIGNsYXNzPSJmb290ZXJNYWluU29jaWFsTGluayBmb290ZXJNYWluU29jaWFsTGluay0tdHdpdHRlciIgYXJpYS1sYWJlbD0idHdpdHRlciI+PC9hPjwvbGk+DQogICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BueXR2dGVjaCIgY2xhc3M9ImZvb3Rlck1haW5Tb2NpYWxMaW5rIGZvb3Rlck1haW5Tb2NpYWxMaW5rLS15b3VUdWJlIiBhcmlhLWxhYmVsPSJ5b3VUdWJlIj48L2E+PC9saT4NCiAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvcG55LXRlY2hub2xvZ2llcy8iIGNsYXNzPSJmb290ZXJNYWluU29jaWFsTGluayBmb290ZXJNYWluU29jaWFsTGluay0tbGlua2VkaW4iIGFyaWEtbGFiZWw9ImxpbmtlZGluIj48L2E+PC9saT4NCiAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9wbnl0ZWNobm9sb2dpZXMiIGNsYXNzPSJmb290ZXJNYWluU29jaWFsTGluayBmb290ZXJNYWluU29jaWFsTGluay0taW5zdGFncmFtIiBhcmlhLWxhYmVsPSJpbnN0YWdyYW0iPjwvYT48L2xpPg0KICA8L3VsPjwvbmF2PmQCAw8PFgQfCgURQ0xIaWVyYXJjaGljYWxOYXYfCwICZBYCBQVjdGwwMA9kFgJmDxYCHwkFpAE8dWwgY2xhc3M9IkNMSGllcmFyY2hpY2FsTmF2Ij48bGkgY2xhc3M9ImZpcnN0Ij48YSBocmVmPSIvdGVybXMtb2YtdXNlIj5UZXJtcyBvZiBVc2U8L2E+PC9saT48bGkgY2xhc3M9Imxhc3QiPjxhIGhyZWY9Ii9wcml2YWN5LXBvbGljeSI+UHJpdmFjeSBQb2xpY3k8L2E+PC9saT48L3VsPmQCBQ8WAh8IaGQCBw9kFgICAQ8UKwACZGRkAgcPZBYIZg8WBh8FBQ90ZXh0L2phdmFzY3JpcHQfBwVIL1NjcmlwdCUyMExpYnJhcnkvZnJvbnQtZW5kL2NoYXJ0LWRhdGEtcmVuZGVyaW5nLmpzP3Y9NjM3MjAwNTIwNTczOTgzMDgxHgVkZWZlcgUFZGVmZXJkAgEPFgYfBQUPdGV4dC9qYXZhc2NyaXB0HwcFPC9TY3JpcHQlMjBMaWJyYXJ5L2Zyb250LWVuZC91bnNsaWRlci5qcz92PTYzNzM1MzQ5NDUzOTY4MzkyNR8NBQVkZWZlcmQCAg8WBh8FBQ90ZXh0L2phdmFzY3JpcHQfBwU8L1NjcmlwdCUyMExpYnJhcnkvZnJvbnQtZW5kL3BueS1tYWluLmpzP3Y9NjM4MzY3NTc4NDk4Njk3MjI4Hw0FBWRlZmVyZAIDDxYGHwUFD3RleHQvamF2YXNjcmlwdB8HBUMvU2NyaXB0JTIwTGlicmFyeS9mcm9udC1lbmQvcHJlLWNoYXRmb3JtLXYyLmpzP3Y9NjM4NDI5MTg3MTYyNTg0NjU2Hw0FBWRlZmVyZBgHBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WEAUdY3RsMDEkRm9vdGVyJG5hdkZvb3RlclV0aWxpdHkFK2N0bDAxJEhlYWRlciRjdGwwMCRjdGxVdGlsaXR5TmF2JG5hdlV0aWxpdHkFMmN0bDAxJGZ3cHpjTWFpbkNvbnRlbnQkZndwemNNYWluQ29udGVudF9DNzNZRjk3Q0xaBTJjdGwwMSRmd3B6Y01haW5Db250ZW50JGZ3cHpjTWFpbkNvbnRlbnRfQzczWUY5N0NMWgUzY3RsMDEkZndwemNNYWluQ29udGVudCRmd3B6Y01haW5Db250ZW50XzZDZUwxellYNTNJBTNjdGwwMSRmd3B6Y01haW5Db250ZW50JGZ3cHpjTWFpbkNvbnRlbnRfNkNlTDF6WVg1M0kFM2N0bDAxJGZ3cHpjTWFpbkNvbnRlbnQkZndwemNNYWluQ29udGVudF82Yk44TWdWWnpnWgUzY3RsMDEkZndwemNNYWluQ29udGVudCRmd3B6Y01haW5Db250ZW50XzZiTjhNZ1ZaemdaBTNjdGwwMSRmd3B6Y01haW5Db250ZW50JGZ3cHpjTWFpbkNvbnRlbnRfNEJjck04cHBhMmsFM2N0bDAxJGZ3cHpjTWFpbkNvbnRlbnQkZndwemNNYWluQ29udGVudF80QmNyTThwcGEyawUzY3RsMDEkZndwemNNYWluQ29udGVudCRmd3B6Y01haW5Db250ZW50XzNhSTJKb3kwbjFxBTNjdGwwMSRmd3B6Y01haW5Db250ZW50JGZ3cHpjTWFpbkNvbnRlbnRfM2FJMkpveTBuMXEFM2N0bDAxJGZ3cHpjTWFpbkNvbnRlbnQkZndwemNNYWluQ29udGVudF8yN2I1QUVseUVibwUzY3RsMDEkZndwemNNYWluQ29udGVudCRmd3B6Y01haW5Db250ZW50XzI3YjVBRWx5RWJvBTNjdGwwMSRmd3B6Y01haW5Db250ZW50JGZ3cHpjTWFpbkNvbnRlbnRfM05sSnhIODZNOGQFM2N0bDAxJGZ3cHpjTWFpbkNvbnRlbnQkZndwemNNYWluQ29udGVudF8zTmxKeEg4Nk04ZAUfc2l0ZUVkaXRvclRvb2xiYXIkbHZVc2VyT3B0aW9ucw9nZAUfc2l0ZUVkaXRvclRvb2xiYXIkbHZQYWdlQnVpbGRlcg9nZAUec2l0ZUVkaXRvclRvb2xiYXIkbHZTaGFyZWRQYWdlD2dkBSVzaXRlRWRpdG9yVG9vbGJhciRsdlByb2R1Y3ROYXZpZ2F0aW9uD2dkBR1zaXRlRWRpdG9yVG9vbGJhciRsdlBhZ2VNb2Rlcw9nZAULbHZEZWJ1Z0luZm8PZ2TKGmHF9HzsVyXWa3+Lz+YG3Wl5wA==" /></form> <script type="text/javascript" src="/Script%20Library/front-end/chart-data-rendering.js?v=637200520573983081" defer="defer"></script> <script type="text/javascript" src="/Script%20Library/front-end/unslider.js?v=637353494539683925" defer="defer"></script> <script type="text/javascript" src="/Script%20Library/front-end/pny-main.js?v=638367578498697228" defer="defer"></script> <script type="text/javascript" src="/Script%20Library/front-end/pre-chatform-v2.js?v=638429187162584656" defer="defer"></script> <script type="text/javascript"> //<![CDATA[ (function () { var iat = document.createElement('script'); iat.type = 'text/javascript'; iat.async = true; iat.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'www.pny.com/jsfile/Tracking.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(iat, s);})(); window.postURL=('https:' == document.location.protocol ? 'https://' : 'http://') +'www.pny.com/api/tracking/'; setTimeout(setImagesDimensions, 1000); //]]> </script> <script> AOS.init(); </script> </body> </html>