- 제출된 URL:
- https://nounng.com/
- 보고서 완료:
링크 · 9개 결과
페이지에서 식별된 외부 링크
링크 | 텍스트 |
---|---|
https://facebook.com/nounngr | |
https://twitter.com/mediangr | X (Twitter) |
https://instagram.com/mediangr | |
https://pinterest.com/mediangr | |
https://linkedin.com/company/mediangr | |
https://t.me/nountelegram | telegram |
https://hereignscomputers.com | HE-Reigns Computers |
https://whatsapp.com/channel/0029VaGdpzaGehEJiWvPOZ1z | |
https://bilgicraft.com/razer-kraken-x/ |
JavaScript 변수 · 133개 결과
페이지의 창 개체에 로드된 전역 JavaScript 변수는 함수 외부에서 선언된 변수로, 현재 범위 내에서 코드의 어느 부분에서나 액세스할 수 있습니다
이름 | 유형 |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
$ | undefined |
jQuery | function |
LazyLoad | function |
google_tag_manager | object |
google_tag_data | object |
dataLayer | object |
gtag | function |
콘솔 로그 메시지 · 4개 결과
웹 콘솔에 기록된 메시지
유형 | 카테고리 | 로그 |
---|---|---|
verbose | dom |
|
log | other |
|
warning | other |
|
log | other |
|
HTML
페이지의 원시 HTML 본문
<!DOCTYPE html><html lang="en-US" prefix="og: http://ogp.me/ns#" class="s-light site-s-light"><head><meta charset="UTF-8"><link data-optimized="2" rel="stylesheet" href="https://nounng.com/wp-content/litespeed/css/1a7a8b0f749df8086be6cdb077955e4b.css?ver=e12c3"><meta name="viewport" content="width=device-width, initial-scale=1"><meta property="og:locale" content="en_US"><meta property="og:type" content="website"><meta property="og:title" content="NOUN Portal"><meta property="og:description" content="This portal is created for staffs, fresh and returning students of the National Open University of Nigeria with the sole aim of disseminating latest updates and important News."><meta property="og:url" content="https://nounng.com"><meta property="og:site_name" content="NOUN Portal"><meta property="og:image" content="https://nounng.com/wp-content/uploads/2022/12/NOUNNG-Default-Photo.png"><meta property="og:image:secure_url" content="https://nounng.com/wp-content/uploads/2022/12/NOUNNG-Default-Photo.png"><meta property="og:image:width" content="1200"><meta property="og:image:height" content="582"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:site" content="@nounngr"><meta name="twitter:domain" content="NOUN Portal"><title>NOUN Portal | Student Guides, Admission Registration & Fees</title><link rel="preload" href="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" as="image" fetchpriority="high"><link rel="preload" href="https://nounng.com/wp-content/uploads/2023/04/noun-e-exam-timetable-featured-image.jpg" as="image" imagesizes="(max-width: 278px) 100vw, 278px" fetchpriority="high"><link rel="stylesheet" href="https://nounng.com/wp-content/cache/perfmatters/nounng.com/css/home.used.css?ver=1729295294" as="style"><meta name="description" content="This portal is created for staffs, fresh and returning students of the National Open University of Nigeria with the sole aim of disseminating latest updates and important News."><meta name="robots" content="follow, index"><link rel="canonical" href="https://nounng.com/"><link rel="next" href="https://nounng.com/page/2/"><meta property="og:locale" content="en_US"><meta property="og:type" content="website"><meta property="og:title" content="NOUN Portal | Student Guides, Admission Registration & Fees"><meta property="og:description" content="This portal is created for staffs, fresh and returning students of the National Open University of Nigeria with the sole aim of disseminating latest updates and important News."><meta property="og:url" content="https://nounng.com/"><meta property="og:site_name" content="NOUN Portal"><meta property="og:image" content="https://nounng.com/wp-content/uploads/2022/12/NOUNNG-Default-Photo.png"><meta property="og:image:secure_url" content="https://nounng.com/wp-content/uploads/2022/12/NOUNNG-Default-Photo.png"><meta property="og:image:width" content="1205"><meta property="og:image:height" content="651"><meta property="og:image:alt" content="NOUNNG Default Photo"><meta property="og:image:type" content="image/png"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="NOUN Portal | Student Guides, Admission Registration & Fees"><meta name="twitter:description" content="This portal is created for staffs, fresh and returning students of the National Open University of Nigeria with the sole aim of disseminating latest updates and important News."><meta name="twitter:site" content="@nounofficial_"><meta name="twitter:image" content="https://nounng.com/wp-content/uploads/2022/12/NOUNNG-Default-Photo.png"> <script type="text/javascript" src="https://faves.grow.me/main.js" defer="" data-grow-faves-site-id="U2l0ZTpjMDdjODE3ZS1kZjBhLTQ3N2QtYjYzMi1lODkxODRkMmIwYzY="></script><script type="text/javascript" src="https://faves.grow.me/main.js" defer="" data-grow-faves-site-id="U2l0ZTpjMDdjODE3ZS1kZjBhLTQ3N2QtYjYzMi1lODkxODRkMmIwYzY="></script><script type="text/javascript" src="https://faves.grow.me/main.js" defer="" data-grow-faves-site-id="U2l0ZTpjMDdjODE3ZS1kZjBhLTQ3N2QtYjYzMi1lODkxODRkMmIwYzY="></script><script type="text/javascript" async="" src="https://www.googletagmanager.com/gtag/js?id=G-4BWPL63V9D&l=dataLayer&cx=c&gtm=45Pe4cc1v894194101za200"></script><script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":"Person","@id":"https://nounng.com/#person","name":"nounng","sameAs":["https://www.facebook.com/nounngr/","https://twitter.com/nounofficial_"],"image":{"@type":"ImageObject","@id":"https://nounng.com/#logo","url":"https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg","contentUrl":"https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg","caption":"NOUN Portal","inLanguage":"en-US","width":"512","height":"512"}},{"@type":"WebSite","@id":"https://nounng.com/#website","url":"https://nounng.com","name":"NOUN Portal","publisher":{"@id":"https://nounng.com/#person"},"inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":"https://nounng.com/?s={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"CollectionPage","@id":"https://nounng.com/#webpage","url":"https://nounng.com/","name":"NOUN Portal | Student Guides, Admission Registration & Fees","about":{"@id":"https://nounng.com/#person"},"isPartOf":{"@id":"https://nounng.com/#website"},"inLanguage":"en-US"}]}</script> <link rel="dns-prefetch" href="//www.googletagmanager.com"><link rel="dns-prefetch" href="//stats.wp.com"><link rel="stylesheet" id="spbsm-stylesheet-css" type="text/css" media="all" data-pmdelayedstyle="https://nounng.com/wp-content/cache/perfmatters/nounng.com/minify/1991635ce34d.frontend.min.css?ver=1.1.9"><link rel="stylesheet" id="spbsm-lato-font-css" type="text/css" media="all" data-pmdelayedstyle="https://nounng.com/wp-content/plugins/superb-social-share-and-follow-buttons//assets/lato/styles.css?ver=1.1.9"><link rel="stylesheet" id="smartmag-core-css" type="text/css" media="all" data-pmdelayedstyle="https://nounng.com/wp-content/cache/perfmatters/nounng.com/minify/8c5d07b76190.style.min.css?ver=10.0.0"><link rel="stylesheet" id="smartmag-magnific-popup-css" type="text/css" media="all" data-pmdelayedstyle="https://nounng.com/wp-content/cache/perfmatters/nounng.com/minify/1c440c7e2aa4.lightbox.min.css?ver=10.0.0"><link rel="stylesheet" id="smartmag-icons-css" type="text/css" media="all" data-pmdelayedstyle="https://nounng.com/wp-content/cache/perfmatters/nounng.com/minify/bc940f1d0dad.icons.min.css?ver=10.0.0"> <script type="text/javascript" src="https://nounng.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://www.googletagmanager.com/gtag/js?id=GT-K48CDGR" id="google_gtagjs-js" defer="" data-deferred="1"></script> <script type="text/javascript" id="google_gtagjs-js-after" defer="" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp3aW5kb3cuZGF0YUxheWVyID0gd2luZG93LmRhdGFMYXllciB8fCBbXTtmdW5jdGlvbiBndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9Cmd0YWcoInNldCIsImxpbmtlciIseyJkb21haW5zIjpbIm5vdW5uZy5jb20iXX0pOwpndGFnKCJqcyIsIG5ldyBEYXRlKCkpOwpndGFnKCJzZXQiLCAiZGV2ZWxvcGVyX2lkLmRaVE5pTVQiLCB0cnVlKTsKZ3RhZygiY29uZmlnIiwgIkdULUs0OENER1IiKTsKLyogXV0+ICovCg=="></script> <link rel="https://api.w.org/" href="https://nounng.com/wp-json/"><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://nounng.com/xmlrpc.php?rsd"><meta name="generator" content="Site Kit by Google 1.142.0"> <script defer="" src="data:text/javascript;base64,CgkJdmFyIEJ1bnlhZFNjaGVtZUtleSA9ICdidW55YWQtc2NoZW1lJzsKCQkoKCkgPT4gewoJCQljb25zdCBkID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwoJCQljb25zdCBjID0gZC5jbGFzc0xpc3Q7CgkJCXZhciBzY2hlbWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShCdW55YWRTY2hlbWVLZXkpOwoJCQkKCQkJaWYgKHNjaGVtZSkgewoJCQkJZC5kYXRhc2V0Lm9yaWdDbGFzcyA9IGM7CgkJCQlzY2hlbWUgPT09ICdkYXJrJyA/IGMucmVtb3ZlKCdzLWxpZ2h0JywgJ3NpdGUtcy1saWdodCcpIDogYy5yZW1vdmUoJ3MtZGFyaycsICdzaXRlLXMtZGFyaycpOwoJCQkJYy5hZGQoJ3NpdGUtcy0nICsgc2NoZW1lLCAncy0nICsgc2NoZW1lKTsKCQkJfQoJCX0pKCk7CgkJ"></script> <meta name="theme-color" content="#32724c"> <script data-grow-initializer="" defer="" src="data:text/javascript;base64,IShmdW5jdGlvbigpe3dpbmRvdy5ncm93TWV8fCgod2luZG93Lmdyb3dNZT1mdW5jdGlvbihlKXt3aW5kb3cuZ3Jvd01lLl8ucHVzaChlKTt9KSwod2luZG93Lmdyb3dNZS5fPVtdKSk7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7KGUudHlwZT0idGV4dC9qYXZhc2NyaXB0IiksKGUuc3JjPSJodHRwczovL2ZhdmVzLmdyb3cubWUvbWFpbi5qcyIpLChlLmRlZmVyPSEwKSxlLnNldEF0dHJpYnV0ZSgiZGF0YS1ncm93LWZhdmVzLXNpdGUtaWQiLCJVMmwwWlRwak1EZGpPREUzWlMxa1pqQmhMVFEzTjJRdFlqWXpNaTFsT0RreE9EUmtNbUl3WXpZPSIpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTt0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdCk7fSkoKTs="></script><script type="text/javascript" id="google_gtagjs" src="https://www.googletagmanager.com/gtag/js?id=G-17Y8G6L6VJ" ="async"="" defer="" data-deferred="1"></script> <script type="text/javascript" id="google_gtagjs-inline" defer="" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp3aW5kb3cuZGF0YUxheWVyID0gd2luZG93LmRhdGFMYXllciB8fCBbXTtmdW5jdGlvbiBndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9Z3RhZygnanMnLCBuZXcgRGF0ZSgpKTtndGFnKCdjb25maWcnLCAnRy0xN1k4RzZMNlZKJywge30gKTsKLyogXV0+ICovCg=="></script> <link rel="icon" href="https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg" sizes="32x32"><link rel="icon" href="https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg" sizes="192x192"><link rel="apple-touch-icon" href="https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg"><meta name="msapplication-TileImage" content="https://nounng.com/wp-content/uploads/2022/09/cropped-NOUNNG-Favicon.jpg"> <script data-grow-initializer="" defer="" src="data:text/javascript;base64,IShmdW5jdGlvbigpe3dpbmRvdy5ncm93TWV8fCgod2luZG93Lmdyb3dNZT1mdW5jdGlvbihlKXt3aW5kb3cuZ3Jvd01lLl8ucHVzaChlKTt9KSwod2luZG93Lmdyb3dNZS5fPVtdKSk7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7KGUudHlwZT0idGV4dC9qYXZhc2NyaXB0IiksKGUuc3JjPSJodHRwczovL2ZhdmVzLmdyb3cubWUvbWFpbi5qcyIpLChlLmRlZmVyPSEwKSxlLnNldEF0dHJpYnV0ZSgiZGF0YS1ncm93LWZhdmVzLXNpdGUtaWQiLCJVMmwwWlRwak1EZGpPREUzWlMxa1pqQmhMVFEzTjJRdFlqWXpNaTFsT0RreE9EUmtNbUl3WXpZPSIpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTt0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdCk7fSkoKTs="></script> <noscript><style>.perfmatters-lazy[data-src]{display:none !important;}</style></noscript><script type="module" src="https://faves.grow.me/app.9.5.0.js" defer="" data-grow-script="widget" data-grow-me-beta-name="9.5.0" data-grow-me-beta-version="9.5.0" data-grow-faves-site-id="U2l0ZTpjMDdjODE3ZS1kZjBhLTQ3N2QtYjYzMi1lODkxODRkMmIwYzY="></script></head><body class="home blog right-sidebar has-sb-sep layout-boxed essb-9.6"><div class="ts-bg-cover"></div><div class="main-wrap"><div class="off-canvas-backdrop"></div><div class="mobile-menu-container off-canvas s-dark" id="off-canvas"><div class="off-canvas-head">
<a href="#" class="close">
<span class="visuallyhidden">Close Menu</span>
<i class="tsi tsi-times"></i>
</a><div class="ts-logo">
<img data-lazyloaded="1" src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" data-perfmatters-preload="" class="logo-mobile logo-image entered litespeed-loaded" data-src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" width="169" height="29" alt="NOUN Portal" data-ll-status="loaded"></div></div><div class="off-canvas-content"><ul id="menu-mobile-menu" class="mobile-menu"><li id="menu-item-85" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-85"><a href="https://nounng.com/news/noun-admission-form/">NOUN Admission Form</a></li><li id="menu-item-86" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-86"><a href="https://nounng.com/news/noun-courses/">NOUN Courses</a></li><li id="menu-item-87" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-87"><a href="https://nounng.com/news/noun-guides/">NOUN Guides</a></li><li id="menu-item-88" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-88"><a href="https://nounng.com/news/noun-news/">NOUN News</a></li><li id="menu-item-89" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-89"><a href="https://nounng.com/news/noun-school-fees/">NOUN School Fees</a></li><li id="menu-item-90" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-90"><a href="https://nounng.com/news/noun-updates/">NOUN Updates</a></li><li id="menu-item-91" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-91"><a href="https://nounng.com/about-us/">About us</a></li><li id="menu-item-92" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-92"><a href="https://nounng.com/contact-us/">Contact us</a></li><li id="menu-item-93" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-93"><a href="https://nounng.com/cookies-policy/">Cookies Policy</a></li><li id="menu-item-94" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-94"><a href="https://nounng.com/disclaimer/">Disclaimer</a></li><li id="menu-item-95" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-95"><a rel="privacy-policy" href="https://nounng.com/privacy-policy/">Privacy Policy</a></li><li id="menu-item-96" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-96"><a href="https://nounng.com/terms-of-use/">Terms of Use</a></li></ul><div class="spc-social-block spc-social spc-social-b smart-head-social">
<a href="https://facebook.com/nounngr" class="link service s-facebook" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-facebook"></i> <span class="visuallyhidden">Facebook</span>
</a>
<a href="https://twitter.com/mediangr" class="link service s-twitter" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-twitter"></i> <span class="visuallyhidden">X (Twitter)</span>
</a>
<a href="https://instagram.com/mediangr" class="link service s-instagram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-instagram"></i> <span class="visuallyhidden">Instagram</span>
</a>
<a href="https://pinterest.com/mediangr" class="link service s-pinterest" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-pinterest-p"></i> <span class="visuallyhidden">Pinterest</span>
</a>
<a href="https://linkedin.com/company/mediangr" class="link service s-linkedin" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-linkedin"></i> <span class="visuallyhidden">LinkedIn</span>
</a>
<a href="https://t.me/nountelegram" class="link service s-telegram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-telegram"></i> <span class="visuallyhidden">Telegram</span>
</a></div></div></div><div class="smart-head smart-head-a smart-head-main" id="smart-head" data-sticky="auto" data-sticky-type="fixed" data-sticky-full=""><div class="smart-head-row smart-head-top s-dark smart-head-row-full"><div class="inner full"><div class="items items-left "><div class="nav-wrap"><nav class="navigation navigation-small nav-hov-a"><ul id="menu-footer-links" class="menu"><li id="menu-item-65" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-65"><a href="https://nounng.com/about-us/">About us</a></li><li id="menu-item-66" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-66"><a href="https://nounng.com/contact-us/">Contact us</a></li><li id="menu-item-67" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-67"><a href="https://nounng.com/cookies-policy/">Cookies Policy</a></li><li id="menu-item-68" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-68"><a href="https://nounng.com/disclaimer/">Disclaimer</a></li><li id="menu-item-69" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-69"><a rel="privacy-policy" href="https://nounng.com/privacy-policy/">Privacy Policy</a></li><li id="menu-item-70" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-70"><a href="https://nounng.com/terms-of-use/">Terms of Use</a></li><li id="menu-item-370" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-370"><a href="https://nounng.com/html-sitemap/">HTML Sitemap</a></li></ul></nav></div></div><div class="items items-center empty"></div><div class="items items-right "><div class="spc-social-block spc-social spc-social-a smart-head-social">
<a href="https://facebook.com/nounngr" class="link service s-facebook" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-facebook"></i> <span class="visuallyhidden">Facebook</span>
</a>
<a href="https://twitter.com/mediangr" class="link service s-twitter" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-twitter"></i> <span class="visuallyhidden">X (Twitter)</span>
</a>
<a href="https://instagram.com/mediangr" class="link service s-instagram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-instagram"></i> <span class="visuallyhidden">Instagram</span>
</a>
<a href="https://pinterest.com/mediangr" class="link service s-pinterest" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-pinterest-p"></i> <span class="visuallyhidden">Pinterest</span>
</a>
<a href="https://linkedin.com/company/mediangr" class="link service s-linkedin" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-linkedin"></i> <span class="visuallyhidden">LinkedIn</span>
</a>
<a href="https://t.me/nountelegram" class="link service s-telegram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-telegram"></i> <span class="visuallyhidden">Telegram</span>
</a></div><a href="#auth-modal" class="auth-link has-icon">
<i class="icon tsi tsi-user-circle-o"></i>
<span class="label">Login</span>
</a></div></div></div><div class="smart-head-row smart-head-mid s-dark smart-head-row-full"><div class="inner full"><div class="items items-left ">
<button class="offcanvas-toggle has-icon" type="button" aria-label="Menu">
<span class="hamburger-icon hamburger-icon-a">
<span class="inner"></span>
</span>
</button> <a href="https://nounng.com/" title="NOUN Portal" rel="home" class="logo-link ts-logo logo-is-image"><h1>
<img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMzgiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCAzMzggNTciIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" data-src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" class="logo-image" alt="NOUN Portal" width="338" height="57"></h1>
</a></div><div class="items items-center empty"></div><div class="items items-right "><div class="nav-wrap"><nav class="navigation navigation-main nav-hov-a"><ul id="menu-main-menu" class="menu"><li id="menu-item-79" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-5 menu-item-79"><a href="https://nounng.com/news/noun-admission-form/">Admission Form</a></li><li id="menu-item-80" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-6 menu-item-80"><a href="https://nounng.com/news/noun-courses/">Courses</a></li><li id="menu-item-81" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-9 menu-item-81"><a href="https://nounng.com/news/noun-guides/">Guides</a></li><li id="menu-item-82" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-7 menu-item-82"><a href="https://nounng.com/news/noun-news/">News</a></li><li id="menu-item-83" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-8 menu-item-83"><a href="https://nounng.com/news/noun-school-fees/">School Fees</a></li></ul></nav></div><a href="#" class="search-icon has-icon-only is-icon" title="Search">
<i class="tsi tsi-search"></i>
</a></div></div></div></div><div class="smart-head smart-head-a smart-head-mobile" id="smart-head-mobile" data-sticky="mid" data-sticky-type="fixed" data-sticky-full=""><div class="smart-head-row smart-head-mid smart-head-row-3 s-dark smart-head-row-full"><div class="inner wrap"><div class="items items-left ">
<button class="offcanvas-toggle has-icon" type="button" aria-label="Menu">
<span class="hamburger-icon hamburger-icon-a">
<span class="inner"></span>
</span>
</button></div><div class="items items-center ">
<a href="https://nounng.com/" title="NOUN Portal" rel="home" class="logo-link ts-logo logo-is-image">
<span>
<img data-lazyloaded="1" src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" data-perfmatters-preload="" class="logo-mobile logo-image entered litespeed-loaded" data-src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" width="169" height="29" alt="NOUN Portal" data-ll-status="loaded">
</span>
</a></div><div class="items items-right "><a href="#" class="search-icon has-icon-only is-icon" title="Search">
<i class="tsi tsi-search"></i>
</a><div class="scheme-switcher has-icon-only">
<a href="#" class="toggle is-icon toggle-dark" title="Switch to Dark Design - easier on eyes.">
<i class="icon tsi tsi-moon"></i>
</a>
<a href="#" class="toggle is-icon toggle-light" title="Switch to Light Design.">
<i class="icon tsi tsi-bright"></i>
</a></div></div></div></div></div><div class="main ts-contain cf right-sidebar"><div class="ts-row"><div class="col-8 main-content"><section class="block-wrap block-posts-list mb-none has-media-shadows" data-id="1"><div class="block-content"><div class="loop loop-list loop-list-card grid grid-1 md:grid-1 sm:grid-1"><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-e-exam-timetable/" class="image-link media-ratio ratio-3-2" title="NOUN E-Exam First-Semester Timetable 2024 – Final Draft"><img data-perfmatters-preload="" width="278" height="185" src="https://nounng.com/wp-content/uploads/2023/04/noun-e-exam-timetable-featured-image.jpg.webp" class="attachment-bunyad-list size-bunyad-list no-lazy skip-lazy wp-post-image" alt="noun e exam timetable featured image" sizes="(max-width: 278px) 100vw, 278px" title="NOUN E-Exam First-Semester Timetable 2024 – Final Draft" decoding="async" fetchpriority="high"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-e-exam-timetable/">NOUN E-Exam First-Semester Timetable 2024 – Final Draft</a></h2></div><div class="excerpt"><p>The National Open University, NOUN e-exam first-semester timetable 2024 (Final Draft) has been released. New students in 100-200 level and…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-pop-examination-timetable/" class="image-link media-ratio ratio-3-2" title="NOUN POP Examination Timetable 2024_1 Released (Final)"><img data-lazyloaded="1" src="https://nounng.com/wp-content/uploads/2023/10/NOUN-POP-Examination-Timetable.jpg" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2023/10/NOUN-POP-Examination-Timetable.jpg" class="attachment-large size-large wp-post-image entered litespeed-loaded" alt="Noun Pop Examination Timetable 2023_2 Released" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN POP Examination Timetable 2024_1 Released (Final)" decoding="async" data-ll-status="loaded" sizes="(max-width: 278px) 100vw, 278px"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-pop-examination-timetable/">NOUN POP Examination Timetable 2024_1 Released (Final)</a></h2></div><div class="excerpt"><p>NOUN POP Examination Timetable 2024_1: The National Open University of Nigeria (NOUN) has released the draft of the POP examination…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-graduation-list/" class="image-link media-ratio ratio-3-2" title="NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here"><img data-lazyloaded="1" src="https://nounng.com/wp-content/uploads/2023/01/Noun-graduation-list.jpg.webp" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2023/01/Noun-graduation-list.jpg.webp" class="attachment-large size-large wp-post-image entered litespeed-loaded" alt="Noun graduation list" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here" decoding="async" data-ll-status="loaded" sizes="(max-width: 278px) 100vw, 278px"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-graduation-list/">NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here</a></h2></div><div class="excerpt"><p>This is to inform the general public especially students of the National Open University of Nigeria (NOUN) that the management…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-faculty-of-sciences-practicals/" class="image-link media-ratio ratio-3-2" title="NOUN Faculty of Sciences Practicals: Dates, Registration, and Key Information"><img data-lazyloaded="1" src="https://nounng.com/wp-content/uploads/2024/03/NOUN-Faculty-of-Sciences-Practicals.jpg" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/03/NOUN-Faculty-of-Sciences-Practicals.jpg" class="attachment-large size-large wp-post-image entered litespeed-loaded" alt="Noun Faculty Of Sciences Practicals: Dates, Registration, And Key Information" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Faculty of Sciences Practicals: Dates, Registration, and Key Information" decoding="async" data-ll-status="loaded" sizes="(max-width: 278px) 100vw, 278px"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-faculty-of-sciences-practicals/">NOUN Faculty of Sciences Practicals: Dates, Registration, and Key Information</a></h2></div><div class="excerpt"><p>NOUN Faculty of Sciences Practicals 2024_1. Get all the details on the NOUN Faculty of Sciences 2024_1 Practicals – dates,…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/3mtt-fellowship/" class="image-link media-ratio ratio-3-2" title="3MTT Fellowship: Registration Portal, Requirements"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2023/10/NITDA-3MTT-Fellowship-Programme.jpg" class="attachment-large size-large wp-post-image" alt="3mtt Fellowship: registration Portal, Requirements" data-sizes="(max-width: 278px) 100vw, 278px" title="3MTT Fellowship: Registration Portal, Requirements" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/3mtt-fellowship/">3MTT Fellowship: Registration Portal, Requirements</a></h2></div><div class="excerpt"><p>3MTT Fellowship: Registration Portal, Requirements: The Federal Ministry of Communications, Innovation & Digital Economy is inviting applications from suitably qualified candidates…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/3mtt-portal-login/" class="image-link media-ratio ratio-3-2" title="3MTT Portal Login Website: How to Update Your Profile"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2023/10/NITDA-3MTT-Fellowship-Programme.jpg" class="attachment-large size-large wp-post-image" alt="3mtt Fellowship: registration Portal, Requirements" data-sizes="(max-width: 278px) 100vw, 278px" title="3MTT Portal Login Website: How to Update Your Profile" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/3mtt-portal-login/">3MTT Portal Login Website: How to Update Your Profile</a></h2></div><div class="excerpt"><p>3MTT Portal Login. Learn how to log in to the 3MTT portal and complete your profile for the 3MTT Training…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-postgraduate-graduation-list/" class="image-link media-ratio ratio-3-2" title="NOUN Postgraduate Graduation List 2024/2025 (MSc, PGD, PhD)"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2023/11/NOUN-Postgraduate-Admission-List.jpg" class="attachment-large size-large wp-post-image" alt="Noun Postgraduate Graduation List 2023/2024 (msc, Pgd, Phd)" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Postgraduate Graduation List 2024/2025 (MSc, PGD, PhD)" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-postgraduate-graduation-list/">NOUN Postgraduate Graduation List 2024/2025 (MSc, PGD, PhD)</a></h2></div><div class="excerpt"><p>NOUN Postgraduate Graduation List. The National Open University of Nigeria (NOUN) has released the approved 2024 NOUN Postgraduate Graduation List…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-school-fees-breakdown-and-payment-options/" class="image-link media-ratio ratio-3-2" title="NOUN School Fees: Breakdown and Payment Options"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2022/10/NOUN-SCHOOL-FEES.jpg.webp" class="attachment-large size-large wp-post-image" alt="NOUN SCHOOL FEES" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN School Fees: Breakdown and Payment Options" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-school-fees-breakdown-and-payment-options/">NOUN School Fees: Breakdown and Payment Options</a></h2></div><div class="excerpt"><p>Discover the complete breakdown of NOUN school fees, payment options, and the student portal. Get insights into NOUN undergraduate and…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-carryover-course-registration/" class="image-link media-ratio ratio-3-2" title="NOUN Carryover Course Registration: A Step-by-Step Guide"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/03/NOUN-Carryover-Course-Registration-Guide.png" class="attachment-large size-large wp-post-image" alt="Noun Carryover Course Registration: a Step-by-step Guide" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Carryover Course Registration: A Step-by-Step Guide" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-carryover-course-registration/">NOUN Carryover Course Registration: A Step-by-Step Guide</a></h2></div><div class="excerpt"><p>NOUN Carryover Course Registration. Frustrated with carryover courses at NOUN? Our step-by-step guide will make registering for carryover courses and…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-annual-leave-form/" class="image-link media-ratio ratio-3-2" title="NOUN Annual Leave Form 2024: Download, Deadlines & Guide"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/03/NOUN-Annual-Leave-Form-Download-PDF.jpg" class="attachment-large size-large wp-post-image" alt="Noun Annual Leave Form 2024: Download, Deadlines & Guide" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Annual Leave Form 2024: Download, Deadlines & Guide" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-annual-leave-form/">NOUN Annual Leave Form 2024: Download, Deadlines & Guide</a></h2></div><div class="excerpt"><p>NOUN Annual Leave Form. NOUN staff, get your 2024 annual leave form here. Download the PDF, understand the deadlines, and…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-online-facilitation-orientation/" class="image-link media-ratio ratio-3-2" title="How to Join the NOUN Online Facilitation Orientation Webinar (2024_1)"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/03/How-to-Join-the-NOUN-Online-Facilitation-Orientation-Webinar.jpg" class="attachment-large size-large wp-post-image" alt="How To Join The Noun Online Facilitation Orientation Webinar (2024_1)" data-sizes="(max-width: 278px) 100vw, 278px" title="How to Join the NOUN Online Facilitation Orientation Webinar (2024_1)" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-online-facilitation-orientation/">How to Join the NOUN Online Facilitation Orientation Webinar (2024_1)</a></h2></div><div class="excerpt"><p>How to Join the NOUN Online Facilitation Orientation Webinar. Get ready for NOUN’s student orientation webinar! Learn how to join,…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/what-next-after-gaining-admission-to-noun/" class="image-link media-ratio ratio-3-2" title="What Next After Gaining Admission to NOUN: A New Student’s Guide"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-Post-Admission-Guide-for-New-Students.jpg" class="attachment-large size-large wp-post-image" alt="What Next After Gaining Admission To Noun: A New Student's Guide" data-sizes="(max-width: 278px) 100vw, 278px" title="What Next After Gaining Admission to NOUN: A New Student’s Guide" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/what-next-after-gaining-admission-to-noun/">What Next After Gaining Admission to NOUN: A New Student’s Guide</a></h2></div><div class="excerpt"><p>What Next After Gaining Admission to NOUN. Confused after being accepted to NOUN? This guide outlines essential steps for new…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-13th-convocation-ceremony/" class="image-link media-ratio ratio-3-2" title="NOUN 13th Convocation Ceremony: Dates, Schedule, and Details"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-13th-Convocation-Ceremony.jpg" class="attachment-large size-large wp-post-image" alt="Noun 13th Convocation Ceremony: Dates, Schedule, And Details" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN 13th Convocation Ceremony: Dates, Schedule, and Details" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-13th-convocation-ceremony/">NOUN 13th Convocation Ceremony: Dates, Schedule, and Details</a></h2></div><div class="excerpt"><p>NOUN 13th Convocation Ceremony. Get all the essential details about the National Open University of Nigeria’s (NOUN) 13th Convocation Ceremony…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-cgpa-calculation/" class="image-link media-ratio ratio-3-2" title="NOUN CGPA Calculation Formula & Grading System"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-CGPA-Calculation-Formula-Grading-System.jpg" class="attachment-large size-large wp-post-image" alt="Noun Cgpa Calculation Formula & Grading System" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN CGPA Calculation Formula & Grading System" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-cgpa-calculation/">NOUN CGPA Calculation Formula & Grading System</a></h2></div><div class="excerpt"><p>NOUN CGPA Calculation Formula & Grading System. Master your academic journey at NOUN with a clear understanding of the CGPA…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-b-sc-environmental-health-courses-requirements/" class="image-link media-ratio ratio-3-2" title="NOUN B.Sc. Environmental Health Courses & Requirements"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-B.Sc_.-Environmental-Health-Courses-Requirements.jpg" class="attachment-large size-large wp-post-image" alt="Noun B.sc. Environmental Health Courses & Requirements" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN B.Sc. Environmental Health Courses & Requirements" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-b-sc-environmental-health-courses-requirements/">NOUN B.Sc. Environmental Health Courses & Requirements</a></h2></div><div class="excerpt"><p>NOUN B.Sc. Environmental Health Courses. Learn about the National Open University of Nigeria’s (NOUN) B.Sc. Environmental Health program, including admission…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-b-sc-public-health-courses/" class="image-link media-ratio ratio-3-2" title="NOUN B.Sc. Public Health Courses & Admission Requirements"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-B.Sc_.-Public-Health-Courses-and-Admission-Requirements.jpg" class="attachment-large size-large wp-post-image" alt="Noun B.sc. Public Health Courses And Admission Requirements" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN B.Sc. Public Health Courses & Admission Requirements" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-b-sc-public-health-courses/">NOUN B.Sc. Public Health Courses & Admission Requirements</a></h2></div><div class="excerpt"><p>NOUN B.Sc. Public Health Courses and Admission Requirements. Interested in public health and want to study at the National Open…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-bachelor-of-nursing-science-course-outline/" class="image-link media-ratio ratio-3-2" title="NOUN Bachelor of Nursing Science Course Outline"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-Bachelor-of-Nursing-Science-Course-Outline.jpg" class="attachment-large size-large wp-post-image" alt="Noun Bachelor Of Nursing Science Course Outline" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Bachelor of Nursing Science Course Outline" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-bachelor-of-nursing-science-course-outline/">NOUN Bachelor of Nursing Science Course Outline</a></h2></div><div class="excerpt"><p>NOUN Bachelor of Nursing Science Course Outline. Explore the comprehensive NOUN B.NSc. course outline, including all semesters, course details, and…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-exam-clearance/" class="image-link media-ratio ratio-3-2" title="NOUN Exam Clearance Form 2024/1 Semester Now Available"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-Exam-Clearance-Form.png" class="attachment-large size-large wp-post-image" alt="Noun Exam Clearance Form 2024/1 Semester Now Available" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Exam Clearance Form 2024/1 Semester Now Available" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-exam-clearance/">NOUN Exam Clearance Form 2024/1 Semester Now Available</a></h2></div><div class="excerpt"><p>NOUN Exam Clearance Form 2024/1 Semester. Prepare for your National Open University of Nigeria (NOUN) exams smoothly! The 2024/1 semester…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-essay-competition/" class="image-link media-ratio ratio-3-2" title="NOUN Essay Competition on Open and Distance Learning 2023/2024"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/01/NOUN-Essay-Competition-on-Open-and-Distance-Learning.jpg" class="attachment-large size-large wp-post-image" alt="Noun Essay Competition On Open And Distance Learning 2023/2024" data-sizes="(max-width: 278px) 100vw, 278px" title="NOUN Essay Competition on Open and Distance Learning 2023/2024" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/noun-essay-competition/">NOUN Essay Competition on Open and Distance Learning 2023/2024</a></h2></div><div class="excerpt"><p>NOUN Essay Competition on Open and Distance Learning 2023/2024. Calling all NOUN final-year students! Participate in the 2023 Vice-Chancellor’s ODL…</p></div></div></article><article class="l-post list-post list-post-on-sm list-card-post m-pos-left"><div class="media">
<a href="https://nounng.com/official-noun-graduation-list-pdf/" class="image-link media-ratio ratio-3-2" title="Official NOUN Graduation List PDF"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzgiIGhlaWdodD0iMTg1IiB2aWV3Qm94PSIwIDAgMjc4IDE4NSIgYWx0PSJub3VubmciPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHN0eWxlPSJmaWxsOiNjZmQ0ZGI7ZmlsbC1vcGFjaXR5OiAwLjE7Ii8+PC9zdmc+" width="278" height="185" data-src="https://nounng.com/wp-content/uploads/2024/02/NOUN-Graduation-List.jpg" class="attachment-large size-large wp-post-image" alt="Official Noun Graduation List Pdf (2024) – Find Your Name" data-sizes="(max-width: 278px) 100vw, 278px" title="Official NOUN Graduation List PDF" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a"><h2 class="is-title post-title"><a href="https://nounng.com/official-noun-graduation-list-pdf/">Official NOUN Graduation List PDF</a></h2></div><div class="excerpt"><p>Official NOUN Graduation List PDF. Is your name on the NOUN graduation list for 2024? Find out and download the…</p></div></div></article></div><nav class="main-pagination pagination-numbers" data-type="numbers">
<span aria-current="page" class="page-numbers current">1</span>
<a class="page-numbers" href="https://nounng.com/page/2/">2</a>
<a class="page-numbers" href="https://nounng.com/page/3/">3</a>
<span class="page-numbers dots">…</span>
<a class="page-numbers" href="https://nounng.com/page/6/">6</a>
<a class="next page-numbers" href="https://nounng.com/page/2/"><span class="visuallyhidden">Next</span><i class="tsi tsi-angle-right"></i></a></nav></div></section></div><aside class="col-4 main-sidebar has-sep"><div class="inner ts-sticky-native"><div id="smartmag-block-posts-small-4" class="widget ts-block-widget smartmag-widget-posts-small"><div class="block"><section class="block-wrap block-posts-small block-sc mb-none has-media-shadows" data-id="2"><div class="widget-title block-head block-head-ac block-head block-head-ac block-head-g is-left has-style"><h5 class="heading">Popular Posts</h5></div><div class="block-content"><div class="loop loop-small loop-small-a loop-sep loop-small-sep grid grid-1 md:grid-1 sm:grid-1 xs:grid-1"><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-admission-form/" class="image-link media-ratio ar-bunyad-thumb" title="NOUN Admission Form 2024/2025 Registration Procedure for New Students"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2022/12/NOUN-Admission-Form-2023-Registration-Procedure-for-New-Students.jpg.webp" class="attachment-large size-large wp-post-image" alt="NOUN Admission Form 2023 Registration Procedure for New Students" data-sizes="(max-width: 101px) 100vw, 101px" title="NOUN Admission Form 2024/2025 Registration Procedure for New Students" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/noun-admission-form/">NOUN Admission Form 2024/2025 Registration Procedure for New Students</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-02-05T05:45:25+01:00">February 5, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-registration-guide/" class="image-link media-ratio ar-bunyad-thumb" title="NOUN Registration Guide 2024 & Closing Date for Admission"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2024/01/NOUN-Registration-Guide.jpg" class="attachment-large size-large wp-post-image" alt="Noun Registration Guide 2024 & Closing Date For Admission" data-sizes="(max-width: 101px) 100vw, 101px" title="NOUN Registration Guide 2024 & Closing Date for Admission" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/noun-registration-guide/">NOUN Registration Guide 2024 & Closing Date for Admission</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-01-04T15:12:01+01:00">January 4, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-student-portal-login-link-www-nouonline-net/" class="image-link media-ratio ar-bunyad-thumb" title="NOUN Student Portal Login Link: www Nouonline net"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2023/10/www.nouonline.net-NOUN-Student-Portal-Login.jpg" class="attachment-large size-large wp-post-image" alt="Noun Student Portal Login Link: Www Nouonline Net" data-sizes="(max-width: 101px) 100vw, 101px" title="NOUN Student Portal Login Link: www Nouonline net" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/noun-student-portal-login-link-www-nouonline-net/">NOUN Student Portal Login Link: www Nouonline net</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-01-04T18:43:33+01:00">January 4, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-graduation-list/" class="image-link media-ratio ar-bunyad-thumb" title="NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2023/01/Noun-graduation-list.jpg.webp" class="attachment-large size-large wp-post-image" alt="Noun graduation list" data-sizes="(max-width: 101px) 100vw, 101px" title="NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/noun-graduation-list/">NOUN Graduation List 2024/2025 (Batch 1 and 2) Released | Check Your Name Here</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-04-04T16:05:38+01:00">April 4, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/noun-student-login-with-matric-number/" class="image-link media-ratio ar-bunyad-thumb" title="NOUN Student Login with Matric Number Procedure"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2024/01/NOUN-Student-Login-With-Matric-Number.jpg" class="attachment-large size-large wp-post-image" alt="Noun Student Login With Matric Number Procedure" data-sizes="(max-width: 101px) 100vw, 101px" title="NOUN Student Login with Matric Number Procedure" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/noun-student-login-with-matric-number/">NOUN Student Login with Matric Number Procedure</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-01-21T23:05:02+01:00">January 21, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/how-to-check-noun-result/" class="image-link media-ratio ar-bunyad-thumb" title="How to Check NOUN Result 2024_1 Semester on Portal"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2022/12/NOUN-Second-Semester-Result.jpg.webp" class="attachment-large size-large wp-post-image" alt="NOUN Second Semester Result" data-sizes="(max-width: 101px) 100vw, 101px" title="How to Check NOUN Result 2024_1 Semester on Portal" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/how-to-check-noun-result/">How to Check NOUN Result 2024_1 Semester on Portal</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-01-02T14:55:32+01:00">January 2, 2024</time></span></span></div></div></div></article><article class="l-post small-post small-a-post m-pos-left"><div class="media">
<a href="https://nounng.com/elearn-nou-edu-ng-noun-elearn-portal-login/" class="image-link media-ratio ar-bunyad-thumb" title="(elearn.nou.edu.ng) NOUN eLearn Portal New Web Address and How to Access"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDEiIGhlaWdodD0iNzAiIHZpZXdCb3g9IjAgMCAxMDEgNzAiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="101" height="70" data-src="https://nounng.com/wp-content/uploads/2023/08/elearn.nou_.edu_.ng-NOUN-eLearn-Portal-New-Web-Address.jpg.webp" class="attachment-large size-large wp-post-image" alt="(elearn.nou.edu.ng) Noun Elearn Portal New Web Address And How To Access" data-sizes="(max-width: 101px) 100vw, 101px" title="(elearn.nou.edu.ng) NOUN eLearn Portal New Web Address and How to Access" decoding="async"></a></div><div class="content"><div class="post-meta post-meta-a post-meta-left has-below"><h3 class="is-title post-title"><a href="https://nounng.com/elearn-nou-edu-ng-noun-elearn-portal-login/">(elearn.nou.edu.ng) NOUN eLearn Portal New Web Address and How to Access</a></h3><div class="post-meta-items meta-below"><span class="meta-item date"><span class="date-link"><time class="post-date" datetime="2024-01-04T18:51:17+01:00">January 4, 2024</time></span></span></div></div></div></article></div></div></section></div></div></div></aside></div></div><footer class="main-footer cols-gap-lg footer-classic s-dark"><div class="upper-footer classic-footer-upper"><div class="ts-contain wrap"><div class="widgets row cf"><div class="widget col-4 widget-about"><div class="inner "><div class="image-logo">
<img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMzgiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCAzMzggNTciIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" data-src="https://nounng.com/wp-content/uploads/2022/09/NOUNNG.com-Header.png" width="338" height="57" alt=""></div><div class="base-text about-text"><p>This portal is created for staffs, fresh and returning students of the National Open University of Nigeria with the sole aim of disseminating latest updates and important News.</p><p>NOUNNG.Com Portal is an Independent website, we are not in any way affiliated with NOUN.</p></div><div class="spc-social-block spc-social spc-social-b ">
<a href="https://facebook.com/nounngr" class="link service s-facebook" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-facebook"></i> <span class="visuallyhidden">Facebook</span>
</a>
<a href="https://twitter.com/mediangr" class="link service s-twitter" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-twitter"></i> <span class="visuallyhidden">X (Twitter)</span>
</a>
<a href="https://instagram.com/mediangr" class="link service s-instagram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-instagram"></i> <span class="visuallyhidden">Instagram</span>
</a>
<a href="https://pinterest.com/mediangr" class="link service s-pinterest" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-pinterest-p"></i> <span class="visuallyhidden">Pinterest</span>
</a>
<a href="https://linkedin.com/company/mediangr" class="link service s-linkedin" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-linkedin"></i> <span class="visuallyhidden">LinkedIn</span>
</a>
<a href="https://t.me/nountelegram" class="link service s-telegram" target="_blank" rel="nofollow noopener">
<i class="icon tsi tsi-telegram"></i> <span class="visuallyhidden">Telegram</span>
</a></div></div></div><div class="widget col-2 widget_nav_menu"><div class="widget-title block-head block-head-ac block-head block-head-ac block-head-b is-left has-style"><h5 class="heading">Coverage</h5></div><div class="menu-footer-menu-container"><ul id="menu-footer-menu" class="menu"><li id="menu-item-98" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-98"><a href="https://nounng.com/news/noun-admission-form/">NOUN Admission Form</a></li><li id="menu-item-99" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-99"><a href="https://nounng.com/news/noun-courses/">NOUN Courses</a></li><li id="menu-item-100" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-100"><a href="https://nounng.com/news/noun-guides/">NOUN Guides</a></li><li id="menu-item-101" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-101"><a href="https://nounng.com/news/noun-news/">NOUN News</a></li><li id="menu-item-102" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-102"><a href="https://nounng.com/news/noun-school-fees/">NOUN School Fees</a></li><li id="menu-item-103" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-103"><a href="https://nounng.com/news/noun-updates/">NOUN Updates</a></li><li id="menu-item-913" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-913"><a href="https://nounng.com/sch/">Gen. School News</a></li></ul></div></div><div class="widget col-2 widget_nav_menu"><div class="widget-title block-head block-head-ac block-head block-head-ac block-head-b is-left has-style"><h5 class="heading">Company</h5></div><div class="menu-footer-links-container"><ul id="menu-footer-links-1" class="menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-65"><a href="https://nounng.com/about-us/">About us</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-66"><a href="https://nounng.com/contact-us/">Contact us</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-67"><a href="https://nounng.com/cookies-policy/">Cookies Policy</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-68"><a href="https://nounng.com/disclaimer/">Disclaimer</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-69"><a rel="privacy-policy" href="https://nounng.com/privacy-policy/">Privacy Policy</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-70"><a href="https://nounng.com/terms-of-use/">Terms of Use</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-370"><a href="https://nounng.com/html-sitemap/">HTML Sitemap</a></li></ul></div></div><div class="widget col-4 ts-block-widget smartmag-widget-newsletter"><div class="block"><div class="block-newsletter "><div class="spc-newsletter spc-newsletter-c spc-newsletter-center spc-newsletter-xs"><div class="bg-wrap"></div><div class="inner"><div class="mail-bg-icon">
<i class="tsi tsi-envelope-o"></i></div><h3 class="heading">
Subscribe to Updates</h3><div class="base-text message"><p>Get the latest creative news from NOUN Portal straight to your inbox.</p></div><form method="post" action="" class="form fields-style fields-full" target="_blank"><div class="main-fields"><p class="field-email">
<input type="email" name="EMAIL" placeholder="Your email address.." required=""></p><p class="field-submit">
<input type="submit" value="Subscribe"></p></div><p class="disclaimer">
<label>
<input type="checkbox" name="privacy" required="">
Agree to the our terms and <a href="https://nounng.com/privacy-policy/">policy</a> agreement. </label></p></form></div></div></div></div></div></div></div></div><div class="lower-footer classic-footer-lower"><div class="ts-contain wrap"><div class="inner"><div class="copyright">
© 2024 National Open University of Nigeria (NOUN) Student Information Portal. Designed by <a href="https://hereignscomputers.com">HE-Reigns Computers</a>.</div><div class="links"><div class="menu-footer-links-container"><ul id="menu-footer-links-2" class="menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-65"><a href="https://nounng.com/about-us/">About us</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-66"><a href="https://nounng.com/contact-us/">Contact us</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-67"><a href="https://nounng.com/cookies-policy/">Cookies Policy</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-68"><a href="https://nounng.com/disclaimer/">Disclaimer</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-69"><a rel="privacy-policy" href="https://nounng.com/privacy-policy/">Privacy Policy</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-70"><a href="https://nounng.com/terms-of-use/">Terms of Use</a></li><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-370"><a href="https://nounng.com/html-sitemap/">HTML Sitemap</a></li></ul></div></div></div></div></div></footer></div><div class="search-modal-wrap" data-scheme=""><div class="search-modal-box" role="dialog" aria-modal="true"><form method="get" class="search-form" action="https://nounng.com/">
<input type="search" class="search-field live-search-query" name="s" placeholder="Search..." value="" required=""><button type="submit" class="search-submit visuallyhidden">Submit</button><p class="message">
Type above and press <em>Enter</em> to search. Press <em>Esc</em> to cancel.</p></form></div></div><div class="spbsm-sidebar-wrapper spbsm-sidebar-wrapper-leftcenter"><div class="spbsm-followbuttons-output-wrapper"><div class="spbsm-output-textstring">Follow us on Social Media</div><div class="spbsm-button-wrapper-flat"><span class="spbsm-follow-whatsapp"><a href="https://whatsapp.com/channel/0029VaGdpzaGehEJiWvPOZ1z" rel="nofollow" target="_blank"><svg height="682pt" viewBox="-23 -21 682 682.66669" width="682pt" xmlns="http://www.w3.org/2000/svg"><path d="m544.386719 93.007812c-59.875-59.945312-139.503907-92.9726558-224.335938-93.007812-174.804687 0-317.070312 142.261719-317.140625 317.113281-.023437 55.894531 14.578125 110.457031 42.332032 158.550781l-44.992188 164.335938 168.121094-44.101562c46.324218 25.269531 98.476562 38.585937 151.550781 38.601562h.132813c174.785156 0 317.066406-142.273438 317.132812-317.132812.035156-84.742188-32.921875-164.417969-92.800781-224.359376zm-224.335938 487.933594h-.109375c-47.296875-.019531-93.683594-12.730468-134.160156-36.742187l-9.621094-5.714844-99.765625 26.171875 26.628907-97.269531-6.269532-9.972657c-26.386718-41.96875-40.320312-90.476562-40.296875-140.28125.054688-145.332031 118.304688-263.570312 263.699219-263.570312 70.40625.023438 136.589844 27.476562 186.355469 77.300781s77.15625 116.050781 77.132812 186.484375c-.0625 145.34375-118.304687 263.59375-263.59375 263.59375zm144.585938-197.417968c-7.921875-3.96875-46.882813-23.132813-54.148438-25.78125-7.257812-2.644532-12.546875-3.960938-17.824219 3.96875-5.285156 7.929687-20.46875 25.78125-25.09375 31.066406-4.625 5.289062-9.242187 5.953125-17.167968 1.984375-7.925782-3.964844-33.457032-12.335938-63.726563-39.332031-23.554687-21.011719-39.457031-46.960938-44.082031-54.890626-4.617188-7.9375-.039062-11.8125 3.476562-16.171874 8.578126-10.652344 17.167969-21.820313 19.808594-27.105469 2.644532-5.289063 1.320313-9.917969-.664062-13.882813-1.976563-3.964844-17.824219-42.96875-24.425782-58.839844-6.4375-15.445312-12.964843-13.359374-17.832031-13.601562-4.617187-.230469-9.902343-.277344-15.1875-.277344-5.28125 0-13.867187 1.980469-21.132812 9.917969-7.261719 7.933594-27.730469 27.101563-27.730469 66.105469s28.394531 76.683594 32.355469 81.972656c3.960937 5.289062 55.878906 85.328125 135.367187 119.648438 18.90625 8.171874 33.664063 13.042968 45.175782 16.695312 18.984374 6.03125 36.253906 5.179688 49.910156 3.140625 15.226562-2.277344 46.878906-19.171875 53.488281-37.679687 6.601563-18.511719 6.601563-34.375 4.617187-37.683594-1.976562-3.304688-7.261718-5.285156-15.183593-9.253906zm0 0" fill-rule="evenodd"></path></svg>whatsapp</a></span><span class="spbsm-follow-telegram"><a href="https://t.me/nountelegram" rel="nofollow" target="_blank"><svg xmlns="http://www.w3.org/2000/svg" width="92.915" height="77.924" viewBox="0 0 92.915 77.924"><g transform="translate(0 0)"><path d="M118.652,70.205,104.63,136.331c-1.058,4.667-3.817,5.828-7.737,3.63L75.529,124.218,65.22,134.133c-1.14,1.141-2.095,2.1-4.294,2.1l1.535-21.759,39.6-35.78c1.722-1.535-.373-2.385-2.676-.85L50.431,108.661l-21.074-6.6c-4.584-1.431-4.667-4.584.954-6.783L112.74,63.527C116.556,62.1,119.9,64.377,118.652,70.205Z" transform="translate(-26.001 -63.112)" fill="#fff"></path></g></svg>telegram</a></span></div></div></div><div id="auth-modal" class="ts-modal auth-modal" aria-hidden="true"><div class="ts-modal-overlay" tabindex="-1" data-micromodal-close=""><div class="ts-modal-container" role="dialog" aria-modal="true" aria-labelledby="auth-modal-title"><header class="ts-modal-header"><h3 id="auth-modal-title" class="visuallyhidden">
Sign In or Register</h3><button class="close-btn" aria-label="Close modal" data-micromodal-close=""></button></header><div class="auth-modal-content auth-widget"><div class="auth-modal-login"><h3 class="heading">Welcome Back!</h3><p class="message text">Login to your account below.</p><form method="post" action="https://nounng.com/wp-login.php" class="login-form"><div class="input-group">
<input type="text" name="log" value="" placeholder="Username or Email"></div><div class="input-group">
<input type="password" name="pwd" value="" placeholder="Password"></div>
<button type="submit" name="wp-submit" id="user-submit" class="ts-button submit user-submit">Log In</button><div class="footer"><div class="remember">
<input name="rememberme" type="checkbox" id="rememberme" value="forever">
<label for="rememberme">Remember Me</label></div><a href="https://nounng.com/wp-login.php?action=lostpassword" title="Lost password?" class="lost-pass">
Lost password? </a></div></form></div></div></div></div></div> <script type="text/javascript" id="wpaa-js-before" defer="" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwpjb25zdCBzYV92YXIgPSB7ImFqYXh1cmwiOiJodHRwczpcL1wvbm91bm5nLmNvbVwvd3AtYWRtaW5cL2FkbWluLWFqYXgucGhwIiwicG9zdF9pZCI6MzI4LCJyZWZlcnJlciI6IiJ9Ci8qIF1dPiAqLwo="></script> <script type="text/javascript" id="smartmag-theme-js-extra" defer="" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp2YXIgQnVueWFkID0geyJhamF4dXJsIjoiaHR0cHM6XC9cL25vdW5uZy5jb21cL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCJ9OwovKiBdXT4gKi8K"></script> <script type="text/javascript" src="https://stats.wp.com/e-202451.js" id="jetpack-stats-js" data-wp-strategy="defer" defer=""></script> <script type="text/javascript" id="jetpack-stats-js-after" defer="" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwpfc3RxID0gd2luZG93Ll9zdHEgfHwgW107Cl9zdHEucHVzaChbICJ2aWV3IiwgSlNPTi5wYXJzZSgie1widlwiOlwiZXh0XCIsXCJibG9nXCI6XCIyMTA4OTkzNzBcIixcInBvc3RcIjpcIjBcIixcInR6XCI6XCIxXCIsXCJzcnZcIjpcIm5vdW5uZy5jb21cIixcImpcIjpcIjE6MTQuMVwifSIpIF0pOwpfc3RxLnB1c2goWyAiY2xpY2tUcmFja2VySW5pdCIsICIyMTA4OTkzNzAiLCAiMCIgXSk7Ci8qIF1dPiAqLwo="></script> <script data-grow-initializer="" defer="" src="data:text/javascript;base64,IShmdW5jdGlvbigpe3dpbmRvdy5ncm93TWV8fCgod2luZG93Lmdyb3dNZT1mdW5jdGlvbihlKXt3aW5kb3cuZ3Jvd01lLl8ucHVzaChlKTt9KSwod2luZG93Lmdyb3dNZS5fPVtdKSk7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7KGUudHlwZT0idGV4dC9qYXZhc2NyaXB0IiksKGUuc3JjPSJodHRwczovL2ZhdmVzLmdyb3cubWUvbWFpbi5qcyIpLChlLmRlZmVyPSEwKSxlLnNldEF0dHJpYnV0ZSgiZGF0YS1ncm93LWZhdmVzLXNpdGUtaWQiLCJVMmwwWlRwak1EZGpPREUzWlMxa1pqQmhMVFEzTjJRdFlqWXpNaTFsT0RreE9EUmtNbUl3WXpZPSIpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTt0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdCk7fSkoKTs="></script><a href="https://bilgicraft.com/razer-kraken-x/" title="razer kraken x incelemesi"><img data-lazyloaded="1" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHZpZXdCb3g9IjAgMCAxIDEiIGFsdD0ibm91bm5nIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==" width="1" height="1" data-src="https://i90.servimg.com/u/f90/20/05/24/03/log-mi10.png" style="display:-webkit-box;"></a><script id="webpushr-script" defer="" src="data:text/javascript;base64,CihmdW5jdGlvbih3LGQsIHMsIGlkKSB7dy53ZWJwdXNocj13LndlYnB1c2hyfHxmdW5jdGlvbigpeyh3LndlYnB1c2hyLnE9dy53ZWJwdXNoci5xfHxbXSkucHVzaChhcmd1bWVudHMpfTt2YXIganMsIGZqcyA9IGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF07anMgPSBkLmNyZWF0ZUVsZW1lbnQocyk7IGpzLmFzeW5jPTE7IGpzLmlkID0gaWQ7anMuc3JjID0gImh0dHBzOi8vY2RuLndlYnB1c2hyLmNvbS9hcHAubWluLmpzIjsKZC5ib2R5LmFwcGVuZENoaWxkKGpzKTt9KHdpbmRvdyxkb2N1bWVudCwgJ3NjcmlwdCcsICd3ZWJwdXNoci1qc3NkaycpKTsKCXdlYnB1c2hyKCdzZXR1cCcseydrZXknOidCTE1nTmFCc1JxRVVfR1FjM18ySFBSaXR1X3MwYVpfTTQ1U3JCVlc3aUxaM0pHeHNCXzIteUtBajdFbkxJQkQtQUtnR0RTcTNuTk5fTldwMkgwUzBfVFUnLCdzdyc6J2h0dHBzOi8vbm91bm5nLmNvbS93cC1jb250ZW50L3BsdWdpbnMvd2VicHVzaHItd2ViLXB1c2gtbm90aWZpY2F0aW9ucy9zZGtfZmlsZXMvd2VicHVzaHItc3cuanMucGhwJ30pOwo="></script> <script defer="" src="data:text/javascript;base64,CmZ1bmN0aW9uIGIyYShhKXt2YXIgYixjPTAsbD0wLGY9IiIsZz1bXTtpZighYSlyZXR1cm4gYTtkb3t2YXIgZT1hLmNoYXJDb2RlQXQoYysrKTt2YXIgaD1hLmNoYXJDb2RlQXQoYysrKTt2YXIgaz1hLmNoYXJDb2RlQXQoYysrKTt2YXIgZD1lPDwxNnxoPDw4fGs7ZT02MyZkPj4xODtoPTYzJmQ+PjEyO2s9NjMmZD4+NjtkJj02MztnW2wrK109IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoZSkrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoaCkrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoaykrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoZCl9d2hpbGUoYzwNCmEubGVuZ3RoKTtyZXR1cm4gZj1nLmpvaW4oIiIpLGI9YS5sZW5ndGglMywoYj9mLnNsaWNlKDAsYi0zKTpmKSsiPT09Ii5zbGljZShifHwzKX1mdW5jdGlvbiBhMmIoYSl7dmFyIGIsYyxsLGY9e30sZz0wLGU9MCxoPSIiLGs9U3RyaW5nLmZyb21DaGFyQ29kZSxkPWEubGVuZ3RoO2ZvcihiPTA7NjQ+YjtiKyspZlsiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIuY2hhckF0KGIpXT1iO2ZvcihjPTA7ZD5jO2MrKylmb3IoYj1mW2EuY2hhckF0KGMpXSxnPShnPDw2KStiLGUrPTY7ODw9ZTspKChsPTI1NSZnPj4+KGUtPTgpKXx8ZC0yPmMpJiYoaCs9ayhsKSk7cmV0dXJuIGh9YjY0ZT1mdW5jdGlvbihhKXtyZXR1cm4gYnRvYShlbmNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvJShbMC05QS1GXXsyfSkvZyxmdW5jdGlvbihiLGEpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKCIweCIrYSl9KSl9Ow0KYjY0ZD1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGF0b2IoYSkuc3BsaXQoIiIpLm1hcChmdW5jdGlvbihhKXtyZXR1cm4iJSIrKCIwMCIrYS5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpfSkuam9pbigiIikpfTsNCi8qIDwhW0NEQVRBWyAqLwphaV9mcm9udCA9IHsiaW5zZXJ0aW9uX2JlZm9yZSI6IkJFRk9SRSIsImluc2VydGlvbl9hZnRlciI6IkFGVEVSIiwiaW5zZXJ0aW9uX3ByZXBlbmQiOiJQUkVQRU5EIENPTlRFTlQiLCJpbnNlcnRpb25fYXBwZW5kIjoiQVBQRU5EIENPTlRFTlQiLCJpbnNlcnRpb25fcmVwbGFjZV9jb250ZW50IjoiUkVQTEFDRSBDT05URU5UIiwiaW5zZXJ0aW9uX3JlcGxhY2VfZWxlbWVudCI6IlJFUExBQ0UgRUxFTUVOVCIsInZpc2libGUiOiJWSVNJQkxFIiwiaGlkZGVuIjoiSElEREVOIiwiZmFsbGJhY2siOiJGQUxMQkFDSyIsImF1dG9tYXRpY2FsbHlfcGxhY2VkIjoiQXV0b21hdGljYWxseSBwbGFjZWQgYnkgQWRTZW5zZSBBdXRvIGFkcyBjb2RlIiwiY2FuY2VsIjoiQ2FuY2VsIiwidXNlIjoiVXNlIiwiYWRkIjoiQWRkIiwicGFyZW50IjoiUGFyZW50IiwiY2FuY2VsX2VsZW1lbnRfc2VsZWN0aW9uIjoiQ2FuY2VsIGVsZW1lbnQgc2VsZWN0aW9uIiwic2VsZWN0X3BhcmVudF9lbGVtZW50IjoiU2VsZWN0IHBhcmVudCBlbGVtZW50IiwiY3NzX3NlbGVjdG9yIjoiQ1NTIHNlbGVjdG9yIiwidXNlX2N1cnJlbnRfc2VsZWN0b3IiOiJVc2UgY3VycmVudCBzZWxlY3RvciIsImVsZW1lbnQiOiJFTEVNRU5UIiwicGF0aCI6IlBBVEgiLCJzZWxlY3RvciI6IlNFTEVDVE9SIn07Ci8qIF1dPiAqLwp2YXIgYWlfY29va2llX2pzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7Ci8qCiBqcy1jb29raWUgdjMuMC41IHwgTUlUICBKYXZhU2NyaXB0IENvb2tpZSB2Mi4yLjAKIGh0dHBzOi8vZ2l0aHViLmNvbS9qcy1jb29raWUvanMtY29va2llCgogQ29weXJpZ2h0IDIwMDYsIDIwMTUgS2xhdXMgSGFydGwgJiBGYWduZXIgQnJhY2sKIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZQoqLwppZigidW5kZWZpbmVkIiE9PXR5cGVvZiBhaV9jb29raWVfanMpeyhmdW5jdGlvbihhLGYpeyJvYmplY3QiPT09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT09dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz1mKCk6ImZ1bmN0aW9uIj09PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKGYpOihhPSJ1bmRlZmluZWQiIT09dHlwZW9mIGdsb2JhbFRoaXM/Z2xvYmFsVGhpczphfHxzZWxmLGZ1bmN0aW9uKCl7dmFyIGI9YS5Db29raWVzLGM9YS5Db29raWVzPWYoKTtjLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXthLkNvb2tpZXM9YjtyZXR1cm4gY319KCkpfSkodGhpcyxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGc9YXJndW1lbnRzW2NdLGU7Zm9yKGUgaW4gZyliW2VdPWdbZV19cmV0dXJuIGJ9ZnVuY3Rpb24gZihiLGMpe2Z1bmN0aW9uIGcoZSxkLGgpe2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIGRvY3VtZW50KXtoPQphKHt9LGMsaCk7Im51bWJlciI9PT10eXBlb2YgaC5leHBpcmVzJiYoaC5leHBpcmVzPW5ldyBEYXRlKERhdGUubm93KCkrODY0RTUqaC5leHBpcmVzKSk7aC5leHBpcmVzJiYoaC5leHBpcmVzPWguZXhwaXJlcy50b1VUQ1N0cmluZygpKTtlPWVuY29kZVVSSUNvbXBvbmVudChlKS5yZXBsYWNlKC8lKDJbMzQ2Ql18NUV8NjB8N0MpL2csZGVjb2RlVVJJQ29tcG9uZW50KS5yZXBsYWNlKC9bKCldL2csZXNjYXBlKTt2YXIgbD0iIixrO2ZvcihrIGluIGgpaFtrXSYmKGwrPSI7ICIraywhMCE9PWhba10mJihsKz0iPSIraFtrXS5zcGxpdCgiOyIpWzBdKSk7cmV0dXJuIGRvY3VtZW50LmNvb2tpZT1lKyI9IitiLndyaXRlKGQsZSkrbH19cmV0dXJuIE9iamVjdC5jcmVhdGUoe3NldDpnLGdldDpmdW5jdGlvbihlKXtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBkb2N1bWVudCYmKCFhcmd1bWVudHMubGVuZ3RofHxlKSl7Zm9yKHZhciBkPWRvY3VtZW50LmNvb2tpZT9kb2N1bWVudC5jb29raWUuc3BsaXQoIjsgIik6CltdLGg9e30sbD0wO2w8ZC5sZW5ndGg7bCsrKXt2YXIgaz1kW2xdLnNwbGl0KCI9IikscD1rLnNsaWNlKDEpLmpvaW4oIj0iKTt0cnl7dmFyIG49ZGVjb2RlVVJJQ29tcG9uZW50KGtbMF0pO2hbbl09Yi5yZWFkKHAsbik7aWYoZT09PW4pYnJlYWt9Y2F0Y2gocSl7fX1yZXR1cm4gZT9oW2VdOmh9fSxyZW1vdmU6ZnVuY3Rpb24oZSxkKXtnKGUsIiIsYSh7fSxkLHtleHBpcmVzOi0xfSkpfSx3aXRoQXR0cmlidXRlczpmdW5jdGlvbihlKXtyZXR1cm4gZih0aGlzLmNvbnZlcnRlcixhKHt9LHRoaXMuYXR0cmlidXRlcyxlKSl9LHdpdGhDb252ZXJ0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGYoYSh7fSx0aGlzLmNvbnZlcnRlcixlKSx0aGlzLmF0dHJpYnV0ZXMpfX0se2F0dHJpYnV0ZXM6e3ZhbHVlOk9iamVjdC5mcmVlemUoYyl9LGNvbnZlcnRlcjp7dmFsdWU6T2JqZWN0LmZyZWV6ZShiKX19KX1yZXR1cm4gZih7cmVhZDpmdW5jdGlvbihiKXsnIic9PT1iWzBdJiYoYj1iLnNsaWNlKDEsLTEpKTsKcmV0dXJuIGIucmVwbGFjZSgvKCVbXGRBLUZdezJ9KSsvZ2ksZGVjb2RlVVJJQ29tcG9uZW50KX0sd3JpdGU6ZnVuY3Rpb24oYil7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChiKS5yZXBsYWNlKC8lKDJbMzQ2QkZdfDNbQUMtRl18NDB8NVtCREVdfDYwfDdbQkNEXSkvZyxkZWNvZGVVUklDb21wb25lbnQpfX0se3BhdGg6Ii8ifSl9KTtBaUNvb2tpZXM9Q29va2llcy5ub0NvbmZsaWN0KCk7ZnVuY3Rpb24gbShhKXtpZihudWxsPT1hKXJldHVybiBhOyciJz09PWEuY2hhckF0KDApJiYoYT1hLnNsaWNlKDEsLTEpKTt0cnl7YT1KU09OLnBhcnNlKGEpfWNhdGNoKGYpe31yZXR1cm4gYX1haV9jaGVja19ibG9jaz1mdW5jdGlvbihhKXt2YXIgZj0idW5kZWZpbmVkIiE9PXR5cGVvZiBhaV9kZWJ1Z2dpbmc7aWYobnVsbD09YSlyZXR1cm4hMDt2YXIgYj1tKEFpQ29va2llcy5nZXQoImFpQkxPQ0tTIikpO2FpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9IiI7bnVsbD09YiYmKGI9e30pOyJ1bmRlZmluZWQiIT09CnR5cGVvZiBhaV9kZWxheV9zaG93aW5nX3BhZ2V2aWV3cyYmKGIuaGFzT3duUHJvcGVydHkoYSl8fChiW2FdPXt9KSxiW2FdLmhhc093blByb3BlcnR5KCJkIil8fChiW2FdLmQ9YWlfZGVsYXlfc2hvd2luZ19wYWdldmlld3MsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJOTyBDT09LSUUgREFUQSBkLCBkZWxheWVkIGZvciIsYWlfZGVsYXlfc2hvd2luZ19wYWdldmlld3MsInBhZ2V2aWV3cyIpKSk7aWYoYi5oYXNPd25Qcm9wZXJ0eShhKSl7Zm9yKHZhciBjIGluIGJbYV0pe2lmKCJ4Ij09Yyl7dmFyIGc9IiIsZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzcGFuW2RhdGEtYWktYmxvY2s9IicrYSsnIl0nKVswXTsiYWlIYXNoImluIGUuZGF0YXNldCYmKGc9ZS5kYXRhc2V0LmFpSGFzaCk7ZT0iIjtiW2FdLmhhc093blByb3BlcnR5KCJoIikmJihlPWJbYV0uaCk7ZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJ4IGNvb2tpZSBoYXNoIixlLCJjb2RlIGhhc2giLApnKTt2YXIgZD1uZXcgRGF0ZTtkPWJbYV1bY10tTWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpO2lmKDA8ZCYmZT09ZylyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJjbG9zZWQgZm9yICIrZCsiIHMgPSAiK01hdGgucm91bmQoMUU0KmQvMzYwMC8yNCkvMUU0KyIgZGF5cyIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsInJlbW92aW5nIHgiKTthaV9zZXRfY29va2llKGEsIngiLCIiKTtiW2FdLmhhc093blByb3BlcnR5KCJpIil8fGJbYV0uaGFzT3duUHJvcGVydHkoImMiKXx8YWlfc2V0X2Nvb2tpZShhLCJoIiwiIil9ZWxzZSBpZigiZCI9PWMpe2lmKDAhPWJbYV1bY10pcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0iZGVsYXllZCBmb3IgIitiW2FdW2NdKyIgcGFnZXZpZXdzIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsCmIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMX1lbHNlIGlmKCJpIj09Yyl7Zz0iIjtlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3NwYW5bZGF0YS1haS1ibG9jaz0iJythKyciXScpWzBdOyJhaUhhc2giaW4gZS5kYXRhc2V0JiYoZz1lLmRhdGFzZXQuYWlIYXNoKTtlPSIiO2JbYV0uaGFzT3duUHJvcGVydHkoImgiKSYmKGU9YlthXS5oKTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsImkgY29va2llIGhhc2giLGUsImNvZGUgaGFzaCIsZyk7aWYoMD09YlthXVtjXSYmZT09ZylyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggaW1wcmVzc2lvbnMgcmVhY2hlZCIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtpZigwPmJbYV1bY10mJmU9PWcpe2Q9bmV3IERhdGU7ZD0tYlthXVtjXS1NYXRoLnJvdW5kKGQuZ2V0VGltZSgpLzFFMyk7aWYoMDxkKXJldHVybiBhaV9kZWJ1Z19jb29raWVfc3RhdHVzPQpiPSJtYXggaW1wLiByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvMzYwMCkvMUU0KyIgZGF5cyA9ICIrZCsiIHMpIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsYiksZiYmY29uc29sZS5sb2coIiIpLCExO2YmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwicmVtb3ZpbmcgaSIpO2FpX3NldF9jb29raWUoYSwiaSIsIiIpO2JbYV0uaGFzT3duUHJvcGVydHkoImMiKXx8YlthXS5oYXNPd25Qcm9wZXJ0eSgieCIpfHwoZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJjb29raWUgaCByZW1vdmVkIiksYWlfc2V0X2Nvb2tpZShhLCJoIiwiIikpfX1pZigiaXB0Ij09YyYmMD09YlthXVtjXSYmKGQ9bmV3IERhdGUsZz1NYXRoLnJvdW5kKGQuZ2V0VGltZSgpLzFFMyksZD1iW2FdLml0LWcsMDxkKSlyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggaW1wLiBwZXIgdGltZSByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvCjM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtpZigiYyI9PWMpe2c9IiI7ZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzcGFuW2RhdGEtYWktYmxvY2s9IicrYSsnIl0nKVswXTsiYWlIYXNoImluIGUuZGF0YXNldCYmKGc9ZS5kYXRhc2V0LmFpSGFzaCk7ZT0iIjtiW2FdLmhhc093blByb3BlcnR5KCJoIikmJihlPWJbYV0uaCk7ZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJjIGNvb2tpZSBoYXNoIixlLCJjb2RlIGhhc2giLGcpO2lmKDA9PWJbYV1bY10mJmU9PWcpcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0ibWF4IGNsaWNrcyByZWFjaGVkIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsYiksZiYmY29uc29sZS5sb2coIiIpLCExO2lmKDA+YlthXVtjXSYmZT09Zyl7ZD1uZXcgRGF0ZTtkPS1iW2FdW2NdLU1hdGgucm91bmQoZC5nZXRUaW1lKCkvCjFFMyk7aWYoMDxkKXJldHVybiBhaV9kZWJ1Z19jb29raWVfc3RhdHVzPWI9Im1heCBjbGlja3MgcmVhY2hlZCAoIitNYXRoLnJvdW5kKDFFNCpkLzI0LzM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsInJlbW92aW5nIGMiKTthaV9zZXRfY29va2llKGEsImMiLCIiKTtiW2FdLmhhc093blByb3BlcnR5KCJpIil8fGJbYV0uaGFzT3duUHJvcGVydHkoIngiKXx8KGYmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwiY29va2llIGggcmVtb3ZlZCIpLGFpX3NldF9jb29raWUoYSwiaCIsIiIpKX19aWYoImNwdCI9PWMmJjA9PWJbYV1bY10mJihkPW5ldyBEYXRlLGc9TWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpLGQ9YlthXS5jdC1nLDA8ZCkpcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0ibWF4IGNsaWNrcyBwZXIgdGltZSByZWFjaGVkICgiKwpNYXRoLnJvdW5kKDFFNCpkLzI0LzM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMX1pZihiLmhhc093blByb3BlcnR5KCJHIikmJmIuRy5oYXNPd25Qcm9wZXJ0eSgiY3B0IikmJjA9PWIuRy5jcHQmJihkPW5ldyBEYXRlLGc9TWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpLGQ9Yi5HLmN0LWcsMDxkKSlyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggZ2xvYmFsIGNsaWNrcyBwZXIgdGltZSByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvMzYwMCkvMUU0KyIgZGF5cyA9ICIrZCsiIHMpIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgR0xPQkFMIixiKSxmJiZjb25zb2xlLmxvZygiIiksITF9YWlfZGVidWdfY29va2llX3N0YXR1cz0iT0siO2YmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwiT0siKTtmJiZjb25zb2xlLmxvZygiIik7cmV0dXJuITB9OwphaV9jaGVja19hbmRfaW5zZXJ0X2Jsb2NrPWZ1bmN0aW9uKGEsZil7dmFyIGI9InVuZGVmaW5lZCIhPT10eXBlb2YgYWlfZGVidWdnaW5nO2lmKG51bGw9PWEpcmV0dXJuITA7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShmKTtpZihjLmxlbmd0aCl7Yz1jWzBdO3ZhciBnPWMuY2xvc2VzdCgiLiIrYWlfYmxvY2tfY2xhc3NfZGVmKSxlPWFpX2NoZWNrX2Jsb2NrKGEpOyFlJiYwIT1wYXJzZUludChjLmdldEF0dHJpYnV0ZSgibGltaXRzLWZhbGxiYWNrIikpJiZjLmhhc0F0dHJpYnV0ZSgiZGF0YS1mYWxsYmFjay1jb2RlIikmJihiJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgRkFJTEVELCBJTlNFUlRJTkcgRkFMTEJBQ0sgQkxPQ0siLGMuZ2V0QXR0cmlidXRlKCJsaW1pdHMtZmFsbGJhY2siKSksYy5zZXRBdHRyaWJ1dGUoImRhdGEtY29kZSIsYy5nZXRBdHRyaWJ1dGUoImRhdGEtZmFsbGJhY2stY29kZSIpKSxudWxsIT1nJiZnLmhhc0F0dHJpYnV0ZSgiZGF0YS1haSIpJiYKYy5oYXNBdHRyaWJ1dGUoImZhbGxiYWNrLXRyYWNraW5nIikmJmMuaGFzQXR0cmlidXRlKCJmYWxsYmFja19sZXZlbCIpJiZnLnNldEF0dHJpYnV0ZSgiZGF0YS1haS0iK2MuZ2V0QXR0cmlidXRlKCJmYWxsYmFja19sZXZlbCIpLGMuZ2V0QXR0cmlidXRlKCJmYWxsYmFjay10cmFja2luZyIpKSxlPSEwKTtjLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zZWxlY3RvciIpO2U/KGFpX2luc2VydF9jb2RlKGMpLGcmJihiPWcucXVlcnlTZWxlY3RvckFsbCgiLmFpLWRlYnVnLWJsb2NrIiksYi5sZW5ndGgmJihnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2siKSxnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2staXAiKSxnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2stZmlsdGVyIiksZy5zdHlsZS52aXNpYmlsaXR5PSIiLGcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1yZW1vdmUtcG9zaXRpb24iKSYmKGcuc3R5bGUucG9zaXRpb249IiIpKSkpOihiPWMuY2xvc2VzdCgiZGl2W2RhdGEtYWldIiksCm51bGwhPWImJiJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRBdHRyaWJ1dGUoImRhdGEtYWkiKSYmKGU9SlNPTi5wYXJzZShiNjRkKGIuZ2V0QXR0cmlidXRlKCJkYXRhLWFpIikpKSwidW5kZWZpbmVkIiE9PXR5cGVvZiBlJiZlLmNvbnN0cnVjdG9yPT09QXJyYXkmJihlWzFdPSIiLGIuc2V0QXR0cmlidXRlKCJkYXRhLWFpIixiNjRlKEpTT04uc3RyaW5naWZ5KGUpKSkpKSxnJiYoYj1nLnF1ZXJ5U2VsZWN0b3JBbGwoIi5haS1kZWJ1Zy1ibG9jayIpLGIubGVuZ3RoJiYoZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrIiksZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrLWlwIiksZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrLWZpbHRlciIpLGcuc3R5bGUudmlzaWJpbGl0eT0iIixnLmNsYXNzTGlzdC5jb250YWlucygiYWktcmVtb3ZlLXBvc2l0aW9uIikmJihnLnN0eWxlLnBvc2l0aW9uPSIiKSkpKTtjLmNsYXNzTGlzdC5yZW1vdmUoZil9Yz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIisKZisiLWRiZyIpO2c9MDtmb3IoYj1jLmxlbmd0aDtnPGI7ZysrKWU9Y1tnXSxlLnF1ZXJ5U2VsZWN0b3IoIi5haS1zdGF0dXMiKS50ZXh0Q29udGVudD1haV9kZWJ1Z19jb29raWVfc3RhdHVzLGUucXVlcnlTZWxlY3RvcigiLmFpLWNvb2tpZS1kYXRhIikudGV4dENvbnRlbnQ9YWlfZ2V0X2Nvb2tpZV90ZXh0KGEpLGUuY2xhc3NMaXN0LnJlbW92ZShmKyItZGJnIil9O2FpX2xvYWRfY29va2llPWZ1bmN0aW9uKCl7dmFyIGE9InVuZGVmaW5lZCIhPT10eXBlb2YgYWlfZGVidWdnaW5nLGY9bShBaUNvb2tpZXMuZ2V0KCJhaUJMT0NLUyIpKTtudWxsPT1mJiYoZj17fSxhJiZjb25zb2xlLmxvZygiQUkgQ09PS0lFIE5PVCBQUkVTRU5UIikpO2EmJmNvbnNvbGUubG9nKCJBSSBDT09LSUUgTE9BRCIsZik7cmV0dXJuIGZ9O2FpX3NldF9jb29raWU9ZnVuY3Rpb24oYSxmLGIpe3ZhciBjPSJ1bmRlZmluZWQiIT09dHlwZW9mIGFpX2RlYnVnZ2luZztjJiZjb25zb2xlLmxvZygiQUkgQ09PS0lFIFNFVCBibG9jazoiLAphLCJwcm9wZXJ0eToiLGYsInZhbHVlOiIsYik7dmFyIGc9YWlfbG9hZF9jb29raWUoKTtpZigiIj09PWIpe2lmKGcuaGFzT3duUHJvcGVydHkoYSkpe2RlbGV0ZSBnW2FdW2ZdO2E6e2Y9Z1thXTtmb3IoZSBpbiBmKWlmKGYuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBlPSExO2JyZWFrIGF9ZT0hMH1lJiZkZWxldGUgZ1thXX19ZWxzZSBnLmhhc093blByb3BlcnR5KGEpfHwoZ1thXT17fSksZ1thXVtmXT1iOzA9PT1PYmplY3Qua2V5cyhnKS5sZW5ndGgmJmcuY29uc3RydWN0b3I9PT1PYmplY3Q/KEFpQ29va2llcy5yZW1vdmUoImFpQkxPQ0tTIiksYyYmY29uc29sZS5sb2coIkFJIENPT0tJRSBSRU1PVkVEIikpOkFpQ29va2llcy5zZXQoImFpQkxPQ0tTIixKU09OLnN0cmluZ2lmeShnKSx7ZXhwaXJlczozNjUscGF0aDoiLyJ9KTtpZihjKWlmKGE9bShBaUNvb2tpZXMuZ2V0KCJhaUJMT0NLUyIpKSwidW5kZWZpbmVkIiE9dHlwZW9mIGEpe2NvbnNvbGUubG9nKCJBSSBDT09LSUUgTkVXIiwKYSk7Y29uc29sZS5sb2coIkFJIENPT0tJRSBEQVRBOiIpO2Zvcih2YXIgZCBpbiBhKXtmb3IodmFyIGggaW4gYVtkXSkieCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiY2xvc2VkIGZvciIsYywicyA9ICIsTWF0aC5yb3VuZCgxRTQqYy8zNjAwLzI0KS8xRTQsImRheXMiKSk6ImQiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJkZWxheWVkIGZvciIsYVtkXVtoXSwicGFnZXZpZXdzIik6ImUiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJzaG93IGV2ZXJ5IixhW2RdW2hdLCJwYWdldmlld3MiKToiaSI9PWg/KGU9YVtkXVtoXSwwPD1lP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGFbZF1baF0sImltcHJlc3Npb25zIHVudGlsIGxpbWl0Iik6KGM9bmV3IERhdGUsYz0tZS1NYXRoLnJvdW5kKGMuZ2V0VGltZSgpLzFFMyksY29uc29sZS5sb2coIiAgQkxPQ0siLGQsIm1heCBpbXByZXNzaW9ucywgY2xvc2VkIGZvciIsCmMsInMgPSIsTWF0aC5yb3VuZCgxRTQqYy8zNjAwLzI0KS8xRTQsImRheXMiKSkpOiJpcHQiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGFbZF1baF0sImltcHJlc3Npb25zIHVudGlsIGxpbWl0IHBlciB0aW1lIHBlcmlvZCIpOiJpdCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiaW1wcmVzc2lvbnMgbGltaXQgZXhwaXJhdGlvbiBpbiIsYywicyA9IixNYXRoLnJvdW5kKDFFNCpjLzM2MDAvMjQpLzFFNCwiZGF5cyIpKToiYyI9PWg/KGU9YVtkXVtoXSwwPD1lP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGUsImNsaWNrcyB1bnRpbCBsaW1pdCIpOihjPW5ldyBEYXRlLGM9LWUtTWF0aC5yb3VuZChjLmdldFRpbWUoKS8xRTMpLGNvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJtYXggY2xpY2tzLCBjbG9zZWQgZm9yIixjLCJzID0iLE1hdGgucm91bmQoMUU0KmMvMzYwMC8yNCkvMUU0LCJkYXlzIikpKToKImNwdCI9PWg/Y29uc29sZS5sb2coIiAgQkxPQ0siLGQsYVtkXVtoXSwiY2xpY2tzIHVudGlsIGxpbWl0IHBlciB0aW1lIHBlcmlvZCIpOiJjdCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiY2xpY2tzIGxpbWl0IGV4cGlyYXRpb24gaW4gIixjLCJzID0iLE1hdGgucm91bmQoMUU0KmMvMzYwMC8yNCkvMUU0LCJkYXlzIikpOiJoIj09aD9jb25zb2xlLmxvZygiICBCTE9DSyIsZCwiaGFzaCIsYVtkXVtoXSk6Y29uc29sZS5sb2coIiAgICAgID86IixkLCI6IixoLGFbZF1baF0pO2NvbnNvbGUubG9nKCIiKX19ZWxzZSBjb25zb2xlLmxvZygiQUkgQ09PS0lFIE5PVCBQUkVTRU5UIik7cmV0dXJuIGd9O2FpX2dldF9jb29raWVfdGV4dD1mdW5jdGlvbihhKXt2YXIgZj1tKEFpQ29va2llcy5nZXQoImFpQkxPQ0tTIikpO251bGw9PWYmJihmPXt9KTt2YXIgYj0iIjtmLmhhc093blByb3BlcnR5KCJHIikmJgooYj0iR1siK0pTT04uc3RyaW5naWZ5KGYuRykucmVwbGFjZSgvIi9nLCIiKS5yZXBsYWNlKCJ7IiwiIikucmVwbGFjZSgifSIsIiIpKyJdICIpO3ZhciBjPSIiO2YuaGFzT3duUHJvcGVydHkoYSkmJihjPUpTT04uc3RyaW5naWZ5KGZbYV0pLnJlcGxhY2UoLyIvZywiIikucmVwbGFjZSgieyIsIiIpLnJlcGxhY2UoIn0iLCIiKSk7cmV0dXJuIGIrY319Owp2YXIgYWlfaW5zZXJ0aW9uX2pzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7CmlmKCJ1bmRlZmluZWQiIT10eXBlb2YgYWlfaW5zZXJ0aW9uX2pzKXthaV9pbnNlcnQ9ZnVuY3Rpb24oYSxoLGwpe2lmKC0xIT1oLmluZGV4T2YoIjplcSgiKSlpZih3aW5kb3cualF1ZXJ5JiZ3aW5kb3cualF1ZXJ5LmZuKXZhciBuPWpRdWVyeShoKTtlbHNle2NvbnNvbGUuZXJyb3IoIkFJIElOU0VSVCBVU0lORyBqUXVlcnkgUVVFUklFUzoiLGgsIi0galF1ZXJ5IG5vdCBmb3VuZCIpO3JldHVybn1lbHNlIG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChoKTtmb3IodmFyIHU9MCx5PW4ubGVuZ3RoO3U8eTt1Kyspe3ZhciBkPW5bdV07c2VsZWN0b3Jfc3RyaW5nPWQuaGFzQXR0cmlidXRlKCJpZCIpPyIjIitkLmdldEF0dHJpYnV0ZSgiaWQiKTpkLmhhc0F0dHJpYnV0ZSgiY2xhc3MiKT8iLiIrZC5nZXRBdHRyaWJ1dGUoImNsYXNzIikucmVwbGFjZShSZWdFeHAoIiAiLCJnIiksIi4iKToiIjt2YXIgdz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt3LmlubmVySFRNTD1sOwp2YXIgbT13LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImFpLXNlbGVjdG9yLWNvdW50ZXIiKVswXTtudWxsIT1tJiYobS5pbm5lclRleHQ9dSsxKTttPXcuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiYWktZGVidWctbmFtZSBhaS1tYWluIilbMF07aWYobnVsbCE9bSl7dmFyIHI9YS50b1VwcGVyQ2FzZSgpOyJ1bmRlZmluZWQiIT10eXBlb2YgYWlfZnJvbnQmJigiYmVmb3JlIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9iZWZvcmU6ImFmdGVyIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9hZnRlcjoicHJlcGVuZCI9PWE/cj1haV9mcm9udC5pbnNlcnRpb25fcHJlcGVuZDoiYXBwZW5kIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9hcHBlbmQ6InJlcGxhY2UtY29udGVudCI9PWE/cj1haV9mcm9udC5pbnNlcnRpb25fcmVwbGFjZV9jb250ZW50OiJyZXBsYWNlLWVsZW1lbnQiPT1hJiYocj1haV9mcm9udC5pbnNlcnRpb25fcmVwbGFjZV9lbGVtZW50KSk7LTE9PXNlbGVjdG9yX3N0cmluZy5pbmRleE9mKCIuYWktdmlld3BvcnRzIikmJgoobS5pbm5lclRleHQ9cisiICIraCsiICgiK2QudGFnTmFtZS50b0xvd2VyQ2FzZSgpK3NlbGVjdG9yX3N0cmluZysiKSIpfW09ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTt0cnl7dmFyIHY9bS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQody5pbm5lckhUTUwpfWNhdGNoKHQpe30iYmVmb3JlIj09YT9kLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHYsZCk6ImFmdGVyIj09YT9kLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHYsZC5uZXh0U2libGluZyk6InByZXBlbmQiPT1hP2QuaW5zZXJ0QmVmb3JlKHYsZC5maXJzdENoaWxkKToiYXBwZW5kIj09YT9kLmluc2VydEJlZm9yZSh2LG51bGwpOiJyZXBsYWNlLWNvbnRlbnQiPT1hPyhkLmlubmVySFRNTD0iIixkLmluc2VydEJlZm9yZSh2LG51bGwpKToicmVwbGFjZS1lbGVtZW50Ij09YSYmKGQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodixkKSxkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZCkpO3ooKX19O2FpX2luc2VydF9jb2RlPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGgobSwKcil7cmV0dXJuIG51bGw9PW0/ITE6bS5jbGFzc0xpc3Q/bS5jbGFzc0xpc3QuY29udGFpbnMocik6LTE8KCIgIittLmNsYXNzTmFtZSsiICIpLmluZGV4T2YoIiAiK3IrIiAiKX1mdW5jdGlvbiBsKG0scil7bnVsbCE9bSYmKG0uY2xhc3NMaXN0P20uY2xhc3NMaXN0LmFkZChyKTptLmNsYXNzTmFtZSs9IiAiK3IpfWZ1bmN0aW9uIG4obSxyKXtudWxsIT1tJiYobS5jbGFzc0xpc3Q/bS5jbGFzc0xpc3QucmVtb3ZlKHIpOm0uY2xhc3NOYW1lPW0uY2xhc3NOYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiKF58XFxiKSIrci5zcGxpdCgiICIpLmpvaW4oInwiKSsiKFxcYnwkKSIsImdpIiksIiAiKSl9aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBhKXt2YXIgdT0hMTtpZihoKGEsIm5vLXZpc2liaWxpdHktY2hlY2siKXx8YS5vZmZzZXRXaWR0aHx8YS5vZmZzZXRIZWlnaHR8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpe3U9YS5nZXRBdHRyaWJ1dGUoImRhdGEtY29kZSIpO3ZhciB5PWEuZ2V0QXR0cmlidXRlKCJkYXRhLWluc2VydGlvbi1wb3NpdGlvbiIpLApkPWEuZ2V0QXR0cmlidXRlKCJkYXRhLXNlbGVjdG9yIik7aWYobnVsbCE9dSlpZihudWxsIT15JiZudWxsIT1kKXtpZigtMSE9ZC5pbmRleE9mKCI6ZXEoIik/d2luZG93LmpRdWVyeSYmd2luZG93LmpRdWVyeS5mbiYmalF1ZXJ5KGQpLmxlbmd0aDpkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGQpLmxlbmd0aClhaV9pbnNlcnQoeSxkLGI2NGQodSkpLG4oYSwiYWktdmlld3BvcnRzIil9ZWxzZXt5PWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7dHJ5e3ZhciB3PXkuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGI2NGQodSkpfWNhdGNoKG0pe31hLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHcsYS5uZXh0U2libGluZyk7bihhLCJhaS12aWV3cG9ydHMiKX11PSEwfWVsc2Ugdz1hLnByZXZpb3VzRWxlbWVudFNpYmxpbmcsaCh3LCJhaS1kZWJ1Zy1iYXIiKSYmaCh3LCJhaS1kZWJ1Zy1zY3JpcHQiKSYmKG4odywiYWktZGVidWctc2NyaXB0IiksbCh3LCJhaS1kZWJ1Zy12aWV3cG9ydC1pbnZpc2libGUiKSksCm4oYSwiYWktdmlld3BvcnRzIik7cmV0dXJuIHV9fTthaV9pbnNlcnRfbGlzdF9jb2RlPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBoKXt2YXIgbD1haV9pbnNlcnRfY29kZShoKSxuPWguY2xvc2VzdCgiZGl2LiIrYWlfYmxvY2tfY2xhc3NfZGVmKTtpZihuKXtsfHxuLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1haSIpO3ZhciB1PW4ucXVlcnlTZWxlY3RvckFsbCgiLmFpLWRlYnVnLWJsb2NrIik7biYmdS5sZW5ndGgmJihuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2siKSxuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2staXAiKSxuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2stZmlsdGVyIiksbi5zdHlsZS52aXNpYmlsaXR5PSIiLG4uY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1yZW1vdmUtcG9zaXRpb24iKSYmKG4uc3R5bGUucG9zaXRpb249IiIpKX1oLmNsYXNzTGlzdC5yZW1vdmUoYSk7CmwmJnooKX19O2FpX2luc2VydF92aWV3cG9ydF9jb2RlPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBoKXt2YXIgbD1haV9pbnNlcnRfY29kZShoKTtoLmNsYXNzTGlzdC5yZW1vdmUoYSk7bCYmKGE9aC5jbG9zZXN0KCJkaXYuIithaV9ibG9ja19jbGFzc19kZWYpLG51bGwhPWEmJihsPWguZ2V0QXR0cmlidXRlKCJzdHlsZSIpLG51bGwhPWwmJmEuc2V0QXR0cmlidXRlKCJzdHlsZSIsYS5nZXRBdHRyaWJ1dGUoInN0eWxlIikrIiAiK2wpKSk7c2V0VGltZW91dChmdW5jdGlvbigpe2gucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpfSwyKTt6KCl9fTthaV9pbnNlcnRfYWRzZW5zZV9mYWxsYmFja19jb2Rlcz1mdW5jdGlvbihhKXthLnN0eWxlLmRpc3BsYXk9Im5vbmUiO3ZhciBoPWEuY2xvc2VzdCgiLmFpLWZhbGxiYWNrLWFkc2Vuc2UiKSxsPWgubmV4dEVsZW1lbnRTaWJsaW5nO2wuZ2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiKT8KYWlfaW5zZXJ0X2NvZGUobCkmJnooKTpsLnN0eWxlLmRpc3BsYXk9ImJsb2NrIjtoLmNsYXNzTGlzdC5jb250YWlucygiYWktZW1wdHktY29kZSIpJiZudWxsIT1hLmNsb3Nlc3QoIi4iK2FpX2Jsb2NrX2NsYXNzX2RlZikmJihhPWEuY2xvc2VzdCgiLiIrYWlfYmxvY2tfY2xhc3NfZGVmKS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJjb2RlLWJsb2NrLWxhYmVsIiksMCE9YS5sZW5ndGgmJihhWzBdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKSl9O2FpX2luc2VydF9jb2RlX2J5X2NsYXNzPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07InVuZGVmaW5lZCIhPXR5cGVvZiBoJiYoYWlfaW5zZXJ0X2NvZGUoaCksaC5jbGFzc0xpc3QucmVtb3ZlKGEpKX07YWlfaW5zZXJ0X2NsaWVudF9jb2RlPWZ1bmN0aW9uKGEsaCl7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShhKVswXTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGwpe3ZhciBuPQpsLmdldEF0dHJpYnV0ZSgiZGF0YS1jb2RlIik7bnVsbCE9biYmYWlfY2hlY2tfYmxvY2soKSYmKGwuc2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiLG4uc3Vic3RyaW5nKE1hdGguZmxvb3IoaC8xOSkpKSxhaV9pbnNlcnRfY29kZV9ieV9jbGFzcyhhKSxsLnJlbW92ZSgpKX19O2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlPSExO2Z1bmN0aW9uIHooKXthaV9wcm9jZXNzX2VsZW1lbnRzX2FjdGl2ZXx8c2V0VGltZW91dChmdW5jdGlvbigpe2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlPSExOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX3JvdGF0aW9ucyYmYWlfcHJvY2Vzc19yb3RhdGlvbnMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19saXN0cyYmYWlfcHJvY2Vzc19saXN0cygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2lwX2FkZHJlc3NlcyYmYWlfcHJvY2Vzc19pcF9hZGRyZXNzZXMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19maWx0ZXJfaG9va3MmJgphaV9wcm9jZXNzX2ZpbHRlcl9ob29rcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9hZGJfcHJvY2Vzc19ibG9ja3MmJmFpX2FkYl9wcm9jZXNzX2Jsb2NrcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2ltcHJlc3Npb25zJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfcHJvY2Vzc19pbXByZXNzaW9ucygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfaW5zdGFsbF9jbGlja190cmFja2VycygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2Nsb3NlX2J1dHRvbnMmJmFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyhkb2N1bWVudCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3Nfd2FpdF9mb3JfaW50ZXJhY3Rpb24mJmFpX3Byb2Nlc3Nfd2FpdF9mb3JfaW50ZXJhY3Rpb24oKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19kZWxheWVkX2Jsb2NrcyYmYWlfcHJvY2Vzc19kZWxheWVkX2Jsb2NrcygpfSwKNSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITB9Y29uc3QgQj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJib2R5Iik7KG5ldyBNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGEsaCl7Zm9yKGNvbnN0IGwgb2YgYSkiYXR0cmlidXRlcyI9PT1sLnR5cGUmJiJkYXRhLWFkLXN0YXR1cyI9PWwuYXR0cmlidXRlTmFtZSYmInVuZmlsbGVkIj09bC50YXJnZXQuZGF0YXNldC5hZFN0YXR1cyYmbC50YXJnZXQuY2xvc2VzdCgiLmFpLWZhbGxiYWNrLWFkc2Vuc2UiKSYmYWlfaW5zZXJ0X2Fkc2Vuc2VfZmFsbGJhY2tfY29kZXMobC50YXJnZXQpfSkpLm9ic2VydmUoQix7YXR0cmlidXRlczohMCxjaGlsZExpc3Q6ITEsc3VidHJlZTohMH0pO3ZhciBBcnJpdmU9ZnVuY3Rpb24oYSxoLGwpe2Z1bmN0aW9uIG4odCxjLGUpe2QuYWRkTWV0aG9kKGMsZSx0LnVuYmluZEV2ZW50KTtkLmFkZE1ldGhvZChjLGUsdC51bmJpbmRFdmVudFdpdGhTZWxlY3Rvck9yQ2FsbGJhY2spO2QuYWRkTWV0aG9kKGMsCmUsdC51bmJpbmRFdmVudFdpdGhTZWxlY3RvckFuZENhbGxiYWNrKX1mdW5jdGlvbiB1KHQpe3QuYXJyaXZlPXIuYmluZEV2ZW50O24ocix0LCJ1bmJpbmRBcnJpdmUiKTt0LmxlYXZlPXYuYmluZEV2ZW50O24odix0LCJ1bmJpbmRMZWF2ZSIpfWlmKGEuTXV0YXRpb25PYnNlcnZlciYmInVuZGVmaW5lZCIhPT10eXBlb2YgSFRNTEVsZW1lbnQpe3ZhciB5PTAsZD1mdW5jdGlvbigpe3ZhciB0PUhUTUxFbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzfHxIVE1MRWxlbWVudC5wcm90b3R5cGUud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxIVE1MRWxlbWVudC5wcm90b3R5cGUubW96TWF0Y2hlc1NlbGVjdG9yfHxIVE1MRWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3I7cmV0dXJue21hdGNoZXNTZWxlY3RvcjpmdW5jdGlvbihjLGUpe3JldHVybiBjIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2FsbChjLGUpfSxhZGRNZXRob2Q6ZnVuY3Rpb24oYyxlLGYpe3ZhciBiPWNbZV07Y1tlXT0KZnVuY3Rpb24oKXtpZihmLmxlbmd0aD09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gZi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGIpcmV0dXJuIGIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0sY2FsbENhbGxiYWNrczpmdW5jdGlvbihjLGUpe2UmJmUub3B0aW9ucy5vbmNlT25seSYmMT09ZS5maXJlZEVsZW1zLmxlbmd0aCYmKGM9W2NbMF1dKTtmb3IodmFyIGY9MCxiO2I9Y1tmXTtmKyspYiYmYi5jYWxsYmFjayYmYi5jYWxsYmFjay5jYWxsKGIuZWxlbSxiLmVsZW0pO2UmJmUub3B0aW9ucy5vbmNlT25seSYmMT09ZS5maXJlZEVsZW1zLmxlbmd0aCYmZS5tZS51bmJpbmRFdmVudFdpdGhTZWxlY3RvckFuZENhbGxiYWNrLmNhbGwoZS50YXJnZXQsZS5zZWxlY3RvcixlLmNhbGxiYWNrKX0sY2hlY2tDaGlsZE5vZGVzUmVjdXJzaXZlbHk6ZnVuY3Rpb24oYyxlLGYsYil7Zm9yKHZhciBnPTAsaztrPWNbZ107ZysrKWYoayxlLGIpJiZiLnB1c2goe2NhbGxiYWNrOmUuY2FsbGJhY2ssCmVsZW06a30pLDA8ay5jaGlsZE5vZGVzLmxlbmd0aCYmZC5jaGVja0NoaWxkTm9kZXNSZWN1cnNpdmVseShrLmNoaWxkTm9kZXMsZSxmLGIpfSxtZXJnZUFycmF5czpmdW5jdGlvbihjLGUpe3ZhciBmPXt9LGI7Zm9yKGIgaW4gYyljLmhhc093blByb3BlcnR5KGIpJiYoZltiXT1jW2JdKTtmb3IoYiBpbiBlKWUuaGFzT3duUHJvcGVydHkoYikmJihmW2JdPWVbYl0pO3JldHVybiBmfSx0b0VsZW1lbnRzQXJyYXk6ZnVuY3Rpb24oYyl7InVuZGVmaW5lZCI9PT10eXBlb2YgY3x8Im51bWJlciI9PT10eXBlb2YgYy5sZW5ndGgmJmMhPT1hfHwoYz1bY10pO3JldHVybiBjfX19KCksdz1mdW5jdGlvbigpe3ZhciB0PWZ1bmN0aW9uKCl7dGhpcy5fZXZlbnRzQnVja2V0PVtdO3RoaXMuX2JlZm9yZVJlbW92aW5nPXRoaXMuX2JlZm9yZUFkZGluZz1udWxsfTt0LnByb3RvdHlwZS5hZGRFdmVudD1mdW5jdGlvbihjLGUsZixiKXtjPXt0YXJnZXQ6YyxzZWxlY3RvcjplLG9wdGlvbnM6ZixjYWxsYmFjazpiLApmaXJlZEVsZW1zOltdfTt0aGlzLl9iZWZvcmVBZGRpbmcmJnRoaXMuX2JlZm9yZUFkZGluZyhjKTt0aGlzLl9ldmVudHNCdWNrZXQucHVzaChjKTtyZXR1cm4gY307dC5wcm90b3R5cGUucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oYyl7Zm9yKHZhciBlPXRoaXMuX2V2ZW50c0J1Y2tldC5sZW5ndGgtMSxmO2Y9dGhpcy5fZXZlbnRzQnVja2V0W2VdO2UtLSljKGYpJiYodGhpcy5fYmVmb3JlUmVtb3ZpbmcmJnRoaXMuX2JlZm9yZVJlbW92aW5nKGYpLChmPXRoaXMuX2V2ZW50c0J1Y2tldC5zcGxpY2UoZSwxKSkmJmYubGVuZ3RoJiYoZlswXS5jYWxsYmFjaz1udWxsKSl9O3QucHJvdG90eXBlLmJlZm9yZUFkZGluZz1mdW5jdGlvbihjKXt0aGlzLl9iZWZvcmVBZGRpbmc9Y307dC5wcm90b3R5cGUuYmVmb3JlUmVtb3Zpbmc9ZnVuY3Rpb24oYyl7dGhpcy5fYmVmb3JlUmVtb3Zpbmc9Y307cmV0dXJuIHR9KCksbT1mdW5jdGlvbih0LGMpe3ZhciBlPW5ldyB3LGY9dGhpcyxiPXtmaXJlT25BdHRyaWJ1dGVzTW9kaWZpY2F0aW9uOiExfTsKZS5iZWZvcmVBZGRpbmcoZnVuY3Rpb24oZyl7dmFyIGs9Zy50YXJnZXQ7aWYoaz09PWEuZG9jdW1lbnR8fGs9PT1hKWs9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImh0bWwiKVswXTt2YXIgcD1uZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbih4KXtjLmNhbGwodGhpcyx4LGcpfSk7dmFyIHE9dChnLm9wdGlvbnMpO3Aub2JzZXJ2ZShrLHEpO2cub2JzZXJ2ZXI9cDtnLm1lPWZ9KTtlLmJlZm9yZVJlbW92aW5nKGZ1bmN0aW9uKGcpe2cub2JzZXJ2ZXIuZGlzY29ubmVjdCgpfSk7dGhpcy5iaW5kRXZlbnQ9ZnVuY3Rpb24oZyxrLHApe2s9ZC5tZXJnZUFycmF5cyhiLGspO2Zvcih2YXIgcT1kLnRvRWxlbWVudHNBcnJheSh0aGlzKSx4PTA7eDxxLmxlbmd0aDt4KyspZS5hZGRFdmVudChxW3hdLGcsayxwKX07dGhpcy51bmJpbmRFdmVudD1mdW5jdGlvbigpe3ZhciBnPWQudG9FbGVtZW50c0FycmF5KHRoaXMpO2UucmVtb3ZlRXZlbnQoZnVuY3Rpb24oayl7Zm9yKHZhciBwPQowO3A8Zy5sZW5ndGg7cCsrKWlmKHRoaXM9PT1sfHxrLnRhcmdldD09PWdbcF0pcmV0dXJuITA7cmV0dXJuITF9KX07dGhpcy51bmJpbmRFdmVudFdpdGhTZWxlY3Rvck9yQ2FsbGJhY2s9ZnVuY3Rpb24oZyl7dmFyIGs9ZC50b0VsZW1lbnRzQXJyYXkodGhpcyk7ZS5yZW1vdmVFdmVudCgiZnVuY3Rpb24iPT09dHlwZW9mIGc/ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxrLmxlbmd0aDtxKyspaWYoKHRoaXM9PT1sfHxwLnRhcmdldD09PWtbcV0pJiZwLmNhbGxiYWNrPT09ZylyZXR1cm4hMDtyZXR1cm4hMX06ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxrLmxlbmd0aDtxKyspaWYoKHRoaXM9PT1sfHxwLnRhcmdldD09PWtbcV0pJiZwLnNlbGVjdG9yPT09ZylyZXR1cm4hMDtyZXR1cm4hMX0pfTt0aGlzLnVuYmluZEV2ZW50V2l0aFNlbGVjdG9yQW5kQ2FsbGJhY2s9ZnVuY3Rpb24oZyxrKXt2YXIgcD1kLnRvRWxlbWVudHNBcnJheSh0aGlzKTtlLnJlbW92ZUV2ZW50KGZ1bmN0aW9uKHEpe2Zvcih2YXIgeD0KMDt4PHAubGVuZ3RoO3grKylpZigodGhpcz09PWx8fHEudGFyZ2V0PT09cFt4XSkmJnEuc2VsZWN0b3I9PT1nJiZxLmNhbGxiYWNrPT09aylyZXR1cm4hMDtyZXR1cm4hMX0pfTtyZXR1cm4gdGhpc30scj1uZXcgZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGYsYixnKXtyZXR1cm4gZC5tYXRjaGVzU2VsZWN0b3IoZixiLnNlbGVjdG9yKSYmKGYuX2lkPT09bCYmKGYuX2lkPXkrKyksLTE9PWIuZmlyZWRFbGVtcy5pbmRleE9mKGYuX2lkKSk/KGIuZmlyZWRFbGVtcy5wdXNoKGYuX2lkKSwhMCk6ITF9dmFyIGM9e2ZpcmVPbkF0dHJpYnV0ZXNNb2RpZmljYXRpb246ITEsb25jZU9ubHk6ITEsZXhpc3Rpbmc6ITF9O3I9bmV3IG0oZnVuY3Rpb24oZil7dmFyIGI9e2F0dHJpYnV0ZXM6ITEsY2hpbGRMaXN0OiEwLHN1YnRyZWU6ITB9O2YuZmlyZU9uQXR0cmlidXRlc01vZGlmaWNhdGlvbiYmKGIuYXR0cmlidXRlcz0hMCk7cmV0dXJuIGJ9LGZ1bmN0aW9uKGYsYil7Zi5mb3JFYWNoKGZ1bmN0aW9uKGcpe3ZhciBrPQpnLmFkZGVkTm9kZXMscD1nLnRhcmdldCxxPVtdO251bGwhPT1rJiYwPGsubGVuZ3RoP2QuY2hlY2tDaGlsZE5vZGVzUmVjdXJzaXZlbHkoayxiLHQscSk6ImF0dHJpYnV0ZXMiPT09Zy50eXBlJiZ0KHAsYixxKSYmcS5wdXNoKHtjYWxsYmFjazpiLmNhbGxiYWNrLGVsZW06cH0pO2QuY2FsbENhbGxiYWNrcyhxLGIpfSl9KTt2YXIgZT1yLmJpbmRFdmVudDtyLmJpbmRFdmVudD1mdW5jdGlvbihmLGIsZyl7InVuZGVmaW5lZCI9PT10eXBlb2YgZz8oZz1iLGI9Yyk6Yj1kLm1lcmdlQXJyYXlzKGMsYik7dmFyIGs9ZC50b0VsZW1lbnRzQXJyYXkodGhpcyk7aWYoYi5leGlzdGluZyl7Zm9yKHZhciBwPVtdLHE9MDtxPGsubGVuZ3RoO3ErKylmb3IodmFyIHg9a1txXS5xdWVyeVNlbGVjdG9yQWxsKGYpLEE9MDtBPHgubGVuZ3RoO0ErKylwLnB1c2goe2NhbGxiYWNrOmcsZWxlbTp4W0FdfSk7aWYoYi5vbmNlT25seSYmcC5sZW5ndGgpcmV0dXJuIGcuY2FsbChwWzBdLmVsZW0scFswXS5lbGVtKTsKc2V0VGltZW91dChkLmNhbGxDYWxsYmFja3MsMSxwKX1lLmNhbGwodGhpcyxmLGIsZyl9O3JldHVybiByfSx2PW5ldyBmdW5jdGlvbigpe2Z1bmN0aW9uIHQoZixiKXtyZXR1cm4gZC5tYXRjaGVzU2VsZWN0b3IoZixiLnNlbGVjdG9yKX12YXIgYz17fTt2PW5ldyBtKGZ1bmN0aW9uKCl7cmV0dXJue2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfX0sZnVuY3Rpb24oZixiKXtmLmZvckVhY2goZnVuY3Rpb24oZyl7Zz1nLnJlbW92ZWROb2Rlczt2YXIgaz1bXTtudWxsIT09ZyYmMDxnLmxlbmd0aCYmZC5jaGVja0NoaWxkTm9kZXNSZWN1cnNpdmVseShnLGIsdCxrKTtkLmNhbGxDYWxsYmFja3MoayxiKX0pfSk7dmFyIGU9di5iaW5kRXZlbnQ7di5iaW5kRXZlbnQ9ZnVuY3Rpb24oZixiLGcpeyJ1bmRlZmluZWQiPT09dHlwZW9mIGc/KGc9YixiPWMpOmI9ZC5tZXJnZUFycmF5cyhjLGIpO2UuY2FsbCh0aGlzLGYsYixnKX07cmV0dXJuIHZ9O2gmJnUoaC5mbik7dShIVE1MRWxlbWVudC5wcm90b3R5cGUpOwp1KE5vZGVMaXN0LnByb3RvdHlwZSk7dShIVE1MQ29sbGVjdGlvbi5wcm90b3R5cGUpO3UoSFRNTERvY3VtZW50LnByb3RvdHlwZSk7dShXaW5kb3cucHJvdG90eXBlKTtoPXt9O24ocixoLCJ1bmJpbmRBbGxBcnJpdmUiKTtuKHYsaCwidW5iaW5kQWxsTGVhdmUiKTtyZXR1cm4gaH19KHdpbmRvdywidW5kZWZpbmVkIj09PXR5cGVvZiBqUXVlcnk/bnVsbDpqUXVlcnksdm9pZCAwKX07CnZhciBhaV9yb3RhdGlvbl90cmlnZ2Vycz1bXSxhaV9ibG9ja19jbGFzc19kZWY9ImNvZGUtYmxvY2siOwppZigidW5kZWZpbmVkIiE9dHlwZW9mIGFpX3JvdGF0aW9uX3RyaWdnZXJzKXthaV9wcm9jZXNzX3JvdGF0aW9uPWZ1bmN0aW9uKGIpe3ZhciBkPSJudW1iZXIiPT10eXBlb2YgYi5sZW5ndGg7d2luZG93LmpRdWVyeSYmd2luZG93LmpRdWVyeS5mbiYmYiBpbnN0YW5jZW9mIGpRdWVyeSYmKGI9ZD9BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChiKTpiWzBdKTtpZihkKXt2YXIgZT0hMTtiLmZvckVhY2goKGMsaCk9PntpZihjLmNsYXNzTGlzdC5jb250YWlucygiYWktdW5wcm9jZXNzZWQiKXx8Yy5jbGFzc0xpc3QuY29udGFpbnMoImFpLXRpbWVyIikpZT0hMH0pO2lmKCFlKXJldHVybjtiLmZvckVhY2goKGMsaCk9PntjLmNsYXNzTGlzdC5yZW1vdmUoImFpLXVucHJvY2Vzc2VkIik7Yy5jbGFzc0xpc3QucmVtb3ZlKCJhaS10aW1lciIpfSl9ZWxzZXtpZighYi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXVucHJvY2Vzc2VkIikmJiFiLmNsYXNzTGlzdC5jb250YWlucygiYWktdGltZXIiKSlyZXR1cm47CmIuY2xhc3NMaXN0LnJlbW92ZSgiYWktdW5wcm9jZXNzZWQiKTtiLmNsYXNzTGlzdC5yZW1vdmUoImFpLXRpbWVyIil9dmFyIGE9ITE7aWYoZD9iWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1pbmZvIik6Yi5oYXNBdHRyaWJ1dGUoImRhdGEtaW5mbyIpKXt2YXIgZj0iZGl2LmFpLXJvdGF0ZS5haS0iKyhkP0pTT04ucGFyc2UoYXRvYihiWzBdLmRhdGFzZXQuaW5mbykpOkpTT04ucGFyc2UoYXRvYihiLmRhdGFzZXQuaW5mbykpKVswXTthaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmNsdWRlcyhmKSYmKGFpX3JvdGF0aW9uX3RyaWdnZXJzLnNwbGljZShhaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmRleE9mKGYpLDEpLGE9ITApfWlmKGQpZm9yKGQ9MDtkPGIubGVuZ3RoO2QrKykwPT1kP2FpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uKGJbZF0sITApOmFpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uKGJbZF0sITEpO2Vsc2UgYWlfcHJvY2Vzc19zaW5nbGVfcm90YXRpb24oYiwhYSl9O2FpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uPQpmdW5jdGlvbihiLGQpe3ZhciBlPVtdO0FycmF5LmZyb20oYi5jaGlsZHJlbikuZm9yRWFjaCgoZyxwKT0+e2cubWF0Y2hlcygiLmFpLXJvdGF0ZS1vcHRpb24iKSYmZS5wdXNoKGcpfSk7aWYoMCE9ZS5sZW5ndGgpe2UuZm9yRWFjaCgoZyxwKT0+e2cuc3R5bGUuZGlzcGxheT0ibm9uZSJ9KTtpZihiLmhhc0F0dHJpYnV0ZSgiZGF0YS1uZXh0Iikpe2s9cGFyc2VJbnQoYi5nZXRBdHRyaWJ1dGUoImRhdGEtbmV4dCIpKTt2YXIgYT1lW2tdO2lmKGEuaGFzQXR0cmlidXRlKCJkYXRhLWNvZGUiKSl7dmFyIGY9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxjPSEwO3RyeXt2YXIgaD1mLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChiNjRkKGEuZGF0YXNldC5jb2RlKSl9Y2F0Y2goZyl7Yz0hMX1jJiYoYT1oKX0wIT1hLnF1ZXJ5U2VsZWN0b3JBbGwoInNwYW5bZGF0YS1haS1ncm91cHNdIikubGVuZ3RoJiYwIT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYWktcm90YXRpb24tZ3JvdXBzIikubGVuZ3RoJiYKc2V0VGltZW91dChmdW5jdGlvbigpe0IoKX0sNSl9ZWxzZSBpZihlWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1ncm91cCIpKXt2YXIgaz0tMSx1PVtdO2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNwYW5bZGF0YS1haS1ncm91cHNdIikuZm9yRWFjaCgoZyxwKT0+eyhnLm9mZnNldFdpZHRofHxnLm9mZnNldEhlaWdodHx8Zy5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCkmJnUucHVzaChnKX0pOzE8PXUubGVuZ3RoJiYodGltZWRfZ3JvdXBzPVtdLGdyb3Vwcz1bXSx1LmZvckVhY2goZnVuY3Rpb24oZyxwKXthY3RpdmVfZ3JvdXBzPUpTT04ucGFyc2UoYjY0ZChnLmRhdGFzZXQuYWlHcm91cHMpKTt2YXIgcj0hMTtnPWcuY2xvc2VzdCgiLmFpLXJvdGF0ZSIpO251bGwhPWcmJmcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS10aW1lZC1yb3RhdGlvbiIpJiYocj0hMCk7YWN0aXZlX2dyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKHQsdil7Z3JvdXBzLnB1c2godCk7ciYmdGltZWRfZ3JvdXBzLnB1c2godCl9KX0pLApncm91cHMuZm9yRWFjaChmdW5jdGlvbihnLHApey0xPT1rJiZlLmZvckVhY2goKHIsdCk9Pnt2YXIgdj1iNjRkKHIuZGF0YXNldC5ncm91cCk7b3B0aW9uX2dyb3VwX2l0ZW1zPXYuc3BsaXQoIiwiKTtvcHRpb25fZ3JvdXBfaXRlbXMuZm9yRWFjaChmdW5jdGlvbihDLEUpey0xPT1rJiZDLnRyaW0oKT09ZyYmKGs9dCx0aW1lZF9ncm91cHMuaW5jbHVkZXModikmJmIuY2xhc3NMaXN0LmFkZCgiYWktdGltZWQtcm90YXRpb24iKSl9KX0pfSkpfWVsc2UgaWYoYi5oYXNBdHRyaWJ1dGUoImRhdGEtc2hhcmVzIikpZm9yKGY9SlNPTi5wYXJzZShhdG9iKGIuZGF0YXNldC5zaGFyZXMpKSxhPU1hdGgucm91bmQoMTAwKk1hdGgucmFuZG9tKCkpLGM9MDtjPGYubGVuZ3RoJiYoaz1jLDA+ZltjXXx8IShhPD1mW2NdKSk7YysrKTtlbHNlIGY9Yi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXVuaXF1ZSIpLGE9bmV3IERhdGUsZj8oIm51bWJlciIhPXR5cGVvZiBhaV9yb3RhdGlvbl9zZWVkJiYoYWlfcm90YXRpb25fc2VlZD0KKE1hdGguZmxvb3IoMUUzKk1hdGgucmFuZG9tKCkpK2EuZ2V0TWlsbGlzZWNvbmRzKCkpJWUubGVuZ3RoKSxmPWFpX3JvdGF0aW9uX3NlZWQsZj5lLmxlbmd0aCYmKGYlPWUubGVuZ3RoKSxhPXBhcnNlSW50KGIuZGF0YXNldC5jb3VudGVyKSxhPD1lLmxlbmd0aD8oaz1wYXJzZUludChmK2EtMSksaz49ZS5sZW5ndGgmJihrLT1lLmxlbmd0aCkpOms9ZS5sZW5ndGgpOihrPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSplLmxlbmd0aCksYS5nZXRNaWxsaXNlY29uZHMoKSUyJiYoaz1lLmxlbmd0aC1rLTEpKTtpZihiLmNsYXNzTGlzdC5jb250YWlucygiYWktcm90YXRpb24tc2NoZWR1bGluZyIpKWZvcihrPS0xLGY9MDtmPGUubGVuZ3RoO2YrKylpZihhPWVbZl0sYS5oYXNBdHRyaWJ1dGUoImRhdGEtc2NoZWR1bGluZyIpKXtjPWI2NGQoYS5kYXRhc2V0LnNjaGVkdWxpbmcpO2E9ITA7MD09Yy5pbmRleE9mKCJeIikmJihhPSExLGM9Yy5zdWJzdHJpbmcoMSkpO3ZhciBxPWMuc3BsaXQoIj0iKSwKbT0tMSE9Yy5pbmRleE9mKCIlIik/cVswXS5zcGxpdCgiJSIpOltxWzBdXTtjPW1bMF0udHJpbSgpLnRvTG93ZXJDYXNlKCk7bT0idW5kZWZpbmVkIiE9dHlwZW9mIG1bMV0/bVsxXS50cmltKCk6MDtxPXFbMV0ucmVwbGFjZSgiICIsIiIpO3ZhciBuPShuZXcgRGF0ZSkuZ2V0VGltZSgpO249bmV3IERhdGUobik7dmFyIGw9MDtzd2l0Y2goYyl7Y2FzZSAicyI6bD1uLmdldFNlY29uZHMoKTticmVhaztjYXNlICJpIjpsPW4uZ2V0TWludXRlcygpO2JyZWFrO2Nhc2UgImgiOmw9bi5nZXRIb3VycygpO2JyZWFrO2Nhc2UgImQiOmw9bi5nZXREYXRlKCk7YnJlYWs7Y2FzZSAibSI6bD1uLmdldE1vbnRoKCk7YnJlYWs7Y2FzZSAieSI6bD1uLmdldEZ1bGxZZWFyKCk7YnJlYWs7Y2FzZSAidyI6bD1uLmdldERheSgpLGw9MD09bD82OmwtMX1jPTAhPW0/bCVtOmw7bT1xLnNwbGl0KCIsIik7cT0hYTtmb3Iobj0wO248bS5sZW5ndGg7bisrKWlmKGw9bVtuXSwtMSE9bC5pbmRleE9mKCItIikpe2lmKGw9Cmwuc3BsaXQoIi0iKSxjPj1sWzBdJiZjPD1sWzFdKXtxPWE7YnJlYWt9fWVsc2UgaWYoYz09bCl7cT1hO2JyZWFrfWlmKHEpe2s9ZjticmVha319aWYoISgwPmt8fGs+PWUubGVuZ3RoKSl7YT1lW2tdO3ZhciB6PSIiLHc9Yi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXRpbWVkLXJvdGF0aW9uIik7ZS5mb3JFYWNoKChnLHApPT57Zy5oYXNBdHRyaWJ1dGUoImRhdGEtdGltZSIpJiYodz0hMCl9KTtpZihhLmhhc0F0dHJpYnV0ZSgiZGF0YS10aW1lIikpe2Y9YXRvYihhLmRhdGFzZXQudGltZSk7aWYoMD09ZiYmMTxlLmxlbmd0aCl7Yz1rO2Rve2MrKztjPj1lLmxlbmd0aCYmKGM9MCk7bT1lW2NdO2lmKCFtLmhhc0F0dHJpYnV0ZSgiZGF0YS10aW1lIikpe2s9YzthPWVba107Zj0wO2JyZWFrfW09YXRvYihtLmRhdGFzZXQudGltZSl9d2hpbGUoMD09bSYmYyE9ayk7MCE9ZiYmKGs9YyxhPWVba10sZj1hdG9iKGEuZGF0YXNldC50aW1lKSl9aWYoMDxmJiYoYz1rKzEsYz49ZS5sZW5ndGgmJgooYz0wKSxiLmhhc0F0dHJpYnV0ZSgiZGF0YS1pbmZvIikpKXttPUpTT04ucGFyc2UoYXRvYihiLmRhdGFzZXQuaW5mbykpWzBdO2Iuc2V0QXR0cmlidXRlKCJkYXRhLW5leHQiLGMpO3ZhciB4PSJkaXYuYWktcm90YXRlLmFpLSIrbTthaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmNsdWRlcyh4KSYmKGQ9ITEpO2QmJihhaV9yb3RhdGlvbl90cmlnZ2Vycy5wdXNoKHgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgZz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHgpO2cuZm9yRWFjaCgocCxyKT0+e3AuY2xhc3NMaXN0LmFkZCgiYWktdGltZXIiKX0pO2FpX3Byb2Nlc3Nfcm90YXRpb24oZyl9LDFFMypmKSk7ej0iICgiK2YrIiBzKSJ9fWVsc2UgYS5oYXNBdHRyaWJ1dGUoImRhdGEtZ3JvdXAiKXx8ZS5mb3JFYWNoKChnLHApPT57cCE9ayYmZy5yZW1vdmUoKX0pO2Euc3R5bGUuZGlzcGxheT0iIjthLnN0eWxlLnZpc2liaWxpdHk9IiI7YS5zdHlsZS5wb3NpdGlvbj0iIjthLnN0eWxlLndpZHRoPQoiIjthLnN0eWxlLmhlaWdodD0iIjthLnN0eWxlLnRvcD0iIjthLnN0eWxlLmxlZnQ9IiI7YS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1yb3RhdGUtaGlkZGVuIik7YS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1yb3RhdGUtaGlkZGVuLTIiKTtiLnN0eWxlLnBvc2l0aW9uPSIiO2lmKGEuaGFzQXR0cmlidXRlKCJkYXRhLWNvZGUiKSl7ZS5mb3JFYWNoKChnLHApPT57Zy5pbm5lclRleHQ9IiJ9KTtkPWI2NGQoYS5kYXRhc2V0LmNvZGUpO2Y9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtjPSEwO3RyeXtoPWYuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGQpfWNhdGNoKGcpe2M9ITF9YS5hcHBlbmQoaCk7RCgpfWY9cGFyc2VJbnQoYS5kYXRhc2V0LmluZGV4KTt2YXIgeT1iNjRkKGEuZGF0YXNldC5uYW1lKTtkPWIuY2xvc2VzdCgiLmFpLWRlYnVnLWJsb2NrIik7aWYobnVsbCE9ZCl7aD1kLnF1ZXJ5U2VsZWN0b3JBbGwoImtiZC5haS1vcHRpb24tbmFtZSIpO2Q9ZC5xdWVyeVNlbGVjdG9yQWxsKCIuYWktZGVidWctYmxvY2siKTsKaWYoMCE9ZC5sZW5ndGgpe3ZhciBBPVtdO2QuZm9yRWFjaCgoZyxwKT0+e2cucXVlcnlTZWxlY3RvckFsbCgia2JkLmFpLW9wdGlvbi1uYW1lIikuZm9yRWFjaCgocix0KT0+e0EucHVzaChyKX0pfSk7aD1BcnJheS5mcm9tKGgpO2g9aC5zbGljZSgwLGgubGVuZ3RoLUEubGVuZ3RoKX0wIT1oLmxlbmd0aCYmKHNlcGFyYXRvcj1oWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1zZXBhcmF0b3IiKT9oWzBdLmRhdGFzZXQuc2VwYXJhdG9yOiIiLGguZm9yRWFjaCgoZyxwKT0+e2cuaW5uZXJUZXh0PXNlcGFyYXRvcit5K3p9KSl9ZD0hMTthPWIuY2xvc2VzdCgiLmFpLWFkYi1zaG93Iik7bnVsbCE9YSYmYS5oYXNBdHRyaWJ1dGUoImRhdGEtYWktdHJhY2tpbmciKSYmKGg9SlNPTi5wYXJzZShiNjRkKGEuZ2V0QXR0cmlidXRlKCJkYXRhLWFpLXRyYWNraW5nIikpKSwidW5kZWZpbmVkIiE9PXR5cGVvZiBoJiZoLmNvbnN0cnVjdG9yPT09QXJyYXkmJihoWzFdPWYsaFszXT15LGEuc2V0QXR0cmlidXRlKCJkYXRhLWFpLXRyYWNraW5nIiwKYjY0ZShKU09OLnN0cmluZ2lmeShoKSkpLGEuY2xhc3NMaXN0LmFkZCgiYWktdHJhY2siKSx3JiZhaV90cmFja2luZ19maW5pc2hlZCYmYS5jbGFzc0xpc3QuYWRkKCJhaS1uby1wYWdldmlldyIpLGQ9ITApKTtkfHwoZD1iLmNsb3Nlc3QoImRpdltkYXRhLWFpXSIpLG51bGwhPWQmJmQuaGFzQXR0cmlidXRlKCJkYXRhLWFpIikmJihoPUpTT04ucGFyc2UoYjY0ZChkLmdldEF0dHJpYnV0ZSgiZGF0YS1haSIpKSksInVuZGVmaW5lZCIhPT10eXBlb2YgaCYmaC5jb25zdHJ1Y3Rvcj09PUFycmF5JiYoaFsxXT1mLGhbM109eSxkLnNldEF0dHJpYnV0ZSgiZGF0YS1haSIsYjY0ZShKU09OLnN0cmluZ2lmeShoKSkpLGQuY2xhc3NMaXN0LmFkZCgiYWktdHJhY2siKSx3JiZhaV90cmFja2luZ19maW5pc2hlZCYmZC5jbGFzc0xpc3QuYWRkKCJhaS1uby1wYWdldmlldyIpKSkpfX19O2FpX3Byb2Nlc3Nfcm90YXRpb25zPWZ1bmN0aW9uKCl7ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiZGl2LmFpLXJvdGF0ZSIpLmZvckVhY2goKGIsCmQpPT57YWlfcHJvY2Vzc19yb3RhdGlvbihiKX0pfTtmdW5jdGlvbiBCKCl7ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiZGl2LmFpLXJvdGF0ZS5haS1yb3RhdGlvbi1ncm91cHMiKS5mb3JFYWNoKChiLGQpPT57Yi5jbGFzc0xpc3QuYWRkKCJhaS10aW1lciIpO2FpX3Byb2Nlc3Nfcm90YXRpb24oYil9KX1haV9wcm9jZXNzX3JvdGF0aW9uc19pbl9lbGVtZW50PWZ1bmN0aW9uKGIpe251bGwhPWImJmIucXVlcnlTZWxlY3RvckFsbCgiZGl2LmFpLXJvdGF0ZSIpLmZvckVhY2goKGQsZSk9PnthaV9wcm9jZXNzX3JvdGF0aW9uKGQpfSl9OyhmdW5jdGlvbihiKXsiY29tcGxldGUiPT09ZG9jdW1lbnQucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09ZG9jdW1lbnQucmVhZHlTdGF0ZSYmIWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbD9iKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsYil9KShmdW5jdGlvbigpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXthaV9wcm9jZXNzX3JvdGF0aW9ucygpfSwKMTApfSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITE7ZnVuY3Rpb24gRCgpe2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlfHxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITE7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3Nfcm90YXRpb25zJiZhaV9wcm9jZXNzX3JvdGF0aW9ucygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2xpc3RzJiZhaV9wcm9jZXNzX2xpc3RzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfaXBfYWRkcmVzc2VzJiZhaV9wcm9jZXNzX2lwX2FkZHJlc3NlcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2ZpbHRlcl9ob29rcyYmYWlfcHJvY2Vzc19maWx0ZXJfaG9va3MoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfYWRiX3Byb2Nlc3NfYmxvY2tzJiZhaV9hZGJfcHJvY2Vzc19ibG9ja3MoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19pbXByZXNzaW9ucyYmMT09CmFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9wcm9jZXNzX2ltcHJlc3Npb25zKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xpY2tfdHJhY2tlcnMmJjE9PWFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyYmYWlfaW5zdGFsbF9jbG9zZV9idXR0b25zKGRvY3VtZW50KX0sNSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITB9fTsKOyFmdW5jdGlvbihhLGIpe2EoZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYShhLGIpe3JldHVybiBudWxsIT1hJiZudWxsIT1iJiZhLnRvTG93ZXJDYXNlKCk9PT1iLnRvTG93ZXJDYXNlKCl9ZnVuY3Rpb24gYyhhLGIpe3ZhciBjLGQsZT1hLmxlbmd0aDtpZighZXx8IWIpcmV0dXJuITE7Zm9yKGM9Yi50b0xvd2VyQ2FzZSgpLGQ9MDtkPGU7KytkKWlmKGM9PT1hW2RdLnRvTG93ZXJDYXNlKCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZChhKXtmb3IodmFyIGIgaW4gYSlpLmNhbGwoYSxiKSYmKGFbYl09bmV3IFJlZ0V4cChhW2JdLCJpIikpfWZ1bmN0aW9uIGUoYSl7cmV0dXJuKGF8fCIiKS5zdWJzdHIoMCw1MDApfWZ1bmN0aW9uIGYoYSxiKXt0aGlzLnVhPWUoYSksdGhpcy5fY2FjaGU9e30sdGhpcy5tYXhQaG9uZVdpZHRoPWJ8fDYwMH12YXIgZz17fTtnLm1vYmlsZURldGVjdFJ1bGVzPXtwaG9uZXM6e2lQaG9uZToiXFxiaVBob25lXFxifFxcYmlQb2RcXGIiLEJsYWNrQmVycnk6IkJsYWNrQmVycnl8XFxiQkIxMFxcYnxyaW1bMC05XSt8XFxiKEJCQTEwMHxCQkIxMDB8QkJEMTAwfEJCRTEwMHxCQkYxMDB8U1RIMTAwKVxcYi1bMC05XSsiLFBpeGVsOiI7IFxcYlBpeGVsXFxiIixIVEM6IkhUQ3xIVEMuKihTZW5zYXRpb258RXZvfFZpc2lvbnxFeHBsb3Jlcnw2ODAwfDgxMDB8ODkwMHxBNzI3MnxTNTEwZXxDMTEwZXxMZWdlbmR8RGVzaXJlfFQ4MjgyKXxBUFg1MTVDS1R8UXRlazkwOTB8QVBBOTI5MktUfEhEX21pbml8U2Vuc2F0aW9uLipaNzEwZXxQRzg2MTAwfFo3MTVlfERlc2lyZS4qKEE4MTgxfEhEKXxBRFI2MjAwfEFEUjY0MDBMfEFEUjY0MjV8MDAxSFR8SW5zcGlyZSA0R3xBbmRyb2lkLipcXGJFVk9cXGJ8VC1Nb2JpbGUgRzF8WjUyMG18QW5kcm9pZCBbMC05Ll0rOyBQaXhlbCIsTmV4dXM6Ik5leHVzIE9uZXxOZXh1cyBTfEdhbGF4eS4qTmV4dXN8QW5kcm9pZC4qTmV4dXMuKk1vYmlsZXxOZXh1cyA0fE5leHVzIDV8TmV4dXMgNVh8TmV4dXMgNiIsRGVsbDoiRGVsbFs7XT8gKFN0cmVha3xBZXJvfFZlbnVlfFZlbnVlIFByb3xGbGFzaHxTbW9rZXxNaW5pIDNpWCl8WENEMjh8WENEMzV8XFxiMDAxRExcXGJ8XFxiMTAxRExcXGJ8XFxiR1MwMVxcYiIsTW90b3JvbGE6Ik1vdG9yb2xhfERST0lEWHxEUk9JRCBCSU9OSUN8XFxiRHJvaWRcXGIuKkJ1aWxkfEFuZHJvaWQuKlhvb218SFJJMzl8TU9ULXxBMTI2MHxBMTY4MHxBNTU1fEE4NTN8QTg1NXxBOTUzfEE5NTV8QTk1NnxNb3Rvcm9sYS4qRUxFQ1RSSUZZfE1vdG9yb2xhLippMXxpODY3fGk5NDB8TUIyMDB8TUIzMDB8TUI1MDF8TUI1MDJ8TUI1MDh8TUI1MTF8TUI1MjB8TUI1MjV8TUI1MjZ8TUI2MTF8TUI2MTJ8TUI2MzJ8TUI4MTB8TUI4NTV8TUI4NjB8TUI4NjF8TUI4NjV8TUI4NzB8TUU1MDF8TUU1MDJ8TUU1MTF8TUU1MjV8TUU2MDB8TUU2MzJ8TUU3MjJ8TUU4MTF8TUU4NjB8TUU4NjN8TUU4NjV8TVQ2MjB8TVQ3MTB8TVQ3MTZ8TVQ3MjB8TVQ4MTB8TVQ4NzB8TVQ5MTd8TW90b3JvbGEuKlRJVEFOSVVNfFdYNDM1fFdYNDQ1fFhUMzAwfFhUMzAxfFhUMzExfFhUMzE2fFhUMzE3fFhUMzE5fFhUMzIwfFhUMzkwfFhUNTAyfFhUNTMwfFhUNTMxfFhUNTMyfFhUNTM1fFhUNjAzfFhUNjEwfFhUNjExfFhUNjE1fFhUNjgxfFhUNzAxfFhUNzAyfFhUNzExfFhUNzIwfFhUODAwfFhUODA2fFhUODYwfFhUODYyfFhUODc1fFhUODgyfFhUODgzfFhUODk0fFhUOTAxfFhUOTA3fFhUOTA5fFhUOTEwfFhUOTEyfFhUOTI4fFhUOTI2fFhUOTE1fFhUOTE5fFhUOTI1fFhUMTAyMXxcXGJNb3RvIEVcXGJ8WFQxMDY4fFhUMTA5MnxYVDEwNTIiLFNhbXN1bmc6IlxcYlNhbXN1bmdcXGJ8U00tRzk1MEZ8U00tRzk1NUZ8U00tRzkyNTB8R1QtMTkzMDB8U0dILUkzMzd8QkdULVM1MjMwfEdULUIyMTAwfEdULUIyNzAwfEdULUIyNzEwfEdULUIzMjEwfEdULUIzMzEwfEdULUIzNDEwfEdULUIzNzMwfEdULUIzNzQwfEdULUI1NTEwfEdULUI1NTEyfEdULUI1NzIyfEdULUI2NTIwfEdULUI3MzAwfEdULUI3MzIwfEdULUI3MzMwfEdULUI3MzUwfEdULUI3NTEwfEdULUI3NzIyfEdULUI3ODAwfEdULUMzMDEwfEdULUMzMDExfEdULUMzMDYwfEdULUMzMjAwfEdULUMzMjEyfEdULUMzMjEySXxHVC1DMzI2MnxHVC1DMzIyMnxHVC1DMzMwMHxHVC1DMzMwMEt8R1QtQzMzMDN8R1QtQzMzMDNLfEdULUMzMzEwfEdULUMzMzIyfEdULUMzMzMwfEdULUMzMzUwfEdULUMzNTAwfEdULUMzNTEwfEdULUMzNTMwfEdULUMzNjMwfEdULUMzNzgwfEdULUM1MDEwfEdULUM1MjEyfEdULUM2NjIwfEdULUM2NjI1fEdULUM2NzEyfEdULUUxMDUwfEdULUUxMDcwfEdULUUxMDc1fEdULUUxMDgwfEdULUUxMDgxfEdULUUxMDg1fEdULUUxMDg3fEdULUUxMTAwfEdULUUxMTA3fEdULUUxMTEwfEdULUUxMTIwfEdULUUxMTI1fEdULUUxMTMwfEdULUUxMTYwfEdULUUxMTcwfEdULUUxMTc1fEdULUUxMTgwfEdULUUxMTgyfEdULUUxMjAwfEdULUUxMjEwfEdULUUxMjI1fEdULUUxMjMwfEdULUUxMzkwfEdULUUyMTAwfEdULUUyMTIwfEdULUUyMTIxfEdULUUyMTUyfEdULUUyMjIwfEdULUUyMjIyfEdULUUyMjMwfEdULUUyMjMyfEdULUUyMjUwfEdULUUyMzcwfEdULUUyNTUwfEdULUUyNjUyfEdULUUzMjEwfEdULUUzMjEzfEdULUk1NTAwfEdULUk1NTAzfEdULUk1NzAwfEdULUk1ODAwfEdULUk1ODAxfEdULUk2NDEwfEdULUk2NDIwfEdULUk3MTEwfEdULUk3NDEwfEdULUk3NTAwfEdULUk4MDAwfEdULUk4MTUwfEdULUk4MTYwfEdULUk4MTkwfEdULUk4MzIwfEdULUk4MzMwfEdULUk4MzUwfEdULUk4NTMwfEdULUk4NzAwfEdULUk4NzAzfEdULUk4OTEwfEdULUk5MDAwfEdULUk5MDAxfEdULUk5MDAzfEdULUk5MDEwfEdULUk5MDIwfEdULUk5MDIzfEdULUk5MDcwfEdULUk5MDgyfEdULUk5MTAwfEdULUk5MTAzfEdULUk5MjIwfEdULUk5MjUwfEdULUk5MzAwfEdULUk5MzA1fEdULUk5NTAwfEdULUk5NTA1fEdULU0zNTEwfEdULU01NjUwfEdULU03NTAwfEdULU03NjAwfEdULU03NjAzfEdULU04ODAwfEdULU04OTEwfEdULU43MDAwfEdULVMzMTEwfEdULVMzMzEwfEdULVMzMzUwfEdULVMzMzUzfEdULVMzMzcwfEdULVMzNjUwfEdULVMzNjUzfEdULVMzNzcwfEdULVMzODUwfEdULVM1MjEwfEdULVM1MjIwfEdULVM1MjI5fEdULVM1MjMwfEdULVM1MjMzfEdULVM1MjUwfEdULVM1MjUzfEdULVM1MjYwfEdULVM1MjYzfEdULVM1MjcwfEdULVM1MzAwfEdULVM1MzMwfEdULVM1MzUwfEdULVM1MzYwfEdULVM1MzYzfEdULVM1MzY5fEdULVM1MzgwfEdULVM1MzgwRHxHVC1TNTU2MHxHVC1TNTU3MHxHVC1TNTYwMHxHVC1TNTYwM3xHVC1TNTYxMHxHVC1TNTYyMHxHVC1TNTY2MHxHVC1TNTY3MHxHVC1TNTY5MHxHVC1TNTc1MHxHVC1TNTc4MHxHVC1TNTgzMHxHVC1TNTgzOXxHVC1TNjEwMnxHVC1TNjUwMHxHVC1TNzA3MHxHVC1TNzIwMHxHVC1TNzIyMHxHVC1TNzIzMHxHVC1TNzIzM3xHVC1TNzI1MHxHVC1TNzUwMHxHVC1TNzUzMHxHVC1TNzU1MHxHVC1TNzU2MnxHVC1TNzcxMHxHVC1TODAwMHxHVC1TODAwM3xHVC1TODUwMHxHVC1TODUzMHxHVC1TODYwMHxTQ0gtQTMxMHxTQ0gtQTUzMHxTQ0gtQTU3MHxTQ0gtQTYxMHxTQ0gtQTYzMHxTQ0gtQTY1MHxTQ0gtQTc5MHxTQ0gtQTc5NXxTQ0gtQTg1MHxTQ0gtQTg3MHxTQ0gtQTg5MHxTQ0gtQTkzMHxTQ0gtQTk1MHxTQ0gtQTk3MHxTQ0gtQTk5MHxTQ0gtSTEwMHxTQ0gtSTExMHxTQ0gtSTQwMHxTQ0gtSTQwNXxTQ0gtSTUwMHxTQ0gtSTUxMHxTQ0gtSTUxNXxTQ0gtSTYwMHxTQ0gtSTczMHxTQ0gtSTc2MHxTQ0gtSTc3MHxTQ0gtSTgzMHxTQ0gtSTkxMHxTQ0gtSTkyMHxTQ0gtSTk1OXxTQ0gtTEMxMXxTQ0gtTjE1MHxTQ0gtTjMwMHxTQ0gtUjEwMHxTQ0gtUjMwMHxTQ0gtUjM1MXxTQ0gtUjQwMHxTQ0gtUjQxMHxTQ0gtVDMwMHxTQ0gtVTMxMHxTQ0gtVTMyMHxTQ0gtVTM1MHxTQ0gtVTM2MHxTQ0gtVTM2NXxTQ0gtVTM3MHxTQ0gtVTM4MHxTQ0gtVTQxMHxTQ0gtVTQzMHxTQ0gtVTQ1MHxTQ0gtVTQ2MHxTQ0gtVTQ3MHxTQ0gtVTQ5MHxTQ0gtVTU0MHxTQ0gtVTU1MHxTQ0gtVTYyMHxTQ0gtVTY0MHxTQ0gtVTY1MHxTQ0gtVTY2MHxTQ0gtVTcwMHxTQ0gtVTc0MHxTQ0gtVTc1MHxTQ0gtVTgxMHxTQ0gtVTgyMHxTQ0gtVTkwMHxTQ0gtVTk0MHxTQ0gtVTk2MHxTQ1MtMjZVQ3xTR0gtQTEwN3xTR0gtQTExN3xTR0gtQTEyN3xTR0gtQTEzN3xTR0gtQTE1N3xTR0gtQTE2N3xTR0gtQTE3N3xTR0gtQTE4N3xTR0gtQTE5N3xTR0gtQTIyN3xTR0gtQTIzN3xTR0gtQTI1N3xTR0gtQTQzN3xTR0gtQTUxN3xTR0gtQTU5N3xTR0gtQTYzN3xTR0gtQTY1N3xTR0gtQTY2N3xTR0gtQTY4N3xTR0gtQTY5N3xTR0gtQTcwN3xTR0gtQTcxN3xTR0gtQTcyN3xTR0gtQTczN3xTR0gtQTc0N3xTR0gtQTc2N3xTR0gtQTc3N3xTR0gtQTc5N3xTR0gtQTgxN3xTR0gtQTgyN3xTR0gtQTgzN3xTR0gtQTg0N3xTR0gtQTg2N3xTR0gtQTg3N3xTR0gtQTg4N3xTR0gtQTg5N3xTR0gtQTkyN3xTR0gtQjEwMHxTR0gtQjEzMHxTR0gtQjIwMHxTR0gtQjIyMHxTR0gtQzEwMHxTR0gtQzExMHxTR0gtQzEyMHxTR0gtQzEzMHxTR0gtQzE0MHxTR0gtQzE2MHxTR0gtQzE3MHxTR0gtQzE4MHxTR0gtQzIwMHxTR0gtQzIwN3xTR0gtQzIxMHxTR0gtQzIyNXxTR0gtQzIzMHxTR0gtQzQxN3xTR0gtQzQ1MHxTR0gtRDMwN3xTR0gtRDM0N3xTR0gtRDM1N3xTR0gtRDQwN3xTR0gtRDQxNXxTR0gtRDc4MHxTR0gtRDgwN3xTR0gtRDk4MHxTR0gtRTEwNXxTR0gtRTIwMHxTR0gtRTMxNXxTR0gtRTMxNnxTR0gtRTMxN3xTR0gtRTMzNXxTR0gtRTU5MHxTR0gtRTYzNXxTR0gtRTcxNXxTR0gtRTg5MHxTR0gtRjMwMHxTR0gtRjQ4MHxTR0gtSTIwMHxTR0gtSTMwMHxTR0gtSTMyMHxTR0gtSTU1MHxTR0gtSTU3N3xTR0gtSTYwMHxTR0gtSTYwN3xTR0gtSTYxN3xTR0gtSTYyN3xTR0gtSTYzN3xTR0gtSTY3N3xTR0gtSTcwMHxTR0gtSTcxN3xTR0gtSTcyN3xTR0gtaTc0N018U0dILUk3Nzd8U0dILUk3ODB8U0dILUk4Mjd8U0dILUk4NDd8U0dILUk4NTd8U0dILUk4OTZ8U0dILUk4OTd8U0dILUk5MDB8U0dILUk5MDd8U0dILUk5MTd8U0dILUk5Mjd8U0dILUk5Mzd8U0dILUk5OTd8U0dILUoxNTB8U0dILUoyMDB8U0dILUwxNzB8U0dILUw3MDB8U0dILU0xMTB8U0dILU0xNTB8U0dILU0yMDB8U0dILU4xMDV8U0dILU41MDB8U0dILU42MDB8U0dILU42MjB8U0dILU42MjV8U0dILU43MDB8U0dILU43MTB8U0dILVAxMDd8U0dILVAyMDd8U0dILVAzMDB8U0dILVAzMTB8U0dILVA1MjB8U0dILVA3MzV8U0dILVA3Nzd8U0dILVExMDV8U0dILVIyMTB8U0dILVIyMjB8U0dILVIyMjV8U0dILVMxMDV8U0dILVMzMDd8U0dILVQxMDl8U0dILVQxMTl8U0dILVQxMzl8U0dILVQyMDl8U0dILVQyMTl8U0dILVQyMjl8U0dILVQyMzl8U0dILVQyNDl8U0dILVQyNTl8U0dILVQzMDl8U0dILVQzMTl8U0dILVQzMjl8U0dILVQzMzl8U0dILVQzNDl8U0dILVQzNTl8U0dILVQzNjl8U0dILVQzNzl8U0dILVQ0MDl8U0dILVQ0Mjl8U0dILVQ0Mzl8U0dILVQ0NTl8U0dILVQ0Njl8U0dILVQ0Nzl8U0dILVQ0OTl8U0dILVQ1MDl8U0dILVQ1MTl8U0dILVQ1Mzl8U0dILVQ1NTl8U0dILVQ1ODl8U0dILVQ2MDl8U0dILVQ2MTl8U0dILVQ2Mjl8U0dILVQ2Mzl8U0dILVQ2NTl8U0dILVQ2Njl8U0dILVQ2Nzl8U0dILVQ3MDl8U0dILVQ3MTl8U0dILVQ3Mjl8U0dILVQ3Mzl8U0dILVQ3NDZ8U0dILVQ3NDl8U0dILVQ3NTl8U0dILVQ3Njl8U0dILVQ4MDl8U0dILVQ4MTl8U0dILVQ4Mzl8U0dILVQ5MTl8U0dILVQ5Mjl8U0dILVQ5Mzl8U0dILVQ5NTl8U0dILVQ5ODl8U0dILVUxMDB8U0dILVUyMDB8U0dILVU4MDB8U0dILVYyMDV8U0dILVYyMDZ8U0dILVgxMDB8U0dILVgxMDV8U0dILVgxMjB8U0dILVgxNDB8U0dILVg0MjZ8U0dILVg0Mjd8U0dILVg0NzV8U0dILVg0OTV8U0dILVg0OTd8U0dILVg1MDd8U0dILVg2MDB8U0dILVg2MTB8U0dILVg2MjB8U0dILVg2MzB8U0dILVg3MDB8U0dILVg4MjB8U0dILVg4OTB8U0dILVoxMzB8U0dILVoxNTB8U0dILVoxNzB8U0dILVpYMTB8U0dILVpYMjB8U0hXLU0xMTB8U1BILUExMjB8U1BILUE0MDB8U1BILUE0MjB8U1BILUE0NjB8U1BILUE1MDB8U1BILUE1NjB8U1BILUE2MDB8U1BILUE2MjB8U1BILUE2NjB8U1BILUE3MDB8U1BILUE3NDB8U1BILUE3NjB8U1BILUE3OTB8U1BILUE4MDB8U1BILUE4MjB8U1BILUE4NDB8U1BILUE4ODB8U1BILUE5MDB8U1BILUE5NDB8U1BILUE5NjB8U1BILUQ2MDB8U1BILUQ3MDB8U1BILUQ3MTB8U1BILUQ3MjB8U1BILUkzMDB8U1BILUkzMjV8U1BILUkzMzB8U1BILUkzNTB8U1BILUk1MDB8U1BILUk2MDB8U1BILUk3MDB8U1BILUw3MDB8U1BILU0xMDB8U1BILU0yMjB8U1BILU0yNDB8U1BILU0zMDB8U1BILU0zMDV8U1BILU0zMjB8U1BILU0zMzB8U1BILU0zNTB8U1BILU0zNjB8U1BILU0zNzB8U1BILU0zODB8U1BILU01MTB8U1BILU01NDB8U1BILU01NTB8U1BILU01NjB8U1BILU01NzB8U1BILU01ODB8U1BILU02MTB8U1BILU02MjB8U1BILU02MzB8U1BILU04MDB8U1BILU04MTB8U1BILU04NTB8U1BILU05MDB8U1BILU05MTB8U1BILU05MjB8U1BILU05MzB8U1BILU4xMDB8U1BILU4yMDB8U1BILU4yNDB8U1BILU4zMDB8U1BILU40MDB8U1BILVo0MDB8U1dDLUUxMDB8U0NILWk5MDl8R1QtTjcxMDB8R1QtTjcxMDV8U0NILUk1MzV8U00tTjkwMEF8U0dILUkzMTd8U0dILVQ5OTlMfEdULVM1MzYwQnxHVC1JODI2MnxHVC1TNjgwMnxHVC1TNjMxMnxHVC1TNjMxMHxHVC1TNTMxMnxHVC1TNTMxMHxHVC1JOTEwNXxHVC1JODUxMHxHVC1TNjc5ME58U00tRzcxMDV8U00tTjkwMDV8R1QtUzUzMDF8R1QtSTkyOTV8R1QtSTkxOTV8U00tQzEwMXxHVC1TNzM5MnxHVC1TNzU2MHxHVC1CNzYxMHxHVC1JNTUxMHxHVC1TNzU4MnxHVC1TNzUzMEV8R1QtSTg3NTB8U00tRzkwMDZWfFNNLUc5MDA4VnxTTS1HOTAwOUR8U00tRzkwMEF8U00tRzkwMER8U00tRzkwMEZ8U00tRzkwMEh8U00tRzkwMEl8U00tRzkwMEp8U00tRzkwMEt8U00tRzkwMEx8U00tRzkwME18U00tRzkwMFB8U00tRzkwMFI0fFNNLUc5MDBTfFNNLUc5MDBUfFNNLUc5MDBWfFNNLUc5MDBXOHxTSFYtRTE2MEt8U0NILVA3MDl8U0NILVA3Mjl8U00tVDI1NTh8R1QtSTkyMDV8U00tRzkzNTB8U00tSjEyMEZ8U00tRzkyMEZ8U00tRzkyMFZ8U00tRzkzMEZ8U00tTjkxMEN8U00tQTMxMEZ8R1QtSTkxOTB8U00tSjUwMEZOfFNNLUc5MDNGfFNNLUozMzBGfFNNLUc2MTBGfFNNLUc5ODFCfFNNLUc4OTJBfFNNLUE1MzBGIixMRzoiXFxiTEdcXGI7fExHWy0gXT8oQzgwMHxDOTAwfEU0MDB8RTYxMHxFOTAwfEUtOTAwfEYxNjB8RjE4MEt8RjE4MEx8RjE4MFN8NzMwfDg1NXxMMTYwfExTNzQwfExTODQwfExTOTcwfExVNjIwMHxNUzY5MHxNUzY5NXxNUzc3MHxNUzg0MHxNUzg3MHxNUzkxMHxQNTAwfFA3MDB8UDcwNXxWTTY5NnxBUzY4MHxBUzY5NXxBWDg0MHxDNzI5fEU5NzB8R1M1MDV8MjcyfEMzOTV8RTczOUJLfEU5NjB8TDU1Q3xMNzVDfExTNjk2fExTODYwfFA3NjlCS3xQMzUwfFA1MDB8UDUwOXxQODcwfFVOMjcyfFVTNzMwfFZTODQwfFZTOTUwfExOMjcyfExONTEwfExTNjcwfExTODU1fExXNjkwfE1OMjcwfE1ONTEwfFA1MDl8UDc2OXxQOTMwfFVOMjAwfFVOMjcwfFVONTEwfFVONjEwfFVTNjcwfFVTNzQwfFVTNzYwfFVYMjY1fFVYODQwfFZOMjcxfFZONTMwfFZTNjYwfFZTNzAwfFZTNzQwfFZTNzUwfFZTOTEwfFZTOTIwfFZTOTMwfFZYOTIwMHxWWDExMDAwfEFYODQwQXxMVzc3MHxQNTA2fFA5MjV8UDk5OXxFNjEyfEQ5NTV8RDgwMnxNUzMyM3xNMjU3KXxMTS1HNzEwIixTb255OiJTb255U1R8U29ueUxUfFNvbnlFcmljc3NvbnxTb255RXJpY3Nzb25MVDE1aXZ8TFQxOGl8RTEwaXxMVDI4aHxMVDI2d3xTb255RXJpY3Nzb25NVDI3aXxDNTMwM3xDNjkwMnxDNjkwM3xDNjkwNnxDNjk0M3xEMjUzM3xTT1YzNHw2MDFTT3xGODMzMiIsQXN1czoiQXN1cy4qR2FsYXh5fFBhZEZvbmUuKk1vYmlsZSIsWGlhb21pOiJeKD8hLipcXGJ4MTFcXGIpLip4aWFvbWkuKiR8UE9DT1BIT05FIEYxfE1JIDh8UmVkbWkgTm90ZSA5U3xSZWRtaSBOb3RlIDVBIFByaW1lfE4yRzQ3SHxNMjAwMUoyR3xNMjAwMUoySXxNMTgwNUUxMEF8TTIwMDRKMTFHfE0xOTAyRjFHfE0yMDAySjlHfE0yMDA0SjE5R3xNMjAwM0o2QTFHIixOb2tpYUx1bWlhOiJMdW1pYSBbMC05XXszLDR9IixNaWNyb21heDoiTWljcm9tYXguKlxcYihBMjEwfEE5MnxBODh8QTcyfEExMTF8QTExMFF8QTExNXxBMTE2fEExMTB8QTkwU3xBMjZ8QTUxfEEzNXxBNTR8QTI1fEEyN3xBODl8QTY4fEE2NXxBNTd8QTkwKVxcYiIsUGFsbToiUGFsbVNvdXJjZXxQYWxtIixWZXJ0dToiVmVydHV8VmVydHUuKkx0ZHxWZXJ0dS4qQXNjZW50fFZlcnR1LipBeXh0YXxWZXJ0dS4qQ29uc3RlbGxhdGlvbihGfFF1ZXN0KT98VmVydHUuKk1vbmlrYXxWZXJ0dS4qU2lnbmF0dXJlIixQYW50ZWNoOiJQQU5URUNIfElNLUE4NTBTfElNLUE4NDBTfElNLUE4MzBMfElNLUE4MzBLfElNLUE4MzBTfElNLUE4MjBMfElNLUE4MTBLfElNLUE4MTBTfElNLUE4MDBTfElNLVQxMDBLfElNLUE3MjVMfElNLUE3ODBMfElNLUE3NzVDfElNLUE3NzBLfElNLUE3NjBTfElNLUE3NTBLfElNLUE3NDBTfElNLUE3MzBTfElNLUE3MjBMfElNLUE3MTBLfElNLUE2OTBMfElNLUE2OTBTfElNLUE2NTBTfElNLUE2MzBLfElNLUE2MDBTfFZFR0EgUFRMMjF8UFQwMDN8UDgwMTB8QURSOTEwTHxQNjAzMHxQNjAyMHxQOTA3MHxQNDEwMHxQOTA2MHxQNTAwMHxDRE04OTkyfFRYVDgwNDV8QURSODk5NXxJUzExUFR8UDIwMzB8UDYwMTB8UDgwMDB8UFQwMDJ8SVMwNnxDRE04OTk5fFA5MDUwfFBUMDAxfFRYVDgwNDB8UDIwMjB8UDkwMjB8UDIwMDB8UDcwNDB8UDcwMDB8Qzc5MCIsRmx5OiJJUTIzMHxJUTQ0NHxJUTQ1MHxJUTQ0MHxJUTQ0MnxJUTQ0MXxJUTI0NXxJUTI1NnxJUTIzNnxJUTI1NXxJUTIzNXxJUTI0NXxJUTI3NXxJUTI0MHxJUTI4NXxJUTI4MHxJUTI3MHxJUTI2MHxJUTI1MCIsV2lrbzoiS0lURSA0R3xISUdIV0FZfEdFVEFXQVl8U1RBSVJXQVl8REFSS1NJREV8REFSS0ZVTEx8REFSS05JR0hUfERBUktNT09OfFNMSURFfFdBWCA0R3xSQUlOQk9XfEJMT09NfFNVTlNFVHxHT0EoPyFubmEpfExFTk5ZfEJBUlJZfElHR1l8T1paWXxDSU5LIEZJVkV8Q0lOSyBQRUFYfENJTksgUEVBWCAyfENJTksgU0xJTXxDSU5LIFNMSU0gMnxDSU5LICt8Q0lOSyBLSU5HfENJTksgUEVBWHxDSU5LIFNMSU18U1VCTElNIixpTW9iaWxlOiJpLW1vYmlsZSAoSVF8aS1TVFlMRXxpZGVhfFpBQXxIaXR6KSIsU2ltVmFsbGV5OiJcXGIoU1AtODB8WFQtOTMwfFNYLTM0MHxYVC05MzB8U1gtMzEwfFNQLTM2MHxTUDYwfFNQVC04MDB8U1AtMTIwfFNQVC04MDB8U1AtMTQwfFNQWC01fFNQWC04fFNQLTEwMHxTUFgtOHxTUFgtMTIpXFxiIixXb2xmZ2FuZzoiQVQtQjI0RHxBVC1BUzUwSER8QVQtQVM0MFd8QVQtQVM1NUhEfEFULUFTNDVxMnxBVC1CMjZEfEFULUFTNTBRIixBbGNhdGVsOiJBbGNhdGVsIixOaW50ZW5kbzoiTmludGVuZG8gKDNEU3xTd2l0Y2gpIixBbW9pOiJBbW9pIixJTlE6IklOUSIsT25lUGx1czoiT05FUExVUyIsR2VuZXJpY1Bob25lOiJUYXBhdGFsa3xQREE7fFNBR0VNfFxcYm1tcFxcYnxwb2NrZXR8XFxicHNwXFxifHN5bWJpYW58U21hcnRwaG9uZXxzbWFydGZvbnx0cmVvfHVwLmJyb3dzZXJ8dXAubGlua3x2b2RhZm9uZXxcXGJ3YXBcXGJ8bm9raWF8U2VyaWVzNDB8U2VyaWVzNjB8UzYwfFNvbnlFcmljc3NvbnxOOTAwfE1BVUkuKldBUC4qQnJvd3NlciJ9LHRhYmxldHM6e2lQYWQ6ImlQYWR8aVBhZC4qTW9iaWxlIixOZXh1c1RhYmxldDoiQW5kcm9pZC4qTmV4dXNbXFxzXSsoN3w5fDEwKSIsR29vZ2xlVGFibGV0OiJBbmRyb2lkLipQaXhlbCBDIixTYW1zdW5nVGFibGV0OiJTQU1TVU5HLipUYWJsZXR8R2FsYXh5LipUYWJ8U0MtMDFDfEdULVAxMDAwfEdULVAxMDAzfEdULVAxMDEwfEdULVAzMTA1fEdULVA2MjEwfEdULVA2ODAwfEdULVA2ODEwfEdULVA3MTAwfEdULVA3MzAwfEdULVA3MzEwfEdULVA3NTAwfEdULVA3NTEwfFNDSC1JODAwfFNDSC1JODE1fFNDSC1JOTA1fFNHSC1JOTU3fFNHSC1JOTg3fFNHSC1UODQ5fFNHSC1UODU5fFNHSC1UODY5fFNQSC1QMTAwfEdULVAzMTAwfEdULVAzMTA4fEdULVAzMTEwfEdULVA1MTAwfEdULVA1MTEwfEdULVA2MjAwfEdULVA3MzIwfEdULVA3NTExfEdULU44MDAwfEdULVA4NTEwfFNHSC1JNDk3fFNQSC1QNTAwfFNHSC1UNzc5fFNDSC1JNzA1fFNDSC1JOTE1fEdULU44MDEzfEdULVAzMTEzfEdULVA1MTEzfEdULVA4MTEwfEdULU44MDEwfEdULU44MDA1fEdULU44MDIwfEdULVAxMDEzfEdULVA2MjAxfEdULVA3NTAxfEdULU41MTAwfEdULU41MTA1fEdULU41MTEwfFNIVi1FMTQwS3xTSFYtRTE0MEx8U0hWLUUxNDBTfFNIVi1FMTUwU3xTSFYtRTIzMEt8U0hWLUUyMzBMfFNIVi1FMjMwU3xTSFctTTE4MEt8U0hXLU0xODBMfFNIVy1NMTgwU3xTSFctTTE4MFd8U0hXLU0zMDBXfFNIVy1NMzA1V3xTSFctTTM4MEt8U0hXLU0zODBTfFNIVy1NMzgwV3xTSFctTTQzMFd8U0hXLU00ODBLfFNIVy1NNDgwU3xTSFctTTQ4MFd8U0hXLU00ODVXfFNIVy1NNDg2V3xTSFctTTUwMFd8R1QtSTkyMjh8U0NILVA3Mzl8U0NILUk5MjV8R1QtSTkyMDB8R1QtUDUyMDB8R1QtUDUyMTB8R1QtUDUyMTBYfFNNLVQzMTF8U00tVDMxMHxTTS1UMzEwWHxTTS1UMjEwfFNNLVQyMTBSfFNNLVQyMTF8U00tUDYwMHxTTS1QNjAxfFNNLVA2MDV8U00tUDkwMHxTTS1QOTAxfFNNLVQyMTd8U00tVDIxN0F8U00tVDIxN1N8U00tUDYwMDB8U00tVDMxMDB8U0dILUk0Njd8WEU1MDB8U00tVDExMHxHVC1QNTIyMHxHVC1JOTIwMFh8R1QtTjUxMTBYfEdULU41MTIwfFNNLVA5MDV8U00tVDExMXxTTS1UMjEwNXxTTS1UMzE1fFNNLVQzMjB8U00tVDMyMFh8U00tVDMyMXxTTS1UNTIwfFNNLVQ1MjV8U00tVDUzME5VfFNNLVQyMzBOVXxTTS1UMzMwTlV8U00tVDkwMHxYRTUwMFQxQ3xTTS1QNjA1VnxTTS1QOTA1VnxTTS1UMzM3VnxTTS1UNTM3VnxTTS1UNzA3VnxTTS1UODA3VnxTTS1QNjAwWHxTTS1QOTAwWHxTTS1UMjEwWHxTTS1UMjMwfFNNLVQyMzBYfFNNLVQzMjV8R1QtUDc1MDN8U00tVDUzMXxTTS1UMzMwfFNNLVQ1MzB8U00tVDcwNXxTTS1UNzA1Q3xTTS1UNTM1fFNNLVQzMzF8U00tVDgwMHxTTS1UNzAwfFNNLVQ1Mzd8U00tVDgwN3xTTS1QOTA3QXxTTS1UMzM3QXxTTS1UNTM3QXxTTS1UNzA3QXxTTS1UODA3QXxTTS1UMjM3fFNNLVQ4MDdQfFNNLVA2MDdUfFNNLVQyMTdUfFNNLVQzMzdUfFNNLVQ4MDdUfFNNLVQxMTZOUXxTTS1UMTE2QlV8U00tUDU1MHxTTS1UMzUwfFNNLVQ1NTB8U00tVDkwMDB8U00tUDkwMDB8U00tVDcwNVl8U00tVDgwNXxHVC1QMzExM3xTTS1UNzEwfFNNLVQ4MTB8U00tVDgxNXxTTS1UMzYwfFNNLVQ1MzN8U00tVDExM3xTTS1UMzM1fFNNLVQ3MTV8U00tVDU2MHxTTS1UNjcwfFNNLVQ2Nzd8U00tVDM3N3xTTS1UNTY3fFNNLVQzNTdUfFNNLVQ1NTV8U00tVDU2MXxTTS1UNzEzfFNNLVQ3MTl8U00tVDgxM3xTTS1UODE5fFNNLVQ1ODB8U00tVDM1NVk/fFNNLVQyODB8U00tVDgxN0F8U00tVDgyMHxTTS1XNzAwfFNNLVA1ODB8U00tVDU4N3xTTS1QMzUwfFNNLVA1NTVNfFNNLVAzNTVNfFNNLVQxMTNOVXxTTS1UODE1WXxTTS1UNTg1fFNNLVQyODV8U00tVDgyNXxTTS1XNzA4fFNNLVQ4MzV8U00tVDgzMHxTTS1UODM3VnxTTS1UNzIwfFNNLVQ1MTB8U00tVDM4N1Z8U00tUDYxMHxTTS1UMjkwfFNNLVQ1MTV8U00tVDU5MHxTTS1UNTk1fFNNLVQ3MjV8U00tVDgxN1B8U00tUDU4NU4wfFNNLVQzOTV8U00tVDI5NXxTTS1UODY1fFNNLVA2MTBOfFNNLVA2MTV8U00tVDk3MHxTTS1UMzgwfFNNLVQ1OTUwfFNNLVQ5MDV8U00tVDIzMXxTTS1UNTAwfFNNLVQ4NjAiLEtpbmRsZToiS2luZGxlfFNpbGsuKkFjY2VsZXJhdGVkfEFuZHJvaWQuKlxcYihLRk9UfEtGVFR8S0ZKV0l8S0ZKV0F8S0ZPVEV8S0ZTT1dJfEtGVEhXSXxLRlRIV0F8S0ZBUFdJfEtGQVBXQXxXRkpXQUV8S0ZTQVdBfEtGU0FXSXxLRkFTV0l8S0ZBUldJfEtGRk9XSXxLRkdJV0l8S0ZNRVdJKVxcYnxBbmRyb2lkLipTaWxrL1swLTkuXSsgbGlrZSBDaHJvbWUvWzAtOS5dKyAoPyFNb2JpbGUpIixTdXJmYWNlVGFibGV0OiJXaW5kb3dzIE5UIFswLTkuXSs7IEFSTTsuKihUYWJsZXR8QVJNQkpTKSIsSFBUYWJsZXQ6IkhQIFNsYXRlICg3fDh8MTApfEhQIEVsaXRlUGFkIDkwMHxocC10YWJsZXR8RWxpdGVCb29rLipUb3VjaHxIUCA4fFNsYXRlIDIxfEhQIFNsYXRlQm9vayAxMCIsQXN1c1RhYmxldDoiXi4qUGFkRm9uZSgoPyFNb2JpbGUpLikqJHxUcmFuc2Zvcm1lcnxURjEwMXxURjEwMUd8VEYzMDBUfFRGMzAwVEd8VEYzMDBUTHxURjcwMFR8VEY3MDBLTHxURjcwMVR8VEY4MTBDfE1FMTcxfE1FMzAxVHxNRTMwMkN8TUUzNzFNR3xNRTM3MFR8TUUzNzJNR3xNRTE3MlZ8TUUxNzNYfE1FNDAwQ3xTbGlkZXIgU0wxMDF8XFxiSzAwRlxcYnxcXGJLMDBDXFxifFxcYkswMEVcXGJ8XFxiSzAwTFxcYnxUWDIwMUxBfE1FMTc2Q3xNRTEwMkF8XFxiTTgwVEFcXGJ8TUUzNzJDTHxNRTU2MENHfE1FMzcyQ0d8TUUzMDJLTHwgSzAxMCB8IEswMTEgfCBLMDE3IHwgSzAxRSB8TUU1NzJDfE1FMTAzS3xNRTE3MEN8TUUxNzFDfFxcYk1FNzBDXFxifE1FNTgxQ3xNRTU4MUNMfE1FODUxMEN8TUUxODFDfFAwMVl8UE8xTUF8UDAxWnxcXGJQMDI3XFxifFxcYlAwMjRcXGJ8XFxiUDAwQ1xcYiIsQmxhY2tCZXJyeVRhYmxldDoiUGxheUJvb2t8UklNIFRhYmxldCIsSFRDdGFibGV0OiJIVENfRmx5ZXJfUDUxMnxIVEMgRmx5ZXJ8SFRDIEpldHN0cmVhbXxIVEMtUDcxNWF8SFRDIEVWTyBWaWV3IDRHfFBHNDEyMDB8UEcwOTQxMCIsTW90b3JvbGFUYWJsZXQ6Inhvb218c2hvbGVzdHxNWjYxNXxNWjYwNXxNWjUwNXxNWjYwMXxNWjYwMnxNWjYwM3xNWjYwNHxNWjYwNnxNWjYwN3xNWjYwOHxNWjYwOXxNWjYxNXxNWjYxNnxNWjYxNyIsTm9va1RhYmxldDoiQW5kcm9pZC4qTm9va3xOb29rQ29sb3J8bm9vayBicm93c2VyfEJOUlYyMDB8Qk5SVjIwMEF8Qk5UVjI1MHxCTlRWMjUwQXxCTlRWNDAwfEJOVFY2MDB8TG9naWNQRCBab29tMiIsQWNlclRhYmxldDoiQW5kcm9pZC4qOyBcXGIoQTEwMHxBMTAxfEExMTB8QTIwMHxBMjEwfEEyMTF8QTUwMHxBNTAxfEE1MTB8QTUxMXxBNzAwfEE3MDF8VzUwMHxXNTAwUHxXNTAxfFc1MDFQfFc1MTB8VzUxMXxXNzAwfEcxMDB8RzEwMFd8QjEtQTcxfEIxLTcxMHxCMS03MTF8QTEtODEwfEExLTgxMXxBMS04MzApXFxifFczLTgxMHxcXGJBMy1BMTBcXGJ8XFxiQTMtQTExXFxifFxcYkEzLUEyMFxcYnxcXGJBMy1BMzB8QTMtQTQwIixUb3NoaWJhVGFibGV0OiJBbmRyb2lkLiooQVQxMDB8QVQxMDV8QVQyMDB8QVQyMDV8QVQyNzB8QVQyNzV8QVQzMDB8QVQzMDV8QVQxUzV8QVQ1MDB8QVQ1NzB8QVQ3MDB8QVQ4MzApfFRPU0hJQkEuKkZPTElPIixMR1RhYmxldDoiXFxiTC0wNkN8TEctVjkwOXxMRy1WOTAwfExHLVY3MDB8TEctVjUxMHxMRy1WNTAwfExHLVY0MTB8TEctVjQwMHxMRy1WSzgxMFxcYiIsRnVqaXRzdVRhYmxldDoiQW5kcm9pZC4qXFxiKEYtMDFEfEYtMDJGfEYtMDVFfEYtMTBEfE01MzJ8UTU3MilcXGIiLFByZXN0aWdpb1RhYmxldDoiUE1QMzE3MEJ8UE1QMzI3MEJ8UE1QMzQ3MEJ8UE1QNzE3MEJ8UE1QMzM3MEJ8UE1QMzU3MEN8UE1QNTg3MEN8UE1QMzY3MEJ8UE1QNTU3MEN8UE1QNTc3MER8UE1QMzk3MEJ8UE1QMzg3MEN8UE1QNTU4MEN8UE1QNTg4MER8UE1QNTc4MER8UE1QNTU4OEN8UE1QNzI4MEN8UE1QNzI4MEMzR3xQTVA3MjgwfFBNUDc4ODBEfFBNUDU1OTdEfFBNUDU1OTd8UE1QNzEwMER8UEVSMzQ2NHxQRVIzMjc0fFBFUjM1NzR8UEVSMzg4NHxQRVI1Mjc0fFBFUjU0NzR8UE1QNTA5N0NQUk98UE1QNTA5N3xQTVA3MzgwRHxQTVA1Mjk3Q3xQTVA1Mjk3Q19RVUFEfFBNUDgxMkV8UE1QODEyRTNHfFBNUDgxMkZ8UE1QODEwRXxQTVA4ODBURHxQTVQzMDE3fFBNVDMwMzd8UE1UMzA0N3xQTVQzMDU3fFBNVDcwMDh8UE1UNTg4N3xQTVQ1MDAxfFBNVDUwMDIiLExlbm92b1RhYmxldDoiTGVub3ZvIFRBQnxJZGVhKFRhYnxQYWQpKCBBMXxBMTB8IEsxfCl8VGhpbmtQYWQoWyBdKyk/VGFibGV0fFlUMy04NTBNfFlUMy1YOTBMfFlUMy1YOTBGfFlUMy1YOTBYfExlbm92by4qKFMyMTA5fFMyMTEwfFM1MDAwfFM2MDAwfEszMDExfEEzMDAwfEEzNTAwfEExMDAwfEEyMTA3fEEyMTA5fEExMTA3fEE1NTAwfEE3NjAwfEI2MDAwfEI4MDAwfEI4MDgwKSgtfCkoRkx8RnxIVnxIfCl8VEItWDEwM0Z8VEItWDMwNFh8VEItWDMwNEZ8VEItWDMwNEx8VEItWDUwNUZ8VEItWDUwNUx8VEItWDUwNVh8VEItWDYwNUZ8VEItWDYwNUx8VEItODcwM0Z8VEItODcwM1h8VEItODcwM058VEItODcwNE58VEItODcwNEZ8VEItODcwNFh8VEItODcwNFZ8VEItNzMwNEZ8VEItNzMwNEl8VEItNzMwNFh8VGFiMkE3LTEwRnxUYWIyQTctMjBGfFRCMi1YMzBMfFlUMy1YNTBMfFlUMy1YNTBGfFlUMy1YNTBNfFlULVg3MDVGfFlULVg3MDNGfFlULVg3MDNMfFlULVg3MDVMfFlULVg3MDVYfFRCMi1YMzBGfFRCMi1YMzBMfFRCMi1YMzBNfEEyMTA3QS1GfEEyMTA3QS1IfFRCMy03MzBGfFRCMy03MzBNfFRCMy03MzBYfFRCLTc1MDRGfFRCLTc1MDRYfFRCLVg3MDRGfFRCLVgxMDRGfFRCMy1YNzBGfFRCLVg3MDVGfFRCLTg1MDRGfFRCMy1YNzBMfFRCMy03MTBGfFRCLVg3MDRMIixEZWxsVGFibGV0OiJWZW51ZSAxMXxWZW51ZSA4fFZlbnVlIDd8RGVsbCBTdHJlYWsgMTB8RGVsbCBTdHJlYWsgNyIsWWFydmlrVGFibGV0OiJBbmRyb2lkLipcXGIoVEFCMjEwfFRBQjIxMXxUQUIyMjR8VEFCMjUwfFRBQjI2MHxUQUIyNjR8VEFCMzEwfFRBQjM2MHxUQUIzNjR8VEFCNDEwfFRBQjQxMXxUQUI0MjB8VEFCNDI0fFRBQjQ1MHxUQUI0NjB8VEFCNDYxfFRBQjQ2NHxUQUI0NjV8VEFCNDY3fFRBQjQ2OHxUQUIwNy0xMDB8VEFCMDctMTAxfFRBQjA3LTE1MHxUQUIwNy0xNTF8VEFCMDctMTUyfFRBQjA3LTIwMHxUQUIwNy0yMDEtM0d8VEFCMDctMjEwfFRBQjA3LTIxMXxUQUIwNy0yMTJ8VEFCMDctMjE0fFRBQjA3LTIyMHxUQUIwNy00MDB8VEFCMDctNDg1fFRBQjA4LTE1MHxUQUIwOC0yMDB8VEFCMDgtMjAxLTNHfFRBQjA4LTIwMS0zMHxUQUIwOS0xMDB8VEFCMDktMjExfFRBQjA5LTQxMHxUQUIxMC0xNTB8VEFCMTAtMjAxfFRBQjEwLTIxMXxUQUIxMC00MDB8VEFCMTAtNDEwfFRBQjEzLTIwMXxUQUIyNzRFVUt8VEFCMjc1RVVLfFRBQjM3NEVVS3xUQUI0NjJFVUt8VEFCNDc0RVVLfFRBQjktMjAwKVxcYiIsTWVkaW9uVGFibGV0OiJBbmRyb2lkLipcXGJPWU9cXGJ8TElGRS4qKFA5MjEyfFA5NTE0fFA5NTE2fFM5NTEyKXxMSUZFVEFCIixBcm5vdmFUYWJsZXQ6Ijk3RzR8QU4xMEcyfEFON2JHM3xBTjdmRzN8QU44RzN8QU44Y0czfEFON0czfEFOOUczfEFON2RHM3xBTjdkRzNTVHxBTjdkRzNDaGlsZFBhZHxBTjEwYkczfEFOMTBiRzNEVHxBTjlHMiIsSW50ZW5zb1RhYmxldDoiSU5NODAwMktQfElOTTEwMTBGUHxJTk04MDVORHxJbnRlbnNvIFRhYnxUQUIxMDA0IixJUlVUYWJsZXQ6Ik03MDJwcm8iLE1lZ2Fmb25UYWJsZXQ6Ik1lZ2FGb24gVjl8XFxiWlRFIFY5XFxifEFuZHJvaWQuKlxcYk1UN0FcXGIiLEVib2RhVGFibGV0OiJFLUJvZGEgKFN1cHJlbWV8SW1wcmVzc3BlZWR8SXp6eWNvbW18RXNzZW50aWFsKSIsQWxsVmlld1RhYmxldDoiQWxsdmlldy4qKFZpdmF8QWxsZHJvfENpdHl8U3BlZWR8QWxsIFRWfEZyZW56eXxRdWFzYXJ8U2hpbmV8VFgxfEFYMXxBWDIpIixBcmNob3NUYWJsZXQ6IlxcYigxMDFHOXw4MEc5fEExMDFJVClcXGJ8UWlsaXZlIDk3UnxBcmNob3M1fFxcYkFSQ0hPUyAoNzB8Nzl8ODB8OTB8OTd8MTAxfEZBTUlMWVBBRHwpKGJ8Y3wpKEcxMHwgQ29iYWx0fCBUSVRBTklVTShIRHwpfCBYZW5vbnwgTmVvbnxYU0t8IDJ8IFhTIDJ8IFBMQVRJTlVNfCBDQVJCT058R0FNRVBBRClcXGIiLEFpbm9sVGFibGV0OiJOT1ZPN3xOT1ZPOHxOT1ZPMTB8Tm92bzdBdXJvcmF8Tm92bzdCYXNpY3xOT1ZPN1BBTEFESU58bm92bzktU3BhcmsiLE5va2lhTHVtaWFUYWJsZXQ6Ikx1bWlhIDI1MjAiLFNvbnlUYWJsZXQ6IlNvbnkuKlRhYmxldHxYcGVyaWEgVGFibGV0fFNvbnkgVGFibGV0IFN8U08tMDNFfFNHUFQxMnxTR1BUMTN8U0dQVDExNHxTR1BUMTIxfFNHUFQxMjJ8U0dQVDEyM3xTR1BUMTExfFNHUFQxMTJ8U0dQVDExM3xTR1BUMTMxfFNHUFQxMzJ8U0dQVDEzM3xTR1BUMjExfFNHUFQyMTJ8U0dQVDIxM3xTR1AzMTF8U0dQMzEyfFNHUDMyMXxFQlJEMTEwMXxFQlJEMTEwMnxFQlJEMTIwMXxTR1AzNTF8U0dQMzQxfFNHUDUxMXxTR1A1MTJ8U0dQNTIxfFNHUDU0MXxTR1A1NTF8U0dQNjIxfFNHUDY0MXxTR1A2MTJ8U09UMzF8U0dQNzcxfFNHUDYxMXxTR1A2MTJ8U0dQNzEyIixQaGlsaXBzVGFibGV0OiJcXGIoUEkyMDEwfFBJMzAwMHxQSTMxMDB8UEkzMTA1fFBJMzExMHxQSTMyMDV8UEkzMjEwfFBJMzkwMHxQSTQwMTB8UEk3MDAwfFBJNzEwMClcXGIiLEN1YmVUYWJsZXQ6IkFuZHJvaWQuKihLOEdUfFU5R1R8VTEwR1R8VTE2R1R8VTE3R1R8VTE4R1R8VTE5R1R8VTIwR1R8VTIzR1R8VTMwR1QpfENVQkUgVThHVCIsQ29ieVRhYmxldDoiTUlEMTA0MnxNSUQxMDQ1fE1JRDExMjV8TUlEMTEyNnxNSUQ3MDEyfE1JRDcwMTR8TUlENzAxNXxNSUQ3MDM0fE1JRDcwMzV8TUlENzAzNnxNSUQ3MDQyfE1JRDcwNDh8TUlENzEyN3xNSUQ4MDQyfE1JRDgwNDh8TUlEODEyN3xNSUQ5MDQyfE1JRDk3NDB8TUlEOTc0MnxNSUQ3MDIyfE1JRDcwMTAiLE1JRFRhYmxldDoiTTk3MDF8TTkwMDB8TTkxMDB8TTgwNnxNMTA1MnxNODA2fFQ3MDN8TUlENzAxfE1JRDcxM3xNSUQ3MTB8TUlENzI3fE1JRDc2MHxNSUQ4MzB8TUlENzI4fE1JRDkzM3xNSUQxMjV8TUlEODEwfE1JRDczMnxNSUQxMjB8TUlEOTMwfE1JRDgwMHxNSUQ3MzF8TUlEOTAwfE1JRDEwMHxNSUQ4MjB8TUlENzM1fE1JRDk4MHxNSUQxMzB8TUlEODMzfE1JRDczN3xNSUQ5NjB8TUlEMTM1fE1JRDg2MHxNSUQ3MzZ8TUlEMTQwfE1JRDkzMHxNSUQ4MzV8TUlENzMzfE1JRDRYMTAiLE1TSVRhYmxldDoiTVNJIFxcYihQcmltbyA3M0t8UHJpbW8gNzNMfFByaW1vIDgxTHxQcmltbyA3N3xQcmltbyA5M3xQcmltbyA3NXxQcmltbyA3NnxQcmltbyA3M3xQcmltbyA4MXxQcmltbyA5MXxQcmltbyA5MHxFbmpveSA3MXxFbmpveSA3fEVuam95IDEwKVxcYiIsU01pVFRhYmxldDoiQW5kcm9pZC4qKFxcYk1JRFxcYnxNSUQtNTYwfE1UVi1UMTIwMHxNVFYtUE5ENTMxfE1UVi1QMTEwMXxNVFYtUE5ENTMwKSIsUm9ja0NoaXBUYWJsZXQ6IkFuZHJvaWQuKihSSzI4MTh8UksyODA4QXxSSzI5MTh8UkszMDY2KXxSSzI3Mzh8UksyODA4QSIsRmx5VGFibGV0OiJJUTMxMHxGbHkgVmlzaW9uIixicVRhYmxldDoiQW5kcm9pZC4qKGJxKT8uKlxcYihFbGNhbm98Q3VyaWV8RWRpc29ufE1heHdlbGx8S2VwbGVyfFBhc2NhbHxUZXNsYXxIeXBhdGlhfFBsYXRvbnxOZXd0b258TGl2aW5nc3RvbmV8Q2VydmFudGVzfEF2YW50fEFxdWFyaXMgKFtFfE1dMTB8TTgpKVxcYnxNYXh3ZWxsLipMaXRlfE1heHdlbGwuKlBsdXMiLEh1YXdlaVRhYmxldDoiTWVkaWFQYWR8TWVkaWFQYWQgNyBZb3V0aHxJREVPUyBTN3xTNy0yMDFjfFM3LTIwMnV8UzctMTAxfFM3LTEwM3xTNy0xMDR8UzctMTA1fFM3LTEwNnxTNy0yMDF8UzctU2xpbXxNMi1BMDFMfEJBSC1MMDl8QkFILVcwOXxBR1MtTDA5fENNUi1BTDE5IixOZWNUYWJsZXQ6IlxcYk4tMDZEfFxcYk4tMDhEIixQYW50ZWNoVGFibGV0OiJQYW50ZWNoLipQNDEwMCIsQnJvbmNob1RhYmxldDoiQnJvbmNoby4qKE43MDF8TjcwOHxOODAyfGE3MTApIixWZXJzdXNUYWJsZXQ6IlRPVUNIUEFELipbNzg5MTBdfFxcYlRPVUNIVEFCXFxiIixaeW5jVGFibGV0OiJ6MTAwMHxaOTkgMkd8ejkzMHx6OTkwfHo5MDl8WjkxOXx6OTAwIixQb3NpdGl2b1RhYmxldDoiVEIwN1NUQXxUQjEwU1RBfFRCMDdGVEF8VEIxMEZUQSIsTmFiaVRhYmxldDoiQW5kcm9pZC4qXFxiTmFiaSIsS29ib1RhYmxldDoiS29ibyBUb3VjaHxcXGJLMDgwXFxifFxcYlZveFxcYiBCdWlsZHxcXGJBcmNcXGIgQnVpbGQiLERhbmV3VGFibGV0OiJEU2xpZGUuKlxcYig3MDB8NzAxUnw3MDJ8NzAzUnw3MDR8ODAyfDk3MHw5NzF8OTcyfDk3M3w5NzR8MTAxMHwxMDEyKVxcYiIsVGV4ZXRUYWJsZXQ6Ik5hdmlQYWR8VEItNzcyQXxUTS03MDQ1fFRNLTcwNTV8VE0tOTc1MHxUTS03MDE2fFRNLTcwMjR8VE0tNzAyNnxUTS03MDQxfFRNLTcwNDN8VE0tNzA0N3xUTS04MDQxfFRNLTk3NDF8VE0tOTc0N3xUTS05NzQ4fFRNLTk3NTF8VE0tNzAyMnxUTS03MDIxfFRNLTcwMjB8VE0tNzAxMXxUTS03MDEwfFRNLTcwMjN8VE0tNzAyNXxUTS03MDM3V3xUTS03MDM4V3xUTS03MDI3V3xUTS05NzIwfFRNLTk3MjV8VE0tOTczN1d8VE0tMTAyMHxUTS05NzM4V3xUTS05NzQwfFRNLTk3NDNXfFRCLTgwN0F8VEItNzcxQXxUQi03MjdBfFRCLTcyNUF8VEItNzE5QXxUQi04MjNBfFRCLTgwNUF8VEItNzIzQXxUQi03MTVBfFRCLTcwN0F8VEItNzA1QXxUQi03MDlBfFRCLTcxMUF8VEItODkwSER8VEItODgwSER8VEItNzkwSER8VEItNzgwSER8VEItNzcwSER8VEItNzIxSER8VEItNzEwSER8VEItNDM0SER8VEItODYwSER8VEItODQwSER8VEItNzYwSER8VEItNzUwSER8VEItNzQwSER8VEItNzMwSER8VEItNzIySER8VEItNzIwSER8VEItNzAwSER8VEItNTAwSER8VEItNDcwSER8VEItNDMxSER8VEItNDMwSER8VEItNTA2fFRCLTUwNHxUQi00NDZ8VEItNDM2fFRCLTQxNnxUQi0xNDZTRXxUQi0xMjZTRSIsUGxheXN0YXRpb25UYWJsZXQ6IlBsYXlzdGF0aW9uLiooUG9ydGFibGV8Vml0YSkiLFRyZWtzdG9yVGFibGV0OiJTVDEwNDE2LTF8VlQxMDQxNi0xfFNUNzA0MDgtMXxTVDcwMnh4LTF8U1Q3MDJ4eC0yfFNUODAyMDh8U1Q5NzIxNnxTVDcwMTA0LTJ8VlQxMDQxNi0yfFNUMTAyMTYtMkF8U3VyZlRhYiIsUHlsZUF1ZGlvVGFibGV0OiJcXGIoUFRCTDEwQ0VVfFBUQkwxMEN8UFRCTDcyQkN8UFRCTDcyQkNFVXxQVEJMN0NFVXxQVEJMN0N8UFRCTDkyQkN8UFRCTDkyQkNFVXxQVEJMOUNFVXxQVEJMOUNVS3xQVEJMOUMpXFxiIixBZHZhblRhYmxldDoiQW5kcm9pZC4qIFxcYihFM0F8VDNYfFQ1Q3xUNUJ8VDNFfFQzQ3xUM0J8VDFKfFQxRnxUMkF8VDFIfFQxaXxFMUN8VDEtRXxUNS1BfFQ0fEUxLUJ8VDJDaXxUMS1CfFQxLUR8TzEtQXxFMS1BfFQxLUF8VDNBfFQ0aSlcXGIgIixEYW55VGVjaFRhYmxldDoiR2VuaXVzIFRhYiBHM3xHZW5pdXMgVGFiIFMyfEdlbml1cyBUYWIgUTN8R2VuaXVzIFRhYiBHNHxHZW5pdXMgVGFiIFE0fEdlbml1cyBUYWIgRy1JSXxHZW5pdXMgVEFCIEdJSXxHZW5pdXMgVEFCIEdJSUl8R2VuaXVzIFRhYiBTMSIsR2FsYXBhZFRhYmxldDoiQW5kcm9pZCBbMC05Ll0rOyBbYS16LV0rOyBcXGJHMVxcYiIsTWljcm9tYXhUYWJsZXQ6IkZ1bmJvb2t8TWljcm9tYXguKlxcYihQMjUwfFA1NjB8UDM2MHxQMzYyfFA2MDB8UDMwMHxQMzUwfFA1MDB8UDI3NSlcXGIiLEthcmJvbm5UYWJsZXQ6IkFuZHJvaWQuKlxcYihBMzl8QTM3fEEzNHxTVDh8U1QxMHxTVDd8U21hcnQgVGFiM3xTbWFydCBUYWIyKVxcYiIsQWxsRmluZVRhYmxldDoiRmluZTcgR2VuaXVzfEZpbmU3IFNoaW5lfEZpbmU3IEFpcnxGaW5lOCBTdHlsZXxGaW5lOSBNb3JlfEZpbmUxMCBKb3l8RmluZTExIFdpZGUiLFBST1NDQU5UYWJsZXQ6IlxcYihQRU02M3xQTFQxMDIzR3xQTFQxMDQxfFBMVDEwNDR8UExUMTA0NEd8UExUMTA5MXxQTFQ0MzExfFBMVDQzMTFQTHxQTFQ0MzE1fFBMVDcwMzB8UExUNzAzM3xQTFQ3MDMzRHxQTFQ3MDM1fFBMVDcwMzVEfFBMVDcwNDRLfFBMVDcwNDVLfFBMVDcwNDVLQnxQTFQ3MDcxS0d8UExUNzA3MnxQTFQ3MjIzR3xQTFQ3MjI1R3xQTFQ3Nzc3R3xQTFQ3ODEwS3xQTFQ3ODQ5R3xQTFQ3ODUxR3xQTFQ3ODUyR3xQTFQ4MDE1fFBMVDgwMzF8UExUODAzNHxQTFQ4MDM2fFBMVDgwODBLfFBMVDgwODJ8UExUODA4OHxQTFQ4MjIzR3xQTFQ4MjM0R3xQTFQ4MjM1R3xQTFQ4ODE2S3xQTFQ5MDExfFBMVDkwNDVLfFBMVDkyMzNHfFBMVDk3MzV8UExUOTc2MEd8UExUOTc3MEcpXFxiIixZT05FU1RhYmxldDoiQlExMDc4fEJDMTAwM3xCQzEwNzd8Uks5NzAyfEJDOTczMHxCQzkwMDF8SVQ5MDAxfEJDNzAwOHxCQzcwMTB8QkM3MDh8QkM3Mjh8QkM3MDEyfEJDNzAzMHxCQzcwMjd8QkM3MDI2IixDaGFuZ0ppYVRhYmxldDoiVFBDNzEwMnxUUEM3MTAzfFRQQzcxMDV8VFBDNzEwNnxUUEM3MTA3fFRQQzcyMDF8VFBDNzIwM3xUUEM3MjA1fFRQQzcyMTB8VFBDNzcwOHxUUEM3NzA5fFRQQzc3MTJ8VFBDNzExMHxUUEM4MTAxfFRQQzgxMDN8VFBDODEwNXxUUEM4MTA2fFRQQzgyMDN8VFBDODIwNXxUUEM4NTAzfFRQQzkxMDZ8VFBDOTcwMXxUUEM5NzEwMXxUUEM5NzEwM3xUUEM5NzEwNXxUUEM5NzEwNnxUUEM5NzExMXxUUEM5NzExM3xUUEM5NzIwM3xUUEM5NzYwM3xUUEM5NzgwOXxUUEM5NzIwNXxUUEMxMDEwMXxUUEMxMDEwM3xUUEMxMDEwNnxUUEMxMDExMXxUUEMxMDIwM3xUUEMxMDIwNXxUUEMxMDUwMyIsR1VUYWJsZXQ6IlRYLUExMzAxfFRYLU05MDAyfFE3MDJ8a2YwMjYiLFBvaW50T2ZWaWV3VGFibGV0OiJUQUItUDUwNnxUQUItbmF2aS03LTNHLU18VEFCLVA1MTd8VEFCLVAtNTI3fFRBQi1QNzAxfFRBQi1QNzAzfFRBQi1QNzIxfFRBQi1QNzMxTnxUQUItUDc0MXxUQUItUDgyNXxUQUItUDkwNXxUQUItUDkyNXxUQUItUFI5NDV8VEFCLVBMMTAxNXxUQUItUDEwMjV8VEFCLVBJMTA0NXxUQUItUDEzMjV8VEFCLVBST1RBQlswLTldK3xUQUItUFJPVEFCMjV8VEFCLVBST1RBQjI2fFRBQi1QUk9UQUIyN3xUQUItUFJPVEFCMjZYTHxUQUItUFJPVEFCMi1JUFM5fFRBQi1QUk9UQUIzMC1JUFM5fFRBQi1QUk9UQUIyNVhYTHxUQUItUFJPVEFCMjYtSVBTMTB8VEFCLVBST1RBQjMwLUlQUzEwIixPdmVybWF4VGFibGV0OiJPVi0oU3RlZWxDb3JlfE5ld0Jhc2V8QmFzZWNvcmV8QmFzZW9uZXxFeGVsbGVufFF1YXR0b3J8RWR1VGFifFNvbHV0aW9ufEFDVElPTnxCYXNpY1RhYnxUZWRkeVRhYnxNYWdpY1RhYnxTdHJlYW18VEItMDh8VEItMDkpfFF1YWxjb3JlIDEwMjciLEhDTFRhYmxldDoiSENMLipUYWJsZXR8Q29ubmVjdC0zRy0yLjB8Q29ubmVjdC0yRy0yLjB8TUUgVGFibGV0IFUxfE1FIFRhYmxldCBVMnxNRSBUYWJsZXQgRzF8TUUgVGFibGV0IFgxfE1FIFRhYmxldCBZMnxNRSBUYWJsZXQgU3luYyIsRFBTVGFibGV0OiJEUFMgRHJlYW0gOXxEUFMgRHVhbCA3IixWaXN0dXJlVGFibGV0OiJWOTcgSER8aTc1IDNHfFZpc3R1cmUgVjQoIEhEKT98VmlzdHVyZSBWNSggSEQpP3xWaXN0dXJlIFYxMCIsQ3Jlc3RhVGFibGV0OiJDVFAoLSk/ODEwfENUUCgtKT84MTh8Q1RQKC0pPzgyOHxDVFAoLSk/ODM4fENUUCgtKT84ODh8Q1RQKC0pPzk3OHxDVFAoLSk/OTgwfENUUCgtKT85ODd8Q1RQKC0pPzk4OHxDVFAoLSk/OTg5IixNZWRpYXRla1RhYmxldDoiXFxiTVQ4MTI1fE1UODM4OXxNVDgxMzV8TVQ4Mzc3XFxiIixDb25jb3JkZVRhYmxldDoiQ29uY29yZGUoWyBdKyk/VGFifENvbkNvcmRlIFJlYWRNYW4iLEdvQ2xldmVyVGFibGV0OiJHT0NMRVZFUiBUQUJ8QTdHT0NMRVZFUnxNMTA0MnxNNzg0MXxNNzQyfFIxMDQyQkt8UjEwNDF8VEFCIEE5NzV8VEFCIEE3ODQyfFRBQiBBNzQxfFRBQiBBNzQxTHxUQUIgTTcyM0d8VEFCIE03MjF8VEFCIEExMDIxfFRBQiBJOTIxfFRBQiBSNzIxfFRBQiBJNzIwfFRBQiBUNzZ8VEFCIFI3MHxUQUIgUjc2LjJ8VEFCIFIxMDZ8VEFCIFI4My4yfFRBQiBNODEzR3xUQUIgSTcyMXxHQ1RBNzIyfFRBQiBJNzB8VEFCIEk3MXxUQUIgUzczfFRBQiBSNzN8VEFCIFI3NHxUQUIgUjkzfFRBQiBSNzV8VEFCIFI3Ni4xfFRBQiBBNzN8VEFCIEE5M3xUQUIgQTkzLjJ8VEFCIFQ3MnxUQUIgUjgzfFRBQiBSOTc0fFRBQiBSOTczfFRBQiBBMTAxfFRBQiBBMTAzfFRBQiBBMTA0fFRBQiBBMTA0LjJ8UjEwNUJLfE03MTNHfEE5NzJCS3xUQUIgQTk3MXxUQUIgUjk3NC4yfFRBQiBSMTA0fFRBQiBSODMuM3xUQUIgQTEwNDIiLE1vZGVjb21UYWJsZXQ6IkZyZWVUQUIgOTAwMHxGcmVlVEFCIDcuNHxGcmVlVEFCIDcwMDR8RnJlZVRBQiA3ODAwfEZyZWVUQUIgMjA5NnxGcmVlVEFCIDcuNXxGcmVlVEFCIDEwMTR8RnJlZVRBQiAxMDAxIHxGcmVlVEFCIDgwMDF8RnJlZVRBQiA5NzA2fEZyZWVUQUIgOTcwMnxGcmVlVEFCIDcwMDN8RnJlZVRBQiA3MDAyfEZyZWVUQUIgMTAwMnxGcmVlVEFCIDc4MDF8RnJlZVRBQiAxMzMxfEZyZWVUQUIgMTAwNHxGcmVlVEFCIDgwMDJ8RnJlZVRBQiA4MDE0fEZyZWVUQUIgOTcwNHxGcmVlVEFCIDEwMDMiLFZvbmlub1RhYmxldDoiXFxiKEFyZ3VzWyBfXT9TfERpYW1vbmRbIF9dPzc5SER8RW1lcmFsZFsgX10/NzhFfEx1bmFbIF9dPzcwQ3xPbnl4WyBfXT9TfE9ueXhbIF9dP1p8T3JpblsgX10/SER8T3JpblsgX10/U3xPdGlzWyBfXT9TfFNwZWVkU3RhclsgX10/U3xNYWduZXRbIF9dP005fFByaW11c1sgX10/OTRbIF9dPzNHfFByaW11c1sgX10/OTRIRHxQcmltdXNbIF9dP1FTfEFuZHJvaWQuKlxcYlE4XFxifFNpcml1c1sgX10/RVZPWyBfXT9RU3xTaXJpdXNbIF9dP1FTfFNwaXJpdFsgX10/UylcXGIiLEVDU1RhYmxldDoiVjA3T1QyfFRNMTA1QXxTMTBPVDF8VFIxMENTMSIsU3RvcmV4VGFibGV0OiJlWmVlW18nXT8oVGFifEdvKVswLTldK3xUYWJMQzd8TG9vbmV5IFR1bmVzIFRhYiIsVm9kYWZvbmVUYWJsZXQ6IlNtYXJ0VGFiKFsgXSspP1swLTldK3xTbWFydFRhYklJMTB8U21hcnRUYWJJSTd8VkYtMTQ5N3xWRkQgMTQwMCIsRXNzZW50aWVsQlRhYmxldDoiU21hcnRbICddP1RBQlsgXSs/WzAtOV0rfEZhbWlseVsgJ10/VEFCMiIsUm9zc01vb3JUYWJsZXQ6IlJNLTc5MHxSTS05OTd8Uk1ELTg3OEd8Uk1ELTk3NFJ8Uk1ULTcwNUF8Uk1ULTcwMXxSTUUtNjAxfFJNVC01MDF8Uk1ULTcxMSIsaU1vYmlsZVRhYmxldDoiaS1tb2JpbGUgaS1ub3RlIixUb2xpbm9UYWJsZXQ6InRvbGlubyB0YWIgWzAtOS5dK3x0b2xpbm8gc2hpbmUiLEF1ZGlvU29uaWNUYWJsZXQ6IlxcYkMtMjJRfFQ3LVFDfFQtMTdCfFQtMTdQXFxiIixBTVBFVGFibGV0OiJBbmRyb2lkLiogQTc4ICIsU2trVGFibGV0OiJBbmRyb2lkLiogKFNLWVBBRHxQSE9FTklYfENZQ0xPUFMpIixUZWNub1RhYmxldDoiVEVDTk8gUDl8VEVDTk8gRFA4RCIsSlhEVGFibGV0OiJBbmRyb2lkLiogXFxiKEYzMDAwfEEzMzAwfEpYRDUwMDB8SlhEMzAwMHxKWEQyMDAwfEpYRDMwMEJ8SlhEMzAwfFM1ODAwfFM3ODAwfFM2MDJifFM1MTEwYnxTNzMwMHxTNTMwMHxTNjAyfFM2MDN8UzUxMDB8UzUxMTB8UzYwMXxTNzEwMGF8UDMwMDBGfFAzMDAwc3xQMTAxfFAyMDBzfFAxMDAwbXxQMjAwbXxQOTEwMHxQMTAwMHN8UzY2MDBifFM5MDh8UDEwMDB8UDMwMHxTMTh8UzY2MDB8UzkxMDApXFxiIixpSm95VGFibGV0OiJUYWJsZXQgKFNwaXJpdCA3fEVzc2VudGlhfEdhbGF0ZWF8RnVzaW9ufE9uaXggN3xMYW5kYXxUaXRhbnxTY29vYnl8RGVveHxTdGVsbGF8VGhlbWlzfEFyZ29ufFVuaXF1ZSA3fFN5Z251c3xIZXhlbnxGaW5pdHkgN3xDcmVhbXxDcmVhbSBYMnxKYWRlfE5lb24gN3xOZXJvbiA3fEthbmR5fFNjYXBlfFNhcGh5ciA3fFJlYmVsfEJpb3h8UmViZWx8UmViZWwgOEdCfE15c3R8RHJhY28gN3xNeXN0fFRhYjctMDA0fE15c3R8VGFkZW8gSm9uZXN8VGFibGV0IEJvaW5nfEFycm93fERyYWNvIER1YWwgQ2FtfEF1cml4fE1pbnR8QW1pdHl8UmV2b2x1dGlvbnxGaW5pdHkgOXxOZW9uIDl8VDl3fEFtaXR5IDRHQiBEdWFsIENhbXxTdG9uZSA0R0J8U3RvbmUgOEdCfEFuZHJvbWVkYXxTaWxrZW58WDJ8QW5kcm9tZWRhIElJfEhhbGxleXxGbGFtZXxTYXBoeXIgOSw3fFRvdWNoIDh8UGxhbmV0fFRyaXRvbnxVbmlxdWUgMTB8SGV4ZW4gMTB8TWVtcGhpcyA0R0J8TWVtcGhpcyA4R0J8T25peCAxMCkiLEZYMlRhYmxldDoiRlgyIFBBRDd8RlgyIFBBRDEwIixYb3JvVGFibGV0OiJLaWRzUEFEIDcwMXxQQURbIF0/NzEyfFBBRFsgXT83MTR8UEFEWyBdPzcxNnxQQURbIF0/NzE3fFBBRFsgXT83MTh8UEFEWyBdPzcyMHxQQURbIF0/NzIxfFBBRFsgXT83MjJ8UEFEWyBdPzc5MHxQQURbIF0/NzkyfFBBRFsgXT85MDB8UEFEWyBdPzk3MTVEfFBBRFsgXT85NzE2RFJ8UEFEWyBdPzk3MThEUnxQQURbIF0/OTcxOVFSfFBBRFsgXT85NzIwUVJ8VGVsZVBBRDEwMzB8VGVsZXBhZDEwMzJ8VGVsZVBBRDczMHxUZWxlUEFENzMxfFRlbGVQQUQ3MzJ8VGVsZVBBRDczNVF8VGVsZVBBRDgzMHxUZWxlUEFEOTczMHxUZWxlUEFENzk1fE1lZ2FQQUQgMTMzMXxNZWdhUEFEIDE4NTF8TWVnYVBBRCAyMTUxIixWaWV3c29uaWNUYWJsZXQ6IlZpZXdQYWQgMTBwaXxWaWV3UGFkIDEwZXxWaWV3UGFkIDEwc3xWaWV3UGFkIEU3MnxWaWV3UGFkN3xWaWV3UGFkIEUxMDB8Vmlld1BhZCA3ZXxWaWV3U29uaWMgVkI3MzN8VkIxMDBhIixWZXJpem9uVGFibGV0OiJRVEFRWjN8UVRBSVI3fFFUQVFUWjN8UVRBU1VOMXxRVEFTVU4yfFFUQVhJQTEiLE9keXNUYWJsZXQ6IkxPT1h8WEVOTzEwfE9EWVNbIC1dKFNwYWNlfEVWT3xYcHJlc3N8Tk9PTil8XFxiWEVMSU9cXGJ8WGVsaW8xMFByb3xYRUxJTzdQSE9ORVRBQnxYRUxJTzEwRVhUUkVNRXxYRUxJT1BUMnxORU9fUVVBRDEwIixDYXB0aXZhVGFibGV0OiJDQVBUSVZBIFBBRCIsSWNvbmJpdFRhYmxldDoiTmV0VEFCfE5ULTM3MDJ8TlQtMzcwMlN8TlQtMzcwMlN8TlQtMzYwM1B8TlQtMzYwM1B8TlQtMDcwNFN8TlQtMDcwNFN8TlQtMzgwNUN8TlQtMzgwNUN8TlQtMDgwNkN8TlQtMDgwNkN8TlQtMDkwOVR8TlQtMDkwOVR8TlQtMDkwN1N8TlQtMDkwN1N8TlQtMDkwMlN8TlQtMDkwMlMiLFRlY2xhc3RUYWJsZXQ6IlQ5OCA0R3xcXGJQODBcXGJ8XFxiWDkwSERcXGJ8WDk4IEFpcnxYOTggQWlyIDNHfFxcYlg4OVxcYnxQODAgM0d8XFxiWDgwaFxcYnxQOTggQWlyfFxcYlg4OUhEXFxifFA5OCAzR3xcXGJQOTBIRFxcYnxQODkgM0d8WDk4IDNHfFxcYlA3MGhcXGJ8UDc5SEQgM0d8RzE4ZCAzR3xcXGJQNzlIRFxcYnxcXGJQODlzXFxifFxcYkE4OFxcYnxcXGJQMTBIRFxcYnxcXGJQMTlIRFxcYnxHMTggM0d8XFxiUDc4SERcXGJ8XFxiQTc4XFxifFxcYlA3NVxcYnxHMTdzIDNHfEcxN2ggM0d8XFxiUDg1dFxcYnxcXGJQOTBcXGJ8XFxiUDExXFxifFxcYlA5OHRcXGJ8XFxiUDk4SERcXGJ8XFxiRzE4ZFxcYnxcXGJQODVzXFxifFxcYlAxMUhEXFxifFxcYlA4OHNcXGJ8XFxiQTgwSERcXGJ8XFxiQTgwc2VcXGJ8XFxiQTEwaFxcYnxcXGJQODlcXGJ8XFxiUDc4c1xcYnxcXGJHMThcXGJ8XFxiUDg1XFxifFxcYkE3MGhcXGJ8XFxiQTcwXFxifFxcYkcxN1xcYnxcXGJQMThcXGJ8XFxiQTgwc1xcYnxcXGJBMTFzXFxifFxcYlA4OEhEXFxifFxcYkE4MGhcXGJ8XFxiUDc2c1xcYnxcXGJQNzZoXFxifFxcYlA5OFxcYnxcXGJBMTBIRFxcYnxcXGJQNzhcXGJ8XFxiUDg4XFxifFxcYkExMVxcYnxcXGJBMTB0XFxifFxcYlA3NmFcXGJ8XFxiUDc2dFxcYnxcXGJQNzZlXFxifFxcYlA4NUhEXFxifFxcYlA4NWFcXGJ8XFxiUDg2XFxifFxcYlA3NUhEXFxifFxcYlA3NnZcXGJ8XFxiQTEyXFxifFxcYlA3NWFcXGJ8XFxiQTE1XFxifFxcYlA3NlRpXFxifFxcYlA4MUhEXFxifFxcYkExMFxcYnxcXGJUNzYwVkVcXGJ8XFxiVDcyMEhEXFxifFxcYlA3NlxcYnxcXGJQNzNcXGJ8XFxiUDcxXFxifFxcYlA3MlxcYnxcXGJUNzIwU0VcXGJ8XFxiQzUyMFRpXFxifFxcYlQ3NjBcXGJ8XFxiVDcyMFZFXFxifFQ3MjAtM0dFfFQ3MjAtV2lGaSIsT25kYVRhYmxldDoiXFxiKFY5NzVpfFZpMzB8Vlg1MzB8VjcwMXxWaTYwfFY3MDFzfFZpNTB8VjgwMXN8VjcxOXxWeDYxMHd8Vlg2MTBXfFY4MTlpfFZpMTB8Vlg1ODBXfFZpMTB8VjcxMXN8VjgxM3xWODExfFY4MjB3fFY4MjB8VmkyMHxWNzExfFZJMzBXfFY3MTJ8Vjg5MXd8Vjk3MnxWODE5d3xWODIwd3xWaTYwfFY4MjB3fFY3MTF8VjgxM3N8VjgwMXxWODE5fFY5NzVzfFY4MDF8VjgxOXxWODE5fFY4MTh8VjgxMXxWNzEyfFY5NzVtfFYxMDF3fFY5NjF3fFY4MTJ8VjgxOHxWOTcxfFY5NzFzfFY5MTl8Vjk4OXxWMTE2d3xWMTAyd3xWOTczfFZpNDApXFxiW1xcc10rfFYxMCBcXGI0R1xcYiIsSmF5dGVjaFRhYmxldDoiVFBDLVBBNzYyIixCbGF1cHVua3RUYWJsZXQ6IkVuZGVhdm91ciA4MDBOR3xFbmRlYXZvdXIgMTAxMCIsRGlnbWFUYWJsZXQ6IlxcYihpRHgxMHxpRHg5fGlEeDh8aUR4N3xpRHhEN3xpRHhEOHxpRHNROHxpRHNRN3xpRHNROHxpRHNEMTB8aURuRDd8M1RTODA0SHxpRHNRMTF8aURqN3xpRHMxMClcXGIiLEV2b2xpb1RhYmxldDoiQVJJQV9NaW5pX3dpZml8QXJpYVsgX11NaW5pfEV2b2xpbyBYMTB8RXZvbGlvIFg3fEV2b2xpbyBYOHxcXGJFdm90YWJcXGJ8XFxiTmV1cmFcXGIiLExhdmFUYWJsZXQ6IlFQQUQgRTcwNHxcXGJJdm9yeVNcXGJ8RS1UQUIgSVZPUll8XFxiRS1UQUJcXGIiLEFvY1RhYmxldDoiTVcwODExfE1XMDgxMnxNVzA5MjJ8TVRLODM4MnxNVzEwMzF8TVcwODMxfE1XMDgyMXxNVzA5MzF8TVcwNzEyIixNcG1hblRhYmxldDoiTVAxMSBPQ1RBfE1QMTAgT0NUQXxNUFFDMTExNHxNUFFDMTAwNHxNUFFDOTk0fE1QUUM5NzR8TVBRQzk3M3xNUFFDODA0fE1QUUM3ODR8TVBRQzc4MHxcXGJNUEc3XFxifE1QRENHNzV8TVBEQ0c3MXxNUERDMTAwNnxNUDEwMURDfE1QREM5MDAwfE1QREM5MDV8TVBEQzcwNkhEfE1QREM3MDZ8TVBEQzcwNXxNUERDMTEwfE1QREMxMDB8TVBEQzk5fE1QREM5N3xNUERDODh8TVBEQzh8TVBEQzc3fE1QNzA5fE1JRDcwMXxNSUQ3MTF8TUlEMTcwfE1QREM3MDN8TVBRQzEwMTAiLENlbGtvblRhYmxldDoiQ1Q2OTV8Q1Q4ODh8Q1RbXFxzXT85MTB8Q1Q3IFRhYnxDVDkgVGFifENUMyBUYWJ8Q1QyIFRhYnxDVDEgVGFifEM4MjB8QzcyMHxcXGJDVC0xXFxiIixXb2xkZXJUYWJsZXQ6Im1pVGFiIFxcYihESUFNT05EfFNQQUNFfEJST09LTFlOfE5FT3xGTFl8TUFOSEFUVEFOfEZVTkt8RVZPTFVUSU9OfFNLWXxHT0NBUnxJUk9OfEdFTklVU3xQT1B8TUlOVHxFUFNJTE9OfEJST0FEV0FZfEpVTVB8SE9QfExFR0VORHxORVcgQUdFfExJTkV8QURWQU5DRXxGRUVMfEZPTExPV3xMSUtFfExJTkt8TElWRXxUSElOS3xGUkVFRE9NfENISUNBR098Q0xFVkVMQU5EfEJBTFRJTU9SRS1HSHxJT1dBfEJPU1RPTnxTRUFUVExFfFBIT0VOSVh8REFMTEFTfElOIDEwMXxNYXN0ZXJDaGVmKVxcYiIsTWVkaWFjb21UYWJsZXQ6Ik0tTVBJMTBDM0d8TS1TUDEwRUd8TS1TUDEwRUdQfE0tU1AxMEhYQUh8TS1TUDdIWEFIfE0tU1AxMEhYQkh8TS1TUDhIWEFIfE0tU1A4TVhBIixNaVRhYmxldDoiXFxiTUkgUEFEXFxifFxcYkhNIE5PVEUgMVdcXGIiLE5pYmlydVRhYmxldDoiTmliaXJ1IE0xfE5pYmlydSBKdXBpdGVyIE9uZSIsTmV4b1RhYmxldDoiTkVYTyBOT1ZBfE5FWE8gMTB8TkVYTyBBVklPfE5FWE8gRlJFRXxORVhPIEdPfE5FWE8gRVZPfE5FWE8gM0d8TkVYTyBTTUFSVHxORVhPIEtJRERPfE5FWE8gTU9CSSIsTGVhZGVyVGFibGV0OiJUQkxUMTBRfFRCTFQxMEl8VEJMLTEwV0RLQnxUQkwtMTBXREtCTzIwMTN8VEJMLVcyMzBWMnxUQkwtVzQ1MHxUQkwtVzUwMHxTVjU3MnxUQkxUN0l8VEJBLUFDNy04R3xUQkxUNzl8VEJMLThXMTZ8VEJMLTEwVzMyfFRCTC0xMFdLQnxUQkwtVzEwMCIsVWJpc2xhdGVUYWJsZXQ6IlViaVNsYXRlW1xcc10/N0MiLFBvY2tldEJvb2tUYWJsZXQ6IlBvY2tldGJvb2siLEtvY2Fzb1RhYmxldDoiXFxiKFRCLTEyMDcpXFxiIixIaXNlbnNlVGFibGV0OiJcXGIoRjUyODF8RTIzNzEpXFxiIixIdWRsOiJIdWRsIEhUN1MzfEh1ZGwgMiIsVGVsc3RyYVRhYmxldDoiVC1IdWIyIixHZW5lcmljVGFibGV0OiJBbmRyb2lkLipcXGI5N0RcXGJ8VGFibGV0KD8hLipQQyl8Qk5UVjI1MEF8TUlELVdDRE1BfExvZ2ljUEQgWm9vbTJ8XFxiQTdFQlxcYnxDYXROb3ZhOHxBMV8wN3xDVDcwNHxDVDEwMDJ8XFxiTTcyMVxcYnxyazMwc2RrfFxcYkVWT1RBQlxcYnxNNzU4QXxFVDkwNHxBTFVNSVVNMTB8U21hcnRmcmVuIFRhYnxFbmRlYXZvdXIgMTAxMHxUYWJsZXQtUEMtNHxUYWdpIFRhYnxcXGJNNnByb1xcYnxDVDEwMjBXfGFyYyAxMEhEfFxcYlRQNzUwXFxifFxcYlFUQVFaM1xcYnxXVlQxMDF8VE0xMDg4fEtUMTA3In0sb3NzOntBbmRyb2lkT1M6IkFuZHJvaWQiLEJsYWNrQmVycnlPUzoiYmxhY2tiZXJyeXxcXGJCQjEwXFxifHJpbSB0YWJsZXQgb3MiLFBhbG1PUzoiUGFsbU9TfGF2YW50Z298YmxhemVyfGVsYWluZXxoaXB0b3B8cGFsbXxwbHVja2VyfHhpaW5vIixTeW1iaWFuT1M6IlN5bWJpYW58U3ltYk9TfFNlcmllczYwfFNlcmllczQwfFNZQi1bMC05XSt8XFxiUzYwXFxiIixXaW5kb3dzTW9iaWxlT1M6IldpbmRvd3MgQ0UuKihQUEN8U21hcnRwaG9uZXxNb2JpbGV8WzAtOV17M314WzAtOV17M30pfFdpbmRvd3MgTW9iaWxlfFdpbmRvd3MgUGhvbmUgWzAtOS5dK3xXQ0U7IixXaW5kb3dzUGhvbmVPUzoiV2luZG93cyBQaG9uZSAxMC4wfFdpbmRvd3MgUGhvbmUgOC4xfFdpbmRvd3MgUGhvbmUgOC4wfFdpbmRvd3MgUGhvbmUgT1N8WEJMV1A3fFp1bmVXUDd8V2luZG93cyBOVCA2LlsyM107IEFSTTsiLGlPUzoiXFxiaVBob25lLipNb2JpbGV8XFxiaVBvZHxcXGJpUGFkfEFwcGxlQ29yZU1lZGlhIixpUGFkT1M6IkNQVSBPUyAxMyIsU2FpbGZpc2hPUzoiU2FpbGZpc2giLE1lZUdvT1M6Ik1lZUdvIixNYWVtb09TOiJNYWVtbyIsSmF2YU9TOiJKMk1FL3xcXGJNSURQXFxifFxcYkNMRENcXGIiLHdlYk9TOiJ3ZWJPU3xocHdPUyIsYmFkYU9TOiJcXGJCYWRhXFxiIixCUkVXT1M6IkJSRVcifSx1YXM6e0Nocm9tZToiXFxiQ3JNb1xcYnxDcmlPU3xBbmRyb2lkLipDaHJvbWUvWy4wLTldKiAoTW9iaWxlKT8iLERvbGZpbjoiXFxiRG9sZmluXFxiIixPcGVyYToiT3BlcmEuKk1pbml8T3BlcmEuKk1vYml8QW5kcm9pZC4qT3BlcmF8TW9iaWxlLipPUFIvWzAtOS5dKyR8Q29hc3QvWzAtOS5dKyIsU2t5ZmlyZToiU2t5ZmlyZSIsRWRnZToiXFxiRWRnaU9TXFxifE1vYmlsZSBTYWZhcmkvWy4wLTldKiBFZGdlIixJRToiSUVNb2JpbGV8TVNJRU1vYmlsZSIsRmlyZWZveDoiZmVubmVjfGZpcmVmb3guKm1hZW1vfChNb2JpbGV8VGFibGV0KS4qRmlyZWZveHxGaXJlZm94LipNb2JpbGV8RnhpT1MiLEJvbHQ6ImJvbHQiLFRlYVNoYXJrOiJ0ZWFzaGFyayIsQmxhemVyOiJCbGF6ZXIiLFNhZmFyaToiVmVyc2lvbigoPyFcXGJFZGdpT1NcXGIpLikqTW9iaWxlLipTYWZhcml8U2FmYXJpLipNb2JpbGV8TW9iaWxlU2FmYXJpIixXZUNoYXQ6IlxcYk1pY3JvTWVzc2VuZ2VyXFxiIixVQ0Jyb3dzZXI6IlVDLipCcm93c2VyfFVDV0VCIixiYWlkdWJveGFwcDoiYmFpZHVib3hhcHAiLGJhaWR1YnJvd3NlcjoiYmFpZHVicm93c2VyIixEaWlnb0Jyb3dzZXI6IkRpaWdvQnJvd3NlciIsTWVyY3VyeToiXFxiTWVyY3VyeVxcYiIsT2JpZ29Ccm93c2VyOiJPYmlnbyIsTmV0RnJvbnQ6Ik5GLUJyb3dzZXIiLEdlbmVyaWNCcm93c2VyOiJOb2tpYUJyb3dzZXJ8T3ZpQnJvd3NlcnxPbmVCcm93c2VyfFR3b25reUJlYW1Ccm93c2VyfFNFTUMuKkJyb3dzZXJ8Rmx5Rmxvd3xNaW5pbW98TmV0RnJvbnR8Tm92YXJyYS1WaXNpb258TVFRQnJvd3NlcnxNaWNyb01lc3NlbmdlciIsUGFsZU1vb246IkFuZHJvaWQuKlBhbGVNb29ufE1vYmlsZS4qUGFsZU1vb24ifSxwcm9wczp7TW9iaWxlOiJNb2JpbGUvW1ZFUl0iLEJ1aWxkOiJCdWlsZC9bVkVSXSIsVmVyc2lvbjoiVmVyc2lvbi9bVkVSXSIsVmVuZG9ySUQ6IlZlbmRvcklEL1tWRVJdIixpUGFkOiJpUGFkLipDUFVbYS16IF0rW1ZFUl0iLGlQaG9uZToiaVBob25lLipDUFVbYS16IF0rW1ZFUl0iLGlQb2Q6ImlQb2QuKkNQVVthLXogXStbVkVSXSIsS2luZGxlOiJLaW5kbGUvW1ZFUl0iLENocm9tZTpbIkNocm9tZS9bVkVSXSIsIkNyaU9TL1tWRVJdIiwiQ3JNby9bVkVSXSJdLENvYXN0OlsiQ29hc3QvW1ZFUl0iXSxEb2xmaW46IkRvbGZpbi9bVkVSXSIsRmlyZWZveDpbIkZpcmVmb3gvW1ZFUl0iLCJGeGlPUy9bVkVSXSJdLEZlbm5lYzoiRmVubmVjL1tWRVJdIixFZGdlOiJFZGdlL1tWRVJdIixJRTpbIklFTW9iaWxlL1tWRVJdOyIsIklFTW9iaWxlIFtWRVJdIiwiTVNJRSBbVkVSXTsiLCJUcmlkZW50L1swLTkuXSs7LipydjpbVkVSXSJdLE5ldEZyb250OiJOZXRGcm9udC9bVkVSXSIsTm9raWFCcm93c2VyOiJOb2tpYUJyb3dzZXIvW1ZFUl0iLE9wZXJhOlsiIE9QUi9bVkVSXSIsIk9wZXJhIE1pbmkvW1ZFUl0iLCJWZXJzaW9uL1tWRVJdIl0sIk9wZXJhIE1pbmkiOiJPcGVyYSBNaW5pL1tWRVJdIiwiT3BlcmEgTW9iaSI6IlZlcnNpb24vW1ZFUl0iLFVDQnJvd3NlcjpbIlVDV0VCW1ZFUl0iLCJVQy4qQnJvd3Nlci9bVkVSXSJdLE1RUUJyb3dzZXI6Ik1RUUJyb3dzZXIvW1ZFUl0iLE1pY3JvTWVzc2VuZ2VyOiJNaWNyb01lc3Nlbmdlci9bVkVSXSIsYmFpZHVib3hhcHA6ImJhaWR1Ym94YXBwL1tWRVJdIixiYWlkdWJyb3dzZXI6ImJhaWR1YnJvd3Nlci9bVkVSXSIsU2Ftc3VuZ0Jyb3dzZXI6IlNhbXN1bmdCcm93c2VyL1tWRVJdIixJcm9uOiJJcm9uL1tWRVJdIixTYWZhcmk6WyJWZXJzaW9uL1tWRVJdIiwiU2FmYXJpL1tWRVJdIl0sU2t5ZmlyZToiU2t5ZmlyZS9bVkVSXSIsVGl6ZW46IlRpemVuL1tWRVJdIixXZWJraXQ6IndlYmtpdFsgL11bVkVSXSIsUGFsZU1vb246IlBhbGVNb29uL1tWRVJdIixTYWlsZmlzaEJyb3dzZXI6IlNhaWxmaXNoQnJvd3Nlci9bVkVSXSIsR2Vja286IkdlY2tvL1tWRVJdIixUcmlkZW50OiJUcmlkZW50L1tWRVJdIixQcmVzdG86IlByZXN0by9bVkVSXSIsR29hbm5hOiJHb2FubmEvW1ZFUl0iLGlPUzoiIFxcYmk/T1NcXGIgW1ZFUl1bIDtdezF9IixBbmRyb2lkOiJBbmRyb2lkIFtWRVJdIixTYWlsZmlzaDoiU2FpbGZpc2ggW1ZFUl0iLEJsYWNrQmVycnk6WyJCbGFja0JlcnJ5W1xcd10rL1tWRVJdIiwiQmxhY2tCZXJyeS4qVmVyc2lvbi9bVkVSXSIsIlZlcnNpb24vW1ZFUl0iXSxCUkVXOiJCUkVXIFtWRVJdIixKYXZhOiJKYXZhL1tWRVJdIiwiV2luZG93cyBQaG9uZSBPUyI6WyJXaW5kb3dzIFBob25lIE9TIFtWRVJdIiwiV2luZG93cyBQaG9uZSBbVkVSXSJdLCJXaW5kb3dzIFBob25lIjoiV2luZG93cyBQaG9uZSBbVkVSXSIsIldpbmRvd3MgQ0UiOiJXaW5kb3dzIENFL1tWRVJdIiwiV2luZG93cyBOVCI6IldpbmRvd3MgTlQgW1ZFUl0iLFN5bWJpYW46WyJTeW1iaWFuT1MvW1ZFUl0iLCJTeW1iaWFuL1tWRVJdIl0sd2ViT1M6WyJ3ZWJPUy9bVkVSXSIsImhwd09TL1tWRVJdOyJdfSx1dGlsczp7Qm90OiJHb29nbGVib3R8ZmFjZWJvb2tleHRlcm5hbGhpdHxHb29nbGUtQU1QSFRNTHxzfmFtcC12YWxpZGF0b3J8QWRzQm90LUdvb2dsZXxHb29nbGUgS2V5d29yZCBTdWdnZXN0aW9ufEZhY2Vib3R8WWFuZGV4Qm90fFlhbmRleE1vYmlsZUJvdHxiaW5nYm90fGlhX2FyY2hpdmVyfEFocmVmc0JvdHxFem9vbXN8R1NMRmJvdHxXQlNlYXJjaEJvdHxUd2l0dGVyYm90fFR3ZWV0bWVtZUJvdHxUd2lrbGV8UGFwZXJMaUJvdHxXb3Rib3h8VW53aW5kRmV0Y2hvcnxFeGFib3R8TUoxMmJvdHxZYW5kZXhJbWFnZXN8VHVybml0aW5Cb3R8UGluZ2RvbXxjb250ZW50a2luZ2FwcHxBc3BpZWdlbEJvdCIsTW9iaWxlQm90OiJHb29nbGVib3QtTW9iaWxlfEFkc0JvdC1Hb29nbGUtTW9iaWxlfFlhaG9vU2Vla2VyL00xQTEtUjJEMiIsRGVza3RvcE1vZGU6IldQRGVza3RvcCIsVFY6IlNvbnlEVFZ8SGJiVFYiLFdlYktpdDoiKHdlYmtpdClbIC9dKFtcXHcuXSspIixDb25zb2xlOiJcXGIoTmludGVuZG98TmludGVuZG8gV2lpVXxOaW50ZW5kbyAzRFN8TmludGVuZG8gU3dpdGNofFBMQVlTVEFUSU9OfFhib3gpXFxiIixXYXRjaDoiU00tVjcwMCJ9fSxnLmRldGVjdE1vYmlsZUJyb3dzZXJzPXtmdWxsUGF0dGVybjovKGFuZHJvaWR8YmJcZCt8bWVlZ28pLittb2JpbGV8YXZhbnRnb3xiYWRhXC98YmxhY2tiZXJyeXxibGF6ZXJ8Y29tcGFsfGVsYWluZXxmZW5uZWN8aGlwdG9wfGllbW9iaWxlfGlwKGhvbmV8b2QpfGlyaXN8a2luZGxlfGxnZSB8bWFlbW98bWlkcHxtbXB8bW9iaWxlLitmaXJlZm94fG5ldGZyb250fG9wZXJhIG0ob2J8aW4paXxwYWxtKCBvcyk/fHBob25lfHAoaXhpfHJlKVwvfHBsdWNrZXJ8cG9ja2V0fHBzcHxzZXJpZXMoNHw2KTB8c3ltYmlhbnx0cmVvfHVwXC4oYnJvd3NlcnxsaW5rKXx2b2RhZm9uZXx3YXB8d2luZG93cyBjZXx4ZGF8eGlpbm8vaSwNCnNob3J0UGF0dGVybjovMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLHRhYmxldFBhdHRlcm46L2FuZHJvaWR8aXBhZHxwbGF5Ym9va3xzaWxrL2l9O3ZhciBoLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtyZXR1cm4gZy5GQUxMQkFDS19QSE9ORT0iVW5rbm93blBob25lIixnLkZBTExCQUNLX1RBQkxFVD0iVW5rbm93blRhYmxldCIsZy5GQUxMQkFDS19NT0JJTEU9IlVua25vd25Nb2JpbGUiLGg9ImlzQXJyYXkiaW4gQXJyYXk/QXJyYXkuaXNBcnJheTpmdW5jdGlvbihhKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGEpfSxmdW5jdGlvbigpe3ZhciBhLGIsYyxlLGYsaixrPWcubW9iaWxlRGV0ZWN0UnVsZXM7Zm9yKGEgaW4gay5wcm9wcylpZihpLmNhbGwoay5wcm9wcyxhKSl7Zm9yKGI9ay5wcm9wc1thXSxoKGIpfHwoYj1bYl0pLGY9Yi5sZW5ndGgsZT0wO2U8ZjsrK2UpYz1iW2VdLGo9Yy5pbmRleE9mKCJbVkVSXSIpLGo+PTAmJihjPWMuc3Vic3RyaW5nKDAsaikrIihbXFx3Ll9cXCtdKykiK2Muc3Vic3RyaW5nKGorNSkpLGJbZV09bmV3IFJlZ0V4cChjLCJpIik7ay5wcm9wc1thXT1ifWQoay5vc3MpLGQoay5waG9uZXMpLGQoay50YWJsZXRzKSxkKGsudWFzKSxkKGsudXRpbHMpLGsub3NzMD17V2luZG93c1Bob25lT1M6ay5vc3MuV2luZG93c1Bob25lT1MsV2luZG93c01vYmlsZU9TOmsub3NzLldpbmRvd3NNb2JpbGVPU319KCksZy5maW5kTWF0Y2g9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMgaW4gYSlpZihpLmNhbGwoYSxjKSYmYVtjXS50ZXN0KGIpKXJldHVybiBjO3JldHVybiBudWxsfSxnLmZpbmRNYXRjaGVzPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107Zm9yKHZhciBkIGluIGEpaS5jYWxsKGEsZCkmJmFbZF0udGVzdChiKSYmYy5wdXNoKGQpO3JldHVybiBjfSxnLmdldFZlcnNpb25TdHI9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixoPWcubW9iaWxlRGV0ZWN0UnVsZXMucHJvcHM7aWYoaS5jYWxsKGgsYSkpZm9yKGM9aFthXSxlPWMubGVuZ3RoLGQ9MDtkPGU7KytkKWlmKGY9Y1tkXS5leGVjKGIpLG51bGwhPT1mKXJldHVybiBmWzFdO3JldHVybiBudWxsfSxnLmdldFZlcnNpb249ZnVuY3Rpb24oYSxiKXt2YXIgYz1nLmdldFZlcnNpb25TdHIoYSxiKTtyZXR1cm4gYz9nLnByZXBhcmVWZXJzaW9uTm8oYyk6TmFOfSxnLnByZXBhcmVWZXJzaW9uTm89ZnVuY3Rpb24oYSl7dmFyIGI7cmV0dXJuIGI9YS5zcGxpdCgvW2Etei5fIFwvXC1dL2kpLDE9PT1iLmxlbmd0aCYmKGE9YlswXSksYi5sZW5ndGg+MSYmKGE9YlswXSsiLiIsYi5zaGlmdCgpLGErPWIuam9pbigiIikpLE51bWJlcihhKX0sZy5pc01vYmlsZUZhbGxiYWNrPWZ1bmN0aW9uKGEpe3JldHVybiBnLmRldGVjdE1vYmlsZUJyb3dzZXJzLmZ1bGxQYXR0ZXJuLnRlc3QoYSl8fGcuZGV0ZWN0TW9iaWxlQnJvd3NlcnMuc2hvcnRQYXR0ZXJuLnRlc3QoYS5zdWJzdHIoMCw0KSl9LGcuaXNUYWJsZXRGYWxsYmFjaz1mdW5jdGlvbihhKXtyZXR1cm4gZy5kZXRlY3RNb2JpbGVCcm93c2Vycy50YWJsZXRQYXR0ZXJuLnRlc3QoYSl9LGcucHJlcGFyZURldGVjdGlvbkNhY2hlPWZ1bmN0aW9uKGEsYyxkKXtpZihhLm1vYmlsZT09PWIpe3ZhciBlLGgsaTtyZXR1cm4oaD1nLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLnRhYmxldHMsYykpPyhhLm1vYmlsZT1hLnRhYmxldD1oLHZvaWQoYS5waG9uZT1udWxsKSk6KGU9Zy5maW5kTWF0Y2goZy5tb2JpbGVEZXRlY3RSdWxlcy5waG9uZXMsYykpPyhhLm1vYmlsZT1hLnBob25lPWUsdm9pZChhLnRhYmxldD1udWxsKSk6dm9pZChnLmlzTW9iaWxlRmFsbGJhY2soYyk/KGk9Zi5pc1Bob25lU2l6ZWQoZCksaT09PWI/KGEubW9iaWxlPWcuRkFMTEJBQ0tfTU9CSUxFLGEudGFibGV0PWEucGhvbmU9bnVsbCk6aT8oYS5tb2JpbGU9YS5waG9uZT1nLkZBTExCQUNLX1BIT05FLGEudGFibGV0PW51bGwpOihhLm1vYmlsZT1hLnRhYmxldD1nLkZBTExCQUNLX1RBQkxFVCxhLnBob25lPW51bGwpKTpnLmlzVGFibGV0RmFsbGJhY2soYyk/KGEubW9iaWxlPWEudGFibGV0PWcuRkFMTEJBQ0tfVEFCTEVULGEucGhvbmU9bnVsbCk6YS5tb2JpbGU9YS50YWJsZXQ9YS5waG9uZT1udWxsKX19LGcubW9iaWxlR3JhZGU9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbCE9PWEubW9iaWxlKCk7cmV0dXJuIGEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQYWQiKT49NC4zfHxhLm9zKCJpT1MiKSYmYS52ZXJzaW9uKCJpUGhvbmUiKT49My4xfHxhLm9zKCJpT1MiKSYmYS52ZXJzaW9uKCJpUG9kIik+PTMuMXx8YS52ZXJzaW9uKCJBbmRyb2lkIik+Mi4xJiZhLmlzKCJXZWJraXQiKXx8YS52ZXJzaW9uKCJXaW5kb3dzIFBob25lIE9TIik+PTd8fGEuaXMoIkJsYWNrQmVycnkiKSYmYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik+PTZ8fGEubWF0Y2goIlBsYXlib29rLipUYWJsZXQiKXx8YS52ZXJzaW9uKCJ3ZWJPUyIpPj0xLjQmJmEubWF0Y2goIlBhbG18UHJlfFBpeGkiKXx8YS5tYXRjaCgiaHAuKlRvdWNoUGFkIil8fGEuaXMoIkZpcmVmb3giKSYmYS52ZXJzaW9uKCJGaXJlZm94Iik+PTEyfHxhLmlzKCJDaHJvbWUiKSYmYS5pcygiQW5kcm9pZE9TIikmJmEudmVyc2lvbigiQW5kcm9pZCIpPj00fHxhLmlzKCJTa3lmaXJlIikmJmEudmVyc2lvbigiU2t5ZmlyZSIpPj00LjEmJmEuaXMoIkFuZHJvaWRPUyIpJiZhLnZlcnNpb24oIkFuZHJvaWQiKT49Mi4zfHxhLmlzKCJPcGVyYSIpJiZhLnZlcnNpb24oIk9wZXJhIE1vYmkiKT4xMSYmYS5pcygiQW5kcm9pZE9TIil8fGEuaXMoIk1lZUdvT1MiKXx8YS5pcygiVGl6ZW4iKXx8YS5pcygiRG9sZmluIikmJmEudmVyc2lvbigiQmFkYSIpPj0yfHwoYS5pcygiVUMgQnJvd3NlciIpfHxhLmlzKCJEb2xmaW4iKSkmJmEudmVyc2lvbigiQW5kcm9pZCIpPj0yLjN8fGEubWF0Y2goIktpbmRsZSBGaXJlIil8fGEuaXMoIktpbmRsZSIpJiZhLnZlcnNpb24oIktpbmRsZSIpPj0zfHxhLmlzKCJBbmRyb2lkT1MiKSYmYS5pcygiTm9va1RhYmxldCIpfHxhLnZlcnNpb24oIkNocm9tZSIpPj0xMSYmIWJ8fGEudmVyc2lvbigiU2FmYXJpIik+PTUmJiFifHxhLnZlcnNpb24oIkZpcmVmb3giKT49NCYmIWJ8fGEudmVyc2lvbigiTVNJRSIpPj03JiYhYnx8YS52ZXJzaW9uKCJPcGVyYSIpPj0xMCYmIWI/IkEiOmEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQYWQiKTw0LjN8fGEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQaG9uZSIpPDMuMXx8YS5vcygiaU9TIikmJmEudmVyc2lvbigiaVBvZCIpPDMuMXx8YS5pcygiQmxhY2tiZXJyeSIpJiZhLnZlcnNpb24oIkJsYWNrQmVycnkiKT49NSYmYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik8Nnx8YS52ZXJzaW9uKCJPcGVyYSBNaW5pIik+PTUmJmEudmVyc2lvbigiT3BlcmEgTWluaSIpPD02LjUmJihhLnZlcnNpb24oIkFuZHJvaWQiKT49Mi4zfHxhLmlzKCJpT1MiKSl8fGEubWF0Y2goIk5va2lhTjh8Tm9raWFDN3xOOTcuKlNlcmllczYwfFN5bWJpYW4vMyIpfHxhLnZlcnNpb24oIk9wZXJhIE1vYmkiKT49MTEmJmEuaXMoIlN5bWJpYW5PUyIpPyJCIjooYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik8NXx8YS5tYXRjaCgiTVNJRU1vYmlsZXxXaW5kb3dzIENFLipNb2JpbGUiKXx8YS52ZXJzaW9uKCJXaW5kb3dzIE1vYmlsZSIpPD01LjIsIkMiKX0sZy5kZXRlY3RPUz1mdW5jdGlvbihhKXtyZXR1cm4gZy5maW5kTWF0Y2goZy5tb2JpbGVEZXRlY3RSdWxlcy5vc3MwLGEpfHxnLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLm9zcyxhKX0sZy5nZXREZXZpY2VTbWFsbGVyU2lkZT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuc2NyZWVuLndpZHRoPHdpbmRvdy5zY3JlZW4uaGVpZ2h0P3dpbmRvdy5zY3JlZW4ud2lkdGg6d2luZG93LnNjcmVlbi5oZWlnaHR9LGYucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpmLG1vYmlsZTpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUubW9iaWxlfSxwaG9uZTpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUucGhvbmV9LHRhYmxldDpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUudGFibGV0fSx1c2VyQWdlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fY2FjaGUudXNlckFnZW50PT09YiYmKHRoaXMuX2NhY2hlLnVzZXJBZ2VudD1nLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLnVhcyx0aGlzLnVhKSksdGhpcy5fY2FjaGUudXNlckFnZW50fSx1c2VyQWdlbnRzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2NhY2hlLnVzZXJBZ2VudHM9PT1iJiYodGhpcy5fY2FjaGUudXNlckFnZW50cz1nLmZpbmRNYXRjaGVzKGcubW9iaWxlRGV0ZWN0UnVsZXMudWFzLHRoaXMudWEpKSx0aGlzLl9jYWNoZS51c2VyQWdlbnRzfSxvczpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9jYWNoZS5vcz09PWImJih0aGlzLl9jYWNoZS5vcz1nLmRldGVjdE9TKHRoaXMudWEpKSx0aGlzLl9jYWNoZS5vc30sdmVyc2lvbjpmdW5jdGlvbihhKXtyZXR1cm4gZy5nZXRWZXJzaW9uKGEsdGhpcy51YSl9LHZlcnNpb25TdHI6ZnVuY3Rpb24oYSl7cmV0dXJuIGcuZ2V0VmVyc2lvblN0cihhLHRoaXMudWEpfSxpczpmdW5jdGlvbihiKXtyZXR1cm4gYyh0aGlzLnVzZXJBZ2VudHMoKSxiKXx8YShiLHRoaXMub3MoKSl8fGEoYix0aGlzLnBob25lKCkpfHxhKGIsdGhpcy50YWJsZXQoKSl8fGMoZy5maW5kTWF0Y2hlcyhnLm1vYmlsZURldGVjdFJ1bGVzLnV0aWxzLHRoaXMudWEpLGIpfSxtYXRjaDpmdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFJlZ0V4cHx8KGE9bmV3IFJlZ0V4cChhLCJpIikpLGEudGVzdCh0aGlzLnVhKX0saXNQaG9uZVNpemVkOmZ1bmN0aW9uKGEpe3JldHVybiBmLmlzUGhvbmVTaXplZChhfHx0aGlzLm1heFBob25lV2lkdGgpfSxtb2JpbGVHcmFkZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9jYWNoZS5ncmFkZT09PWImJih0aGlzLl9jYWNoZS5ncmFkZT1nLm1vYmlsZUdyYWRlKHRoaXMpKSx0aGlzLl9jYWNoZS5ncmFkZX19LCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuc2NyZWVuP2YuaXNQaG9uZVNpemVkPWZ1bmN0aW9uKGEpe3JldHVybiBhPDA/YjpnLmdldERldmljZVNtYWxsZXJTaWRlKCk8PWF9OmYuaXNQaG9uZVNpemVkPWZ1bmN0aW9uKCl7fSxmLl9pbXBsPWcsZi52ZXJzaW9uPSIxLjQuNSAyMDIxLTAzLTEzIixmfSl9KGZ1bmN0aW9uKGEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlJiZtb2R1bGUuZXhwb3J0cylyZXR1cm4gZnVuY3Rpb24oYSl7bW9kdWxlLmV4cG9ydHM9YSgpfTtpZigiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kKXJldHVybiBkZWZpbmU7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpcmV0dXJuIGZ1bmN0aW9uKGEpe3dpbmRvdy5Nb2JpbGVEZXRlY3Q9YSgpfTt0aHJvdyBuZXcgRXJyb3IoInVua25vd24gZW52aXJvbm1lbnQiKX0oKSk7dmFyIGFpX2xpc3RzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7CmlmKCJ1bmRlZmluZWQiIT10eXBlb2YgYWlfbGlzdHMpe2Z1bmN0aW9uIFgoYixlKXtmb3IodmFyIHA9W107Yj1iLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7KSgidW5kZWZpbmVkIj09dHlwZW9mIGV8fGIubWF0Y2hlcyhlKSkmJnAucHVzaChiKTtyZXR1cm4gcH1mdW5jdGlvbiBmYShiLGUpe2Zvcih2YXIgcD1bXTtiPWIubmV4dEVsZW1lbnRTaWJsaW5nOykoInVuZGVmaW5lZCI9PXR5cGVvZiBlfHxiLm1hdGNoZXMoZSkpJiZwLnB1c2goYik7cmV0dXJuIHB9dmFyIGhvc3RfcmVnZXhwPVJlZ0V4cCgiOlxcL1xcLyguW14vOl0rKSIsImkiKTtmdW5jdGlvbiBoYShiKXtiPWIubWF0Y2goaG9zdF9yZWdleHApO3JldHVybiBudWxsIT1iJiYxPGIubGVuZ3RoJiYic3RyaW5nIj09PXR5cGVvZiBiWzFdJiYwPGJbMV0ubGVuZ3RoP2JbMV0udG9Mb3dlckNhc2UoKTpudWxsfWZ1bmN0aW9uIFEoYil7cmV0dXJuIGIuaW5jbHVkZXMoIjoiKT8oYj1iLnNwbGl0KCI6IiksMUUzKigzNjAwKnBhcnNlSW50KGJbMF0pKwo2MCpwYXJzZUludChiWzFdKStwYXJzZUludChiWzJdKSkpOm51bGx9ZnVuY3Rpb24gWShiKXt0cnl7dmFyIGU9RGF0ZS5wYXJzZShiKTtpc05hTihlKSYmKGU9bnVsbCl9Y2F0Y2gocCl7ZT1udWxsfWlmKG51bGw9PWUmJmIuaW5jbHVkZXMoIiAiKSl7Yj1iLnNwbGl0KCIgIik7dHJ5e2U9RGF0ZS5wYXJzZShiWzBdKSxlKz1RKGJbMV0pLGlzTmFOKGUpJiYoZT1udWxsKX1jYXRjaChwKXtlPW51bGx9fXJldHVybiBlfWZ1bmN0aW9uIFooKXtudWxsPT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1iYXIiKSYmbnVsbD09ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmFpLWxpc3QtbWFudWFsIil8fCJmdW5jdGlvbiIhPXR5cGVvZiBfX3RjZmFwaXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGFpX2xvYWRfYmxvY2tzfHwidW5kZWZpbmVkIiE9dHlwZW9mIGFpX2lhYl90Y2ZfY2FsbGJhY2tfaW5zdGFsbGVkfHwoX190Y2ZhcGkoImFkZEV2ZW50TGlzdGVuZXIiLDIsZnVuY3Rpb24oYiwKZSl7ZSYmInVzZXJhY3Rpb25jb21wbGV0ZSI9PT1iLmV2ZW50U3RhdHVzJiYoYWlfdGNEYXRhPWIsYWlfbG9hZF9ibG9ja3MoKSxiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpLG51bGwhPWImJihiLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBEQVRBIExPQURFRCIpLGI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIiksbnVsbCE9YiYmKGIuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLWVycm9yIiksYi5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSkpfSksYWlfaWFiX3RjZl9jYWxsYmFja19pbnN0YWxsZWQ9ITApfWFpX3Byb2Nlc3NfbGlzdHM9ZnVuY3Rpb24oYil7ZnVuY3Rpb24gZShhLGQsayl7aWYoMD09YS5sZW5ndGgpe2lmKCIhQCEiPT1rKXJldHVybiEwO2QhPWsmJigidHJ1ZSI9PWsudG9Mb3dlckNhc2UoKT9rPSEwOiJmYWxzZSI9PWsudG9Mb3dlckNhc2UoKSYmKGs9ITEpKTtyZXR1cm4gZD09a31pZigib2JqZWN0IiE9CnR5cGVvZiBkJiYiYXJyYXkiIT10eXBlb2YgZClyZXR1cm4hMTt2YXIgbD1hWzBdO2E9YS5zbGljZSgxKTtpZigiKiI9PWwpZm9yKGxldCBbLG5db2YgT2JqZWN0LmVudHJpZXMoZCkpe2lmKGUoYSxuLGspKXJldHVybiEwfWVsc2UgaWYobCBpbiBkKXJldHVybiBlKGEsZFtsXSxrKTtyZXR1cm4hMX1mdW5jdGlvbiBwKGEsZCxrKXtpZigib2JqZWN0IiE9dHlwZW9mIGF8fC0xPT1kLmluZGV4T2YoIlsiKSlyZXR1cm4hMTtkPWQucmVwbGFjZSgvXXwgL2dpLCIiKS5zcGxpdCgiWyIpO3JldHVybiBlKGQsYSxrKX1mdW5jdGlvbiB6KCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIF9fdGNmYXBpKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1zdGF0dXMiKSxkPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLWJhciIpO251bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBERVRFQ1RFRCIpO19fdGNmYXBpKCJnZXRUQ0RhdGEiLDIsZnVuY3Rpb24oaywKbCl7bD8obnVsbCE9ZCYmZC5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSwidGNsb2FkZWQiPT1rLmV2ZW50U3RhdHVzfHwidXNlcmFjdGlvbmNvbXBsZXRlIj09ay5ldmVudFN0YXR1cyk/KGFpX3RjRGF0YT1rLGsuZ2RwckFwcGxpZXM/bnVsbCE9YSYmKGEudGV4dENvbnRlbnQ9IklBQiBUQ0YgMi4wIERBVEEgTE9BREVEIik6bnVsbCE9YSYmKGEudGV4dENvbnRlbnQ9IklBQiBUQ0YgMi4wIEdEUFIgRE9FUyBOT1QgQVBQTFkiKSxudWxsIT1kJiYoZC5jbGFzc0xpc3QucmVtb3ZlKCJzdGF0dXMtZXJyb3IiKSxkLmNsYXNzTGlzdC5hZGQoInN0YXR1cy1vayIpKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWlfcHJvY2Vzc19saXN0cygpfSwxMCkpOiJjbXB1aXNob3duIj09ay5ldmVudFN0YXR1cyYmKGFpX2NtcHVpc2hvd249ITAsbnVsbCE9YSYmKGEudGV4dENvbnRlbnQ9IklBQiBUQ0YgMi4wIENNUCBVSSBTSE9XTiIpLG51bGwhPWQmJihkLmNsYXNzTGlzdC5yZW1vdmUoInN0YXR1cy1lcnJvciIpLApkLmNsYXNzTGlzdC5hZGQoInN0YXR1cy1vayIpKSk6KG51bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBfX3RjZmFwaSBnZXRUQ0RhdGEgZmFpbGVkIiksbnVsbCE9ZCYmKGQuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLW9rIiksZC5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtZXJyb3IiKSkpfSl9fWZ1bmN0aW9uIEMoYSl7ImZ1bmN0aW9uIj09dHlwZW9mIF9fdGNmYXBpPyhhaV90Y2ZhcGlfZm91bmQ9ITAsInVuZGVmaW5lZCI9PXR5cGVvZiBhaV9pYWJfdGNmX2NhbGxiYWNrX2luc3RhbGxlZCYmWigpLCJ1bmRlZmluZWQiPT10eXBlb2YgYWlfdGNEYXRhX3JlcXVlc3RlZCYmKGFpX3RjRGF0YV9yZXF1ZXN0ZWQ9ITAseigpLGNvb2tpZXNfbmVlZF90Y0RhdGE9ITApKTphJiYoInVuZGVmaW5lZCI9PXR5cGVvZiBhaV90Y2ZhcGlfZm91bmQmJihhaV90Y2ZhcGlfZm91bmQ9ITEsc2V0VGltZW91dChmdW5jdGlvbigpe2FpX3Byb2Nlc3NfbGlzdHMoKX0sMTApKSxhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpLApudWxsIT1hJiYoYS50ZXh0Q29udGVudD0iSUFCIFRDRiAyLjAgTUlTU0lORzogX190Y2ZhcGkgZnVuY3Rpb24gbm90IGZvdW5kIiksYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1iYXIiKSxudWxsIT1hJiYoYS5jbGFzc0xpc3QucmVtb3ZlKCJzdGF0dXMtb2siKSxhLmNsYXNzTGlzdC5hZGQoInN0YXR1cy1lcnJvciIpKSl9aWYobnVsbD09YiliPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImRpdi5haS1saXN0LWRhdGEsIG1ldGEuYWktbGlzdC1kYXRhIik7ZWxzZXt3aW5kb3cualF1ZXJ5JiZ3aW5kb3cualF1ZXJ5LmZuJiZiIGluc3RhbmNlb2YgalF1ZXJ5JiYoYj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChiKSk7dmFyIHg9W107Yi5mb3JFYWNoKChhLGQpPT57YS5tYXRjaGVzKCIuYWktbGlzdC1kYXRhIik/eC5wdXNoKGEpOihhPWEucXVlcnlTZWxlY3RvckFsbCgiLmFpLWxpc3QtZGF0YSIpLGEubGVuZ3RoJiZhLmZvckVhY2goKGssbCk9Pnt4LnB1c2goayl9KSl9KTsKYj14fWlmKGIubGVuZ3RoKXtiLmZvckVhY2goKGEsZCk9PnthLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtZGF0YSIpfSk7dmFyIEw9aWEod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7aWYobnVsbCE9TC5yZWZlcnJlcil2YXIgQT1MLnJlZmVycmVyO2Vsc2UgQT1kb2N1bWVudC5yZWZlcnJlciwiIiE9QSYmKEE9aGEoQSkpO3ZhciBSPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LFM9Ui50b0xvd2VyQ2FzZSgpLGFhPW5hdmlnYXRvci5sYW5ndWFnZSxNPWFhLnRvTG93ZXJDYXNlKCk7aWYoInVuZGVmaW5lZCIhPT10eXBlb2YgTW9iaWxlRGV0ZWN0KXZhciBiYT1uZXcgTW9iaWxlRGV0ZWN0KFIpO2IuZm9yRWFjaCgoYSxkKT0+e3ZhciBrPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyIpO2suZm9yRWFjaChmdW5jdGlvbihmLGgpe2tbaF09Zi50cmltKCl9KTtkPWEuY2xvc2VzdCgiZGl2LiIrYWlfYmxvY2tfY2xhc3NfZGVmKTt2YXIgbD0hMDtpZihhLmhhc0F0dHJpYnV0ZSgicmVmZXJlci1saXN0Iikpe3ZhciBuPQphLmdldEF0dHJpYnV0ZSgicmVmZXJlci1saXN0Iik7bj1iNjRkKG4pLnNwbGl0KCIsIik7dmFyIHY9YS5nZXRBdHRyaWJ1dGUoInJlZmVyZXItbGlzdC10eXBlIiksRT0hMTtuLmV2ZXJ5KChmLGgpPT57Zj1mLnRyaW0oKTtpZigiIj09ZilyZXR1cm4hMDtpZigiKiI9PWYuY2hhckF0KDApKWlmKCIqIj09Zi5jaGFyQXQoZi5sZW5ndGgtMSkpe2lmKGY9Zi5zdWJzdHIoMSxmLmxlbmd0aC0yKSwtMSE9QS5pbmRleE9mKGYpKXJldHVybiBFPSEwLCExfWVsc2V7aWYoZj1mLnN1YnN0cigxKSxBLnN1YnN0cigtZi5sZW5ndGgpPT1mKXJldHVybiBFPSEwLCExfWVsc2UgaWYoIioiPT1mLmNoYXJBdChmLmxlbmd0aC0xKSl7aWYoZj1mLnN1YnN0cigwLGYubGVuZ3RoLTEpLDA9PUEuaW5kZXhPZihmKSlyZXR1cm4gRT0hMCwhMX1lbHNlIGlmKCIjIj09Zil7aWYoIiI9PUEpcmV0dXJuIEU9ITAsITF9ZWxzZSBpZihmPT1BKXJldHVybiBFPSEwLCExO3JldHVybiEwfSk7dmFyIHI9RTtzd2l0Y2godil7Y2FzZSAiQiI6ciYmCihsPSExKTticmVhaztjYXNlICJXIjpyfHwobD0hMSl9fWlmKGwmJmEuaGFzQXR0cmlidXRlKCJjbGllbnQtbGlzdCIpJiYidW5kZWZpbmVkIiE9PXR5cGVvZiBiYSlzd2l0Y2gobj1hLmdldEF0dHJpYnV0ZSgiY2xpZW50LWxpc3QiKSxuPWI2NGQobikuc3BsaXQoIiwiKSx2PWEuZ2V0QXR0cmlidXRlKCJjbGllbnQtbGlzdC10eXBlIikscj0hMSxuLmV2ZXJ5KChmLGgpPT57aWYoIiI9PWYudHJpbSgpKXJldHVybiEwO2Yuc3BsaXQoIiYmIikuZXZlcnkoKGMsdCk9Pnt0PSEwO3ZhciB3PSExO2ZvcihjPWMudHJpbSgpOyIhISI9PWMuc3Vic3RyaW5nKDAsMik7KXQ9IXQsYz1jLnN1YnN0cmluZygyKTsibGFuZ3VhZ2U6Ij09Yy5zdWJzdHJpbmcoMCw5KSYmKHc9ITAsYz1jLnN1YnN0cmluZyg5KS50b0xvd2VyQ2FzZSgpKTt2YXIgcT0hMTt3PyIqIj09Yy5jaGFyQXQoMCk/IioiPT1jLmNoYXJBdChjLmxlbmd0aC0xKT8oYz1jLnN1YnN0cigxLGMubGVuZ3RoLTIpLnRvTG93ZXJDYXNlKCksCi0xIT1NLmluZGV4T2YoYykmJihxPSEwKSk6KGM9Yy5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKSxNLnN1YnN0cigtYy5sZW5ndGgpPT1jJiYocT0hMCkpOiIqIj09Yy5jaGFyQXQoYy5sZW5ndGgtMSk/KGM9Yy5zdWJzdHIoMCxjLmxlbmd0aC0xKS50b0xvd2VyQ2FzZSgpLDA9PU0uaW5kZXhPZihjKSYmKHE9ITApKTpjPT1NJiYocT0hMCk6IioiPT1jLmNoYXJBdCgwKT8iKiI9PWMuY2hhckF0KGMubGVuZ3RoLTEpPyhjPWMuc3Vic3RyKDEsYy5sZW5ndGgtMikudG9Mb3dlckNhc2UoKSwtMSE9Uy5pbmRleE9mKGMpJiYocT0hMCkpOihjPWMuc3Vic3RyKDEpLnRvTG93ZXJDYXNlKCksUy5zdWJzdHIoLWMubGVuZ3RoKT09YyYmKHE9ITApKToiKiI9PWMuY2hhckF0KGMubGVuZ3RoLTEpPyhjPWMuc3Vic3RyKDAsYy5sZW5ndGgtMSkudG9Mb3dlckNhc2UoKSwwPT1TLmluZGV4T2YoYykmJihxPSEwKSk6YmEuaXMoYykmJihxPSEwKTtyZXR1cm4ocj1xP3Q6IXQpPyEwOiExfSk7cmV0dXJuIHI/CiExOiEwfSksdil7Y2FzZSAiQiI6ciYmKGw9ITEpO2JyZWFrO2Nhc2UgIlciOnJ8fChsPSExKX12YXIgTj1uPSExO2Zvcih2PTE7Mj49djt2KyspaWYobCl7c3dpdGNoKHYpe2Nhc2UgMTp2YXIgZz1hLmdldEF0dHJpYnV0ZSgiY29va2llLWxpc3QiKTticmVhaztjYXNlIDI6Zz1hLmdldEF0dHJpYnV0ZSgicGFyYW1ldGVyLWxpc3QiKX1pZihudWxsIT1nKXtnPWI2NGQoZyk7c3dpdGNoKHYpe2Nhc2UgMTp2YXIgeT1hLmdldEF0dHJpYnV0ZSgiY29va2llLWxpc3QtdHlwZSIpO2JyZWFrO2Nhc2UgMjp5PWEuZ2V0QXR0cmlidXRlKCJwYXJhbWV0ZXItbGlzdC10eXBlIil9Zz1nLnJlcGxhY2UoInRjZi1nZHByIiwidGNmLXYyW2dkcHJBcHBsaWVzXT10cnVlIik7Zz1nLnJlcGxhY2UoInRjZi1uby1nZHByIiwidGNmLXYyW2dkcHJBcHBsaWVzXT1mYWxzZSIpO2c9Zy5yZXBsYWNlKCJ0Y2YtZ29vZ2xlIiwidGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzc1NV09dHJ1ZSAmJiB0Y2YtdjJbcHVycG9zZV1bY29uc2VudHNdWzFdPXRydWUiKTsKZz1nLnJlcGxhY2UoInRjZi1uby1nb29nbGUiLCIhIXRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVs3NTVdIik7Zz1nLnJlcGxhY2UoInRjZi1tZWRpYS5uZXQiLCJ0Y2YtdjJbdmVuZG9yXVtjb25zZW50c11bMTQyXT10cnVlICYmIHRjZi12MltwdXJwb3NlXVtjb25zZW50c11bMV09dHJ1ZSIpO2c9Zy5yZXBsYWNlKCJ0Y2Ytbm8tbWVkaWEubmV0IiwiISF0Y2YtdjJbdmVuZG9yXVtjb25zZW50c11bMTQyXSIpO2c9Zy5yZXBsYWNlKCJ0Y2YtYW1hem9uIiwidGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzc5M109dHJ1ZSAmJiB0Y2YtdjJbcHVycG9zZV1bY29uc2VudHNdWzFdPXRydWUiKTtnPWcucmVwbGFjZSgidGNmLW5vLWFtYXpvbiIsIiEhdGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzc5M10iKTtnPWcucmVwbGFjZSgidGNmLWV6b2ljIiwidGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzM0N109dHJ1ZSAmJiB0Y2YtdjJbcHVycG9zZV1bY29uc2VudHNdWzFdPXRydWUiKTtnPWcucmVwbGFjZSgidGNmLW5vLWV6b2ljIiwKIiEhdGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzM0N10iKTt2YXIgRj1nLnNwbGl0KCIsIiksY2E9W107ay5mb3JFYWNoKGZ1bmN0aW9uKGYpe2Y9Zi5zcGxpdCgiPSIpO3RyeXt2YXIgaD1KU09OLnBhcnNlKGRlY29kZVVSSUNvbXBvbmVudChmWzFdKSl9Y2F0Y2goYyl7aD1kZWNvZGVVUklDb21wb25lbnQoZlsxXSl9Y2FbZlswXV09aH0pO3I9ITE7dmFyIEk9YTtGLmV2ZXJ5KChmLGgpPT57Zi5zcGxpdCgiJiYiKS5ldmVyeSgoYyx0KT0+e3Q9ITA7Zm9yKGM9Yy50cmltKCk7IiEhIj09Yy5zdWJzdHJpbmcoMCwyKTspdD0hdCxjPWMuc3Vic3RyaW5nKDIpO3ZhciB3PWMscT0iIUAhIixUPSJ0Y2YtdjIiPT13JiYiIUAhIj09cSxCPS0xIT1jLmluZGV4T2YoIlsiKSxKPTA9PWMuaW5kZXhPZigidGNmLXYyIil8fDA9PWMuaW5kZXhPZigiZXVjb25zZW50LXYyIik7Sj1KJiYoQnx8VCk7LTEhPWMuaW5kZXhPZigiPSIpJiYocT1jLnNwbGl0KCI9Iiksdz1xWzBdLHE9cVsxXSxCPS0xIT13LmluZGV4T2YoIlsiKSwKSj0oSj0wPT13LmluZGV4T2YoInRjZi12MiIpfHwwPT13LmluZGV4T2YoImV1Y29uc2VudC12MiIpKSYmKEJ8fFQpKTtpZihKKWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpLEI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIiksbnVsbCE9QiYmKEIuc3R5bGUuZGlzcGxheT0iYmxvY2siKSxUJiYiYm9vbGVhbiI9PXR5cGVvZiBhaV90Y2ZhcGlfZm91bmQ/cj1haV90Y2ZhcGlfZm91bmQ/dDohdDoib2JqZWN0Ij09dHlwZW9mIGFpX3RjRGF0YT8obnVsbCE9QiYmQi5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSx3PXcucmVwbGFjZSgvXXwgL2dpLCIiKS5zcGxpdCgiWyIpLHcuc2hpZnQoKSxyPSh3PWUodyxhaV90Y0RhdGEscSkpP3Q6IXQpOiJ1bmRlZmluZWQiPT10eXBlb2YgYWlfdGNmYXBpX2ZvdW5kJiYoSS5jbGFzc0xpc3QuYWRkKCJhaS1saXN0LWRhdGEiKSxOPSEwLCJmdW5jdGlvbiI9PXR5cGVvZiBfX3RjZmFwaT9DKCExKToKInVuZGVmaW5lZCI9PXR5cGVvZiBhaV90Y0RhdGFfcmV0cnlpbmcmJihhaV90Y0RhdGFfcmV0cnlpbmc9ITAsc2V0VGltZW91dChmdW5jdGlvbigpeyJmdW5jdGlvbiI9PXR5cGVvZiBfX3RjZmFwaT9DKCExKTpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ImZ1bmN0aW9uIj09dHlwZW9mIF9fdGNmYXBpP0MoITEpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtDKCEwKX0sM0UzKX0sMUUzKX0sNjAwKSkpO2Vsc2UgaWYoQilyPSh3PXAoY2EsdyxxKSk/dDohdDtlbHNle3ZhciBVPSExOyIhQCEiPT1xP2suZXZlcnkoZnVuY3Rpb24oamEpe3JldHVybiBqYS5zcGxpdCgiPSIpWzBdPT1jPyhVPSEwLCExKTohMH0pOlU9LTEhPWsuaW5kZXhPZihjKTtyPVU/dDohdH1yZXR1cm4gcj8hMDohMX0pO3JldHVybiByPyExOiEwfSk7ciYmKE49ITEsSS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWRhdGEiKSk7c3dpdGNoKHkpe2Nhc2UgIkIiOnImJihsPSExKTticmVhaztjYXNlICJXIjpyfHwobD0hMSl9fX1hLmNsYXNzTGlzdC5jb250YWlucygiYWktbGlzdC1tYW51YWwiKSYmCihsPyhJLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtZGF0YSIpLEkuY2xhc3NMaXN0LnJlbW92ZSgiYWktbGlzdC1tYW51YWwiKSk6KG49ITAsSS5jbGFzc0xpc3QuYWRkKCJhaS1saXN0LWRhdGEiKSkpOyhsfHwhbiYmIU4pJiZhLmhhc0F0dHJpYnV0ZSgiZGF0YS1kZWJ1Zy1pbmZvIikmJihnPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi4iK2EuZGF0YXNldC5kZWJ1Z0luZm8pLG51bGwhPWcmJihnPWcucGFyZW50RWxlbWVudCxudWxsIT1nJiZnLmNsYXNzTGlzdC5jb250YWlucygiYWktZGVidWctaW5mbyIpJiZnLnJlbW92ZSgpKSk7eT1YKGEsIi5haS1kZWJ1Zy1iYXIuYWktZGVidWctbGlzdHMiKTt2YXIga2E9IiI9PUE/IiMiOkE7MCE9eS5sZW5ndGgmJnkuZm9yRWFjaCgoZixoKT0+e2g9Zi5xdWVyeVNlbGVjdG9yKCIuYWktZGVidWctbmFtZS5haS1saXN0LWluZm8iKTtudWxsIT1oJiYoaC50ZXh0Q29udGVudD1rYSxoLnRpdGxlPVIrIlxuIithYSk7aD1mLnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1uYW1lLmFpLWxpc3Qtc3RhdHVzIik7Cm51bGwhPWgmJihoLnRleHRDb250ZW50PWw/YWlfZnJvbnQudmlzaWJsZTphaV9mcm9udC5oaWRkZW4pfSk7Zz0hMTtpZihsJiZhLmhhc0F0dHJpYnV0ZSgic2NoZWR1bGluZy1zdGFydCIpJiZhLmhhc0F0dHJpYnV0ZSgic2NoZWR1bGluZy1lbmQiKSYmYS5oYXNBdHRyaWJ1dGUoInNjaGVkdWxpbmctZGF5cyIpKXt2YXIgdT1hLmdldEF0dHJpYnV0ZSgic2NoZWR1bGluZy1zdGFydCIpO3Y9YS5nZXRBdHRyaWJ1dGUoInNjaGVkdWxpbmctZW5kIik7eT1hLmdldEF0dHJpYnV0ZSgic2NoZWR1bGluZy1kYXlzIik7Zz0hMDt1PWI2NGQodSk7Rj1iNjRkKHYpO3ZhciBWPXBhcnNlSW50KGEuZ2V0QXR0cmlidXRlKCJzY2hlZHVsaW5nLWZhbGxiYWNrIikpLE89cGFyc2VJbnQoYS5nZXRBdHRyaWJ1dGUoImdtdCIpKTtpZih1LmluY2x1ZGVzKCItIil8fEYuaW5jbHVkZXMoIi0iKSlQPVkodSkrTyxLPVkoRikrTztlbHNlIHZhciBQPVEodSksSz1RKEYpO1A/Pz0wO0s/Pz0wO3ZhciBXPWI2NGQoeSkuc3BsaXQoIiwiKTsKeT1hLmdldEF0dHJpYnV0ZSgic2NoZWR1bGluZy10eXBlIik7dmFyIEQ9KG5ldyBEYXRlKS5nZXRUaW1lKCkrTzt2PW5ldyBEYXRlKEQpO3ZhciBHPXYuZ2V0RGF5KCk7MD09Rz9HPTY6Ry0tO3UuaW5jbHVkZXMoIi0iKXx8Ri5pbmNsdWRlcygiLSIpfHwodT0obmV3IERhdGUodi5nZXRGdWxsWWVhcigpLHYuZ2V0TW9udGgoKSx2LmdldERhdGUoKSkpLmdldFRpbWUoKStPLEQtPXUsMD5EJiYoRCs9ODY0RTUpKTtzY2hlZHVsaW5nX3N0YXJ0X2RhdGVfb2s9RD49UDtzY2hlZHVsaW5nX2VuZF9kYXRlX29rPTA9PUt8fEQ8Szt1PXNjaGVkdWxpbmdfc3RhcnRfZGF0ZV9vayYmc2NoZWR1bGluZ19lbmRfZGF0ZV9vayYmVy5pbmNsdWRlcyhHLnRvU3RyaW5nKCkpO3N3aXRjaCh5KXtjYXNlICJCIjp1PSF1fXV8fChsPSExKTt2YXIgbGE9di50b0lTT1N0cmluZygpLnNwbGl0KCIuIilbMF0ucmVwbGFjZSgiVCIsIiAiKTt5PVgoYSwiLmFpLWRlYnVnLWJhci5haS1kZWJ1Zy1zY2hlZHVsaW5nIik7CjAhPXkubGVuZ3RoJiZ5LmZvckVhY2goKGYsaCk9PntoPWYucXVlcnlTZWxlY3RvcigiLmFpLWRlYnVnLW5hbWUuYWktc2NoZWR1bGluZy1pbmZvIik7bnVsbCE9aCYmKGgudGV4dENvbnRlbnQ9bGErIiAiK0crIiBjdXJyZW50X3RpbWU6ICIrTWF0aC5mbG9vcihELnRvU3RyaW5nKCkvMUUzKSsiICBzdGFydF9kYXRlOiIrTWF0aC5mbG9vcihQLzFFMykudG9TdHJpbmcoKSsiPT4iK3NjaGVkdWxpbmdfc3RhcnRfZGF0ZV9vay50b1N0cmluZygpKyIgZW5kX2RhdGU6IitNYXRoLmZsb29yKEsvMUUzKS50b1N0cmluZygpKyI9PiIrc2NoZWR1bGluZ19lbmRfZGF0ZV9vay50b1N0cmluZygpKyIgZGF5czoiK1cudG9TdHJpbmcoKSsiPT4iK1cuaW5jbHVkZXMoRy50b1N0cmluZygpKS50b1N0cmluZygpKTtoPWYucXVlcnlTZWxlY3RvcigiLmFpLWRlYnVnLW5hbWUuYWktc2NoZWR1bGluZy1zdGF0dXMiKTtudWxsIT1oJiYoaC50ZXh0Q29udGVudD1sP2FpX2Zyb250LnZpc2libGU6YWlfZnJvbnQuaGlkZGVuKTsKbHx8MD09Vnx8KGYuY2xhc3NMaXN0LnJlbW92ZSgiYWktZGVidWctc2NoZWR1bGluZyIpLGYuY2xhc3NMaXN0LmFkZCgiYWktZGVidWctZmFsbGJhY2siKSxoPWYucXVlcnlTZWxlY3RvcigiLmFpLWRlYnVnLW5hbWUuYWktc2NoZWR1bGluZy1zdGF0dXMiKSxudWxsIT1oJiYoaC50ZXh0Q29udGVudD1haV9mcm9udC5mYWxsYmFjaysiID0gIitWKSl9KX1pZihufHwhbCYmTilyZXR1cm4hMDthLnN0eWxlLnZpc2liaWxpdHk9IiI7YS5zdHlsZS5wb3NpdGlvbj0iIjthLnN0eWxlLndpZHRoPSIiO2Euc3R5bGUuaGVpZ2h0PSIiO2Euc3R5bGUuekluZGV4PSIiO2lmKGwpe2lmKG51bGwhPWQmJihkLnN0eWxlLnZpc2liaWxpdHk9IiIsZC5jbGFzc0xpc3QuY29udGFpbnMoImFpLXJlbW92ZS1wb3NpdGlvbiIpJiYoZC5zdHlsZS5wb3NpdGlvbj0iIikpLGEuaGFzQXR0cmlidXRlKCJkYXRhLWNvZGUiKSl7bj1iNjRkKGEuZGF0YXNldC5jb2RlKTt1PWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Cmc9ITA7dHJ5e0g9dS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQobil9Y2F0Y2goZil7Zz0hMX1nJiYobnVsbCE9YS5jbG9zZXN0KCJoZWFkIik/KGEucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoSCxhLm5leHRTaWJsaW5nKSxhLnJlbW92ZSgpKTphLmFwcGVuZChIKSk7ZGEoYSl9fWVsc2UgaWYoZyYmIXUmJjAhPVYpe251bGwhPWQmJihkLnN0eWxlLnZpc2liaWxpdHk9IiIsZC5jbGFzc0xpc3QuY29udGFpbnMoImFpLXJlbW92ZS1wb3NpdGlvbiIpJiZkLmNzcyh7cG9zaXRpb246IiJ9KSk7bj1mYShhLCIuYWktZmFsbGJhY2siKTswIT1uLmxlbmd0aCYmbi5mb3JFYWNoKChmLGgpPT57Zi5jbGFzc0xpc3QucmVtb3ZlKCJhaS1mYWxsYmFjayIpfSk7aWYoYS5oYXNBdHRyaWJ1dGUoImRhdGEtZmFsbGJhY2stY29kZSIpKXtuPWI2NGQoYS5kYXRhc2V0LmZhbGxiYWNrQ29kZSk7dT1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO2c9ITA7dHJ5e3ZhciBIPXUuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KG4pfWNhdGNoKGYpe2c9CiExfWcmJmEuYXBwZW5kKEgpO2RhKGEpfWVsc2UgYS5zdHlsZS5kaXNwbGF5PSJub25lIixudWxsIT1kJiZudWxsPT1kLnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1ibG9jayIpJiZkLmhhc0F0dHJpYnV0ZSgic3R5bGUiKSYmLTE9PWQuZ2V0QXR0cmlidXRlKCJzdHlsZSIpLmluZGV4T2YoImhlaWdodDoiKSYmKGQuc3R5bGUuZGlzcGxheT0ibm9uZSIpO251bGwhPWQmJmQuaGFzQXR0cmlidXRlKCJkYXRhLWFpIikmJihkLmdldEF0dHJpYnV0ZSgiZGF0YS1haSIpLGEuaGFzQXR0cmlidXRlKCJmYWxsYmFjay10cmFja2luZyIpJiYoSD1hLmdldEF0dHJpYnV0ZSgiZmFsbGJhY2stdHJhY2tpbmciKSxkLnNldEF0dHJpYnV0ZSgiZGF0YS1haS0iK2EuZ2V0QXR0cmlidXRlKCJmYWxsYmFja19sZXZlbCIpLEgpKSl9ZWxzZSBhLnN0eWxlLmRpc3BsYXk9Im5vbmUiLG51bGwhPWQmJihkLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1haSIpLGQuY2xhc3NMaXN0LnJlbW92ZSgiYWktdHJhY2siKSwKbnVsbCE9ZC5xdWVyeVNlbGVjdG9yKCIuYWktZGVidWctYmxvY2siKT8oZC5zdHlsZS52aXNpYmlsaXR5PSIiLGQuY2xhc3NMaXN0LnJlbW92ZSgiYWktY2xvc2UiKSxkLmNsYXNzTGlzdC5jb250YWlucygiYWktcmVtb3ZlLXBvc2l0aW9uIikmJihkLnN0eWxlLnBvc2l0aW9uPSIiKSk6ZC5oYXNBdHRyaWJ1dGUoInN0eWxlIikmJi0xPT1kLmdldEF0dHJpYnV0ZSgic3R5bGUiKS5pbmRleE9mKCJoZWlnaHQ6IikmJihkLnN0eWxlLmRpc3BsYXk9Im5vbmUiKSk7YS5zZXRBdHRyaWJ1dGUoImRhdGEtY29kZSIsIiIpO2Euc2V0QXR0cmlidXRlKCJkYXRhLWZhbGxiYWNrLWNvZGUiLCIiKTtudWxsIT1kJiZkLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2siKX0pfX07ZnVuY3Rpb24gZWEoYil7Yj1gOyAke2RvY3VtZW50LmNvb2tpZX1gLnNwbGl0KGA7ICR7Yn09YCk7aWYoMj09PWIubGVuZ3RoKXJldHVybiBiLnBvcCgpLnNwbGl0KCI7Iikuc2hpZnQoKX1mdW5jdGlvbiBtYShiLAplLHApe2VhKGIpJiYoZG9jdW1lbnQuY29va2llPWIrIj0iKyhlPyI7cGF0aD0iK2U6IiIpKyhwPyI7ZG9tYWluPSIrcDoiIikrIjtleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UIil9ZnVuY3Rpb24gbShiKXtlYShiKSYmKG1hKGIsIi8iLHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSksZG9jdW1lbnQuY29va2llPWIrIj07IFBhdGg9LzsgRXhwaXJlcz1UaHUsIDAxIEphbiAxOTcwIDAwOjAwOjAxIEdNVDsiKX0oZnVuY3Rpb24oYil7ImNvbXBsZXRlIj09PWRvY3VtZW50LnJlYWR5U3RhdGV8fCJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGUmJiFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGw/YigpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGIpfSkoZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWlfcHJvY2Vzc19saXN0cygpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXtaKCk7aWYoImZ1bmN0aW9uIj09CnR5cGVvZiBhaV9sb2FkX2Jsb2Nrcyl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY21wbHpFbmFibGVTY3JpcHRzIixlKTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbXBsel9ldmVudF9tYXJrZXRpbmciLGUpO2Z1bmN0aW9uIGUocCl7ImNtcGx6RW5hYmxlU2NyaXB0cyIhPXAudHlwZSYmImFsbCIhPT1wLmNvbnNlbnRMZXZlbHx8YWlfbG9hZF9ibG9ja3MoKX19fSw1MCk7dmFyIGI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmFpLWRlYnVnLXBhZ2UtdHlwZSIpO251bGwhPWImJmIuYWRkRXZlbnRMaXN0ZW5lcigiZGJsY2xpY2siLGU9PntlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpO251bGwhPWUmJihlLnRleHRDb250ZW50PSJDT05TRU5UIENPT0tJRVMiKTtlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLWJhciIpO251bGwhPWUmJihlLnN0eWxlLmRpc3BsYXk9ImJsb2NrIil9KTtiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLWJhciIpOwpudWxsIT1iJiZiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixlPT57bSgiZXVjb25zZW50LXYyIik7bSgiX19seEdfX2NvbnNlbnRfX3YyIik7bSgiX19seEdfX2NvbnNlbnRfX3YyX2RhaXN5Yml0Iik7bSgiX19seEdfX2NvbnNlbnRfX3YyX2dkYWlzeWJpdCIpO20oIkNvb2tpZUxhd0luZm9Db25zZW50Iik7bSgiY29va2llbGF3aW5mby1jaGVja2JveC1hZHZlcnRpc2VtZW50Iik7bSgiY29va2llbGF3aW5mby1jaGVja2JveC1hbmFseXRpY3MiKTttKCJjb29raWVsYXdpbmZvLWNoZWNrYm94LW5lY2Vzc2FyeSIpO20oImNvbXBsaWFuel9wb2xpY3lfaWQiKTttKCJjb21wbGlhbnpfY29uc2VudF9zdGF0dXMiKTttKCJjbXBsel9tYXJrZXRpbmciKTttKCJjbXBsel9jb25zZW50X3N0YXR1cyIpO20oImNtcGx6X3ByZWZlcmVuY2VzIik7bSgiY21wbHpfc3RhdGlzdGljcy1hbm9ueW1vdXMiKTttKCJjbXBsel9jaG9pY2UiKTttKCJjbXBsel9iYW5uZXItc3RhdHVzIik7bSgiY21wbHpfZnVuY3Rpb25hbCIpOwptKCJjbXBsel9wb2xpY3lfaWQiKTttKCJjbXBsel9zdGF0aXN0aWNzIik7bSgibW9vdmVfZ2Rwcl9wb3B1cCIpO20oInJlYWxfY29va2llX2Jhbm5lci1ibG9nOjEtdGNmIik7bSgicmVhbF9jb29raWVfYmFubmVyLWJsb2c6MSIpO2U9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2Ytc3RhdHVzIik7bnVsbCE9ZSYmKGUudGV4dENvbnRlbnQ9IkNPTlNFTlQgQ09PS0lFUyBERUxFVEVEIil9KX0sNSl9KTtmdW5jdGlvbiBkYShiKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3Nfcm90YXRpb25zX2luX2VsZW1lbnQmJmFpX3Byb2Nlc3Nfcm90YXRpb25zX2luX2VsZW1lbnQoYik7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfbGlzdHMmJmFpX3Byb2Nlc3NfbGlzdHMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19pcF9hZGRyZXNzZXMmJmFpX3Byb2Nlc3NfaXBfYWRkcmVzc2VzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfZmlsdGVyX2hvb2tzJiYKYWlfcHJvY2Vzc19maWx0ZXJfaG9va3MoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfYWRiX3Byb2Nlc3NfYmxvY2tzJiZhaV9hZGJfcHJvY2Vzc19ibG9ja3MoYik7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfaW1wcmVzc2lvbnMmJjE9PWFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9wcm9jZXNzX2ltcHJlc3Npb25zKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xpY2tfdHJhY2tlcnMmJjE9PWFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyYmYWlfaW5zdGFsbF9jbG9zZV9idXR0b25zKGRvY3VtZW50KX0sNSl9ZnVuY3Rpb24gaWEoYil7dmFyIGU9Yj9iLnNwbGl0KCI/IilbMV06d2luZG93LmxvY2F0aW9uLnNlYXJjaC5zbGljZSgxKTtiPXt9O2lmKGUpe2U9ZS5zcGxpdCgiIyIpWzBdO2U9ZS5zcGxpdCgiJiIpO2Zvcih2YXIgcD0wO3A8ZS5sZW5ndGg7cCsrKXt2YXIgej0KZVtwXS5zcGxpdCgiPSIpLEM9dm9pZCAwLHg9elswXS5yZXBsYWNlKC9cW1xkKlxdLyxmdW5jdGlvbihMKXtDPUwuc2xpY2UoMSwtMSk7cmV0dXJuIiJ9KTt6PSJ1bmRlZmluZWQiPT09dHlwZW9mIHpbMV0/IiI6elsxXTt4PXgudG9Mb3dlckNhc2UoKTt6PXoudG9Mb3dlckNhc2UoKTtiW3hdPygic3RyaW5nIj09PXR5cGVvZiBiW3hdJiYoYlt4XT1bYlt4XV0pLCJ1bmRlZmluZWQiPT09dHlwZW9mIEM/Ylt4XS5wdXNoKHopOmJbeF1bQ109eik6Ylt4XT16fX1yZXR1cm4gYn19OwoKYWlfanNfY29kZSA9IHRydWU7Cg=="></script> <script type="text/javascript" id="perfmatters-delayed-styles-js" defer="" src="data:text/javascript;base64,IWZ1bmN0aW9uKCl7Y29uc3QgZT1bImtleWRvd24iLCJtb3VzZW1vdmUiLCJ3aGVlbCIsInRvdWNobW92ZSIsInRvdWNoc3RhcnQiLCJ0b3VjaGVuZCJdO2Z1bmN0aW9uIHQoKXtkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJsaW5rW2RhdGEtcG1kZWxheWVkc3R5bGVdIikuZm9yRWFjaChmdW5jdGlvbihlKXtlLnNldEF0dHJpYnV0ZSgiaHJlZiIsZS5nZXRBdHRyaWJ1dGUoImRhdGEtcG1kZWxheWVkc3R5bGUiKSl9KSxlLmZvckVhY2goZnVuY3Rpb24oZSl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoZSx0LHtwYXNzaXZlOiEwfSl9KX1lLmZvckVhY2goZnVuY3Rpb24oZSl7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoZSx0LHtwYXNzaXZlOiEwfSl9KX0oKTs="></script><script data-no-optimize="1">!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).LazyLoad=e()}(this,function(){"use strict";function e(){return(e=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n,a=arguments[e];for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(t[n]=a[n])}return t}).apply(this,arguments)}function i(t){return e({},it,t)}function o(t,e){var n,a="LazyLoad::Initialized",i=new t(e);try{n=new CustomEvent(a,{detail:{instance:i}})}catch(t){(n=document.createEvent("CustomEvent")).initCustomEvent(a,!1,!1,{instance:i})}window.dispatchEvent(n)}function l(t,e){return t.getAttribute(gt+e)}function c(t){return l(t,bt)}function s(t,e){return function(t,e,n){e=gt+e;null!==n?t.setAttribute(e,n):t.removeAttribute(e)}(t,bt,e)}function r(t){return s(t,null),0}function u(t){return null===c(t)}function d(t){return c(t)===vt}function f(t,e,n,a){t&&(void 0===a?void 0===n?t(e):t(e,n):t(e,n,a))}function _(t,e){nt?t.classList.add(e):t.className+=(t.className?" ":"")+e}function v(t,e){nt?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\s+)"+e+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")}function g(t){return t.llTempImage}function b(t,e){!e||(e=e._observer)&&e.unobserve(t)}function p(t,e){t&&(t.loadingCount+=e)}function h(t,e){t&&(t.toLoadCount=e)}function n(t){for(var e,n=[],a=0;e=t.children[a];a+=1)"SOURCE"===e.tagName&&n.push(e);return n}function m(t,e){(t=t.parentNode)&&"PICTURE"===t.tagName&&n(t).forEach(e)}function a(t,e){n(t).forEach(e)}function E(t){return!!t[st]}function I(t){return t[st]}function y(t){return delete t[st]}function A(e,t){var n;E(e)||(n={},t.forEach(function(t){n[t]=e.getAttribute(t)}),e[st]=n)}function k(a,t){var i;E(a)&&(i=I(a),t.forEach(function(t){var e,n;e=a,(t=i[n=t])?e.setAttribute(n,t):e.removeAttribute(n)}))}function L(t,e,n){_(t,e.class_loading),s(t,ut),n&&(p(n,1),f(e.callback_loading,t,n))}function w(t,e,n){n&&t.setAttribute(e,n)}function x(t,e){w(t,ct,l(t,e.data_sizes)),w(t,rt,l(t,e.data_srcset)),w(t,ot,l(t,e.data_src))}function O(t,e,n){var a=l(t,e.data_bg_multi),i=l(t,e.data_bg_multi_hidpi);(a=at&&i?i:a)&&(t.style.backgroundImage=a,n=n,_(t=t,(e=e).class_applied),s(t,ft),n&&(e.unobserve_completed&&b(t,e),f(e.callback_applied,t,n)))}function N(t,e){!e||0<e.loadingCount||0<e.toLoadCount||f(t.callback_finish,e)}function C(t,e,n){t.addEventListener(e,n),t.llEvLisnrs[e]=n}function M(t){return!!t.llEvLisnrs}function z(t){if(M(t)){var e,n,a=t.llEvLisnrs;for(e in a){var i=a[e];n=e,i=i,t.removeEventListener(n,i)}delete t.llEvLisnrs}}function R(t,e,n){var a;delete t.llTempImage,p(n,-1),(a=n)&&--a.toLoadCount,v(t,e.class_loading),e.unobserve_completed&&b(t,n)}function T(o,r,c){var l=g(o)||o;M(l)||function(t,e,n){M(t)||(t.llEvLisnrs={});var a="VIDEO"===t.tagName?"loadeddata":"load";C(t,a,e),C(t,"error",n)}(l,function(t){var e,n,a,i;n=r,a=c,i=d(e=o),R(e,n,a),_(e,n.class_loaded),s(e,dt),f(n.callback_loaded,e,a),i||N(n,a),z(l)},function(t){var e,n,a,i;n=r,a=c,i=d(e=o),R(e,n,a),_(e,n.class_error),s(e,_t),f(n.callback_error,e,a),i||N(n,a),z(l)})}function G(t,e,n){var a,i,o,r,c;t.llTempImage=document.createElement("IMG"),T(t,e,n),E(c=t)||(c[st]={backgroundImage:c.style.backgroundImage}),o=n,r=l(a=t,(i=e).data_bg),c=l(a,i.data_bg_hidpi),(r=at&&c?c:r)&&(a.style.backgroundImage='url("'.concat(r,'")'),g(a).setAttribute(ot,r),L(a,i,o)),O(t,e,n)}function D(t,e,n){var a;T(t,e,n),a=e,e=n,(t=It[(n=t).tagName])&&(t(n,a),L(n,a,e))}function V(t,e,n){var a;a=t,(-1<yt.indexOf(a.tagName)?D:G)(t,e,n)}function F(t,e,n){var a;t.setAttribute("loading","lazy"),T(t,e,n),a=e,(e=It[(n=t).tagName])&&e(n,a),s(t,vt)}function j(t){t.removeAttribute(ot),t.removeAttribute(rt),t.removeAttribute(ct)}function P(t){m(t,function(t){k(t,Et)}),k(t,Et)}function S(t){var e;(e=At[t.tagName])?e(t):E(e=t)&&(t=I(e),e.style.backgroundImage=t.backgroundImage)}function U(t,e){var n;S(t),n=e,u(e=t)||d(e)||(v(e,n.class_entered),v(e,n.class_exited),v(e,n.class_applied),v(e,n.class_loading),v(e,n.class_loaded),v(e,n.class_error)),r(t),y(t)}function $(t,e,n,a){var i;n.cancel_on_exit&&(c(t)!==ut||"IMG"===t.tagName&&(z(t),m(i=t,function(t){j(t)}),j(i),P(t),v(t,n.class_loading),p(a,-1),r(t),f(n.callback_cancel,t,e,a)))}function q(t,e,n,a){var i,o,r=(o=t,0<=pt.indexOf(c(o)));s(t,"entered"),_(t,n.class_entered),v(t,n.class_exited),i=t,o=a,n.unobserve_entered&&b(i,o),f(n.callback_enter,t,e,a),r||V(t,n,a)}function H(t){return t.use_native&&"loading"in HTMLImageElement.prototype}function B(t,i,o){t.forEach(function(t){return(a=t).isIntersecting||0<a.intersectionRatio?q(t.target,t,i,o):(e=t.target,n=t,a=i,t=o,void(u(e)||(_(e,a.class_exited),$(e,n,a,t),f(a.callback_exit,e,n,t))));var e,n,a})}function J(e,n){var t;et&&!H(e)&&(n._observer=new IntersectionObserver(function(t){B(t,e,n)},{root:(t=e).container===document?null:t.container,rootMargin:t.thresholds||t.threshold+"px"}))}function K(t){return Array.prototype.slice.call(t)}function Q(t){return t.container.querySelectorAll(t.elements_selector)}function W(t){return c(t)===_t}function X(t,e){return e=t||Q(e),K(e).filter(u)}function Y(e,t){var n;(n=Q(e),K(n).filter(W)).forEach(function(t){v(t,e.class_error),r(t)}),t.update()}function t(t,e){var n,a,t=i(t);this._settings=t,this.loadingCount=0,J(t,this),n=t,a=this,Z&&window.addEventListener("online",function(){Y(n,a)}),this.update(e)}var Z="undefined"!=typeof window,tt=Z&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),et=Z&&"IntersectionObserver"in window,nt=Z&&"classList"in document.createElement("p"),at=Z&&1<window.devicePixelRatio,it={elements_selector:".lazy",container:tt||Z?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_poster:"poster",class_applied:"applied",class_loading:"litespeed-loading",class_loaded:"litespeed-loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1},ot="src",rt="srcset",ct="sizes",lt="poster",st="llOriginalAttrs",ut="loading",dt="loaded",ft="applied",_t="error",vt="native",gt="data-",bt="ll-status",pt=[ut,dt,ft,_t],ht=[ot],mt=[ot,lt],Et=[ot,rt,ct],It={IMG:function(t,e){m(t,function(t){A(t,Et),x(t,e)}),A(t,Et),x(t,e)},IFRAME:function(t,e){A(t,ht),w(t,ot,l(t,e.data_src))},VIDEO:function(t,e){a(t,function(t){A(t,ht),w(t,ot,l(t,e.data_src))}),A(t,mt),w(t,lt,l(t,e.data_poster)),w(t,ot,l(t,e.data_src)),t.load()}},yt=["IMG","IFRAME","VIDEO"],At={IMG:P,IFRAME:function(t){k(t,ht)},VIDEO:function(t){a(t,function(t){k(t,ht)}),k(t,mt),t.load()}},kt=["IMG","IFRAME","VIDEO"];return t.prototype={update:function(t){var e,n,a,i=this._settings,o=X(t,i);{if(h(this,o.length),!tt&&et)return H(i)?(e=i,n=this,o.forEach(function(t){-1!==kt.indexOf(t.tagName)&&F(t,e,n)}),void h(n,0)):(t=this._observer,i=o,t.disconnect(),a=t,void i.forEach(function(t){a.observe(t)}));this.loadAll(o)}},destroy:function(){this._observer&&this._observer.disconnect(),Q(this._settings).forEach(function(t){y(t)}),delete this._observer,delete this._settings,delete this.loadingCount,delete this.toLoadCount},loadAll:function(t){var e=this,n=this._settings;X(t,n).forEach(function(t){b(t,e),V(t,n,e)})},restoreAll:function(){var e=this._settings;Q(e).forEach(function(t){U(t,e)})}},t.load=function(t,e){e=i(e);V(t,e)},t.resetStatus=function(t){r(t)},Z&&function(t,e){if(e)if(e.length)for(var n,a=0;n=e[a];a+=1)o(t,n);else o(t,e)}(t,window.lazyLoadOptions),t});!function(e,t){"use strict";function a(){t.body.classList.add("litespeed_lazyloaded")}function n(){console.log("[LiteSpeed] Start Lazy Load Images"),d=new LazyLoad({elements_selector:"[data-lazyloaded]",callback_finish:a}),o=function(){d.update()},e.MutationObserver&&new MutationObserver(o).observe(t.documentElement,{childList:!0,subtree:!0,attributes:!0})}var d,o;e.addEventListener?e.addEventListener("load",n,!1):e.attachEvent("onload",n)}(window,document);</script><script data-optimized="1" src="https://nounng.com/wp-content/litespeed/js/30502e91d3644f185f71b77b43489c03.js?ver=e12c3" defer=""></script>
<img src="https://pixel.wp.com/g.gif?v=ext&blog=210899370&post=0&tz=1&srv=nounng.com&j=1%3A14.1&host=nounng.com&ref=&fcp=1288&rand=0.5903561836639681" alt="" width="6" height="5" id="wpstats"><script async="" id="webpushr-jssdk" src="https://cdn.webpushr.com/app.min.js"></script><div id="webpushr-prompt-wrapper" class="webpushr-subscribed webpushr-notification-denied"></div></body></html><!-- Page optimized by LiteSpeed Cache @2024-12-18 19:28:37 --><!-- Page cached by LiteSpeed Cache 6.5.4 on 2024-12-18 19:28:36 --><!-- QUIC.cloud UCSS bypassed due to generation error ❌ /ucss/b2d8a8d0c487a5deb0b08b355f9b833f.css --><!-- QUIC.cloud UCSS bypassed due to generation error ❌ /ucss/b2d8a8d0c487a5deb0b08b355f9b833f.css -->